los sistemas estocásticos pueden ser modelados mediante la combinación apropiada de lanzamientos de dados no cargados ¿cómo crear aleatoriedad dentro de un computador? ¿Cuáles son los principios sobre los cuales debe construirse una función que cada vez que sea invocada retorne un número (seudo) aleatorio? En este capítulo se describen las técnicas más importantes para lograr este objetivo.
3.2 CONCEPTO DE ALEATORIEDAD Y NÚMEROS ALEATORIOSPara un estudio de simulación es más importante el concepto de números aleatorios que el de número aleatorio ; sin embargo, puesto que uno implica al otro, esta sección inicia discutiendo la idea formal de número aleatorio y finaliza con el concepto de números aleatorios.
3.2.1 Número aleatorio
Definición 1 — 1 : Número aleatorio.
Un número
extraído de una población probabilísticamente uniforme en el intervalo
se denomina número aleatorio . En otras palabras, siempre que
entonces
se denomina número aleatorio.
Notas:
1. |
El nombre más apropiado para los |
2. |
El valor esperado de ese número es |
3. |
Un número aleatorio es la realización de una variable aleatoria uniforme en |
3.2.2 Números aleatorios
Definición 1 — 2 : Números aleatorios.
Un conjunto de
números
se denominan aleatorios siempre que sean extraídos del vector aleatorio
con función de densidad conjunta
de tal forma que ![]()
y
es un número aleatorio para
.
Notas:
1. |
Es una realización de un proceso estocástico de sucesos independientes. |
2. |
Cualquier subconjunto de números es también aleatorio |
3. |
La aleatoriedad es un concepto perfectamente definido. |
3.2.3 Generador de números aleatorios
Definición 1 — 3 : Generador de números aleatorios.
Se denomina Generador de números aleatorios a un algoritmo capaz de producir una secuencia de
números
extraídos de una población uniforme mediante sucesos independientes.
Notas:
1. |
No es una actividad trivial construir este tipo de algoritmos |
2. |
Por esta razón en simulación y otras disciplinas se construyen los generadores de números cuasi-aleatorios |
3. |
Un generador de números cuasi-aleatorios es aquel en el cual los números obtenidos, aunque no son propiamente aleatorios en un sentido general, son estadísticamente uniformes el intervalo [0,1] y estadísticamente independientes. |
3.3 MÉTODOS PARA GENERAR NÚMEROS ALEATORIOS
Básicamente existen dos formas para determinar o generar un número aleatorio usando computadores. Las técnicas más usuales se describen a continuación.
3.3.1 Dispositivos aleatorios
Son aquellos Generadores, basados en el estado del sistema, en los cuales el algoritmo mide el nivel de alguna variable estocástica del sistema de cómputo, justo en el momento de ser invocado. Por ejemplo, el nivel de voltaje de un circuito integrado del sistema.
Aunque a primera vista es un buen generador, presenta el inconveniente de no poder asegurar que la distribución de probabilidad de la cual provienen los datos sea uniforme.
3.3.2 Bases de datos
Ello supone producir la secuencia. Un conjunto
de
números aleatorios, con algún procedimiento externo a la máquina, luego de lo cual la secuencia determinada será la fuente de alimentación de una base de datos.
Con este procedimiento, se logran números que provienen de una distribución uniforme y, además, a través de sucesos independientes; sin embargo, presentan un inconveniente a la vista del ingeniero: consumen recursos valiosos en el computador
3.3.3 Ecuaciones en diferencias y pseudoaleatoriedadLas ecuaciones en diferencias se emplean para construir generadores de números cuasi-aleatorios . Es decir que tales números no son verdaderamente aleatorios. La razón es que el
número obtenido depende funcionalmente de algunos o todos sus predecesores
Sea
y
una secuencia de números (usualmente enteros) indexada bajo la variable independiente
y gobernada por la expresión
es una ecuación en diferencias (no necesariamente lineal ni homogénea) que quedará totalmente especificada si se determinan las condiciones de frontera
, denominadas semillas del generador entonces el número aleatorio se obtiene mediante una transformación definida por:
![]()
Esta transformación asegura que los números
pertenezcan al intervalo
.
Notas:
1. |
Este es el camino más utilizado actualmente |
2. |
La función |
3. |
No para cualquier par función-transformación se obtendrán buenos números cuasi-aleatorios. El trabajo para encontrar las apropiadas es, la mayoría de la veces, un trabajo complicado. |
Se encuentran varios tipos de programas basados en ecuaciones en diferencias que vale la pena destacar. El interés de estudio para esos programas, denominados Generadores Clásicos o también conocidos como Procedimientos aritméticos , no va más allá de la simple curiosidad.
3.3.3.2 Un generador no linealLa definición de generador con base en una ecuación en diferencias no restringe la función que se debe emplear; sin embargo, los estudios en el área parecen mostrar que no se requiere procedimientos complejos para obtener números aleatorios, por el contrario la sencillez es una buena tendencia en su diseño.
Ejemplo 1 — 1 : Un generador no lineal.
A manera de ejemplo considérese un generador en el cual
y en el que
. De esta manera
para
,
,
y
dados y donde
y
son funciones que extraen los dígitos de un número real y obtienen el valor absoluto de sus argumentos respectivamente (
). Pero ¿son buenos las secuencias de números pseudo-aleatorios encontrados en este ejemplo? Se deja como ejercicio al estudiante responder formalmente esta inquietud.
3.3.3.3 Método de J.V. Newmann(1)
A partir de una ecuación en diferencias no lineal de grado dos, y homogénea de orden 1 con coeficientes iguales a 1,
pueden generarse
números aleatorios con base en la semilla
(condición de frontera dada). El algoritmo presenta la siguiente fisonomía:

Algoritmo 3 — 1: Generador de Newmann
Donde
y
¿Cuál es la función
aquí? ¿Cuál la transformación
?
3.3.3.4 Método del Producto Medio
Es una generalización del método de Neumann. Aquí en lugar de considerar
se usa
. El algoritmo es el siguiente:

Algoritmo 3 — 2: Generador del Producto medio
Notas:
Esta técnica emplea la ecuación en diferencias
para
y donde
es una constante. La transformación es la misma que se emplea en el método de Neumann. Por ejemplo si
y
entonces
y ![]()
Una ecuación en diferencias es la contraparte discreta de las ecuaciones diferenciales. También son conocidas como Relaciones de recurrencia.