Introducción

Este documento tiene como propósito realizar una validación del GNP usando generación de números pseudoaleatorios mediante el método congruencial lineal mixto en R.

Método Congruencial Lineal Mixto

El método se define como:

\[ X_{n+1} = (aX_n + c) \mod m \]

Donde:
- \(a\) es el multiplicador
- \(c\) es la constante aditiva
- \(m\) es el módulo
- \(X_0\) es la semilla

Generación de números pseudoaleatorios

# Parámetros del método
a <- 5      # multiplicador
c <- 3      # constante aditiva
m <- 16     # módulo
x0 <- 7     # semilla

# Cantidad de números a generar
n <- 20

# Inicializar vector
x <- numeric(n)
x[1] <- x0

# Generación
for (i in 2:n) {
  x[i] <- (a * x[i-1] + c) %% m
}

# Normalizar en [0,1]
u <- x / m

# Mostrar resultados
data.frame(iteracion = 1:n, valor = x, uniforme = u)
##    iteracion valor uniforme
## 1          1     7   0.4375
## 2          2     6   0.3750
## 3          3     1   0.0625
## 4          4     8   0.5000
## 5          5    11   0.6875
## 6          6    10   0.6250
## 7          7     5   0.3125
## 8          8    12   0.7500
## 9          9    15   0.9375
## 10        10    14   0.8750
## 11        11     9   0.5625
## 12        12     0   0.0000
## 13        13     3   0.1875
## 14        14     2   0.1250
## 15        15    13   0.8125
## 16        16     4   0.2500
## 17        17     7   0.4375
## 18        18     6   0.3750
## 19        19     1   0.0625
## 20        20     8   0.5000

Visualización

hist(u, breaks = 5, main = "Distribución de números pseudoaleatorios", col = "lightblue")

Conclusión

Aquí se insertan las conclusiones sobre la validación del GNP a partir de la simulación realizada.