Está en la página 1de 95

SISTEMAS DE SIMULACIN

NDICE
CAPITULO 1: Prueba de Bondad de Ajuste 1 1.1 Prueba ji cuadrada 1.2 Clculo de las frecuencias observadas y esperadas 1.3 Calculo del estadstico ji cuadrada 1.4 Determinacin de los grados de libertad en una prueba de bondad de ajuste 1.5 Uso de la prueba ji cuadrada de bondad de ajuste 1.6 Ejercicios CAPITULO 2: Simulacin Manual 2 2.1 Introduccin 2.2 Simulacin Monte Carlo CAPITULO 3: Introduccin a la Simulacin 3 3.1 Introduccin 3.2 Construccin de modelos 3.3 Modelos de simulacin 3.3.1 Simulacin del un Cajero de Banco 3.4 El proceso de simulacin CAPITULO 4: Elemento Bsicos de SIMNET II 4 4.1 Estructura del modelado 4.2 Representacin de proposiciones 4.2.1 Nodo Fuente 4.2.2 Nodo Cola 4.2.3 Nodo de Instalacin 4.2.4 Nodo Auxiliar 4.3 Reglas Bsicas para la Operacin de Nodos 4.4 Expresiones matemticas 4.5 Ejercicios CAPITULO 5: Desarrollo, Ejecucin y Rastreo de Modelos en SIMNET II 5 5.1 Segmentos de un modelo 5.2 Ejemplo de un modelo 5.3 Rastreo 5.4 Ejercicios M.C. Patricia T. Millet Bolio 1 4 4 4 5 6 6 7 9 9 11 17 17 17 18 18 20 22 22 23 24 26 28 29 30 31 33 35 35 37 40 41

SISTEMAS DE SIMULACIN

CAPITULO 6: Rutas de Transaccin en SIMNET II 6 6.1 Introduccin 6.2 La secuencia del siguiente nodo 6.3 Seleccin de ruta 6.4 Ruta goto (campo *t) 6.5 Ejercicios CAPITULO 7: Ramas en SIMNET II 7 7.1 Introduccin 7.2 Tipos de rama (SUBF1) 7.3 Condiciones de una rama (F2) 7.4 Asignaciones de rama (F3) 7.5 Variables estadsticas 7.6 Ejercicios CAPITULO 8: Interruptores Lgicos en SIMNET II 8 8.1 Introduccin 8.2 Definicin y uso de interruptores lgicos 8.3 Interruptores anidados 8.4 Ejercicios CAPITULO 9: Recursos en SIMNET II 9 9.1 Introduccin 9.2 Recursos sin prioridad 9.3 Prioridades y derechos de desalojo de recursos 9.4 Ejercicios CAPITULO 10: Ensamblar y Equiparar en SIMNET II 10 10.1 Introduccin 10.2 Operaciones de ensamblaje 10.3 Operaciones de equiparacin 10.4 Ejercicios CAPITULO 11: Comandos Especiales en SIMNET II 11 11.1 Introduccin 11.2 Activacin y desactivacin del nodo fuente M.C. Patricia T. Millet Bolio 2

42 42 42 42 45 50 53 53 53 55 56 58 62 64 64 64 66 68 69 69 69 73 77 78 78 78 80 81 82 82 82

SISTEMAS DE SIMULACIN 11.3 Recopilacin de variables estadsticas 11.4 Comandos para la manipulacin de archivos 11.5 Ejercicios CAPITULO 12: Datos Iniciales en SIMNET II 12 12.1 Introduccin 12.2 Entradas iniciales de archivo 12.3 Funciones de densidad continua y discreta 12.4 Funciones tipo tabla 12.5 Inicializacin de elementos de arreglo 12.6 Ejercicios BIBLIOGRAFA 83 84 87 89 89 89 90 91 92 94 95

M.C. Patricia T. Millet Bolio 3

SISTEMAS DE SIMULACIN

CAPITULO 1: PRUEBA DE BONDAD DE AJUSTE


1.1 PRUEBA JI CUADRADA La prueba ji cuadrada puede utilizarse para decidir si una distribucin particular de probabilidad, como la binomial, la de Poisson o la normal, es la distribucin apropiada. Esta es una tcnica importante, porque cuando se toman decisiones es necesario escoger cierta probabilidad de distribucin para aproximar la distribucin de los datos que se esta estudiando. La prueba ji cuadrada permite probar si existe una diferencia significativa entre una distribucin observada de frecuencia y una distribucin terica de frecuencia. De esa manera, se esta en condiciones de determinar la bondad de ajuste de una distribucin terica; en otras palabras, se puede precisar hasta que punto encaja en la distribucin de los datos que se han observado. As pues, es posible determinar si creer que los datos observados constituyen una muestra extrada de la supuesta distribucin terica. 1.2 CLCULO DE LAS FRECUENCIAS OBSERVADAS Y ESPERADAS Suponga que la Gordon Company exige que los universitarios del ltimo ao que buscan trabajo en ella sean entrevistados por tres ejecutivos. Esto le permite conseguir una evaluacin muy objetiva sobre cada candidato. Cada ejecutivo da al candidato una evaluacin positiva o negativa. La siguiente tabla contiene los resultados de la entrevista de los 100 ltimos candidatos. Evaluaciones positivas posibles en 3 entrevistas 0 1 2 3 Nmero de candidatos que reciben estas evaluaciones 18 47 24 11

Para planear la fuerza de trabajo, el director de reclutamiento piensa que el proceso de entrevista puede aproximarse mediante una distribucin binomial con una probabilidad del 40% de que cada candidato reciba una evaluacin positiva en cualquiera de las entrevistas. Si el director quiere probar esta hiptesis en una nivel de 0.20 de significancia, qu debe hacer?. Para resolver este problema, es preciso determinar si las discrepancias entre las frecuencias observadas y las que cabe esperar (si la distribucin binomial es el modelo apropiado en este caso) son atribuibles realmente al azar. Podemos empezar precisando cules deben ser las probabilidades binomiales para esta situacin de entrevistas. M.C. Patricia T. Millet Bolio 4

SISTEMAS DE SIMULACIN En el caso de tres entrevistas, se busca la probabilidad de xito en la tabla de distribucin binomial acumulativa, buscando la columna que tenga n=3 y p=40. Los resultados estn sintetizados en la siguiente tabla. Evaluaciones positivas posibles en 3 entrevistas 0 1 2 3 Probabilidades binomiales de estos resultados 1.0 0.7840 = 0.2160 0.7840 0.3520 = 0.4320 0.3520 0.0640 = 0.2880 0.0640

La siguiente tabla contiene las frecuencias observadas, las probabilidades binomiales apropiadas de la tabla anterior y las frecuencias esperadas de la muestra de 100 entrevistas. Evaluaciones Probabilidad positivas posibles binomial de los en 3 entrevistas resultados posibles 0 0.2160 1 0.4320 2 0.2880 3 0.0640 Nmero de candidatos entrevistados 100 100 100 100 Frecuencia esperada de los candidatos que reciben evaluaciones 21.6 43.2 28.8 6.4

1.3 CALCULO DEL ESTADSTICO JI CUADRADA Para obtener el estadstico ji cuadrada se aplica la siguiente ecuacin y se obtiene la siguiente tabla

( f o f f e )
e

Frecuencia observada (fo) 18 47 24 11

Frecuencia esperada (fe) 21.6 43.2 28.8 6.4

fo - fe -3.6 3.8 -4.8 4.6

(fo - fe)2 12.96 14.44 23.04 21.16

(fo - fe)2/ fe 0.6000 0.3343 0.8000 3.3063

fe ) ( fo f
e

= 5.0406

M.C. Patricia T. Millet Bolio 5

SISTEMAS DE SIMULACIN 1.4 DETERMINACIN DE LOS GRADOS DE LIBERTAD EN UNA PRUEBA DE BONDAD DE AJUSTE Si se quiere calcular el nmero apropiado de grados de libertad en una prueba ji cuadrada de bondad de ajuste, es necesario contar el nmero de clases (representado con k) para las cuales se ha comparado las frecuencias observadas y las previstas. Por tanto, en este caso se comienza con 4 grados de libertas. Pero como las cuatro frecuencias observadas deben sumar 100, el nmero total de las que podemos especificar libremente es apenas k 1, o sea 3. La cuarta esta determinada, porque el total de las cuatro debe sumar 100. La regla general es, primero se emplea la regla (k 1) y luego se resta un grado adicional de libertad para cada parmetro de poblacin que tenga que ser estimado de los datos de la muestra. 1.5 USO DE LA PRUEBA JI CUADRADA DE BONDAD DE AJUSTE En el problema de las entrevistas, la compaa desea probar la hiptesis de bondad de ajuste en un nivel de significancia de 0.20. As pues, se busca en la tabla dela ji cuadrada la columna con 0.20 y bajar hasta llegar al rengln que tiene 3 grados de libertad. En l encontramos que el valor del estadstico ji cuadrada en 4.642. Este valor se puede interpretar del modo siguiente: con 3 grados de libertad, la regin situada a la derecha del valor ji cuadrada de 4.642 contiene 0.20 del rea bajo la curva. Ntese que la regin de aceptacin (la que establece que los datos muestrales provienen de una distribucin binomial con p =0.40) se extiende del extremo izquierdo del valor de ji cuadrada de 4.642 (valores menores al crtico). Es obvio que el valor muestra ji cuadrada de 5.0406 cae fuera de esta regin de aceptacin. Por tanto, se rechaza la hiptesis y por tanto, se concluye que la distribucin binomial con p = 0.4 no ofrece una buena descripcin de las frecuencias observadas.

M.C. Patricia T. Millet Bolio 6

SISTEMAS DE SIMULACIN 1.6 EJERCICIOS 1. Tiempos de servicio en minutos para una muestra de 40 clientes. 0.43 0.71 0.03 0.44 0.41 0.07 0.2 0.16 0.17 0.62 0.51 0.28 0.23 0.84 0.14 0.21 0.05 0.23 0.83 0.14 0.53 0.48 0.21 0.11 0.03 0.26 0.28 0.19 0.07 0.27 0.02 0.10 0.02 0.75 0.2 0.17 0.16 0.01 0.13 0.30

Demostrar que la naturaleza de los datos anteriores coincide con una distribucin de densidad exponencial con un nivel de significancia de 0.05. f(x) = e -x F(x) = 1 e-x Media = 1 / Utilice 5 intervalos 2. Tiempos de servicio (en minutos) para una muestra de 60 clientes. 0.7 1.5 2.7 0.7 9.6 8.7 0.4 2.4 0.4 1.6 1.9 2.4 3.4 3.4 2.2 5.2 9.1 7.2 4.8 6.4 2.4 0.6 1.3 1.5 2.0 3.7 0.5 0.9 10.6 7.9 1.0 4.8 1.7 3.9 3.0 11.7 5.5. 2.5 9.3 3.3 0.3 6.3 6.2 5.5 8.0 0.2 2.9 3.8 1.2 0.3 4.7 0.2 2.9 6.9 4.4 8.7 5.9 4.9 4.8 5.3 Funcin Densidad de Probabilidad Funcin Acumulada de Probabilidad

Demostrar que la naturaleza de los datos anteriores coincide con una distribucin de densidad exponencial con un nivel de significancia de 0.05. f(x) = e -x F(x) = 1 e-x Media = 1 / Utilice intervalos de un minuto. 3. Luego de aos de trabajar en una estacin donde se pesan los camiones, Jaime Rojas piensa que el peso por camin sigue una distribucin norma con =71 y = 15. Con objeto de probar su suposicin, un lunes reuni los siguientes datos registrando el peso de cada camin que entre en la estacin M.C. Patricia T. Millet Bolio 7 Funcin Densidad de Probabilidad Funcin Acumulada de Probabilidad

SISTEMAS DE SIMULACIN

70 73 86 57 85

72 71 56 84 62

69 87 58 64 78

52 91 51 80 61

90 84 55 58 81

55 95 90 55 92

86 55 65 98 62

94 52 87 58 59

58 66 50 82 88

57 95 56 55 65

Si el seor Rojas aplic una prueba ji cuadrada de bondad de ajuste en estos datos, a qu conclusin llegar sobre la distribucin de los pesos de los camiones?. Utilice un nivel de significancia de 0.10 y 5 intervalos.

M.C. Patricia T. Millet Bolio 8

SISTEMAS DE SIMULACIN

CAPITULO 2: SIMULACIN MANUAL


2.1 INTRODUCCIN Mucha gente cree que la experiencia es el mejor maestro. Desafortunadamente, a menudo es muy costoso (en tiempo y dinero) obtener experiencia real. Este dilema es una motivacin importante para el uso de la simulacin: encontrar una manera rpida y econmica de adquirir un conocimiento que se obtiene usualmente a travs de la experiencia. La ida bsica de la simulacin es la construccin de un dispositivo experimental, o simulador, que actuara como (simulara) el sistema de inters en ciertos aspectos importantes, de una manera rpida y redituable. El objetivo consiste en crear un entorno en el cual se pueda obtener informacin sobre posibles acciones alternativas a travs de la experimentacin. El uso de la simulacin es fundamental para muchos experimentos aplicados; por ejemplo:

Pruebas de medicinas en animales de laboratorio. Aqu las respuestas del animal simulan las respuestas humanas. Manejar automviles en pistas de prueba. Aqu la pista de prueba simula las condiciones que enfrentar el automvil. Pruebas de diseo de alas de avin en tneles de viento. El tnel de viento simula las condiciones de vuelo. El entrenamiento de pilotos de aerolnea en cabinas reales con despliegues simulados fuera de las ventanas bajo condiciones simuladas.

En el contexto del anlisis cuantitativo, la simulacin ha venido a significar la experimentacin basada en un modelo matemtico. A pesar de que tanto la simulacin como la optimizacin (por ejemplo, mediante la programacin lineal) utilizan modelos cuantitativos, se basan en conceptos muy diferentes. La diferencia fundamental estriba en el papel que toman las variables de decisin en los dos enfoques.

En un modelo de optimizacin, los valores de las variables de decisin son resultados. Esto es, el modelo proporciona un conjunto de valores para las variables de decisin que maximiza o (minimiza) el valor de la funcin objetivo. En un modelo de simulacin, los valores de las variables de decisin son entradas. El modelo evala la funcin objetivo en relacin con un conjunto particular de valores.

M.C. Patricia T. Millet Bolio 9

SISTEMAS DE SIMULACIN

Para comprender lo que esto significa, considere el siguiente ejemplo. Suponga que un supermercado quiere decidir cmo distribuir su personal de caja (cajeros y empacadores) durante el fin de semana. El objetivo es minimizar el costo de mano de obra, sujeto a las restricciones impuestas por el contrato de trabajo y la restriccin de que los clientes no tengan que esperar demasiado. Si tuviramos un modelo de optimizacin, necesitaramos dar los parmetros del modelo. Quizs stos consistiran en cantidades, tales como la tasa de llegadas de los clientes, la distribucin del tiempo necesario para despachar a un cliente con y sin empacador, y as sucesivamente. Cuando el modelo estuviera resuelto, la respuesta incluira la mejor manera de distribuir el personal, el valor correspondiente de la funcin objetivo (el costo total), y una indicacin de la holgura existente en las restricciones. En un modelo de simulacin, las entradas incluiran los parmetros descritos arriba (tasa de llegada de clientes y dems), una expresin de la funcin objetivo (costos totales), y una asignacin posible del personal. El modelo producira un conjunto especfico de resultados, que mostrara qu tan bien se desempe la solucin segn varias medidas, tales como costo total, tiempo de esperad e los clientes, utilizacin del personal, etc. En general, el modelo mide la calidad de la solucin sugerida, as como cunta variabilidad puede existir en las diferentes medidas de desempeo debido a lo aleatorio de las entradas. La simulacin permite mucha experimentacin e interaccin con el constructor del modelo, pero no necesariamente optimiza el objetivo de inters. El simulador por lo general es un a manera mucho ms econmico y rpido para experimentar con muchos factores de inters. Con esta breve descripcin, parecera que nadie querra utilizar jams un modelo de simulacin. Por qu no utilizar un modelo que siempre da la mejor respuesta, es decir, un modelo de optimizacin? De hecho, en el pasado la simulacin a menudo se consideraba como una tcnica de ltimo recurso, para utilizarse nicamente cuando fallaban los mtodos analticos. Es cierto que si est disponible un modelo analtico, se pueden obtener resultados exactos rpidamente, y a menudo puede utilizarse algn procedimiento de optimizacin para determinar los resultados ptimos. Sin embargo, la simulacin hoy en da es una de las herramientas ms utilizadas del anlisis cuantitativo. Por qu son tan populares los modelos de simulacin?

Puede ser difcil o imposible obtener modelos analticos, dependiendo de factores de complicacin. Lo que es un factor de complicacin depende del modelo especfico. Entre los factores de complicacin para modelos de presupuesto de capital se incluye la demanda aleatoria. Los modelos analticos por lo general predicen solamente un comportamiento promedio o de estado estable (a largo plazo). En modelos de la vida real, sin embargo, a menudo es importante

M.C. Patricia T. Millet Bolio 10

SISTEMAS DE SIMULACIN comprender la variabilidad posible en las medidas de desempeo, o a la manera en que varan las medidas de desempeo a corto plazo.

La simulacin puede llevarse a cabo utilizando una amplia variedad de programas, desde los de hoja de clculo (Excel, Lotus), pasando por los complementos de hoja de clculo (Cristal Ball, @Risk) y los lenguajes generales de programacin para computadora (PASCAL, C++), hasta los lenguajes especialmente diseados para simulacin (SIMAN, SIMNET II). Puesto que hoy en da los modelos de simulacin pueden crearse y ejecutarse en una PC, el nivel de conocimiento de computacin y matemticas requeridos para disear y correr un simulador til se ha reducido considerablemente. Ahora resulta bastante razonable construir y utilizar un simulador, aun cuando est claro que se podra elaborar un modelo analtico (de optimizacin) con ms tiempo y esfuerzo.

La capacidad de los modelos de simulacin para tratar con la complejidad, manejar la variabilidad de las medidas de desempeo y reproducir el comportamiento a corto plazo permite que la simulacin sea una herramienta poderosa. 2.2 SIMULACIN MONTE CARLO Aqu se presentar un ejemplo del presupuesto de capital para mostrar el uso de una hoja de clculo en la simulacin y para establecer algunos puntos importantes sobre los resultados de una simulacin en hoja de clculo. Juan Martnez es el administrador de desarrollo de nuevos productos y est considerando las implicaciones financieras de una posible adicin a la lnea de equipo pesado de PROTRAC. Los costos de la puesta en marcha para el modelo G-9 propuestos (que incluye la compra de nuevo equipo, capacitacin del personal, etc.) estn estimados en $150,000. El nuevo producto ser vendido a un precio de $35,000 la unidad. Los costos fijos estn estimados en $15,000 al ao, mientras que el costo variable sera aproximadamente 75% de los ingresos de cada ao. La depreciacin fiscal sobre el nuevo equipo sera de $10,000 por ao durante los cuatro aos de vida productiva del G-9. El valor de salvamente del equipo al final de los cuatro aos es incierto, de modo que Juan lo estima de manera conservadora en cero. El costo de capital de PROTRAC es del 10% y su tasa de impuestos es de 34%. El aspecto ms incierto de la propuesta es la demanda por el nuevo producto. Si Juan conociera la demanda, calculara fcilmente el valor presente neto (VPN) de la propuesta utilizando un programa de hoja de clculo. Por ejemplo si Juan supone la demanda de los G-9 en 10 unidades en cada uno de los siguientes cuatro aos, el VPN sera de $12,455.60. M.C. Patricia T. Millet Bolio 11

SISTEMAS DE SIMULACIN

Hiptesis Costo de puesta en marcha Precio de venta Costos fijos Depreciacin anual Costos variables Costo de capital Tasa fiscal Demanda anual

$ 150,000 $ 35,000 $ 15,000 $ 10,000 75% 10% 34% 10

Aos 0 1 2 Demanda 10 10 Ingresos $ 350,000 $ 350,000 costo fijo $ 15,000 $ 15,000 Costo variable $ 262,500 $ 262,500 Depreciacin $ 10,000 $ 10,000 Ut. antes de impuestos $ 62,500 $ 62,500 Impuesto $ 21,250 $ 21,250 Ut. despus de impuesto $ 41,250 $ 41,250 Flujo neto de efectivo -$ 150,000 $ 51,250 $ 51,250 Valor presente neto $12,455.60

3 10 $ 350,000 $ 15,000 $ 262,500 $ 10,000 $ 62,500 $ 21,250 $ 41,250 $ 51,250

4 10 $ 350,000 $ 15,000 $ 262,500 $ 10,000 $ 62,500 $ 21,250 $ 41,250 $ 51,250

Sin embargo, es poco probable que la demanda sea exactamente igual cada ao. Juan siente que sera ms realista modelar la demanda cada ao no como un valor constante comn, sino como una secuencia de variables aleatorias. Este modelo de la demanda es apropiado cuando hay un nivel constate bsico de demanda que est sujeto a fluctuaciones aleatorias de un ao a otro. Cuando el nivel bsico de demanda es de 10 unidades, la demanda real para los siguientes cuatro aos puede resultar que sea de 12, 11, 10, 9 y 8, debido a los factores aleatorios que afectan la demanda. Juan decide generar la demanda aleatoria para cada uno de los cuatro aos para ver cul es el efecto que tiene la variabilidad de la demanda en el VPN. l supuso que la demanda en un ao ser de entre 12 y 8 unidades con una misma posibilidad de que ocurra cada valor. A continuacin se muestra que el VPN correspondiente a una secuencia aleatoria de demanda es de $ 17,705.60, aproximadamente 42% ms que el VPN si la demanda fuera constante en 10 por ao. Hiptesis Costo de puesta en marcha $ 150,000 M.C. Patricia T. Millet Bolio 12

SISTEMAS DE SIMULACIN Precio de venta Costos fijos Depreciacin anual Costos variables Costo de capital Tasa fiscal Demanda anual $ $ $ 35,000 15,000 10,000 75% 10% 34% 10

Aos 0 1 2 Demanda (aleatoria) 11 10 Ingresos $ 385,000 $ 350,000 costo fijo $ 15,000 $ 15,000 Costo variable $ 288,750 $ 262,500 Depreciacin $ 10,000 $ 10,000 Ut. antes de impuestos $ 71,250 $ 62,500 Impuesto $ 24,225 $ 21,250 Ut. despus de impuesto $ 47,025 $ 41,250 Flujo neto de efectivo -$ 150,000 $ 57,025 $ 51,250 Valor presente neto $17,705.60

3 10 $ 350,000 $ 15,000 $ 262,500 $ 10,000 $ 62,500 $ 21,250 $ 41,250 $ 51,250

4 10 $ 350,000 $ 15,000 $ 262,500 $ 10,000 $ 62,500 $ 21,250 $ 41,250 $ 51,250

Debido a que la demanda puede variar de una muestra a otra, tambin puede variar el VPN. Dicho de manera ms tcnica, la demanda consiste en variables aleatorias, por lo tanto el VPN tambin es una variable aleatoria. Juan se da cuenta de que necesita elaborar un modelo de simulacin para que le ayude a responder dos preguntas acerca de la distribucin del VPN: cul es la media o el valor esperado del VPN? y cul es la probabilidad de que el VPN asuma un valor negativo? As que el siguiente paso es ejecutar automticamente la simulacin cierto nmero de veces y capturar el VPN resultante. # Sim 1 2 3 4 5 6 7 8 9 VPN # Sim $17,705.60 26 -$10,623.10 27 -$19,383.61 28 -$ 5,065.43 29 $17,188.89 30 $ 6,771.72 31 $26,462.18 32 $14,277.92 33 $25,551.02 34 VPN # Sim $17,745.05 51 $ 3,304.59 52 -$ 4,461.94 53 $30,761.58 54 $ 7,517.21 55 $30,367.14 56 $16,356.62 57 $20,387.80 58 $17,705.60 59 VPN # Sim $35,577.69 76 $ 5,982.84 77 $20,273.41 78 $10,238.85 79 -$ 2,339.85 80 -$ 4,461.94 81 $31,195.46 82 $ 8,862.25 83 $40,350.42 84 VPN $17,745.05 $16,400.01 $16,234.34 $23,701.10 $ 9,339.53 -$ 9,317.50 $16,711.61 $13,015.71 $22,127.28

M.C. Patricia T. Millet Bolio 13

SISTEMAS DE SIMULACIN 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 $ 298.95 $16,360.56 $ 2,823.37 $ 1,166.72 -$ 994.81 $ 2,389.49 $ 2,038.44 $27,251.06 $10,755.57 $ 8,945.09 $11,583.89 -$ 1,945.41 $39,955.98 $21,133.29 $18,451.10 $ 8,676.87 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 $ 1,995.05 -$15,044.77 -$11,494.81 $15,106.24 $ 4,606.24 $26,071.68 $ 3,777.92 $ 5,505.57 $13,678.37 $15,528.29 $18,494.48 -$ 1,988.80 $11,161.84 $10,282.24 $34,749.37 $11,067.17 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 $15,571.68 $ 9,422.36 $39,955.98 -$ 5,373.10 -$ 3,645.45 $13,717.81 $11,232.84 -$15,044.77 $ 2,393.43 $34,272.10 $11,583.89 $ 5,434.57 $11,161.84 -$ 3,633.61 $ 4,089.53 $27,251.06 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 $13,804.59 $34,623.15 $ 3,821.31 $26,505.57 $12,972.32 $30,678.74 $ 2,783.93 $ 5,548.95 $ 7,600.04 $ 5,032.24 $32,106.62 $ 5,911.84 $26,505.57 $23,267.21 $27,333.89 $14,628.97

Analizando esta informacin se obtiene: VPN Media $12,281.06 Error tpico 1303.02625 Mediana 11408.3652 Moda 17705.6041 Desviacin estndar $13,030.26 Varianza de la muestra 169787742 Curtosis -0.28192256 Coeficiente de asimetra 0.05798574 Rango 59734.0346 Mnimo -$19,383.61 Mximo $40,350.42 Suma 1228106.43 Cuenta 100 Nivel de confianza(95.0%) $ 2,585.49

Intervalo de confianza Limite inferior $ 9,695.58 Limite superior $14,866.55

Aunque los datos anteriores ofrecen ms informacin que el caso bsico de VPN, existen otros factores que debemos considerar. Qu tan posible es que ocurran los resultado extremos (mejor caso, pero caso)?. A fin de responder a esta pregunta, es necesario saber algo acerca de la forma de la distribucin del VPN. A continuacin se presenta un histograma (distribucin grfica de los VPN) y una tabla de frecuencia numrica. Clase Frecuencia % acumulado -$ 19,383.61 1 1.00% -$ 13,410.21 2 3.00% M.C. Patricia T. Millet Bolio 14

SISTEMAS DE SIMULACIN -$ 7,436.81 -$ 1,463.40 $ 4,510.00 $ 10,483.40 $ 16,456.81 $ 22,430.21 $ 28,403.61 $ 34,377.02 Y mayor... 3 9 13 17 21 12 10 6 6 6.00% 15.00% 28.00% 45.00% 66.00% 78.00% 88.00% 94.00% 100.00%

Histograma
25 20 Frecuencia 15 10 5 0
-$ 19 ,3 83 .6 -$ 1 13 ,4 10 .2 1 -$ 7, 43 6. 81 -$ 1, 46 3. 40 $4 ,5 10 .0 0 $1 0, 48 3. 40 $1 6, 45 6. 81 $2 2, 43 0. 21 $2 8, 40 3. 61 $3 4, 37 7. 02 y m ay or ...

120.00% 100.00% 80.00% 60.00% 40.00% 20.00% .00%

Clase Frecuencia % acumulado

Juan ahora tiene las respuestas a sus dos preguntas acerca de la distribucin del VPN: cul es el valor medio del VPN?($12,281.06) y cul es la probabilidad de que el VPN asuma un valor negativo? (mayor del 15%). Otras preguntas que podran surgir son: cunta confianza se tiene en las respuestas obtenidas?se tendra ms confianza si se hicieran ms ensayos? Con certeza, se piensa que entre ms ensayos se hagan, ms confianza habr en las respuestas. Pero qu tanta confianza podemos tener en las 100 iteraciones que ya se hicieron?. Basndose en la estadstica, se pueden construir intervalos de confianza con base en los resultados ya obtenidos. En este caso, el anlisis se hizo con un intervalo de confianza del 95%, obteniendo que la verdadera media del VPN est en algn punto entre $9,695.58 y $14,866.55. En resumen, Juan necesita ms de 100 ensayos si desea respuestas ms precisas a sus preguntas. qu es lo que se ha aprendido?

M.C. Patricia T. Millet Bolio 15

SISTEMAS DE SIMULACIN

Aumentar el nmero de ensayos puede dar una mejor estimacin del rendimiento esperado, pero incluso con un mayor nmero de ensayos puede haber alguna diferencia entre el promedio simulado y el rendimiento esperado real. Observe que el VPN esperado real en el ejemplo es de $12,455.60; el VPN promedio con 100 muestras fue de $12,281.06 (un error de 1.42%). Las simulaciones pueden proporcionar informacin til sobre la distribucin de resultados. Incluso con una muestra pequea de 100 ensayos hubo una indicacin (una probabilidad de mayor que 0.15) de que el proyecto puede resultar en un VPN negativo. sta es informacin valiosa y es algo que no se podra haber determinado con slo el anlisis del caso bsico, o incluso con un anlisis de riesgo. Los resultados de la simulacin son sensibles a las hiptesis que afectan los parmetros de entrada. Si Juan cambiara sus suposiciones acerca de la distribucin de la demanda (a una distribucin de Poisson con la misma media de 10), habra un impacto importante en la probabilidad de que se produjera un VPN negativo (se incrementa de aproximadamente 0.15 a poco ms del 0.45).

Quizs el impacto ms importante de la simulacin ocurre en el proceso de toma de decisiones. Si Juan no hubiera llevado a cabo algn anlisis de simulacin, habra dado una entusiasta recomendacin a la propuesta de adicin a la lnea de equipo pesado, con base en la media del VPN. Sin embargo, despus de llevar a cabo la simulacin, l piensa que el proyecto es muy arriesgado como para recomendarlo. Si bien ste es un juicio cualitativo de su parte, l puede apoyarlo con los resultados cuantitativos del modelo de simulacin. Es importante recordar, que los modelos no liberan a las personas de la responsabilidad de tomar decisiones, pero s proporcionan informacin adicional para tomar esas decisiones de una manera bien informada.

M.C. Patricia T. Millet Bolio 16

SISTEMAS DE SIMULACIN

CAPITULO 3: INTRODUCCIN A LA SIMULACIN


3.1 INTRODUCCIN Los problemas que enfrentan la rama industrial, comercial, gubernamental y la sociedad en general continan creciendo en tamao y complejidad. La necesidad de procedimientos y tcnicas para resolver dichos problemas es apremiante. Este libro esta centrado en el uso de la modelacin y, en particular, la simulacin para la resolucin de problemas. Los modelos de simulacin pueden Ser usados en cuatro niveles:

Como medios para explicar o definir un sistema o problema. Como un medio de anlisis para determinar elementos crticos y componentes. Como herramienta de diseo para sintetizar y evaluar soluciones propuestas. Como herramienta para pronosticar y planear desarrollos futuros.

Para resolver un problema utilizando modelos de simulacin, es necesario entender el sistema y definir los problemas relacionados a dicho sistema. Los modelos deben ser desarrollados para resolver un problema especfico. La forma del modelo, aunque depende de la experiencia del diseador, requiere una estructura organizada para la visualizacin de los sistemas. Un lenguaje de simulacin proporciona este medio de visualizacin. Adems traduce la descripcin de un modelo en algo entendible para un sistema de computo. La computadora es utilizada para ejecutar el modelo y generar salidas que pueden ser analizadas para tomar decisiones relacionadas a la solucin de problemas. El objetivo primario de este libro es la presentacin, documentacin y uso del SIMNET II como un lenguaje de simulacin. 3.2 CONSTRUCCIN DE MODELOS Un modelo es la descripcin de un sistema, por lo tanto, es tambin una abstraccin del sistema. Para desarrollar una abstraccin, el constructor del modelo debe decidir los elementos del sistema a incluir en el modelo. Para tomar esta decisin, es necesario decidir el propsito de la construccin del modelo. Y basndose en esto, se decide si un elemento del sistema es significativo y debe estar incluido en el modelo. El xito del modelo depende en que tan bien se pueden identificar los elementos significativos del sistema y las relaciones entre ellos.

M.C. Patricia T. Millet Bolio 17

SISTEMAS DE SIMULACIN 3.3 MODELOS DE SIMULACIN En este libro, tiene como centro nicamente los modelos de simulacin que son construidos para ser analizado mediante computadoras. En este contexto, un modelo de simulacin es una representacin lgico-matemtica de un sistema que puede ser ejecutado en forma experimental en una computadora. Por lo tanto, un modelo de simulacin puede ser considerado como la versin de laboratorio de un sistema. Una vez que un modelo de simulacin a sido desarrollado, pueden ejecutarse mltiples experimentos. Estos experimentos, o simulaciones, permiten hacer deducciones sobre el sistema

Sin construirlo, si solo es una propuesta. Sin perturbarlo, si la experimentacin en el sistema es costosa o insegura. Sin destruirlo, si el objetivo de la experimentacin es determinar sus lmites.

Por lo tanto, los modelos de simulacin, pueden ser usados para diseo, anlisis de proceso y evaluacin de rendimientos. La simulacin asume que un sistema puede ser descrito en trminos aceptables para una computadora. Para esto, un concepto bsico es la descripcin del estado de un sistema. Si un sistema puede ser caracterizado por un grupo de variables, cuya combinacin de valores representa un estado o condicin nica del sistema, entonces la manipulacin de los valores de las variables simula movimientos del sistema de un estado a otro. Esto es exactamente lo que es la simulacin: la representacin del comportamiento dinmico de un sistema mediante su movimiento de un estado a otro en concordancia con reglas de operacin perfectamente definidas. 3.3.1 Simulacin del un Cajero de Banco Para ejemplificar el concepto de simulacin, a continuacin se examinar el proceso por el que pasan los clientes en una cajero. Los clientes llegan al sistema, cuando el cajero esta ocupado esperan en una cola enfrente del cajero, se asume que el tiempo de llegada de los clientes y el tiempo de servicio en el cajero para cada cliente es conocido. Estos valores se muestran en la siguiente tabla. El objetivo es simular manualmente el sistema para determinar el porcentaje de tiempo que el cajero esta ocioso y el tiempo promedio que un cliente pasa en el banco.

M.C. Patricia T. Millet Bolio 18

SISTEMAS DE SIMULACIN # de cliente 1 2 3 4 5 6 7 8 9 10 Tiempo de llegada (min) 3.2 10.9 13.2 14.8 17.7 19.8 21.5 26.3 32.1 36.6 Tiempo de servicio (min) 3.8 3.5 4.2 3.1 2.4 4.3 2.7 2.1 2.5 3.4

Dado que la simulacin es la representacin dinmica de los cambios de estado de un sistema en el tiempo, el estado del sistema debe ser definido. Para este ejemplo, puede ser definido por el estado del cajero (ocupado o libre) y por el nmero de clientes en el banco. El estado del sistema cambia por: la llegada de un cliente al banco y por la finalizacin de un servicio en el cajero y la consecuente salida del cliente del sistema. Para ilustrar la simulacin, se determinara el estado del sistema en el tiempo procesando los eventos relacionados con las llegadas y salidas de los clientes en una ordenada secuencia de tiempos. La simulacin manual de este ejemplo se muestra en la siguiente tabla. Se asume que inicialmente no hay clientes en el sistema, el cajero esta libre y el primer cliente llega a los 3.2 minutos. Tiempo de inicio de servicio 3.2 10.9 14.4 18.6 21.7 24.1 28.4 31.1 33.2 36.6

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

Tiempo de llegada 3.2 10.9 13.2 14.8 17.7 19.8 21.5 26.3 32.1 36.6

Tiempo de salida 7 14.4 18.6 21.7 24.1 28.4 31.1 33.2 35.7 40

Tiempo en la Tiempo en el cola banco 0 0 1.2 3.8 4 4.3 6.9 4.8 1.1 0 3.8 3.5 5.4 6.9 6.4 8.6 9.6 6.9 3.6 3.4

En la siguiente tabla se simula el mismo ejemplo pero analizndolo desde el punto de vista de los eventos.

M.C. Patricia T. Millet Bolio 19

SISTEMAS DE SIMULACIN Tiempo del evento 0 3.2 7 109 13.2 14.4 14.8 17.7 18.6 19.8 21.5 21.7 24.1 26.3 28.4 31.1 32.1 33.2 35.7 36.6 40 # de cliente 1 1 2 3 2 4 5 3 6 7 4 5 8 6 7 9 8 9 10 10 Tipo de evento Inicio Llegada Salida Llegada Llegada Salida Llegada Llegada Salida Llegada Llegada Salida Salida Llegada Salida Salida Llegada Salida Salida Llegada Salida Tamao de cola 0 0 0 0 1 0 1 2 1 2 3 2 1 2 1 0 1 0 0 0 0 Clientes en el banco 0 1 0 1 2 1 2 3 2 3 4 3 2 3 2 1 2 1 0 1 0 Tiempo Estado del ocioso del cajero cajero Libre Ocupada 3.2 Libre Ocupado 3.9 Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Ocupado Libre Ocupado 0.9 Libre

Analizando las tablas anteriores, se observa que:


El tiempo promedio de un cliente en cola es de 2.61 minutos. El tiempo promedio de un cliente en el banco es de 5.81 minutos. El nmero promedio de clientes en el banco en los primeros 40 minutos es de 1.4525. El cajero esta libre el 20% del tiempo de simulacin.

3.4 EL PROCESO DE SIMULACIN En el proceso de simulacin se pueden observar los siguientes pasos: 1. Formulacin del problema: La definicin del problema incluyendo el objetivo de solucin. 2. Construccin del modelo: La abstraccin del sistema en relaciones lgico-matemticas en concordancia con la formulacin del problema. M.C. Patricia T. Millet Bolio 20

SISTEMAS DE SIMULACIN 3. Adquisicin de datos: La identificacin, especificacin y recoleccin de datos. 4. Traduccin del modelo: La preparacin del modelo para ser procesado por medio de una computadora. 5. Verificacin: Proceso de determinar que el programa de computo esta ejecutando lo deseado. 6. Validacin: Proceso de determinar concordancia entre el modelo de simulacin y el sistema real. 7. Planeacin estratgica y tctica: Proceso de experimentar diversas condiciones utilizando el modelo. 8. Experimentacin: La ejecucin del modelo de simulacin para obtener valores de salida. 9. Anlisis de resultados: Proceso de anlisis de las salidas de la simulacin para hacer inferencias y recomendaciones sobre la solucin del problema 10. Implementacin y documentacin: Implementar la decisin resultante de la simulacin y la documentacin del modelo utilizado.

M.C. Patricia T. Millet Bolio 21

SISTEMAS DE SIMULACIN

CAPITULO 4: ELEMENTOS BSICOS DE SIMNET II


4.1 ESTRUCTURA DEL MODELADO El diseo de SIMNET II considera los modelos de simulacin discreta como sistemas de colas. El lenguaje se basa en un enfoque de redes que utiliza tres nodos sugestivos: una fuente (source) de la que llegan las transacciones (clientes), una cola (queue) donde ocurre la espera y una instalacin (facility) donde se realiza el servicio. Se agrega un cuarto nodo, auxiliar (auxiliary), para incrementar las capacidades del lenguaje.
NODOS EN UNA RED SIMNET II

SOURCE

QUEUE

FACILITY

AUXILIARY

NAME *S ALMACEN *S CAMPOS : 8

NAME

*Q

NAME *F CNC 6 *F

NAME CICLO 4

*A *A

LAVADO *Q 6

Los nodos en SIMNET II se conectan mediante ramas. A medida que las transacciones (tambin llamadas entidades) recorren las ramas, llevan a cabo funciones importantes que incluyen:

Controlar el flujo de transacciones en cualquier lugar de la red. Reunir estadsticas pertinentes. Ejecutar clculos aritmticos.

SIMNET II utiliza asignaciones especiales, A = B para controlar el flujo de las transacciones. 1(Q1) = J(Q2) lo que hace es mover la transaccin en la posicin J de la fila Q2 a la primera posicin de la fila Q1. Adems ejecuta enunciados controlar el flujo de las transacciones. Ejemplo:
IF, LEN(Q1) > LEN(Q2), THEN, LAST(Q1)=LAST(Q2), ELSE, 1(Q1)=1(Q2), ENDIF:

condicionales

IF-THEN-ELSE-ENDIF

para

M.C. Patricia T. Millet Bolio 22

SISTEMAS DE SIMULACIN Durante la prctica de la simulacin, SIMNET II registra las transacciones colocndolas en archivos. Un archivo se considera un arreglo de dos dimensiones en el que cada rengln o fila almacena informacin acerca de una sola transaccin. Las columnas del arreglo representan los atributos que permiten al modelador seguir las caractersticas nicas de cada transaccin. Los atributos son considerados variables locales que se mueven con sus respectivas transacciones, a donde quiera que vayan en la red del modelo. SIMNET II utiliza tres tipos de archivos.

Eventos tipo calendario Cola. Instalacin.

El evento tipo calendario es el archivo principal que deriva la simulacin. Actualiza y registra de forma automtica los eventos del modelo en un orden cronolgico apropiado. SIMNET II mantiene automticamente las operaciones de los archivos de colas e instalaciones. 4.2 REPRESENTACIN DE PROPOSICIONES
SOURCE CAMPOO QUEUE FACILITY AXILIARY

El formato general de la proposicin de SIMNET II es:


IDENTIFICADOR DE NODO;CAMPO1;CAMPO2;...;CAMPO M:

Un identificador de nodo consiste en un nombre arbitrario definido por el usuario (12 caracteres mximo) seguido por uno de los cdigos *S, *Q, *F o *A que identifica el nombre como una fuente, una cola, una instalacin o un auxiliar. Los campos describen caractersticas especiales de cada nodo, se separan con punto y coma, y la proposicin debe terminar con dos puntos. Ejemplo:
LLEGADA RAMA QQ *S;EX(5);;;;LIM=100: *B;QQ;;A(1)=1%: *Q:

La fuente LLEGADA crea un mximo de 100 transacciones y el tiempo entre llegadas se determina a partir de una distribucin exponencial con una media de 5 unidades de tiempo. Una rama conecta la fuente LLEGADA a la cola QQ. Una M.C. Patricia T. Millet Bolio 23

SISTEMAS DE SIMULACIN transaccin que atraviese la rama tendr su primer atributo A(1) igualado a 1 antes de entrar en QQ. Todos los campos de una proposicin son posicionales en el sentido de que su orden debe preservarse. Si un campo no se utiliza o se deja, su orden se preserva con puntos y comas consecutivos. Ejemplo:
LLEGADA LLEGADA LLEGADA *S;10;;;;LIM=500: *S;10;/L/LIM=500: *S;10;/5/LIM=500:

El cdigo de SIMNET II es de formato libre, as como insensible a maysculas/minsculas. Una proposiciones puede dividir entre cualquier nmero de lneas consecutivas finalizando cada lnea con un ampersand (&). Por ejemplo, la proposicin LLEGADA se codifica de forma equivalente como:
LLEGADA *S;EX(5);;;;LI& M=100: !Linea 1 de llegada !Linea 2 de llegada

Una lnea de SIMNET II puede incluir un comentario, que se prefija con un signo de exclamacin (!). 4.2.1 Nodo Fuente El nodo fuente sirve para crear la llegada de transacciones a la red. A continuacin se presentan las definiciones de sus campos y sus smbolos grficos.

Ejemplos:

Una fuente crea transacciones cada 5 minutos, La primera transaccin ocurre al tiempo cero. Las transacciones creadas son terminadas.
5 FUENTE TERM

FUENTE *S;5;GOTO-TERM:

Si las transacciones no son terminadas usando el campo GOTO, las transacciones sern destruidas.
5 FUENTE

M.C. Patricia T. Millet Bolio 24

SISTEMAS DE SIMULACIN
FUENTE *S;5:

Clientes llegan a una instalacin de registro automovilstico. Se les asigna individualmente un nmero de serie para indicar el orden en que sern atendidos. El tiempo entre llegadas es exponencial con media de 12 minutos. El primer cliente llega generalmente 10 minutos despus de que la instalacin empieza a operar.

EX(12) -1

10 TERM

CLIENTES CLIENTES *S;EX(12);10;-1;*TERM:

Cada 5 minutos llegan televisores para ser empacados. Se desea mantener un registro de los tiempos de llegada de cada transaccin en el atributo 2.
5 2 TV EMPAQUE TERM

TV *S;5;;2;*EMPAQUE: TV *S;5;;2;GOTO-EMPAQUE:

Troncos llegan a un aserradero en camiones con una distribucin uniforme UN(2,3). La carga de un camin incluye 15 troncos. El aserradero procesa un tronco a la vez.

UN(3,2) MULT=1 5 TRONCOS COLA

TERM

TRONCOS *S;UN(2,3);/M/MULT=15;*COLA: TRONCOS *S;UN(2,3);;;MULT=15;GOTO-COLA:

4.2.2 Nodo Cola El nodo cola simplemente puede recibir transacciones, no es capaz de iniciar su movimiento. Cuando una transaccin llega y no puede ser atendida M.C. Patricia T. Millet Bolio 25

SISTEMAS DE SIMULACIN inmediatamente por el servidor, esta tiene que esperar en la cola hasta que el servidor quede libre. La siguiente tabla resume los datos de la cola. Q-nombre *Q;F1(SUBF1);F2(SUBF2);F3;F4;F5;*T:
F1 F2 SUBF1 SUBF2 F3 F4

Identificador de campo F1 SUBF1 F2 SUBF2 F3 F4 F5 /D/ /S/ /R/ Tamao mximo de la cola Nmero inicial de la cola Nmero de transacciones en espera que se requieren para crear una transaccin que sale Regla para calcular los atributos de las transacciones que salen cuando F2>1: SUM,
PROD, FIRST, LAST, HI(#),LO(#)

Valor por omisin Infinito 0 1 Last

Disciplina de cola: FIFO,LIFO,RAN, HI(#), LO(#) FIFO Regla de seleccin de salida Ninguno Recursos devueltos por la cola Ninguno Lista de nodos alcanzados desde la cola por *T Ninguno transferencia directa. Reglas de los atributos de las transacciones en colas acumuladas Regla Descripcin SUM Suma de los atributos de una transaccin acumulada PROD Producto de los atributos de una transaccin acumulada FIRST Atributos de la primera transaccin de las acumuladas LAST Atributos de la ltima transaccin de las acumuladas HI(#) Atributos de la transaccin que tenga el ms alto A(#) entre todas las acumuladas. LO(#) Atributos de la transaccin que tenga el ms bajo A(#) entre todas las acumuladas. Disciplina de cola Transaccin que sale Primera entrada, primera salida Ultima entrada, primera salida Seleccin aleatoria Transaccin que tenga el ms alto A(#)

Disciplin a FIFO LIFO RAN HI(#)

M.C. Patricia T. Millet Bolio 26

SISTEMAS DE SIMULACIN LO(#) Transaccin que tenga el ms bajo A(#)

Ejemplo: Trabajos urgentes y regulares. Trabajos urgentes y regulares llegan a un taller de forma aleatoria; los trabajos urgentes tienen prioridad para su procesamiento.
C_TRABAJO *Q;;;HI(1):

El atributo 1 representa el tipo de trabajo usando A(1)=0 y A(1)=1 para etiquetar los trabajos regulares y los urgentes, respectivamente. Estos trabajos se ordenan en la cola trabajo en orden ascendente de A(1) con el uso de la disciplina en cola HI(1). Se pueden eliminar los puntos y comas para valores iniciales al escribir las instrucciones como:
C_TRABAJO *Q;/D/HI(1):

Ejemplo: Empaque Se empacan cuatro unidades de un producto en una caja de cartn. El rea de transferencia tiene capacidad para un mximo de 75 unidades. Inicialmente, la transferencia tiene 30 unidades.
C_TRANS *Q;75(30);4:

El campo 1 fija la capacidad mxima de la cola (75) y el nmero inicial en el sistema (30). El campo 2 indica que cuatro unidades del producto se convertirn en una sola caja de cartn. Debido a los valores por omisin, los atributos de la transaccin caja de cartn sern iguales a los de la ltima (last) de las cuatro transacciones que forman la caja de cartn. La disciplina de la cola es FIFO porque el campo 3 tiene los valores por omisin. 4.2.3 Nodo de Instalacin Un nodo de instalacin consiste en uno o ms servidores paralelos (idnticos). Cuando todos los servidores estn ocupados, no entran nuevas transacciones en la instalacin. Cuando un servidor completa un servicio, la instalacin intenta, de manera automtica, tirar de una nueva transaccin de una cola anterior, si existe alguna. De otra forma, la instalacin queda inactiva hasta que entra una nueva transaccin. En la siguiente tabla se proporciona la descripcin de los campo de este nodo.

M.C. Patricia T. Millet Bolio 27

SISTEMAS DE SIMULACIN F-nombre *F;F1;F2;F3(SUBF3);F4;F5;*T: F1 F2 F3 (SUBF3) Identificador de campo F1 F2 F3 SUBF3 F4 F5 *T Regla para seleccionar una cola de entrada Tiempo de servicio Nmero de servidores paralelos Nmero inicial de servidores ocupados Regla de seleccin de salida Recursos adquiridos/liberados por la instalacin Lista de nodos alcanzados desde la cola por transferencia directa. Valor por omisin Ninguno 0 1 0 Ninguno Ninguno Ninguno F4

/S/ /R/

Ejemplo: Multiservidores Una instalacin de tres servidores comienza con dos servidores ocupados. El tiempo de servicio es exponencial con media de 15 minutos. Las unidades que completan el servicio se retiran del sistema.
SERVIDOR *F;;EX(15);3(2);GOTO-TERM:

El campo 1 no se necesita porque slo se usa cuando la instalacin tiene mltiples colas de entrada. El tiempo de servicio de ex(15) minutos se da en el campo 2 (es posible usar cualquier expresin matemtica en este campo). El campo 3 muestra que la instalacin tiene tres servidores paralelos, y dos servidores estn inicialmente ocupados. El campo GOTO termina la transaccin completa con el uso de la palabra TERM como destino. Ejemplo: Servidores ocupados Un pequeo taller tiene una mquina y 10 trabajos pendientes, adems del trabajo que se est procesando en ese momento. El tiempo de proceso por trabajo es uniforme entre 20 y 30 minutos.
C_TRABAJO *Q;(10): TRABAJO *F;;UN(20,30);(1);GOTO-TERM:

Debido a que TRABAJO inicialmente est ocupado, como lo indica la entrada (1) en el campo 3, la instalacin procesar su trabajo residente en UN(20,30) minutos. Despus de que el trabajo sale de TRABAJO para ser terminado, la instalacin, de forma automtica, mirar hasta atrs y tirar de un nuevo trabajo M.C. Patricia T. Millet Bolio 28

SISTEMAS DE SIMULACIN de C_TRABAJO. El proceso se repite hasta que todos los 10 trabajos estn procesados. 4.2.4 Nodo Auxiliar El auxiliar es un nodo de capacidad infinita que acepta todas las transacciones entrantes. El nodo generalmente es adecuado para representar retardos. Tambin, el auxiliar es el nico nodo que puede entrar por s mismo, caracterstica que en particular es til para simular iteraciones. En la siguiente tabla se describe los campos de este nodo. A-nombre *A;F1;F2;F3;*T: F1 F2

Identificador de campo F1 F2 F3 *T /S/ /R/ Tiempo de retraso Regla para seleccionar el nodo de salida Recursos liberados por la instalacin Lista de nodos alcanzados desde el auxiliar por transferencia directa

Valor por omisin 0 Ninguno Ninguno Ninguno

Ejemplo: Retraso antes de cola Los aspirantes a un trabajo llegan a una oficina de empleo cada EX(25) minutos. Cada aspirante llena un formato y espera a ser entrevistado. Lleva aproximadamente 15 minutos completar el formato.
LLEGADA *S;EX(25): FORMATO *A;15: ESPERA *Q:

El llenado del formato se representa con el auxiliar de capacidad infinita FORMATO porque se supone que los formatos estn disponibles de inmediato para los aspirantes que llegan. 4.3 REGLAS BSICAS PARA LA OPERACIN DE NODOS M.C. Patricia T. Millet Bolio 29

SISTEMAS DE SIMULACIN A continuacin se resumen una serie de reglas de SIMNET II para la operacin de nodos fuente, instalacin, cola y auxiliar. Violaciones a estas reglas sern detectadas por SIMNET II y reportadas como error. 1. No se puede entrar a una fuente desde ningn nodo, incluyendo otra fuente. 2. Una cola no abastece de forma directa a otra cola, ni se retroalimenta a s misma. 3. Las instalaciones pueden seguir una a otra sin intervencin de las colas. Sin embargo, una instalacin no se alimenta directamente a s misma. 4. Un auxiliar es el nico nodo que se alimenta a s mismo de forma directa. 5. Una transaccin saltar una cola si la cola no est llena a su capacidad y su nodo sucesor acepta la transaccin, aunque la cola ste ocupada cuando llega la nueva transaccin. 6. Si una instalacin est precedida por una cola, la instalacin de forma automtica intentar sacar inmediatamente una transaccin que est en espera cuando se completa un servicio. Si la cola est vaca, la instalacin estar inactiva hasta que sea revivida por la llegada de una nueva transaccin. 7. El movimiento de entrada y salida de transacciones de la cola solo puede ser iniciado por otros nodos. La cola por s misma no es capaz de iniciar este movimiento. 8. Cuando las instalaciones siguen una a otra en tndem o cuando las colas que intervienen tienen capacidades limitadas, una transaccin que completa el servicio en una de las instalaciones ser bloqueada si su nodo sucesor es una cola llena (finita) o una instalacin ocupada. El desbloqueo ocurrir de manera automtica en un efecto de cadena cuando la causa del bloqueo desaparezca.

4.4 EXPRESIONES MATEMTICAS Las expresiones matemticas son utilizadas para representar ciertas caractersticas de los nodos, como el intervalo de tiempo en un nodo fuente. Tambin pueden ser utilizadas con expresiones aritmticas o condicionales. Las reglas para construir y evaluar expresiones matemticas en SIMNET II son las mismas que en FORTRAN. Las operaciones aritmticas incluyen adicin (+), substraccin (-) , multiplicacin (*), divisin (/) y potenciacin (**). A continuacin se presentan tablas parciales de las diversas funciones utilizadas en SIMNET II. M.C. Patricia T. Millet Bolio 30

SISTEMAS DE SIMULACIN

Funciones Intrnsecas Algebraicas Argumento simple Argumento doble Argumento mltiple Trigonomtricas Regular Arco Hiperblicas INT, ABS, EXP, SQRT, SIGN, LOG, LOG10 MOD MAX, MIN SIN, COS, TAN ASIN, ACOS, ATAN SINH, COSH, TANH

Funciones Aleatorias Definicin Muestra exponencial con media P1 con el uso de la serie aleatoria RS* NO(P1,P2,RS) Muestra normal con media P1 y desviacin estndar P2 PO(P1,RS) Muestra de poisson con media P1 RND(RS) Muestra aleatoria [0,1] TR(P1,P2,P3,RS) Muestra triangular en el intervalo [P1,P3] con moda P2 UN(P1,P2,RS) Muestra uniforme en el intervalo [P1,P2] Funcin EX(P1,RS)
* Los argumentos P1, P2 y P3 y la serie aleatoria RS pueden ser cualesquiera expresiones matemticas. RS debe asumir un valor entero no-cero en el rango [-50, +50] correspondiente a 100 series aleatorias de SIMNET II.

Variables de Simulacin Definicin Nmero de transacciones que quedan en el nodo auxiliar LEN/HLEN/LLEN/ALEN(cola o Longitud actual/ms alto/ms bajo/promedio de instalacin) cola o instalacin VAL/HVAL/LVAL/AVAL Valor actual/ms alto/ms bajo/promedio de una (variable) variable estadstica LEV/HLEV/LLEV/ALEV Nivel actual/ms alto/ms bajo/promedio de un (recurso) recurso COUNT(nodo, recurso o Nmero de transacciones que salieron de un variable) nodo desde que comenz la simulacin o nmero de actualizaciones de un recurso o una variable RUN.LEN Longitud de la corrida actual CUR.TIME Tiempo de simulacin actual OBS Nmero de observaciones estadsticas actuales NOBS Total de observaciones por corrida M.C. Patricia T. Millet Bolio 31 Variable LEN(auxiliar)

SISTEMAS DE SIMULACIN RUN NRUNS AQWA(cola) AQWP(cola) AFBL(instalacin) AFTB(instalacin) AFIT(instalacin) AFBT(instalacin) ARTU(recurso) ARTT(recurso) ARBT(recurso) ARIT(recurso) NTERM(nodo) NDEST(nodo) Nmero de estadsticas por corrida actuales Nmero totales de corridas Promedio de espera en una cola incluyendo los que no esperan Promedio de espera en cola para los que tienen que esperar Promedio de bloqueo en una instalacin Tiempo promedio de bloqueo en una instalacin Tiempo promedio que una instalacin esta libre Tiempo promedio que una instalacin esta ocupada Unidades promedio de un recurso en trnsito Tiempo promedio de un recurso en trnsito Tiempo promedio que un recurso esta ocupado Tiempo promedio que un recurso esta libre Nmero de transacciones terminadas por un nodo Nmero de transacciones destruidas por un nodo

M.C. Patricia T. Millet Bolio 32

SISTEMAS DE SIMULACIN 4.5 EJERCICIOS 1. Un banco abre a las 9 a.m. y el primer cliente llega a las 9:20. El tiempo entre llegadas de los clientes esta distribuido exponencialmente con media de 10 minutos. Las transacciones creadas son terminadas. 2. Una peluquera abre a las 10:00 a.m. y cierra a las 18:00 horas. Los clientes llegan a la peluquera cada 15 minutos. 3. Clientes llegan a una oficina de expedicin de licencias con una distribucin exponencial con media de 7 minutos y toman una ficha con nmero. 4. Un aserradero est contratado para recibir 300 camiones con troncos. Cada carga de los camiones consta de 20 troncos. El aserradero procesa un tronco a la vez. Las llegadas de los camiones estn espaciadas cada 25 minutos. 5. Explique que significa los siguientes cdigos: a. CLIENTES *S;EX(12);10;-1: b. TV *S;5;GOTO-EMBALAJE: c. CAMIONES *S;45;/M/MULT=50;LIM=100;GOTO-COLA: 6. En cada uno de los siguientes casos, cules sern los valores del atributo A(1) asociados con las primeras tres transacciones que salen del nodo fuente? a. LLEGADA *S;5;;1: b. LLEGADA *S;5;3;1: c. LLEGADA *S;5;3;-1: 7. Cuntas transacciones se generarn por cada una de las siguientes proposiciones de fuentes durante las primeras 20 unidades de tiempo de simulacin? a. LLEGADA *S;5/L/LIM=3: b. LLEGADA *S;5;/M/MULT=2: 8. Las primeras cinco transacciones que llegan a la cola QQ tienen los atributos que se listan a continuacin. Transaccin 1 2 3 4 5 A(1) 4 7 1 3 2 A(2) 9 -3 10 14 6

M.C. Patricia T. Millet Bolio 33

SISTEMAS DE SIMULACIN Muestre cmo estas transacciones se ordenarn en QQ en cada uno de los siguientes casos: a. QQ *Q: b. QQ *Q;/D/LIFO: c. QQ *Q;/D/HI(1): d. QQ *Q;/D/LO(2): 9. Para los mismos datos del problema 3, identifique las transacciones que salen de QQ y sus atributos en cada uno de los siguientes casos suponiendo una disciplina de cola FIFO: a. QQ *Q;;2(SUM): b. QQ *Q;;4(FIRST): c. QQ *Q;;3: d. QQ *Q;;2(LO(1)): e. QQ *Q;;2(HI(2)): 10. Considere el siguiente segmento de modelo: QQ FF *Q;(3): *F;;2;(1);GOTO-TERM:

a. Cuntas transacciones procesar la instalacin FF? b. Determine el tiempo de simulacin en el que cada transaccin saldr de FF. c. Repita los incisos a y b, suponiendo que el segmento de modelo se cambia como sigue: i. QQ *Q: FF *F;;2;(1);GOTO-TERM: ii. QQ *Q;(3): FF *F;;2;GOTO-TERM: iii. QQ *Q;(3): FF *F;;2;2(1);GOTO-TERM: 11. Considere la siguiente proposicin de fuente: SS *S;UN(10,15):

Suponga que el procesador de SIMNET II est usando la siguiente serie de nmeros aleatorios: 0.1111, 0.2342, 0.6712, 0.8923, 0.4687, 0.3526. Determine el tiempo de simulacin en el que se crean las primeras seis transacciones a partir de SS. 12. Qu est mal en los siguientes segmentos del modelo? a. S1 *S;3;GOTO-S2: S2 *S;4;GOTO-TERM: b. Q1 *Q: Q2 *Q: M.C. Patricia T. Millet Bolio 34

SISTEMAS DE SIMULACIN

CAPITULO 5: DESARROLLO, EJECUCIN Y RASTREO DE MODELOS EN SIMNET II


5.1 SEGMENTOS DE UN MODELO $PROJECT;Nombre del Modelo; Fecha; nombre del analista: $DIMENSION;ENTITY(m),arreglo1, arreglo2,...,arreglo n: $ATTRIBUTES;(nombre descriptivo de los atributos): SEGMENTO DE DEFINICIONES $VARIABLES:(Definiciones de variables estadsticas): $SWITCHES: (Definiciones de interruptores lgicos): $RESOURCES;(Definiciones de recursos de recursos escasos): SEGMENTO DE LA LGICA DEL MODELO: $BEGIN: (enunciados lgicos del modelo) $END: SEGMENTO DE CONTROL: $RUN LENGTH= (longitud de corrida): $TRACE=(lmites del periodo de simulacin por rastrear): $TRANSIENT-PERIOD= (longitud del periodo transitorio): $RUNS=(nmero de corridas en un sola sesin de simulacin): $OBS/RUN= (nmero de observaciones estadsticas por SEGMENTO DE DATOS INICIALES: corrida) : $DISCRETE-PDFS:(Definiciones de funciones de probabilidad discreta): $INITIAL-ENTRIES:(atributos de entrada iniciales de lneas de espera): $TABLE-LOOKUPS:(definiciones de funciones de dependencia): $ARRAYS:(valores iniciales de variables de arreglos): $CONSTANTS:(valores iniciales de variables sin subndices): $FUNCTIONS:(definiciones de expresiones matemticas): $PRE-RUN: (enunciados de preejecucin aritmtica y enunciados): $POST-RUN:(enunciados de postejecucin aritmtica y $PLOT=(Lista enunciados): de los elementos del modelo por graficarse): M.C. Patricia T.:Millet Bolio $STOP 35

SISTEMAS DE SIMULACIN

Los trminos reservados tienen el smbolo $ como prefijo, y se usan para identificar los diferentes enunciados dentro de los segmentos del modelo.
$PROJECT Y $DIMENSION: Enunciados obligatorios, que siempre ocupan los dos primeros renglones del modelo. $PROJECT:

Informacin general sobre el modelo.

Asigna memoria en forma dinmica a los archivos del modelo y a los arreglos definidos por el usuario.
$ENTITY: Es una estimacin del nmero mximo de transacciones que pueden estar en el sistema en cualquier momento.

$DIMENSION:

Caractersticas de una transaccin a lo largo del modelo. Es necesario definirlos en la seccin de dimensin.
$ATTRIBUTES:

Ejemplo: Atributos.
$DIMENSION;ENTITY(20),A(5): $ATTRIBUTES;TIPO,COLOR(2),,TIEMPO:

Implica que A(1) es tipo, A(2) es color (1), A(3) es color (2), A(4) no tiene nombre descriptivo y A(5) es tiempo. Ejemplo: Modelo de lnea de espera con multiservidores. A una oficina de correos con tres servidores llegan los clientes en forma aleatoria. El tiempo entre llegadas es exponencial con media de 5 minutos. El tiempo de servicio tambin es exponencial con media de 10 minutos. Todos los clientes que llegan forman una lnea y son atendidos por los servidores que estn libres con base en una disciplina FIFO.
Ex(5) EX(10) 3 COLA SERVIDORE S TERM

LLEGADA

$PROJECT;Oficina de correos;27 de diciembre 2002;Patricia Millet: $DIMENSION;ENTITY(50): $BEGIN: LLEGADA *S;EX(5): !Llegada de clientes COLA *Q: !lnea de espera SERVIDORES *F;;EX(10);3;& !Atencin a clientes GOTO-TERM: !atendido por uno de los 3 empleados $END: $RUN-LENGTH=480: !Corre el modelo durante 480 min $TRACE=30-35: !rastrea del 30 al 35 $RUNS=1: !slo para una corrida

M.C. Patricia T. Millet Bolio 36

SISTEMAS DE SIMULACIN
$STOP:

5.2 EJEMPLO DE UN MODELO Llegan clientes de forma aleatoria a una oficina postal con tres empleados. El tiempo entre llegadas es exponencial, con media de 5 minutos. El tiempo de servicio tambin es exponencial, con media de 10 minutos. Todos los clientes que llegan forman una cola de espera y son atendidos por los empleados libres segn una base FIFO. A continuacin se proporciona la representacin en red del modelo y las proposiciones de SIMNET II.

Ex(5)

Ex(10) 3

LLEGADA

ESPERA

EMPLEADO

$PROJECT;OFICINA POSTAL;31 ENERO 02; PATRICIA MILLET: $DIMENSION;ENTITY(30): $BEGIN: LLEGADA *S;EX(5): !Llegadas ESPERA *Q: !Espera en cola EMPLEADO *F;;EX(10);3;*TERM: !Atencin por 3 empleados $END: $RUN-LENGTH=480: $STOP:

La posicin $PROJECT proporciona el nombre del modelo, la fecha y el nombre del analista. $DIMENSION usa ENTITY(30) para proporcionar una estimacin de los requisitos de memoria de los archivos del modelo. La expresin indica que no se esperan ms de 30 transacciones en el sistema en cualquier tiempo. Si sucede que el modelo requiere ms memoria durante la corrida de simulacin, se desplegar un mensaje apropiado. La lgica del modelo se acota entre $BEGIN y $END. La fuente LLEGADA crea las transacciones de forma automtica cada EX(5) minutos. La primera llegada ocurre al tiempo 0 (valor por omisin del campo 2). Las transacciones que llegan esperarn en la cola ESPERA si los tres empleados estn ocupados. De otra forma, la cola se salta. Cuando una transaccin completa un servicio, se terminar. En este punto, la instalacin EMPLEADO volver a ver la cola ESPERA y extrae la primera transaccin en la lnea (disciplina de cola FIFO como valor por omisin). La ruta de la transaccin se define de manera automtica por la secuencia LLEGADA-ESPERA-EMPLEADO debido al orden fsico de las proposiciones en el M.C. Patricia T. Millet Bolio 37

SISTEMAS DE SIMULACIN modelo. Posteriormente se mostrar que las transacciones pueden tener cualquier ruta en la red usando el campo GOTO as como las ramas. La proposicin entre $END y $STOP controla la ejecucin de la simulacin. De manera especfica, $RUN-LENGTH indica que la simulacin se ejecutar durante 480 minutos. A continuacin se presenta la salida estndar del modelo:
********************************************** * * * S I M N E T II OUTPUT REPORT * * * ********************************************** PROJECT: OFICINA POSTAL DATE: 31 ENERO 02 ANALYST: PATRICIA MILLET RUN LENGTH = 480.00 TRANSIENT PERIOD = .00 TIME BASE/OBS = 480.00 NBR RUNS = 1 OBS/RUN = 1

*** I N D E P E N D E N T R U N S D A T A *** *** RUN 1: --------------------QUEUES --------------------CAPA- IN:OUT AVERAGE MIN/MAX/ AV. DELAY AV. DELAY % ZERO WAIT CITY RATIO LENGTH LAST LEN (ALL) (+VE WAIT) TRANSACTION ESPERA **** 1: 1 1.31 0/ 12/ 0 6.51 15.63 58.33 --------------------FACILITIES --------------------NBR MIN/MAX/ AV. GROSS AVERAGE AVERAGE AVERAGE AVERAGE SRVRS LAST UTILZ UTILIZ BLOCKAGE BLKGE TIME IDLE TIME BUSY TIME EMPLEADO 3 0/ 3/ 1 1.9955 .0000 .00 8.44 17.06 *** TRANSACTIONS COUNT AT T = 478.8 OF RUN 1: NODE IN OUT RESIDING SKIPPING UNLINKED/LINKED TERMINATED (BLOCKED) (DESTROYED) *S: LLEGADA 96 ( 0) 0 *Q: ESPERA 40 40 0 56 0/ 0 0 *F: EMPLEADO 96 95 1 ( 0) ( 0) 95 Execution time = .00 minutes END OF SIMULATION SESSION

La cola ESPERA tiene una capacidad infinita (designada por asteriscos) y una razn IN:OUT de 1:1, lo que significa que cada transaccin que sale M.C. Patricia T. Millet Bolio 38

SISTEMAS DE SIMULACIN corresponde a una transaccin en espera (valor por omisin del campo 2 de ESPERA). La longitud promedio (AVERAGE LENGTH) de 1.30 transacciones representa el nmero promedio de transacciones en espera en la longitud total de la corrida. La columna MIN/MAX/LAST LEN proporciona la longitud mnima, mxima y ltima de ESPERA (= 0,12, 0, respectivamente) que ocurre durante la corrida. El tiempo promedio de espera de todas las transacciones (incluyendo las que no esperan) est dado por AV. DELAY (ALL) = 6.51 minutos. La siguiente columna AV. DELAY (+VE WAIT) muestra que el tiempo promedio de espera para aquellos que deben esperar es de 15.63 minutos. Finalmente, la ltima columna indica que 58% de las transacciones que llegan de la fuente LLEGADA saltan ESPERA, lo que significa que no experimentan ninguna espera. La instalacin EMPLEADO tiene tres servidores paralelos. La segunda columna muestra que EMPLEADO tiene un mnimo de ocupacin de 0, alcanza un mximo de 3 empleados ocupados y termina la simulacin con un servidor ocupado. La utilizacin total promedio (tercera columna) indica que en promedio 1.9931 servidores (de 3) estuvieron ocupados a lo largo de la corrida, reflejando as un porcentaje de utilizacin total de (1.9931/3)*100 = 66.4%. El bloqueo promedio (AVERAGE BLOCKAGE) registra la ocupacin improductiva promedio de la instalacin (expresada en nmero de servidores) que es el resultado de estar bloqueada por una cola finita o instalacin contigua. Esta condicin no existe en nuestro ejemplo, lo que resulta en un bloqueo promedio cero. En general, la utilizacin neta de una instalacin es la diferencia entre su utilizacin total promedio y su bloque promedio. El AVERAGE BLKGE TIME representa el tiempo promedio que una instalacin permanece en un estado de bloqueo ( = 0 en este ejemplo). La penltima columna representa la longitud de tiempo promedio que una instalacin permanece inactiva entre periodos ocupado. En este ejemplo, cuando no hay clientes en el sistema, cada empleado permanece inactiva cerca de 8.48 minutos. La ltima columna proporciona el tiempo promedio que la instalacin permanece ocupada antes de que otra vez quede inactiva. De hecho, el tiempo promedio ocupado nunca puede ser menor que el tiempo de servicio promedio por servidor. En este ejemplo, el tiempo promedio ocupado es de 17.06 minutos. Como el tiempo de servicio promedio por transaccin es de 10 minutos, en promedio cada servidor atiende a 17.06/10 = 1.706 clientes antes de quedar inactivo durante 8.479 minutos. El conteo de transacciones que se da al final del informe proporciona una historia completa del flujo de transacciones durante la corrida. Este resumen es til para localizar irregularidades en el modelo. Por ejemplo, el aumento de una cola puede indicar un posible cuello de botella. En este ejemplo, durante la corrida de 480 minutos, la fuente LLEGADA crea 96 transacciones, de las cuales 40 experimentan una espera en la cola ESPERA y las restantes 56 saltaron la cola. La instalacin EMPLEADO recibi 96 clientes y liber 95 con 1 transaccin que permaneci sin procesar al final de la corrida. Las entradas restante en la cuenta son todas cero. En particular, la columna UNLKINKED/LINKED se usa slo cuando el modelo sufre manipulacin de archivos. La columna (BLOCKED) ser positiva cuando la instalacin est bloqueada. Asimismo, (DESTOYED) ser positiva cuando M.C. Patricia T. Millet Bolio 39

SISTEMAS DE SIMULACIN se destruyen transacciones (desaparecen del sistema). Ninguno de estos casos se aplica a nuestro ejemplo. 5.3 RASTREO El modo de rastreo se puede obtener incluyendo el siguiente segmento de control:
$TRACE = T1-T2:

Donde T1 y T2 son valores reales que representan los lmites inferior y superior del intervalo de tiempo que se desea rastrear. A continuacin se presenta el reporte de salida que se obtiene al colocar el segmento $TRACE = 30-35: inmediatamente despus del $RUN-LENGTH. El reporte de rastreo automticamente presenta todos los detalles de la simulacin en el intervalo de tiempo especificado. En particular, observe como la instalacin EMPLEADO en el T=32.25 queda libre voltea a la cola ESPERA y jala una transaccin en espera.
*** S I M N E T II TRACE REPORT *** Time ---30.0368 Action -----Exit LLEGADA File next LLEGADA creation at T = Enter ESPERA -- CUR.LEN = 1 42.6198

32.2512

Exit EMPLEADO Terminate transaction Make server in EMPLEADO idle -- CUR.UTILIZ = 2 Leave ESPERA -- CUR.LEN = 0 Enter EMPLEADO -- CUR.UTILIZ = 3 File departure from EMPLEADO at T = 33.4242 Exit EMPLEADO Terminate transaction Make server in EMPLEADO idle -- CUR.UTILIZ = 2

33.4242

M.C. Patricia T. Millet Bolio 40

SISTEMAS DE SIMULACIN 5.4 EJERCICIOS 1. Considere los siguientes segmentos de SIMNET II:
$DIMENSION;ENTITY(30);A(8): $ATTRIBUTES;FORMA,,PINTURA(2),TIPO(2,2):

Qu nombres toman A(1),A(2),...,A(8) basndose en el segmento de $ATRIBUTES? 2. En el reporte de SIMNET II mostrado en el ejemplo anterior, cul es la relacin entre las entradas de las ltimas tres columnas de la cola ESPERA? 3. Corra el modelo del ejemplo asumiendo que el intervalo de tiempo entre llegadas es de EX(3.5) minutos, despus responda los siguientes: a. Nmero mximo de clientes en espera. b. El tiempo que un cliente espera en promedio despus de iniciado el servicio. c. El tiempo promedio que un cliente tarda en la oficina postal. d. El nmero promedio de empleados libres. e. El porcentaje de tiempo que los empleados estn ocupados. f. El nmero total de clientes que pasan por la oficina postal durante un periodo de 8 horas. 4. Corra el modelo del ejemplo asumiendo que el intervalo de tiempo de llegadas el EX(3) y la oficina postal solo cuenta con un empleado. Al ejecutar el modelo hallar un mensaje de error por excederse el tamao de ENTITY. Este error no ocurre en el modelo original. Este error puede ser corregido aumentando el tamao de ENTITY?Esta correccin sirve para cualquier tiempo de simulacin (RUN-LENGTH)?. Experimente en el modelo y responda. 5. Analizando el reporte de rastreo presentado anteriormente: a. Dado que la fuente LLEGADA libera una transaccin al T=30.0368, cul es el intervalo de tiempo hasta la siguiente liberacin? b. Determine el tiempo de servicio par el cliente que entra a la instalacin EMPLEADO al T=32.2512.

M.C. Patricia T. Millet Bolio 41

SISTEMAS DE SIMULACIN

CAPITULO 6: RUTAS DE TRANSACCIN EN SIMNET II


6.1 INTRODUCCIN Las transacciones tienen rutas entre los diversos nodos de la red al usar:

La secuencia del siguiente nodo. El campo de seleccin del nodo. El campo de transferencia del nodo *T con el uso de GOTO-. Las ramas (*B) que emanan del nodo.

Esta seccin presenta los detalles de los primeros tres tipos. Las ramas que son un elemento muy importante en SIMNET II, se presentarn en la siguiente seccin. 6.2 LA SECUENCIA DEL SIGUIENTE NODO Como se explic en la seccin anterior, la secuencia del siguiente nodo enva la transaccin de un nodo al nodo inmediato (siguiendo el orden en que los segmentos estn escritos). Hay dos excepciones a esta regla:

SIMNET II bloquea automticamente la entrada de transacciones a un nodo fuente. No importa quien lo preceda (incluyendo otra fuente). No se permite que una cola alimente a otra. Para evitar que marque error, se puede separar utilizando la palabra reservada $SEGMENT.
Q1 *Q: $SEGMENT: Q2 *Q:

6.3 SELECCIN DE RUTA Cada uno de los cuatro nodos de SIMNET II tienen un campo de seleccin que traza una ruta de transacciones de manera condicional a uno de varios nodos destino. En particular, una instalacin tiene campos de seleccin de entrada y salida porque puede tirar la transaccin de una o varias colas de entrada as como manda transacciones a uno de los diversos nodos de recepcin. Lo que hace el campo de seleccin es permitir a una transaccin ser enviada desde o hacia uno o varios nodos candidatos dependiendo de sus condiciones. Por ejemplo, una instalacin busca entre un grupo de colas predecesoras para jalar una transaccin de la cola ms larga.

M.C. Patricia T. Millet Bolio 42

SISTEMAS DE SIMULACIN La siguiente tabla proporciona una lista de las reglas de seleccin de SIMNET II. Reglas de seleccin de ruta Todos los nodos y TERM [Formato: REGLA(NODO1, NODO2,..., NODOM)] Regla Descripcin POR Orden preferido de exploracin ROT Orden rotacional de exploracin RAN Orden aleatorio de exploracin Colas e instalaciones [Formato: REGLA(ARCHIVO 1, ARCHIVO2,..., ARCHIVOM)] HAU(LAU) Promedio ms alto (ms corto) de utilizacin del archivo HAI(LAI) Promedio ms alto (ms corto) libre del archivo HAD(LAD) Ms alto (ms corto) retraso en archivo HTE(LTE) Tiempo ms alto (ms corto) en que el archivo ha estado vaco Colas e instalaciones [Formato: REGLA(ARCHIVO 11 ARCHIVO12 ..., ..., ARCHIVOM1 ARCHIVOM2 ...)] HBC(LCB) Longitud de archivo ms alta (ms baja) HIC(LIC) Mayor (menor) capacidad de archivo libre Ntese que algunas de las reglas de la tabla anterior no tienen sentido en caso de colas de capacidad infinita. En particular, HAI, LAI, HIC y LIC asumen que el archivo tiene una capacidad finita. Ejemplos:

SS *S;UN(10,20);/S/POR(Q1,Q2,A1): Las transacciones que salen de la fuente SS explorarn los nodos en el orden preferido Q1 Q2 A1 y elegir el primer nodo que acepta la transaccin QQ *Q;/S/HTE(F1,F2): Las transacciones que salen de la cola QQ se mandan ya sea a la instalacin F1 o a la F2, dependiendo de cul ha estado vaca (inactiva) ms tiempo. AAX *A;/S/LBC(Q1+F1,Q2-Q1,Q3): Una transaccin que sale del auxiliar AAX se manda a encabezar el nodo Q1, Q2 o Q3, dependiendo de cul tenga el valor ms pequeo de LEN(Q1)+LEN(F1), LEN(Q2)-LEN(Q1) y LEN(Q3), donde LEN es la variable de SIMNET II que representa longitud (LENGTH) del archivo. FF *F;HBC(Q1,Q2,Q3);EX(10);3;LBC(F3,Q4,Q5):

M.C. Patricia T. Millet Bolio 43

SISTEMAS DE SIMULACIN La instalacin FF utiliza su campo de seleccin de entrada y salida. En la regla de seleccin de entrada en el campo 2, cuando FF mira hacia atrs a las colas Q1, Q2 y Q3, intentar extraer una transaccin de la cola con la longitud ms grande (HBC). Una transaccin que sale de FF seleccionar F3, Q4 o Q5 de acuerdo con la regla LBC, es decir, dependiendo de cul tiene la longitud ms corta. Ejemplo: Modelo de banco. Los automviles llegan a un banco de dos ventanillas para servicio en el auto, de acuerdo con un tiempo entre llegadas exponencial, con media de 2 minutos. Un automvil elige el carril derecho o izquierdo, dependiendo de cul carril es el ms corto. El tiempo de servicio en cualquier carril es UN(3,4) minutos. El espacio en cada carril, excluyendo la ventanilla, cuando mucho puede acomodar tres vehculos. A continuacin se presenta la red del modelo y sus proposiciones:

UN(3,4) 3 QI Ex(2) LBC (QI+VI,QD+VD) CARROS VI UN(3,4) QD VD TERM TERM

$PROJECT;BANCO;02 ENERO 03; PATRICIA MILLET: $DIMENSION;ENTITY(50): $BEGIN: CARROS *S;EX(2);/S/LBC(QI+VI,QD+VD): QI *Q;3: VI *F;;UN(3,4);*TERM: QD *Q;3: VD *F;;UN(3,4);*TERM: $END: $RUN-LENGTH=480: $RUN=1 $STOP:

!Seleccin del carril ms corto !Carril izquierdo !Carril derecho

Las transacciones se crean de la fuente CARROS cada EX(2) minutos. El campo 6 de CARROS lleva la regla de seleccin LBC(QI+VI,QD+VD), que indica que una transaccin que llega entrar a QI si el nmero de autos en el carril izquierdo M.C. Patricia T. Millet Bolio 44

SISTEMAS DE SIMULACIN (incluyendo la ventanilla) no excede el del carril derecho. De otra forma, se selecciona el carril derecho. Si ambos QI y QD, estn llenos a su capacidad (es decir, LEN(QI)=3 y LEN(QD)=3), las transacciones que llegan de CARROS sern destruidas por el sistema. Note que el ordenamiento siguiente nodo de la fuente CARROS y la cola QI no se tienen en cuenta por la regla de seleccin de CARROS. A la inversa, una transaccin que sale de QI usa la clasificacin de siguiente nodo para enrutarse a s misma a VI. La misma lgica se aplica a QD y VD. Una vez resuelto este modelo, se observa que VI tiene una utilizacin de 0.9058 (mayor que VD que es de 0.8227). La razn de esta diferencia es que cuando ambas colas tienen el mismo nmero de carros, la regla de seleccin enviar el siguiente a VI porque esta listado primero. Esto tambin se observa en TRANSACTIONS COUNT la cual establece que 122 carros salieron de VI y solo 114 de VD. Observe tambin que 11 transacciones fueron destruidas de la fuente CARROS porque tanto QI como QD estaban llenas. 6.4 RUTA GOTO (CAMPO *T) El campo GOTO permite un control adicional sobre las transacciones en una red mediante el uso de cualquiera de los siguientes formatos:
*nombre del nodo/tipo de transferencia, nombre del nodo/tipo de transferencia,...,repetir GOTO-nombre del nodo/tipo de transferencia, nombre del nodo/tipo de transferencia,..., repetir

El campo de transferencia siempre ocupa el ltimo campo de la proposicin del nodo. La siguiente tabla resume los tipos ms comunes de transferencia. Tipos de rutas de transferencia Smbolo Uso A Siempre o transferencia incondicional (por omisin) Numrico (0P1) Transferencia probabilstica, P D Transferencia Dependiente E Transferencia Exclusiva L Transferencia de ltima eleccin Se ha utilizado la ruta incondicional (A) con TERM en el ejemplo anterior sin poner la A porque es el tipo de ruta por default. La transferencia tipo A significa que la transaccin siempre intentar ir al nodo designado. La transferencia probabilstica selecciona el siguiente nodo basado en un grupo de probabilidades cuya suma debe ser 1. Por ejemplo *N1/0.2,N2/0.3,N3/0.5 (o GOTO-N1/0.2,N2/0.3,N3/0.5) indica que los nodos N1, N2 y N3 recibirn transacciones el 20%, 30% y 50% de las veces respectivamente.

M.C. Patricia T. Millet Bolio 45

SISTEMAS DE SIMULACIN La transferencia dependiente especifica que el nodo asociado con la D no ser tomado hasta que al menos uno de los nodos que lo preceden en el campo *T no sea tomado. Por lo tanto, no tendra significado colocar una transferencia D de primero en el campo *T. Por ejemplo, en *N1,N2/0.2,N3/0.8,N4/D,N5/D, los nodos N4 y N5 no podrn recibir ninguna transaccin hasta que al menos uno de los nodos que los precede N1, N2 y N3 no sea tomado. La transferencia exclusiva trabaja de forma semejante a la transferencia dependiente en el sentido de que sus nodos no pueden recibir transacciones a menos que alguno de sus predecesores en el campo *T haya recibido alguna transaccin. Si alguno de los nodos- E no puede recibir transaccin, entonces todos los nodos predecesores en el campo *T quedarn bloqueados. Este tipo de transferencia es muy til cuando es necesario introducir transacciones en dos nodos simultneamente. Por ejemplo, *N1,N2/E implica que entrarn transacciones simultneamente en los nodos N1 y N2 o en ninguno de ellos. La transferencia de ltima eleccin se asocia a un nodo que debe ir colocado al final de la lista. La idea de la transferencia L es que dicho nodo ser tomado solamente si ninguno de los nodos que lo preceden en el campo *T acepta la transaccin. Por ejemplo, considere el ejemplo del modelo de banco, debido a que las colas QI y QD tienen capacidad finita, una transaccin que sale de la fuente CARROS ser destruida si ambas colas estn llenas. Sin embargo, si se asume que un cliente que no puede entrar a ninguna de las colas decide entrar al banco para recibir el servicio, la situacin puede ser modelada cambiando el nodo fuente CARROS de la siguiente forma:
CARROS *S;EX(2);/S/LBC(QI+VI,QD+VD);QIN/L:

Donde la cola QIN representa el interior del banco. Si la transaccin no puede entrar a QI o QD, ir a QIN como ltima eleccin. Ejemplo: Inspeccin de televisores. Los televisores llegan sobre una banda transportadora para su inspeccin desde una lnea de montaje a razn de 5 unidades por hora. El tiempo de inspeccin es UN(10,12) minutos. La experiencia muestra que 20% de las unidades inspeccionadas se ajustan y despus se devuelven para su reinspeccin. El tiempo de ajuste es UN(6,8) minutos. A continuacin se proporciona el modelo de la red y las proposiciones:
$PROJECT;INSPECCION TV;3 ENERO 03;PATRICIA MILLET: UN(6,8) 0.2 FADJ 12 QADJ UN(10,15) 0.8 FINSP TERM

M.C. Patricia T. Millet Bolio 46


TVS QINSP

SISTEMAS DE SIMULACIN
$DIMENSION;ENTITY(50): $BEGIN: TVS *S;12: QINSP *Q: FINSP *F;;UN(10,15);GOTO-QADJ/.20,TERM/.80: QADJ *Q: FADJ *F;;UN(6,8);GOTO-QINSP: $END: $RUN-LENGTH=480: $STOP:

!Llegada de TV !linea de espera FINSP !insp. 20% qadj/ 80% term !lnea de espera FADJ !ajuste y regreso a QINSP

La ruta TVS-QINSP-FINSP la dicta la clasificacin del siguiente nodo. La transferencia probabilista de FINSP mandar aleatoriamente 20% de las transacciones a QADJ y el 80% restante a TERM. Cuando el ajuste est completo FADJ, la transferencia A (por omisin) mandar a la transaccin de vuelta a QINSP como se desea. Note que la suma de probabilidades en las transferencias probabilistas de un nodo debe ser 1. Ejemplo: Transferencia dependiente Componentes llegan cada EX(5) minutos para ser inspeccionados. El tiempo de inspeccin es EX(6) minutos. En el momento que comienza la inspeccin, un recibo es mandado al departamento de contabilidad para comenzar el proceso de cobro. Dicho proceso requiere UN(2,3) minutos.
$PROJECT;TRANS DEPENDIENTE;3 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(50): $BEGIN: COMP *S;EX(5): !Llegan componentes QINSP *Q;GOTO-FINSP,CONT/D: !Entra a CONT como dependiente FINSP *F;;EX(6);GOTO-TERM: !Inspeccin CONT *A: QCONT *Q: !Contabilidad FCONT *F;;UN(2,3);GOTO-TERM: $END: $RUN-LENGTH=120: $STOP:

Ejemplo: Sincronizacin de estaciones de trabajo paralelas En la etapa final de la manufactura de autos, una banda transportadora coloca al auto entre dos estaciones de trabajo paralelas que permite hacer el trabajo en ambos lados del auto simultneamente. El tiempo de operacin para el lado izquierdo y el derecho es UN(18,20) y UN(20,30) minutos, respectivamente. Cuando ambas operaciones han terminado, la banda trasportadora mueve el carro fuera del rea de trabajo. Los carros llegan a la estacin cada UN(20,30) minutos. A continuacin se proporciona el modelo de la red y las proposiciones: M.C. Patricia T. Millet Bolio 47

SISTEMAS DE SIMULACIN

UN(20,30) UN(20,30) EST_D UN(18,20) CARROS EST_I SALIDA

TERM

ESPERA

ALMACEN

$PROJECT;ESTACIONES PARALELAS;3 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(40): $BEGIN: CARROS *S;UN(20,30): !Llegada de carros ESPERA *Q;*EST_D,EST_I/E: !Entra a ambas estaciones EST_D *F;;UN(20,30);*SALIDA: !Fin trabajo estacin derecha EST_I *F;;UN(18,20): !Fin trabajo estacin izquierda SALIDA *A;/S/ROT(TERM,ALMACEN): !Descarta la primera transaccin ALMACEN *Q: !rea de recepcin $END: $RUN-LENGTH=480: $STOP:

Cuando el carro deja la cola ESPERA, se divide en dos copias que corresponden a las dos estaciones EST_I y EST_D. Sin embargo, para simular la llegada del carro al rea de trabajo y que ambas estaciones comiencen a trabajar simultneamente se utiliza la transferencia exclusiva que garantiza que las transacciones no dejarn ESPERA a menos que ambas estaciones EST_I y EST_D estn libres. La salida del carro del rea de trabajo debe coincidir con el tiempo ms largo de las instalaciones EST_I y EST_D. El modelado de esta condicin se logra canalizando las transacciones de ambas instalaciones al auxiliar SALIDA con tiempo de retraso cero. La primera que llega ser enviada a TERM y la segunda representa el movimiento del carro al rea de almacn, esto se logra con ROT(TERM,ALMACEN) en el campo de seleccin del nodo auxiliar SALIDA. Ejemplo: Transferencia selectiva compleja Asuma que la fuente S1 alimenta la cola Q1 en intervalos de tiempo EX(10) y la fuente S2 a la cola Q2 en EX(5). Las transacciones que salen de Q1 elegirn entre la instalacin F1 o F2 dependiendo en cual haya estado libre ms tiempo. Las transacciones que salen de Q2 seleccionaran F2 y F0 en el orden prestablecido. Si F2 y F0 estn ocupados, la transaccin ir a F3 como ltima opcin. Considere que las instalaciones tienen el siguiente tiempo de trabajo, EX(15), EX(17), UN(1,4), UN(1,4), en orden de aparicin. M.C. Patricia T. Millet Bolio 48

SISTEMAS DE SIMULACIN

$PROJECT;TRANSF SELECTIVA;3 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(50);A(2): $BEGIN: S1 *S;EX(10): !Fuente 1 Q1 *Q;/S/HTE(F1,F2): !Selecciona F1 o F2 F1 *F;;EX(15);*TERM: F2 *F;HBC(Q1,Q2);EX(17);*TERM: !F2 selecciona entre Q1 o Q2 S2 *S;EX(5);;-1: !Fuente S2 Q2 *Q;/S/POR(F2,F0);*F3/L: !Selecciona F1,F0 o F3 en ltima opcin F0 *F;;UN(1,4);*TERM: F3 *F;;UN(1,4);*TERM: $END: $RUN-LENGTH=480: $TRACE=0-150: $STOP:

M.C. Patricia T. Millet Bolio 49

SISTEMAS DE SIMULACIN 6.5 EJERCICIOS 1. Corra el modelo del banco para determinar: a. El nmero promedio de autos en cada carril. b. El porcentaje de automviles en cada carril que no tiene que esperar para recibir el servicio c. El porcentaje de automviles que entraron en los carriles derecho e izquierdo. 2. Corra el modelo de los televisores para 480 minutos. Determine el tiempo promedio en el que un televisor espera para ser inspeccionado. 3. Reconsidere el modelo del banco y asuma que el 90% de los clientes que no pueden usar la ventanilla de servicio en el auto entrarn en el banco para que los atienda uno de dos cajeros. Lleva cerca de 3 minutos estacionar el vehculo y caminar al interior. El tiempo del servicio es UN(2,3) minutos. 4. Dibuje la red de SIMNET asociada con los siguientes segmentos de modelos. Asuma que los nombres que empiezan con S, Q, F y A representan fuentes, colas, instalaciones y auxiliares respectivamente. a. S1 *S;EX(2): Q1 *Q: F1 *F;;EX(2.3);GOTO-TERM: b. FF *F;HAD(Q1,Q2);UN(1,2);/S/ROT(A1,Q3): c. FF *F;HAD(Q1,Q2);UN(1,2)/S/ROT(A1,A2);GOTO-QQ:

d. S1 *S;10;GOTO-Q1,Q2/L: Q1 *Q;20: $SEGMENT: Q2: e. S1 *S;EX(3);/S/LBC(Q1,Q2),A1/L: Q1 *Q: $SEGMENT: Q2 *Q: $SEGMENT: A1 *A;3;GOTO-TERM: F1 *F;;EX(2.3);GOTO-TERM: f. S1 *S;EX(3);GOTO-Q1,Q2/D,F1/D,TERM/L: M.C. Patricia T. Millet Bolio 50

SISTEMAS DE SIMULACIN 5. Modifique el modelo del banco y asuma que el 20% de los carros que salen de VI y VD regresaran en aproximadamente 45 minutos al servicio de banco por ventanilla. Estos carros dan preferencia a la cola derecha sobre la izquierda y si ninguna tiene espacios vacos deciden dejar el banco. Disee la red, corra del modelo y determine: a. El nmero promedio de autos en cada carril. b. El porcentaje de automviles en cada carril que no tiene que esperar para recibir el servicio c. El nmero de autos que regresan por otro servicio. 6. Escriba un modelo de SIMNET II para la siguiente situacin. A un banco llegan nuevos clientes cada 18 minutos en promedio, distribuidos en forma exponencial. Un cliente primero debe consultar con un empleado bancario respecto a la apertura de una nueva cuenta. Completar esta tarea toma entre 15 y 20 minutos, distribuidos de manera uniforma. Enseguida, el cliente va a uno de los tres cajeros para hacer el depsito inicial. Todos los clientes son atendidos de acuerdo con una base FIFO. Corra la simulacin para 480 minutos y determine lo siguiente: a. La longitud promedio de cada cola dentro del banco. b. El tiempo de espera promedio en cada cola dentro del banco. c. El porcentaje de clientes en cada cola que no tiene que esperar. d. La longitud mxima de la cola. e. El porcentaje de utilizacin del funcionario bancario y del cajero. 7. Modifique el modelo de inspeccin de TV basndose en las siguientes variaciones: El ajuste del 20% de las unidades defectuosas puede hacerse en cualquiera de dos estaciones independientes de ajuste cada una con un servidor. Las unidades defectuosas son asignadas a las dos estaciones en un estricto orden rotacional. El tiempo de ajuste en la estacin 1 es UN(10,15) minutos y el de la estacin 2 es UN(14,18) minutos. 8. En el modelo de estaciones de trabajo paralelas, qu pasa si en segmento ESPERA *Q;GOTO-EST_D,EST_I/E: el cdigo /E es sustituido por /D? 9. En el modelo de estaciones de trabajo paralelas, suponga que la parte de atrs del carro representa una tercera estacin en paralelo. El tiempo de proceso en esta estacin es UN(16,27) minutos. Modifique el modelo considerando este cambio. 10. Piezas llegan desde dos fuentes independientes cada EX(10) y EX(12) minutos, respectivamente. Una pieza ser procesada por una de dos mquinas cuyos tiempos de proceso son UN(5,8) y UN(10,15), respectivamente. Se da preferencia a la mquina 1 sobre la mquina 2. cuando ambas mquinas terminan su trabajo, siempre toman la siguiente M.C. Patricia T. Millet Bolio 51

SISTEMAS DE SIMULACIN pieza de la cola ms larga. Determine la utilizacin de cada mquina y proporcione informacin sobre las colas. 11. Piezas llegan en lotes de 10 unidades. El intervalo de tiempo es de EX(2) horas. El rea de maquinado cuenta con dos pulidoras y un taladro. Cerca del 30% de las piezas requieren ser taladradas antes de ser pulidas por una de las dos mquinas pulidoras. El tiempo de taladrado por pieza es UN(10,15) minutos. El tiempo de pulido es EX(15) minutos. Determine la utilizacin del taladro y las pulidoras as como el nmero de piezas esperando ser procesadas por las mquinas de pulido y el taladro. Cunto debe esperar una pieza en cada cola?

M.C. Patricia T. Millet Bolio 52

SISTEMAS DE SIMULACIN

CAPITULO 7: RAMAS EN SIMNET II


7.1 INTRODUCCIN Las ramas conducen a las transacciones entre los nodos de manera similar a la de la transferencia directa. Se usan ramas en lugar de transferencia directa cuando se desea ejecutar cualquiera de las siguientes funciones:

Comprobar las condiciones lgicas que se requieren antes de hacer la transferencia al siguiente nodo. Ejecutar las asignaciones. Reunir los datos sobre las variables estadsticas (definidas por usuario). Devolver los recursos al inventario base.

Esta informacin aparece utilizando el siguiente formato: *B;F1/SUBF1;F2?;F3%;F4%;F5: Identificador de campo F1 Nombre del nodo destino SUBF1 Tipo de rama F2 /C/ Condiciones con AND/OR deben terminar con ? F3 /A/ Asignaciones deben terminar con % F4 /V/ Lista de variables estadsticas termina con % F5 /R/ Recursos regresados por rama 7.2 TIPOS DE RAMA (SUBF1)

Valor por omisin (Error) A Ninguna Ninguna Ninguna Ninguna

Los tipos de rama especificados en el subcampo F1 incluyen los mismos que los utilizados en transferencia directa y adems SIMNET II utiliza ramas selectivas para asignar rutas va el campo de seleccin del nodo. Adems utiliza ramas condicionales para especificar que ciertas condiciones tienen que ser satisfechas antes que la rama pueda ser cruzada. La siguiente tabla resume los tipos de rama: Tipos de rama Tipo de rama Uso S Rama selectiva A Siempre o transferencia incondicional (por omisin) C Rama condicional P Rama probabilstica E Rama Exclusiva D Rama Dependiente L Rama de ltima eleccin M.C. Patricia T. Millet Bolio 53

SISTEMAS DE SIMULACIN A continuacin se explica los dos tipos de rama no conocidos: la selectiva y la condicional. La rama selectiva es utilizada cuando es necesario asociar acciones a la rama (checar condiciones, ejecutar tares, etc.) con las rutas establecidas por el campo de seleccin del nodo. Ejemplo: Rama selectiva Considere que llegan transaccin de una fuente SS que selecciona la ms corta de las colas Q1 y Q2. Durante las primeras 100 unidades de tiempo, Q1 y Q2 no estarn disponibles para ninguna transaccin y ests tendrn que ir a Q3.

Q1 EX(10) LBC (Q1,Q2) SS L CUR.TIME>100 Q2 ? CUR.TIME>100 ?

Q3 SS *S;EX(10);/S/LBC(Q1,Q2): *B;Q1/S;CUR.TIME>100?: *B;Q2/S;CUR.TIME>100?: *B;Q3/L:

Esto significa que cuando Q1 es elegida por LBC, la rama-S hacia Q1 ser checada automticamente. Debido a que la rama tiene la condicin CUR.TIME>100?, Q1 no podr recibir ninguna transaccin hasta que la condicin no sea satisfecha. La misma lgica aplica a Q2. Ntese que la rama-L de la fuente SS es utilizada para enviar las transacciones a Q3 las primeras 100 unidades de tiempo. La rama condicional es usada cuando es necesario checar condiciones especficas antes que una rama pueda ser transitada. Estas ramas pueden estar reunidas en grupos de una o ms ramas listadas consecutivamente. Cada grupo ser identificado por un valor entero positivo de C. Adems, C representa el nmero mximo de ramas que pueden ser tomadas del grupo si se cumple la condicin. Para entender mejor la idea de formar grupos de ramas condicionales considere que tiene un nodo NN con 8 ramas condicionales reunidas en 4 grupos. El primer grupo cuenta con las primeras dos ramas (nodo N1 y N2) y tiene C=1 lo M.C. Patricia T. Millet Bolio 54

SISTEMAS DE SIMULACIN cual indica que a lo ms una de las dos ramas puede ser tomada. El segundo grupo igual esta formado por dos ramas (nodo N3 y N4) pero tiene C=2, en este caso ambas ramas pueden ser tomadas si sus condiciones se satisfacen. El tercer grupo consta de una sola rama (nodo N5) con C=1, indicando que la rama puede ser tomada si se cumple su condicin. Finalmente, el cuarto grupo consiste en tres ramas (nodo N6, N7 y N8 ) con C=3, lo cual significa que un mximo de tres ramas pueden ser tomadas del grupo.
N1 N2 1 1 N3 2 2 NN 1 N5 3 3 3 N7 N8 Enunciado del Nodo NN *B;N1/1;CONDICIONES 1?: *B;N2/1;CONDICIONES 2?: *B;N3/2;CONDICIONES 3?: *B;N4/2;CONDICIONES 4?: *B;N5/1;CONDICIONES 5?: *B;N6/3;CONDICIONES 6?: *B;N7/3;CONDICIONES 7?: *B;N8/3;CONDICIONES 8?: Conjunto 4: Toma cuando ms 3 Conjunto 3: Toma cuando ms 1 N6 N4 Conjunto 2: Toma cuando ms 2 Conjunto 1: Toma cuando ms 1

Es importante no olvidar que SIMNET II va analizando las ramas y los grupos de ramas en el orden que estn listadas. Cuando el nmero mximo de ramas C se ha alcanzado, las ramas restantes del grupo, de existir, se saltan automticamente 7.3 CONDICIONES DE UNA RAMA (F2) El formato general para el campo de condiciones de una rama es como sigue:
CONDICIN 1,AND/OR,...,AND/OR,CONDICIN M?

M.C. Patricia T. Millet Bolio 55

SISTEMAS DE SIMULACIN El campo debe terminar con el signo ?. Una condicin puede ser aritmtica (=, >, <,>=,<= o <>) o lgica (operaciones con switches). Como en todos los lenguajes de programacin, AND se evala antes que OR. Este inconveniente se modifica agrupando las condiciones en {}. Los siguientes ejemplos demuestran condiciones aritmticas tpicas:

(A(I)+MUESTRA(J))**2<SUM, AND, LEN(QQ)=0? {{V(I)>J,OR,K>M},AND,XX=LEN(QQ)}?

Por definicin una rama condicional (C) tiene que llevar condiciones. Otros tipos de ramas pueden o no llevar condiciones. A continuacin se resume esta informacin. Aplicaciones de las condiciones en los tipos de ramas Tipo de rama Lleva campo de condicin? A No E No D No C Si, obligatorio P Si, opcional S Si, opcional L Si, opcional 7.4 ASIGNACIONES DE RAMA (F3) El campo de comando F3 de una rama es donde se ejecutan todos los comandos de SIMNET II. El campo conservar cualquier nmero de asignaciones de acuerdo con el siguiente formato:
ASIGNACIN 1, ASIGNACIN 2,...,ASIGNACIN M%

El campo debe terminar con %. Las asignaciones en el mismo campo se ejecutan de forma secuencial. Los comandos de SIMNET II slo se ejecutarn por una transaccin en movimiento. Si las condiciones de rama (campo 2) no se satisfacen o si no se puede entrar en el nodo alcanzado por la rama (por ejemplo, una instalacin ocupada), entonces la rama no se puede tomar, y ninguno de sus campos se activar. Los comandos se ejecutan de manera incondicional o condicional, as como dentro de iteraciones. La sintaxis de un comando condicional es:
IF, CONDICIN, THEN, ASIGNACIN, ELSE, ASIGNACIN, ENDIF

M.C. Patricia T. Millet Bolio 56

SISTEMAS DE SIMULACIN Las proposiciones IF-ENDIF estn anidadas a cualquier profundidad, como lo demuestran los siguientes ejemplos:
IF, {A(1)=1,OR,SUM=0},AND,K=LEN(QQ), THEN,A(1)=A(1)+1,SUM=(K+1)**2, ELSE,I=LEN(QQ),J=I+1, ENDIF IF, I=1, THEN,K=K+1, IF,K>2,THEN,J=1,A(K**2)=1,ENDIF, ELSE, IF,K<=2,THEN,J=0,ELSE,J=1,ENDIF, ENDIF

Ejemplo: Modelo de carga/descarga de un autobs Los autobuses llegan a una estacin cada EX(30) minutos. El nmero de pasajeros en el autobs es normalmente entre 20 y 50, distribuidos uniformemente. Entre 2 y 6 pasajeros, distribuidos de manera uniforme, se bajan el vehculo en la estacin; y de 1 a 8 pasajeros, tambin distribuidos uniformemente, generalmente esperan abordarlo. Toma UN(3,8) segundos por pasajero bajarse del autobs y UN(4,7) segundos abordarlo. La capacidad mxima dl autobs es de 50 pasajeros. Simule el proceso de carga y descarga. La determinacin del nmero de pasajeros en el autobs y el nmero que sale y que aborda en la estacin se consigue al darse cuenta que una muestra discreta uniforme en el intervalo (a,b) se calcula como INT(UN(a,b+1)), donde INT es la funcin entero. A continuacin se proporciona el modelo de la red y las proposiciones:

I<BAJAN? EX(1800) I=I+1 DESCARGA UN(3,8) J=J+1 CARGA UN(4,7) J=1 ESPERA=INT(UN(1,9)) LIBRES=50-PASAJ+BAJAN IF,ESPERA>=LIBRES, THEN, SUBEN=LIBRES, ELSE, SUBEN=ESPERA, ENDIF

J<SUBEN?

BUS

M.C. Patricia T. Millet Bolio 57

SISTEMAS DE SIMULACIN
$PROJECT;AUTOBUS;6 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(50): $BEGIN: BUS *S;EX(1800): R1 *B;DESCARGA;;I=1,& PASAJ=INT(UN(20,51)),& BAJAN=INT(UN(2,7))%: DESCARGA *A;UN(3,8): R2 *B;DESCARGA/1;I<BAJAN?;I=I+1% R3 *B;CARGA/L;;J=1,& ESPERA=INT(UN(1,9)),& LIBRES=50-PASAJ+BAJAN,& IF,ESPERA>=LIBRES,THEN,SUBEN=LIBRES,& ELSE,SUBEN=ESPERAN,ENDIF%: CARGA *A;UN(4,7): R4 *B;CARGA/1;J<SUBEN?;J=J+1%: R5 *B;TERM/L: $END: $RUN-LENGTH=48000: $STOP:

La rama R1 de BUS calcula PASAJ y BAJAN, el nmero de pasajeros en el autobs cuando llega y el nmero que bajan en la estacin, respectivamente. La iteracin alrededor del auxiliar DESCARGA simula la descarga de pasajeros. La rama R2 se toma de forma condicional hacia atrs a DESCARGA si el ndice I de la iteracin es menor que BAJAN. Cada vuelta tambin incrementa el ndice I por 1. Despus de que se satisface la iteracin, la rama R3 de ltima eleccin lleva la transaccin al auxiliar CARGA, que simula el proceso de carga. El nmero que abordar, SUBEN, es igual al ms pequeo del nmero de asientos vacos, LIBRES, y el nmero de pasajeros que espera en la estacin, ESPERA. Observe que SUBEN se determina de forma equivalente como:
SUBEN=MIN(IN(UN(1,9)),50-PASAJ+BAJAN)

El procedimiento que se uso en el modelo intenta demostrar el uso de IFENDIF.

7.5 VARIABLES ESTADSTICAS SIMNET II permite tres tipos de variables estadsticas definidas por el usuario:

Las variables basadas en la observacin (OBS.BASED) son aquellas cuyo promedio es igual a la suma de los valores de observacin divididos entre el nmero de observaciones. Las variables basadas en el tiempo (TIEM.BASED) son aquellas cuyo promedio es igual al rea bajo la curva que representa la variable dividida entre la base de tiempo asociada.

M.C. Patricia T. Millet Bolio 58

SISTEMAS DE SIMULACIN

Las variables de final de corrida (RUN.END) son aquellas que adquieren significado hasta que termina la simulacin. Un ejemplo seran porcentajes o cantidades acumuladas.

Antes de reunir las observaciones estadsticas en el campo 4 de una rama, las variables mismas deben definirse por nombre, tipo, valor de observacin y datos del histograma con el uso de la siguiente proposicin (que se coloca a la cabeza de $BEGIN):
$VARIABLES: NOMBRE DE VARIABLE;TIPO;VALOR;A/B/C: NOMBRE DE VARIABLE;TIPO;VALOR;A/B/C: ... ...

El nombre de la variable as como su tipo lo define el usuario. El valor de observacin debe establecerse de acuerdo con las definiciones de la siguiente tabla. Si se desea el histograma, este debe estar definido en trminos de A, nmero de celdas del histograma, B, lmite superior en la primera celda, y C, el ancho de celda. Por default se considera que no se espera histograma. Variables estadsticas Todos los tipos (OBS.BASED, TIME.BASED y RUN.END) Valor de observacin Definicin Expresin Cualquier expresin matemtica legtima de SIMNET II OBS.BASED Valor de observacin TRANSIT(#) BET.ARVL ARVL.TIME FIRST Definicin Valor del intervalo CUR.TIME-A(#), donde # es cualquier expresin (>0) de SIMNET II, truncada a un valor entero, si es necesario Intervalo entre llegadas sucesivas de transacciones Tiempo de llegada de las transacciones Tiempo de la primera llegada

El valor de observacin TRANSIT(#) es particularmente til al calcular intervalos entre dos puntos de la red. Por lo general esto se lleva a cabo asignando el tiempo actual del reloj CUR.TIME al atributo A(#) en un punto de inicio deseado de la red. Cuando la transaccin alcance su punto final deseado, llevar a A(#) con sta. Entonces TRANSIT(#) calcula el tiempo transcurrido restando A(#) del tiempo actual del reloj CUR.TIME. Los siguientes ejemplos ilustran cmo se definen las variables estadsticas:
$VARIABLES: TPO_SISTEMA;OBS.BASED;TRANSIT(1): NIVEL_INV;TIME.BASED;I: PORCENTAJE;RUN.END;(B(1)+C(1))/N*100: T_BET_BLKGE;OBS.BASED;BET.ARVL:

M.C. Patricia T. Millet Bolio 59

SISTEMAS DE SIMULACIN La recoleccin de observaciones estadsticas para las variables RUN.END y TIME.BASED, una vez definidas en $VARIABLES, es totalmente automtica. Sin embargo, las OBS.BASED requiere colocar sus nombres en el campo F4 de la rama apropiada con el uso del siguiente formato:
NOMBRE VARIABLE 1, NOMBRE VARIABLE 2,...%

Ejemplo: Instalacin de una lavadora de automviles. Los automviles llegan a una instalacin de lavado de una rampa cada EX(10) minutos. Los autos que llegan entran a travs de un solo carril que puede acomodar cinco autos. Si el carril est lleno, los vehculos que llegan irn a otra parte. Toma UN(10,15) minutos lavar un auto. Se desea calcular dos estadsticas: el tiempo que un automvil pasa en la instalacin hasta que se lava y el intervalo entre faltas sucesivas.
EX(10) 5 COLA UN(10,15) TPO_SIS LAVADO TERM

1 LLEGADA

FALTAS TERM $PROJECT;LAVADO DE AUTOS;7 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(20);A(1): $VARIABLES;TPO_SISTEMA;OBS.BASED;TRANSIT(1): FALTAS;OBS.BASED;BET.ARVL: $BEGIN: LLEGADA *S;EX(10);;1: !Marca A(1) = CUR.TIME R1 *B;COLA: !Entra al carril si esta libre R2 *B;TERM/L/;/V/FALTAS%: !De otra forma, se va COLA *Q;5: !Capacidad de carril = 5 autos LAVADO *F;;UN(10,15): !Lavado de auto R3 *B;TERM;/V/TPO_SISTEMA%: !Calcula el tiempo en sistema $END: $RUN-LENGTH=480: $STOP:

Cuando la fuente LLEGADA crea una transaccin, de manera automtica fija su A(1)=CUR.TIME (porque el campo 3 de llegada esta marcado con 1). La primera rama de LLEGADA, R1, intentara llevar la transaccin a la cola COLA. Si COLA est llena, la transaccin tomar la rama R2 de ltima eleccin a TERM, lo que significa que falta. La variable estadstica FALTA tiene el tipo observacin BET.ARVL y se M.C. Patricia T. Millet Bolio 60

SISTEMAS DE SIMULACIN calcula en la rama TERM. Esta variable automticamente registra el tiempo entre faltas. Las transacciones que completan LAVADO calcularn TPO_SISTEMA como el intervalo de la creacin en LLEGADA hasta terminacin.
************************************** * * *S I M N E T II OUTPUT REPORT* * * ************************************** PROJECT: LAVADO DE AUTOS RUN LENGTH = 480.00 DATE: 7 ENERO 03 TRANSIENT PERIOD = .00 ANALYST: PATRICIA MILLET TIME BASE/OBS = 480.00 NBR RUNS = 1 OBS/RUN = 1

***WARNING: System void of ACTIVE transactions exactly at T = 476.524000 All TIME.BASED statistics are based on given interval *** I N D E P E N D E N T R U N S D A T A *** *** RUN 1: --------------------QUEUES --------------------CAPA- IN:OUT AVERAGE MIN/MAX/ AV. DELAY AV. DELAY % ZERO WAIT CITY RATIO LENGTH LAST LEN (ALL) (+VE WAIT) TRANSACTION COLA 5 1: 1 2.62 0/ 5/ 4 29.01 29.70 2.33 --------------------FACILITIES --------------------NBR MIN/MAX/ AV. GROSS AVERAGE AVERAGE AVERAGE AVERAGE SRVRS LAST UTILZ UTILIZ BLOCKAGE BLKGE TIME IDLE TIME BUSY TIME LAVADO 1 0/ 1/ 1 1.0000 .0000 .00 .00 476.52 --------------------VARIABLES --------------------UPDATES AV. VALUE STD DEV MIN VALUE MAX VALUE LAST UPDATE (O)TPO_SISTEMA 38 41.61 21.75 12.33 77.74 73.42 (O)FALTAS 9 17.15 21.40 .68 71.29 1.21 *** TRANSACTIONS COUNT AT T = 476.5 OF RUN 1: IN OUT RESIDING SKIPPING UNLINKED/LINKED TERMINATED (BLOCKED) (DESTROYED) 53 42 39 38 38 4 1 ( 1 0) ( 0/ ( 0) 0 0) 10 0 38

NODE *S: LLEGADA *Q: COLA *F: LAVADO

Execution time = .00 minutes

El smbolo (O) previo al nombre de la variable indica que esta es OBS.BASED, los smbolos (T) y (E) corresponden a variables TIME.BASED y RUN.END. M.C. Patricia T. Millet Bolio 61

SISTEMAS DE SIMULACIN 7.6 EJERCICIOS 1. Convoyes consistentes en cuatro camiones vacos cada uno salen cada EX(3) horas para llegar a un muelle de carga en un puerto martimo en UN(15,20) minutos. En el muelle, los camiones se cargan uno a la vez. El tiempo de carga es EX(30) minutos por vehculo. Los camiones cargados nuevamente salen del muelle en un convoy. Simule el sistema por 100 horas y determine la cantidad de tiempo necesario hasta que cada camin comienza a cargar en el muelle. Tambin determine la utilizacin de la instalacin de carga. 2. Un banco abre a las 8:00 am y cierra a las 4:30 pm. Los clientes llegan cada EX(5) minutos. El banco tiene un cajero interior que abre a las 8:00 am y una ventanilla de servicio en el automvil que abre una hora ms tarde. El tiempo de servicio dentro es de EX(4) minutos. El tiempo de servicio en el auto es de EX(6) minutos. El cliente que utiliza al cajero interior se tardar cerca de 3 minutos para estacionar el auto. Simule la situacin para 5 das y determine el tiempo de espera promedio dentro y fuera del banco. Asimismo establezca la utilizacin del cajero interior y de ventanilla. 3. Productos llegan de forma aleatoria de una lnea de ensamblaje para inspeccin a una de 3 estaciones. Las estaciones de inspeccin estn situadas alrededor de una banda transportadora de tipo carrusel. Un trabajador toma un producto para su inspeccin cuando pasa enfrente de la estacin. Despus de que la inspeccin es completada, el producto es enviado al rea de embarque mediante transporte de gravedad. El trabajador entonces tomara otro producto del carrusel y se repetir el proceso. La banda carrusel permite que los productos no procesados sigan circulando sobre la misma, hasta que algn trabajador los inspeccione. A un producto que llega de la lnea de ensamblaje le tomar 2 minutos alcanzar la primera estacin de inspeccin, el tiempo de retraso en el carrusel entre estaciones sucesivas es de 1 minuto. Un producto que no es retirado de la banda antes de la estacin 3 le tomara 5 minutos volver a la estacin 1. El tiempo entre llegadas de los productos al carrusel es de EX(1) minutos. El tiempo de inspeccin en cada estacin es EX(2) minutos. Simule el modelo para 200 unidades de tiempo y determine: a. Tiempo promedio en que un producto es liberado de cada estacin. b. Porcentaje de productos inspeccionados en cada estacin. c. Promedio del nmero de ciclos que producto pasa en el carrusel hasta que es retirado para inspeccin. d. Promedio del nmero de productos en el carrusel. M.C. Patricia T. Millet Bolio 62

SISTEMAS DE SIMULACIN

4. Ordenes llegan al rea de mquinas cada EX(2) horas y son asignadas a una de tres mquinas en un estricto orden rotacional. Los tiempos de proceso son: EX(2.5), EX(2.1) y EX(1.9) horas, respectivamente. Cuando se asigna trabajo a una mquina, se envan los papeles respectivos a contabilidad para costeo. Dichos papeles deben indicar el nmero de la mquina (1, 2 o 3) al que fue asignado. En contabilidad se cuenta con una sola persona que realiza todo el papeleo y tarda UN(10,15) minutos por operacin. 5. Al ejemplo de inspeccin de televisores se le desea aumentar la siguiente condicin. Un televisor puede ser arreglado solamente una vez. De otra forma el televisor es desechado. Determine el nmero de televisores desechados en 480 minutos. 6. Llegan carros a una empresa de lavado cada UN(4,7) minutos. El servicio incluye lavado y aspirado. Los clientes normalmente prefieren lavar el carro antes de aspirarlo. Sin embargo, el orden puede invertirse si la cola de aspirado es ms corta. Una vez que se termina un servicio, el auto pasa a al final de la cola del siguiente servicio. Toma UN(4,8) minutos lavar una carro y UN(5,7) minutos aspirarlo. Determine el tiempo promedio que un auto pasa en la empresa. 7. Una fbrica cuenta con dos centros de maquinado idnticos. Cada uno de ellos cuenta con dos mquinas idnticas. Los trabajos llegan a la fabrica en forma aleatoria cada EX(2) horas. Cada trabajo tiene que ser procesado por ambos centros de maquinado en lnea. Los tiempos de procesado son UN(3,4) y NO(4,0.4) horas, respectivamente. El inventario de trabajos asociado a cada centro de maquinado no puede exceder las 10 unidades. Si el espacio del rea de maquinado 1 esta lleno, los trabajos son sacados del sistema. Por otro lado, si el espacio entre el maquinado 1 y el 2 esta lleno, los trabajos en el rea 1 no podrn liberarse hasta que no haya espacio disponible. Utilizando variables RUN.END, determine: a. El porcentaje de tiempo en que el centro de maquinado 1 esta bloqueado porque el almacn del rea 2 esta lleno. b. El porcentaje de trabajos que no son aceptados porque el almacn del rea 1 esta lleno.

M.C. Patricia T. Millet Bolio 63

SISTEMAS DE SIMULACIN

CAPITULO 8: INTERRUPTORES LGICOS EN SIMNET II


8.1 INTRODUCCIN Las colas son amortiguadores donde las transacciones pueden residir de manera indefinida. Una transaccin entrante saltar una cola si el nodo sucesor lo acepta (por ejemplo, una instalacin inactiva). De manera adicional, una instalacin que termina un servicio siempre intentar arrastrar una transaccin de una cola anterior. Esto significa que los movimientos de las transacciones de entrada y de salida de una cola estn automticamente controlados por las condiciones en otros nodos en la red, pero nunca por la cola misma. En algunas situaciones, se desea ejercer control directo sobre la operacin de la cola. Por ejemplo, el apagado de una mquina de mantenimiento se simula mediante el bloqueo de la trayectoria de la cola de su predecesor, por lo que la instalacin no puede extraer ninguna transaccin. Cuando el mantenimiento est completo se revive la mquina al liberar de la cola una transaccin en espera. Los interruptores lgicos permiten al modelador ejercitar control sobre la operacin de la cola. 8.2 DEFINICIN Y USO DE INTERRUPTORES LGICOS Un interruptor lgico se define con el uso de la proposicin $SWITCHES como sigue:
$SWITCHES: NOMBRE DEL SWITCH;ESTADO INICIAL;COLA 1,COLA 2,...: ... ...

El nombre del interruptor lo define el usuario. El estado inicial del interruptor (antes de inicial la simulacin) puede estar en ON (encendido) u OFF (apagado). La siguiente lista de nombres de cola representa las colas controladas por el interruptor. Por ejemplo, la proposicin
$SWITCHES: SW;ON;Q1,Q2,...:

indica que el interruptor inicialmente est en ON y que controla las colas llamadas Q1 y Q2. El modelado de la operacin del interruptor se consigue usando los comandos especiales de la forma:
NOMBRE DEL SWITCH=ON NOMBRE DEL SWITCH=OFF

M.C. Patricia T. Millet Bolio 64

SISTEMAS DE SIMULACIN

Estos comandos se usan de dos maneras distintas.


Como condiciones que comprueban el estado actual del interruptor (ON u OFF) Como comandos que invierten el estado del interruptor (ON a OFF u OFF a ON).

En el primer caso, la condicin se integra (con AND/OR) en el segundo campo de una rama o en la proposicin IF-ENDIF. En el segundo caso, el comando se usa en el tercer campo de una rama. Una condicin de interruptor se considera una prueba binaria (0-1). Sin embargo, su uso como un comando nos permite controlar la operacin de colas etiquetadas. La ejecucin del comando (nombre del switch = ON) intentar de forma automtica empujar la primera transaccin en espera fuera de cada una de las colas en la lista de la definicin del interruptor. Si una cola est vaca o si no se puede entrar en el nodo siguiente (por ejemplo, una rama no satisfecho o una instalacin ocupada), entonces ninguna accin se toma en esa cola. Recuerde que empujar las transacciones fuera de una cola controlada por un interruptor slo sucede cuando el comando (nombre del switch = ON) se ejecuta sobre una rama. La ejecucin del comando (nombre del switch = OFF) slo altera el estado del interruptor, pero no tiene efecto sobre sus colas designadas. Ejemplo: Mantenimiento de una mquina. Los trabajos llegan para su procesamiento a una mquina cada EX(11) minutos. El tiempo de procesamiento es EX(12) minutos. Despus de ocho horas, la mquina se apaga durante UN(15,20) minutos para darle mantenimiento.
LIM=1 RETRASO 480 SW=OFF SW=ON MANT UN (15,20)

TIEMPO EX(11) SW=ON?

EX(12) TERM

LLEGADA

COLA

MAQUINA

M.C. Patricia T. Millet Bolio 65

SISTEMAS DE SIMULACIN

$PROJECT;MANTENIMIENTO;8 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(30): $SWITCHES: SW;ON;COLA: $BEGIN: TIEMPO *S;/L/LIM=1: !Segmento de mantenimiento RETRASO *A;480: R1 *B;MANT;;SW=OFF%: MANT *A;UN(15,20): R2 *B;RETRASO;;SW=ON%: LLEGADA *S;EX(11): !Segmento de mquina COLA *Q: R3 *B;MAQUINA/1;SW=ON?: MAQUINA *F;;EX(12);*TERM: $END: $RUN-LENGTH=1000: $STOP:

En la red del modelo se observan dos segmentos inconexos. El primer segmento simula el ciclo de mantenimiento de la mquina y el segundo representa la operacin de la mquina. La condicin, SW=ON?, en la rama de la cola COLA a la instalacin MAQUINA controla la salida de la cola. De esta forma, se permitir que las transacciones salgan de COLA solo si SW es ON. El segmento de mantenimiento controla el estado del interruptor. La fuente manda una transaccin al auxiliar RETRASO, donde espera durante 8 horas, lo que representa el tiempo en operacin de MAQUINA. Cuando una transaccin sale de RETRASO, MAQUINA ir a mantenimiento. La transaccin saliente entonces ejecuta el comando, SW=OFF, para detener el flujo de transacciones de COLA a MAQUINA. La transaccin de mantenimiento se mueve entonces al auxiliar MANT, que representa el periodo necesario para completar el mantenimiento. Cuando la transaccin sale de MANT, entra nuevamente en el auxiliar RETRASO para repetir el ciclo. Durante su trayecto, ejecutar el comando SW=ON, que entonces intentar empujar un trabajo en espera fuera de COLA hacia MAQUINA, como se desea. Si resulta que COLA est vaca en el momento en el que SW=ON se ejecuta, el comando simplemente actuar para desbloquear COLA de modo que un trabajo nuevo que llega pueda saltar la cola y entrar a MAQUINA.
TIEMPO

8.3 INTERRUPTORES ANIDADOS Considere un modelo en el que una transaccin que sale de un nodo ejecuta un interruptor SW1=ON que controla una cola llamada Q1. Suponga que una rama que sale de Q1 ejecuta otro interruptor SW2=ON que controla una segunda cola llamada Q2. Si la ejecucin de SW1=ON causa la salida de una transaccin de Q1, dicha transaccin causar la ejecucin de SW2=ON. Por lo tanto el SW1=ON causa el SW2=ON, esto es considerado una anidacin, la cual causa una reaccin de movimiento de transacciones en tres niveles de la red. M.C. Patricia T. Millet Bolio 66

SISTEMAS DE SIMULACIN

El modelo quedara como sigue:


$PROJECT;SWITCH;8 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(20): $SWITCHES;SW1;ON;Q1: SW2;ON;Q2: $BEGIN: SS *S;/L/LIM=1: R1 *B;TERM;;SW1=ON%: Q1 *Q;(4): R2 *B;F1;;SW2=ON%: !Anidacin de interruptores F1 *F;;EX(1);GOTO-TERM: Q2 *Q;(4): F2 *F;;EX(1);GOTO-TERM: $END: $RUN-LENGTH=20: $TRACE=0-10: $STOP:

Este tipo de anidacin de operaciones no se permite en SIMNET Il y causar un error. Sin embargo, se puede simular estas operaciones anidadas de interruptores sin causar error en el programa, usando un truco como se muestra en el siguiente modelo:
$PROJECT;SWITCH;8 ENERO 2003;PATRICIA MILLET: $DIMENSION;ENTITY(20): $SWITCHES: SW1;ON;Q1: SW2;ON;Q2: $BEGIN: SS *S;/L/LIM=1: R1 *B;TERM;;TRUCO=0,& SW1=ON,& IF,TRUCO=99,THEN,SW2=ON,ENDIF%: Q1 *Q;(4): R2 *B;F1;;TRUCO=99%: F1 *F;;EX(1);GOTO-TERM: Q2 *Q;(4): F2 *F;;EX(1);GOTO-TERM: $END: $RUN-LENGTH=20: $TRACE=0-4: $STOP:

El valor de la variable TRUCO es inicialmente cero. Al ejecutarse SW1=ON, TRUCO continuara con valor de cero si la rama R2 que sale de Q1 no puede ser transitada. De lo contrario, TRUCO toma el valor de 99, lo cual sirve de seal para la transaccin saliente de SS de ejecutar SW2=ON. Con esto se evita el error de anidacin. M.C. Patricia T. Millet Bolio 67

SISTEMAS DE SIMULACIN

8.4 EJERCICIOS 1. En el ejemplo de mantenimiento de una mquina, se supone implcitamente que la reparacin comenzar de inmediato despus que hayan transcurrido 480 minutos (es decir, cuando una transaccin sale de RETRASO). Esta suposicin es correcta slo si sucede que MAQUINA esta inactiva en ese momento. De otra forma, el mantenimiento preventivo no debe comenzar hasta que MAQUINA complete su carga. Modifique el modelo para explicar este detalle 2. Modifique el ejemplo de mantenimiento de una mquina de modo que el mantenimiento preventivo se lleve a cabo cada 50 trabajos completos en lugar de cada 8 horas. 3. Productos llegan cada EX(2) minutos para ser procesados en una mquina. Una vez terminado el trabajo el operador de la mquina inspecciona el producto (toma 1.5 minutos la inspeccin), el 30% de las veces el producto tiene que ser retrabajado, y el operador lo carga inmediatamente en la mquina. Procesar el producto le toma al trabajador originalmente EX(1) minuto y arreglarlo toma EX(0.8) minutos. Se desea calcular el tiempo promedio necesario para terminar un producto. 4. Llegan trabajos a una mquina cada EX(20) minutos. Toma EX(16) minutos procesar cada trabajo. Cada 8 horas, las herramientas deben ser remplazadas y toma EX(5) minutos completar esta operacin. Ocasionalmente, cada EX(48) horas, la mquina se descompone, el tiempo de reparacin es de EX(1). Determine el tiempo promedio para completar un trabajo. 5. Se fabrican paletas en forma automtica en una mquina. Cada paleta esta formada de 4 capas y cada capa consta de 7 unidades de un producto dado. El tiempo de colocar una unidad de producto en una paleta es de 8 segundos. Despus que una capa (con 7 unidades) de la paleta ha sido terminada, la mquina pasa al siguiente nivel. Le toma 10 segundo pasar de una capa a otra. Despus de que la paleta (con 4 capas) ha sido terminada, se transporta al rea de envi. El tiempo de transporte por paleta es de 30 segundos. Suponga que las unidades del producto requeridos para fabricar las paletas esta siempre disponible. Corra el modelo para 100 minutos. 6. Modifique el problema 5 para que la mquina pueda ser detenida para mantenimiento preventivo cada 200 paletas. Toma EX(10)minutos llevar a cabo el mantenimiento. M.C. Patricia T. Millet Bolio 68

SISTEMAS DE SIMULACIN 7. Asuma que en el problema 5 la mquina se descompone cada UN(40,50) minutos y cuando esto ocurre toma EX(10) minutos repararla.

CAPITULO 9: RECURSOS EN SIMNET II


9.1 INTRODUCCIN En SIMNET II, un recurso es un producto escaso que debe ser compartido entre varias instalaciones. Por ejemplo, dos mquinas atendidas por un solo operador tendran que ser modeladas definiendo al operador como un recurso y a las mquinas como dos instalaciones separadas. La asignacin de un recurso a una instalacin esta basada en una serie de prioridades. En tal caso, una instalacin con prioridad alta debe tener preferencia sobre instalaciones con prioridades menores. 9.2 RECURSOS SIN PRIORIDAD La definicin de recursos sin ninguna prioridad debe seguir el siguiente formato:
$RESOURCES: NOMBRE DEL RECURSO;NIVEL INICIAL (INSTALACIN1,...,INSTALACIN M) ... ...

A continuacin se presenta el smbolo grafico de un recurso. Note que un recurso no es un nodo; por el contrario, es una definicin como lo es un interruptor o una variable estadstica.
NIVEL INCIAL (INSTALACIN 1,...,INSTALACIN M)

Los siguiente ejemplos representa recursos:


$RESOURCES: R1;5(F1,F2,F3): R2;(F3,F4):

El nivel inicial del recurso R1 es de 5 unidades y puede ser asignado a las instalaciones F1, F2 y F3. El recurso R2 tiene un nivel inicial de una unidad (default) y puede ser asignado a las instalaciones F3 y F4. En ausencia de prioridades, una transaccin que llega a una instalacin solo puede satisfacer sus necesidades del inventario; es decir, de los recursos no utilizados. Si el recurso no esta disponible en el momento, la transaccin M.C. Patricia T. Millet Bolio 69

SISTEMAS DE SIMULACIN simplemente esperar en la instalacin hasta que el sistema libere los recursos. Cuando una instalacin esta esperando por un recurso para poder operar se dice que esta en estado de bloqueo por recurso. Los recursos solo pueden ser adquiridos por una instalacin, pero puede ser liberados por cualquier nodo o rama. La informacin que controla la adquisicin y liberacin de recursos es colocada en el campo de recursos de cualquier nodo o rama usando el siguiente formato:
NOMBRE 1 DEL RECURSO(A,B,C,D),NOMBRE 2 DEL RECURSO(A,B,C,D),... DONDE: A: UNIDADES DE RECURSO QUE ADQUIRIR LA INSTALACIN ANTES DEL COMIENZO DEL SERVICIO. (DEFAULT = 1) B: TIEMPO NECESARIO PARA MOVER A UNIDADES DE LA BASE DE ACOPIO A LA INSTALACIN. (DEFAULT = 0) C: UNIDADES DEL RECURSO QUE DEBEN REGRESAR A LA BASE DE ACOPIO DESDE EL EXTREMO DE SALIDA DE UN NODO O UNA RAMA. (DEFAULT = 1) D: TIEMPO NECESARIO PARA REGRESAR C UNIDADES A LA BASE DE ACOPIO. (DEFAULT = 0)

Los elementos a, b, c y d pueden ser cualquier expresin matemtica. Fjese que a y b solo tienen significado en el caso de las instalaciones ya que un recurso solo puede ser adquirido por una instalacin. En los dems casos, los elementos a y b son ignorados por SIMNET II y podran omitirse. Los siguientes ejemplos explican los campos de un recurso:
F1 *;;EX(5);/R/R1(,5,J+1,),R2: La instalacin F1 utiliza dos recursos R1 R1 (default) que toma B = 5 unidades

y R2. Necesita A = 1 unidades de de tiempo llegar a la base de acopio. Una vez que el servicio es completado, C = J + 1 unidades regresarn a la base de acopio en D = 0 unidades de tiempo. El recurso R2 tiene valores A = 1, B = 0, C = 1 y D =0.
AX *A;UN(2,3);/R/R1(,,3,A(1)+J): El auxiliar AX regresara C = 3 unidades de R1 a la A(1) + J unidades de tiempo. Los elementos A

base de acopio en D = y B, con valores por default, son ignorados ya que solo tienen significado en el caso de las instalaciones. Existen ciertas reglas para la asignacin de recursos a instalaciones:

No se permite la asignacin parcial del pedido de cualquier recurso, en el sentido que una instalacin debe adquirir en un solo pedido el total de cualquier recurso.

M.C. Patricia T. Millet Bolio 70

SISTEMAS DE SIMULACIN

Cuando una instalacin solicita ms de un recurso, stos se adquieren uno a la vez con la instalacin permaneciendo en estado de bloqueo de recursos hasta que se satisface toda la solicitud. Cuando un recurso es regresado a la base de acopio, las instalaciones asociados con este, sern revisados en el orden en el que son en listados en la definicin de $RESOURCES. Las unidades regresadas son asignadas a las transacciones en espera. Ninguna unidad no utilizada ser olvidada en la base de acopio.

Ejemplo: Eliminacin de desechos Una planta procesadora de alimentos produce material de desecho que debe ser transportada a los depsitos. La planta emplea 4 camiones para esta operacin. Montones de desperdicios slidos son descargados desde la planta cada 6 minutos. Cada camin llena su carga con dos montones. Dos palas mecnicas, cada una operada por una persona, se usan para cargar los camiones. Los tiempos de carga para las dos palas son EX(10) y EX(12) minutos. El operador tarda aproximadamente 3.5 minutos en preparar la pala mecnica para el siguiente camin. El viaje al rea de depsito toma UN(15,20) minutos, y el viaje de regreso UN(10,15) minutos . El tiempo necesario para descargar un camin es aproximadamente 5 minutos.

C_O CAMION

C_O PALA_1 PALA_2 OPERADOR EX(10) PALA_1

3.5

UN(10,15)

6 PILAS

2 C_O

EX(12) PALA_2 VIAJE TERM

CARGA

UN(15,20)+5

M.C. Patricia T. Millet Bolio 71

SISTEMAS DE SIMULACIN

$PROJECT;DESECHOS;9 ENERO 03;PATRICIA MILLET: $DIMENSION; ENTITY(50): $RESOURCES: OPERADOR;2(C_0,PALA_1,PALA_2): CAMION;4(C_O): $BEGIN: PILAS *S;6: CARGA *Q;;2: C_O *F;/S/HTE(PALA_1,PALA_2); /R/OPERADOR(,,0,),& CAMION(,,0,): PALA_1 *F;;EX(10);/5/OPERADOR(0,,,3.5);*VIAJE: PALA_2 *F;;EX(12);/5/OPERADOR(0,,,3.5): VIAJE *A;UN(15,20)+5: R1 *B;TERM;/R/CAMION(,,,UN(10,15)): $END: $RUN-LENGTH=480: $TRACE=0-25: $STOP:

!2 OPERADORES !4 CAMIONES !Crea pilas !Acum. carga de pilas !Selecciona palas !Adquiere 1 operador !Adquiere 1 camin !Regresa operador !Regresa operador !Tiempo viaje !Regresa camin

Los camiones y los operadores estn representados por dos recursos llamados CAMION y OPERADOR cuyos niveles iniciales son 4 y 2, respectivamente. La cola CARGA acta como un acumulador que libera una carga de camin cada 2 pilas que llegan de la fuente PILAS. El nico propsito de la instalacin C_O (con tiempo de servicio cero) que sigue a la cola CARGA es adjudicarse una unidad de cada uno de los recursos CAMIN y OPERADOR. Esto se logra definiendo el campo de recursos de la instalacin como OPERADOR(,,0,),CAMION(,,0,), lo cual significa que C_O adquiere una unidad de cada recurso en un cero unidades de tiempo y no regresa ninguna. De tal forma, que una transaccin saliente de C_O cuenta con un camin y un operador. La seleccin entre PALA_1 y PALA_2 es hecha en funcin de la condicin tiempo libre). Una transaccin que sale de PALA_1 o PALA_2 significa que el operador a terminado su trabajo de cargar el camin. La instalacin entonces regresa una unidad de OPERADOR utilizando el cdigo OPERADOR(0,,,3.5) en el campo 5. El primer campo del recurso es cero (A = 0) porque PALA_1 y PALA_2 no adquieren recursos. Adems, el cuarto elemento de recurso se iguala a 3.5 (D=3.5) para representar lo que tarda el operador en poder empezar la siguiente carga.
HTE(mayor

Una transaccin saliente de VIAJE significa que un camin a llegado al depsito y descargado. Por lo tanto una unidad de CAMION es regresado por la rama R1 de VIAJE a TERM. El tiempo de retorno esta dado por D = UN(10,15). Note que el recurso CAMION puede ser regresado directamente de VIAJE sustituyendo el segmento por:
VIAJE *A;UN(15,20)+5;/R/CAMION(,,,UN(10,15);*TERM:

En este caso, el segmento de la rama R1 sera eliminado. M.C. Patricia T. Millet Bolio 72

SISTEMAS DE SIMULACIN

En lugar de utilizar la instalacin C_O podra hacerse que PALA_1 y PALA_2 adquirieran sus recursos directamente, definiendo sus campos de recursos como OPERADOR(,,,3.5),CAMION(,,0,). La dificultad con esta lgica es que podra PALA_1 adquirir uno de los dos recursos y PALA_2 adquirir el otro. En este caso, ambas instalaciones estaran incorrectamente bloqueadas en espera del recurso faltante. Utilizando la instalacin C_O, se asegura que la transaccin entrante cuente con ambos recursos. Si resuelve el modelo observar que el bloqueo de la instalacin C_O (=0.7886) se puede atribuir nicamente la falta de recursos OPERADOR y/o CAMIN. El AVERAGE BLKGE TIME para C_O (=11.47 minutos)representa el tiempo promedio que una carga tiene que esperar por un operador y/o camin. Las estadsticas de los recursos muestran que, en promedio, 1.73 (de 2) operadores y 3.7(de 4) camiones estuvieron en uso durante la simulacin. En realidad, los valores 1.73 y 3.70 representan el uso bruto porque los recursos estuvieron en transito parte del tiempo como lo muestra el AV. TRNST UNITS. El uno neto de los dos recursos sera de 1.73-0.262=1.468 operadores y 3.7-0.912=2.788 camiones. El tiempo promedio de trnsito es de 3.5 minutos y 12.5 minutos para OPERADOR y CAMION. El AV. TIME IN USE de un recurso representa el tiempo promedio en que un recurso estaba en uso o transito y el AV. TIME IDLE indica el tiempo promedio que un recurso estaba disponible en la base de acopio. 9.3 PRIORIDADES Y DERECHOS DE DESALOJO DE RECURSOS Un recurso puede ser asignado a una instalacin de acuerdo a un nivel de prioridades predeterminado. En este caso, una instalacin con mayor prioridad puede o no tener derecho de desalojo sobre otras instalaciones de menor prioridad. SIMNET II especifica los niveles de prioridad y los derechos de desalojo directamente en la definicin de $RESOURCES utilizando el siguiente formato:
NOMBRE DEL RECURSO;NIVEL INICIAL(GRUPO 1(P)/GRUPO 2(P)/ GRUPO N(P))

Las diagonales establecen los niveles de prioridad, asignando al grupo 1 de instalaciones la prioridad ms alta y al grupo n la ms baja. El smbolo (P) es remplazado por (PR) para indicar derecho de desalojo o (NPR) sin derecho de desalojo. El default es PR. Por ejemplo considere el siguiente segmento:
$RESOURCES: R1;3(F1,F2/F3(NPR)/F4,F5):

Los tres niveles de prioridad son (F1,F2), (F3) y (F4,F5), con (F1,F2) teniendo la mayor prioridad. Las instalaciones F1 y F2 pueden (por default) desalojar F3, F4 o F5 para satisfacer sus necesidades, de ser necesario. El anlisis de desalojo M.C. Patricia T. Millet Bolio 73

SISTEMAS DE SIMULACIN siempre inicia con los niveles de prioridad menores; por lo tanto, F1 y F2 intentaran desalojar primero a F4 o F5 antes que a F3. La instalacin F3, por otro lado, tiene una mayor prioridad sin derecho de desalojo sobre F4 y F5 en la adquisicin del recurso R1. Las siguientes reglas restringen el uso de prioridades de desalojo:

Una instalacin sujeto a derecho de desalojo puede manejar slo un recurso. Bajo la opcin PR, el derecho de prioridad tendr lugar slo si la cantidad apropiada satisface por lo menos la solicitud de la instalacin con derecho de prioridad. Cualquier cantidad excedente se dejar en la base de acopio. Para las opciones PR y NPR, todos los servidores mltiples en una instalacin deben utilizar exactamente la misma cantidad de cada recurso. Este no es el caso en ausencia de clases de prioridades, ya que cada servidor en paralelo puede actuar en forma independiente de todos los otros servidores. Una instalacin con derecho de prioridad puede tenerlo sobre ms de un servidor en paralelo en la instalacin para satisfacer sus necesidades. Cualquier cantidad excedente se dejar en la base de acopio, en el sentido que un servidor con derecho de prioridad no puede guardar una cantidad parcial de sus necesidades de recursos.

Ejemplo: Reparacin de Mquina La falla de una parte principal en una mquina causa que esta tenga que parar cada UN(400,1400) minutos de operacin. Cuando la falla ocurre el operario responsable de la mquina debe quitar la pieza y remplazarla por una ya arreglada. Toma 10 minutos quitar la pieza y UN(10,30) minutos instalar la arreglada. La reparacin de la pieza la realiza el mismo operario y le toma UN(400,1200) minutos por unidad. Adems le toma 5 minutos llevar la pieza al almacn. El inventario inicial de partes es de 2 unidades. Se desea correr el modelo para 120 000 minutos y obtener estadsticos sobre: a) El nmero promedio de partes en reparacin. b) El promedio de utilizacin del operario. c) El nmero total de partes en el sistema.

M.C. Patricia T. Millet Bolio 74

SISTEMAS DE SIMULACIN

LIM=1

UN(400,1400) 10

NUEVA ALMACEN

UN(10,30) PARTE QUITAR INST/ REPARA OPER INST

INICIO

MAQ

QUITAR

C_REP

REPARA UN(400,1200)

TERM

$PROJECT;REPARACIN DE MAQUINA;11 ENERO 03;PATRICIA MILLET: $DIMENSION; ENTITY(40): $VARIABLES: PART_REP,RUN.END,ALEN(C_REP)+ALEN(REPARA): UT_OPER,RUN.END,(1-ALEV(OPER))*100: PARTES,RUN.END,ALEN(MAQ)+ALEN(QUITAR)+ALEN(PARTE)& +ALEN(INST)+ALEN(C_REP)+ALEN(REPARA)& +ARTU(ALMACEN)+ALEV(ALMACEN): $RESOURCES: ALMACEN;2(PARTE): !Dos piezas en almacn OPER;1(QUITAR,INST/REPARA): !Prioridad ms baja reparar $BEGIN: INICIO *S;/L/LIM=1: !Inicia el modelo MAQ *F;;UN(400,1400): !Corre maquina hasta fallo QUITAR *F;;10;/R/OPER;& !Quita la parte con un operario GOTO-PARTE,C_REP: !Enva copias a parte y c_rep PARTE *F;/R/ALMACEN(,,0,): !Adquiere nueva parte de almacn INST *F;;UN(10,30);/R/OPER;& !Instala pieza nueva con un operario GOTO-MAQ: !Inicia operacin maquina C_REP *Q: !Cola para piezas a reparar REPARA *F;;UN(400,1200); /R/OPER: !Reparacin de piezas con operario R1 *B;TERM;/R/part(,,,5): !Enva pieza a almacn en 5 min. $END: $RUN-LENGTH=120000: $STOP:

Es importante observar dos situaciones en este modelo: Es crucial que ALMACEN (la pieza) sea adquirida por PARTE porque la adquisicin directa por instalacin podra resultar en que se tuviera a OPER cuando ALMACEN no esta disponible. Debido a que INST tiene M.C. Patricia T. Millet Bolio 75

SISTEMAS DE SIMULACIN derecho de desalojo, OPER puede estar incorrectamente amarrado en INST esperado por una parte de ALMACEN. La instalacin REPARA no puede regresar directamente ALMACEN (la pieza) porque en SIMNET II una instalacin desalojable solo puede manejar un recurso. La restriccin se logra devolviendo ALMACEN por medio de la rama R1 que sale de REPARA. Este truco no afecta la lgica ni las estadsticas del modelo.

M.C. Patricia T. Millet Bolio 76

SISTEMAS DE SIMULACIN 9.4 EJERCICIOS 1. Un operador atiende una mquina. Adems debe realizar reparaciones entre trabajos en la mquina. Las reparaciones deben ser interrumpidas a favor de los trabajos. Los trabajos llegan a la mquina cada EX(2) horas y las reparaciones cada EX(3) horas. El procesamiento de un trabajo en la mquina le toma al operador EX(1.5) horas y la reparacin EX(1) hora.

M.C. Patricia T. Millet Bolio 77

SISTEMAS DE SIMULACIN

CAPITULO10:ENSAMBLAR Y EQUIPARAR EN SIMNET II


10.1 INTRODUCCIN Las transacciones que quedan en una cola pueden ser ensambladas en una sola transaccin o equiparada con otra bajo alguna prioridad de sus respectivas colas 10.2 OPERACIONES DE ENSAMBLAJE Las operaciones de ensamblaje unen transacciones de varias colas en una sola transaccin de salida. Esta operacin se puede lograr utilizando un cdigo especial que define las colas que se ensambla. El cdigo, que es colocado en el campo 4 (campo de seleccin) de cualquiera de las colas a ensamblar, debe seguir el siguiente formato:
ASM(COLA 1,...,COLA M/REGLA DE ATRIBUTOS)

La regla de atributos especifica cuales sern los atributos de la transaccin ensamblada saliente basado en los atributos de las transacciones que lo conforman. La siguiente tabla resume estas reglas: Regla SUM PROD FIRST LAST SELQ(i) HI(#) LO(#) Reglas de atributos Descripcin Suma de los atributos individuales Producto de los atributos individuales Atributos de la cola 1 (segn definicin en ASM) Atributos de la cola m (default) Atributos de la cola I, i=1,2,, o m Atributos de la transaccin con el ms alto A(#) Atributos de la transaccin con el ms bajo A(#)

Por ejemplo el cdigo ASM(Q1,Q2/LO(2)) con la transaccin ensamblada entrando a la instalacin F1, se representara con la siguiente figura:

Q1 LO(2)

EX(5) F1

Q1

M.C. Patricia T. Millet Bolio 78

SISTEMAS DE SIMULACIN La regla LO(2) indica que los atributos de la transaccin ensamblada igualar a aquellos de las transacciones salientes de Q1 y Q2, que tenga el valor ms pequeo de A(2). Existen dos reglas que rigen el ensamblaje:

El grupo de colas a ensamblar solo pueden alimentar a un solo nodo, ya sea por secuencia directa, transferencia directa o por una rama. El cdigo de ensamble solo necesita aparecer una vez en cualquiera de las colas a ensamblar, dicha cola debe definir la ruta de la transaccin ensamblada hacia un solo nodo.

Para aclarar estas reglas, los segmentos que corresponden a la figura anterior pueden ser:
Q1 F1 . . . Q2 *Q/S/ASM(Q1,Q2/LO(2)): *F;;EX(5);*TERM:

*Q:

En este caso, Q1 lleva el cdigo y ruta de ensamble de la transaccin hacia F1 por secuencia directa. Lo mismo sera si Q2 carga el cdigo, en este caso F1 debera aparecer justo despus de Q2. Tambin se puede utilizar transferencia directa para indicar la ruta de la transaccin ensamblada:
Q1 . . . F1 . . . Q2 *Q/S/ASM(Q1,Q2/LO(2));*F1:

*F;;EX(5);*TERM:

*Q:

En forma similar se puede utilizar una rama:


Q1 R1 . . . F1 . . . Q2 *Q/S/ASM(Q1,Q2/LO(2));: *B;F1:

*F;;EX(5);*TERM:

*Q:

M.C. Patricia T. Millet Bolio 79

SISTEMAS DE SIMULACIN Observe que las colas ensambladas pueden ser mencionadas en cualquier parte del modelo, siempre y cuando la cola que lleva el cdigo de ensamble establezca la ruta al siguiente nodo 10.3 OPERACIONES DE EQUIPARACIN Se aplica slo a transacciones que residen en colas. Las transacciones equiparadas deben salir de la cola respectivamente en forma concurrente. Si alguna fila no tiene una transaccin de equiparacin ninguna de las filas restantes ser capaz de liberar su transaccin. El cdigo debe seguir el siguiente formato:
MAT(COLA 1,...,COLA M/INDICES DE EQUIPARACIN DE ATRIBUTOS)

Como el ensamblaje, el cdigo MAT se coloca en el campo 4 (campo de seleccin) de cualquiera de las colas a equiparar. Los ndices de equiparacin de atributos definen el grupo de atributos que deben tener los mismos valores en las respectivas colas para que una transaccin pueda ser equiparada. Estos atributos tienen que ser expresados individualmente o en rangos. Por ejemplo, MAT(Q1,Q2/1,3) indica que los valores de A(1) y A(3) deben ser iguales para las dos transacciones seleccionadas de Q1 y Q2. MAT(Q1,Q2/1-3,5,6) indica que los atributos equiparados son A(1), A(2), A(3), A(5) y A(6). Tambin se puede utilizar el cdigo ALL para los ndices [MAT(Q1,Q2/ALL)] lo cual significa que todos los atributos deben equiparar. Finalmente, los ndices pueden eliminarse [ MAT(Q1,Q2)] para indicar que la transaccin simplemente debe esperar por cualquier otra para salir de sus respectivas colas, en otras palabras, cada cola libera su primera transaccin. La forma de establecer la ruta de la transaccin en colas MAT difiere de las ya que en este caso cada cola debe establecer la ruta de transaccin independientemente. Al igual que en ASM, la ruta de las colas pueden llevar a un solo nodo (o TERM) utilizando secuencia directa, transferencia directa o rama. No olvide, que el cdigo MAT puede aparecer en solo una de las colas asociadas.
ASM

M.C. Patricia T. Millet Bolio 80

SISTEMAS DE SIMULACIN 10.4 EJERCICIOS 1. En el modelo de eliminacin de desechos se utilizaron recursos para simularlo. Utilice el ensamble (ASM) como otra forma de modelar la misma situacin. Realice la simulacin para 480 minutos y calcule el tiempo de viaje. 2. Resuelva el ejercicio 1 utilizando el cdigo MAT. 3. Un operador atiende una mquina de ensamble y una ventanilla de informacin. Los dos tipos de piezas a ensamblarse llegan cada Ex(3) minutos y Ex(2.5) minutos respectivamente. El operador debe colocar al mismo tiempo las piezas en la mordaza y esto le toma Ex(0.5) minutos. Las piezas tardarn en procesarse UN(1, 1.5) min. Las piezas ensambladas debern sacarse de la mordaza y esto le toma al operador Ex(0.5)min. Cada Ex(4) minutos llegan personas a pedir cotizaciones y hacer sus pedidos, tarda entre 1 y 2 minutos en atender a cada cliente. Las personas pueden esperar cuando es necesario atender la mquina. Hacer un modelo de esta situacin utilizando recursos ASM. 4. Dos subensambles son producidos en departamentos independientes para formar una mquina de trabajo pesado. El subensamble A es producido cada EX(5) horas y el B cada EX(6) horas. Al departamento de ensamblado le toma EX(4) horas por unidad. Una vez que el producto ensamblado es preparado para envo. Le toma EX(1) hora terminar esta tarea. Al mismo tiempo, papeles y garantas son preparadas en departamento diferente y les toma EX(2) horas terminar esta tarea. Cuando ambos, la mquina y los papeles estn listos, la unidad es enviada al rea de envo. Calcule el tiempo que cada unidad pasa en la planta.

M.C. Patricia T. Millet Bolio 81

SISTEMAS DE SIMULACIN

CAPITULO 11: COMANDOS ESPECIALES EN SIMNET II


11.1 INTRODUCCIN Anteriormente se ha utilizado un comando especial (SWITHC=ON o OFF=) para controlar el estado de un interruptor lgico. Una ventaja de utilizar el formato de los comandos especiales es la facilidad de unirlos al condicional IF-ENDIF, lo cual incrementa el poder de modelacin de SIMNET II. Los comandos especiales de SIMNET II incluyen: 1. Activacin y desactivacin de una fuente. 2. Recopilacin de variables estadsticas. 3. Manipulacin de archivos aplicadas a colas e instalaciones. 4. Control de los parmetros de una cola. 5. Localizacin de entradas en archivos. 6. Control de atributos. 7. Control de la longitud de la corrida. 8. Capacidad de archivos externos READ/WRITE. En fusin del sentido introductorio de este curso solo se presentaran los comandos del 1 al 3. 11.2 ACTIVACIN Y DESACTIVACIN DEL NODO FUENTE En la definicin del nodo fuente, el quinto campo (LIM=) se usa para controlar el nmero de creaciones o la longitud de tiempo en la que el nodo fuente est activo. Estos lmites, una vez especificados al inicio de la simulacin, no se pueden alterar durante la ejecucin. Los comandos de activacin/desactivacin de la fuente permiten al modelador suspender o reiniciar creaciones de fuente de forma instantnea a voluntad. El formato de estos comandos es como sigue:
SUSPEND = NOMBRE DE FUENTE RESUME = NOMBRE DE FUENTE

Ejemplo: Lnea de produccin con averas. Una lnea de produccin automtica entrega una unidad de producto cada UN(1,2) minutos para su inspeccin. El tiempo de inspeccin lleva 1.5 minutos por unidad. Se sabe que la lnea de produccin se avera cada EX(120) minutos. Completar la reparacin toma UN(5,10) minutos. M.C. Patricia T. Millet Bolio 82

SISTEMAS DE SIMULACIN

$PROJECT;PROD CON AVERIAS;11 ENERO 03;PATRICIA MILLET: $DIMENSION; ENTITY(50);A(1): $VARIABLES: TPO_SIS;;TRANSIT(1) $BEGIN: LLEGADA *S;UN(1,2);;1: !Llegan unidades COLA *Q: !Espera inspeccin INSPEC *F;;1.5: !Inspeccin R1 *B;TERM;/V/TPO_SIS%: !Calcula tpo de sistema AVERIAS *S;EX(120);120: R2 *B;REPARA;;SUSPENDE=LLEGADA%: REPARA *A;UN(5,10): R3 *B;TERM;;RESUME=LLEGADA%: $END: $RUN-LENGTH=480: $STOP: !1er. averia en T=120 !Suspende llegadas !Reparacin !Reinicia llegadas

11.3 RECOPILACIN DE VARIABLES ESTADSTICAS Las estadsticas de una variable OBS.BASED se recopilan elaborando una lista del nombre de la variable en el cuarto campo de una rama apropiada. El mismo resultado se logra usando el comando especial:
COLLECT=NOMBRE DE LA VARIABLE

Este comando especial es particularmente conveniente cuando se desa recopilar estadsticas acerca de la variable de forma condicional dentro de una proposicin IF-ENDIF.

11.4 COMANDOS PARA LA MANIPULACIN DE ARCHIVOS Los comandos para la manipulacin de los archivos permiten cambiar, borrar, agregar, copiar, reemplazar y localizar transacciones en colas e instalaciones. La siguiente tabla proporciona un resumen de las asignaciones de la manipulacin de los archivos. El archivo del lado derecho de la asignacin se define como el archivo donador. El archivo del lado izquierdo se llama archivo receptor. Por ejemplo, en el comando LAST(QQ)=1(WW), WW y QQ representa las colas donador y receptor, respectivamente. El comando mueve la primera entrada en WW a la ltima posicin (LAST) de QQ. Comandos de manipulacin de archivos Solo colas: Inicio Descripcin a(Q1)=b(Q2) Mueve la entrada b de Q2 a la posicin a en Q1 M.C. Patricia T. Millet Bolio 83

SISTEMAS DE SIMULACIN Mueve todas las transacciones de Q2 a Q1 comenzando en la posicin a de Q1 a(Q1)=TRANS Coloca una copia de la transaccin que actualmente recorre la rama en la posicin a de Q1 a(Q1)=DEL Borra la entrada a en Q1 ALL(Q1)=DEL Borra todos los contenidos de Q1 (Q1 queda vaca) INS(Q1)=b(Q2) Inserta la entrada b de Q2 en Q1 por la disciplina de cola de Q1 INS(Q1)=ALL(Q2) Inserta todas las transacciones de Q2 en Q1 por la disciplina de cola de Q1 INS(Q1)=TRANS Inserta una copia de la transaccin actual en Q1 por la disciplina de la cola Q1 Solo instalaciones: a(F1)=REL Libera de forma instantnea la entrada a en la instalacin F1 ALL(F1)=REL Libera de forma instantnea todos los contenidos de la instalacin F1 Colas e instalaciones: a(Q1 o F1)=REP Remplaza los atributos de la entrada a en Q1 o F1 con los de la transaccin actual COPY=b(Q1 o F1) Cambia los atributos de la transaccin actual que atraviesa la rama a los de la entrada b en Q1 o F1 Tanto a como b pueden ser cualesquiera expresiones matemticas de SIMNET II o el smbolo LAST, Q1 y Q2 pueden representar la misma cola si se desea reacomodar el orden de las transacciones en una cola dada. Cuatro reglas generales gobiernan el uso de los comandos de manipulacin de archivos: 1. Los comandos de solo colas, con la excepcin de los que incluyen ALL, son dinmicas en el sentido de que la cola receptora intentar de forma automtica mandar su transaccin recibida tan lejos como sea posible en la red. Esta accin sucede momentneamente mientras el comando se ejecuta. 2. El movimiento automtico de transacciones no se realizar si la ejecucin de la asignacin es ocasionada por una manipulacin de archivos anidada. La anidacin ocurre cuando el movimiento de una transaccin que resulta de la ejecucin de un comando de manipulacin de archivos ocasiona la ejecucin de otra asignacin de manipulacin de archivos. Por ejemplo, si a(Q1)=b(Q2) mueve una transaccin fuera de Q1 y la transaccin de Q1 ejecuta la asignacin a(Q3)=b(Q4), SIMNET II ejecutar el cambio de Q4 a Q3, pero no intentar mover la transaccin fuera de Q3. El modelador debe usar una asignacin de conmutacin explcita para efectuar este movimiento, si se desea. M.C. Patricia T. Millet Bolio 84 a(Q1)=ALL(Q2)

SISTEMAS DE SIMULACIN 3. Si el archivo donador est vaco, no ocurrir ninguna accin. 4. Si una cola receptora de tamao finito est llena en el momento en el que se ejecuta la asignacin, resultar una parada de error a menos que la cola donador y receptor sean una y la misma (es decir, reacomodo de transaccin en la misma cola). Ejemplo: Modelo de Banco 2. Nuevamente analizamos el ejemplo del modelo del banco, que trata con el banco de dos carriles con la estipulacin adicional de que si un carril se hace ms corto de por lo menos dos automviles, el ltimo auto en el carril ms largo maniobra a la ltima posicin en el carril ms corto. La siguiente figura proporciona el modelo y sus proposiciones.

UN(3,4) 3 QI Ex(2) LBC (QI+VI,QD+VD) CARROS VI TERM 3 QD VD UN(3,4) CAMBIO

$PROJECT;BANCO_2;12 ENERO 03; PATRICIA MILLET: $DIMENSION;ENTITY(50),A(2): $VARIABLES;TPO_SIS(1-2);OBS.BASED;TRANSIT(1): $BEGIN: CARROS *S;EX(2);;1;/S/LBC(QI+VI,QD+VD): QI *Q;3: VI *F;;UN(3,4): R1 *B;CAMBIO;;A(2)=1%: QD *Q;3: VD *F;;UN(3,4): R2 *B;CAMBIO;;A(2)=2%: CAMBIO *A: R3 *B;TERM;& /A/DIF=LEN(QD)+LEN(VD)& -(LEN(QI)+LEN(VI)),& IF,DIF>1,THEN,& LAST(QI)=LAST(QD),& ENDIF,& IF,DIF<-1,THEN,& LAST(QD)=LAST(QI),&

!Seleccin del carril ms corto !Carril izquierdo !Ventanilla izquierda !A(2)=1, carril derecho !Carril derecho !Ventanilla derecha !A(2)=2, carril izquierdo !Dif=carril der-carril izq !Dif>1, maniobre de !QD a QI !Dif<-1, maniobre de !QI a QD

M.C. Patricia T. Millet Bolio 85

SISTEMAS DE SIMULACIN
ENDIF%;& /V/TPO_SIS(A(2))%: $END: $RUN-LENGTH=480: $RUN=1 $STOP:

Si se analiza la salida de este modelo, podemos observar el cambio de los carros de una cola a otra en la seccin TRANSACTION COUNT. Si se fija en la columna LINKED/UNLINKED aparecen 5 transacciones que indican que 5 carros pasaron de la cola QI a la QD. Estas 5 transacciones pasaron directamente a VD porque la instalacin resulto estar libre. Por otro lado, ninguna transaccin paso de QD a QI.

M.C. Patricia T. Millet Bolio 86

SISTEMAS DE SIMULACIN 11.5 EJERCICIOS 1. Use los comandos SUSPEND y RESUME par simular una fuente que libera transacciones slo sobre demanda. Especficamente, considere la situacin donde un operador toma EX(10) minutos para completar un trabajo. Cuando el operador termine un trabajo, enseguida tomar otro. Supongamos que la fuente de nuevos trabajos es ilimitado. 2. Un banco abre a las 8:00 a.m. y cierra a las 4:30 p.m. todos los das. El tiempo entre llegadas de los clientes es EX(7) minutos. Le toma a uno de los dos cajeros del banco EX(10) atender a cada cliente. A las 4:30 p.m., todos los clientes dentro del banco deben ser atendidos. Estime el tiempo mximo, mnimo y promedio necesario para atender a los clientes restantes despus de las 4:30 p.m. 3. Llegan mensajes cada UN(7,8) segundos para su transmisin por un solo canal. Toma UN(6,8) segundos transmitir un mensaje. Cada UN(600,650) segundos, el canal falla y cualquier transmisin en proceso debe retransmitirse. Se lleva cerca de 30 segundos reajustar el canal. Calcule el tiempo que una transaccin terminada pasa en el sistema y el porcentaje de mensajes retransmitidos. Simule para 9000 segundos. 4. Considere que una planta fabrica dos tipos de sillas. El primer tipo utiliza dos cojines, y el segundo tipo es ensamblado con un solo cojn. Los marcos de las sillas y los cojines son manufacturados en tres diferentes lneas de produccin. El tiempo de produccin por unidad para los marcos de las sillas 1 y 2 son EX(40) y EX(30), respectivamente. El tiempo de produccin para los colchones es UN(10,15) minutos. Recuerde que ASM o MAT tienen como restriccin que cada cola solo puede pertenecer a un grupo de ensamblado, por lo tanto es necesario buscar algn truco que engae esta restriccin y as poder modelar la situacin. 5. Desechos slidos son enviados a una planta de procesamiento en camiones que llegan cada EX(20). La planta cuenta con dos compactadoras que son utilizadas para reducir los desechos a bultos en forma de cubos que son enviados en tren al rea de desecho. Las compactadoras trabajan en turnos sucesivos de 8 horas cada una, el turno que pasa libre la maquina se utiliza para mantenimiento. La capacidad de la primera compacatadora es de una carga de camin por bulto y la de la segunda es de dos cargas por bulto. El tiempo de compactado de la primera mquina es de UN(10,12) minutos y de la segunda es UN(14,16) minutos. Simule este sistema con el propsito de determinar el tiempo promedio que le toma a producir un bulto de desecho a cada turno. M.C. Patricia T. Millet Bolio 87

SISTEMAS DE SIMULACIN

6. Trabajos llegan a una mquina cada UN(2,6) minuto y lleva EX(4) minutos procesarlo. Trabajos urgentes llegan cada EX(45) minutos y tienen prioridad sobre cualquier trabajo regular que este en proceso. Sin embargo, un trabajo urgente no desaloja a otro trabajo urgente. Toma EX(5) minutos el procesar un trabajo urgente. Cuando un trabajo es interrumpido, el operario tarda 1 minutos en removerlo de la mquina. Los trabajos interrumpidos son colocados a la cabeza de la cola de trabajos regulares. Determine el tiempo promedio que pasan en el sistema los trabajos regulares y los urgentes.

M.C. Patricia T. Millet Bolio 88

SISTEMAS DE SIMULACIN

CAPITULO 12: DATOS INICIALES EN SIMNET II


12.1 INTRODUCCIN Un modelo en SIMNET II puede hacer uso de seis tipos de datos iniciales: 1. Entradas iniciales de archivos (colas e instalaciones). 2. Funciones probabilsticas de densidad discretas. 3. Funciones tipo tabla. 4. Valores de arreglos. 5. Valores de variables constantes (sin subndices). 6. Funciones o expresiones matemticas. Estos datos se representan en el modelo en formato de corrida especfica de modo que varias corridas, cada una con datos iniciales diferentes, se ejecutan en una sola sesin de simulacin. Todos los datos iniciales son normalmente incluidos (en cualquier orden) en el modelo de SIMNET II entre $END y $STOP. 12.2 ENTRADAS INICIALES DE ARCHIVO Las entradas iniciales con valores de atributos especficos se introducen utilizando el siguiente formato:
$INITIAL-ENTRIES: I-J/NOMBRE DE ARCHIVO/ATRIBUTOS DE ENTRADA:

... ... donde I y J son valores entero que definen el rango inclusivo de nmero de corridas para los que se aplican las entradas dada. El formato para cada entrada es
(D)A(1),A(2),...,A(N)

donde D es el nmero de duplicados de la lista A(1), A(2), ..., A(N) a ser insertados en el archivo (valor inicial = 1), y n es el nmero de atributos definidos por la proposicin $DIMENSION. Cada entrada termina con un punto y coma, y la ltima entrada en un archivo con dos puntos. El rastreo de los atributos cero para cualquier entrada se hace por omisin al terminar la entrada con (,;) o (,:). El siguiente ejemplo ilustra el uso de $INITIAL-ENTRIES con dos colas Q1 y Q2 y una instalacin F1. Se supone que el modelo tiene dos atributos: M.C. Patricia T. Millet Bolio 89

SISTEMAS DE SIMULACIN
$INITIAL-ENTRIES: 1-1/Q1/(2)11,22;12,23; -11,; ; : F1/-11,-22: 2-3/Q2/10,20: F1/110,220: !Primeras tres entradas de Q1 !Cuarta entrada (-11,0) !Quinta entrada (0,0) !Sexta entrada (0,0) !Solo la entrada de F1 !Inician las corridas 2 y 3

Aunque las sucesivas entradas pueden quedar en la misma lnea, el formato dado es ms legible. 12.3 FUNCIONES DE DENSIDAD CONTINUA Y DISCRETA Las distribuciones empricas (discretas) se definen en SIMNET II con el uso del siguiente formato:
$DISCRETE-PDFS: I-J/N1/X11,P11;...;Xin,Pin: REPETIR

Donde: N = nmero de puntos (x,p) de la funcin discreta. X = valor de la variable aleatoria. P = valor de probabilidad discreta asociada. I-J = corridas. El siguiente ejemplo ilustra la definicin de funciones discretas:
$DISCRETE-PDFS: 1-1/3/1,0.1;2,0.4;3,0.5: 2/0,0.6;1,0.4: 2-3/3/2,0.3;3,0.5;4,0.2: !Funcin #1, corrida 1 !Funcin #2, corrida 1 !Funcin #1, corrida 2,3

SIMNET II muestra la funcin discreta utilizando el smbolo DI(a,RS), donde a representa el nmero de funcin dentro de su rango de corrida y RS es la serie de nmero aleatorios (omisin = 1). Tanto a como RS puede ser cualesquiera expresiones matemticas. Si a es positiva, el muestreo se hace en los puntos discretos definidos por $DISCRETE-PDFS. Si a es negativa, SIMNET II convertir los puntos discretos en una funcin de densidad de probabilidad lineal por partes. La funcin DI se usa de forma directa en una expresin matemtica. Ejemplo: Distribuciones El tiempo entre llegadas a determinado servicio esta descrito por la siguiente distribucin de probabilidad emprica: Tiempo en minutos Probabilidad M.C. Patricia T. Millet Bolio 90 1.5 0.1 2.5 0.3 3.5 0.4 4.5 0.2

SISTEMAS DE SIMULACIN Existe un 50-50% de probabilidad de que el tiempo del servicio este entre 2 o 3 minutos.
$PROJECT;DISTRIBUCION;12 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(20): $BEGIN: LLEGADA *S;DI(-1): !Funcin de densidad lineal PDF DI(-1) COLA *Q: SERVICIO *F;;DI(2);*TERM: !Funcin discreta DI(2) $END: $RUN-LENGTH=90: $DISCRETE-PDFS: 1-1/4/1.5,0.1;2.5,0.3;3.5,0.4;4.5,0.2: !DI # 1 2/2,0.5;3,0.5: $STOP: !DI # 2

12.4 FUNCIONES TIPO TABLA Las funciones tipo tabla se usan para definir una variable dependiente y como una funcin de una variable independiente x. El formato de la funcin es similar a la de $DISCRETE-PDFS.
$TABLE-LOOKUPS: I-J/N1/X11,Y11;X12,Y12;...;X1N,Y1N: N2/ X21,Y21;X22,Y22;...;X2N,Y2N: ... ...

El siguiente ejemplo ilustra el uso de la funcin:


$TABLE-LOOKUPS: 1-1/4/1,2;3,5;6,7;7,9: !Funcin #1 3/0,0;1,4;2,11: !Funcin #2

El smbolo TL(n,x) sirve para referencia de funciones tipo tabla; n representa el nmero de la funcin dentro de un rango de la corrida dado y x representa el valor de la variable independiente. Si n es negativa, se usa la interpolacin lineal para determinar el valor de y. Tanto n como x se representan mediante expresiones matemticas. En este caso, n se truncar a un valor entero, si es necesario, y x debe considerarse como un valor en el dominio de la funcin tipo tabla. La funcin TL se puede usar de forma directa en una expresin matemtica. En el ejemplo anterior, TL(1,3) = 5, mientras que TL(1,4) resultar en un error porque x = 4 es indefinido para la funcin tipo tabla nmero 1. Al observar la funcin 2, vemos que TL(-2,1.5) = 7.5 como interpolado linealmente entre x = 4 y x = 11.

M.C. Patricia T. Millet Bolio 91

SISTEMAS DE SIMULACIN

Ejemplo: Tablas El tiempo entre llegadas a una instalacin es Poisson la media entre llegadas varia de manera constante durante el todo da de acuerdo con la siguiente tabla: Tpo del da Valor medio 0 0.3 4 0.5 8 0.3 12 0.2 16 0.3 20 0.3 24 0.3

El tiempo de servicio de la instalacin es uniforme entre 0.2 y 0.3 horas. El programa para resolver la situacin planteada es el siguiente:
$PROJECT;TABLA;13 ENERO 03;PATRICIA MILLET: $DIMENSION;ENTITY(20): $BEGIN: LLEGADA COLA INSTAL $END: $RUN-LENGTH=90: $TABLE-LOOKUPS: 1-1/7/0,0.3;4,0.5;8,0.3;12,0.2;16,0.3;20,0.3;24,0.3: !TL #1 $STOP: *S;EX(TL(-1,MOD(CUR.TIME,24))): *Q: *F;;UN(.2,.3);*TERM: !Table-lookup

12.5 INICIALIZACIN DE ELEMENTOS DE ARREGLO Los arreglos definidos por la proposicin $DIMENSION se inicializan usando el siguiente formato:
$ARRAYS: ARREGLO 1; I-J/LISTA DE VALORES: ... ...

Hay dos formatos para la lista de valores. M.C. Patricia T. Millet Bolio 92

SISTEMAS DE SIMULACIN

Explcito, en el cual cada elemento est explcitamente precedido por los subndices que definen al elemento. Implcito, en el cual los subndices de los valores listados se identifican por su orden en la lista. En este caso, toda la lista debe estar precedida por el cdigo NS/.

El siguiente ejemplo proporciona una ilustracin del uso de los dos formatos dados por los arreglos BC(2) y YZ(3,2) definidos en la proposicin $DIMENSION:

$ARRAYS: BC; YZ;

1-1/NS/11,22: 2-4/2,33: 1-2/1,2,88;3,1,99: 3-3/NS/11,22,33:

!Implcito, BC(1)=11, BC(2)=22 !Explcito, BC(2)=33 !Explcito, YZ(1,2)=88, YZ(3,1)=99 !Implcito, YZ(1,1)=11, YZ(1,2)=22, YZ(2,1)=33

Cuando se usa NS, los valores se toman para representar los elementos respectivos del arreglo (que se lee en una base de rengln por rengln en el caso del arreglo de dos dimensiones). El formato explcito es til cuando se desea inicializar slo elementos seleccionados. Note que en el caso implcito, cualesquiera elementos rastreados que no son valores asignados automticamente son cero. Por ejemplo, en la corrida 3, los valores YZ(2,2 ), YZ(3,1) y YZ(3,2) son todos cero por omisin. Ejemplo: Arreglos De dos fuentes de transmisin distintas llegan dos tipos de mensajes para ser atendidas por un canal sencillo. El primer tipo de mensaje llega cada Ex(0.6) minutos y toma alrededor de 15 segundos transmitirlo. El segundo tipo llega cada Ex(0.8) minutos y se transmite en 20 segundos. Se desea simular la situacin planteada para los datos anteriores y para los siguientes datos: Tiempo entre llegadas Ex(0.5) y ex(0.7) para mensajes tipo 1 y tipo 2 respectivamente, sin modificar los tiempos de transmisin de cada mensaje.
$PROJECT;ARREGLOS;13 ENERO 03;PATRICIA MILLET: $DIMENSION: ENTITY(50);A(1),TPO_LLEG(2),TPO_TRANS(2): $ATTRIBUTES: TIPO: $BEGIN: LLEGADA 1 *S;EX(TPO_LLEG(1)): R1 *B;COLA;;TIPO=1%: !Mensaje tipo 1 LLEGADA 2 R2 COLA *Q: *S;EX(TPO_LLEG(2)): *B;COLA;;TIPO=2%: !Mensaje tipo 2

M.C. Patricia T. Millet Bolio 93

SISTEMAS DE SIMULACIN
CANAL *F;;TPO_TRANS(TIPO)/60;GOTO-TERM: $END: $RUN-LENGTH=50: $TRACE=0-10: $RUNS=2: $ARRAYS: TPO_LLEG; 1-1/NS/0.6,0.8: 2-2/NS/0.5,0.7: TPO_TRANS; 1-2/NS/15,20: $STOP:

12.6 EJERCICIOS 1. Una compaa utiliza tres camiones de 20 toneladas y dos de 30 toneladas para transportar grava a diferentes clientes. La demanda de grava es suficientemente alta para conservar ocupada la operacin en una base continua. Toma 10 minutos cargar un camin de 20 toneladas y 15 minutos cargar uno de 30 toneladas. El viaje redondo a los lugres de los clientes es de UN(30,60) minutos. El objetivo de la simulacin es estimar el tonelaje transportado por cada tipo de camin en un periodo de 24 horas. 2. Llegan pasajeros de forma aleatoria a una estacin de camiones. El nmero de lugares vacos en el momento en el que el camin llega a la estacin tambin vara aleatreamente. A un pasajero le toma alrededor de 7 segundos abordar el camin. Un viaje redondo que lleva al camin de vuelta a la estacin toma cerca de 30 minutos. Al momento, slo un camin esta en operacin. Un pasajero est dispuesto a esperar en la estacin no ms de 20 minutos. El tiempo entre llegadas a la estacin para los pasajeros se determinar a partir de los siguientes datos empricos: Tiempo en minutos Probabilidad 2.0 2.5 3.0 3.5 4.0 0.2 0.24 0.28 0.18 0.1

El nmero de lugares vacos en el camin es 7, 8 o 9, con iguales probabilidades. Determine el porcentaje de clientes que renuncian durante una corrida de simulacin de 480 minutos M.C. Patricia T. Millet Bolio 94

SISTEMAS DE SIMULACIN

BIBLIOGRAFA
1. Taha, Hamdy A. (1992). Simulation with SIMNET II. 2. Taha, Hamdy A. (1998). Investigacin de operaciones, una introduccin. Prentice Hall, Mxico. 3. Eppen, G.D. (2000). Investigacin de operaciones en la ciencia administrativa. Prentice Hall, Mxico. 4. Thuesen, H. G. (1986). Ingeniera Econmica. Prentice Hall, Mxico. 5. Hines, W. W. y Montgomery, D.C. (1994). Probabilidad y estadstica para ingenieros y administradores. CECSA, Mxico. 6. Levin, Richard. (1990). Probabilidad y estadstica para administradores. Prentice Hall, Mxico.

M.C. Patricia T. Millet Bolio 95

También podría gustarte