Introducción a la Simulación
de Eventos Discretos
José Daniel García Sánchez
Grupo de Arquitectura Comunicaciones y Sistemas
Universidad Carlos III de Madrid
Contenido




Introducción a la Simulación.
Pasos en la simulación.
Algunas consideraciones interesantes.
Para saber más.
Formas de estudiar un sistema


Experimentar con el sistema real
Experimentar con un modelo del
sistema.


Usando un modelo físico.
Usando un modelo matemático.


Solución analítica.
Simulación.
Tipos de simulación (I)

Estática


No tiene en cuenta el tiempo (ej.
simulaciones de Monte Carlo).
Dinámica

SI tienen en cuenta la evolución de un
sistema a lo largo del tiempo.
Tipos de simulación (II)

Determinista



No interviene ninguna variable aleatoria.
Entradas + Relaciones = Salidas.
Estocástica


Alguna entrada modelada como variable
aleatoria.
Algún componente basado en variable
aleatoria.
Simulación determinista
versus simulación estocástica


Un sistema modelado como una red de
colas debe simularse como un modelo
estocástico.
La salida de una simulación estocástica
es una muestra de una variable
aleatoria y debe tratarse como tal.
Tipos de simulación (III)

Simulación de sistemas continuos


Las variables de estado evolucionan de
forma continua con respecto al tiempo (ej.
simulación de sistemas físicos).
Simulación de sistemas discretos

Las variables de estado cambian de valor
en momentos instantáneos de tiempo.
Tipos de simulación (IV)

Simulación de tiempo continuo



Utilización de variables continuas.
Suelen modelarse usando ecuaciones
diferenciales.
Simulación de tiempo discreto (o
simulación de eventos discretos)

Las variables cambian en un conjunto
numerable de puntos en el tiempo.
¿Qué tipo de simulación nos
interesa?




Dinámica.
Estocástica.
Sistemas discretos.
Tiempo discreto.
Simulación de eventos discretos
Pasos en la simulación






Modelado del sistema real.
Construcción del simulador.  Omnet
Validación del simulador.
Diseño de los experimentos.
Simulación.
Análisis de resultados.
Modelado del sistema real



Modelar los datos de entrada.
Modelar el sistema y sus parámetros.
Estimación de distribuciones:




Histograma.
Cuantiles.
Chi-cuadrado
Kolmogorov-Smirnof
Estimación de distribuciones

Pero seamos prácticos:


En muchos casos alguien ha escrito un
artículo en el que ha modelado la
distribución que yo busco.
En otros casos alguien ha hecho una
simulación parecida y es buena idea usar
las mismas distribuciones.
Construcción del simulador

¿Seleccionar herramienta o escribir un
programa?

¿Qué limitaciones puedo tener?

¿Por qué he elegido Omnet++?
Validación del simulador


Fijar la variables aleatorias a valores
constantes.
Si es posible comparar con algún
sistema existente.
Diseño de experimentos

Duración de cada ejecución.

Período de calentamiento del sistema.

Cálculo del número de ejecuciones.
Análisis de resultados


Determinar medidas de rendimiento
(variable aleatoria).
Una única configuración.


Utilización de intervalos de confianza.
Comparación de configuraciones.

Test de hipótesis (t-student, ANOVA,…).
El peligro de sustituir una
distribución por su media




1 Servidor.
El tiempo entre llegadas tiene una
distribución exponencial con media de 1
segundo.
El tiempo de servicio tiene una distribución
exponencial de 0.99 segundos.
¿Cuál es el tiempo medio que una
petición permanece en la cola?
Solución


0  Has picado.
Se puede demostrar analíticamente
para este caso que el tiempo medio en
cola es de 98.01 segundos.
Y por último


En internet hay pocos procesos de
Poisson.
Wide area traffic: the failure of
Poisson Modeling. Paxson y Floyd.
IEEE/ACM Transactions on Networking,
3(3):226-244, junio 1995.
Todo lo que siempre quise saber
sobre simulación y nunca me atreví a
preguntar



Simulation Modeling
and Analysis
3ª edición.
Law y Kelton
Todo la estadística que siempre
consideré inútil y que debí estudiar



Probability and
Statistics with
Reliability, Queuing
and Computer
Science Applications.
2ª edición.
Trivedi.
Descargar

Introducción a la simulación de eventos discretos