Está en la página 1de 38

Red de aprendizaje

Modelado
y
Simulacin
Proyectos
Simulacin
Generacin
Valores de
Variables
Aleatorias
Simulacin
por
Eventos
Sistema de Colas con
Servidores en Serie
Sistema de Colas con
Un servidor
Sistemas de Colas con
Servidores en Paralelo
Sistemas de
Inventarios
Revisin Peridica
Sistemas de
Inventarios Punto
de Repedido
Sistemas
Complejos:
Cadena de
Almacenes
Sistemas
Complejos:
Cadena de
Produccin
Diagrama de Flujo
Es la representacin grfica de las
actividades de un proceso.
1. Proceso (subproceso) , tarea o actividad
Rectngulo:
Se usa para denotar
cualquier clase de
actividad o proceso.
Normalmente se debe
incluir en el rectngulo
una breve descripcin
de la actividad.
Smbolos a utilizar en flujogramas
Actividad
2. Punto de decisin
Rombo:
Se usa para tomar una
decisin. La siguiente serie
de actividades variarn en
base a esta decisin.
Por lo general, las salidas
del rombo se marcarn
con las correspondientes
opciones Si - No.
Smbolos a utilizar en los flujogramas
Decisin
3. Elemento de inicio o fin
Circulo alargado:
Se usa para indicar el
inicio y fin del proceso.
Normalmente dentro del
smbolo aparece la palabra
Inicio o Fin
Smbolos a utilizar en flujogramas
4. Conector de flujo
Circulo pequeo:
Se usa para indicar que la salida
de esta parte del diagrama de
flujo servir como entrada para
otro diagrama de flujo.
Con frecuencia este smbolo se
utiliza cuando no existe suficiente
espacio para dibujar la totalidad
del diagrama de flujo en un
papel.
Cada salida diferente debe
designarse con una letra
diferente.
Smbolos a utilizar en flujogramas
5. Documento, formulario, reporte
Rectngulo con la parte
inferior en forma de onda:
Se usa para indicar que la
salida de una actividad o
resultado por el programa
Por ejemplo, informes escritos
o presentacin de resultados
impresos o una salida por
pantalla).
Smbolos a utilizar en flujogramas
Documento
6. Seleccin Simple (IF - THEN - ELSE)
Es una instruccin que se
utiliza para la bifurcacin
condicional.
Formato:
IF Condicin THEN
Begin
Instrucciones - 1;
End
ELSE
Begin
Instrucciones - 2;
End;
Flujogramas bsicos
Decisin
Instrucciones 1
Instrucciones 2
Si
No
7. Ciclo con Entrada controlada (WHILE DO)
Se utiliza para repetir un
grupo de instrucciones
mientras se cumpla una
condicin.
Formato:
WHILE Condicin DO
Begin
......................
Instrucciones;
End;
Flujogramas bsicos
Decisin
Instrucciones
Si
No
8. Ciclo con Salida Controlada (REPEAT UNTIL)
Se utiliza para repetir un
grupo de instrucciones
hasta que se cumpla una
condicin.
Formato:
REPEAT
....................
Instrucciones;
UNTIL Condicin;
Flujogramas bsicos
Decisin
Si
No
Instrucciones
9. Ciclo con Contador (FOR - TO DO)
Un ciclo FOR - TO - DO se utiliza para ejecutar un
bloque de instrucciones un nmero determinado de
veces.
Para contar el nmero de veces que se est
ejecutando el ciclo, existe una variable denominada
variable de control, que debe ser de tipo ordinal
(Integer, Char Boolean) y se incrementa o
decrementa automticamente en cada ejecucin del
ciclo.
Contador Creciente:
FOR i:= Valor - Inic TO Valor - Fin DO
Begin
.....................
Instrucciones;
End;
Contador Decreciente:
FOR i:= Valor - In DOWNTO Valor fin DO
Begin
...................
Instrucciones;
End; ).
Flujogramas bsicos
I= a, b
Instrucciones
10
10
Se utiliza para implementar
un procesamiento con varias
opciones de seleccin.
Formato:
CASE Expresin OF
Opcin - 1: Instruc -
1;
Opcin - 2 : Instruc -
2;
..................
..................
ELSE
Instruccin;
END;
Flujogramas bsicos
10. Diagrama de flujo de CASE OF:
Escoger
la opcin I
Opcin I
Opcin 1 Opcin Opcin 2
I=1
I=
I=2
Como generar los valores de un dado?
El nmero de caras que tiene un dado comn
es 6 y cada una tiene la misma probabilidad de
salir en un lanzamiento.
Se le pide hacer un diagrama de flujo que le
permita simular el lanzamiento de un dado.
Como jugar a Craps?
El conocido juego de dados llamado Craps tiene las
siguientes reglas:
1.- Si en el primer lanzamiento de los dados sale 7 u 11 el
lanzador gana, pero si sale 2 12 pierde.
2. Si no salen ninguno de los anteriores nmeros el
jugador tiene derecho a hacer tantos lanzamientos
hasta que salga el numero se obtuvo por primera vez y
con ello gana, pero si sale el nmero 7 pierde.
Hacer el diagrama de flujo del juego de craps.
Juego de la ruleta
En el famoso juego de la ruleta existen muchas opciones para apostar. Una de ellas consiste
en apostarle al color rojo o al color negro.
En el tablero de la ruleta existen 10 nmeros rojos 10 nmeros negros y 2 nmeros verdes(0
y 00). Si un jugador apuesta a un color y un numero, si el color y numero aparecen, el
jugador gana la cantidad apostada.
Si otro color aparece el jugador Pierde la cantidad apostada.
Si el color verde aparece, la rueda de la ruleta vuelve a girar hasta que el color rojo o negro
aparezcan.
Si este color es del color que se apost el jugador no gana ni pierde. De otra forma se pierde
la cantidad apostada.
Dos jugadores usan diferentes estrategias:
Un jugador simplemente apuesta un dlar al color rojo cada vez.
El otro jugador empieza apostando un dlar al color rojo. Si gana, apuesta otro dlar. Sin
embargo si pierde, apuesta 2 dlares la prxima vez. Si pierde otra vez, apuesta cuatro
dlares. Este jugador puede continuar doblando la apuesta hasta un limite de 512 dlares. Si
pierde esta apuesta de quinientos doce empieza apostando nuevamente un dlar.
Cada jugador inicia el juego con 200 dlares. Cul cree Ud. que es la mejor estrategia?.
Hacer el diagrama de flujo del caso anteriormente descrito.
El problema del periodiquero
Un vendedor de peridicos trata de maximizar sus ganancias. El nmero
de peridicos que vende cada da es una variable aleatoria. Sin embargo,
el anlisis de los datos del mes pasado muestra la distribucin de la
demanda diaria, en la tabla siguiente. Un peridico le cuesta 20 de dlar
al vendedor. Este lo vende a 30 de dlar.
Los peridicos que no vende los regresa a la editorial y recibe 10 de dlar
por cada uno. Para toda demanda no satisfecha se estima un costo de 10
de dlar en clientela y ganancia perdida.
Si la poltica es pedir una cantidad igual a la demanda del da anterior,
determine la ganancia diaria promedio del vendedor mediante la
simulacin de este sistema. Suponga que la demanda para el da 0 es 22.
Como ayudar a Miguel?
Miguel un empleado en apuros no sabe que hacer para tratar de reducir sus tardanzas y les pide a ustedes
como ingenieros hacer un aplicativo que le ayude a saber a que hora debe levantarse para no llegar tarde
este aplicativo involucra sus conocimientos de Simulacin de Sistemas y Algoritmia.
Para desarrollar este aplicativo le adjunta los siguientes datos de comportamiento:
El se levanta todos los das entre 6:15 a.m. y 6:30 a.m. Durante 30 das Richard cronometr el tiempo que
empleaba desde el momento en que se levantaba hasta que estaba baado, afeitado y cambiado; los
resultados se muestran a continuacin:
Tiempo Empleado # de observaciones Probabilidad
(Minutos)
15 08 8/30
20 11 11/30
25 07 7/30
30 04 4/30
Richard tiene una persona que se encarga de atenderlo y esta persona debera levantarse a las 6:20 a.m. sin
embargo, esta persona se levanta siempre con algn retraso. Este retraso se distribuye normalmente con
media 5 minutos y desviacin estndar de 1.5 minutos y tener listo el desayuno entre 10 a 15 minutos, se
sabe adems que si una vez que Richard est cambiado, y la persona contina durmiendo, ste procede a
despertarla para que lo atienda.
Una vez listos, tanto Richard como el desayuno, Richard requiere de 12 a 17 minutos para consumirlo. Luego
se dirige a la oficina, empleando un tiempo que se distribuye exponencialmente con una media 50 minutos.
Teniendo la muestra de este tiempo de viaje un valor mnimo de 24.57 y un valor mximo de 76.31
Su hora de entrada es a las 8:00 AM.
Se pide: Construir un simulador para hallar la probabilidad de que Richard llegue a tiempo a su oficina y
adems cual es la tardanza promedio.
Como ayudar a Miguel?
Para resolver este problema lo primero que tenemos que hacer es trabajar con las variables
aleatorias (VA) que se encontramos en el caso que son las siguientes:
Tiempo de levantarse 6:15 a 6:30. (TLEV)
TLEV = UNIF(15,30)
Tiempo de afeitarse baarse y cambiarse: (TBAC)
Tiempo Empleado # de observaciones Probabilidad
(Minutos)
15 08 8/30
20 11 11/30
25 07 7/30
30 04 4/30
Tiempo de levantarse de la persona encargada. (TLEVP)
TLEVP = 20 + Tardanza. (Tardanza = NORM(5,1.5)
Tiempo de preparacin del desayuno (TPRDES)
TPRDES = UNIF (10, 15)
Tiempo de Tomar el desayuno (TTODES)
TTODES = UNIF(12, 17)
Tiempo empleado para ir ala oficina (TOFIC)
TOFIC = EXPO(50)
Como ayudar a Miguel?
Primero trabajaremos con las variables
uniformes que son:
TLEV = UNIF(15,30)
TPRDES = UNIF (10, 15)
TTODES = UNIF(12, 17)
Entonces tendremos lo siguiente:
X~UNIF (a, b)
a - b
1

12
a) - (b

2
b a
Moda anza Vari Media
2
+
a
b
a - b
1

UNIF (a, b)
r = random
La forma de generar esta variable se
realiza mediante con la siguiente
expresin:
x = a + (b a ).r , r [0, 1 ]
UNIF = a + (b a ).r
Return
Diagrama de Flujo
Como ayudar a Miguel?
TBAC # de obs Prob Pacum Intervalos
(min.)
15 08 8/30 8/30 [ 0 , 8/30[
20 11 11/30 19/30 [ 8/30, 19/30[
25 07 7/30 26/30 [19/30, 26/30[
30 04 4/30 1 [26/30, 1 ]
La forma de generar esta VA es generar r [0, 1 ] y
luego buscar en que intervalo cayo el valor de r.
TBAC=DISC
Esto nos conduce al siguiente diagrama de flujo.
Ahora trabajaremos con la variable
discreta:
TBAC
r< 8/30
r< 19/30
r< 26/30
r = random
DISC
DISC = 25
DISC = 15
DISC = 20
DISC = 30
DISC
Como ayudar a Miguel?
Para generar este tipo de variable recurriremos al Teorema de Limite Central (TLC):
es una VA que tiene los siguientes parmetros:
1

=
n
i
i
r
Trabajaremos con la variable:
TLEVP que esta por una parte constante la VA que es la tardanza entonces:
TLEVP = 20 + NORM(5, 1.5)

) n , NORM(n : sabe se adems Pero
1
o ~

=
n
i
i
r
2
1 1
) ( , ) ( o n r Var n r E
n
i
i
n
i
i
= =

= =
Luego si ri ~ UNIF(0, 1) entonces:
12
) ( ,
2
) (
1 1
n
r Var
n
r E
n
i
i
n
i
i
= =

= =
f(x)
x
Como ayudar a Miguel?
Despejando x tendremos:
o z x + =
Para normalizar una VA normal se utiliza la
siguiente expresin:
Donde Z~NORM(0, 1), luego para generar
X debemos primero generar Z para ello de
la expresion siguiente:
tomaremos n=12 y restaremos 6 entonces:
o
- x
z =
12
) ( ,
2
) (
1 1
n
r Var
n
r E
n
i
i
n
i
i
= =

= =
1 ) ( , 0 ) 6 (
12
1
12
1
= =

= = i
i
i
i
r Var r E
Luego:
) 1 , 0 ( 6
12
1
NORM r
i
i
~

=
Z = 0
NORM(, )
z = z - 6
z = z +r
r = random
NORM= + z.
Return
i = 1, 12
10
10
Como ayudar a Richard?
| | 1 , 0 ), ln(
1
e = r donde r x


1

1
anza Vari Media
2


Para generar una variable aleatoria que se
distribuye exponencialmente solo se tiene
usar la siguiente expresin:
Luego:
EXPO ()
r = random
EXPO = - Ln (r)
Return
Diagrama de Flujo
) ln(r x =
Como ayudar a Richard?
Una vez que terminamos con las VA
involucradas en el problema podremos
elaborar el diagrama de flujo del caso.
DESAYUNO
DT = 0
TD = 0
Generar TLEV, TBAC y TLEVP
FIN
Diagrama de Flujo
N
i=1, N
10
10
TPO = TLEV + TBAC
TLEVP = TPO
Generar TPRDES
TLEVP > TPO
TAUX = TLEVP + TPRDES
TPO = TAUX
TPO < TAUX
Generar TTODES, TOFIC
TPO = TPO + TTODES+ TOFIC
TPO 120
TD = TD +TPO - 120
DT = DT +1
TARDPROM = TD/DT
PROBTARD = DT/N
PROBTARD
TARDPROM
SI
NO
NO
SI
SI
NO
Sistema de colas con un servidor
La Empresa Creatividad SAC. tiene una oficina donde los clientes estn arribando
con un tiempo entre llegadas distribuido normalmente con una media de 8 minutos y
una desviacin estndar de 2 minutos, segn la muestra tomada se obtiene que los
valores van de 4,7 a 11.3 minutos, y el tiempo requerido para atenderlos se
distribuye exponencial con una media 9 minutos y con valores entre los 5.1 y 12.5
minutos.
Esta la oficina tiene un solo empleado que atiende a los clientes. Si llega un cliente y
el empleado est disponible, se inicia inmediatamente la atencin. Y si el empleado
est ocupado, los clientes esperarn a ser atendidos en una cola segn el criterio
FIFO.
Se sabe con certeza que las personas solo soportan una cola mxima de 10
personas en cola.
Luego de completar la atencin, los clientes salen del rea en estudio.
Para realizar un estudio de simulacin del sistema se desea saber:
a.Cul es nmero clientes atendidos?
b.Cul es la cola mxima que se forma?.
c. Cunto tiempo pasaron en cola y cuanto en el sistema?.
Representacin grfica del Sistema
Representacin del Sistema
Entidades Atributos Actividades
Cliente Tiempo de arribo Llegar al sistema.
(Elemento temporal) Abandono por cola llena Abandono por cola llena.
Formar Cola.
Recibir servicio.
Salir del sistema.
Empleado Tiempo de servicio Atender clientes.
(Elemento permanente) Espera de clientes.
TS (Tiempo de servicio)
Servidor
Salida
Abandono por falta de requisito
COLA
Llegada TLL
Diseo de un simulador de un sistema de cola simple
Instantes en que cambia el sistema:
Llegada de un cliente TLL
Fin de Servicio TFS
Para un cliente siempre se cumple TLL < TFS
Haciendo un pequea corrida en el tiempo T:
0 t1 t2 t4 t3 t6 t5
LL FS LL FS LL LL
T
Diseo de un simulador de un sistema de cola simple
0 t1 t2 t4 t3 t6 t5
LL FS LL FS LL LL
T
Tabla base
TLL TFS RM Evento
t1 < t3 t1 Arribo
t2 < t3 t2 Arribo
t4 > t3 t3 Fin de Servicio
t4 < t5 t4 Arribo
t6 > t5 t5 Fin de Servicio
Sistema de colas de un servidor
Diagrama de flujo base
Tabla base
TLL TFS RM Evento
t1 < t3 t1 Arribo
t2 < t3 t2 Arribo
t4 > t3 t3 Fin de Servicio
t4 < t5 t4 Arribo
t6 > t5 t5 Fin de Servicio
TLL < TFS
ARRIBO FIN DE SERVICIO
RM < TMS
SI
NO
SI
NO
Sistema de colas de un servidor
N, TMS
TLL < TFS
ARRIBO FIN DE SERVICIO
SI NO
RM < TMS
SI
NO
10
i=1, N 10
TLL = 0 COLA = 0
TFS = 9999 ES = 0
RM = 0
Diagrama de flujo con entrada de valores de N y de TMS
Sistema de colas de un servidor
Calculo de Atendidos Promedio y Abandonos promedio
Programa Principal
INICIO
TLL = 0 TFS = 9999
COLA = 0 ES = 0
RM = 0
N, TMS
TLL < TFS
ARRIBO FIN DE SERVICIO
SI NO
RM < TMS
SI
NO
10
ABANPROM = ABANDONO/N
ATENPROM = ATENDIDOS/N
FIN
i=1, N 10
TLL = 0 COLA = 0
TFS = 9999 ES = 0
RM = 0
REPORTE
Evento Arribo
ARRIBO
RM = TLL
ABANDONA
ES=0
ES = 1
Generar TELL
TFS = RM + TS
COLA = COLA +1
TLL = RM + TELL
RETURN
No
Si
Generar TS
Si
No
ABANDONO = ABANDONO + 1
Evento Fin de Servicio
FIN DE SERVICIO
RM = TFS
ATENDIDOS = ATENDIDOS + 1
COLA = 0
COLA = COLA -1
Generar TS
TFS = RM + TS
ES = 0
TFS = 9999
RETURN
No Si
Sistema de Inventarios
La demanda diaria y el tiempo de entrega de un cierto producto, siguen
las siguientes distribuciones de probabilidad:
La informacin con respecto a los costos relevantes es la siguiente:
Costo de ordenar: 50 u.m./orden.
Costo de inventario: 26 u.m. /unidad/ao.
Costo de faltante: 25 u.m./unidad.
Si el inventario inicial es de 15 unidades. Evaluar el sistema para una
poltica de cantidad de ordenar q y un punto de reorden R (Asumir que
se trabajan 260 das al ao)
Demanda diaria Probabilidad
0 0.04
1 0.06
2 0.10
3 0.20
4 0.30
5 0.18
6 0.08
7 0.03
8 0.01
Tiempo de entrega Probabilidad
1 0.25
2 0.50
3 0.20
4 0.05
Sistema de Inventarios
Inventario
Stock = 15
N, CPED, PTOREP
Ingresando como datos de entrada a la cantidad de corridas,
cantidad a pedir CPED (q) y el punto de repedido PtoRep(R)
i=1, N
10
Generar la cantidad demandada del da (CDEM)
PedPen = PedPen + CPED
Stock = 0
PosInv = PosInv -CDEM
Stock = Stock - CDEM
Stock > CDEM
CostFal = CostFal +25*(CDEM Stock)
DemPen = DemPen + CDEM - Stock - CDEM
Calculo del costo por faltante
PosInv > PtoRep
SI NO
PosInv = PosInv + CPED
PedPen = PedPen - CPED
Generar TE
j=1, 50
20
TR(J) = i+TE
DemPen >0
TR(j) > 0
20
NO
SI
NO
SI
K=1, 50
30
TR(J) = 0
i =TR(K)
30
SI
DemPen >0
NO
Generar CDEM
Stock = Stock+CPED
DemPen = DemPen - CPED
NO
Stock = Stock + CPED - DemPen
SI
SI
NO
10
CostOrd = CostOrd+50
PtoRep, CPED
CostTot
FIN
CosTot = CostFal+ CostOrd +CostAlm
CostInv =CostInv +26*CDEM
Calculo del costo de inventario
Incremento los pedidos en transito al proveedor
Incremento la posicin de inventarios
Calculo del costo de ordenar CostOrd
Generar el tiempo de espera del proveedor TE
Guardar el tiempo de recepcin de un pedido en
el vector TR(j)
TR(j) = tiempo de recepcin de un pedido
Buscar si se produce una recepcin de un lote del
producto
Decremento los pedidos pendientes ya que se
produce una recepcin
Si la demanda pendiente es 0 todo el pedido que
se decepciona va al Stock
Juego de la ruleta
En el famoso juego de la ruleta existen muchas opciones para apostar. Una de ellas consiste
en apostarle al color rojo o al color negro.
En el tablero de la ruleta existen 10 nmeros rojos 10 nmeros negros y 2 nmeros verdes(0
y 00). Si un jugador apuesta a un color y un numero, si el color y numero aparecen, el
jugador gana la cantidad apostada.
Si otro color aparece el jugador Pierde la cantidad apostada.
Si el color verde aparece, la rueda de la ruleta vuelve a girar hasta que el color rojo o negro
aparezcan.
Si este color es del color que se apost el jugador no gana ni pierde. De otra forma se pierde
la cantidad apostada.
Dos jugadores usan diferentes estrategias:
Un jugador simplemente apuesta un dlar al color rojo cada vez.
El otro jugador empieza apostando un dlar al color rojo. Si gana, apuesta otro dlar. Sin
embargo si pierde, apuesta 2 dlares la prxima vez. Si pierde otra vez, apuesta cuatro
dlares. Este jugador puede continuar doblando la apuesta hasta un limite de 512 dlares. Si
pierde esta apuesta de quinientos doce empieza apostando nuevamente un dlar.
Cada jugador inicia el juego con 200 dlares. Cul cree Ud. que es la mejor estrategia?.
Hacer el diagrama de flujo del caso anteriormente descrito.
El problema del periodiquero
Un vendedor de peridicos trata de maximizar sus ganancias. El nmero
de peridicos que vende cada da es una variable aleatoria. Sin embargo,
el anlisis de los datos del mes pasado muestra la distribucin de la
demanda diaria, en la tabla siguiente. Un peridico le cuesta 20 de dlar
al vendedor. Este lo vende a 30 de dlar.
Los peridicos que no vende los regresa a la editorial y recibe 10 de dlar
por cada uno. Para toda demanda no satisfecha se estima un costo de 10
de dlar en clientela y ganancia perdida.
Si la poltica es pedir una cantidad igual a la demanda del da anterior,
determine la ganancia diaria promedio del vendedor mediante la
simulacin de este sistema. Suponga que la demanda para el da 0 es 22.
Problema de mantenimiento
El gerente del departamento de mantenimiento de la M.I. Inc. tiene pensado variar los perodos entre reparaciones y/o
mantenimientos para un conjunto de 10 mquinas similares que realizan todo el proceso de produccin. Actualmente cada 4
semanas se realiza mantenimiento preventivo (a las de funcionamiento normal), mantenimiento correctivo (a las mquinas
ligeramente daadas) y reparaciones (a las mquinas malogradas).
En un informe del Departamento de Produccin se indica lo siguiente:
Una mquina en buen estado procesa entre 200 a 250 unidades por turno siendo lo comn que procese 230. Una mquina
ligeramente daada produce al 80% de su capacidad, y una mquina malograda no produce.
El Departamento de Costos proporciona la siguiente informacin (en nuevos soles):
Costo de operacin/pieza : 96.00
Costos fijos/turno : 240 000.00
Costo de mantenimiento preventivo/mquina : 480.00
Costo de mantenimiento correctivo/mquina : 960.00
Costo de reparacin/mquina : 1 440.00
Precio de venta/unidad : 480.00
El Departamento de Mantenimiento ha informa lo siguiente:
Una mquina pertenece a una de estas tres clases:
Normal (clase A), ligeramente daada (clase B) y malograda (clase C).
Una mquina clase A, tiene una probabilidad de 0.9 de continuar siendo de clase A en el siguiente turno y 0.08 de pasar a clase B.
Una mquina clase B tiene una probabilidad de 0.8 de continuar siendo de clase B.
Luego del mantenimiento todas las mquinas son de clase A.
Los cambios solo se producen entre turnos.
En la fbrica se trabaja en dos turnos de lunes a sbado. Los das domingo solo se pueden realizar mantenimiento y/o reparaciones.
Las alternativas que se desean analizar son:
mantenimiento cada 2 semanas.
mantenimiento cada 3 semanas.
mantenimiento cada 4 semanas (sistema actual).
mantenimiento cada 6 semanas.
Se tomara la utilidad obtenida en un lapso de tiempo de 60 semanas de trabajo como parmetro de comparacin.
Se le pide:
a. El D.F. de un simulador que auxilie al Departamento de Mantenimiento en la toma de decisiones.
b. La subrutina donde se elija la clase a la cual pertenece una mquina en el turno analizado.
c. La subrutina que genere el nmero de unidades producidas por mquina por turno.

También podría gustarte