miércoles, 27 de enero de 2010

Caso 2: "Aleatoriedad 2 La Revancha"

***Introducción

Los tipos de distribuciones son 2 principales:
-Discretas: distribuciones de VA`s discretas
-Continuas: distribuciones de VA`s continuas

Distribuciones discretas
-
Distribución binomial
-
Distribución binomial negativa
-
Distribución Poisson
-
Distribución geométrica
-
Distribución hipergeométrica
-
Distribución de Bernoulli
-
Distribución Rademacher, que toma el valor 1 con probabilidad 1 / 2 y el valor -1 con probabilidad 1 / 2.
-
Distribución uniforme discreta, donde todos los elementos de un conjunto finito son equiprobables.

Distribuciones continuas
-
Distribución uniforme
-
Distribución normal (gaussiana)
-
Distribución gamma
-
Distribución exponencial
-
Distribución Pareto
-
Distribución ji-cuadrada
-
Distribución t de Student
-
Distribución beta
-
Distribución de Cauchy
-
Distribución F de Snedecor-Fisher
-
Distribución de Erlang
-
Distribución de Rayleigh



***Tecnicas para generar números aleatorios.

-Método de computación analógica.

Los métodos de computación analógica dependen de ciertos procesos físicos aleatorios (por ejemplo, el comportamiento de una corriente eléctrica), por lo que se considera que conducen verdaderos números aleatorios.
Ventaja: Aleatorios.
Desventaja: No reproducible.


-Método de compuatación digital.
Se distinguen 3 métodos:

- Provisión externa.
Consiste en grabar en la memoria de la computadora, las tablas Randa, a fin de tratar estos números como datos de entrada para un determinado problema.

- Generación por medio de procesos fisícos aleatorios.

Consiste en usar algún aditamento especial de la computadora, para registra los resultados de algún proceso aleatorio y ademas, reduzca estas resultados a sucesiones de dígitos.

-Generación interna por medio de una relación de recurrencia.
Consiste en generar números pseudoaleatorios por medio de ecuaciones de rrecurrencia, en las que necesariamente se tiene que dar un valor inicial o semilla, para generar los siguientes valores. Vamos ha centrar nuestra atención en este último método de computación digital, y los describiremos ampliamente.
Ventaja: Son reproducibles.
Desventaja: Son pseudoaleatorios.

***Tipos de Generadores de números aleatorios con cierta distribución.

-Generador de( Java)
Este es el generador utilizado para implementar el método nextDouble en la
clase java.util.Random de la biblioteca estándar Java3 . Está basado en una recurrencia
lineal con periodo de longitud 248 , pero cada valor de salida está construido tomando
dos valores sucesivos de la recurrencia lineal.

-Generador (Visual Basic4)

Es un generador de congruencias lineales (LCG) con un periodo de longitud 224

-Generador (Excel)

El generador implementado en Microsoft Excel5 es en esencia un LCG (gen-
erador de congruencias lineales).

-Generador LCG16807
Este es un generador de congruencias lineales

-Generador MRG32k3a

Este es el generador propuesto por L’Ecuyer (1999a). Combina dos
generadores multiplicativos de orden 3 y su periodo tiene una longitud de aproxi-
madamente 2191 .

-Generador MT19937

Es el generador “trenzado” Mersene propuesto por Matsumoto y Nishimu-
ra6 (1998). Tiene el periodo de longitud más grande: 219937 − 1 y unas cualidades es-
tadísticas muy buenas. Es uno de los generadores que oferta actualmente Matlab (ver-
sión 7.1).

-Generador Tausworthe
Están relacionados con los métodos criptográficos, operan sobre los bits para for-
mar números aleatorios. Se define una secuencia b1 , b2 , . . . de dígitos binarios por re-
currencia.

***Pasos del modelo de experimentos de simulación (diseño y validación del programa).

Una vez validado el programa se entra a la fase del diseño de experimentos que se quieren simular, para ello se debe hacer lo siguiente:
-Definir las variables endógenas y exógenas.
-Definir las estructuras funcionales que las relacionan.
-Elegir las distribuciones adecuadas a los parametros aleatorios.
-Generar los números y variables aleatorias que de acuerdo a estas distribuciones, representan al sistema baja estudio.
-Realizar pruebas de hipótesis para seleccionar la información necesaria para realizar la simulación.
-Definir las distintas condiciones iniciales y finales de la simulación.
-Realizar un número determinado de simulación.
-Tabular y graficar los resultados para realizar un mejor análisis y validación de la simulación.


***Generando variables aleatorias no uniformes.
Si el modelo de simulación es estocástico, la simulación debe ser capaz de generar variables aleatorias no uniformes de distribuciones de probabilidad teóricas o empíricas. Lo anterior puede obtenerse si se cuenta con un generador de números uniformes y una función que transforme estos números en valores de la distribución de probabilidad deseada. A este respecto, se han desarrollado una gran cantidad de generadores para las distribuciones más comunes como; la distribución normal, exponencial, Poisson, Erlang, Binomial, Gamma, Beta, F, t.

***Algunas características de números aleatorios.

Cuando se generan números seudoaleatorios se pueden producir ciertos errores
o problemas, como por ejemplo:
- Los números generados pueden no estar distribuidos uniformemente.
- Los números generados pueden corresponder a una distribución discreta en
lugar de a una continua.
- La media de los números generados puede ser demasiado alta o demasiado
baja.
-La varianza de los números generados puede ser demasiado alta o demasiado
baja.
- Puede existir una clara dependencia entre ellos. Por ejemplo
- Autocorrelación entre números.
- Números correlativamente más bajos o más altos que los adyacentes.
- Varios números por encima de la media seguidos de otros por debajo de
la misma.


miércoles, 20 de enero de 2010

Caso1: “Aleatoriedad 911”

***Existencia de metódos para la simulación general.

Resumidamente algunos de los modelos usados en simulación son los siguientes:
-Simulación estadística o Monte Carlo: Está basada en el muestreo sistemático de
variables aleatorias.
-Simulación continua: Los estados del sistema cambian continuamente su valor. Estas
simulaciones se modelan generalmente con ecuaciones diferenciales.
-Simulación por eventos discretos: Se define el modelo cuyo comportamiento varía en
instantes del tiempo dados. Los momentos en los que se producen los cambios son los que
se identifican como los eventos del sistema o simulación.
-Simulación por autómatas celulares: Se aplica a casos complejos, en los que se divide al
comportamiento del sistema en subsistemas más pequeños denominadas células. El
resultado de la simulación está dado por la interacción de las diversas células.

***Casos de aplicación.
-Criptografía.
-Métodos cuantitativos de organización industrial.
-Cromo dinámica cuántica.
-Programas de computadora.
-Densidad y flujo de tráfico.
-Pronóstico del índice dela bolsa.
-Diseño de reactores nucleares.
-Prospecciones en explotaciones
-Diseño de VLSI.
-petrolíferas.
-Ecología.
-Radioterapia contra el cáncer.
-Econometría.
-Sistemas de colas.
-Evolución estelar.
-Sistemas de inventario P y Q.
-Física de materiales.
-Valoración de cartera de valores.

***Cuando utilizar aleatoriedad en simulación?

La simulación como tal es el proceso de diseñar y desarrollar un modelo computarizado de un
sistema o proceso y conducir experimentos con este modelo con el propósito de entender
el comportamiento del sistema o evaluar varias estrategias con las cuales se puede operar
el sistema.

Ahora, los métodos de simulación 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.

Los métodos de simulación como herramientas de investigación y planeamiento;
son técnicas de muestreo artificial, empleadas para operar numéricamente
sistemas complejos que tengan componentes aleatorios o determinísticos, manteniendo tanto
la entrada como la salida un cierto grado de incertidumbre.
Los métodos de simulación son utilizados con fines experimentales, es decir que se pueden elaborar distintos modelos e ir intercambiando parámetros para estudiar cuales son los posibles resultados.


***Encontre algunos de los lenguajes de simulación:
- Para la simulación continua: 1130/CSMP, 360 CSMP y DYNAMO, MISTRAL
- Para la simulación a eventos discretos: GPSS, SIMSCRIPT, SDL/SIM.
- Para casos simples planillas de cálculo. ( Casos en los que solo se necesita una visualización de resultados númericos, más no graficos).
- Existen además aplicaciones de simulaciones en los lenguajes Fortran, C++,
Java, Dephi,...