You are on page 1of 19

Simulacin Computacional Tema: Introduccin

Irene Tischer

Escuela de Ingeniera y Computacin Universidad del Valle, Cali

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Contenido
Ejemplo 1: Un juego de dados Ejemplo 2: El agente viajero Ejemplo 3: Un sistema productivo Ejemplo 4: Un tanque de agua Conclusiones Ejercicios

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 1: Un juego de dados

Se lanzan dos dados, sumando los puntos. Si usted puede apostar a un nmero, cul escogera?

Solucin analtica
Suma 2 3 4 5 6 Eventos (1,1) (1,2), (2,1) (1,3), (2,2), (3,1) (1,4), (2,3), (3,2), (4,1) (1,5), (2,4), (3,3), (4,2), (5,1) (1,6), (2,5), (3,4), (4,3), (5,2), (6,1) (2,6), (3,5), (4,4), (5,3), (6,2) (3,6), (4,5), (5,4), (6,3) (4,6), (5,5), (6,4) (5,6), (6,5) (6,6) Frecuencia 1 2 3 4 5 6 5 4 3 2 1 36 Probabilidad 1/36 2/36 3/36 4/36 5/36 6/36 5/36 4/36 3/36 2/36 1/36 36/36=1

7 8 9 10 11 12 Total

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 1: Un juego de dados (cont.)


Solucin experimental
Se juega muchas veces, anotando el puntaje. Se selecciona el nmero ms frecuente. Resultado despus de 100 juegos Resultado despus de 1000 juegos
Suma 2 3 4 5 6 7 Frecuencia 1 4 5 13 11 13 18 14 12 6 3 100 Probabilidad 0.01 0.04 0.05 0.13 0.11 0.13 0.18 0.14 0.12 0.06 0.03 1 Suma 2 3 4 5 6 Frecuencia 24 54 77 115 119 183 128 125 96 52 27 1000 Probabilidad 0.024 0.054 0.077 0.115 0.119 0.183 0.128 0.125 0.096 0.052 0.027 1

7 8 9 10 11 12 Total

8 9 10 11 12 Total

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 1: Un juego de dados (cont.)


Comparacin de los resultados:
0.2 prob.teor. probH100L probH1000L 0.15

0.1

0.05

10

11

12

Solucin con simulacin (algoritmo probabilstico):


En vez de jugar fsicamente, se experimenta con un modelo en el computador.

Requerimiento:

Generar nmeros aleatorios en el rango entre 2 y 12 en el computador que tienen la misma probabilidad que los obtenidos por el juego real.

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 2: El agente viajero


Un viajero debe visitar n ciudades. Cul es la ruta ms corta? Matriz de distancias:
1 1 2 3 4 5 6 7 8 0 7.0 5.1 4.5 7.3 5.1 8.5 7.6 2 7.0 0 2.2 6.4 11.4 9.4 3.2 3.0 3 5.1 2.2 0 4.2 9.2 7.2 3.6 2.8 4 4.5 6.4 4.2 0 5.0 3.2 6.1 5.1 5 7.3 11.4 9.2 5.0 0 2.2 10.8 9.8 6 5.1 9.4 7.2 3.2 2.2 0 9.2 8.2 7 8.5 3.2 3.6 6.1 10.8 9.2 0 1.0 8 7.6 3.0 2.8 5.1 9.8 8.2 1.0 0
5 6 4 1 3 2

La ruta gracada tiene una longitud de 7.0 + 2.2 + 4.2 + 5.0 + 2.2 + 9.2 + 1.0 + 7.6 = 38.4 Es la ms corta posible?
 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 2: El agente viajero (cont.)


Solucin exacta:
Calcular la distancia de todas las rutas posibles (son n!) y determinar la ms corta Problema de alta complejidad (NP-difcil)

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 2: El agente viajero (cont.)


Solucin con simulacin computacional (algoritmo probabilstico):
Empezando con una ruta inicial, ensayar cambios aleatorias. Si mejora la distancia total, cambiar, sino, ensayar de nuevo. Se continua hasta encontrar una solucin sucientemente buena.

Requerimientos:
Estrategias para el cambio; Generador de nmeros aleatorios.

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 2: El agente viajero (cont.)


Estrategia de cambio:
Seleccionar aleatoriamente 2 nmeros entre 1 y 8 e intercambiar las ciudades correspondientes.

Intercambiar
3 7 2 7 5 8 5 8 5 1 6 1 7 6

Ruta
12345678 12845673 12347658 21345678 21345768 51342768

Distancia
38.4 40.2 48.3 36.7 52.4 52.4 35.9 37.9 29.3 no cambiar no cambiar mejor, cambiar no cambiar no cambiar
1
5 6

1 3

8 4

. . . . . . . . .

2 3

21345687 21346587 23156487

mejor, cambiar no cambiar


6 5 4

 Typeset by FoilTEX 

Simulacin Computacional - Introduccin

Ejemplo 3: Un sistema productivo


Problemas posibles:
Mquina 2 es muy lenta No se entrega a tiempo La bodega siempre est muy llena (alto costo) La materia prima no est disponible cuando se la necesitan

 Typeset by FoilTEX 

10

Simulacin Computacional - Introduccin

Ejemplo 3: Un sistema productivo (cont.)


Solucin por simulacin de sistemas de eventos discretos (DEVS):
Los eventos Se hace un modelo computacional del sistema: Componentes del sistema Procesos Tiempos Se prueban alternativas de solucin con el modelo (escenarios):

Experimentacin smulada

 Typeset by FoilTEX 

11

Simulacin Computacional - Introduccin

Ejemplo 3: Un sistema productivo (cont.)


Requerimientos:
Estudio del sistema Anlisis de los datos del sistema y modelamiento estadstico Representacin de estructuras y procesos en el computador Experimentacin Anlisis de los resultados computacionales y conclusiones

 Typeset by FoilTEX 

12

Simulacin Computacional - Introduccin

Ejemplo 4: Un tanque de agua


Sistema:
Un tanque de agua se alimenta de una fuente (ro) con caudal dado. Hay una demanda de agua determinada. El sistema tiene 2 vlvulas: la vlvula de salida se usa para satisfacer en lo posible la demanda. La vlvula de entrada se maneja a travs de un mecanismo cierre la entrada, si el tanque est lleno. Posible problema: Como debe dimensionarse el tanque para que no haya escasez de agua.

 Typeset by FoilTEX 

13

Simulacin Computacional - Introduccin

Ejemplo 4: Un tanque de agua (cont.)


Simulacin continua: Modelar el sistema como sistema dinmico (ecuaciones diferenciales en dependencia del tiempo): Sean:

V (t) el volumen de agua en el tanque al tiempo t S(t) el ujo de salida del tanque en el momento t E(t) el ujo de entrada del tanque en el momento t
Sistema:

D(t) la demanda en el tiempo t fmax ujo mximo Vmax volumen total del tanque

d V /d t = E(t) S(t); V (0) = V0 S(t) = min (D(t), V (t)) 0 si V (t) > Vmax Vmax V (t) si 0 V (t) Vmax E(t) = f max Vmax si V (t) < 0 f
max

(en la situacin ms simple)

 Typeset by FoilTEX 

14

Simulacin Computacional - Introduccin

Ejemplo 4: Un tanque de agua (cont.)


Se usa el smil hidrulico para modelar diversas situaciones, por ejemplo: crecimiento de una poblacin desarrollo de una enfermedad evolucin de un mercado ...

 Typeset by FoilTEX 

15

Simulacin Computacional - Introduccin

Conclusiones
Importancia de la generacin de nmeros aleatorios Necesidad de generar buenos nmeros aleatorios Uso en algoritmos numricos probabilsticos

Simulacin de sistemas de eventos discretos: experimentacin simulada para entender, predecir y mejorar un sistema complejo. Simulacin de sistemas continuos: prediccin de la dinmica de un sistema.

 Typeset by FoilTEX 

16

Simulacin Computacional - Introduccin

Ejercicios
1. Considerando el juego de dados:

Asume que se juega con dos dados, uno de ellos es justo, el otro es cargado, es decir la probabilidad de obtener un 6 es 0.5, los dems nmeros tienen igual probabilidad. decide cual es la suma que se obtiene con ms alta frecuencia: a partir de un anlisis de conteo usando simulacin

2. Un juego: (tomado de Bernardo Calderon, Introduccin a la simulacin, 1975?) Usted lanza una moneda y cuenta el nmero de caras y sellos que se va obteniendo.El juego termina cuando la diferencia entre caras y sellos sea 3, no interesa cual sea mayor. En este instante usted recibe $8 por el juego, pero tiene que pagar $1 por cada lanzamiento que usted haya hecho.` ? le conviene a Usted participar en el juego.

Considere tambin la situacin, donde el juego es adicionalmente limitado a un mximo de 15 lanzamientos.


 Typeset by FoilTEX  17

Simulacin Computacional - Introduccin

3. Simule el problema del agente viajero, usando dos estrategias de cambio:

seleccionar dos puntos al azar e invertir el camino entre estos dos puntos seleccionar 2 pares puntos al azar, intercambiar el camino entre el primer par con el camino entre el segundo Qu es la bondad de estas estrategias? Qu se puede decir sobre la convergencia? y qu pasa con mnimos locales?

4. En el estado de ftbol se controlan las entrados de una puerta,. La gente llega (el tiempo entre llegadas es entre 0 y 120 segundos) y hace cola para poder entrar. El control de la boleta requiere 70+/- 30 segundos. Simule el sistema hasta que 100 personas a entraron.

Cunto tiempo se demoraron? Se forma una cola? Qu es el tiempo promedio en la cola? Repite para un tiempo de control de entrada de 50+/- 30 segundos. Conclusiones?

 Typeset by FoilTEX 

18

Simulacin Computacional - Introduccin

5. Una poblacin de bacterias se duplica cada hora. Empezando con 1000 bacterias, cmo se desarrolla la poblacin?

Cmo es el comportamiento de la poblacin si se considera tambin una tasa de mortalidad proporcional al tamao de la poblacin?

 Typeset by FoilTEX 

19

You might also like