simulacion uam
Post on 16-Apr-2017
787 Views
Preview:
TRANSCRIPT
Simulación
PhD(c) Jorge a. Restrepo M.
En esta presentación
1. Introducción a la simulación
2. Generación de números aleatorios
3. Simulación con hojas de cálculo
4. Identificación de variables
5. Teoría de colas
6. Colas en serie y teoría de Redes
7. Revisión de programas de simulación
8. Introducción a Promodel
9. Modelos avanzados de simulación
Simulación
1. Introducción a la simulación
Conceptos básicos
¿Qué es la simulación?
Representación analítica de
sistemas apoyada en
herramientas matemáticas y
computacionales que permiten
evaluar el impacto de cambios en
diferentes variables así como la
elección de los recursos y óptimos
para el proceso analizado.
Definiciones
Sistema
Conjunto de elementos relacionados total o parcialmente entre si
y cuyos elementos pueden depender de sí mismos y de otros,
tanto en el presente como en el pasado.
Puede estar abierto o cerrado
Sistemas deterministas o estocásticos.
Estático o dinámico
Variable
Representación de un conjunto de datos
Variables independientes o dependientes
Variables endógenas y exógenas
Eventos
Discretos o Continuos
¿Para qué modelar?
Entendimiento
Aprendizaje
Mejoramiento
Optimización
Toma de decisiones
Aplicaciones de la simulación
Mediante técnicas de simulación es posible desarrollar de
manera teórica casos relacionados con:
Producción
Logística
Distribución
Servicio al cliente
Construcción
Militar
Salud
Economía y Finanzas
Y muchos otros campos
¿Qué se necesita para simular?
• Técnicasanalíticas
• Programasespecializados
• ¿Qué pasa sí?
• Identificaciónde variables involucradas
• Identificacióndel proceso
Problema Muestreo
ModelaciónAplicación de herramientasde ingeniería
Elementos de la simulación
Proceso (Flujograma)
Estados: Definir estados: número de clientes/sucesos en el sistema
Identificar las transiciones de los estados.
Identificar los eventos de llegadas y salidas del sistema
Caracterizar las variables del sistema (entradas, tiempos de funcionamiento, salidas, etc.)
Generación de eventos aleatorios
Reloj de Simulación: paso del tiempo (delimitado).
Definir condiciones especiales en el modelo: paros, mantenimientos, alertas, turnos, etc.
Pasos para una campaña de
simulación
Análisis de la
situación
Recolección
de datos
Experimentación
Análisis de
resultados
Documentación
Implementación¿Es válido?
Construcción
del modelo
¿Más
experimentos?¿Representación
real?
Modificación del
modelo?
Inicio
Fin
S
N
S
N
S
N
S
N
¿Cuándo modelar ?
Cuándo NO
El problema se puede resolver fácilmente de manera analítica
Demasiado costosa la simulación
No se tienen datos reales de las observaciones o están incompletas
La situación actual cambia con el tiempo y no podemos proyectarla
Cuándo SI
Todos los demás casos
Métodos para la simulación
Métodos analíticos: Según el tamaño y complejidad del proceso, es posible utilizar sencillos desarrollos matemáticos para resolver un problema de simulación. Entre ellas encontramos:
Teoría de Colas
Teoría de Redes
Sistemas Dinámicos
Algoritmos de mayor elaboración
Métodos computacionales: Cuando un sistema es relativamente grande o contiene una serie de excepciones en las variables, se vuelve compleja su resolución analítica y por tanto se hace indispensable la utilización de un programa especializado.
En general todo lenguaje y programa que permita generar números aleatorios Lenguajes: C, Fortran, Pascal, Basic, Siman, Visual Slam, SimScript, etc.
Hojas de cálculo en general
Programas especializados (@Risk; Risk Simulator)
Simulación
2. Generación de números
aleatorios
Introducción
Los números aleatorios son un ingrediente básico para simular casi cualquier sistema discreto. La gran mayoría de programas contienen una subrutina de generación que facilita su utilización.
Si se trata de un lenguaje de programación, es necesario generar un número aleatorio y de estos partir para la generación de variables aleatorias.
A continuación se explican las técnicas básicas para la generación de números aleatorios y posteriormente técnicas para la generación de variables aleatorias a partir de estos números
Propiedades de los números
aleatorios
Toda serie de números aleatorios R1, R2, … Rn, debe
cumplir con dos propiedades fundamentales,
Uniformidad e Independencia. Esto a su vez significa
que:
Sí se grafican los números aleatorios en el intervalo [0,1] y este
es dividido a su vez en n clases ó sub intervalos de igual
magnitud, el número esperado de observaciones en cada
intervalo es de N/n donde N es el número total de
observaciones.
La probabilidad de observar un valor en un intervalo particular es
independiente del valor inmediatamente anterior.
Generación de números
pseudo-aleatorios
Cuando hablamos de Pseudo generar, significa que esta
generación es falsa por naturaleza.
Siempre que se utiliza una técnica para generar
números aleatorios, significa que existe una ecuación o
fórmula que la permite;por tanto es pronosticable de
alguna manera (ejemplo, revisar los números decimales
de PI).
Para evitar inconvenientes, se acude a generaciones
computacionales que evaden estos problemas, no
obstante, se analiza solo un método matemático que a
su vez tiene dos composiciones.
Técnica de congruencia lineal
Este método propuesto inicialmente por Lehmer (1951) produce una secuencia de enteros X1, X2,… entre 0 y m-1 de acuerdo a la siguiente relación:
El valor inicial X0, es llamado semilla, a es el multiplicador, c es el incremento y m el módulo (módulo hace referencia al remanente ó decimal producto de la división, así pues si decimos que 143mod100, debemos dividir 143 entre 100 obteniendo 1.43, lo que quiere decir que su módulo es 43).
Si c es diferente de cero, se llama método de congruencia lineal mixto, de lo contrario se conoce como método de congruencia lineal multiplicativo.
La selección de las constantes a, c y m, así como de la semilla, afectan drásticamente el resultado de los números y por ende sus propiedades y longitud de ciclo.
1 mod , 0,1,2...i iX aX c m i
Algunas funciones generadoras*
*Tomado de: García, Eduardo. Simulación y análisis de sistemas con Promodel, cap 3.
Uniforme:
Triangular:
Normal:
Exponencial:
Poisson:
Distribución Generador Parámetros
Uniformea = límite inferior
b = límite superior
Triangular
a = límite inferior
c = moda de la distribución
b = límite superior
Normal
m = media de la distribución
s = Desviación estándard.
Exponencial1/l= media de la distribución
Weibull
Poisson
Inicialización: Hacer N=0, T=1 y generar un aleatorio ri.
Paso 1: Calcular T’=Tri.
Paso 2: Si T’>=e-l, entonces hacer N=N+1, T=T’ y
calcular otro ri, y regresar al paso 1.
Si no, la variable generada está dada por Pi=N.
i iU a b a r
, si
1 , si
i i
i
i i
c aa b a c a r r
b aT
c aa b a b c r r
b a
s m
s m
2ln 1 cos 2
2ln 1 sin 2
i i j
i i j
N r r
N r r
l
1
ln 1i iE r
1
ln 1x B R
Intervalos de confianza
Simulaciones terminales: Intervalo definido o eventos que dan por terminada la
simulación
Simulaciones no terminales o de estado estable: Independientemente del tiempo
transcurrido, los elementos se estabilizan en un comportamiento determinado. Este caso
requiere del cálculo de longitud de réplicas.
Longitud de réplicas: Se debe garantizar que la variación entre réplicas no sea
significativa.
/ 2, 1 / 2, 1,r r
s sIC x t x t
r r
,/ 2 / 2
s sIC x x
r r
Distribuciones normales
Otras distribuciones
Donde:
r =número de réplicas
= nivel de rechazo
s
2
/ 2Zn
s
21
n
Distribuciones normales
Otras distribuciones
Simulación
3. Simulación con hojas de
cálculo
Concepto general
Toda serie que incluya en el tiempo un comportamiento aleatorio es
modelable mediante hojas de cálculo, así como las distribuciones
personalizadas y los procesos de llegada y atención.
El concepto básico está dado por la generación de números aleatorios
y su aplicación a la serie mediante ecuaciones dinámicas ó la
conversión a la distribución de probabilidad asociada
Una vez generada la iteración por eventos o por tiempos (según el
método de avance del tiempo), se debe repetir la simulación según si
es terminal o de estado estable.
Al finalizar la simulación, se debe analizar el resultado en estado
estable y las diferentes réplicas, y serán estos resultados los que
permitan realizar las conclusiones de la simulación.
A continuación realizaremos algunos ejemplos básicos desarrollados
en Excel.
Paseo Aleatorio
Es el resultado de hacer sucesivas iteraciones aleatorias en el
tiempo, lo que conforma una senda variante en el tiempo. En inglés
se conoce como Random Walk.
Sus resultados han tenido múltiples aplicaciones tanto en la
Economía, las Finanzas, los Juegos de Azar, la Sociología, la Física
y la Biología.
Definición: Sea Xt una serie temporal que comienza en la posición
en X(0)=X0, su trayectoria está dada por:
Donde define la variable aleatoria que describe la probabilidad de
la dirección del siguiente paso.
ttx x
Algunas aplicaciones de los
paseos aleatorios
Suponga una acción que comienza costando $100 y no tiene tendencia
alguna, haciendo que su comportamiento en el tiempo sea aleatorio.
Mediante cuatro series aleatorias es posible entonces describir este
paseo aleatorio como se muestra a continuación:
Esto dará como resultado una serie de incrementos y decrementos que
no puede ser pronosticada, esto es en sí un paseo aleatorio.
Algunas aplicaciones de los
paseos aleatorios (tendencia)
Si la serie tiene alguna clase de pronóstico (técnicas de Forecasting),
es posible determinar una tendencia fija, no obstante la naturaleza
aleatoria de la serie puede afectar los resultados. Este es el concepto
básico de la especulación financiera (bonos, acciones, divisas, etc.).
Por citar un ejemplo, suponga una serie cuyo comportamiento ha sido
modelado bajo la siguiente ecuación:
Donde =1.001
Se espera que el parámetro alfa garantice un incremento constante del
0.1% sobre la acción. Un inversionista que conozca este modelo,
comprará entonces esta acción y hará un análisis financiero simple
estableciendo que el retorno neto será de 2.94% mensual, es decir que
si invierte $100, obtendrá $102.94 a final de mes
(Vf=Vp*(1+Crecimiento)^29), claramente mayor a la DTF actual,
haciendo atractiva la inversión.
ttx x
Algunas aplicaciones de los
paseos aleatorios (tendencia)
Al incluir la naturaleza estocástica dentro de la serie, los resultados
pueden variar positiva ó negativamente. A continuación se presenta
la formulación en Excel.
Lo que arroja un resultado negativo en este caso, haciendo que el
retorno sea de -6.14%.
Algunas aplicaciones de los
paseos aleatorios (Martingalas)
Otras aplicaciones se presentan con frecuencia mediante la
Martingala (determinado proceso estocástico).
La Martingala tiene múltiples aplicaciones, una de ella es en los
juegos de azar, donde se asume que tanto la banca como el
jugador tienen un capital infinito, de esta manera si el jugador
pierde, duplica su apuesta en forma sucesiva hasta que el juego lo
premia y recupera todo lo invertido.
En forma práctica el supuesto de recursos infinitos no se cumple,
haciendo que eventualmente la banca gane el juego.
Adicionalmente existe un desbalance en las probabilidades pues la
banca no paga por los resultados 0 ó 00, inclinando las
probabilidades hacia la pérdida.
Un ejemplo sencillo se puede observar en Excel.
Otras aplicaciones de las hojas
de cálculo: Modelo de colas MM1
Se puede también modelar un proceso de llegadas y atención
mediante la conversión de la serie aleatoria a la función de
probabilidad asociada (técnica de la transformada inversa).
Suponga un sistema de colas donde los clientes arriban de acuerdo
a una distribución exponencial entre llegadas con parámetro de 5
min y una atención con parámetro exponencial de 4 min. Determine
los indicadores de esta cola MM1.
A continuación se presenta la formulación en Excel para su
desarrollo:
Otras aplicaciones de las hojas
de cálculo: Modelo de colas MM1
Una vez corrida la simulación para 200 registros con 20 réplicas, se
encuentra que el tiempo promedio en cola está alrededor de los 14
minutos (rango entre 12 y 17).
La variabilidad ocurre por la naturaleza estocástica involucrada en la
formulación y por la poca cantidad de registros analizados.
Si resolvemos este sistemas con la formulación básica de teoría de
colas encontraremos que el Wq es de 16 minutos, valor que coincide
con el rango hallado, pero que por sus generalidades de convergencia
infinita, ignora los conceptos estocásticos involucrados.
Ventas variables por hora
Suponga una venta de arepas ubicada en un sector universitario cuya
clientela es estudiantil. La clientela siempre está de afán y desea
rápida atención. Los tiempos entre llegadas se distribuyen
exponencialmente sin embargo según la hora del día las llegadas son
diferentes (ver histograma). El tiempo de atención es exponencial con
media de 1 minuto. Cuál es la cola y el tiempo de atención promedio?
0%
5%
10%
15%
9 10 11 12 13 14 15 16 17 18
Ventas Diarias
% Teórico % Real
Procesamiento de piezas
El tiempo que transcurre entre la llegada de ciertas piezas a una
estación de inspección sigue una distribución exponencial con media
de 5 minutos/pieza. El proceso está a cargo de un operario y la
duración de la inspección sigue una distribución normal con media de 4
y desviación estándar de 0.5 min/pieza. Calcular el tiempo promedio de
permanencia de las piezas en el proceso de inspección.
0
2
4
6
8
10
12
Tiempo promedio en el sistema
Tiempo promedio en inspección
Modelos de Inventarios
Existen múltiples modelos de inventarios en la literatura que buscan
optimizar el valor de compras, pedidos y por ende el costo total de
la mercancía.
Los modelos básicos van desde el EOQ (comienzos de siglo XX)
hasta modelos heurísticos y meta-heurísticos que implementan
algoritmos inteligentes que construyen las sendas óptimas.
Para simular estos modelos comenzaremos con sistemas básicos
sin reorden y sin lead time, con demanda estática. Luego se
relajaran algunos supuestos hasta conformar modelos más
complejos.
Simulación
4. Identificación de variables
Medición de variables
Toda variable involucrada en el sistema debe ser
medida
Para ello partimos de datos históricos del proceso y de
estimaciones realizadas a partir de un muestreo
Una serie suficientemente grande de datos nos permite
identificar primero gráfica y luego estadísticamente el
comportamiento de cada variable
Los datos más comúnmente estimados en un modelo
son:
Tiempos de atención y procesamiento
Tiempos entre llegadas
Cantidad de entradas al sistema: frecuencia
Probabilidades de ruteo y error
Muestreo
Herramienta fundamental para la medición de tiempos y tipificación de los
mismos.
Principio fundamental: La información se recoge cuando algo ocurre
Se captura todo ingreso y salida del proceso o conjunto de ellos
Ejemplo sencillo en un sistema de una cola con un servidor:
De esta tabla podemos elaborar:
Ejemplo de un programa sencillo en Excel
para capturar tiempos en una operación
Sub captura()
Dim cap As Worksheet
Set cap = Sheets("Captura")
j = 4
Do While cap.Cells(j, 1) <> ""
If cap.Cells(j + 1, 2) = "" Then
cap.Cells(j + 1, 2) = Time()
cap.Cells(j + 1, 1) = j - 3
Exit Sub
Else
If cap.Cells(j + 1, 3) <> "" Then
j = j + 1
GoTo siguiente
Else
cap.Cells(j + 1, 3) = Time()
cap.Cells(j + 1, 4) = (cap.Cells(j + 1, 3) - cap.Cells(j +
1, 2)) * 3600 * 24
Exit Sub
End If
End If
j = j + 1
siguiente:
Loop
End Sub
•Nombre una hoja de cálculo como “Captura”
•Cree los títulos como se muestra a continuación
e inserte un botón llamado capturar
•Luego asócielo a una subrutina llamada captura
como se muestra en el código de la derecha.
•Los datos resultantes de la columna D, serán
los tiempos de la operación, estos datos
determinarán la distribución de probabilidad
asociada al proceso.
Análisis de los datos
Una vez realizado el muestreo (mínimo 30 registros por cada
actividad), es necesario realizar agrupaciones que permitan elaborar
una distribución de frecuencias desde la cuál se puedan identificar
las posibles distribuciones de probabilidad que describan la serie.
Sobre las distribuciones que se desee verificar, es necesario luego
realizar una prueba de bondad de ajuste (test estadístico que indica
cuán cerca o lejos está una serie de una distribución específica)
Test Chi cuadrado: Compara contra poblaciones normalmente
distribuidas
Test de Kolmogorov-Smirnov: Compara contra cualquier otra
distribución.
Test de Anderson Darling: Compara contra cualquier otra
distribución.
Es decir que primero graficamos mediante un histograma de
frecuencias y luego realizamos los test estadísticos según el caso
Análisis de los datos
Este proceso debe aplicarse a todas las actividades involucradas en la
modelación, obteniendo finalmente algo como lo plasmado en la gráfica
(ejemplo atención en una cafetería)
Existen además paquetes computacionales especializados que ya
elaboran todos estos procesos, entre ellos encontramos: STATA, SPSS,
EVIEWS, Cristal Ball, Expert Fit, Risk Simulator, etc.
Solicitud de
Pedido
E(1,2)
Entrada
Llegada de
clientes
P(90)
Caja
Entrega del Pedido
al usuario
N(0.5,1)
Barra Salida
Alistamiento
del pedido
G(2,5)
Cocina
Simulación
5. Introducción a la teoría de
Colas
Definición e historia
Una cola es una línea de espera de cualquier clase de recurso
(personas, materiales, documentos, etc.)
La teoría de colas es el conjunto de modelos matemáticos y
computacionales que intentan explicar el comportamiento de las
líneas de espera
Su precursor fue Erlang (Ingeniero Danés 1978 – 1929), quien en
1909 publicó su primer trabajo sobre la modelación de las esperas y
su dimensionamiento en la empresa de teléfonos de Copenhague
Con el tiempo sus teorías fueron ampliamente aceptadas y
aplicadas a muchos otros campos, incluso hoy en día.
Hay muchos otros padres y aportes posteriores (Chebyshov ,
Markov, Kendall, Little, entre otros)
Las colas son una aplicación particular de los procesos estocásticos
Proceso de nacimiento y
muerte
Esquema básico para modelación de colas (cambios en tamaño de
población)
Nacimiento: llegada de un nuevo cliente al sistema
Muerte: salida de un cliente servido
N(t): número de clientes que hay en el sistema en un momento t
El proceso de nacimiento y muerte describe en términos
probabilísticos como cambia N(t) al aumentar t
Suposiciones:
Dado N(t)=n, la distribución de probabilidad actual del tiempo que falta para el
próximo nacimiento es exponencial con parámetro
Dado N(t)=n, la distribución de probabilidad actual del tiempo que falta para la
próxima muerte (terminación) es exponencial con parámetro
n solo puede saltar 1 estado a la vez
Diagrama de tasas:
l
m
Proceso de nacimiento y
muerte
Principio clave (ecuación de balance):
Tasa media de entrada = Tasa media de salida
Estado 0:
Estado 1:
Generalizando:0 1 2 1
n=01 2 3
..., 1
...
nn n
n
p pl l l l
m m m m
0 10l
0 10l
21l
1m
0 01 1 0 0 1
1
PP P P
lm l
m
1m
2m
0 0 2 2 1 1 1 1 2 2 1 1 1 0 0
1 1 1 0 0 0 1 0 0 1 0 0 0 12 0 0 2
2 2 1 2 2 0 1
P P P P P P P
P P P PP P P P
l m l m m l m l
l m l l l l m l l l
m m m m m m m
Componentes de una Cola
Definiciones
N(t): Número de clientes en el estado t
r : Tasa de utilización (debe ser menor a 1 para que el sistema sea
estable)
Pn(t): Probabilidad de hallar n clientes en el sistema en el instante t
S: Número de servidores
Número de clientes por unidad de tiempo (tasa de llegada)
L: Número esperado de clientes en el sistema
Lq: Número esperado de clientes en la cola
W: Tiempo de espera en el sistema (cola y servicio) para cada cliente
Tasa media de servicio (número esperado de clientes que completan
su servicio por unidad de tiempo)
Wq: Tiempo esperado en la cola para cada cliente
Abandono e Impaciencia
Fuente de
entrada
Cola Proceso
o servicioSalida
l
m
Notación y Disciplina
Notación: A/B/C/D/E
A: Distribución de tiempos de llegada
B: Distribución de tiempos de salida
C: Número de servidores
D: Capacidad del sistema
E: Disciplina de la cola
Disciplinas
FIFO: Primero en llegar, primero en servirse
LIFO: Último en llegar, primero en servirse
SIFO: Se atiende primero las tareas que demandan menor
servicio
RR (Round Robin): Se reparte el tie po del recurso equivalente
entre todas las tareas pendientes
Cola M | M | 1
Hay una sola cola, cuya capacidad es infinita, y un solo servidor, La disciplina será FIFO
Las llegadas se producen según un proceso de Poisson de razón l, donde l es el número medio de llegadas por unidad de tiempo y 1/l es el tiempo medio entre llegadas, Los tiempos entre llegadas se distribuirán exponencialmente, Exp(l)
Los tiempos entre servicios también se distribuirán exponencialmente, Exp(m), de tal manera que m es el número medio de clientes que el servidor es capaz de atender por unidad de tiempo y 1/m es el tiempo medio de servicio
Condición de no saturación
Se demuestra que si lm, el sistema se satura,
es decir, el número de clientes en la cola crece
indefinidamente con el tiempo, Por consiguiente,
la condición de no saturación será:
m
lrr donde,1
Cuando una cola no se satura, también se dice
que alcanza el estado estacionario,
Probabilidades
El parámetro r se llama carga, flujo o intensidad de tráfico del sistema, puesto que mide la relación entre la cantidad de trabajos que llegan y la capacidad de procesarlos
Suponiendo que el sistema no se satura, se deduce la siguiente fórmula para las probabilidades pn de que haya n clientes en el sistema, donde nN:
rr 1n
np
Medidas de rendimiento
El número medio de clientes en el sistema, L, se calcula así:
000
11j
j
j
j
j
j jjpjL rrrr
Sumamos la serie aritmético-geométrica:
...432 432 rrrrS
...32 432 rrrrS
r
rrrrrr
1...1 432S
r
r
r
rr
111
2L
Medidas de rendimiento
La utilización del servidor, notada U, es la fracción de
tiempo (en tanto por uno) que el servidor permanece
ocupado, Para hallarla, nos valemos de que cuando no
hay saturación, el número medio de clientes que entran
en el sistema debe ser igual al número medio de
clientes que salen de él:
rm
lml UU
Como para deducir la anterior fórmula no hemos
usado ninguna característica especial del modelo
de entrada ni del de salida, dicha fórmula es
válida para colas G | G | 1
Medidas de rendimiento
El tiempo medio de respuesta W es el tiempo medio que un trabajo permanece en el sistema, Si suponemos que un trabajo, al llegar al sistema, se encuentra con que hay por delante de él otros j trabajos, el tiempo medio que tardará en salir del sistema será j+1 veces el tiempo medio de servicio, Por lo tanto:
mmmmm
11111
000
LppjpjW j
j
j
j
j
j
Tiempo que se pasa
en el sistema si
hay j por delante
al llegar
Probabilidad de que
haya j por delante
al llegar
Medidas de rendimiento
Podemos simplificar algo más:
lmmm
11LW
El tiempo medio de espera en la cola Wq se hallará
restando a W el tiempo que tarda en ser servido el
trabajo (esto es válido para cualquier tipo de cola):
m
1WWq
En el caso particular de una cola M | M | 1,
obtenemos:
lm
r
qW
Ejemplo
Unos mecánicos llegan a una media de 10 por hora a recoger piezas de repuesto, Estas piezas se las da un dependiente pagado con $5/hora y que tarda como media 5 min en servir, Cada hora que tiene que esperar un mecánico (en el sistema) le cuesta al taller $10, Queremos saber si merece la pena contratar a un ayudante del dependiente, pagado con $4/hora, de forma que el tiempo medio de servicio se reduzca a 4 min
Nota: Al resolver un problema de colas, tener siempre muy presente la coherencia de unidades
Ejemplo
Tenemos dos opciones: Sin ayudante: 1/m1 = 5 min = 1/12 h
Con ayudante: 1/m2 = 4 min = 1/15 h
En ambos casos, l = 10 clientes/h
Opción 1 (sin ayudante):
mecánicos5
12
101
12
10
1;
12
10
1
111
r
rr L
Por tanto, perdemos 5·($10/h) = $50/h
Ejemplo
Opción 2 (con ayudante):
mecánicos2
15
101
15
10
1;
15
10
1
112
r
rr L
Por tanto, perdemos 2·($10/h) = $20/h debido a la espera de los mecánicos, Pero también perdemos $4/h debido al sueldo del ayudante, Por tanto, las pérdidas totales son $24/h
En la opción 1 perdemos $50/h y en la opción 2 perdemos $24/h, con lo cual la más ventajosa es la opción 2.
Cola M | M | s
Hay una sola cola, cuya capacidad es infinita, y s servidores, La disciplina será FIFO
Las llegadas se producen según un proceso de Poisson de razón l, donde l es el número medio de llegadas por unidad de tiempo y 1/l es el tiempo medio entre llegadas, Los tiempos entre llegadas se distribuirán exponencialmente, Exp(l)
Los tiempos de servicio también se distribuirán exponencialmente, Exp(m), de tal manera que m es el número medio de clientes que cada servidor es capaz de atender por unidad de tiempo y 1/m es el tiempo medio de servicio
Condición de no saturación
Se demuestra que si lsm, el sistema se satura,
es decir, el número de clientes en la cola crece
indefinidamente con el tiempo, Por consiguiente,
la condición de no saturación será:
1, dondes
lr r
m
Nosotros sólo estudiaremos las colas que no
se saturan, Cuando una cola no se satura,
también se dice que alcanza el estado
estacionario,
Probabilidades
Suponiendo que el sistema no se satura, se deducen las siguientes fórmulas para las probabilidades pn de que haya n clientes en el sistema, donde nN:
11
0
0! 1 !
ns s s
n
ssp
s n
rr
r
0
0
, si 0,1,...,!
, en otro caso!
n
ns n
sp n s
nps
ps
r
r
Medidas de rendimiento
Número medio de clientes en cola:
1
0
2! 1
s s
q
s pL
s
r
r
Usamos razonamientos ya vistos para
obtener:
m
1 qWW
qq WL l WL l
Otras medidas de rendimiento
Número medio de servidores ocupados, C, En
el estado estacionario, la razón de las salidas
será igual a la razón de las llegadas:
c c sl
m l rm
Probabilidad de que un trabajo tenga que
esperar para recibir su servicio (fórmula de
retraso de Erlang):
0
! 1
s ss pq
s
r
r
Ejemplos
Ejemplo: Usando L como medida de
rendimiento, comparar estas dos alternativas:
ml l
m/2
m/2
Alternativa 1: Alternativa 2:
Ejemplos
Alternativa 1:
r
r
11L
Alternativa 2:
rm
l
m
lr
22
2
112
0
22
02!
2
1!2
2
n
n
np
r
r
r
Ejemplos
122
12
0212
4422421
12
4
r
rrrrr
r
rp
r
r
r
r
1
1
12
221
02p
rlm
llll
m2
2122
2
222
qqq WWWWL
r
rr
rrr
r
rr 2
11
122
12
42
2
3
2
02
3
22
pLL q
Ejemplos
rr
r
rr
rrrr
rr
r
11
2
11
2222
11
2 333
2L
rr
r
rr
r
r
r
1
210
111
2
1
Para que la alternativa 1 sea mejor, ha de
cumplirse que L1<L2:
121 rr Como r<1 siempre se cumple, tendremos
que la alternativa 1 siempre es mejor, Es
decir, no conviene dividir la capacidad de
procesamiento en dos servidores
Ejemplos
Ejemplo: Usando el número medio de clientes en el sistema como medida de rendimiento, comparar estas dos alternativas:
m/2l/2
l
m/2
m/2
Alternativa 2:Alternativa 1:
m/2l/2
Ejemplos
Alternativa 1 (nótese que hay 2 colas):
m
lr
r
r
r
r
donde,
1
2
12
1
11L
Alternativa 2 (es la alternativa 2 del ejemplo
anterior):
rm
l
m
lr
22
2
rr
r
11
22L
Ejemplos
rr
r
rr
r
r
r
1
110
1
2
11
2
1
2
Para que la alternativa 2 sea mejor, ha de
cumplirse que L1>L2:
011 rr
Como r>0 siempre se cumple, tendremos
que la alternativa 2 siempre es mejor, Es
decir, no conviene poner dos colas, sino
tener una única cola global
Ejemplos
Ejemplo: En una copiadora se dispone de 3
máquinas fotocopiadoras a disposición del público,
Cada máquina es capaz de servir, por término
medio, 8 trabajos cada hora, A la copiadora llegan
como promedio 5 clientes a la hora,
Parámetros del sistema: l = 5 clientes/h, m = 8
clientes/h, s = 3 servidores, El sistema no se satura
porque r<1,
5 5
3·8 24s
lr
m
Ejemplos
¿Cuál es la probabilidad de que las tres máquinas
estén libres a la vez?
1 13 31 2
0
0 0
33
! 1 ! 3! 1 !
n ns s s
n n
ssp
s n n
r rr r
r r
0,5342706569
304
128
25
8
51
2432
125
!2
3
!1
3
!0
3
1!3
311
21033
rrr
r
r
3 41 3040 569
2 2
3 3020,00722643 clientes
41791! 1 3! 1
s s
q
s pL
s
rr
r r
¿Cuál es el número medio de clientes en la
cola?
Ejemplos
¿Cuál es el tiempo medio de espera en la cola?
h 00144529,035979
52
41791·5
302
l
LW
¿Cuál es el tiempo medio de espera en el
sistema?h 126445,0
4065
514
8
1
35979
521
mqWW
¿Cuál es el número medio de clientes en el
sistema?
clientes0.632226813
514
4065
514·5 WL l
Resumen de ecuaciones de
Little
M/M/1 M/M/S
0 1Pl
m
1W
m l
1n
nPl l
m m
qW
l
m m l
Ll
m l
lr
m
2
qLl
m m l
M/M/1/n
0 1
1
1M
Pl m
l m
1 M
LW
Pl
1qW W
m 0 ,
n
nP P n Ml m
1
1
1
1 1
M
M
ML
l ml m
l m l m
1 M
q
PL L
l
m
01
0
1
1 1
! !
sn s
n
Ps
n s s
l l m
m m m l
0
0
1
!
1
!
n
n s
n n
P n ss s
P
P n sn
l
m
l
m
02
1 !
s
L Ps s
lm l m l
mm l
LW
l qL L
l
m
1qW W
m
Simulación
6. Colas en serie y teoría de
Redes
Redes de colas
Una red de colas es un sistema donde
existen varias colas y los trabajos van
fluyendo de una cola a otra
Ejemplos:
Fabricación (trabajos=artículos)
Oficinas (trabajos=documentos)
Redes de comunicaciones (trabajos=paquetes)
Sistemas operativos multitarea (trabajos=tareas)
Enrutado de trabajos
Criterios para decidir a qué cola se dirige un
trabajo que acaba de salir de otra:
Probabilístico: se elige una ruta u otra en función
de una probabilidad (puede haber distintos tipos
de trabajos, cada uno con sus probabilidades)
Determinista: cada clase de trabajo se dirige a
una cola fija
Tipos de redes de colas
Se distinguen dos tipos de redes de colas:
Abiertas: Cada trabajo entra al sistema en un momento dado, y tras pasar por una o más colas, sale del sistema, Dos subtipos:
Acíclicas: Un trabajo nunca puede volver a la misma cola (no existen ciclos)
Cíclicas: Hay bucles en la red
Cerradas: Los trabajos ni entran ni salen del sistema, Por lo tanto permanecen circulando por el interior del sistema indefinidamente, Usualmente existe un número fijo de trabajos,
Red abierta acíclica
Red abierta cíclica
Red cerrada
Redes de Jackson abiertas
Una red de colas abierta se dice que es de Jackson
si:
Sólo hay una clase de trabajos
Los enrutados son probabilísticos, donde rij 0 es la
probabilidad de ir al nodo j después de haber salido del
nodo i, Por otro lado, ri0 es la probabilidad de abandonar
del sistema después de haber salido del nodo i, donde ri0 =
1– ∑jrij
Cada nodo i es una cola .|M|ci
La tasa de llegadas externas al nodo i se notará i
El número total de nodos de la red se notará K
Ecuaciones de equilibrio
Dado que el flujo total de entrada a un nodo
debe ser igual al flujo total de salida del
nodo, tendremos que:
1
, 1,...,K
i i j jij
r i K
l l
Las K ecuaciones anteriores forman un
sistema lineal con solución única, que
resolveremos para hallar las tasas de
llegada a cada nodo li
Condición de no saturación
Para que ninguna de las colas del sistema se
sature, es preciso que se cumpla la siguiente
condición:
ii
iii
cdondeKi
m
lrr ,1,,...,2,1
Nota: Se trata de la condición de no
saturación del modelo M|M|c, aplicada a
cada uno de los nodos por separado
Teorema de Jackson para
redes abiertas
Teorema: Sea una red de Jackson abierta que cumple la condición de no saturación, Entonces en el estado estacionario, la distribución del número de clientes en cada nodo es la que sigue:
11
( ) ( ), , , 0K
i i Ki
p p n n n
n
donde pi(ni) es la probabilidad de que haya ni
clientes en el nodo i, calculada según las
ecuaciones del modelo M|M|c
Consecuencias del teorema
Corolario: Las medidas de rendimiento para
cada nodo se calculan según las ecuaciones
del modelo M|M|s, Además se tendrán las
siguientes medidas:
Tasa global de salidas del sistema (throughput),
que es el número medio de trabajos que salen del
sistema por unidad de tiempo, Coincide con el
número de trabajos que entran en el sistema:
K
iired
1
l
Consecuencias del teorema
Número medio de trabajos en el sistema, Lred, que es la suma de los número medios de trabajos en cada uno de los nodos:
K
iired LL
1
Tiempo medio en el sistema, Wred, que es el
tiempo medio que pasa una tarea desde que
entra en la red hasta que sale de ella:
red
redred
LW
l
Consecuencias del teorema
Razón de visitas al nodo i, Vi, que es el número
medio de veces que un trabajo visita el nodo i
desde que entra en la red hasta que sale:
red
iiVKi
l
l ,,...,2,1
Nota: en una red acíclica habrá de cumplirse que
Vi1 i{1,2,,,,,K}, ya que cada tarea visitará
cada nodo a lo sumo una vez
Ejemplo (red acíclica)
11,5 2
3
60,5
4
5
2 1,2,..,6i im
Ejemplo (red acíclica)
En el ejemplo, 1=1,5; r12=0,2; r13=0,8; r34=0,6; r35=0,4;
6=0,5; r65=1; con lo cual la solución es:
1 2 31,5; 0,3; 1,2;l l l
4 5 60,72; 0,98; 0,5l l l
Ecuaciones de equilibrio:
1 1 2 1 12 3 1 13; ; ;r rl l l l l
4 3 34 5 3 35 6 65 6 6; ;r r rl l l l l l
Ejemplo (red acíclica)
Medidas de rendimiento (ecuaciones del modelo
M|M|1):1 2 33; 0,1764; 1,5;L L L
4 5 60,5625; 0,9607; 0,3333L L L
Condición de no saturación (se cumple porque ri<1):
ii
i
lr
m1 2 30,75; 0,15; 0,6;r r r
4 5 60,36; 0,49; 0,25r r r
i
iiL
r
r
1
Ejemplo (red acíclica)
ii
iWlm
11 2 32; 0,5882; 1,25;W W W
4 5 60,78125; 0,9803; 0,6666W W W
i
iqi WWm
11 2 31,5; 0,0882; 0,75;q q qW W W
4 5 60,28125; 0,4803; 0,1666q q qW W W
Red abierta cíclica
10,2 2
3
4
5
0,8
0,6
3 1,2,4
4 3,5
i
i
i
i
m
m
Ejemplo (red cíclica)
En el ejemplo, 1=0,2; r12=0,3; r13=0,7; 3=0,8; r53=0,6;
r34=0,1; r35=0,9; con lo cual la solución es:
1 2 30,2; 0,06; 2,0434;l l l
4 50,2043; 1,8391l l
Ecuaciones de equilibrio:
1 1 2 1 12 3 3 1 13 5 53; ; ;r r rl l l l l l
4 3 34 5 3 35;r rl l l l
Ejemplo (red cíclica)
Medidas de rendimiento (ecuaciones del modelo
M|M|1):1 2 30,0714; 0,0204; 1,0443;L L L
4 50,0731; 0,8511L L
Condición de no saturación (se cumple porque ri<1):
ii
i
lr
m1 2 30,0666; 0,02; 0,5108;r r r
4 50,0681; 0,4597r r
i
iiL
r
r
1
Ejemplo (red cíclica)
ii
iWlm
11 2 30,3571; 0,3401; 0,5111;W W W
4 50,3576; 0,4627W W
i
iqi WWm
11 2 30,0238; 0,0068; 0,2611;q q qW W W
4 50,0243; 0,2127q qW W
Redes de Jackson cerradas
Una red de colas cerrada se dice que es de
Jackson sii:
Sólo hay una clase de trabajos
Los enrutados son probabilísticos, donde rij 0 es la
probabilidad de ir al nodo j después de haber salido del
nodo i,
Cada nodo i es una cola .|M|ci
Hay una cantidad constante M de trabajos en el sistema
El número total de nodos de la red se notará K
Ecuaciones de equilibrio
Dado que el flujo total de entrada a un nodo debe ser igual al flujo total de salida del nodo, tendremos que:
* *
1
, 1,...,K
i j jij
r i K
l l
Las K ecuaciones anteriores forman un sistema
lineal indeterminado con un grado de libertad,
que resolveremos para hallar las tasas de
llegada relativas a cada nodo li*, Para ello
fijaremos un valor positivo arbitrario para una
incógnita, por ejemplo l1*=1
Análisis del valor medio
Hallaremos las siguientes medidas de
rendimiento para M tareas en el sistema:
Li(M)=Número medio de tareas en el nodo i
Wi(M)=Tiempo medio que cada tarea pasa en el
nodo i cada vez que lo visita
li(M)=Tasa real de salidas del nodo i
Se trata de un algoritmo iterativo que va
calculando Li(m), Wi(m) para valores
crecientes de m a partir de m=0
Análisis del valor medio
Las ecuaciones son:
*
*
1
( 1)1( ) , 1,..., 1,...,
( )( ) , 1,..., 1,...,
( )
j
j
j j j
j j
j K
i ii
L mW m j K m M
c
W mL m m j K m M
W m
m m
l
l
(0) 0, 1,...,jL j K
( )
( ) , 1,..., 1,...,( )
j
j
j
L mm j K m M
W ml
Red cerrada
1
2
4
3
1
1 5 1,2,..,6i im
Ejemplo (red cerrada)
En el ejemplo, r12=0,3; r14=0,7; r23=1; r31=1; r41=1; con
lo cual la solución es, tomando l1*=1:
* *
1 21; 0,3;l l
* *
3 40,3; 0,7l l
Ecuaciones de equilibrio:
* * * * *
1 3 31 4 41 2 1 12; ;r r rl l l l l
* * * *
3 2 23 4 1 14;r rl l l l
Ejemplo (red cerrada)
1 ( 1)
( ) , 1,...,45
j
j
L mW m j
11
1 2 3 4
( )( )
( ) 0,3 ( ) 0,3 ( ) 0,7 ( )
W mL m m
W m W m W m W m
22
1 2 3 4
0,3 ( )( )
( ) 0,3 ( ) 0,3 ( ) 0,7 ( )
W mL m m
W m W m W m W m
33
1 2 3 4
0,3 ( )( )
( ) 0,3 ( ) 0,3 ( ) 0,7 ( )
W mL m m
W m W m W m W m
44
1 2 3 4
0,7 ( )( )
( ) 0,3 ( ) 0,3 ( ) 0,7 ( )
W mL m m
W m W m W m W m
Ejemplo (red cerrada)
Primera iteración:
(0) 0, 1,...,4jL j 1 (0)
(1) 0,2 1,...,45
j
j
LW j
1
0,2(1) 1 0,4347
2,3 0,2L
2
0,3 0,2(1) 1 0,1304
2,3 0,2L
4
0,7 0,2(1) 1 0,3043
2,3 0,2L
3
0,3 0,2(1) 1 0,1304
2,3 0,2L
Ejemplo (red cerrada)
m W1(m) W1(m) W1(m) W1(m) L1(m) L2(m) L3(m) L4(m)
0 -- -- -- -- 0 0 0 0
1 0,2 0,2 0,2 0,2 0,4348 0,1304 0,1304 0,3043
2 0,2870 0,2261 0,2261 0,2609 0,9483 0,2241 0,2241 0,6034
3 0,3897 0,2448 0,2448 0,3207 1,5360 0,2895 0,2895 0,8849
4 0,5072 0,2579 0,2579 0,3770 2,1913 0,3343 0,3343 1,1401
5 0,6383 0,2669 0,2669 0,4280 2,9065 0,3646 0,3646 1,3644
6 0,7813 0,2729 0,2729 0,4729 3,6737 0,3850 0,3850 1,5564
7 0,9347 0,2770 0,2770 0,5113 4,4852 0,3987 0,3987 1,7173
0 2 4 6 8 10 12 14 16 18 200
2
4
6
8
10
12
14
16
Ejemplo (red cerrada)
m
L
Cola 1
Colas 2 y 3
Cola 4
0 2 4 6 8 10 12 14 16 18 200
0.5
1
1.5
2
2.5
3
3.5
Ejemplo (red cerrada)
m
W
Cola 1
Colas 2 y 3
Cola 4
0 2 4 6 8 10 12 14 16 18 2010
20
30
40
50
60
70
80
90
100
Ejemplo (red cerrada)
Utilizaci
ón del
servido
r (%)
U=l/m=
L/(Wm)
m
Cola 1
Cola 4
Colas 2 y 3
Cuellos de botella
Un cuello de botella en un sistema de colas es un nodo cuya capacidad de procesamiento determina el rendimiento de todo el sistema
Definición: Sea una red de Jackson cerrada. Diremos que el nodo j es un cuello de botella sii Lj(m) cuando m
En el ejemplo anterior el nodo 1 es un cuello de botella. Trabaja al límite de su capacidad mientras que los otros no (se quedan al 30% o al 70%). Para mejorar el rendimiento global del sistema habría que aumentar la capacidad de procesamiento del nodo 1
Simulación
7. Revisión de diferentes
programas especializados para
simulación
Introducción
Los precursores de la simulación fueron Von Newmann y
Morgenstern quienes idearon el método de Montecarlo en la década
de los 40’s (padres también de la teoría de juegos)
Poco tiempo después se desarrolló el primer modelo de simulación
durante el programa Manhattan en la segunda guerra mundial. Este
desarrollo apoyado en los nacientes procesadores, fue el primer
programa de simulación que existió.
Algunos aportes se hicieron en forma posterior, sin embargo, en la
década de los 70’s se dio nuevamente el boom de estos programas
gracias a los desarrollos en bases de datos que permitieron integrar
los ordenadores a procesos productivos.
En los años posteriores fueron surgiendo programas más
especializados hasta llegar a los muy avanzados que tenemos hoy
en día.
¿Qué hay de nuevo en la tecnología
de simulación?
Hoy en día los programas de simulación son más que emuladores de variables aleatorias en procesos
Más allá de esto, existen una serie de características que buscan ofrecer soluciones especializadas en entornos más amigables al usuario, fáciles de usar y flexibles para trabajar.
Entre las principales características encontramos:
Animación en 2 y 3 dimensiones
Imágenes ultra realísticas (adición de diseños CAD)
Integración con lenguajes y sistemas populares como: C#, C++, VB, Access, VBA, Excel, Visio
Herramientas de Optimización (OptQuest)
Reportes de resultados automáticos y/o personalizados
Integración con sistemas de análisis de datos (Stat::Fit, ExpertFit)
Paquetes de modelos especializados
Software de Simulación más
conocidos
A continuación haremos un recorrido por los sistemas más populares para simulación a nivel mundial, indicando algo de historia y sus características más importantes. Evaluaremos:
Analytica
AnyLogic (simulación de sistemas dinámicos)
Arena
AutoMod
Flexsim
GoldSim
MicroSaint
Promodel
Simul8
Vensim (simulación de sistemas dinámicos)
Witness
Analytica
Propiedad de Lumina Decision
Systems Inc., compañía de origen
Norteamericano, fundada en 1991
Modelación en 2D
Integración con Excel y Access
Aplicaciones principales:
Aeroespacial
Construcción
Modelación Financiera
Riesgo Financiero
Procesos y Manufactura
Precios
Edición Profesional: US $1.295
Optimizador: US $2.995
Reproductor: US $500http://www.lumina.com/ana/whatisanalytica.htm
AnyLogic
Propiedad de XJ Technologies,
compañía de origen Ruso, fundada
en 1992
Modelación en 2D
Aplicaciones principales:
Educación
Sistemas Complejos
Militar
Redes y Comunicaciones
Cadena de suministros y Transporte
Precios
V6 Edición Avanzada: 4.800 EUR +
1.200 EUR con OPT Quest
V6 Edición Profesional: 12.000 EURhttp://www.xjtek.com/anylogic/
Arena Propiedad de Rockwell Automation,
compañía de origen Norteamericano,
fundada en 1983.
Modelación en 2D (post-animación en
3D)
Fácil utilización
Integración con VB
Aplicaciones principales:
Sistemas Complejos
Servicios
Militar
Cadena de suministros
Comparación de escenarios
Precios
Básico: US $795
OptQuest: US $ 995http://www.arenasimulation.com/
AutoMod Propiedad de Applied Materials Inc.,
compañía de origen Norteamericano,
fundada en 1967.
Modelación en 3D, ultra realista
Requiere nivel avanzado de programación
Lenguaje propio, orientado a objetos
Módulos de manufactura especializados:
Aplicaciones principales:
Sistemas Complejos
Salud
Manufactura
Cadena de suministros y Transporte
Aeroespacial
Precios
Versiones desde US $20.000 hasta US
$40.000http://www.automod.com/
FlexSim
Propiedad de Flexsim Software
Products Inc., compañía de origen
Norteamericano, fundada en 1993.
Fácil Utilización
Es tal vez el software más popular en
simulación 3D
Permite incluir objetos CAD
Integración con C++, Access y Excel
Módulos de manufactura
especializados
Aplicaciones principales:
Manufactura
Cadena de suministros
Precios
US $19.500http://www.flexsim.com/
GoldSim
Propiedad de Golder Associates,
compañía de origen
Norteamericano, fundada en
1990
Modelación en 2D
Aplicaciones principales:
Medio Ambiente
Modelación financiera y de negocios
Procesos industriales
Sistemas dinámicos
Precios
GoldSim Pro: US $3.950http://www.xjtek.com/anylogic/
MicroSaint Propiedad de Alion MA&D Operation,
compañía de origen Norteamericano,
fundada en 1984
Modelación en 2D (tiene una leve
integración con 3D)
Integración con Visio
Reportes configurables por el usuario
Aplicaciones principales:
Medio Ambiente
Modelación financiera y de negocios
Procesos industriales
Precios
Modelador Básico US $4.995
Avanzado (Incluye animación en 2D y
OptQuest): US $8.995http://www.maad.com/index.pl/micro_saint
ProModel Propiedad de Promodel Corporation,
compañía de origen Norteamericano,
fundada en 1988
Software de propósito general
Modelación en 2D (post-animación en
3D)
Programas especializados
ProcessModel (integración con VISIO)
MedModel
ServiceModel
Aplicaciones principales:
Servicios
Procesos industriales
Precios
US $3.500
Stat::Fit US $245http://www.promodel.com
Simul8 Propiedad de Simul8 Corporation,
compañía de origen Norteamericano,
fundada en 1994.
Fácil Utilización
Modelación en 2D (post-animación en
3D)
Integración con C++, VB, Access y Excel
Aplicaciones principales:
Manufactura
Cadena de suministros
Simulación de escenarios
Precios
Standard: US $1.495
Profesional: US $4.995
Stat::Fit US $245
OptQuest: US $495http://www.simul8.com/
Vensim
Propiedad de Ventana Systems
Inc., compañía de origen
Norteamericano, fundada en 1985
Modelación en 2D
Aplicaciones principales:
Modelación de sistemas dinámicos
(cadenas de abastecimiento, modelación
financiera, modelos de crecimiento,
económicos, sociales, etc.)
Precios
DSS: US $1.995
Profesional: US $1.195
PLE: gratis http://www.vensim.com/
Witness Propiedad de Laner, compañía de
origen Británico, fundada en 1978
Modelación en 3D
Diseños Optimizados
Integración con Visio
Reportes configurables por el
usuario
Aplicaciones principales:
Medio Ambiente
Modelación financiera y de negocios
Procesos industriales
Precios
http://www.lanner.com/corporate/technology/witne
ss.htm
Aplicaciones más frecuentes
Conclusiones
En la literatura revisada se encontraron 57 diferentes programas de
simulación, se destacaron los 11 aquí revisados.
Todos cuentan con múltiples características como simulación discreta y
continua, sistemas dinámicos, modelación en 2 y 3 dimensiones,
integración con otros sistemas, etc.
Así mismo se identifican diferentes campos de aplicación, la elección del
programa depende básicamente de este parámetro y el costo.
Arena es el software de simulación más difundido a nivel mundial, por su
bajo costo y su amplio soporte en muchos países.
En segundo lugar se encuentra Promodel, tiene una mayor difusión en
ámbitos académicos ya que está enfocado a propósito general (abarca casi
todos los campos), no obstante no permite una gran especialización y
modelación de sistemas complejos.
Existen otros programas más especializados como Flexsim, Witness y
Automod, pero por su alto costo solo se utiliza en empresas con
departamentos dedicados al campo de la simulación
Modelos de Control de
Inventarios
A lo largo del siglo XX se hicieron múltiples desarrollos matemáticos
que facilitaran la planeación de inventarios en las empresas.
Varios autores han realizado valiosos aportes que años después
conformaron todo el compendio de modelos de inventario (Harris, Taft,
Wagner & Whitin, etc.).
Entre ellos estos métodos encontramos:
EOQ (con todas sus variaciones y adiciones posteriores)
Lotes Dinámicos
Wagner-Whitin
News Vendor
Stock Base
Punto de Re-Orden
Modelos de Planeación de la
producción
Si bien los modelos de control de inventarios demostraron ser bastante
útiles en la administración de productos con demandas independientes,
no fueron lo suficientemente efectivos en procesos cuyo resultado final
fuese la fabricación o ensamble de artículos.
En estos modelos, la demanda independiente estaba asociada al
producto terminado, generando así una demanda dependiente a las
partes intermedias, demanda que no puede ser modelada por los
métodos tradicionales.
Es entonces cuando surge la necesidad de desarrollar nuevos métodos
capaces de responder a estos requerimientos
Hacia el último tercio del siglo XX, nacen los métodos de planeación de
la producción, desarrollos liderados básicamente por dos diferentes
ideologías, la norteamericana y la japonesa.
A continuación haremos una breve reseña de los modelos más
importantes de planeación de la producción.
Modelos de Planeación de la
producción
1. MRP (Material Requirements Planning): Desarrollado en la década
de los 60’s por Joseph Orlick, un ingeniero de sistemas que trabajando
para la IBM y basándose en el desarrollo de bases de datos, pudo
retroceder el proceso y los requerimientos de insumos, basado en la
demanda independiente de los productos terminados y la explosión de
materiales (composición del PT). De esta manera logró un sistema de
empuje (tipo PUSH) en el cuál los insumos eran procesados en la
medida que llegaban y posteriormente almacenados temporalmente
hasta lograr el ensamble del producto.
O1
A11 A12 O2
A21 A22 O3
A31 A32
Modelos de Planeación de la
producción
2. JIT (Just In Time): Desarrollado en la década de los 70’s en el
Japón por Taiichi Ohno para Toyota. Este modelo basado en el
consumo de productos en un supermercado, requiere que exista en
cada estación únicamente el material necesario para la exhibición o
en otras palabras, para la producción. Implica entonces la entrega
constante de materiales (arribos) y la utilización de controles para el
movimiento de productos (kanban), de manera que los insumos se
mueven en el proceso en forma de halado (tipo PULL), reduciendo el
nivel de inventarios y su respectivo costo.
O1 O2A1 O3
A2 A3
Modelos de Planeación de la
producción
3. DRB (Drum-Buffer-Rope): Basado en la teoría de restricciones
(TOC) desarrollada por Eliyahu Goldratt en la década de los 80’s.
DRB es el aplicación de esta teoría en un proceso productivo.
El Drum (tambor) se refiere a los cuellos de botella que marcan el paso del proceso.
El Buffer es un amortiguador de impactos que protege al throughput de las
interrupciones y asegura que el Drum nunca se quede sin material. En lugar de los
tradicionales Inventarios de Seguridad "basados en cantidades de material" los Buffer
del TOC están "basados en tiempo de proceso“, ubicados solo en ciertas locaciones
que se relacionan con restricciones especificas.
El tiempo de ejecución necesario para todas las operaciones anteriores al Drum, más
el tiempo del Buffer, es llamado "Rope-lenght" (longitud de la soga).La liberación de
materias primas y materiales, está entonces "atada" a la programación del Drum,
lográndose un flujo de materiales uniforme.
O1 O2A1 O3
A2 A3
Cuello de botella (Drum ó Tambor)
Modelos de Planeación de la
producción
4. Conwip (Constant Work in Process): Desarrollado en la década de
los 90’s por Hopp y Spearman. Este modelo que combina las mejores
características de los modelos PULL y PUSH (sus autores lo
denominan Long Pull), se basa en el mantenimiento de una cantidad
fija de inventario en proceso, apoyado en tarjetas CONWIP, las
cuales se asocian a la orden de trabajo a lo largo de la línea de
producción en vez de asociarse a una sola estación de trabajo como
ocurre con el KANBAN.
O1 O2A1 O3
A2 A3
Modelos de Planeación de la
producción
El CONWIP puede ser aplicado en entornos donde el KANBAN no
puede serlo, tal como ocurre cuando se modifica con frecuencia el
programa de producción. Además es posible extender la aplicación
del m ismo a líneas de montaje mostrándose como con el CONWIP
se alcanza una mayor producción en la línea con menores
inventarios en proceso.
El sistema CONWIP puede ser transformado con buenos resultados
en un sistema DBR en entornos donde se ha identificado un cuello
de botella bien diferenciado. Se ha visto que CONWIP y DBR
comparten características comunes. El papel de la “Rope” en el
DBR es sustituido por las tarjetas CONWIP. El “Drum” quedaría
sustituido por el mecanismo de control de las tarjetas en la
cabecera y el “Buffer” queda autorregulado con el CONWIP.
Modelos de Planeación de la
producción
Comparación de sistemas:
Industrias IO
Industrias IO fabrica autopartes para ser
utilizadas en posterior ensamblaje
La empresa cuenta con 3 procesos básicos de
transformación de materiales, así como con unos
almacenes temporales y finalmente la entrega al
cliente (ver diagrama parte derecha)
Los tiempos de operación en estos tres procesos
están distribuidos como se muestra en la
siguiente tabla:
Recepción
Pulidora
Rectificadora
Troqueladora
Producto
Terminado
Consumidor
Proceso Tiempo
Pulido e(10)
Rectificado n(20,10)
Troquelado e(15)
Industrias IO
La empresa cuenta con un almacén de materias primas que tiene al
comienzo de las operaciones 300 piezas para ser procesadas.
Estas piezas provienen de otras líneas de producción
Así mismo la empresa cuenta con dos tipos de recursos:
4 Operarios
2 Operadores
El tiempo de corrida de la simulación será de 72 horas continuas sin
turnos de trabajo.
Los almacenes temporales cuentan con una capacidad limitada
llamada BUFFER de manera que se controla la cantidad de material
en proceso a mantener
Bibliografía
BANKS, J., CARSON, J.S., NELSON,B.L., NICOL, D.M. Discrete-event
System Simulation. Prentice Hall International, 2001.
BLANCO Rivero, Luis. FAJARDO Piedrahita, Iván. Simulación con
promodel: casos de producción y logística. Escuela Colombiana de
Ingeniería, Bogotá, 2003.
GARCÍA, Eduardo. GARCÍA, Heriberto. CÁRDENAS, Leopoldo. Simulación
y análisis de Sistemas con Promodel. Prentice Hall, 2006.
Gross, Donald. Harris, Carl. Fundamentals of Queueing Theory. John Wiley
& Sons Inc. 1998.
HILLIER, F. LIEBERMAN, G. Investigación de Operaciones. Ed. McGraw
Hill, 7ª edición, Mexico, 2003
HOPP, Wallace., SPEARMAN, Mark., Factory Physics. Mc Graw Hill 2000.
N.U. Prabhu, Foundations of Queueing Theory. Kluwer Academic
Publishers, Ithaca, 2002
top related