Simula ión on hojas de ál ulo de ódigo
abierto: OpenO e.org y Gnumeri
Sán hez Gar ía,Juan Fran is o (jf.san hezup t.es)
Dpto. Métodos Cuantitativos e Informáti os
Universidad Polité ni a de Cartagena
RESUMEN
Unadelasposiblesalternativaspararealizarté ni asdesimula ióndentrodelámbito
de la investiga ión es utilizar una apli a ión de hoja de ál ulo, y ha er uso de las fun-
iones propias de las que dispone di ha apli a ión. Evidentemente, existen mu has otras
apli a iones espe ializadas en tareas de simula ión pero lahoja de ál ulopresenta la a-
ra terísti a desu fá ildisposi iónen ualquier organiza ión (yaseaéstalaadministra ión
públi a o unaempresa) unidoasu bajo osteque enalgunos asos on retospuede llegar
a sernulopor existir apli a ionesde tipo gratuitoyde ódigoabierto.
En estetrabajosevaarealizar lavalida ión delas fun ionesquelashojasde ál ulo
in orporanparalagenera ióndenúmerospseudoaleatorios,partevitalde ualquierté ni a
de simula ión, y se hará prestando espe ial aten ión a las hojas de ál ulo de ódigo
abierto, tomando omo exponente deeste tipode softwarelas dosmásdifundidaspara el
sistemaoperativo Windows:OpenO e.org yGnumeri .
Palabras lave: Simula ión, hojade ál ulo, númerospseudoaleatorios
Clasi a ión JEL (Journal E onomi Literature): C15, C88
Área temáti a: Informáti a apli ada a losMétodosCuantitativos
1. INTRODUCCIÓN
Lasté ni as de simula ión obranespe ial importan ia uando esne esario re-
produ ir el fun ionamiento de un determinado sistema. En o asiones, es su iente
on poder realizar ál ulosnales sobre el fun ionamiento del sistema, obteniéndo-
se valores medios. Sin embargo, no siempre basta on di hos ál ulos sino que es
onveniente ver las posibles varia iones que pueden presentarse on respe to a los
valores medios al ulados. Esen este puntodonde tienen una vital importan ialas
té ni as de simula ión,las uales se han visto poten iadas a partir de la apari ión
de losequipos informáti osy del software ade uado.
Dentrodelsoftwarepropioparaefe tuarlasimula iónexistendiversospaquetes
quepermitenllevara aboestasté ni as.Sinembargo,ave es,espreferible onstruir
los modelos de simula ión a partir de apli a iones estándar omo son las hojas
de ál ulo de forma que se pueda de idir ómo han de obtenerse las simula iones
y además permitan ver todos los ál ulos intermedios ne esarios hasta llegar al
resultado nal. Entre todas las apli a iones existentes de hoja de ál ulo la más
utilizadaesMi rosoft
r
Ex eldebidoasubuenfun ionamientoyasudisponibilidad asi universal para todotipode usuarios, quele ha onvertido prá ti amenteen unestándar dentro de este tipo de apli a iones. Este he ho, adi ionalmente, ha e que
sea posible portar un modelo efe tuado on esta apli a ión a otras apli a iones
similares on bastantes garantías de éxito.
Junto al software omer ial representado por Ex el, y otras apli a iones omo
Lotus 1-2-3 de Lotus Software (propiedadde IBM) y QuattroPro de Corel Corpo-
rationexisten solu iones de ódigoabierto, entendidoeste software omoaquel que
esde libredistribu iónyademáspermitelamodi a iónyredistribu ióndel ódigo
fuente. En este último tipo de software se sitúan solu iones omo OpenO e.org
(OOo)y Gnumeri , entre otras.
2. NÚMEROS PSEUDOALEATORIOS
2.1. Métodos de genera ión de números pseudoaleatorios
Lasimula iónde valoresaleatoriosdistribuidosde a uerdo on ualquierdistri-
bu ión estadísti a se basan en la genera ión, en primer lugar, de valores aleatorios
uniformemente distribuidos entre 0 y 1. Realmente, los números generados no son
númerosaleatorios, sino pseudoaleatoriospues nosondebidosalazar, sino quepro-
eden de ál ulos matemáti osque tratan de imitar alazar.
Existen diversos métodos omúnmenteutilizadosen laliteratura, omolospro-
puestosporÁlvarezMadrigal[1℄, Coss [2℄,Es udero [3℄yRubinstein [7℄, paragene-
ra ión de valorespseudoaleatorios:
Método de los uadrados medios.
Té ni a de mitad del produ to.
Método del multipli ador onstante.
Método ongruen ial.
Método ongruen ialaditivo.
Método ongruen iallineal.
2.2. Valida ión de los números pseudoaleatorios generados
Una vez quese han generado losvalorespseudoaleatorios según ladistribu ión
uniformesedebe omprobarqueefe tivamenteestánuniformementedistribuidos,lo
que signi a que son uniformes e independientes. En este sentido, existen pruebas
espe í as para omprobar si una se uen ia de números presenta las propiedades
estadísti as quesepodríaesperar sifuesen debidosalazar. Unade estaspruebas es
la Diehard Battery of Tests of Randomness, desarrollada por el profesor George
Marsaglia[5℄ en elaño 1995.
Para probar la uniformidad se apli a la prueba de Kolmogorov-Smirnov, la
pruebade la
χ 2
y la pruebade lospromedios.Pruebade Kolmogorov-Smirnov. Enesta prueba seestima laprobabilidad de
queuna distribu ión de datos sea igual auna distribu ión ono ida mediante
la ompara iónde lasfun iones de probabilidad a umulada:
1. Se determina la fun ión de distribu ión a umulada que se supone que
siguen losvaloresgenerados.
2. Se al ulalafun ión de distribu ióna umulada de losvaloresgenerados.
3. Se obtienela máximadiferen ia entre ambas fun iones de distribu ión.
4. Se determina el valormáximo permitidopara la diferen iaa partirde la
tabla de la pruebade Kolmogorov-Smirnov.
5. Se determinasiexiste ono, paraun determinadoniveldesigni a ión
α
,diferen ia entre ambas fun iones de probabilidad.
Prueba de la
χ 2
. Para esta prueba sene esita un mínimo de 50 valores gene-rados.
1. Se organizanlosvalores obtenidosen un histograma( on
n
lases, dondeel número de elementos esperados para ada lase debe ser al menos de
5).
2. Se al ulaelnúmerode datosquedeberíahaberen ada lasesuponiendo
una distribu ión uniforme teóri a.
3. Se al ula el estadísti o
χ 2 0
on las diferen ias existentes entre las anti- dades de valores generados (O i
) y de valores ideales(E i
) para ada lasen
del histograma de a uerdo on la siguienteexpresión.χ 2 0 =
n
X
i=1
(O i − E i ) 2 E i
4. Se estable e el nivel máximo de varia ión del estadísti o
χ 2 0
paran − 1
gradosde libertad on nivel de signi a ión
α
.5. Se ompara el estadísti o al ulado on el máximo permitido y si el pri-
mero es menor, no hay eviden ia para armar que losvalores generados
noestán uniformementedistribuidos.
Prueba de los promedios. Lafun ión de densidad uniformese dene omo:
f (x) =
1 0 ≤ x ≤ 1 0 0 > x > 1
Enestaexpresión,
x
esunavariablealeatoriauniformedenidaen elintervalo[0, 1]
. La distribu ión a umuladaF (x)
de una variablex
aleatoria uniforme-mentedistribuida se puedeobtener omo:
F (x) = Z x
0
1dx = x
El valoresperado y la varianzade di havariable están denidos por:
E(x) = Z x
0
xdx = 1 2 var(x) =
Z 1
0
x − 1
2
2
dx = 1 12
Con estosparámetrossepuedeplantearun ontraste uya hipótesisnulasería
que lamedia debeser
1/2
, siendo elestadísti oZ
el siguiente:Z 0 = (x − 1/2) √ N p1/12
Si
|Z 0 | < Z α/2
no se puede re hazar la hipótesis de que los números pseudo-aleatoriosgenerados provienen de una distribu iónuniforme on media
1/2
.Para probar laindependen ia se utilizael test de ra has.
Test de ra has (The-Up-and-Down-Test) [6℄.
1. Lamagnitudde adaelementodelalistaes omparado onsuprede esor
yseleasignaunvalor
+
ounvalor−
segúnqueésteseainferiorosuperioral elementoa tual.
2. Se uenta el número de ve es que se produ e un ambiode valor de
+
a−
ó vi eversa (U
).3. Elnúmeroobtenidoanteriormentesedistribuyedea uerdo aunanormal
on media y desvia ión típi a ono idas:
2N − 1
3
yr 16N − 29 90
4. Levene [4℄demostró queel test de hipótesis a apli ares:
−Z α/2 ≤ U − (2N − 1)/3
p(16N − 29)/90 ≤ Z α/2 .
2.3. Hojas de ál ulo
Para lagenera ión de valores pseudoaleatorios uniformementedistribuidos, las
hojas de ál ulo disponen de fun iones omo ALEATORIO() en Ex el y OpenO-
e.org,y RAND() en Gnumeri .
Antes de poder utilizar estos números generados en té ni as de simula ión es
pre iso omprobar,previamente, silosvaloresobtenidos umplen losrequisitos exi-
gibles de uniformidad e independen ia. Para poder omprobar estos extremos se
ha pro edidoa la genera ión simultánea de 50.000 valores y a ontinua ión se han
efe tuadolas orrespondientes pruebas estadísti as,obteniéndose losresultados que
se muestran en las guras 1, 2 y 3. En todos los asos los asos los resultados han
sido satisfa torios.
2.3.1. Mi rosoft Ex el
La experien ia de Mi rosoft en software de hoja de ál ulo data del año 1982,
uandolanzósuprimeraapli a ión:Multiplan,quenollegóatenerdemasiadoéxito.
La primeraapari iónde Ex el en elmer ado seprodujoen el año1985, on Ma in-
tosh, y la primera apari iónen el mer ado para el sistema Windows se produjoen
el año 1987, on Ex el 2.0. Ex el 5.0 salió en el año 1994 y fue la primera versión
en in orporar VBA(Visual Basi para Apli a iones).Ex el 2003(Ex el 11)está en
el mer ado desde 2003.
2.3.2. OpenO e.org Cal
OpenO e.org(OOo) esuna suite informáti adesarrolladaapartir del ódigo
fuente de StarO e liberado por Sun Mi rosystems en julio de 2000. A suvez Sun
había adquirido StarO e tras su ompra a StarDivision en el año 1999. A tual-
mente, la última versión nal disponible es la 2.4.0 y está en fase de desarrollo la
versión3.0.Algunasde lasprin ipales ara terísti asdeestaapli a iónsonladispo-
nibilidadde su ódigo fuente, lale turayes ritura de heros de Mi rosoftO e y
lainterfaz similar onlaversión2003de di haapli a ión.Porúltimo, abedesta ar
que maneja elformato abiertode heros ODF(Open Do ument Format).Lahoja
de ál uloquein orporalasuite OpenO e.orgre ibeelnombre deOpenO e.org
Cal .
2.3.3. Gnumeri
Gnumeri esuna hoja de ál ulolibre queformapartedelentorno de es ritorio
GNOME, propio de sistemas operativos de tipo Unix basados en la te nología X
Window. Al igual que OpenO e.org Cal es apaz de leer y es ribir heros XLS
de Ex el.
Figura 1:Mi rosoft Ex el: Pruebas de uniformidadeindependen ia
2.4. Tiradas de simula ión
Para omprobar la exa titud de los ál ulos mostrados se han realizado 100
tiradas de simula ión y se han anotado, utilizando la programa ión de s ripts que
permiten las apli a iones estudiadas (Mi rosoft VBA y OpenO e.org Basi ), los
valores de losestadísti os al ulados en ada una de lastiradas, on eln de poder
omprobarsi en algúnmomentosellega a re hazar algunade lashipótesis plantea-
das.
Figura 2:OpenO e.org Cal :Pruebas de uniformidade independen ia
Con OpenO e.org Cal , las pruebas de la
χ 2
y de los promedios re hazan lahipótesis de uniformidaden 3 asos,mientras que eltest de ra has re haza lahipó-
tesis de independen ia en 2 asos y el de Kolmogorov-Smirnov re haza la hipótesis
de uniformidaden1 aso.Efe tuando elmismoanálisis onEx el, eltestquepeores
resultadosarrojaeseldelospromediosyaqueen 11o asionessere hazalahipótesis
de uniformidad. El resto de test tienen una probabilidad de re hazo entre el 5 y el
6%.
Figura3:Gnumeri :Pruebas de uniformidade independen ia
3. CONCLUSIONES
La utiliza ión de software de ódigo abierto se presenta omo una alternati-
va para realizar todo tipo de simula iones, obteniendo resultados igual de válidos
que on una apli a ión omer ial omo puede ser Mi rosoft Ex el. La genera ión
de númerospseudoaleatorios mediantelasfun ionesque in orporan OpenO e.org
Cal y Gnumeri propor iona valores uniformes e independientes que pueden ser
apli adosen ualquier té ni ade simula ión.
El trabajo aquí presentado puede y debería ser omplementado utilizando los
trabajos de Marsaglia, así omo la nueva versión de OpenO e.org Cal , que se
en uentra en fase de desarrolloen elmomento de realizarse el mismo.
REFERENCIAS BIBLIOGRÁFICAS
[1℄ ALVAREZ MADRIGAL, M. (1997). Curso virtual de Investiga ión de Opera-
iones. Instituto Te nológi o y de Estudios Superiores de Monterrey. Campus
Estado de Méxi o.
http://webdia. em.itesm.mx/a /al vare z/a es o.ht ml
[2℄ COSS BU, R. (1982).Simula ión. Un enfoque prá ti o. Limusa, Méxi oD.F.
[3℄ ESCUDERO, L. F. (1973). La simula ión en la empresa. Edi iones Deusto,
Bilbao.
[4℄ LEVENE, M. (1952). On the power fun tion of tests of randomness based on
runs up and down. Annals of Mathemati al Statisti s, Vol.23, pp. 34-56.
[5℄ MARSAGLIA, G. (1995). The Marsaglia Random Number
CDROM in luding the Diehard Battery of Tests of Randomness.
http://www.stat.fsu.edu/pub/ dieh ard/
[6℄ NAYLOR,T. ET. AL.(1966). Computersimulation te hniques. John Wiley&
Sons, New York.
[7℄ RUBINSTEIN, R. Y. (1981). Simulation and the Monte Carlo Method. John
Wiley & Sons,New York.