Está en la página 1de 32

Universidad Arturo Prat Ingeniera Industrial

Investigacin Operativa III


Vivian Segovia Barros
vivian.segovia@Gmail.com
Enero 2015

Unidad 2

Simulacin de Procesos en
Computador
Investigacin Operativa III
Universidad Arturo Prat Ingeniera Industrial

Unidad 2

Conceptos

Sistemas Conjunto de elementos interrelacionados entre si


que cumplen un objetivo. Es muy importante definir cual ser
el alcance de este (cuales son las fronteras) y qu
necesitamos.

Modelos Descripcin de sistemas. Pueden ser objetos a


escala,
ecuaciones
y
relaciones
matemticas
o
representaciones visuales entre otros.
Sistema

Propsito

Nivel de
detalle

Modelo

Frontera

Conceptos

Unidad 2

Modelos de Simulacin

Por lo general un modelo de simulacin entrega soluciones


numricas ms que analticas y se utiliza cuando se quiere
representar:

Sistemas complejos (con muchos componentes, reglas o conductas


complejas, y variadas interacciones).

Comportamiento dinmico.

Comportamiento estocstico.
Variables
controlables

Variables no
controlables

Modelo de
simulacin

Experimentacin e
interaccin

Resultados

-Descriptivos
-Que pasa si? Respuestas
-Optimizacin de procesos
-Prueba de hiptesis

Conceptos

Unidad 2

Actividades asociadas a la simulacin


Por lo general resulta difcil
separar estas tres grandes
actividades

Abstraer y representar
el sistema a estudiar

Modelar

Usar el modelo para


ver diferentes
escenarios o entender
el sistema

Experimentar

Computar

Reproducir el modelo
en un software
computacional

Conceptos

Unidad 2

Enfoques comunes de simulacin

Simulacin Discreta Representacin de un sistema como un set de


entidades que interactan entre si. Genera trazabilidad desde que entidad
entra hasta que sale del sistema.

Entidades discretas aquellas que cambian de estado cuando se lleva a cabo


una simulacin. La simulacin lleva un track de los cambios de estado por
entidad. Ej. personas, mquinas, vehculos, rdenes, pacientes.

Eventos discretos tiempos en los cuales las entidades cambian de estado. Ej.
clases comienzan a cierta hora, pacientes dados de alta a una hora especfica.

Simulacin basada en agentes Representa el sistema como un set de


agentes, ms complejo que la sim. Discreta.

Sistemas dinmicos Representa el sistema como un set de flujos y


niveles, se enfoca ms en la poblacin de entidades y los rangos en los
cuales se mueven de un lado a otro.

Conceptos

Unidad 2

Terminologa

Entidad (Entity) elemento individual de sistema cuyo


comportamiento es seguido (individualmente) a travs del tiempo
simulado. Ej. personas, mquinas, naves, etc.

Recursos (Resources) elemento individual de sistema que es necesario


para comenzar alguna actividad y es tratado como parte de un conjunto
de elementos (no nos interesa como se comporte cada uno). Ej. cajas,
mquinas, doctores, etc.

Clase (Class) un grupo permanente de entidades similares, se debe


preguntar qu tipo de entidad es, ej. aviones, camiones, trabajadores,
etc.

Atributos (Attributes) Informacin caracterstica de alguna entidad.


Define el nivel de clase y distingue entre individuos de la misma clase.
Personas en el banco clientes preferenciales y clientes espordicos.

Se define qu
corresponde
a cual tipo

Conceptos

Unidad 2

Terminologa

Evento (Event) Instante en el tiempo en donde un cambio de


estado ocurre.

Actividad (Activity) Operaciones y accione que son iniciadas


cuando un evento ocurre y tienen tiempo de duracin.

Proceso (Process) Secuencia cronolgica de eventos y actividades


relacionadas
Proceso
Actividad 1
Evento 1

Actividad 2

Evento 2

Actividad 3
Evento 3

Evento 4

Tiempo

El proceso de modelamiento de simulacin


Errores frecuentes

No entender el propsito del modelo y del estudio.

Generar modelos muy grandes y complejos (mantener simpleza)

Variabilidad de comportamientos no clara

Recoleccin de datos incorrecta.

No verificar ni validar modelo.

Mala interpretacin de resultados

Quienes utilicen los resultados no tengan confianza en el modelo

Resultados fuera de tiempo (plazo)

Unidad 2

El proceso de modelamiento de simulacin


Ejemplo de Cajero de banco

Estudio de la atencin de clientes por el cajero de un banco. Los


clientes llegan al banco, esperan por el servicio del cajero si es que
ste est ocupado, son atendidos y luego salen del sistema. Cuando
los clientes llegan al sistema y encuentran al cajero ocupado,
esperan en una cola al frente del cajero. (Para este ejercicio se
asume que el tiempo de llegada de un cliente y el tiempo de servicio
del cajero en un cliente son conocidos y mostrados en tabla).

El objetivo es simular manualmente el sistema antes descrito


para determinar el porcentaje del tiempo que el cajero est
desocupado y el tiempo promedio que un cliente est en el
banco.

Unidad 2

El proceso de modelamiento de simulacin

Unidad 2

Ejemplo de Cajero de banco

Tabla

N Cliente
1
2
3
4
5
6
7
8
9
10

Tiempos de Llegada
(Minutos)
3.2
10.9
13.2
14.8
17.7
19.8
21.5
26.3
32.1
36.6

Tiempo de Servicio
(Minutos)
3.8
3.5
4.2
3.1
2.4
4.3
2.7
2.1
2.5
3.4

Desarrollo
1.

Entendimiento del sistema y del


proceso a modelar.

2.

Es necesario trazar lo que hizo


cada uno de los clientes y
realizar clculos.

Desarrollar!!!

Pista = Determinar los diferentes


elementos y trabajar con tablas.

El proceso de modelamiento de simulacin


Formulacin del problema

Verificacin

3
1

Determinacin de objetivos
y planificacin general del
proyecto
Mapa
conceptual

Recopilacin
de datos

Construccin
de modelo

Validacin

Diseo y
realizacin de
experimentos

4
Anlisis e
interpretacin
de resultados

Unidad 2

Unidad 2.1

Modelamiento y variables
de entrada
Investigacin Operativa III
Universidad Arturo Prat Ingeniera Industrial

1.1 Formulacin del problema


Qu debo hacer?

Es el punto de partida de todo proyecto (relativo a la optimizacin


de procesos) y se debe tener una clara visin de lo que est
pasando en el momento y en donde.

Por lo general quienes se encuentran insertos en el sistema piden


ayuda acerca de cmo analizarlo y entregan informacin acerca de
este.

Quien (o quienes) trabaje en el proyecto puede ser interno o


externo.

Se debe tener en detalle el quehacer del sistema.

Unidad 2.1

1.2 Objetivos y planificacin


Qu debo hacer?

Objetivos Qu se quiere estudiar con el proyecto ( medir impacto en


demanda, cmo se comporta el sistema ante la llegada de nuevos clientes,
como se comporta el sistema ante la adquisicin de nueva tecnologa o
equipos, etc.)

Alcance del sistema Cul ser el sistema a estudiar y sus fronteras (qu
elementos quedarn fuera).

Definicin de elementos Entidades, eventos, actividades, procesos.

A partir de eso es posible generar un Modelo conceptual que permita


entender el sistema y su relaciones de manera interna y externa.

Unidad 2.1

1.3 Modelo conceptual


Qu es?

Modelo independiente de la implementacin en software.

Se compone de:

Objetivos (se pueden utilizar tcnicas para estructurar problemas,


mapas cognitivos, etc.)

Entras y salidas

Contenidos:

Entidades a estudiar

Nivel de detalle determinado

Supuestos

Simplificaciones

Requerimientos de datos

Unidad 2.1

1.3 Modelo conceptual


Para qu se usa

Se usa para poder comunicar la estructura que tendr nuestro


modelo simulado (modeladores, clientes, expertos software, etc)

Por lo general pueden ser de variados tipos:

Textual Lista, tablas, descripciones.

Pictrico uso de diagramas

Diagramas de ciclo de actividad se enfoca en los cambios de estado


de las entidades

Diagramas de flujo se enfoca en la secuencia y estructura de las


actividades y flujos.

Mixtos.

Unidad 2.1

1.3 Modelo conceptual


Diagrama de actividad de ciclo (ACD)

Diagrama simple compuesto de:


Estado
Activo

Estado muerto
(inactivo)

- Estado en donde una entidad realiza alguna


actividad
- Su duracin puede ser determinada con
anticipacin
- Puede generarse en cooperacin con otras
entidades o requerir recursos.
- Tambin es llamado ACTIVIDAD
- Estado en donde una entidad espera a que
pase algo
- Su duracin no se puede determinar con
anticipacin
- No requiere cooperacin con otras entidades o
recursos
- Tambin es llamado COLA

Unidad 2.1

1.3 Modelo conceptual

Unidad 2.1

Diagrama de actividad de ciclo (ACD)

Ejemplo

Personal operativo

Reprogramar

Reparar
OK
Personal
mantenimiento

Deteni
do

Operando

Personal operativo

En
espera
ser
usado

1.3 Modelo conceptual


Ejemplo

Venta de entradas a obra de teatro.

El personal del Teatro Municipal atiende 2 tipos de compradores:

Comprador presencial, que llega a boletera, se ubica en la fila para


ser atendido y luego que llega su turno y compra la entrada, se retira
del lugar.

Comprador telefnico, que llama al fono servicio, espera ser


atendido, es atendido por uno de los encargados y luego cuelga.

General un modelo conceptual del sistema, reconociendo los


elementos vistos en clase anterior (entidad, recursos, clase,
atributos, etc.).

Unidad 2.1

1.4 Recopilacin de datos


Importante

Es necesario que la simulacin contemple comportamientos estocsticos


para reflejar de manera ms exacta la realidad.

Tener claros los conceptos de nmeros aleatorios y variables


aleatorias.

Recordatorio

Los nmeros aleatorios son aquellos elegidos al azar. Es posible generarlos


de manera pura (dados, tmbolas) o mediante algoritmos que aseguren
(hasta cierto punto) que los nmeros sean aleatorios (pseudoaleatorios).
Deben cumplir con las condiciones de: Uniformidad (igual probabilidad que
salga cualquier nmero e independencia (Que ningn nmero dependa del
valor anterior)

Las variables aleatorias son funciones que asignan nmeros aleatorios a


eventos de un espacio de prueba. Los valores que toman estas variables
utilizan la probabilidad.

Unidad 2.1

1.4 Recopilacin de datos


Enfoques para recopilar datos

Para variables de entrada Se debe tener datos suficientes para


poder alimentar la simulacin. Del modelo conceptual, es posible
identificar qu datos necesitamos. Tambin se debe definir en qu
periodos se realizar la toma de datos (das, semanas, meses, horarios
en particular, etc.) ejemplos: Llegada de clientes, tiempos de servicio o
de actividades. Con estos datos se replica lo que pasa en el sistema
real.

Para variables de salida y otros datos intermedios Datos


referenciales para poder verificar y comparar el comportamiento de la
simulacin con lo que ocurre realmente. Ejemplos: largo de colas,
clientes atendidos, clientes no atendidos, etc. (A utilizar en paso 3).

Unidad 2.1

1.4 Recopilacin de datos


Anlisis de datos

Histogramas Para entender de manera general comportamiento

Estadstica Descriptiva Promedio, desviacin estndar, mnimo,


mximo, rango, etc.

Correlacin de datos de entrada si existe dependencia entre


datos.

Comportamientos dependientes del tiempo si se verifica

Unidad 2.1

1.4 Recopilacin de datos


Datos de entrada ajustados a Distribuciones de Probabilidad

Las distribuciones de probabilidad son representaciones del


comportamiento variable que tiene una poblacin especfica.

Se utilizan para asegurar que la variabilidad de los eventos y


actividades presentes en la vida real, se vea reflejada en el
modelo a simular.

Algunas situaciones o eventos tienen comportamientos


relativamente parecidos entre ellos por lo que las distribuciones
que suelen ocuparse se repiten segn el tipo de evento:

Llegadas de entidades Dist. Exponencial

Servicio o actividad automatizada Dist. Normal o Lognormal

Tiempos entre fallas o espera Dist. Weibull

Unidad 2.1

Distribuciones de Probabilidad
Algunos Tipos

Unidad 2.1

Distribuciones de Probabilidad

Unidad 2.1

Algunos Tipos

Formulacin matemtica no es parte


del curso, sin embargo es bueno
recordar estos trminos estadsticos.

Distribuciones de Probabilidad

Unidad 2.1

Grfico de datos y distribuciones


Funcin de densidad de probabilidad
0.32

0.28

0.24

f(x)

0.2

0.16

0.12

0.08

0.04

0
8E-4

0.0012

0.0016

0.002

0.0024

0.0028

0.0032

0.0036

0.004

0.0044

0.0048

x
Histograma

Log-Logistic

Lognormal

Pearson 5 (3P)

0.0052

0.0056

0.006

0.0064

Distribuciones de Probabilidad
Cmo s cual distribucin es la ms idnea?

Mediante una serie de pruebas estadsticas que aseguran la bondad


de ajuste (goodness of fit tests).

Los ms utilizados son: Kolmogorov-Smirnov (K-S), Anderson Darling


(A-D) y Chi cuadrado. Tambin se utilizan mtodos grficos para
visualizar que tan cercano a los datos es la distribucin elegida (PP
plot, QQ plot)

Existen software especializados que permiten determinar las


diferentes distribuciones junto con los respectivas pruebas de
ajuste.

Algunos software: Statfit, Easyfit, SPSS (funciona bien para las


distribuciones ms comunes),R y los complementos de Excel @risk y
Crystal Ball, entre muchos otros.

Unidad 2.1

Distribuciones de Probabilidad

Unidad 2.1

Cmo s cual distribucin es la ms idnea?

Tests del ejemplo : ..\..\..\cddd.html

PP plot y QQ plot
Probabilidad-Probabilidad
Cuantil-Cuantil

0.0068
0.0064

0.9

0.006

0.8

0.0056
0.0052

0.7
0.0048
0.0044

Cuantil (Modelo)

0.6

0.5

0.4

0.004
0.0036
0.0032
0.0028

0.3

0.0024
0.002

0.2
0.0016

0.1

0.0012
8E-4

8E-4

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

0.0012

0.0016

0.002

0.0024

0.0028

1
Log-Logistic

Lognormal

Pearson 5 (3P)

0.0036

0.004

0.0044

P (Emprico)
Log-Logistic

0.0032

Lognormal (3P)

Pearson 5 (3P)

0.0048

0.0052

0.0056

0.006

0.0064

0.0068

1.4 Recopilacin de datos


Aspectos a considerar

Algunas distribuciones tericas poseen lmites infinitos (exponencial,


gamma, weibull, lognormal, etc.) pero en la prctica existen lmites que
el modelo debe reflejar. (Tiempos para preparar una comida no pueden
ser menor de 30 segundos, es muy poco probable que un partido de
futbol dure ms de 3 horas).

Qu pasa si no tengo disponibilidad de datos Se deben estimar estos


datos, utilizando datos de sistemas similares, opinin experta o tomando
distribuciones tericas que asimilen en alguna medida el
comportamiento del sistema (Uniforme, triangular, beta, gamma).

Realizar anlisis de sensibilidad.

Unidad 2

1.4 Recopilacin de datos


Aspectos a considerar

Siempre que sea posible utilizar distribuciones tericas en vez de


promedios.

La exactitud del modelo depender de qu tan ajustados estn las


distribuciones respecto de los datos reales.

Los test de ajuste proveen una gua para aceptar o rechazar


distribuciones y se debe tener cuidado que estos tests suelen
rechazarlas cuando la muestra es muy grande y aceptarlas cuando la
muestra es pequea. Es bueno complementar con los grficos.

Unidad 2.1

1.4 Recopilacin de datos


Aspectos a considerar

El hecho que existan datos no significa que sea utilizable.

Se debe entender e interpretar los datos recopilados

Estos datos son muestras de una poblacin por lo tanto el anlisis


estadstico es primordial (no olvidar esto).

Recordar BASURA ENTRANTE =BASURA SALIENTE

Complementario Tutorial sobre cmo seleccionar distribuciones de


probabilidad para datos de entrada (Law, proceedings of the 2012 Winter
simulation conference). Se encuentra en ingls.
http://informs-sim.org/wsc12papers/includes/files/inv225.pdf

Unidad 2.1