7 votos

Probabilidad de que no hay dos personas sentarse al lado de uno

Suponga que hay 10 personas sentadas alrededor de una mesa circular para el almuerzo y esas mismas 10 personas a reunirse durante la cena. Estoy interesado en la probabilidad de que nadie se sienta junto a la misma persona (yo interpreto "sentado junto a" como en la izquierda o a la derecha de la persona).

Me encontré con una simulación y después de 1 millón de variaciones aleatorias comparando el almuerzo de asientos para la cena de estar, tengo exactamente 1 escenario que se produjo cuando esto sucedió. Es allí una manera rigurosa a ver si mi simulación es correcta?

1voto

Nikolai Prokoschenko Puntos 2507

Usted pide en los comentarios cómo llegué $181440$ o $14963$. El primero es $9! / 2$ que es el número de posibles arreglos en la segunda sesión, después de tomar en cuenta las rotaciones y reflexiones. Sólo teniendo en cuenta las rotaciones sería $9! = 362880$

El número sin duplicados los vecinos que obtuve con el siguiente código R, el uso de la planta para generar todos los $362880$ de posibilidades de que la persona con la $1$ en el primer lugar, y a contar:

library(combinat)
seated <- 10
perms <- matrix(unlist(permn(seated-1)), ncol = seated-1, byrow = TRUE)
permsextended <- cbind(1, perms+1, 1) 
pairs <- 100 * permsextended[,-(seated+1)] + permsextended[,-1]
originalpairs <- c(100*(1:(seated-1)) + (2:seated), 100*seated + 1,
                   100*(2:seated) + (1:(seated-1)), 100*1 + seated)
dupes <- matrix(pairs %in% originalpairs, ncol=seated)
totaldupes <- rowSums(dupes)
nodupes <- permsextended[totaldupes==0, -(seated+1)]  

Que da

> nrow(nodupes)
[1] 29926
> nrow(nodupes) / factorial(seated-1)
[1] 0.08246803

y yo dividido $29926$ $2$ conseguir $14963$.

Estos son los primeros ejemplos que se encuentran

> head(nodupes)
     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,]    1    7    2    9    3   10    4    6    8     5
[2,]    1    7    2   10    3    9    4    6    8     5
[3,]    1    7    2    9    3    8    4    6   10     5
[4,]    1    7    2   10    3    8    4    6    9     5
[5,]    1    7    2    8    3   10    4    6    9     5
[6,]    1    7    2    8    3    9    4    6   10     5

Hay más curiosidades en los datos. Por ejemplo, si el número de la primera sesión de$1$$10$, los que tienen los números a continuación son más propensos a estar sentado justo enfrente de la persona $1$ en la segunda sesión, es decir, en la sexta posición relativa:

> table(nodupes[,6])
   2    3    4    5    6    7    8    9   10 
4318 2844 3186 3048 3134 3048 3186 2844 4318 

Si en lugar de un conteo completo, tengo que hacer una simulación (no limitante reproductor $1$ en la segunda sesión), me sale algo similar con

set.seed(1)
cases <- 1000000
seated <- 10 # should be less than 100
originalpairs <- c(100*(1:(seated-1)) + (2:seated), 100*seated + 1,
                   100*(2:seated) + (1:(seated-1)), 100*1 + seated)
runningcount <- 0
for (i in 1:cases){
    example <- sample(seated)
    examplextend <- c(example, example[1])
    examplepairs <- 100 * examplextend[-(seated+1)] + examplextend[-1]
    runningcount <- runningcount + (sum(examplepairs %in% originalpairs)==0)
    }

llegar

> runningcount / cases 
[1] 0.082199

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X