´n Simulacio de Sistemas Efra´ın Soto Apolinar
Simulaci´ on de Sistemas Notas por:
Efra´ın Soto Apolinar PISIS
Monterrey, N.L., M´ exico. 2008
´Indice
1 Introducci´ on 1.1
5
Conceptos B´ asicos . . . . . . . . . . . . . . . . . . . . . . . . . .
7
1.1.1
Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . .
9
1.1.2
Etapas del Estudio de Simulaci´on . . . . . . . . . . . . . .
10
1.1.3
Distribuciones de probabilidad . . . . . . . . . . . . . . .
12
1.2
Simulaci´ on 01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
1.3
Simulaci´ on 02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
1.3.1
Consideraciones . . . . . . . . . . . . . . . . . . . . . . . .
19
1.3.2
Simulaci´ on por computadora . . . . . . . . . . . . . . . .
20
1.3.3
C´ alculo anal´ıtico . . . . . . . . . . . . . . . . . . . . . . .
23
Simulaci´ on 03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
1.4.1
Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . .
25
1.5
Simulaci´ on 04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
1.6
Simulaci´ on 05 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
1.7
Simulaci´ on 06 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
1.4
Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
1.8
Simulaci´ on 07 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
1.9
Simulaci´ on 07 (Reposici´on) . . . . . . . . . . . . . . . . . . . . .
51
1.10 Simulaci´ on 08 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
55
1.11 Movimiento Browniano . . . . . . . . . . . . . . . . . . . . . . . .
59
1.11.1 Bosquejo de experimento . . . . . . . . . . . . . . . . . .
59
1.12 Simulaci´ on 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
2 Proyecto Final 2.1
73
Simulaci´ on del Recurso E´olico . . . . . . . . . . . . . . . . . . . .
75
2.1.1
Energ´ıa extraida del viento . . . . . . . . . . . . . . . . .
75
2.1.2
Distribuci´on del viento . . . . . . . . . . . . . . . . . . . .
77
2.1.2.1
Distribuci´on Weibull . . . . . . . . . . . . . . . .
77
2.1.2.2
Distribuci´on Rayleigh . . . . . . . . . . . . . . .
78
2.1.2.3
Distribuci´on de energ´ıa . . . . . . . . . . . . . .
78
2.1.2.4
Anem´ometros digitales . . . . . . . . . . . . . .
79
2.1.2.5
Predicci´on del recurso e´olico . . . . . . . . . . .
79
2.1.3
Un caso espec´ıfico . . . . . . . . . . . . . . . . . . . . . .
80
2.1.4
Implementaci´on . . . . . . . . . . . . . . . . . . . . . . . .
80
2.1.5
Resultados de la simulaci´on . . . . . . . . . . . . . . . . .
85
2.1.6
Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . .
90
3 End matter
93
3.1
Fuentes bibliogr´aficas . . . . . . . . . . . . . . . . . . . . . . . . .
95
3.2
T´erminos de uso . . . . . . . . . . . . . . . . . . . . . . . . . . .
97
3.3
Cr´editos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
99
1 Introducci´ on
Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
1.1 Conceptos B´ asicos
1.1
7
´ sicos Conceptos Ba
En esta secci´ on se encuentran algunos conceptos b´asicos de la simulaci´on de sistemas.
Definici´ on 1.1.1. ´n Simulacio Es la imitaci´ on de la operaci´ on de un proceso o sistema (encontrado en el mundo real) y su evoluci´ on en el tiempo. El comportamiento de un sistema conforme evoluciona en el tiempo se estudia desarrollando un modelo de simulaci´on. Ventajas de la simulaci´ on • Pueden estudiarse nuevas pol´ıticas, procedimientos operacionales, reglas de decisi´ on, flujos de informaci´on, procedimientos organizacionales, etc., sin afectar la operaci´ on normal del sistema real. • Pueden probarse nuevos dise˜ nos mec´anicos, sistemas de transporte, etc., sin asignar grandes cantidades de recursos financieros para su adquisici´on. • Puede probarse la factibilidad del c´omo o por qu´e ciertos fen´omenos pueden ocurrir. • Podemos acelerar o decelerar un fen´omeno en investigaci´on. • Podemos obtener informaci´ on acerca de la interacci´on de las variables. • Podemos obtener informaci´ on acerca de la importancia de cada una de las variables en el desempe˜ no general del sistema. • Se puede desarrollar an´ alisis de “cuello de botella”, indicando en qu´e partes se est´ an retrasando demasiado informaci´on, materiales, etc. • Una simulaci´ on puede ayudar a entender c´omo opera el sistema. • Podemos responder preguntas del tipo: “¿Qu´e pasar´ıa si...?”. Esto es particularmente u ´til en el dise˜ no de nuevos sistemas. Desventajas de la simulaci´ on • Construir un modelo requiere de entrenamiento. Es un arte que se aprende con el tiempo y a trav´es de la pr´actica. M´as a´ un, si dos personas competentes construyen un modelo para el mismo sistema, pueden tener similitudes, pero es muy poco probable que sean exactamente iguales. Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
8
Introducci´ on • Los resultados de la simulaci´on pueden ser muy dif´ıciles de interpretar. Dado que la mayor´ıa de los resultados de las simulaciones son esencialmente variables aleatorias (est´an basadas en entradas aleatorias), puede ser dif´ıcil determinar si una observaci´on es un resultado de las interrelaciones de las variables o de la aleatoriedad. • La modelaci´ on de un sistema y su an´alisis puede consumir mucho tiempo y ser costoso. Dedicarse a hacer la simulaci´on de un sistema y su an´alisis puede despu´es indicar que este modelo es insuficiente. • La simulaci´ on se utiliza en algunos casos a´ un cuando podemos encontrar las soluciones anal´ıticamente, o a´ un preferibles. Esto es verdadero en la simulaci´ on de algunas l´ıneas de espera donde hay disponibles modelos de colas cerradas. ¿Cu´ ando es apropiada la simulaci´ on? • La simulaci´ on permite el estudio, la experimentaci´on, interacciones internas de un sistema, o de un subsistema dentro de un sistema complejo. • Cambios organizacionales, inform´aticos y ambientales pueden ser simulados y el efecto de estas alteraciones puede observarse. • El conocimiento ganado al dise˜ nar un modelo de simulaci´on puede ser de gran valor para sugerir mejoras en el sistema investigado. • Al cambiar las entradas del modelo y al observar las salidas, podemos obtener sugerencias valiosas acerca de cu´ales variables son m´as importantes y c´ omo interactuan entre ellas. • La simulaci´ on puede utilizarse como un dispositivo pedag´ogico para fortalecer metodolog´ıas de soluciones anal´ıticas. • La simulaci´ on puede ser usada para experimentar con nuevos dise˜ nos o pol´ıticas antes de su implementaci´on para prepararnos sabi´endo qu´e puede ocurrir. • La simulaci´ on puede utilizarse para verificar soluciones obtenidas anal´ıticamente. ´ Areas de aplicaci´ on • Sistemas de manufactura. • Sistemas p´ ublicos. • Sistemas de trasnporte. • Sistemas de construcci´on. Efra´ın Soto A.
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Simulaci´on de Sistemas
1.1 Conceptos B´ asicos
9
• Sistemas de entretenimiento. • Reingenier´ıa de procesos de negocios. • Procesamiento de alimentos. • Desempe˜ no de sistemas computacionales.
1.1.1
Definiciones
Definici´ on 1.1.2. modelo Representaci´ on de un sistema con el prop´osito de estudiarlo.
Definici´ on 1.1.3. ´ tico Modelo matema Utiliza notaci´ on simb´ olica y ecuaciones matem´aticas para representar el sistema.
Definici´ on 1.1.4. ´ n esta ´ tica Simulacio Representa al sistema en un punto particular del tiempo. Tambi´en se conoce como simulaci´ on de Monte Carlo.
Definici´ on 1.1.5. ´ n dina ´ mica Simulacio Representa el sistema y su evoluci´ on conforme avanza el tiempo.
Definici´ on 1.1.6. Modelo determinista Es un modelo de simulaci´ on que no contiene variables aleatorias.
Definici´ on 1.1.7. ´ stico modelo estoca Es un modelo de simulaci´ on que incluye una o varias variables aleatorias. Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
10
Introducci´ on Nota: Entradas aleatorias generan salidas aleatorias. Dado que las salidas son aleatorias, solamente podemos considerarlas como una estimaci´on de las verdaderas caracter´ısticas del modelo.
Definici´ on 1.1.8. Sistema discreto Un sistema en el cual las variables de estado cambian con valores discretos.
Definici´ on 1.1.9. Sistema continuo Un sistema en el cual las variables de estado cambian con valores continuos con el tiempo.
1.1.2
Etapas del Estudio de Simulaci´ on
En el proceso de construci´on del modelo de simulaci´on se realizan, en general, los siguientes pasos: Definici´ on del sistema Determinar la interacci´on de las variables entre s´ı, del sistema con otros sistemas, etc. Debemos entender el problema antes de iniciar con su soluci´on. Formulaci´ on del modelo Definir todas las variables que forman parte del sistema, sus relaciones. Escribir una definici´on completa del problema. incluir detalles como entradas y salidas esperadas, el procesamiento necesario, suposiciones sobre el problema, etc. Colecci´ on de datos Definir con claridad los datos con que se va a alimentar el modelo. Implementaci´ on del modelo Decidir el lenguaje de programaci´on a utilizar para implementar el modelo en una computadora. Validaci´ on Detallar las deficiencias del modelo o en los datos alimentados al mismo. • Opini´ on de expertos sobre los resultados de la simulaci´on. • La exactitud con que se predicen datos hist´oricos. • La exactitud de la predicci´on en el futuro. • La comprobaci´on de falla del modelo de simulaci´on con datos que hacen fallar al sistema real. Efra´ın Soto A.
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Simulaci´on de Sistemas
1.1 Conceptos B´ asicos
11
• La aceptaci´ on y confianza en el modelo de la persona que har´a uso de los resultados que arroje el experimento de la simulaci´on. Experimentaci´ on. La experimentaci´ on con el modelo se realiza despu´es de que ´este ha sido validado. Consiste en generar datos. Interpretaci´ on. Se interpretan los resultados que arroja la simulaci´on para tomar una decisi´on. Documentaci´ on. Documentaci´ on t´ ecnica Servir´ a para hacer modificaciones al modelo. Documentaci´ on para el usuario Manual detallado de uso del sistema de simulaci´ on para la persona que maneje el sistema. Nota: Las suposiciones deben siempre escribirse en la documentaci´on del programa de computradora generado como simulador. Por ejemplo, si debemos alimentar al sistema con un coeficiente para indicar un porcentaje que debe cumplir con: 0 ≤ p ≤ 1, la documentaci´on debe mencionar este requerimiento de manera expl´ıcita.
Definici´ on 1.1.10. Software de calidad Debe cumplir con los siguientes: Funciona Debe realizar la tarea para la cual se le dise˜ no, completa y correctamente. Es legible y comprensible El manual del usuario es f´acil de comprender para un usuario. Las notas t´ecnicas (del programador) son f´acilmente comprensibles por otros programadores. Esto se logra con un buen dise˜ no y con escritura clara. El c´ odigo autodocumentado sirve para que otros programadores entiendan nuestros programas. Es modificable No debe requerirse mucho tiempo para hacer modificaciones al sistema de simulaci´ on. El programa de c´omputo debe f´acilmente adaptarse a peque˜ nas modificaciones sin gran problema.
Definici´ on 1.1.11. ´ digo autodocumentado Co Es el c´ odigo que utiliza para cada uno de los identificadores de las variables el nombre m´ as parecido al uso que tiene en la realidad. Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
12
Introducci´ on Por ejemplo el c´ odigo: double x,y,z; x = y / z;
No nos dice mucho acerca de los significados de las variables x, y, z, sin embargo, podemos escribir: double velocidad, distancia, tiempo; velocidad = distancia / tiempo;
lo cual hace evidente el significado de cada variable y entendible por otros programadores.
Definici´ on 1.1.12. Robustez La habilidad de un programa de c´omputo para recuperarse despu´es de encontrar un error, es decir, de continuar en operaci´on.
Por ejemplo, en el caso de que un usuario ingrese por error una letra en lugar de un d´ıgito, el programa debe advertir al usuario del error y permitirle intentar de nuevo.
1.1.3
Distribuciones de probabilidad
Se han creado cientos de distribuciones de probabilidad para ciertos procesos f´ısicos. La elecci´ on de una distribuci´on adecuada para cada proceso es importante. Es una buena idea considerar las caracter´ıticas f´ısicas del proceso en estudio para seleccionar una distribuci´on. Cuestiones de continuidad o discretizaci´on, si la variable est´ a acotada o no acotada, etc., facilitan la decisi´on. Una vez que vaya a elegir una distribuci´on debe tener cuidado. Aqu´ı se indican algunos ejemplos. Binomial Modela el n´ umero de triunfos en n intentos, cuando los intentos son independientes con probabilidad de ´exito p (todos los intentos tienen la misma probabilidad de ´exito). Por ejemplo, el n´ umero de piezas defectuosas en un lote de n piezas. Efra´ın Soto A.
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Simulaci´on de Sistemas
1.1 Conceptos B´ asicos
13
Binomial Negativa (incluida la distribuci´on geom´etrica) Modela el n´ umero de intentos requeridos para obtener k triunfos. Por ejemplo, el n´ umero de piezas que debemos inspeccionar para encontrar 2 defectuosas. Poisson Modela el n´ umero de eventos independientes que ocurren en una cantidad fija de tiempo y espacio. Por ejemplo, el n´ umero de clientes que llegan a una tienda durante una hora, o el n´ umero de defectos encontrados en una l´ amina de 50 m2 . Normal Modela la distribuci´ on de un proceso que puede pensarse como la suma de un n´ umero de subprocesos. Por ejemplo, el tiempo para ensamblar un producto, que es igual a la suma de los tiempos requeridos para cada operaci´ on del ensamble. N´ otese que la distribuci´on normal admite valores negativos, los cuales pueden ser imposibles para procesos de tiempo. Lognormal Modela la distribuci´ on de un proceso que pueden pensarse como el resultado de la multiplicaci´ on de un n´ umero de subprocesos. Por ejemplo, la rapidez de retorno de una inversi´on, cuando el inter´es es compuesto, es el producto del retorno por el n´ umero de periodos. Exponencial Modela el tiempo entre eventos independientes, o un proceso en el tiempo que no tiene memoria (el hecho de saber cu´anto tiempo ha pasado no nos da informaci´on sobre cu´anto tiempo debe pasar para completar el proceso). Por ejemplo, el tiempo entre llegadas de un gran n´ umero de clientes que actuan independientemente uno de otro. Gamma Una distribuci´ on muy flexible usada para modelar variables aleatorias no negativas. Esta distribuci´on puede desplazarse (de cero) sumando una constante. Beta Una distribuci´ on muy flexible usada para modelar variables aleatorias con un intervalo definido (limites inferior y superior fijos). Erlang Modela procesos que pueden ser vistos como la suma de varios procesos con distribuci´ on exponencial. Por ejemplo, las fallas de la red computacional debido al fallo de una computadora y a dos computadoras de respaldo, y cada una tiene un tiempo de fallo que tiene distribuci´on exponencial. Weibull Modela el tiempo de fallo de componentes. Por ejemplo, el tiempo de falla de un aparato electrodom´estico. Uniforme (Discreta o cont´ınua) Modela incerteza completa, dado que todos los valores tienen la misma probabilidad de salir. Triangular Modela procesos donde solamente se conocen el m´ınimo, m´aximo y el m´ as frecuente. Por ejemplo, los tiempos requeridos m´ınimo, m´aximo y el m´ as frecuente para reparar un aparato electrico. Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
14
Introducci´ on Empirica Vuelve a muestrear de los datos reales medidos. Frecuentemente se utiliza cuando no se conoce una distribuci´on te´orica apropiada para el proceso en estudio.
Efra´ın Soto A.
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Simulaci´on de Sistemas
1.2 Simulaci´ on 01
1.2
15
´ n 01 Simulacio
Primera simulaci´ on Considere el planeta tierra con un tunel que le atraviesa por su centro. Se suelta una piedra de masa m para que caiga a trav´es de ese tunel. Simular la posici´on de la piedra para cada instante t. Considere la masa de la tierra constante e igual a M .
Desarrollar los siguientes casos: 1. Considerar la masa de la tierra M concentrada en su centro. Suponer que la fricci´ on con el aire es despreciable. La fuerza que “siente” la piedra es su peso: W =m·x ¨(t) Por otra parte, esta fuerza es ocasionada por la atracci´on gravitatoria de la tierra sobre la piedra: m·M FG = G [x(t)]2 Igualando las fuerzas obtenemos: m·x ¨(t) = G
m·M [x(t)]2
Lo cual puede simplificarse para obtener: x ¨(t) = G
M [x(t)]2
La ecuaci´ on diferencial que representa el modelo matem´atico para esta situaci´on es: x ¨(t) · [x(t)]2 = G M
(1.1)
La soluci´ on de esta ecuaci´ on no se ha logrado encontrar. En primer lugar, como x(t) est´a en el denominador, tenemos divisi´on por cero cuando la piedra est´ a en el centro de la tierra. De cualquier manera, se muestra una soluci´on que muestra la velocidad en funci´ on de la posici´ on. Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
16
Introducci´ on Definimos: v(t) = x(t), ˙ entonces, dv dx dv · =v· dx dt dx
x ¨(t) = v(t) ˙ =
Entonces, la ecuaci´on se reduce de orden obteniendo: v·
dv GM = 2 dx x
Podemos separar las variables para resolver la ecuaci´on: Z Z GM dx v dv = x2 v2 GM = − +C 2 3 x3 de donde al despejar v(x) obtenemos: r −
v=
2 GM +K 3 x3
(1.2)
Esta soluci´ on nos puede dar alguna informaci´on del fen´omeno que estudiamos. 2. Considerar la masa de la tierra M distribuida uniformemente. Suponer que la fricci´ on con el aire es despreciable. Por definici´ on, la densidad de un material es igual al cociente de la masa del mismo entre su volumen. La densidad de la tierra en este caso se considera constante. Suponemos adem´as que la forma de la tierra es esf´erica. El volumen de una esfera de radio x(t) es: V =
4 π [x(t)]3 3
Pero para la f´ ormula de la ley universal de gravitaci´on de Newton necesitamos la masa de la fracci´on de la tierra que sigue atrayendo a la piedra. En este caso, se trata de una esfera de radio x(t), su masa puede calcularse como el producto del volumen parcial por la densidad promedio de la tierra, es decir: 4 M (t) = π [x(t)]3 ρT 3 Ahora, sustituimos este valor en la f´ormula de la ecuaci´on encontrada en el primer mdelo:
Efra´ın Soto A.
4 [x(t)]3 m π ρT 3 [x(t)]2
m·x ¨(t)
=
G
x ¨(t)
=
4 π x(t) ρT G 3
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Simulaci´on de Sistemas
1.2 Simulaci´ on 01
17
y definiendo: L =
4 π ρT G, podemos escribir de una manera m´as compacta: 3 x ¨(t) = L x(t)
(1.3)
La soluci´ on de esta ecuaci´ on es como sigue: suponemos una soluci´on del tipo x(t) = er t . Entonces, x(t) ˙ = r er t , y x ¨(t) = r2 er t . Sustituyendo estos resultados en la ecuaci´ on obtenemos: r 2 er t 2 rt
= L er t
rt
− Le r − L · er t
r e 2
=
0
=
0
pero er t 6= 0 para cualquier t. Entonces, r2 − L = r
=
0 +√
L
Y la soluci´ on de la ecuaci´ on es: √
x(t) = C1 e
Lt
√
+ C2 e−
Lt
Con las condiciones iniciales podemos encontrar los valores de las constantes C1 y C2 . En caso de que L sea negativo, tendremos soluciones imaginarias. 3. Considerar la masa de la tierra M distribuida uniformemente. Suponer que la fricci´ on con el aire es directamente proporcional a la velocidad de la piedra. Ahora, tenemos una nueva fuerza que consiste en la resistencia debido al aire. En este caso se trata de una fuerza proporcional a x(t). ˙ Entonces, la ecuaci´ on que considera las fuerzas que act´ uan sobre la piedra es: 4 m·x ¨(t) = π x(t) ρT m G − c · x(t) ˙ 3 la cual puede expresarse como: m·x ¨(t) + c · x(t) ˙ − λx(t) = 0
(1.4)
4 π ρT m G. 3 La soluci´ on de esta ecuaci´ on es inmediata, dado que se trata de una ecuaci´on diferencial lineal de segundo orden. donde λ =
Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
18
Introducci´ on Suponemos que la soluci´on es de la forma: x(t) = er t . Entonces, x(t) ˙ = r er t , 2 rt yx ¨(t) = r e . Sustituyendo estos resultados en la ecuaci´on obtenemos: m r2 er t + c r er t − λ er t = 0 Inmediatamente observamos que podemos factorizar la funci´on er t , para obtener: er t m r 2 + c r − λ = 0 pero er t 6= 0 para cualquier t. Esto nos obliga a hacer: m r2 + c r − λ = 0. Aqu´ı tenemos una ecuaci´on cuadr´atica que se resuelve con la f´ormula general: √ −c + c2 + 4 mλ r= 2m y obtenemos los dos valores de r que hacen que x(t) = er t sean soluci´on de la ecuaci´ on diferencial: m · x ¨(t) + c · x(t) ˙ − λx(t) = 0: √ −c + c2 + 4 mλ r1 = √2 m −c − c2 + 4 mλ r2 = 2m De donde la soluci´ on de la ecuaci´on diferencial es: x(t) = C1 er1 t + C2 er2 t Con las condiciones iniciales podemos encontrar los valores de las constantes C1 y C2 . Por la forma del experimento, puede probarse que el valor de c > 0, y que las ra´ıces r1 , r2 de la ecuaci´on caracter´ıstica de la ecuaci´on diferencial son n´ umeros complejos, y la soluci´on tiene la forma: x(t) = e−c/2m C1 eiρt + C2 e−iρt y finalmente puede simplificarse, con la ayuda de las condiciones iniciales a: x(t) = R e−c/2m cos(ρt)
√ donde ρ =
Efra´ın Soto A.
(1.5)
c2 + 4 mλ . 2m
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Simulaci´on de Sistemas
1.3 Simulaci´ on 02
19
´ n 02 Simulacio
1.3
Problema 2
Se lanza un alfiler de longitud L a una mesa que tiene dibujadas l´ıneas paralelas equidistantes separadas a L unidades una de la otra. Calcular la probabilidad de que el alfiler toque l´ınea.
1.3.1
Consideraciones
Se realizaron las siguientes suposiciones: 1. La longitud del alfiler es 1. 2. El alfiler siempre cae dentro de la mesa. 3. La distancia (medida verticalmente) de una recta a la cabeza del alfiler es una variable aleatoria que presenta distribuci´on uniforme. 4. El ´ angulo que forma el alfiler con las rectas dibujadas sobre la mesa es una variable aleatoria que presenta distribuci´on uniforme. Con base en estas suposiciones, podemos definir como x la distancia (medida verticalmente) de una recta a la cabeza del alfiler, y θ como el ´angulo que forma una de las rectas dibujadas sobre la mesa y el alfiler. 1
`i+1 θ
x 0
`i
Ahora definimos y como la posici´ on de la punta del alfiler (el extremo opuesto a la cabeza del alfiler). Dado que el alfiler mide 1, la coordenada y puede calcularse con: y = x + sin (2 π θ) Simulaci´ on de Sistemas
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Efra´ın Soto A.
20
Introducci´ on donde π = 3.141592654 · · · , es la constante geom´etrica1 , y θ es el ´angulo como se defini´ o anteriormente. El alfiler tocar´ a l´ınea siempre y cuando se cumpla alguna de las siguientes condiciones: i. y > 1, ´ o ii. y < 0 Geom´etricamente, de la figura podemos ver que en estos casos, la punta del alfiler estar´ a fuera del a´rea encerrada por las l´ıneas paralelas `i y `i+1 .
1.3.2
Simulaci´ on por computadora
En seguida se muestra el c´odigo del programa que simula este experimento. /* Nombre del archivo: simulacion01.cpp Descripci´ on: Este programa simula el siguiente experimento: Se lanza un alfiler de longitud L a una mesa que tiene dibujadas l´ ıneas paralelas equidistantes separadas a L unidades una de la otra. El usuario debe ingresar el n´ umero total de experimentos (entero) que se deben realizar, entendiendo por experimento la simulaci´ on de un lanzamiento del alfiler sobre la mesa. El resultado indica la probabilidad de que el alfiler toque una de las l´ ıneas dibujadas sobre la mesa. ------------------------------------------------------------------------------------------------------Autor: Efra´ ın Soto Apolinar Email:
[email protected] Fecha de ´ ultima Modificaci´ on: 24 de enero de 2008 Lenguaje de Programaci´ on: C++ Compilador: Dev - C++ Versi´ on 4.9.9.2. ------------------------------------------------------------------------------------------------------*/ #include // Funciones b´ asicas para input/output #include // para usar la funci´ on rand() #include // funciones matem´ aticas (sin (double)) #include // para usar: getche, getch 1 Al multiplicar θ por 2 π convertimos la variable aleatoria θ, cuyos valores van desde 0 hasta 1 a radianes. Se trata de un simple mapeo uno a uno.
Efra´ın Soto A.
Notas del curso Simulaci´ on de Sistemas Prohibida la reproducci´ on sin permiso previo del autor.
Simulaci´on de Sistemas
1.3 Simulaci´ on 02
21
using namespace std; int main(void) { char respuesta; int si, no, i, j, total; double p, x, y, a; const double pi = 3.141592654; /* x --> representa la distancia de una recta paralela de referencia al punto donde cay´ o la cabeza del alfiler. y = x + sin (2 * pi * a) a --> es el ´ angulo que forma el alfiler con las rectas paralelas dibujadas sobre la mesa si --> es el n´ umero de veces que el alfiler toca l´ ınea no --> es el n´ umero de veces que el alfiler NO toca l´ ınea p --> es la probabilidad de que toque... total --> es el n´ umero de experimentos que realizar´ a el programa... */ cout