U2 - Ejercicio Simulacion

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

EJERCICIO

GENERACIÓN DE NÚMEROS PSEUDOALEATORIOS MÉTODO


DE MONTE CARLO

Fecha: 27/07/2023
Nombre del estudiante: Daniel Farid Monterrubio villanueva
Nombre del docente: Omar Aceves Suriano

1. Con base en el material consultado en la unidad, resuelve el ejercicio que se plantea a


continuación acerca de los siguientes temas:
➢ Generación de números aleatorios

Ejercicio. Simulación de Monte Carlo


Marco teórico del ejercicio

Los métodos de Monte Carlo abarcan una colección de técnicas que permiten obtener
soluciones de problemas matemáticos o físicos por medio de pruebas aleatorias repetidas.
En la práctica, las pruebas aleatorias se sustituyen por resultados de ciertos cálculos
realizados con números aleatorios.
Bajo el nombre de Método Monte Carlo o Simulación Monte Carlo se agrupan una serie de
procedimientos que analizan distribuciones de variables aleatorias usando simulación de
números aleatorios.
El Método de Monte Carlo da solución a una gran variedad de problemas matemáticos
haciendo experimentos con muestreos estadísticos en una computadora. El método es
aplicable a cualquier tipo de problema, ya sea estocástico o determinístico.
Generalmente en estadística los modelos aleatorios se usan para simular fenómenos que
poseen algún componente aleatorio. Pero en el método Monte Carlo, por otro lado, el objeto
de la investigación es el objeto en sí mismo, un suceso aleatorio o pseudoaleatorio se usa
para estudiar el modelo.
A veces la aplicación del método Monte Carlo se usa para analizar problemas que no tienen
un componente aleatorio explícito; en estos casos un parámetro determinista del problema
se expresa como una distribución aleatoria y se simula dicha distribución. Un ejemplo sería
el famoso problema de las Agujas de Bufón.
La simulación de Monte Carlo también fue creada para resolver integrales que no se pueden
resolver por métodos analíticos, para solucionar estas integrales se usaron números
aleatorios. Posteriormente se utilizó para cualquier esquema que emplee números
aleatorios, usando variables aleatorias con distribuciones de probabilidad conocidas, el cual
es usado para resolver ciertos problemas estocásticos y determinísticos, donde el tiempo no
juega un papel importante.
El algoritmo de Simulación Monte Carlo Crudo o Puro está fundamentado en la generación
de números aleatorios por el método de Transformación Inversa, el cual se basa en las
distribuciones acumuladas de frecuencias:
1. Determinar la/s Variables aleatorias y sus distribuciones acumuladas(F).
2. Generar un número aleatorio uniforme (0,1).
3. Determinar el valor de las variables aleatorias para el número aleatorio generado de
acuerdo con las clases que tengamos.
4. Calcular media, desviación estándar error y realizar el histograma.
5. Analizar resultados para distintos tamaños de muestra.

Iterar los pasos 2, 3 y 4 tantas veces como muestras se requieran para el problema.
Otra opción para trabajar con Monte Carlo, cuando la variable aleatoria no es directamente
el resultado de la simulación o tenemos relaciones entre variables es la siguiente:
1. Diseñar el modelo lógico de decisión.
2. Especificar distribuciones de probabilidad para las variables aleatorias relevantes.
3. Incluir posibles dependencias entre variables.
4. Muestrear valores de las variables aleatorias.
5. Calcular el resultado del modelo según los valores del muestreo (iteración) y registrar
el resultado.
6. Repetir el proceso hasta tener una muestra estadísticamente representativa.
7. Obtener la distribución de frecuencias del resultado de las iteraciones.
8. Calcular media, desvío.
9. Analizar los resultados

Las principales características a tener en cuenta para la implementación o utilización del


algoritmo son:
o El sistema debe ser descrito por 1 o más funciones de distribución de probabilidad
(fdp).
o Generador de números aleatorios: cómo se generan los números aleatorios es
importante para evitar que se produzca correlación entre los valores muestrales.
o Establecer límites y reglas de muestreo para las fdp: conocemos que valores pueden
adoptar las variables.
o Definir Scoring: Cuando un valor aleatorio tiene o no sentido para el modelo a simular.
o Estimación Error: ¿Con qué error trabajamos? ¿Cuánto error podemos aceptar para
que una corrida sea válida?
o Técnicas de reducción de varianza.
o Paralelización y vectorización: En aplicaciones con muchas variables se estudia
trabajar con varios procesadores paralelos para realizar la simulación.
La función ALEATORIO() de Excel
Las hojas de cálculo como Excel (y cualquier lenguaje de programación estándar) son
capaces de generar números pseudoaleatorios provenientes de una distribución uniforme
entre el 0 y el 1. Este tipo de números pseudoaleatorios son los elementos básicos a partir
de los cuales se desarrolla cualquier simulación.
En Excel, es posible obtener un número pseudoaleatorio proveniente de una distribución
uniforme entre el 0 y el 1 usando la función ALEATORIO():

2. Datos del problema

Se tiene la siguiente distribución de probabilidades para una demanda aleatoria y se


debe determinar el efecto del promedio de la demanda en varias iteraciones:

Utilizando la distribución acumulada F(x) es decir, la probabilidad que la variable aleatoria


tome valores menores o iguales a (x) se determina cuál es el valor obtenido de unidades
cuando se genera un número aleatorio a partir de una distribución continua uniforme.
Este método de generación de variable aleatoria se llama Transformación Inversa.
Generando los valores aleatorios se obtiene el valor de la demanda para cada día,
interesándonos en este caso, cómo es el orden de aparición de los valores. Se busca el
número aleatorio generado en la tabla de probabilidades acumuladas, una vez
encontrado (si no es el valor exacto, éste debe ser menor que el de la fila seleccionada
pero mayor que el de la fila anterior), de esa fila tomada como solución se toma el valor
de las unidades (Cuando trabajamos en Excel debemos tomar el límite inferior del
intervalo para buscar en las acumuladas, para poder emplear la función BUSCARV(),
para 42 sería 0, para 43 0,100001 y así sucesivamente).

Por ejemplo, si el número aleatorio generado sea 0,52, ¿a qué valor de unidades
corresponde? observamos en la columna de frecuencias acumuladas, ese valor exacto
no aparece, el siguiente mayor es 0,70 y corresponde a 48 unidades. Se puede apreciar
mejor en el gráfico, trazando una recta desde el eje de la frecuencia hasta que intercepta
con la línea de la función acumulada, luego se baja a la coordenada de unidades y se
obtiene el valor correspondiente; en este caso 47.

Cuando trabajamos con variables discretas la función acumulada tiene un intervalo o


salto para cada variable (para casos prácticos hay que definir los intervalos y luego con
una función de búsqueda hallar el valor). Para funciones continuas se puede hallar la
inversa de la función acumulada.

De esta forma logramos a partir de la distribución de densidad calcular los valores de


la variable aleatoria dada.
En la siguiente tabla, se aprecia como a medida que aumenta el número de
simulaciones, el valor simulado se acerca al valor original de la media y desviación
estándar, además de la disminución del error típico.

3. Ahora genera números aleatorios, sigue el procedimiento que a continuación se detalla:

a. Para los datos del problema presentado sobre la demanda, realiza en Excel,
números aleatorios utilizando la función ALEATORIO() para una distribución
uniforme de 0 a 1. Por lo menos 30 números aleatorios.

Nota: La función ALEATORIO es una función volátil de Excel. Esto significa


que cada vez que pulsamos la tecla F9 o cambiemos alguno de los inputs
del modelo, todas las celdas donde aparezca la función ALEATORIO serán
recalculadas de forma automática.

b. Determina el valor de las variables aleatorias para el número aleatorio generado


de acuerdo con las clases del problema, puedes generar una tabla de
distribuciones de frecuencia para este paso.
c. Calcula la media, desviación estándar error y realiza el histograma
correspondiente.
Frecuencia Numero de Numeros Valor de la
Unidades Frecuencia
Acumulada Simulacion Aleatorios Demanda
42 0.00 0.10 1 0.23657766 45
45 0.20 0.30 2 0.01937271 42
48 0.40 0.70 3 0.27059503 45
51 0.20 0.90 4 0.84619111 51
54 0.10 1.00 5 0.33241734 48
6 0.46508011 48
Unidades Frecuencia 7 0.65869991 48
42 5 8 0.02534335 42
45 8 9 0.02499606 42
48 12 10 0.82969174 51
51 4 11 0.65677103 48
54 1 12 0.54654758 48
13 0.20520055 45
Desviacion
14
Estandar 3.05941171 0.40380676 48
Media 48 15 0.82929623 51

Error 0.5585696 16 0.27991878 45


17 0.50606218 48
18 0.07674283 42
19 0.48065147 48
20 0.92501733 54
21 0.65305716 48
22 0.27452328 45
23 0.14131064 45
24 0.4859736 48
25 0.30184538 48
26 0.28753903 45
27 0.75292995 51
28 0.15042205 45
29 0.38761885 48
30 0.01651817 42

Conclusion

El método de generación de números aleatorios con aleatorio () en Excel es una forma rápida y sencilla
de simular datos siguiendo una distribución uniforme. Sin embargo, debe usarse con cuidado y
considerar sus limitaciones, especialmente si se requieren distribuciones diferentes o una mayor
precisión en los resultados. Para aplicaciones más avanzadas y complejas, existen otras técnicas de
generación de números aleatorios y distribuciones que pueden ser más apropiadas.

Referencia

García, E., Reyes, H., y Cárdenas, L. (2013). Simulación y análisis de sistemas con Promodel

Render, B., Stair, R. M., & Hanna, M. E. (2012).Métodos cuantitativos para los negocios

Granino A. Korn. (2007). Advanced Dynamic-system Simulation. Model-replication Techniques and Monte Carlo
Simulation

También podría gustarte