Ejercicio 2 de Estadística Computacional USACH

Lucas Mesías

Punto 1

Instale el paquete “gtools” con la sentencia: install.packages(′gtools′), incluya la librería “gtools”(library(gtools)).

(library(gtools))
## [1] "gtools"    "stats"     "graphics"  "grDevices" "utils"     "datasets" 
## [7] "methods"   "base"

Punto 2

Explique brevemente la diferencia entre permutación y combinación y exprese las ecuaciones para calcular permutaciones y combinaciones.

Permutaciones vs Combinaciones: Ambas generan dos distintas formas de mezclar datos de un vector, siendo difenecia es que mientras que las combinaciones no se preocupan del orden de los objetos, las permutaciones tratan cada conjunto que tiene los mismos elementos en distinto orden como una mezcla distinta. Por ejemplo, tenemos las combinaciones y permutaciones sin repetición del vector {a, b} (r = 2):

combinations(2, 2, v=letters[1:2], repeats=FALSE)
##      [,1] [,2]
## [1,] "a"  "b"
permutations(2, 2, v=letters[1:2], repeats=FALSE)
##      [,1] [,2]
## [1,] "a"  "b" 
## [2,] "b"  "a"

En las combinaciones, el vector {a,b} es equivalente a {b,a}. En las permutaciones, ambos son resultados diferentes.

Ecuaciones: (n = cantidad de elementos, r = cantidad de elementos seleccionados)

Combinaciones sin repetición: \(C(n,r) = n! / (r! * (n - r)!)\)

\(Ej: n=4, r=2\)

\(C(4, 2) = (4 * 3) / (2 * 1) = 6\)

Combinaciones con repetición: \(C(n + r - 1, r) = (n + r - 1)! / (r! * (n - 1)!)\)

A la ecuación anterior se le suma \(r-1\) a \(n\), para compensar las repeticiones posibles.

\(Ej: n=11, r=3\)

\(C(13, 3) = (13 * 12 * 11) / (3 * 2 * 1) = 286\)

Permutaciones sin repetición: \(P(n,r) = n! / (n - r)!\)

\(Ej: n=4, r=2\)

\(P(4, 2) = (4 * 3) = 12\)

Esto se debe a que hay 4 posibles items para elegir, pero al momento de “escoger” el siguiente, la cantidad de items se reduce en 1.

Permutaciones con repetición: \(n^r\)

\(Ej: n=4, r=2\)

\(4 * 4 = 16\)

Similarmente al razonamiento anterior, se escoge 1 item del total, pero este no es removido de los items seleccionables, por lo que la cantidad de items que pueden ser seleccionados en el siguiente puesto, no disminuye.

Punto 3

Busque en la ayuda de R las funciones combinations y permutations y explique brevemente cómo funcionan.

Las funciones de la librería gtools, permutations y combinations generan una matriz de matriz con las permutaciones o combinaciones respectivamente, basandose en los siguientes parámetros:

  • n: Tamaño del vector de elementos de entrada
  • r: Tamaño de los vectores de salida
  • v: Vector de elementos de entrada
  • set(V o F): Si se deben eliminar los elementos duplicados del vector de entrada
permutations(3, 2, v=c("a", "b", "b"), set = FALSE)
##      [,1] [,2]
## [1,] "a"  "b" 
## [2,] "a"  "b" 
## [3,] "b"  "a" 
## [4,] "b"  "b" 
## [5,] "b"  "a" 
## [6,] "b"  "b"
permutations(2, 2, v=c("a", "b", "b"), set = TRUE)
##      [,1] [,2]
## [1,] "a"  "b" 
## [2,] "b"  "a"
  • repeats(V o F): Si se deben construir los vectores de salida con repetición
permutations(2, 2, v=letters[1:2], repeats = FALSE)
##      [,1] [,2]
## [1,] "a"  "b" 
## [2,] "b"  "a"
permutations(2, 2, v=letters[1:2], repeats = TRUE)
##      [,1] [,2]
## [1,] "a"  "a" 
## [2,] "a"  "b" 
## [3,] "b"  "a" 
## [4,] "b"  "b"

Punto 4

a) La cantidad de permutaciones posibles con n = 11 y r = 3 con y sin repetición.

Con repetición

11^3 
## [1] 1331

Sin repetición

factorial(11)/factorial(11-3)
## [1] 990

b) Las combinaciones de largo tres con las letras a, b, c, d y e con y sin repetición.

combinations(5, 3, v=letters[1:5], repeats=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"
combinations(5, 3, v=letters[1:5], repeats=TRUE)
##       [,1] [,2] [,3]
##  [1,] "a"  "a"  "a" 
##  [2,] "a"  "a"  "b" 
##  [3,] "a"  "a"  "c" 
##  [4,] "a"  "a"  "d" 
##  [5,] "a"  "a"  "e" 
##  [6,] "a"  "b"  "b" 
##  [7,] "a"  "b"  "c" 
##  [8,] "a"  "b"  "d" 
##  [9,] "a"  "b"  "e" 
## [10,] "a"  "c"  "c" 
## [11,] "a"  "c"  "d" 
## [12,] "a"  "c"  "e" 
## [13,] "a"  "d"  "d" 
## [14,] "a"  "d"  "e" 
## [15,] "a"  "e"  "e" 
## [16,] "b"  "b"  "b" 
## [17,] "b"  "b"  "c" 
## [18,] "b"  "b"  "d" 
## [19,] "b"  "b"  "e" 
## [20,] "b"  "c"  "c" 
## [21,] "b"  "c"  "d" 
## [22,] "b"  "c"  "e" 
## [23,] "b"  "d"  "d" 
## [24,] "b"  "d"  "e" 
## [25,] "b"  "e"  "e" 
## [26,] "c"  "c"  "c" 
## [27,] "c"  "c"  "d" 
## [28,] "c"  "c"  "e" 
## [29,] "c"  "d"  "d" 
## [30,] "c"  "d"  "e" 
## [31,] "c"  "e"  "e" 
## [32,] "d"  "d"  "d" 
## [33,] "d"  "d"  "e" 
## [34,] "d"  "e"  "e" 
## [35,] "e"  "e"  "e"

c) La cantidad de permutaciones y combinaciones con n = 39 y r = 25 sin repetición.

factorial(39)/factorial(39-25)
## [1] 233978916085905571104620824042424088
factorial(39)/(factorial(39-25) * factorial(25))
## [1] 15084504396

Punto 5

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:

a) ¿cuál es la probabilidad de que sea la ruta óptima?

Se trata de una permutación sin repetición \(n=50, r=50\), ya que el orden en que se visitan las ciudades importa, y se asume que al llegar a la última ciudad de la vector resultado, la vendedora vuelve a la primera ciudad del set. Por lo que hay 50! posibles rutas, y solo una es la óptima, asi que la probabilidad es:

1/factorial(50)
## [1] 0.00000000000000000000000000000000000000000000000000000000000000003287949416633196809

b) Si se selecciona una ruta al azar que es distinta a la anterior ¿cuál es la probabilidad de que sea la ruta óptima?

Se le resta 1 a la cantidad total de rutas posibles:

1/(factorial(50) - 1)
## [1] 0.00000000000000000000000000000000000000000000000000000000000000003287949416633196809

ADVERTENCIA: puede que las funciones combinations y permutations no funcionen para este problema, si es así ¿por qué?.

Debido a que la cantidad total de combinaciones es monstruosamente grande, no es eficiente usar ni combinations() ni permutations(), ya que ambas funciones generarán primero cada combinación, almacenarán cada una de ellas en un arreglo, y luego para responder la pregunta, se deberá iterar en dicho arreglo, contando cuantas hay. Esta operación tardará mucho y usará muchos recursos del computador.

Punto 6

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.

a) Exprese la ecuación con la que se puede resolver el problema.

    1. \((0.1 * 19/20)+(0.6 * 9/10)+(0.15 * 9/10)+(0.05 * 19/20)+(0.10 * 2/5)\)
    1. \((0.1)+(0.6)+(0.15)+(0.05)+(0.10)\)

b) ¿Cuál es la probabilidad de que haya sido atendido por Pedro?

0.05
## [1] 0.050000000000000002776

c) ¿Cuál es la probabilidad de que haya sido atendido por Janet o Georgina?

(0.1)+(0.15)
## [1] 0.25

d) Calcule la probabilidad de que haya sido atendido por Janet, Georgina, Tomás, Pedro o Marcela. ¿Qué se puede observar?

(0.1)+(0.6)+(0.15)+(0.05)+(0.10)
## [1] 1

Primero, la suma de las probabilidades de que cada empleado atienda al cliente es 1 (100%), por lo que no hay ninguna posibilidad de que un empleado no sea atendido por uno de ellos.

(0.1)+(0.6)+(0.15)+(0.05)+(0.10)
## [1] 1

Por otro lado, las probabilidades de que un empleado sea atendido Y que su parabrisas sea limpiado, es menor a 1:

(0.1 * 19/20)+(0.6 * 9/10)+(0.15 * 9/10)+(0.05 * 19/20)+(0.10 * 2/5)
## [1] 0.85749999999999992895

Pero como se nos da la condición inicial de que el parabrisas ya fue limpiado, no tomamos en cuenta el caso de ser atendido y no tener limpio el parabrisas

Punto 7

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?

Asumiendo que una vez seleccionada, la persona es removida del conjunto de posibles candidatos seleccionables:

18/40 * 17/39 * 16/38
## [1] 0.082591093117408906354