Beruflich Dokumente
Kultur Dokumente
CEAIS HUARAZ
Sexta Edición
CAPITULO I
MODELO DE SISTEMAS
1.1. MODELO
Un modelo es una representación de un objeto, idea, o sistema en una forma
diferente a la entidad misma. En nuestro caso el modelo es un conjunto de
relaciones matemáticas o lógicas derivadas de supuestos sobre el
comportamiento del sistema.
Pág. 2
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Pág. 3
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
C1 C2 C3
Variables Exógenas:
TAi: Tiempo de Arribo de los clientes i.
TSij: Tiempo de Servicio de la caja j, para atender al cliente i.
Variables de Estado:
TEij: Tiempo de Espera del cliente i, para pasar a la caja j.
TOij: Tiempo de Ocio de la caja j, en espera del cliente i.
Variables Endógenas:
Ti: Tiempo Total que el iésimo cliente está en el sistema.
Parámetros:
E(TAi): Media del tiempo de Arribo.
VAR(TAi): Varianza del tiempo de arribo.
E(TSj):Media del tiempo de Servicio.
VAR(TSj):Varianza del tiempo de servicio.
Características de Operación:
f(TAi): Función de densidad de probabilidad para el tiempo de arribo.
F(TSij): Función de densidad de probabilidad para el tiempo de servicio.
Identidades:
Para los 3 primeros clientes:
TEij = 0
TO11 = TA1, TO22 = TA2, TO33 = TA3
T1 = TS11, T2 = TS22, T3 = TS33.
Si la diferencia D = TSij – TAi, es:
Pág. 4
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Modelo de Tiempo Discreto: Cuando el estado del sistema está definido solo
para particulares instantes de tiempo. Una función, variable o sistema es discreto,
en contraposición a continuo, si es divisible un número finito de veces. Así, el
conjunto de los números naturales es un conjunto discreto, así como la energía
de los estados cuánticos.
Pág. 5
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
2
E = m c → Modelo Estático (materia en energía)
Pág. 6
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Ejemplo
Pág. 7
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Pág. 8
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
CAPITULO II
SIMULACION DE SISTEMAS
2.1. DEFINICIONES
Pág. 9
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
La simulación con computador es por lo tanto una técnica que realiza experimentos en
un computador con un modelo de un sistema dado. El modelo es el vehículo utilizado
para la experimentación en sustitución del sistema real. Los experimentos pueden
llegar a tener un alto grado de sofisticación que requiera la utilización de técnicas
estadísticas de diseño de experimentos. En la mayor parte de los casos los
experimentos de simulación son la manera de obtener respuestas a preguntas del tipo
"¿qué pasaría sí?", preguntas cuyo objetivo suele ser evaluar el impacto de una
posible alternativa que sirva de soporte a un proceso de toma de decisiones sobre un
sistema, proceso que puede representarse esquemáticamente mediante la siguiente
figura.
MODEO DE
Entrada (Políticas, alternativas) Salidas (Respuestas)
SIMULACION
EXPERIMENTACION
Pág. 10
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Pág. 11
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Pág. 12
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
CAPITULO III
NUMEROS ALEATORIOS
3.1. DEFINICIÓN
Un número es aleatorio cuando no se conoce su generación y tiene característica
uniformes, independientes y corresponden a una cierta distribución de probabilidad.
Fue uno de los primeros métodos para generar números aleatorios, creado por J.
Von Neumann en 1946. Consiste en el siguiente procedimiento:
Entre las desventajas de este método está que tienen períodos breves (pocos
números aleatorios), no satisfacen completamente las pruebas estadísticas de
aleatoriedad.
Pág. 13
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
BOTON EJECUTAR
Dim i, n As Integer
Dim x, k, w, y, z, v, t, nlimp As Double
Randomize()
k = Val(TextBox1.Text) REM número de simulaciones
x = Val(TextBox2.Text) REM primer número tomado al azar
de "N cifras
n = Val(TextBox3.Text) REM número de dígitos
nlimp = 0
i = 0
TextBox4.Text = TextBox4.Text & "X [" & i & "] = " & x &
Chr(13) & Chr(10)
For i = 1 To k
y = x * x
z = Int(y / 100)
v = Int(z / 10 ^ (2 * n))
t = v * (10 ^ (2 * n))
w = z - t
TextBox5.Text = TextBox5.Text & "Y [" & i & "] = " &
y & Chr(13) & Chr(10)
If i < nlimp * 10 + 10 Then
Pág. 14
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
BOTON NUEVO
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button2.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox1.Focus()
End Sub
BOTON SALIR
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles Button3.Click
End
End Sub
La ejecución da como resultado:
Pág. 15
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
𝑥1 = 𝑎𝑥0 + 𝑏(𝑚𝑜𝑑 𝑚)
𝑥2 = 𝑎𝑥1 + 𝑏 = 𝑎2 𝑥0 + (𝑎 + 1)𝑏(𝑚𝑜𝑑 𝑚)
𝑏(𝑎3 + 1)
𝑥3 = (𝑎3 2 3
𝑥0 + 𝑎 + 𝑎 + 1) 𝑏 = 𝑎 𝑥0 + (𝑚𝑜𝑑 𝑚)
(𝑎 − 1)
Pág. 16
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
…………………………………………………………………
…………………………………………………………………
𝑛
𝑏(𝑎𝑛 + 1)
𝑥𝑛 = 𝑎 𝑥0 + (𝑚𝑜𝑑 𝑚)−→ (𝑛 ≤ 𝑚 − 1)
(𝑎 − 1)
En donde los x son enteros entre 0 y m-1, y las constantes a y b son no-
negativas. La selección de a, b, y m afectan el periodo y la autocorrelación en la
secuencia. Entre los resultados de los estudios realizados con estos generadores
tenemos:
1. El modulo m debe ser grande. Dado que los x están entre 0 y m-1, el periodo
nunca puede ser mayor que m.
2. Para que el computo de mod m sea eficiente, m debe ser una potencia de 2,
es decir, 2k. En este caso mod m puede ser obtenido truncando el resultado y
tomando en k bits a la derecha.
Pág. 17
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
EJEMPLO 02
Elaborar un programa en Visual Basic.Net o Visual Basic 6.0 para generar números
pseudos aleatorios por el método congruencial.
BOTON EJECUTAR
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim I, S, R, A, B, M As Integer
Dim X1 As Double
S = Val(TextBox1.Text) REM ingresa numero semilla
A = Val(TextBox2.Text) REM ingresa valor de a numero primo
B = Val(TextBox3.Text) REM ingresa valor de b numero primo <>b
M = Val(TextBox4.Text) REM igreso del modulo
R = Val(TextBox5.Text) REM ingrese veces a generar el n° aleatorio
For I = 1 To R
X1 = (A ^ I * S + B * (A ^ I - 1) / (A - 1)) Mod M
TextBox6.Text = TextBox6.Text & "NA[" & I & "] = " & X1 & Chr(13)
& Chr(10)
Next
End Sub
BOTON NUEVO
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
Pág. 18
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
TextBox5.Text = ""
TextBox6.Text = ""
TextBox1.Focus()
End Sub
BOTON SALIR
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button3.Click
End
End Sub
1. En el ejemplo dado por el docente, hacer que el programa reporte solo números
aleatorios en un rango de 0 a 1.
2. En el ejemplo dado por el docente, hacer que el programa reporte la varianza y la
desviación estándar de los números generados.
3. Implementar un programa en Visual Net 2010 o cualquier otro lenguaje por el
Método Congruencial Multiplicativo (investigar usando cualquier medio disponible).
Pág. 19
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
EJEMPLO 1
Se tiene un sistema financiero de préstamos de recursos financieros en donde el
capital prestado y el número de periodos de préstamos tienen componentes aleatorios,
mientas que la tasa de interés es una variable a afectar mecánicamente ya que está
ligada a la política del sistema financiero. Elaborar un programa para simular los
intereses a ganar por cada tipo de préstamo: hipotecario, techo propio, vehículos y
libre disponibilidad. Los rangos de préstamo en soles por cada tipo se dan en la
siguiente tabla:
De pide calcular las sumatorias por cada tipo de préstamo, promedio, varianza,
desviación estándar, covarianza y hacer sus respectivas interpretaciones.
Pág. 20
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
BOTON SIMULAR
Dim np, i, j, m As Integer
Dim ph(0 To 100), ptp(0 To 100), pv(0 To 100), pld(0 To 100) As
Double
Dim sp(0 To 100) As Double
Dim t As Double
Randomize()
BOTON NUEVO
Private Sub Command2_Click()
Dim k As Integer
k = tabla.Rows.Count
For i = 0 To k
tabla.Rows.Clear()
Next
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
End Sub
BOTON SALIR
Private Sub Command3_Click()
Me.Close()
End Sub
Pág. 21
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
EJEMPLO 01
La demanda de un producto está en función del tiempo en años, dicha demanda tiene
un rango de aleatoriedad en un límite de Ls y Li y presenta una función Y=a+bX.
Elaborar un programa para determinar la ecuación de ajuste y simular el pronóstico de
la demanda para este producto para N años.
Pág. 22
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
BOTON SIMULAR
Dim n, ns, ls, li, i As Integer
Dim y(0 To 100), x(0 To 100) As Double
Dim v, des, r As Double
Dim xy(0 To 100), x2(0 To 100), y2(0 To 100), sumas(0 To 100) As
Double
Randomize()
n = Val(Text1.Text)
ls = Val(Text2.Text)
li = Val(Text3.Text)
ns = Val(Text4.Text)
Dim sx, sy, sxy, sx2, sy2 As Double
sx = 0 : sy = 0 : sxy = 0 : sx2 = 0 : sy2 = 0
REM Dim x, y, x2, y2, xy As Double
For i = 0 To n - 1
x(i) = i + 1 'genera el número de años
Pág. 23
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
BOTON NUEVO
Dim k As Integer
k = DGV1.Rows.Count
For i = 0 To k
Pág. 24
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
DGV1.Rows.Clear()
Next
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Text10.Text = ""
Text11.Text = ""
Text12.Text = ""
Text13.Text = ""
Text14.Text = ""
Text15.Text = ""
Text1.Focus()
BOTON SALIR
Private Sub Command3_Click()
Me.Close()
End Sub
Pág. 25
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
EJEMPLO 4
Resolver el mismo problema del ejemplo 2 utilizando el modelo de regresión exponencial
BOTON PRONOSTICAR
Dim n, I, NS As Integer
Dim y(0 To 100), x(0 To 100) As Double
Dim v, des, r As Double
Dim logy(0 To 100), xlogy(0 To 100), x2(0 To 100), logy2(0 To 100),
sumas(0 To 100), prono(0 To 100) As Double
Randomize()
Dim m, sx, sy, sxy, sx2, sy2 As Double
n = Val(Text1.Text)
m = Val(Text2.Text)
sx = 0 : sy = 0 : sxy = 0 : sx2 = 0 : sy2 = 0
Dim Log(0 To 100) As Double
Dim slogy, sxlogy, slogy2 As Double
For I = 1 To n
x(I) = I 'ingrese número de datos
y(I) = Val(InputBox("INGRESE DATOS HISTORICOS"))
sy = sy + y(I)
logy(I) = Log(y(I))
xlogy(I) = x(I) * logy(I)
x2(I) = x(I) * x(I)
logy2(I) = logy(I) * logy(I)
sxlogy = sxlogy + xlogy(I)
sx = sx + x(I)
slogy = slogy + logy(I)
sx2 = sx2 + x2(I)
Pág. 26
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
px = sx / n : plogy = slogy / n
b = (n * sxlogy - sx * slogy) / (n * sx2 - sx ^ 2)
a = plogy - bpx
Text3.Text = Format(Exp(a), "###.000")
Text4.Text = Format(Exp(b), "###.000")
Text5.Text = Format(Exp(px), "###.000")
Text6.Text = Format(py, "###.000")
Text10.Text = Format(a, "###.000")
Text11.Text = Format(b, "###.000")
For I = 0 To n - 1
DGV1.Rows.Add(n)
Next
For I = 0 To n - 1
DGV1.Rows(I).Cells(0).Value = I + 1
DGV1.Rows(I).Cells(1).Value = Format(x(I), "###.0")
DGV1.Rows(I).Cells(2).Value = Format(y(I), "###.0")
DGV1.Rows(I).Cells(3).Value = Format(logy(I), "###.0")
DGV1.Rows(I).Cells(4).Value = Format(xlogy(I), "###.0")
DGV1.Rows(I).Cells(5).Value = Format(x2(I), "###.0")
DGV1.Rows(I).Cells(6).Value = Format(logy2(I), "###.0")
Next
Dim sv As Double
For I = 1 To n
sv = sv + (x(I) - px) ^ 2
Next
v = sv / n
des = v ^ (1 / 2)
r = (n * sxlogy - sx * slogy) / (Math.Sqrt(n * sx2 - sx ^ 2) *
Math.Sqrt(n * slogy2 - slogy ^ 2))
Text7.Text = Format(Exp(v), "###,###.00")
Text8.Text = Format(Exp(des), "###,###.00")
Text9.Text = Format(Exp(r), "###.000")
For I = 0 To n - 1
DGV2.Rows.Add(n)
Next
For I = 0 To n - 1
DGV2.Rows(I).Cells(0).Value = I + 1
DGV2.Rows(I).Cells(1).Value = Format(sumas(I), "###.0")
Next
BOTON NUEVO
Dim k As Integer
k = DGV1.Rows.Count
For i = 0 To k
DGV1.Rows.Clear()
Next
Dim N As Integer
k = DGV2.Rows.Count
For i = 0 To N
DGV2.Rows.Clear()
Next
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Pág. 27
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Text6.Text = ""
Text7.Text = ""
Text8.Text = ""
Text9.Text = ""
Text10.Text = ""
Text11.Text = ""
Text1.Focus()
BOTON SALIR
Me.Close()
EJEMPLO 5
Una empresa tiene una demanda aleatoria que oscila entre 200 y 100 unidades por día para
un determinado producto. El costo de hacer un pedido es de k soles, el costo de inventario es
de c soles y el costo de almacenamiento es de h soles por día. También se sabe que el tiempo
de entrega para este producto es de L días. Si pide hacer un programa para que simule NS
simulaciones y de las seleccione el mejor dato, es decir el mejor registro simulado. El
programa debe reportar: Lote económico, costo, ciclo, tiempo efectivo de entrega y punto de
reorden.
Pág. 28
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
BOTON SIMULAR
Dim i, ns, mvy, post As Integer
Dim k, h, l As Double
ns = Val(TextBox1.Text)
k = Val(TextBox2.Text)
h = Val(TextBox3.Text)
l = Val(TextBox4.Text)
Dim d(0 To 100), y(0 To 100), c(0 To 100), t(0 To 100), n(0 To 100),
le(0 To 100) As Double
For i = 0 To ns
d(i) = Rnd() * (200 - 100) + 100 'genera demanda de prodcuto
inventario
y(i) = (2 * k * d(i) / h) ^ 1 / 2 'genera lote economico
c(i) = k / (y(i) / d(i)) + h * (y(i) / 2) 'costo
t(i) = y(i) / d(i) 'coloca valores
n(i) = Int(l / t(i))
le(i) = l - n(i) * t(i) 'tiempo de entrega
Next
mvy = y(i)
For i = 0 To ns - 1
tabla.Rows.Add(ns)
Next
'utilizando un for para aser la simulasiones
For i = 0 To ns - 1
tabla.Rows(i).Cells(0).Value = i
tabla.Rows(i).Cells(1).Value = Format(d(i), "###.00")
tabla.Rows(i).Cells(2).Value = Format(y(i), "###.00")
tabla.Rows(i).Cells(3).Value = Format(c(i), "###.00")
tabla.Rows(i).Cells(4).Value = Format(t(i), "###.00")
Pág. 29
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
For i = 1 To ns
If mvy < y(i) Then
mvy = (i)
post = i
End If
Next
TextBox5.Text = Format(mvy, "###.0")
TextBox6.Text = Format(l, "###.0")
TextBox7.Text = Format(t(post), "###.0")
TextBox8.Text = Format(le(post), "###.0")
TextBox9.Text = Format(c(post), "###.0")
TextBox10.Text = Format(le(post) * d(post), "###.0")
BOTON NUEVO
Dim k As Integer
k = tabla.Rows.Count
For i = 0 To k
tabla.Rows.Clear()
Next
TextBox1.Focus()
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox7.Text = ""
TextBox8.Text = ""
TextBox9.Text = ""
TextBox10.Text = ""
BOTON SALIR
Me.Close()
Pág. 30
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
7. Elaborar un programa para simular el cálculo de áreas bajo curvas. Utilizar base de
datos y gráficos.
10. Elaborar un programa para simular el modelo de Colas o Líneas de Espera de las
siguientes empresas: Banco de Crédito, ScotiaBank, Caja Municipal del Santa,
Banco de la Nación, Interbank, Seguro Social, Universidad San Pedro. (el grupo
Pág. 31
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
debe seleccionar solo una y no deben ser iguales en cada grupo). Recuerde que
debe modelar el sistema teniendo en cuenta una aproximación real del sistema, es
decir tener en cuenta el máximo de variables que intervienen en dicho sistema.
SUGERENCIA: Los programas pueden ser presentados en un solo archivo, para ello
deberán usar menú, en donde cada opción de menú pueda ejecutar a cada programa.
Pág. 32
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
TEORIA DE COLAS
3.6. MODELOS DE COLAS
3.6.1. DEFINICIÓN
Una Cola es una línea de espera y la teoría de colas es una colección de
modelos matemáticos que describen sistemas de líneas de espera particulares o
de sistemas de colas. Los modelos sirven para encontrar un buen compromiso
entre costos del sistema y los tiempos promedio de la línea de espera para un
sistema dado.
Mecanismo de
Sistema Llegadas Cola
Servicio
Aeropuerto Pasajeros Sala de espera Avión
Dpto. de bomberos Alarmas de incendio Incendios Dpto. De Bomberos.
Compañía telefónica Números marcados Llamadas Conmutador
Panadería Clientes Clientes con números Vendedor
Fábrica Piezas para ensamblar Inventario en proceso Estación de trabajo
Clientes: Objetos (personas, procesos, o cosas) que esperan ser atendidos por
uno o más servidores del sistema de colas.
Servidor: Objetos (personas, procesos, o cosas) que atienden a los clientes.
Tiempo entre Llegadas (λ): Es el tiempo que transcurre desde que llegó un
cliente hasta que llega el siguiente cliente. La llegada de los clientes es aleatoria,
se necesita especificar distribución de probabilidades para este elemento. Para
un sistema de colas básico se utiliza la distribución exponencial. La distribución
de Poisson también es utilizado para un sistema de colas.
Tiempo de Servicio (µ): Es el tiempo que le toma a un servidor atender a un
cliente. También es tratado como una distribución exponencial.
Tiempo de Espera en el sistema: Es el tiempo que le toma al cliente desde que
entra y sale del sistema.
Tiempo de Espera en la Cola: Tiempo transcurrido desde que el cliente entra al
sistema y se inicia el servicio.
Tamaño de las colas: Esta puede ser finita o infinita
Disciplina de la cola de espera: Representa el orden en que los clientes son
atendidos. Este es un factor importante en los modelos de cola. La disciplina más
común es el FIFO (First In, First Out) o PEPS (Primero en Entrar, Primero en
Salir). Existe otra disciplina denominada LIFO (Last In, First Out) o UEPS (Ultimo
en Entrar, Primero en Salir)
Número de Servidores: Es la cantidad de servidores que posee el sistema para
atender a los clientes. El número de servidores no tiene porqué ser siempre en
paralelo, es decir, puede que un sistema de colas tenga varias fases.
Pág. 33
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Pág. 34
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
• Estos tres componentes tienen ciertas características que deben ser examinadas
antes de desarrollar el aspecto matemático de los modelos de cola.
a. CARACTERISTICAS DE ARRIBO:
• La fuente de ingreso que genera los arribos o clientes para el servicio tiene tres
características principales:
a. Tamaño de la población que arriba
b. Patrón de llegada a la cola
c. Comportamiento de las llegadas.
Tamaño de la Población:
El tamaño de la población puede ser: infinito (ilimitado) o limitado (finito). La
mayoría de los modelos asume arribo infinito. Población de arribo limitada o finita:
cuando se tienen muy pocos servidores y el servicio es restringido. Ejemplo: los
pacientes en un consultorio médico.
DISTRIBUCION DE POISSON:
P(x) = Probabilidad de x arribos
x= número de arribos por unidad de tiempo
l = ratio promedio de arribo
e = 2.71828
Comportamiento de los arribos:
La mayoría de los modelos de colas asume que los clientes son pacientes o sea
que esperan en la cola hasta ser servidos y no se pasan entre colas.
Desafortunadamente, la vida es complicada y la gente reniega. Aquellos que se
impacientan por la espera, se retiran de la cola sin completar su transacción.
Pág. 35
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
CANAL1
CANAL3
Pág. 36
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Fase 1 Fase 2
Canal 1 Canal 1
Salidas
Entradas
Fase 1 Fase 2
Canal 2 Canal 2
Pág. 37
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Existe una cantidad enorme de Modelos de Colas que pueden utilizarse. Nos vamos a
concentrar en 4 de los modelos más usados. Modelos más complejos pueden ser
desarrollados mediante el uso de la Simulación y se los encuentra en textos
especializados sobre el tema. Los 4 modelos de colas a estudiar asumen:
Arribos según la Distribución de Poisson
Disciplina PEPS (primero en entrar, primero en salir)
Una sola fase de servicio.
Modelo A: Un canal, arribos según la distribución de Poisson, tiempo de
servicios exponenciales.
Modelo B: Multicanal
Modelo C: Tiempo de Servicio constante
Modelo D: Población Limitada
Modelo A: Modelo de Colas de un solo canal, con arribos que siguen la distribución
de Poisson y Tiempos de Servicio Exponenciales: (Modelo M/M/1)
Los casos más comunes de problemas de colas incluyen la línea de espera de
canal único o servidor único. En este caso los arribos crean una sola cola a ser
servida por una sola estación.
Modelo A: M/M/1
Pág. 38
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
VARIABLES SIMBOLO/FORMULA
Número de canales abiertos M
Tasa promedio de arribo λ
M número de canales abiertos
Tasa promedio de servicio en cada canal μ
tasadepromedio
Probabilidad que existan cerode arribo
clientes en el sistema Po
tasa promedio de servicio en cada canal
M número de canales abiertos
Po Probabilid ad de que existan CERO personas o unidades en el s
tasa promedio de arribo
1
Po tasa promedio de servicio para M
en cada canal
n M 1 1 n 1
M
M
Po Probabilid
ad de que
existan CERO personas o unidades en el s
n !
M ! 1 M
nP 0
para M
n M 1 1 n
o
1 M
M
M !
Ls número promedio n 0 n ! de personas oM
unidades en el sistema :
M
de personas o unidades en el sistema
Ls = número promedio
promedio
Ls número
LS Pode personas o unidades en el sistema :
M 1.!.M M
2
LS Po
M 1.!.M 2
Pág. 39
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Ejemplo 01
BOTON SIMULAR
Dim i, tsll, till, tsa, tia, ns, n, k, pos As Integer
Dim tll(0 To 50), ta(0 To 50), pcs(0 To 50), fu(0 To 50) As Double
Dim tpcs(0 To 50), npuc(0 To 50), tpcc(0 To 50), mvy, pn, po, pk As
Double
Randomize()
tsll = Val(TextBox1.Text)
till = Val(TextBox2.Text)
tsa = Val(TextBox3.Text)
tia = Val(TextBox4.Text)
ns = Val(TextBox5.Text)
n = Val(TextBox11.Text)
k = Val(TextBox12.Text)
For i = 0 To ns - 1
Pág. 40
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
For i = 0 To ns - 1
DGV.Rows.Add()
'COLOCA NUMERO A LAS FILA DE LA REJILLA
DGV.Rows(i).Cells(0).Value = i + 1
'COLOCA VALORES DE TIEMPO DE LLEGADA (LAMDA) EN REJILLA
DGV.Rows(i).Cells(1).Value = Format(tll(i), "###.00")
'COLOCA VALORES DE TIEMPO DE SERVICIO (MU) EN REJILLA
DGV.Rows(i).Cells(2).Value = Format(ta(i), "###.00")
'COLOCA VALORES DE N° PROMEDIO CLIENTES EN SISTEMA EN REJILLA
DGV.Rows(i).Cells(3).Value = Format(pcs(i), "###.00")
'COLOCA VALORES DE FACTOR DE UTILIZACION DEL SISTEMA EN REJILLA
DGV.Rows(i).Cells(4).Value = Format(fu(i), "###.00")
'COLOCA VALORES DE TIEMPO PROMEDIO CLIENTE EN SISTEMA REJILLA
DGV.Rows(i).Cells(5).Value = Format(tpcs(i), "###.0")
'COLOCA VALORES DE NUMERO PROMEDIO DE CLIENTES EN COLA
DGV.Rows(i).Cells(6).Value = Format(npuc(i), "###.0")
'COLOCA VALORES DE TIEMPO PROMEDIO CLIENTE EN COLA
DGV.Rows(i).Cells(7).Value = Format(tpcc(i), "###.0")
Next i
If CheckBox2.Checked Then
po = 1 - tll(pos) / ta(pos)
TextBox14.Text = Format(po, "#.000")
End If
If CheckBox3.Checked Then
pk = (tll(pos) / ta(pos)) ^ (k + 1)
TextBox15.Text = Format(pk, "#.000")
End If
Pág. 41
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
End Sub
BOTON NUEVO
Dim k As Integer
k = DGV.Rows.Count
For i = 0 To k
DGV.Rows.Clear()
Next
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
TextBox6.Text = ""
TextBox7.Text = ""
TextBox8.Text = ""
TextBox9.Text = ""
TextBox10.Text = ""
TextBox11.Text = ""
TextBox12.Text = ""
TextBox13.Text = ""
TextBox14.Text = ""
TextBox15.Text = ""
'TextBox1.SetFocus()
'CheckBox1.cheked = False
'CheckBox2.cheked = False
'CheckBox3.cheked = False
BOTON SALIR
End
Pág. 42
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
CAPITULO IV
Media aritmética
La media aritmética o simplemente media, que denotaremos por 𝑋̅ , es el
número obtenido al dividir la suma de todos los valores de la variable entre el
número total de observaciones, y se define por la siguiente expresión:
Pág. 43
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
∑𝑛𝑖=1 𝑥𝑖
𝑥̅ =
𝑛
∑𝑛𝑖=1 𝑓𝑖 𝑥𝑖
𝑥̅ =
𝑛
∑𝑛𝑖=1 𝑓𝑖 𝑚𝑖
𝑥̅ =
𝑛
∑𝑛𝑖=1 𝑥𝑖 𝑤𝑖
𝑤
̅=
∑𝑛𝑖=1 𝑤𝑖
Media geométrica
Sea una distribución de frecuencias que se simboliza por G. se define como
la raíz N-ésima del producto de los N valores de la distribución.
𝑁
𝐺 = √𝑥1𝑛1 𝑥2𝑛2 𝑥3𝑛3 … . . 𝑥𝑘𝑛𝑘
Media armónica
𝑁
𝐻=
1
∑𝑛𝑖=1 𝑛𝑖
𝑥𝑖
Varianza
Es una medida que cuantifica el grado de dispersión o de variación de los
valores de una variable con respecto a su media aritmética. Si los valores
tienden a concentrarse alrededor de su media, la varianza será pequeña, de
Pág. 44
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
∑𝑛𝑖=1(𝑥𝑖 − 𝑥̅𝑖 )2
2
𝑆 =
𝑛
2
∑𝑘𝑘=1 𝑓𝑖 (𝑥𝑖 − 𝑥̅𝑖 )2
𝑆 =
𝑛
2
∑𝑘𝑘=1 𝑓𝑖 (𝑚𝑖 − 𝑥̅𝑖 )2
𝑆 =
𝑛
Desviación estándar
Indica cuánto tienden a alejarse los valores concretos del promedio en una
distribución. De hecho, específicamente, la desviación estándar es "el
promedio de la distancia de cada punto respecto del promedio".
𝑠 = √𝑆 2
Pág. 45
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
b. NO PROBABILSITICAS
Errática
Por Cuotas
Intencional
Bola de Nieve
Pág. 46
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Pág. 47
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
CAPITULO V
Fue ideada por John von Neumann, luego, John Nash, A.W. Tucker y otros hicieron
grandes contribuciones a la teoría de juegos.
5.2.1. JUEGO
5.2.2. ESTRATEGIA
Cuando un jugador tiene en cuenta las reacciones de otros jugadores para realizar su
elección, se dice que el jugador tiene una estrategia. Una estrategia es un plan de
acciones completo que se lleva a cabo cuando se juega el juego. Se explicita antes de
que comience el juego, y prescribe cada decisión que los agentes deben tomar
durante el transcurso del juego, dada la información disponible para el agente. La
estrategia puede incluir movimientos aleatorios.
Pág. 48
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
IZQUIERDA DERECHA
ARRIBA (50 , 100) (0, 50)
ABAJO (100 , 50) (50, 0)
En la economía existen muchos temas que pueden ser simulados debido a las
complejidades que presentan. Por ejemplo: demanda de un producto, oferta de un
producto, tamaño de mercado, selección y compra de maquinaria, punto de equilibrio
de un producto, etc.
Pág. 49
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
CAPITULO VI
LA SIMULACIÓN EN LA PLANIFICACIÓN, PROGRAMACIÓN Y
CONTROL DE PROYECTOS
6.1.1. PROYECTO
Es un conjunto de tareas u operaciones elementales bien diferenciables que se
ejecutan según un orden determinado.
Los fundamentos de los sistemas PERT y CPM son las representaciones gráficas del
proyecto mediante diagramas de flechas, o también lo podemos llamar red de flechas.
La red se crea según el orden de realización de las tareas u operaciones, paso a paso,
hasta el final del proyecto. Originalmente estas tareas u operaciones se llaman
actividades. Un trabajo encargado a una persona responsable, bien lo realice
personalmente o bien lo hagan operarios a sus órdenes es lo que podemos definir
como actividades.
Una actividad puede comprender una sola tarea o bien una serie de ellas. Todo
depende de la designación del responsable de los trabajos que se realizan bajo sus
órdenes según la conveniencia de la realización del proyecto. Por tanto habrá tantas
actividades como responsables.
i j
El suceso que esta al final de la flecha se llama “suceso inicial” y el suceso que
conecta al comienzo de la flecha se le denomina “suceso final”. El suceso es un
instante de la actividad que sirve como el punto de control, describiendo el momento
de comienzo o terminación de una actividad. La actividad es un símbolo de trabajo en
proceso. Por tanto, todas las actividades requieren tiempo y recursos.
A B
1 2 3
Pág. 50
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Tampoco es preciso que la flecha sea una línea recta, sino que pueden dibujarse en
curva:
Esto depende de la facilidad que haya para representar las actividades en una red de
flechas que refleje el orden y secuencias de las relaciones del proyecto. Una actividad
debe estar terminada para que la subsiguiente pueda comenzar. Como todas las
actividades tienen sus sucesos iniciales y finales, el suceso final de la actividad
precedente es el mismo suceso inicial de la subsiguiente:
A B
1 2 3
Sin embargo, hay una excepción en los sucesos iniciales y finales. El primer suceso
inicial del proyecto no tiene una actividad que la preceda y el último suceso final
tampoco tiene una actividad que la subsiga.
A C E
1 2 4 5
Actividad A = (1,2).
Pág. 51
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Actividad B = (2,3).
Actividad C = (2,4).
Actividad D = (3,4).
Actividad E = (4,5).
Se dice que cualquier actividad es crítica cuando no hay “libertad” para determinar los
tiempos de inicio y de terminación. Como tal, para completar el proyecto sin demora,
cada actividad critica se debe iniciar y terminar a tiempo. Una actividad no crítica
produce cierta holgura en la programación, de manera que el tiempo de iniciar la
actividad se puede adelantar o demorar dentro de ciertos límites, sin afectar la fecha
de terminación de todo el proyecto.
Para realizar los cálculos necesarios, definimos un evento como un punto en el tiempo
en el cual se terminan ciertas actividades y se inician otras. En términos de la red, el
evento corresponde a un nodo. Después, introducimos las siguientes definiciones:
Las definiciones de las primeras y las últimas ocurrencias del evento j se especifican
con relación con las flechas de inicio y de terminación de todo el proyecto. Los
cálculos de la ruta crítica implican dos pasos: el paso hacia delante determinan los
primeros tiempos de ocurrencia de los eventos y el paso hacia atrás calcula sus
últimas fechas de ocurrencia.
Paso hacia delante (primeras fechas de ocurrencia,). En estos pasos, los cálculos
empiezan en el nodo 1 y avanzan recursivamente hacia el nodo final n.
El paso hacia atrás (últimas fechas de ocurrencia, ). Después de la terminación del
paso hacia delante, los cálculos del paso hacia atrás empiezan en el nodo n y
regresan recursivamente al nodo 1.
Pág. 52
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Paso inicial. Determinar n = n para indicar que la primera y la última ocurrencia del
ultimo acontecimiento del proyecto son las mismas.
Paso general j. Dado que los nodos p,q,..., y v están unidos directamente al nodo j
por las actividades de salida (j,p),(j,q),..., y ya se han calculado, entonces la última
fecha de ocurrencia del evento j se calcula como
Basándose en los cálculos anteriores, una actividad (i,j) será critica si satisface tres
condiciones.
1. i = i
2. j = j
3. j - i = j - i = Dij
Las tres condiciones plantean que la primera y la última fecha de ocurrencia de los
eventos finales i y j son iguales y que la duración Dij ocupa exactamente su lapso. Por
tanto, una actividad que satisface las tres condiciones es no crítica. Las actividades
críticas de una red deben construir una ruta ininterrumpida que abarca toda la red de
principio a fin.
15 45
6 18
E - 12
2 7
K - 15
A-6 D - 15
0 B - 10 F - 20 I - 30 60
1 3 5 8
0 60
10 30
G-7
10 30
C - 10
J - 13
4 6
H - 26
21 47
10 36
Pág. 53
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
6.3. HOLGURAS
Es la diferencia ente los valores del rectángulo con el triángulo. Estas representan e
indican que el proyecto tiene esa diferencia de unidades de tiempo para realizar el
proyecto con comodidad.
Pág. 54
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
2. Investigue sobre el método PERT y elabore un programa para simular una red
de proyectos. Alcance toda la teoría del dicho método y desarrolle un ejemplo.
3. Analice y muestre el código fuente de un software que simula el método PERT
y método CPM.
4. Nombre a cada actividad y determine la ruta crítica de la siguiente red de
proyecto, construya el diagrama de Gantt respectivo.
G-6
B-5 3
A-4 O-3
E-7 K-12
1 2 4 8 9
F-8 J-4
C-6 H-5 7 N-8
5 L-5
3
G - 15
B-8
E-4
C - 11 I-5
1 4 7
A-6
H-4
K-7
2
F-9 5 L-3
D - 12 J-8
Pág. 55
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
LIMPIAR 3
Y PINTAR FICTICIA
BASE
B
A C E
1 2 5 6
SACAR REBOBINAR LA ENSAMBLAR
Y ARMADURA E INSTALAR
D
DESARMAR EL MOTOR
EL MOTOR FICTICIA EN LA BASE
4
Reemplazar
los anillos
Pág. 56
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
[C] [E]
FABR.
ORD. Y REC. PROD.
2 3 4
[A] [ ] [ ] [G]
DISEÑAR ENVASAR
PROD. [ ] PROD. [I]
[J]
PRUEBA
MERCADO ENTREGA
1 8 9 1
[B] [H] [ ] 0
DISEÑAR PRUEBA
ENVASE [F] PROD.
[ ] [D]
FABR.
ORD. Y REC. ENV.
5 6 7
[3]
[CODIGO]
DESCRIPCION
CLAVE:
DURACION
Dij
Con el fin de tener en cuenta la incertidumbre, las personas que desarrollaron PERT
permitieron a los usuarios utilizar tres estimadores para los tiempos de cada una de
las actividades:
Pág. 57
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
to + 4tm + tp
te =
6
Veamos que ocurre con el tiempo con el caso de una empresa X en el cual se
proporcionan tres estimaciones de los tiempos que se requieren para terminar cada
una de las actividades del proyecto.
TABLA
La respuesta es:
Se necesita saber qué tan confiables son las estimaciones de los tiempos
esperados.
Lo cual se puede hacer teniendo las tres estimaciones.
Si el tiempo requerido para terminar una actividad es muy grande, entonces
tendremos menos confianza en el tiempo esperado que si el intervalo fuera
menor. Por ejemplo: si las tres estimaciones para la actividad “fabricar el
producto” fueran 2, 3 y 4 en vez de 1.8, 2.8 y 5.0 en ambos casos el tiempo
promedio sería 3.0 días; pero en el primer caso tendríamos más confianza en
que estas cifras modificadas fueran más precisas puesto que tiene menor
variabilidad. Un intervalo amplio de las estimaciones representa una mayor
incertidumbre y, por ello, menor confianza en el tiempo esperado que se
calcula.
Pág. 58
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Código de la Varianza
actividad t2
A 1.78
B 0.44
C 0.56
D 0.22
E 1.00
F 0.28
G 0.44
H 0.28
I 0.09
J 0.11
Pág. 59
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
2 = 3.98 semanas
(En el desarrollo del PERT se utilizaron una distribución beta para describir las
variaciones en los tiempos de actividades)
Primero.-
X- 26 – 22
Z= Z= =2
2
Segundo.-
Pág. 60
SIMULACION DE SISTEMAS
UNIVERSIDAD SAN PEDRO Dr. FERNANDO VEGA HUINCHO
Pág. 61