Вы находитесь на странице: 1из 13

UNIVERSIDAD NACIONAL PEDRO RUIZ GALLO

FACULTADAD DE CIENCIAS FISICAS Y MATEMATICAS

ESCUELA PROFESIONAL DE FISICA

TITULO: SIMULACION MONTE CARLO EN MONEDAS Y DADOS HACIENDO


USO DEL PROGRAMA FORTRAN

AUTOR: QUEVEDO BUSTAMANTE PAUL ISAAC

DOCENTE: M.SC. RIVERA VASQUEZ JUAN PEDRO


2

RESUMEN

En este articulo científico se presenta la simulación de Monte Carlo aplicada al lanzamiento de

monedas y dados, como técnica numérica para calcular probabilidades utilizando secuencias

aleatorias dentro de un esquema de análisis usado para evaluar el comportamiento de variables.

La simulación se llevará a cabo en el lenguaje de programación ANSI X3.198-1992(Fortran 90),

se describe cómo es posible obtener un número pseudoaleatorio proveniente de una distribución

uniforme entre el 0 y el 1 usando la función ALEATORIO.

Avanzando en ejemplos más complejos se construyen modelos de simulación Monte Carlo

cuando las variables aleatorias son discretas o continuas. Al desarrollar este artículo científico

en base al programa FORTRAN en la cual se trabajará con algoritmos, se tiene el objetivo de que

funcione y tendremos la certeza de saber cuántas veces se repetiría cara o sello al lanzar una

moneda, dejando atrás los clásicos métodos utilizados.

Palabras claves: Monte Carlo, ANSI X3.198-1992, función ALEATORIO

Lambayeque, 15 de agosto del 2019


3

INTRODUCCIÓN

LOS MÉTODOS DE MONTECARLO ABARCAN UNA COLECCIÓN DE TÉCNICAS QUE


PERMITEN OBTENER SOLUCIONES DE PROBLEMAS MATEMÁTICOS O FÍSICOS POR MEDIO
DE PRUEBAS ALEATORIAS REPETIDAS. EN LA PRÁCTICA, LAS PRUEBAS ALEATORIAS SE
SUSTITUYEN POR RESULTADOS DE CIERTOS CÁLCULOS REALIZADOS CON NÚMEROS
ALEATORIOS. SE ESTUDIARÁ EL CONCEPTO DE VARIABLE ALEATORIA Y LA
TRANSFORMACIÓN DE UNA VARIABLE ALEATORIA DISCRETA O CONTINUA.

EJEMPLOS SENCILLOS SON: EL MECANISMO BÁSICO DE LA DIFUSIÓN Y EL


ESTABLECIMIENTO DEL EQUILIBRIO TÉRMICO ENTRE DOS SISTEMAS QUE SE PONEN EN
CONTACTO A DISTINTA TEMPERATURA. ESTOS DOS EJEMPLOS NOS MOSTRARÁN EL
SIGNIFICADO DE PROCESO IRREVERSIBLE Y FLUCTUACIÓN ALREDEDOR DEL ESTADO DE
EQUILIBRIO.

LA EXPLICACIÓN DE LA LEY EXPONENCIAL DECRECIENTE EN LA DESINTEGRACIÓN DE


UNA SUSTANCIA RADIOACTIVA EN OTRA ESTABLE. COMPRENDER, A PARTIR DE UN
MODELO SIMPLE DE NÚCLEO RADIOACTIVO, QUE SU DESINTEGRACIÓN ES UN SUCESO
ALEATORIO, CON MAYOR O MENOR PROBABILIDAD DEPENDIENDO DE LA ANCHURA DE
LAS BARRERAS DE POTENCIAL QUE MANTIENEN CONFINADAS A LAS PARTÍCULAS QUE
COMPONEN EL NÚCLEO.

OTROS EJEMPLOS RELEVANTES SON: EL ESTUDIO DE UN SISTEMA CON UN NÚMERO


PEQUEÑO DE ESTADOS COMO PASO PREVIO AL ESTUDIO DEL COMPORTAMIENTO DE
UN MATERIAL PARAMAGNÉTICO BAJO LA ACCIÓN DE UN CAMPO MAGNÉTICO Y A UNA
DETERMINADA TEMPERATURA, DOS EJEMPLOS DE APLICACIÓN DE LA
TRANSFORMACIÓN DE UNA VARIABLE DISCRETA. POR ÚLTIMO, ESTUDIAREMOS EL
COMPORTAMIENTO DE UN MATERIAL DIELÉCTRICO COMO EJEMPLO DE APLICACIÓN DE
TRANSFORMACIÓN DE UNA VARIABLE ALEATORIA CONTINUA.
4

MÉTODOS Y MATERIALES

Los métodos de Montecarlo abarcan una colección de técnicas que permiten obtener

soluciones de problemas matemáticos o físicos por medio de pruebas aleatorias repetidas.

En la práctica, las pruebas aleatorias se sustituyen por resultados de ciertos cálculos

realizados con números aleatorios.

Se estudiará el concepto de variable aleatoria y la transformación de una variable aleatoria

discreta o continua.

Se realiza una simulación por computador haciendo uso del programa FORTRAN 90 que

no permite, por un lado, desarrollar aplicaciones de mayor complejidad (usando un

lenguaje de programación); y por el otro, automatizar tareas rutinarias que se almacenan

en un archivo el cual se puede ejecutar cuando se necesite nuevamente.


5

Estadística Aleatoria

La variable aleatoria
Una variable aleatoria es una función que asigna un valor, usualmente numérico,
al resultado de un experimento aleatorio. Por ejemplo, los posibles resultados
de tirar un dado dos veces: (1, 1), (1, 2), etc. o un número real (la temperatura
máxima medida a lo largo del día en una ciudad concreta).
Los valores posibles de una variable aleatoria pueden representar los posibles
resultados de un experimento aún no realizado, o los posibles valores de una
cantidad cuyo valor actualmente existente es incierto (p.e., como resultado de
medición incompleta o imprecisa). Intuitivamente, una variable aleatoria puede
tomarse como una cantidad cuyo valor no es fijo pero puede tomar diferentes
valores; una distribución de probabilidad se usa para describir la probabilidad de
que se den los diferentes valores. En términos formales una variable aleatoria es
una función definida sobre un espacio de probabilidad.
Las variables aleatorias suelen tomar valores reales, pero se pueden considerar
valores aleatorios como valores lógicos, funciones o cualquier tipo de elementos
(de un espacio medible). El término elemento aleatorio se utiliza para englobar
todo ese tipo de conceptos relacionados. Un concepto relacionado es el
de proceso estocástico, un conjunto de variables aleatorias ordenadas
(habitualmente por orden o tiempo).
Tipos de Variables aleatorias:

 V.discreta: una v.a. es discreta si su recorrido es un conjunto discreto. Sus


probabilidades se recogen en la función de cuantía.
o Ejemplos:
- El número de accidentes de tránsito que ocurren en una autopista en
un lapso de tiempo determinado
- El número de artículos defectuosos que se encuentran en una muestra
de 20 artículos producidos por una maquina
- El número de veces que se lanza una moneda hasta que salga la primera
cara.
- El número de hermanos de una persona seleccionada al azar.

 V.continua: una v.a. es continua si su recorrido es un conjunto no


numerable. Intuitivamente esto significa que el conjunto de posibles
valores de la variable abarca todo un intervalo de números reales. Por
ejemplo, la variable que asigna la estatura a una persona extraída de una
determinada población es una variable continua ya que, teóricamente, todo
valor entre, pongamos por caso, 0 y 2,50 m, es posible.
6

o Ejemplos:
- Tiempo de espera de un paciente antes de ser atendido
- La edad, la estatura, el peso, la presión arterial, la temperatura.
- Ingresos y egresos de una familia.
7

 Algoritmo para el lanzamiento de dados


INTEGER Count

REAL R, N

real lado1, lado2, lado3, lado4, lado5, lado6

INTEGER, DIMENSION(1) :: Seed

write(*,*)'introducir numero de lanzamientos'

read(*,*) N

write(*,*) ' i lado1 lado2 lado3 lado4 lado5 lado6 '

CALL SYSTEM_CLOCK( Count )

Seed = Count

Lado1 = 0

Lado2 = 0

Lado3 = 0

Lado4 = 0

Lado5 = 0

Lado6 = 0

do I=1,N

CALL RANDOM_SEED( PUT = Seed )

CALL RANDOM_NUMBER( R )

if ((6*R + 1 )>6 ) then

lado1=lado1 + 1

elseif((6*R + 1)>5) then

lado3=lado3 + 1
8

elseif((6*R + 1)>4) then

lado4=lado4 + 1

elseif((6*R + 1)>3) then

lado5=lado5 + 1

elseif((6*R + 1)>2) then

lado6=lado6 + 1

else

lado2= lado2 + 1

endif

write(*,*)' i , lado1, lado2, lado3, lado4, lado5, lado6'

CALL RANDOM_SEED( GET = Seed )

end do

write(*,*)'Pl P2 P3 P4 P5 P6'

P1=lado1/N

P2=lado2/N

P3=lado3/N

P4=lado4/N

P5=lado5/N

P6=lado6/N

write(*,*)P1, P2, P3, P4, P5, P6

write(*,*) 'presionar cualquier tecla para terminar el programa'

read(*,*)

end
9

 Reproducción del programa (para 32 lanzamientos)


10

 Algoritmo para lanzamiento de monedas

INTEGER Count

REAL R, N,C,S

real Ca, Se

INTEGER, DIMENSION(1) :: Seed

write(*,*)'introducir numero de lanzamientos'

read(*,*) N

CALL SYSTEM_CLOCK( Count )

Seed = Count

Ca = 0

Se = 0

write(*,*)' i caras sellos'

DO I = 1, N

CALL RANDOM_SEED( PUT = Seed )

CALL RANDOM_NUMBER( R )

if (R < 0.5) then

Ca = Ca+1

ELSE

Se= Se+1

END if

write(*,*) i, Ca, Se

CALL RANDOM_SEED( GET = Seed )

END DO

write(*,*)' i caras sellos'

write(*,*) N, Ca, Se

write(*,*)'la probabilidad de caras y sellos es:'


11

write(*,*)' C S '

C=Ca/N

S=Se/N

write(*,*) C,S

write(*,*) 'presionar cualquier tecla para terminar el programa'

read(*,*)

END

Reproducción del programa (para 35 lanzamientos)


12

Resultados:

Probabilidad de que caiga cara: 19


Probabilidad de que caiga sello: 16

DISCUSIÓN

Existen fenómenos que, aunque se verifiquen en las mismas condiciones y circunstancias,

pueden dar lugar a resultados totalmente diferentes

- No se puede predecir el resultado de cada prueba.

- El lanzamiento de un dado no es único es sustituible ya sea por el lanzamiento de

una moneda corriente o cualquier objeto que permita que los resultados se pueden

agrupar en categorías.

- Si se repite un número suficiente de veces y se anotan los resultados se da con una

frecuencia que tiende a estabilizarse.


13

CONCLUSIONES

 En la simulación de lanzamientos de moneda se puede observar que cada


programa genera los datos pseudoaleatorios, Muchos programas de ordenador
necesitan números aleatorios para funcionar. Desde videojuegos a sistemas de
seguridad y simuladores. Los valores aleatorios se utilizan para el análisis
estadístico, el arte o simplemente cuando hay que elegir algo al azar, como en
los sorteos. Sin embargo, la aleatoriedad perfecta que atribuimos a objetos como
monedas, dados o las bolas de un bombo es algo difícil de alcanzar cuando se
trata de generarla con ordenadores.
 La precisión de los ordenadores y su carácter determinista son la clave del
asunto. Un ordenador o un programa siempre dará los mismos resultados de
salida ante los mismos datos de entrada. Al menos mientras no se introduzca
entremedias algún tipo de factor aleatorio.
 Precisamente en los generadores de números aleatorios donde está el problema.
En realidad, no son "tan aleatorios"

BIBLIOGRAFIA

 http://www.scielo.org.co/scielo.php?script=sci_arttext&pid=S0120-
53072007000100001#targetText=El%20resumen%20del%20art%C3%ADculo%20cient
%C3%ADfico,discusi%C3%B3n%2C%20Conclusiones%20y%20Palabras%20clave.
 https://rstopup.com/como-generar-un-numero-entero-aleatorio-en-fortran-90-en-el-
intervalo-05.html
 https://elpais.com/tecnologia/2017/07/20/actualidad/1500554624_627767.html
 http://www.sc.ehu.es/sbweb/fisica_/numerico/montecarlo/montecarlo.html

Вам также может понравиться