Las permutaciones consideran diferentes agrupaciones de elementos donde el orden de estos si importa y las combinaciones consideran estas agrupaciones sin importar el orden.
Las ecuaciones que podemos encontrar para permutaciones son las siguientes. Si se considera la cantidad de permutaciones de n elementos:
\[n!=n\times(n-1)\times...\times2\times1\] El número de permutaciones de un subconjunto de \(r\) elementos de un conjunto de \(n\) elementos es:
\[P_{r}^{n} = n \times (n-1) \times ...\times (n-r+1) = \dfrac{n!}{(n-r)!}\] Finalmente, el número de permutaciones de diferentes tipos \(n=n_1+n_2+...+n_r\) es:
\[\dfrac{n!}{n_1!n_2!...n_r!}\] Por otro lado, el número de combinaciones de \(r\) elementos que pueden ser seleccionados de un conjunto de \(n\) elementos es:
\[C_{r}^{n}=\binom{n}{r}=\dfrac{n!}{r!(n-r)!}\] Las funciones \(combinations\) y \(permutations\) reciben los siguientes parámetros: \(n\) cantidad de elementos del vector, \(r\) cantidad de elementos a seleccionar y \(v\) el vector de elementos. Además recibe \(set\) como un parámetro que elimina los duplicados del vector \(v\) y \(repeats.allowed\) que permite o elimina los elementos duplicados de los vectores construidos. La implementación de las funciones se ve de la siguiente manera:
combinations(n,r,v = 1:n, set = TRUE, repeats.allowed = FALSE)
permutations(n,r,v = 1:n, set = TRUE, repeats.allowed = FALSE)
Las funciones retornan un matriz donde cada fila es un vector de largo \(r\).
(library(gtools))
n = 11
r = 3
Sin repetición:
> nrow(permutations(n, r, v = 1:n, set = TRUE, repeats.allowed = FALSE))
[1] 990
Con repetición:
> nrow(permutations(n, r, v = 1:n, set = TRUE, repeats.allowed = TRUE))
[1] 1331
Podrían haberse efectuado los cálculos a mano, siendo el resultado sin repetición:
\[P_{3}^{11} = \dfrac{11!}{(11-3)!}=990 \] Considerando con repetición: \[P = 11\times11\times11 = 1331\]
Sin repetición:
> r = 3
> v = c("a","b","c","d","e")
> combinations(5, r, v, set = TRUE, repeats.allowed = FALSE)
[,1] [,2] [,3]
[1,] "a" "b" "c"
[2,] "a" "b" "d"
[3,] "a" "b" "e"
[4,] "a" "c" "d"
[5,] "a" "c" "e"
[6,] "a" "d" "e"
[7,] "b" "c" "d"
[8,] "b" "c" "e"
[9,] "b" "d" "e"
[10,] "c" "d" "e"
> nrow(combinations(5, r, v, set = TRUE, repeats.allowed = FALSE))
[1] 10
Con repetición:
# combinations(5, r, v, set = TRUE, repeats.allowed = TRUE)
> nrow(combinations(5, r, v, set = TRUE, repeats.allowed = TRUE))
[1] 35
Al igual que en el caso de las permutaciones aquí se podría haber calculado de forma manual.
Dado que no se pudo calcular el resultado por \(RStudio\) debido a problemas con el software, se calculó de manera manual:
La cantidad de permutaciones son:
\[P_{25}^{39}=\dfrac{39!}{(39-25)!}=2.34\times10^{35}\] La cantidad de combinaciones:
\[C_{25}^{39}=\binom{39}{25}=\dfrac{39!}{25!(39-25)!}=1.50\times10^{10}\]
Considere un problema de una vendedora viajera que debe recorrer 50 ciudades y volver al origen sin pasar dos veces por la misma ciudad. Considerando que solo existe una ruta óptima, si se selecciona una ruta al azar
En este caso dado que la vendedora va escogiendo una ciudad a la vez sin volver a pasar por la misma dos veces (sin repetición) la cantidad total de posibilidades es \(50!\) y que sea la ruta óptima:
\[N_{rutas}=50!=3.04\times10 ^{64}\]
\[P(óptima)=\dfrac{1}{N_{rutas}}=\dfrac{1}{3.04\times10^{64}}=3.287949\times10^{-65}\]
probabilidad de que sea la ruta óptima?
Dado que ya utilizamos una ruta, debemos restar una ruta al total que calculamos anteriormente:
\[P'(óptima)=\dfrac{1}{N_{rutas}-1}=3.287949\times10^{-65}\] Lo cual sigue siendo una probabilidad bastante baja dado que se tiene una ruta menos.
En este caso, las fórmulas \(combinations\) y \(permutations\) no son posibles de utilizar debido a la alta carga computacional para el cómputo de todas las combinaciones y permutaciones. En este caso particular el programa se congela y por lo tanto no es posible calcular la cantidad de resultados a través del software.
Una bencinera tiene 5 funcionarios que deben limpiar el parabrisas de cada cliente que es atendido. Janet da servicio al \(10\%\) de los clientes y no limpia 1 de cada 20 parabrisas; Tomás da servicio al \(60\%\) de los clientes y no limpia 1 de cada 10 parabrisas; Georgina da servicio al \(15\%\) de los clientes y no limpia 1 de cada 10 parabrisas; Pedro da servicio al \(5\%\) de los clientes y no limpia 1 de cada 20 parabrisas; Marcela da servicio al \(10\%\) de los clientes y no limpia 3 de cada 5 parabrisas. Si un cliente envía una nota de agradecimiento porque su parabrisas quedó como nuevo.
La ecuación con la que se puede resolver el El teorema de Bayes o Teorema de las probabilidades totales:
\[P(B_j|A)=\dfrac{P(A|B_j)P(B_j)}{\sum_{j=1}^{k}P(A|B_j)P(B_j)}\]
Para encontrar el resultado debemos expresar lo que buscamos, en este caso, la probabilidad de que haya sido atendido por Pedro, dado que su parabrisas está limpio:
\[P(Pe|L)=\dfrac{P(L|Pe)P(Pe)}{P(L)}\] Sin embargo, debemos calcular \(P(L)\), para lo cual usamos lo que nos dice el teorema:
\[P(L)=P(L|J)P(J)+P(L|T)P(T)+P(L|G)P(G)+P(L|Pe)P(Pe)+P(L|M)P(M)\] Lo cual es igual a:
\[P(L)=0.95\cdot0.1+0.9\cdot0.6+0.9\cdot0.15+0.95\cdot0.05+0.4\cdot0.1=0.8575\] Por lo tanto el resultado es:
\[P(Pe|L)=\dfrac{0.95\cdot0.05}{0.8575}=0.05539\]
En este caso se busca la probabilidad de que haya sido atendido por Janet o Georgina dado que su vidrio se encuentra limpio:
\[P(J\cup G|L)=P(J|L)+P(G|L)\] Se procede igual que en el inciso anterior, lo que da como resultado:
\[P(J\cup G|L)=\dfrac{P(L|J)P(J)+P(L|G)P(G)}{P(L)}=\dfrac{0.95\cdot0.1+0.9\cdot0.15}{0.8575}=0.26822\]
Pedro o Marcela. ¿Qué se puede observar?
En este caso buscamos lo siguiente:
\[P(J\cup T\cup G\cup P\cup M|L)=\dfrac{P(L|J)P(J)+P(L|T)P(T)+P(L|G)P(G)+P(L|Pe)P(Pe)+P(L|M)P(M)}{P(L)}\]
Esto es:
\[P(J\cup T\cup G\cup P\cup M|L)=\dfrac{0.95\cdot0.1+0.9\cdot0.6+0.9\cdot0.15+0.95\cdot0.05+0.4\cdot0.1}{0.8575}=\dfrac{0.8575}{0.8575}=1\] Es decir, la probabilidad de haber sido atendido por cualquiera de los cinco trabajadores dado que el parabrisa del cliente se encuentra limpio es 1. Esto debido a que si el parabrisa se encuentra limpio, el cliente debió haber sido atendido previamente por alguno de los trabajadores, lo cual siempre ocurre.
De un grupo de 40 personas se quiere saber la opinión de 3 personas (seleccionadas al azar) acerca del apruebo o rechazo de la nueva constitución. Si se sabe que 22 personas aprueban y 18 rechazan ¿cuál es la probabilidad de que las tres personas seleccionadas rechacen?
Se asume que la selección de las personas es sin repetición, por lo que la probabilidad es:
\[P_{rechazo}^3=\dfrac{18}{40}\cdot\dfrac{17}{39}\cdot\dfrac{16}{38}=0.08259109\]