Está en la página 1de 11

Modelos de Simulación de Monte Carlo

La simulación de Monte Carlo es una técnica numérica que combina


los conceptos de muestreo estadístico con la facilidad de uso de las
hojas de cálculo para replicar sistemas reales complejos y calcular
expresiones matemáticas que, de otra forma, requerirían de un mayor
tiempo de cómputo.

Se basa en la realización de “experimentos” con muestreo de


distribuciones discretas o continuas, para replicar el comportamiento de
fenómenos del sistema que deseamos simular.

El procedimiento para efectuar una simulación de Montecarlo se


compone de 5 fases:

Fase 1: Identificar las variables aleatorias del problema o sistema a


simular, y establecer para cada una de éstas una distribución de
probabilidad que la represente.

Tomemos de nuevo el problema del puesto de venta de caramelos


como ejemplo. A continuación se describe este sistema y se identifican
sus variables aleatorias:

“Diariamente, el puesto de venta de caramelos ‘El Oso de Goma’ abre


sus puertas a los clientes que la visitan desde hace varios años. Algunos
de estos clientes son asiduos, mientras que otros son ocasionales. El
tendero de este almacén ofrece todos sus caramelos a un precio de
venta de $1000/paquete. Las gomitas le cuestan al tendero
$900/paquete, pero si no se venden en el transcurso del día, se
endurecen y tienen que ser reprocesadas (el proveedor le compra al
tendero los paquetes sin vender al final del día a un precio de

1
$600/paquete). En ocasiones, cuando el proveedor de gomitas ofrece
un descuento, las gomitas le cuestan al tendero $800/paquete. Estos
descuentos se hacen sin previo aviso. Históricamente, se sabe que entre
15 y 35 clientes llegan a la tienda por un paquete de gomitas, y que en
un 10% de las ocasiones, el tendero ha podido comprar los paquetes de
gomas a un precio con descuento. Si el cliente llega y no hay paquetes,
la venta se pierde. Actualmente, el tendero está pidiendo a diario Q=24
paquetes de gomas para atender a su clientela”.

Con base en esta información, se identificaron las variables aleatorias


del problema:

Variable Distribución de
Representación Tipo de variable
aleatoria probabilidad
Demanda diaria
de paquetes de X1 Discreta Uniforme
gomas
Costo de
X2 Discreta Empírica
adquisición

Variables aleatorias del ejemplo de la tienda ‘El Oso de Goma’

Expliquemos más a fondo la información consignada en la tabla


anterior:

 Las variables aleatorias son aquellos elementos que el vendedor


no controla, y cuyos posibles valores están asociados con una
probabilidad de ocurrencia. Por ello, dado que el vendedor no
controla cuántos clientes llegarán, y que no sabe de antemano a
qué precio tendrá que comprar los paquetes, éstas son variables
aleatorias.

2
 Para diferenciar a cada variable, las vamos enumerando con
subíndices que acompañen a cada variable: X1, X2,…
 Cuando una variable sólo puede tomar valores discretos (por
ejemplo, sólo puede tomar valores enteros), esta variable es
discreta. En nuestro caso, el costo unitario y la demanda son
discretas.

¿Cómo determinar qué tipo de distribución utilizar en cada caso?

En muchas ocasiones es difícil determinar qué tipo de distribución utilizar


para representar a una variable. A continuación describiremos las
principales distribuciones de tipo discreto que utilizaremos en los modelos
de simulación:

 Distribución uniforme: Para empezar, si no tenemos información alguna


sobre el comportamiento de la variable, el supuesto básico que
podemos hacer es que puede tomar cualquier valor con igual
probabilidad. Es como cuando lanzamos un dado: Cualquier resultado
entre 1 y 6 podría salir. Este tipo de variables se conocen como
variables uniformes.

El caso de la demanda diaria es un buen ejemplo de una distribución


discreta uniforme: En un día pueden llegar cualquier número de clientes
entre 15 y 35.

Los parámetros de esta distribución son el valor mínimo (a) y el valor


máximo (b) que puede tomar dicha variable.

 Distribución Poisson: Cuando la variable representa llegadas de clientes


o entidades independientes entre sí, y pertenecientes a una población
suficientemente grande, se suele utilizar una variable aleatoria Poisson
para describir su comportamiento. El único parámetro requerido para

3
modelar dicha variable es la tasa promedio de entidades que llegan al
sistema, 𝜆.
 Distribución empírica: Con frecuencia, se cuenta con información
histórica sobre el comportamiento de la variable. Con las frecuencias
históricas de ocurrencia de cada valor de la variable, podríamos
construir una distribución de frecuencias que se conoce como
distribución empírica, por provenir de datos experimentales recopilados
previamente.

Un ejemplo de este tipo de distribución lo encontramos en el costo


unitario de los paquetes de gomitas. La distribución empírica de esta
variable X2 es:

Valor de la variable (x2) Probabilidad asociada


$800/paquete 0.10
$900/paquete 0.90

Bien, después de describir las variables de entrada, vamos a simular su


comportamiento.

Fase 2: Crear una distribución de probabilidad acumulada para cada


variable del primer paso.

A continuación se muestran las distribuciones de probabilidad acumulada


para cada una de las variables:

X2 P(X2) Probabilidad acumulada

800 0.1 0.1000


900 0.9 1.0000

Distribución acumulada de la variable ‘costo unitario’

4
Probabilidad
X1 P(X1)
acumulada
15 0.047619 0.0476
16 0.047619 0.0952
17 0.047619 0.1429
18 0.047619 0.1905
19 0.047619 0.2381
20 0.047619 0.2857
21 0.047619 0.3333
22 0.047619 0.3810
23 0.047619 0.4286
24 0.047619 0.4762
25 0.047619 0.5238
26 0.047619 0.5714
27 0.047619 0.6190
28 0.047619 0.6667
29 0.047619 0.7143
30 0.047619 0.7619
31 0.047619 0.8095
32 0.047619 0.8571
33 0.047619 0.9048
34 0.047619 0.9524
35 0.047619 1.0000

Distribución acumulada de la variable ‘demanda diaria’

Note que cada posible valor de las variables aleatorias tiene asociada una
probabilidad acumulada, y que sin importar qué variable estemos
representando, sus probabilidades acumuladas siempre tienen la
característica de ser valores entre 0 y 1.

Ahora estamos preparados para simular cada variable, ya que las hojas de
cálculo tienen funciones para “simular” o generar números pseudo-
aleatorios (que se comportan como aleatorios) entre 0 y 1. Antes de hacer
esto, pasemos a la fase 3 del proceso de simulación.

5
Fase 3: Fijar un intervalo de números aleatorios para cada variable.

En este punto, queremos asociar a cada posible valor de nuestras variables


del problema de la tienda de caramelos, con un intervalo de números
entre 0 y 1. Estos intervalos son sencillos de construir, a partir de las
probabilidades acumuladas de cada valor i:

Límite superiori = Probabilidad acumuladai

Límite inferiori = = Probabilidad acumuladai-1

Probabilidad Intervalo de aleatorios


X1 P(X1)
acumulada desde… …hasta
15 0.047619 0.0476 0 0.0476
16 0.047619 0.0952 0.0476 0.0952
17 0.047619 0.1429 0.0952 0.1429
18 0.047619 0.1905 0.1429 0.1905
19 0.047619 0.2381 0.1905 0.2381
20 0.047619 0.2857 0.2381 0.2857
21 0.047619 0.3333 0.2857 0.3333
22 0.047619 0.3810 0.3333 0.3810
23 0.047619 0.4286 0.3810 0.4286
24 0.047619 0.4762 0.4286 0.4762
25 0.047619 0.5238 0.4762 0.5238
26 0.047619 0.5714 0.5238 0.5714
27 0.047619 0.6190 0.5714 0.6190
28 0.047619 0.6667 0.6190 0.6667
29 0.047619 0.7143 0.6667 0.7143
30 0.047619 0.7619 0.7143 0.7619
31 0.047619 0.8095 0.7619 0.8095
32 0.047619 0.8571 0.8095 0.8571
33 0.047619 0.9048 0.8571 0.9048
34 0.047619 0.9524 0.9048 0.9524
35 0.047619 1.0000 0.9524 1.0000

6
Note que ahora cada posible valor de la variable ‘demanda diaria’ tiene
asociado un intervalo de números entre 0 y 1. Si alguien eligiera al azar un
número entre 0 y 1, por ejemplo, el número 0.5, podríamos buscar este
número entre los intervalos construidos y darnos cuenta que al seleccionar
aleatoriamente el número 0.5, estaríamos “simulando” una demanda
diaria de 25 clientes, ya que 0.5 está entre 0.4762 y 0.5238.

La generación de estas tablas de intervalos garantiza que los valores


generados para cada variable se comporten de forma similar (y
aparezcan con las mismas probabilidades), que como se espera que
ocurran en la práctica.

Probabilidad Intervalo de aleatorios


X2 P(X2)
acumulada desde… desde…

800 0.1 0.1000 0 0.1000


900 0.9 1.0000 0.1000 1.0000

Para verificar cómo se han obtenido estos valores, puede consultar la


solución a este ejemplo en la sección de recursos adicionales (Simulación
de Montecarlo – El Oso de Goma).

Fase 4: Para cada ensayo, generar 1 número aleatorio entre 0 y 1, por


cada variable del problema, y con base en ellos, simular los valores de
entrada del problema.

Una réplica consiste en una simulación del sistema

Esta fase busca obtener unos datos de partida para simular el


comportamiento de nuestro sistema real (la tienda de gomas), en cada
día (en cada punto estático en el tiempo). Como tenemos 2 variables,

7
necesitamos 2 números aleatorios por cada día: uno para simular la
demanda, y otro para simular el costo unitario.

La gran ventaja hoy en día reside en la gran capacidad de cómputo y la


sencillez para generar números pseudo-aleatorios por computador.

Para nuestro ejemplo, se utilizó la función =aleatorio() que existe en


Microsoft Excel.

Si usted escribe esta función en una celda de Excel©, este programa


simulará un número aleatorio entre 0 y 1. Vamos a generar una pareja de
números aleatorios (U1 y U2) de esta forma:

U1 U2
0.1468 0.1182

Es recomendable que siga el desarrollo de este ejemplo, con la ayuda de


Excel, y del archivo (Simulación de Montecarlo – El Oso de Goma) que
encuentra en los recursos adicionales.

Ahora, vamos a usar cada número aleatorio Ui para simular una variable
aleatoria del problema:

 U1 está asociado con la variable X1 (demanda diaria): si buscamos el


valor de U1=0.1468 en la tabla de intervalos de la variable X1,
encontraremos que este aleatorio cae en el intervalo [ 0.1429, 0.1905). Este
intervalo pertenece al valor de X1=18. Vea la tabla de intervalos para
identificar el intervalo en el que cae el valor de 0.1468.

 U2 está asociado con la variable X2 (demanda diaria): si buscamos el


valor de U2=0.1182 en la tabla de intervalos de la variable X2,
encontraremos que este aleatorio cae en el intervalo [ 0.1429, 0.1905). Este

8
intervalo pertenece al valor de X2=900. Regrese a la tabla de intervalos
para identificar el intervalo en el que cae el valor de 0.1468.

¡Ya logramos simular el comportamiento de la tienda de gomitas durante


un día!

“Llegaron 18 clientes, y se vendieron 18 paquetes de gomas (recuerde que


el tendero compra Q=24 paquetes a diario), y estos fueron adquiridos a un
precio de $900. Los 24-18 = 6 paquetes restantes tuvieron que devolverse al
proveedor, a un precio de remate de $600/paquete”.

Llegamos a la fase final del proceso de simulación. No se preocupe si aún


este proceso le parece complicado. Lo invitamos a repetirlo paso a paso
para comprenderlo en su totalidad, y a realizar los ejercicios propuestos
para afianzar el proceso.

Fase 5: Efectuar una serie de N ensayos para calcular el valor promedio de


las medidas de desempeño del sistema, y obtener conclusiones sobre el
modelo.

En esta fase es clave resaltar que el comportamiento de un sistema no


puede verse representada por el resultado obtenido en uno solo de los
ensayos de la simulación. Por ejemplo, para el caso de la tienda de
gomas, hemos simulado un solo día de ventas.

Si usamos ese único dato como representativo de todo el sistema, las


conclusiones que hagamos estarán sesgadas a los resultados de dicho
ensayo. Por ejemplo, si fue un mal día para las ventas en la tienda, y con
ese único día concluimos que debe reducirse el inventario, podemos
cometer un grave error ya que un solo dato no es estadísticamente
significativo para representar a una población.

9
¡Sería como encuestar a una sola persona para obtener información sobre
su intención de voto, y con base en ese único dato, asumir que toda la
población votará igual que este único individuo!

Por ello, en la última fase, y con ayuda de Excel, generamos un número


mayor de ensayos (N=10 ensayos) y con base en ellos vamos a promediar
los ingresos diarios del tendero.

Note que para calcular los ingresos del tendero cada día, debemos
calcular las siguientes expresiones:

Ventas diarias = mínimo (Demanda, Q)

Devoluciones = Q – ventas diarias

Utilidad = (P.venta – c.unitario)*Ventas + (P.devolución – c.unitario)*Devoluciones

A continuación se muestran los resultados de los 10 ensayos


correspondientes a 10 días simulados para este problema:

Ensayo X1
X2 (Costos)
# U1 U2 (Demanda) Ventas Devoluciones Utilidades
1 0.6578 0.0794 28 $ 800 24 0 $ 4,800
2 0.3050 0.6120 21 $ 900 21 3 $ 1,200
3 0.3065 0.5291 21 $ 900 21 3 $ 1,200
4 0.3997 0.8657 23 $ 900 23 1 $ 2,000
5 0.5693 0.4314 26 $ 900 24 0 $ 2,400
6 0.5487 0.7347 26 $ 900 24 0 $ 2,400
7 0.5173 0.8372 25 $ 900 24 0 $ 2,400
8 0.4089 0.0201 23 $ 800 23 1 $ 4,400
9 0.2302 0.8719 19 $ 900 19 5 $ 400
10 0.7440 0.6809 30 $ 900 24 0 $ 2,400
Utilidad promedio $ 2,360

Entre más ensayos se efectúen, el valor de la utilidad promedio será más


acertado.

10
Por ejemplo, con N = 10000 ensayos, obtenemos que la utilidad promedio
es de aproximadamente $1790/día.

¿Cuál es la finalidad de este modelo? Que el tendero pueda determinar si


le conviene modificar la cantidad de pedido que hace a diario.

Para ello, simplemente cambiamos el valor de Q y comparamos los


modelos de simulación para determinar qué alternativa le conviene más al
tendero.

Utilizando 10000 ensayos,

Con Q= 30, obtuvimos una utilidad diaria = $1031/día,

Con Q=20, obtuvimos una utilidad diaria = $1900/día.

Con base en esta simulación, piense por un instante en la siguiente


pregunta ¿Qué le podríamos recomendar al tendero sobre la cantidad de
pedido? (consulte la respuesta al final de este documento ↓)

Aquí culmina el material de lectura asociado con los modelos de


simulación. Es importante que practique construyendo otros modelos, y
que consulte el material audiovisual para ver cómo se construyó este
modelo paso a paso.

Respuesta: El modelo de simulación permite concluir que es mejor pedir a


diario solo 20 paquetes de gomitas, en lugar de los 24 paquetes que se
pedían antes, ya que se incrementa la utilidad.

11

También podría gustarte