Ejemplo aplicando generador de líneas congruenciales

Planteamiento

Genere 24 números aleatorios en el intervalo de [0,1] con cuatro decimales, usando el generador lineal:

{{z}_{i}}\cong 17{{z}_{i-1}}+39~\left( mod~103 \right)

Tomando como valor semilla (dato inicial) el número z0 = 73.

Desarrollo

Iniciaremos calculando u0 = 73⁄103 = 0.7087. Ahora, vamos a calcular z1 usando el generador lineal dado:

{{z}_{1}}\cong 17{{z}_{0}}+39~\left( mod~103 \right)=~17\left( 73 \right)+39~\left( mod~103 \right)=1280~\left( mod~103 \right)

Para calcular este módulo en calculadora, realice la siguiente operación:

  1. Divida 1280 entre 103. (1280 ÷ 103 = 12.42718447).
  2. Reste al valor de la calculadora la parte entera. (Ans - 12 = 0.427184466).
  3. Multiplique el último valor por el módulo (Ans × 103 = 44).

Su respuesta siempre debe ser un entero. Así, tenemos que: u1 = 44/103 = 0.4272. Ahora, generemos z2 para obtener u2:

{{z}_{2}}=~17{{z}_{1}}+39~\left( mod~103 \right)=17\left( 44 \right)+39~\left( m\acute{o}d~103 \right)=66\Rightarrow

{{u}_{2}}=66/103=0.6408.

Continuando de esa forma, obtenemos el listado que aparece en la tabla 1.1. En la imagen 1.3, se puede ver la variación de los datos en cada iteración del generador lineal mostrando la dispersión que estos presentan, y permitiendo observar qué tan alejados se encuentran unos de otros.

Tabla 1.1. Valores aleatorios generados mediante el generador lineal del ejemplo.

TABLA DE VALORES ALEATORIOS
i zi ui i zi ui i zi ui
0 73 0,7087 8 52 0,5049 16 15 0,1456
1 44 0,4272 9 99 0,9612 17 88 0,8544
2 66 0,6408 10 74 0,7184 18 93 0,9029
3 28 0,2718 11 61 0,5922 19 75 0,7282
4 0 0,0000 12 46 0,4466 20 78 0,7573
5 39 0,3786 13 100 0,9709 21 26 0,2524
6 84 0,8155 14 91 0,8835 22 69 0,6699
7 25 0,2427 15 41 0,3981 23 79 0,7670

Imagen 1.3. gráfico de dispersión para los datos aleatorios, generados en una iteración determinada.

(Para ampliar la imagen haga clic sobre ella)