Está en la página 1de 24

Simulación discreta

Generación de números aleatorios

Dr. Ing. Isabel Chiyón Carrasco


Ingeniería Industrial y
de Sistemas
Números aleatorios
Si se tuviera un procedimiento para generar los 100 números
aleatorios entre 00 y 99, para obtener por ejemplo un tiempo de
servicio, se podría usar un número aleatorio generado.
Técnicamente, un número aleatorio, Ri, se define como una
muestra aleatoria independiente extraída de una distribución
uniforme continua, cuya función de densidad de probabilidad
(fdp) está dada por:

1 0≤x≤1
f(x) =
0 en caso contrario

Universidad de Piura
Distribución Uniforme
Número aleatorio: Un número aleatorio es una realización al azar de una
variable especificada por una función de distribución. Cuando no se
especifica ninguna distribución, se presupone que se utiliza la
distribución uniforme continua en el intervalo[0,1].

En la práctica, y mientras no se indique lo contrario:

Número aleatorio = valores de U(0,1)


Universidad de Piura
Distribución Uniforme
Función de densidad de 𝑈∼U(0,1): 𝑓(𝑢) =1

𝐹 (𝑢1) =𝑃 (𝑈≤𝑢1) = 𝑓(u)𝑑𝑢 = 𝑢1

Por ejemplo

𝐹(0.7)=𝑃(𝑈≤0.7)=0.7
𝐹(0.1)=𝑃(𝑈≤0.1)=0.1
𝐹(0.9)=𝑃(𝑈≤0.9)=0.9

Al ser una distribución


continua es irrelevante poner
o no el signo =

La U(0,1) es muy cómoda para usarse en simulación, pues la probabilidad


acumulada hasta el valor 𝑢1 es 𝑢1
Universidad de Piura
Ejemplo:
Queremos simular que P(Tiempo bueno)=0.33

Si u ≤ 0.33 ⇒ Y = 1 ⇒ El tiempo bueno. Si u > 0.33 ⇒ Y = 0 ⇒ No es bueno

Ejemplo: queremos simular que P(Tiempo bueno)=0.33.

Universidad de Piura
Generación de números aleatorios
• Los números aleatorios uniformes se generan de muchas formas.
Puesto que lo que nos interesa es usar los números aleatorios en
las simulaciones, es necesarios poder generarlos en una
computadora.
• Esto se hace por medio de funciones matemáticas llamadas
generadores de números aleatorios.
• La mayoría utilizan alguna forma de una relación de congruencia.
Ejemplos; el generador congruencial lineal, el generador
multiplicativo y el generador mixto.

Universidad de Piura
Generador congruencial lineal
• La mayoría de las funciones de números aleatorios integradas
en los sistemas de cómputo, utilizan este generador. Con este
método, se produce una secuencia de enteros x1,x2,x3, …. entre 0
y m-1 de acuerdo con la siguiente relación recursiva:
xi+1 = (axi + c) módulo m (i = 0,1,2,…)
• El valor de x0 se llama semilla, a es el multiplicador
constante, c es el incremento y m es el módulo.
• Estas cuatro variables se llaman parámetros del generador.

Universidad de Piura
Números aleatorios
Usando esta relación, el valor de xi+1 es igual al residuo de la
división de (axi + c) entre (m). El número aleatorio entre 0 y 1 se
genera entonces por medio de la ecuación:
Ri = xi+1/m (i = 1, 2, 3, …..)

Ejemplo:
x0 = 35, a =13, c = 65 y m= 100

Universidad de Piura
Iteración 0:
Establezca x0 = 35, a =13, c = 65 y m=
100
Iteración 1: Calcule
x1 = (ax0 + c) módulo m
= [13(35) + 65] módulo 100
= 20
Entregar R1 = x1/m
= 20/100
= 0.20

Universidad de Piura
Iteración 1: Calcule
x2 = (ax1 + c) módulo m
= [13(20) + 65] módulo 100
= 25
Entregar R2 = x2/m
= 25/100
= 0.25
Y así sucesivamente.

Universidad de Piura
Otra forma de generar números aleatorios del 1 al n es sacando bolas al azar de una urna, con
reemplazamiento (como en la lotería). Si n es muy grande y dividimos todos los valores obtenidos por n,
podemos tener una aproximación a U(0,1).
Hay libros con tablas de números aleatorios obtenidos de esta forma.
Para usar esta tabla: decidimos el lugar por el que comenzar, y vamos tomando valores consecutivos por filas,
aunque también se podría hacer por columnas, en diagonal,…

Podemosgenerarnúmerosaleatoriosdel1alnsacandobolasalazardeunaurna,conreemplazamiento(comoenlalotería).Sinesmuygrand
eydividimostodoslosvaloresobtenidosporn,podemostenerunaaproximaciónaU(0,1).Haylibroscontablasdenúmerosaleatoriosobten
idosdeestaforma.
Parausarestatabla:decidimosellugarporelquecomenzar,yvamostomandovaloresconsecutivosporfilas,aunquetambiénsepodríahace
rporcolumnas,endiagonal,…

Universidad de Piura
Ejemplo:
Generar números aleatorio U(0,1) con tres decimales usando la tabla.

✓ Empezamos por un lugar al azar; fila 1, columna 2.


✓ Tomamos cifras de 3 en 3 ignorando los espacios:

363; 187; 506; 137; 674; 263; 207; 510; …..

✓ Lo dividimos entre n = 1000 y tenemos: 0.363; 0.187; 0.506: 0.137; 0.674; 0.263; 0.207; 0.510; …..

Universidad de Piura
Algunas consideraciones

•Son “números aleatorios” por su distribución, no por los valores concretos que toma. Por
ejemplo, no tiene sentido decir que el número 11164 es un número aleatorio, sino que
todo el conjunto de números lo es. Son números aleatorios porque proceden de una
distribución uniforme.

•La secuencia de valores que se han generado es “independiente”. Por ejemplo, el que se
Algunas consideraciones
obtenga un valor alto no va a predisponer que el siguiente sea alto o bajo. Si se
desordenase la tabla de forma totalmente al azar, seguiría siendo una tabla de números
aleatorios. Otra forma de expresar esa independencia es pensando que el generador de
números no tiene memoria. Una vez generado un número, lo olvida y no tiene forma de
influir en el siguiente.

•Como conclusión, podemos decir que los números aleatorios forman entonces una
secuencia de valores independientes e idénticamente distribuidos (iid) según una U(0,1).

Universidad de Piura
Ejemplo
Sistema de colas de un solo servidor
✓Las llegadas se extraen de una población demandante infinita.
✓Capacidad ilimitada de la sala espera.
✓Los clientes serán atendidos en el orden que llegan.
✓Las llegadas ocurren una a la vez en un modo aleatorio.
✓Distribución de los tiempos de servicio son aleatorios.

Universidad de Piura
Distribución de tiempo entre llegadas

Tiempo entre llegadas


(minutos) Probabilidad

1 .20
2 .30
3 .35
4 .15

Universidad de Piura
Distribución de tiempos de servicio

Tiempo de servicios
(minutos) Probabilidad

1 .35
2 .40
3 .25

Universidad de Piura
Tiempo entre llegadas y servicio generados

Número de N° aleatorio Tiempo entre N° aleatorio Tiempo de


cliente llegadas (TE) servicio (TS)
1 11 ---- 21 1
2 16 1 21 1
3 43 2 59 2
3
4 63 17 1
2
5 28 91 3
3
6 75 76 3
1
7 06 83 3
1
8 13 15 1
3
9 76 86 ----

Universidad de Piura
• En el modelo de colas de un servidor, sólo hay dos eventos posibles que
cambian el estado del sistema:
✓Una llegada al sistema.

✓Una salida al completar el servicio.

• Toda la información acerca de estos eventos se mantiene en una lista


llamada lista de eventos.

Universidad de Piura
Variable aleatoria discreta:
Ejemplo: Tenemos una central telefónica con 5 líneas:

Sea X = número de líneas ocupadas en una unidad de tiempo.

Se tiene que la función de probabilidad es:

Por tanto, se puede calcular fácilmente la función de distribución.


Universidad de Piura
Universidad de Piura
Método de generación de variables
aleatorias discretas

Universidad de Piura
Método de generación de variables
aleatorias discretas

Universidad de Piura
El percentil 60 de
la variable X es 2

P60 = 2

Universidad de Piura
Valores X P(x) F(x) Intervalo
0 0.14 0.14 0-.14
1 0.27 0.41 .14-.41
2 0.27 0.68 .41-.68
3 0.18 0.86 .68-.86
4 0.09 0.95 .86-.95
5 0.05 1.00 .95-.1
Universidad de Piura

También podría gustarte