Entonces, teníamos a Secret Santa en el trabajo.
Somos 8 personas Cada uno se turnaba y sacaba un pequeño trozo de papel de un tazón con un nombre. La única regla: si sacas tu nombre, debes volver a poner el papel en el tazón e intentarlo de nuevo.
Llamemos a las personas A, B, C, D, E, F, G, H, que también es el orden en que eligieron su hoja de papel.
Hicimos el intercambio de regalos anoche.
A era el secreto de santa de F.
B era el secreto de E, santa.
C era el secreto de D, santa.
D era el secreto de santa de C.
E era el secreto de B santa.
F era el secreto de santa.
G era el secreto de H santa.
H era el secreto de santa de G.
¿Ves lo que pasó? Hicimos parejas.
A y F eran el secreto de santa de cada uno.
B y E eran el secreto santa del otro.
C y D eran la santa secreta del otro.
G y H eran el secreto de Santa.
¿Cuál es la probabilidad de que esto ocurra y cómo se calcula?
fuente
Respuestas:
El número total de asignaciones entre personas, donde nadie se asigna a sí mismos, es (Estos se denominan trastornos ). ¡El valor está muy cerca de .2n
Si corresponden a emparejamientos perfectos, entonces son producto de transposiciones disjuntas . Esto implica que su estructura de ciclo es de la forma
El número de patrones distintos es el orden del grupo de todas las permutaciones de los nombres dividido por el orden del estabilizador del patrón. Un elemento estabilizador puede intercambiar cualquier número de pares y también puede permutar elpares, de donde hayElementos estabilizadores. Por lo tanto hay2n n! 2nn!
tales parejas.
Como todos estos emparejamientos perfectos son alteraciones, y todas las alteraciones son igualmente probables, la probabilidad es igual
Para personas, la respuesta exacta es, por lo tanto, mientras que la aproximación es : están de acuerdo con cinco cifras significativas.2n=8 15/2119≈0.00707881 e/(244!)≈0.00707886
Para verificar, esta
R
simulación dibuja un millón de permutaciones aleatorias de ocho objetos, retiene solo aquellos que son trastornos y cuenta los que son emparejamientos perfectos. Produce su estimación, el error estándar de la estimación y una puntuación Z para compararlo con el valor teórico. Su salida esLa pequeña puntuación Z es consistente con el valor teórico. (Estos resultados serían consistentes con cualquier valor teórico entre y ).0.0066 0.0073
fuente
Me impresionó bastante la elegancia en la respuesta de @whuber. Para ser sincero, tuve que familiarizarme mucho con los nuevos conceptos para seguir los pasos de su solución. Después de pasar mucho tiempo en ello, decidí publicar lo que obtuve. Entonces, lo que sigue es una nota exegética a su respuesta ya aceptada. De esta manera, no hay ningún intento de originalidad, y mi único objetivo es proporcionar algunos puntos de anclaje adicionales para seguir algunos de los pasos involucrados.
Así que aquí va ...
1. ¿Por qué ?2n Bueno, este puede ser demasiado básico: necesitamos un número par de personas para jugar.
2. ¿Podemos derivar la fórmula para los trastornos?
Siguiendo la entrada de Wikipedia con el ejemplo basado en la coincidencia de personas y sombreros , sombreros para ser precisos, tenemos que las opciones para la primera persona que recoge un sombrero se muestran aquí de la siguiente manera:n
Ahora notando el paralelismo entre el LHS de esta ecuación y la parte del RHS entre paréntesis, podemos continuar recursivamente:
Esto implica que .d(n)=nd(n−1)+(−1)n
Trabajando al revés:
Entonces en general,
Y recordando la serie Taylor de evaluada en :ex x=−1
3. Transposición disjunta : El concepto de transposición es fácil de obtener desde el enlace proporcionado en la respuesta original , pero "disjunto" fue un poco menos claro. Mirando un ejemplo, del conjunto , la permutación se puede expresar como un ciclo como:, pero forma un bucle sobre sí mismo - un ciclo disjunto. O, juntando estos dos ciclos, la permutación se puede expresar como el producto .a,b,c,d,e,f b,d,a,c,f,e (a b d c)(e f)
a -> b -> d -> c after which it returns to a
e -> f
En la pregunta de Santa Claus (ocho empleados tienen nombres dibujados en pares perfectamente combinados: Anna le da un regalo a Martha, mientras que Martha ha dibujado el nombre de Anna) habrá circuitos cerrados.4
4. Para encontrar el número de bucles de dos elementos , necesitamos dividir todas las permutaciones posiblesdel conjunto de ocho ( ) personas por el número total posible de intercambios de dos elementos el número total de permutaciones de estos pares: .(2n)! 2n 2n n! p(2n)=(2n)!2nn!
Para la
R
simulación:1)
paired <- function(x) crossprod(x[x] - 1:length(x))==0
Esta función se reduce a la comprensión8
x[x]
: está destinada a evaluar un vector de elementos que representa las asignaciones actuales y determinar si está compuesto de bucles de 2 elementos, como en el problema de Santa Claus. Siempre que las permutaciones correspondan a elementos de transposición, de modo que si se suponía que Paul debía darle un regalo a Maria ( y viceversa ) y Max a John ( / ) inicialmente, la transposición resultante solo da como resultado un nuevo emparejamiento perfecto ( / y / ) Estamos cumpliendo la condición inicial de emparejamiento perfecto:Paul -> Maria
Maria -> Paul
Max -> John
John -> Max
Max -> Maria
Maria -> Max
Paul -> John
John -> Paul
En otras palabras, si volvemos al ejemplo de los sombreros en Wikipedia, la persona1
i
siempre recupera el sombrero .2)
good <- function(x) sum(x==1:length(x)) == 0
Esta función evalúa si estamos lidiando con un trastorno comparando el elemento del vector con el vector , 2, 3, 4, 5, , 7, 8 y asegurándose de que no haya coincidencia.( 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 )x (1,2,3,4,5,6,7,8)
3.
k.paired <- sum(i.good & i.paired)
está ahí para excluir permutaciones emparejadas como la anterior en el diagrama, que no son alteraciones:fuente