1: Librería gtools

#Llamada a la libreria gtools
library(gtools)

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

La permutación y la combinación presentan una diferencia importante al momento de calcular todas las agrupaciones posibles para un conjunto de elementos.

En el caso de la permutación, el orden que presentan los objetos es crucial para reconocer si una agrupación es diferente de otra, a pesar de presentar los mismos elementos el que estos se encuentren en diferentes posiciones los hace ser una alternativa diferente de agrupación. Por el contrario, para la combinación el orden de los elementos no es importante, considerando que dos agrupaciones que presentan los mismos elementos, pero con posiciones diferentes son el mismo conjunto.

Ecuación de la permutación: $ nPr = n!/ (n - r)!$

Ecuación de la combinación: $ nCr = n!/ (n - r)!r!$

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

Ambas funciones utilizan los valores de n (numero total de objetos disponibles en el conjunto) y r (cantidad de elementos que presenta cada suceso) para generar los calculos, también es posible entregar un vector con los elementos del conjunto. Por otro lado, se puede agregar la indicación de repetición de valores o no en la creación de subconjuntos. En el caso de solicitar una combinatoria o permutación con repetición de elementos se agrega la indicación repeats.allowed = TRUE a la función, y para quitar las repeticiones repeats.allowed = FALSE.

4: Calcule:

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

#Permutación sin repetición
permuta_sin= permutations(11, 3,repeats.allowed = FALSE)
contador_permuta_sin= nrow(permuta_sin)
cat("La cantidad de permutaciones posibles sin repetición es de :",contador_permuta_sin,". Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 11.")
## La cantidad de permutaciones posibles sin repetición es de : 990 . Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 11.
#Permutación con repetición
permuta_con = permutations(11, 3,repeats.allowed = TRUE)
contador_permuta_con=nrow(permuta_con)
cat("La cantidad de permutaciones posibles con repetición es de :",contador_permuta_con,". Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 11.")
## La cantidad de permutaciones posibles con repetición es de : 1331 . Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 11.

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

#Combinación sin repetición
combinacion_sin = combinations(5,3,repeats.allowed = FALSE)
contador_combinacion_sin=nrow(combinacion_sin)
cat("La cantidad de combinaciones posibles sin repetición es de :",contador_combinacion_sin,". Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 5.")
## La cantidad de combinaciones posibles sin repetición es de : 10 . Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 5.
#Combinación con repetición
combinacion_con = combinations(5,3,repeats.allowed = TRUE)
contador_combinacion_con= nrow(combinacion_con)
cat("La cantidad de combinaciones posibles con repetición es de :",contador_combinacion_con,". Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 5.")
## La cantidad de combinaciones posibles con repetición es de : 35 . Este valor indica la cantidad de eventos posibles para un experimento que considera 3 elementos de un conjunto de 5.

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

#Permutacion Sin repetición (*No se utiliza función ya que computador no tiene la memoria suficiente para desarrollar la acción).
permutacion_c = factorial(39)/factorial(39-25)
cat("La cantidad de permutaciones posibles sin repetición es de :",permutacion_c,". Este valor indica la cantidad de eventos posibles para un experimento que considera 25 elementos de un conjunto de 39.")
## La cantidad de permutaciones posibles sin repetición es de : 2.339789e+35 . Este valor indica la cantidad de eventos posibles para un experimento que considera 25 elementos de un conjunto de 39.
#Combinacion Sin repetición(*No se utiliza función ya que computador no tiene la memoria suficiente para desarrollar la acción).
combinacion_c = (factorial(39))/(factorial(25)*factorial(39-25))
cat("La cantidad de combinaciones posibles sin repetición es de :",combinacion_c,". Este valor indica la cantidad de eventos posibles para un experimento que considera 25 elementos de un conjunto de 39.")
## La cantidad de combinaciones posibles sin repetición es de : 15084504396 . Este valor indica la cantidad de eventos posibles para un experimento que considera 25 elementos de un conjunto de 39.

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.

Cantidad de rutas posibles : \(rutas = (n-1)!\)

# La cantidad de rutas posibles de puede calcular imaginando que en cada ciudad hay una posibilidad de ciudad-1, Ej: en la ciudad 1 las rutas posibles son 49, en la ciudad 2 las rutas posibles son 48, en la ciudad 3 las rutas pueden ser 47... y de esa manera se llega a la formula (cantidad_ciudades -1)!
rutas = factorial(50-1)
cat("La cantidad de posibles sin pasar dos veces por la misma ciudad es de ",rutas)
## La cantidad de posibles sin pasar dos veces por la misma ciudad es de  6.082819e+62

A. Considerando que solo existe una ruta óptima, si se selecciona una ruta al azar ¿cuál es la probabilidad de que sea la ruta óptima?

#La probabilidad de que la ruta seleccionada sea la optima corresponde a la ruta dividida en el total de rutas.
probabilidadRuta= 1/factorial(50-1)
cat("La probabilidad de que la ruta seleccionada sea la ruta optima es de ",probabilidadRuta)
## La probabilidad de que la ruta seleccionada sea la ruta optima es de  1.643975e-63

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?

#Al seleccionar una nueva ruta al azar se debe quitar esta ruta desde el total de posibilidades, quedando de la manera en que se expresa a continuación:
probabilidadRuta2= 1/(factorial(50-1)-1)
cat("La probabilidad de que esta segunda opción sea la ruta óptima es de ",probabilidadRuta2)
## La probabilidad de que esta segunda opción sea la ruta óptima es de  1.643975e-63

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.

La ecuación para calcular el porcentaje total de los clientes atendidos a los cuales se les limpian los vidrios por trabajador corresponde a :

\(P (T/L) = P(L/T) * P(T)/ Σ P(L/T1)*P(T1)+P(L/T2)*P(T2)...P(L/Tn)*P(Tn)\)

Donde, P(T/L) corresponde a la probabilidad por trabajador de haber antendido a un cliente y además haber limpiado sus vidrios, P(L/T) es la probabilidad de limpiar los vidrios de cada trabajador (para el calculo, 1- probabilidad de no limpiar vidrios), P(T) es la probabilidad de haber atendido a un cliente. Todo este calculo se divide en la sumatoria de probabilidad de limpiar los vidrios por probabilidad de haber atendido a un cliente por cada trabajador.

B.¿Cuál es la probabilidad de que haya sido atendido por Pedro?

#La formula utilizada indica la probabilida de que haya sido atendido por Pedro X la probabilidad de que le haya limpiado los vidrios al cliente, dividido por la probabilidad de la suma de todos los trabajadores.
PpedroL = ((19/20)*0.05)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
cat("La probabilida de que haya sido Pedro quien atendio al cliente agradecido por la limpieza de sus vidrios es de ",PpedroL)
## La probabilida de que haya sido Pedro quien atendio al cliente agradecido por la limpieza de sus vidrios es de  0.05539359

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

#A diferencia del caso anterior, la probabilidad de haber sido atendido por Janet por la probabilidad de que le haya limpiado los vidrios se divide en la suma de probabilidades de cada trabajador, esta misma operación se realiza en Georgina. Finalmente se suman las probabilidades.
PjanetL = ((19/20)*0.1)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
PgeorginaL= ((9/10)*0.15)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
janetOgeorgina = PjanetL + PgeorginaL
cat("La probabilidad de que haya sido atendido por Janet o Georgina es de", janetOgeorgina)
## La probabilidad de que haya sido atendido por Janet o Georgina es de 0.2682216

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

# En este caso se calcula la probabilidad de cada trabajados de la misma forma que en los ejercicios anteriores y se suma el total.
PjanetL = ((19/20)*0.1)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
PgeorginaL= ((9/10)*0.15)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
PpedroL = ((19/20)*0.05)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
PtomasL = ((9/10)*0.6)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
PmarcelaL = ((2/5)*0.1)/(((19/20)*0.05)+((19/20)*0.1)+((9/10)*0.6)+((9/10)*0.15)+((2/5)*0.1))
Total = PjanetL + PgeorginaL + PpedroL + PtomasL + PmarcelaL
cat("La probabilidad de que haya sido atendido por cualquier trabajador de la bencinera es de",Total, "este resultado corresponde a la totalidad de la muestra.")
## La probabilidad de que haya sido atendido por cualquier trabajador de la bencinera es de 1 este resultado corresponde a la totalidad de la muestra.

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 dos personas seleccionadas rechacen?

#Para este ejercicio se utiliza la distribución de probabilidad hipergeometrica, esto debido a que corresponde a eventos aleatorios sin reemplazo y que el conjunto total corresponde a más de un tipo o grupo de elementos.
N= 40
K=18
n=3
x=2

probabilidad = (((factorial(K)/(factorial(x)*(factorial((K-x)))))) * ((factorial((N-K))/(factorial((n-x))*(factorial(((N-K)-(n-x))))))))/((factorial(N)/(factorial(n)*factorial((N-n)))))
cat("La probabilidad de que 2 personas de 3 rechacen en la situación descrita anteriormente corresponde a ",probabilidad)
## La probabilidad de que 2 personas de 3 rechacen en la situación descrita anteriormente corresponde a  0.3406883

Referencias.