Está en la página 1de 11

Aplicacin de la simulacin con hoja de clculo a la Teora de Colas

APLICACIN DE LA SIMULACIN CON HOJA DE


CLCULO A LA TEORA DE COLAS

Bernal Garca, Juan Jess


Martnez Mara Dolores, Soledad Mara
Snchez Garca, Juan Francisco
Dpto. Mtodos Cuantitativos e Informticos
Universidad Politcnica de Cartagena

RESUMEN
En la Teora de Colas, en ocasiones, es preciso recurrir a la simulacin de
fenmenos de espera generando valores de entrada y salida de acuerdo con los distintos
modelos existentes. Para realizar dicha simulacin es posible recurrir a determinadas
aplicaciones informticas especializadas en este tipo de clculos o hacer uso de
aplicaciones de uso general como las hojas de clculo. En el presente trabajo probamos
la idoneidad de dicha simulacin utilizando las funciones estadsticas propias de la
versin 2003 de la conocida aplicacin Microsoft Excel. Adems de comprobar el
funcionamiento de dichas funciones, se han programando mediante el uso de Visual
Basic para Aplicaciones (VBA) aquellas otras que son necesarias para tener recogidas
todas las posibilidades y que no son incorporadas por Excel, probando tambin que
cumplen todos los requisitos que son exigibles para este tipo de clculos.

XIII Jornadas de ASEPUMA

Juan J. Bernal Garca, Soledad M. Martnez Mara Dolores, Juan F. Snchez Garca

1. INTRODUCCIN
Junto con los resultados proporcionados por la Teora de Colas, en ocasiones, es
preciso recurrir a la simulacin de fenmenos de espera generando valores de entrada y
de salida de acuerdo con diferentes modelos que existen en la Teora. Para realizar dicha
simulacin se pueden usar aplicaciones especficas, o bien utilizar aplicaciones de uso
general como las hojas de clculo.

2. GENERACIN DE NMEROS PSEUDOALEATORIOS


2.1. Mtodos de generacin de nmeros pseudoaleatorios
Se necesita en primer lugar un procedimiento que genere valores aleatorios
uniformemente distribuidos entre 0 y 1. A tal fin, la hoja de clculo dispone de una
funcin que recibe el nombre de ALEATORIO(). Realmente, los nmeros generados no
son nmeros aleatorios, sino pseudoaleatorios pues no son debidos realmente al azar,
sino que proceden de clculos matemticos que tratan de imitar dicho azar.
Existen otros mtodos comnmente utilizados en la literatura (lvarez Madrigal,
Coss,

Escudero

Rubinstein),

que

tambin

sirven

para

generar

valores

pseudoaleatorios:
1. Mtodo de los cuadrados medios.
2. Tcnica de mitad del producto.
3. Mtodo del multiplicador constante.
4. Mtodo congruencial.
5. Mtodo congruencial aditivo.
6. Mtodo congruencial lineal.

2.2. Validacin de los nmeros pseudoaleatorios generados


Una vez que se han generado los valores pseudoaleatorios segn la distribucin
uniforme se debe comprobar que efectivamente estn uniformemente distribuidos, lo
que significa que son uniformes e independientes.
Para probar la uniformidad se aplica la prueba de Kolmogorov-Smirnov, la
prueba de la 2 y la prueba de los promedios; mientras que para probar la
independencia se utiliza el test de rachas y la prueba de poker.
2

XIII Jornadas de ASEPUMA

Aplicacin de la simulacin con hoja de clculo a la Teora de Colas

En las figuras 1 a 4 se muestran, para un nivel de confianza del 95%, las pruebas
de Kolmogorov-Smirnov, 2 , de rachas y de los promedios que se han realizado sobre
1000 valores simulados utilizando la funcin ALEATORIO() de Excel. Tras efectuar
diversas tiradas aleatorias comprobamos que las pruebas resultan satisfactorias en todos
los casos.

CLASE
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1
TOTAL

FRECUENCIA
81
106
96
96
110
107
99
84
107
114
1000

F.R.ACUM.
0,081
0,187
0,283
0,379
0,489
0,596
0,695
0,779
0,886
1

TERICA
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1

DIFERENCIA
0,019
0,013
0,017
0,021
0,011
0,004
0,005
0,021
0,014
0,000

TEST KOLMOGOROV-SMIRNOV
Diferencia mxima
0,021
Estimador Kolmogorov-Smirnov
D0,05;1000
0,043
NO SE RECHAZA LA HIPTESIS DE UNIFORMIDAD

Figura 1

CLASE
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1
TOTAL

FRECUENCIA
81
106
96
96
110
107
99
84
107
114
1000

F. TERICA
CHI CUADRADO
100
3,610
100
0,360
100
0,160
100
0,160
100
1,000
100
0,490
100
0,010
100
2,560
100
0,490
100
1,960
10,8

TEST CHI CUADRADO


CHI-CUADRADO
10,800
Estimador
2
0,05;9
16,919
NO SE RECHAZA LA HIPTESIS DE UNIFORMIDAD

Figura 2

TEST DE RACHAS
U
667
MEDIA
666,333
DESV.TPICA
13,321
Z
0,050
Z0,025
1,960
NO SE RECHAZA LA HIPTESIS DE UNIFORMIDAD

TEST DE LOS PROMEDIOS


MEDIA
0,513
Z
1,447
Z0,025
1,960
NO SE RECHAZA LA HIPTESIS DE UNIFORMIDAD

Figura 3

Figura 4

XIII Jornadas de ASEPUMA

Juan J. Bernal Garca, Soledad M. Martnez Mara Dolores, Juan F. Snchez Garca

3.

GENERACIN

DE

VARIABLES

ALEATORIAS

CON

DISTRIBUCIN NO UNIFORME
3.1. Mtodos de generacin
Existen diversas tcnicas para generar variables aleatorias cuya distribucin no
es uniforme.
3.1.1. Tcnica de la transformada inversa (figura 5).

Figura 5

Esta tcnica utiliza nmeros aleatorios uniformes para generar variables


aleatorias con una distribucin especfica. Los pasos a seguir son:
1. Decidir la funcin de densidad f (x) que se desea para la variable a generar.
2. Calcular la funcin acumulada de probabilidad F (x ) para la variable aleatoria
deseada.
3. Formular la ecuacin F ( x) = U i .
4. Resolver la ecuacin anterior, es decir, calcular F 1 (U i ) = x .

5. Generar los valores de la variable deseada.


La principal limitacin de este mtodo es que la funcin de densidad de la
distribucin debe ser fcilmente integrable.

XIII Jornadas de ASEPUMA

Aplicacin de la simulacin con hoja de clculo a la Teora de Colas

3.1.2. Tcnica grfica de la transformada inversa (figura 6).

Figura 6

Este mtodo se utiliza cuando las variables aleatorias no se comportan de forma


continua o no tienen una distribucin conocida. Los pasos a seguir son:
1. Generar un histograma que exprese las probabilidades deseadas en las
variables a generar.
2. Encontrar la probabilidad acumulada a partir del histograma.
3. Localizar algn U i en el intervalo [0,1] en el eje de ordenadas de la grfica de
probabilidad acumulada.
4. Proyectar hasta el polgono de la curva de probabilidad acumulada y despus
reflejar sobre el eje de coordenadas, encontrando el valor de una variable aleatoria con
la distribucin deseada. Si la variable aleatoria buscada es discreta, x tomar el valor de
la marca de clase correspondiente, y, si es continua, el valor se calcular mediante
interpolacin lineal.

3.1.3. Mtodo polar.


Esta tcnica se utiliza cuando la distribucin no es integrable en todos los
intervalos, como es el caso de la distribucin normal. Su razonamiento es que al
representar pares de coordenadas (Z1 , Z 2 ) normales estndar seleccionadas al azar de
una tabla, se obtiene un diagrama de dispersin con correlacin aproximada de cero, es
decir, los puntos representados estn distribuidos homogneamente en todos los
cuadrantes.

XIII Jornadas de ASEPUMA

Juan J. Bernal Garca, Soledad M. Martnez Mara Dolores, Juan F. Snchez Garca

3.2. Validacin de los valores generados


Para validar los valores simulados de una variable se utilizan la prueba de la 2
y la prueba de Kolmogorov-Smirnov con datos agrupados.

4. SIMULACIN MEDIANTE HOJA DE CLCULO


4.1. Funciones estadsticas: Distribuciones probabilsticas
Hasta hace algunos aos las funciones de tipo estadstico que incorporaban las
distintas aplicaciones de hoja de clculo eran muy limitadas, obligando al usuario a
programar aquellas funciones que necesitaba (Bernal Garca), o bien era preciso adquirir
programas complementarios como @RISK, Analyze-It, Crystal Ball y otros, que
incorporan funciones adicionales a la hoja de clculo.
As, en la ltima versin de la hoja de clculo Excel aparece una amplia serie de
funciones estadsticas relacionadas con las distribuciones probabilsticas. Con todas
estas funciones se pueden realizar simulaciones basadas en las distribuciones beta, F,
gamma, logartmico-normal, normal y t de Student, ya que para todas ellas existen
funciones inversas, las cuales a partir de la probabilidad acumulada y de los parmetros
propios de cada distribucin devuelven el valor que hace que se obtenga dicha
probabilidad.
El procedimiento para ello consiste en generar nmeros aleatorios de acuerdo
con la distribucin uniforme y a partir de dicho valor (que siempre ser mayor o igual
que cero y menor que 1) aplicar la correspondiente funcin inversa para obtener el valor
al que le corresponde la probabilidad obtenida aleatoriamente1.

4.2. Construccin de funciones en Excel mediante VBA


Dado que en determinadas simulaciones las variables a simular no siguen
ninguna de las distribuciones que incorporan las aplicaciones de hoja de clculo, se
debe proceder a su simulacin. Bsicamente, existen dos posibilidades:

Realizacin manual de los clculos necesarios en la propia hoja de clculo.

Por ejemplo, la funcin DISTR.NORM.INV(probabilidad, media, desviacin tpica) devuelve

el valor inverso de la distribucin acumulativa normal para la media y desviacin tpica especificadas,
siendo la probabilidad un valor pseudoaleatorio uniformemente distribuido entre 0 y1.

XIII Jornadas de ASEPUMA

Aplicacin de la simulacin con hoja de clculo a la Teora de Colas

Programacin de la funcin adecuada mediante VBA.

La primera de las tcnicas puede suponer el problema de que existan clculos


intermedios que es necesario realizar para obtener el valor final. En este caso, para cada
tirada aleatoria habra que recalcular la simulacin y guardarla mediante macros en una
tabla, en la cual se vera solamente el valor obtenido. Adicionalmente, en el caso de que
se necesitara efectuar otra simulacin mediante la misma distribucin de probabilidades
se deberan rehacer los clculos nuevamente. Por otra parte, esta posibilidad tiene como
ventaja que no precisa conocimiento alguno en programacin para poder efectuarla.
La segunda tcnica, que implica conocer programacin en Visual Basic para
Aplicaciones (VBA), plantea la ventaja de que mediante una funcin que se aade a la
hoja de clculo como cualquier otra funcin de las que trae incorporadas la propia
aplicacin, puede ser llamada tantas veces como sea necesario y en tantas celdas como
sea preciso simular sin ninguna limitacin. Adicionalmente, se puede proteger su
contenido para que no sea visible por el usuario de forma que ste slo tenga que
conocer la sintaxis de la funcin para su utilizacin. De esta forma, tambin, se evitan
manipulaciones que puedan arrojar resultados incorrectos.

4.3. Simulacin de la inversa de la distribucin de Poisson


Para poder determinar el nmero de llegadas que ocurren en una unidad de
tiempo se necesitara una funcin, que a partir de la probabilidad simulada mediante la
distribucin uniforme y, a partir de la tasa media de llegadas calcule el valor
correspondiente al nmero de llegadas que se han producido. La complicacin principal
consiste en que al tratarse de una funcin discreta los valores deben ser nmeros
enteros.
Dicha funcin no existe como tal en las aplicaciones de hoja de clculo, por lo
que se debe recurrir a tcnicas de simulacin para su clculo, y al ser una funcin no
integrable no se puede utilizar la tcnica de la transformada inversa. En la literatura
existen diversas opciones, de las cuales se ha seleccionado la propuesta por Escudero,
que ha sido incorporada siguiendo el organigrama siguiente:

XIII Jornadas de ASEPUMA

Juan J. Bernal Garca, Soledad M. Martnez Mara Dolores, Juan F. Snchez Garca

Figura 5

4.4. Simulacin de la inversa de la distribucin exponencial


En este caso el proceso es mucho ms sencillo ya que esta funcin no es discreta
y adems es fcil obtener el valor buscado a partir de la expresin de su funcin de
distribucin, utilizando la tcnica de la transformada inversa:

1
xi = ln U i

4.5. Simulacin de la inversa de la distribucin de Erlang


Esta funcin s se encuentra disponible entre las funciones que incorpora la
mayora de las aplicaciones de hoja de clculo. En el caso concreto de Microsoftr Excel,
existe la funcin DISTR.GAMMA.INV (probabilidad; alfa; beta), donde alfa y beta
son los parmetros de la distribucin. En este punto, se ha de recordar que la
distribucin de Erlang es un caso particular de la distribucin gamma, siendo alfa un
nmero entero positivo (que en la distribucin de Erlang recibe el nombre de parmetro
k).
Pese al hecho de que ya se dispone de dicha funcin, tambin se podra construir
a partir de los mtodos propuestos por Rubinstein, Jhnk, Wallace, Fishman, Cheng y
Tadikamalla.

XIII Jornadas de ASEPUMA

Aplicacin de la simulacin con hoja de clculo a la Teora de Colas

4.6. Simulacin de distribuciones no conocidas


En mltiples estudios puede ocurrir que los valores observados no se
corresponden con ninguna funcin de distribucin conocida. Este hecho no debe
impedir el efectuar la simulacin requerida para el estudio del sistema en el que se han
producido esas observaciones. Para efectuar este tipo de clculos ya no se puede utilizar
ninguna funcin estadstica propia de la hoja de clculo, ni tan siquiera una funcin
programada mediante VBA puesto que la cantidad de parmetros que se necesitara es
desconocida, ya que variara de unos sistemas a otros. Se debe poder generar valores de
acuerdo con la distribucin de frecuencias observadas, para lo cual se recurre a la
tcnica grfica de la transformada inversa.

4.7. Contraste de los valores simulados


Una vez que se han analizado los procedimientos para simular valores para las
distribuciones de frecuencias que se necesitan, se deben validar sus resultados.
SIMULACIN POISSON INVERSA
Mtodo: Laureano F. Escudero
lambda =
3,5

TOTAL

FRECUENCIA
1120
4260
7317
8702
7548
5321
3070
1586
705
253
75
35
8
40000

0
1
2
3
4
5
6
7
8
9
10
11
12
TOTALES

FRECUENCIA
SIMULADA
1120
4260
7317
8702
7548
5321
3070
1586
705
253
75
35
8
40000

0
1
2
3
4
5
6
7
8
9
10
11
12

SIMULACIN POISSON
10000
9000
8000
7000
6000
5000
4000
3000
2000
1000
0
0

POISSON SIMULADA

FRECUENCIA
TERICA
1208
4228
7398
8631
7552
5287
3084
1542
675
262
92
29
9
40000

TEST KOLMOGOROV-SMIRNOV
Diferencia mxima
Estimador Kolmogorov-Smirnov
D0,05;40000
NO SE RECHAZA LA HIPTESIS

F.REL.SIM.
ACUMULADA
0,02800
0,13450
0,31743
0,53498
0,72368
0,85670
0,93345
0,97310
0,99073
0,99705
0,99893
0,99980
1,00000

F.REL.TER.
ACUMULADA
0,03020
0,13589
0,32085
0,53663
0,72544
0,85761
0,93471
0,97326
0,99013
0,99669
0,99898
0,99971
0,99992

10

11

12

POISSON TERICA

DIFERENCIA
F.REL.ACUM.
0,00220
0,00139
0,00342
0,00166
0,00177
0,00091
0,00126
0,00016
0,00060
0,00036
0,00006
0,00009
0,00008

TEST CHI CUADRADO


0,003 CHI-CUADRADO
Estimador
2
0,007 0,05;12

CLCULOS
2

6,41060
0,24219
0,88686
0,58406
0,00212
0,21865
0,06355
1,25551
1,33333
0,30916
3,14130
1,24138
0,11111

15,800
21,026

NO SE RECHAZA LA HIPTESIS

Figura 6
XIII Jornadas de ASEPUMA

Juan J. Bernal Garca, Soledad M. Martnez Mara Dolores, Juan F. Snchez Garca

4.7.1. Inversa de la distribucin de Poisson


Para comprobar la validez de los mtodos de simulacin de la funcin Poisson,
se han realizado 40.000 tiradas aleatorias para cada uno de los mtodos analizados
(figura 6), y a continuacin se han aplicado las pruebas de Kolmogorov-Smirnov y de la
2. Se puede observar, en dicha figura, que no existe razn para rechazar la hiptesis de
que la frecuencia terica y la frecuencia simulada pertenecen a la misma distribucin.

4.7.2. Inversa de la distribucin exponencial


Dado el mtodo de clculo de la simulacin para la distribucin exponencial,
mediante la transformada inversa, no existe ninguna posibilidad de error, siempre y
cuando la generacin de nmeros aleatorios se corresponda efectivamente con una
distribucin uniforme, y es conveniente recordar que la generacin de nmeros
pseudoaleatorios utilizando la funcin propia de la hoja de clculo cumpla todos los
requisitos exigibles.
Como era previsible, tampoco existen diferencias entre las frecuencias simuladas
y las frecuencias tericas.

4.7.3. Inversa de la distribucin Erlang


No existen diferencias entre las frecuencias simuladas y las frecuencias tericas,
lo que revela que dicha funcin es vlida para realizar la simulacin de valores de
acuerdo con una distribucin gamma (y por extensin con una distribucin Erlang), por
lo que no se necesita recurrir a la programacin de ninguno de los algoritmos
relacionados en el apartado 4.5.

5. CONCLUSIONES
Podemos comprobar que la hoja de clculo Microsoft Excel, siendo una
herramienta de tipo ofimtico, se revela como una aplicacin que permite la simulacin
de todo tipo de distribuciones estadsticas. En particular, es posible efectuar la
simulacin de las funciones de distribucin propias de la Teora de Colas, cumpliendo
los parmetros obligados de rigor que se debe exigir a este tipo de clculos. Adems, la
utilizacin de su editor de Visual Basic para Aplicaciones (VBA) permite dotarla de
aquellas distribuciones de las que carece, utilizando para ello una programacin
orientada a objetos.
10

XIII Jornadas de ASEPUMA

Aplicacin de la simulacin con hoja de clculo a la Teora de Colas

6. REFERENCIAS BIBLIOGRFICAS

lvarez Madrigal, M. (1997). Curso virtual de Investigacin de Operaciones.


Instituto Tecnolgico y de Estudios Superiores de Monterrey. Campus Estado de
Mxico. http://webdia.cem.itesm.mx/ac/alvarez/acceso.html

Bernal Garca, J. J. (1990). Simulacin de un modelo real de circulacin de


documentos administrativos. Tesis doctoral. Universidad de Murcia.

Cheng R. C. H. (1978). Generating beta variates with non-integral shape


parameters, Communications of the Association for Computing Machinery, 21,
317-322.

Coss Bu, R. (1982). Simulacin. Un enfoque prctico. Limusa, Mxico D.F.

Escudero, L. F. (1973). La simulacin en la empresa. Ediciones Deusto, Bilbao.

Fishman, G. S. (1976). Sampling from the gamma distribution on a computer,


Communications of the Association for Computing Machinery, 19, 407-409.

Fishman, G. S. (1978). Principles of Discrete Event Simulation. John Wiley & Sons,
New York.

Jhnk, M. D. (1964). Erzeugung von Betraverteilten y Gammaverteilten


Zuffalszahlen, Metrika, 8, 5-15.

Rubinstein, R. Y. (1981). Simulation and the Monte Carlo Method. John Wiley &
Sons, New York.

Tadikamalla, P. R. (1978). Computer generation of gamma random variables,


Communications of the Association for Computing Machinery, 21, 419-422.

Tadikamalla, P. R. (1978). Computer generation of gamma random variables II,


Communications of the Association for Computing Machinery, 21, 925-928.

Wallace, N.D. (1974). Computer generation of gamma random variables with nonintegral shape parameters, Communications of the Association for Computing
Machinery, 17, 691-695.

XIII Jornadas de ASEPUMA

11

También podría gustarte