Tema DOS MD Ruiz Medina
Tema DOS MD Ruiz Medina
Tema DOS MD Ruiz Medina
GE-
NERACIÓN DE EJEMPLOS SENCILLOS
1. Introducción
Para la inferencia sobre procesos, a partir de muestras de funciones aleatorias (trayectorias),
generadas mediante diferentes métodos de simulación, el diseño de algoritmos de generación
de procesos aleatorios que evolucionan en el tiempo es fundamental. Generalmente, se suelen
realizar simplificaciones sobre la estructura de dichos procesos. Por ejemplo, se considera una
discretización del parámetro temporal, comenzándose por la implementación de técnicas de
simulación de procesos constituidos por componentes aleatorias independientes, o bien, se
consideran estructuras de dependencia débil tales como las asociadas a modelos o procesos
de Markov (e.g. Cadenas de Markov). Con frecuencia, los métodos de generación, basados
en desarrollos ortogonales sobre el espacio L2 (Ω, A, P ) de variables aleatorias centradas de
segundo orden, permiten reproducir de forma sencilla el comportamiento de un proceso de
segundo orden, en particular, de un proceso Gaussiano, a partir de una base ortonormal de
dicho espacio.
En este capı́tulo, comenzaremos diseñando algoritmos de simulación sencillos, basados
en la hipótesis de independencia, para la generación de procesos aleatorios elementales tales
como los recorridos aleatorios, el movimiento Browniano y el proceso de Poisson. Nótese que los
recorridos aleatorios se construyen a partir de secuencias de variables aleatorias independientes.
Bajo ciertas condiciones, el movimiento Browniano admite una definición como proceso lı́mite
de un recorrido aleatorio. Este proceso posee incrementos independientes al igual que el proceso
de Poisson, que también se generará y visualizará en este capı́tulo. Con frecuencia este tipo de
procesos son de gran interés en aplicaciones dada su fácil impementación, análisis estadı́stico
e interpretación.
1
fundamental en el estudio de procesos de Markov.
Existe una gran variedad de modelos de recorridos aleatorios. De hecho, un recorrido
aleatorio puede asociarse a un grafo, una lı́nea, un plano, o bien, a espacios de dimensión
superior. En el caso más sencillo, un recorrido aleatorio se suele definir sobre los números
enteros.
La secuencia {Sn , n ∈ N} recibe el nombre de recorrido aleatorio simple. Este concepto admite
una formulación general, en términos de una probabilidad p ∈ (0, 1) de tomar el valor 1
(ascenso) y una probabilidad 1 − p de tomar el valor −1 (descenso) para cada una de las
variables aleatorias Zi , i ∈ N, de la secuencia involucrada en la definición de un recorrido
aleatorio {Sn , n ∈ N} .
Seguidamente se muestra un algoritmo de generación de un recorrido aleatorio simple con
probabilidad de salto ascendente p y descendente (1 − p) en código MatLab.
clear all
p=0.5;
y=[0 cumsum(2.*(rand(1, n − 1) <= p) − 1)];
plot([0 : n − 1],y);
clear all
x=rand(1,n)-1/2;
y=[0 cumsum(x)-1)];
2
plot([0:n-1],y);
3. Movimiento Browniano
La universalidad del movimiento Browniano dentro de la teorı́a de procesos estocásticos es
similar a la de la distribución normal dentro de la teorı́a de variables aleatorias. De hecho, el
proceso movimiento Browniano se puede interpretar como una versión continua de un reco-
rrido aleatorio. Aunque inicialmente este proceso surge como modelo para el movimiento de
partı́culas suspendidas en un lı́quido o un gas, posteriormente, ha sido utilizado en la represen-
tación de procesos aleatorios en diversos campos aplicados, tales como las Finanzas, Ingenierı́a,
Biologı́a, Geofı́sica, Medio-Ambiente, etc. Existen, por tanto, diferentes caracterizaciones del
proceso movimiento Browniano asociadas a diferentes campos (Matemáticas, Fı́sica, etc.).
Resumiremos su caracterización matemática habitual. El proceso Movimiento Browniano
se define como un proceso estocástico B(t), t ≥ 0, satisfaciendo:
B(0) = 0
B posee incrementos independientes con B(s + t) − B(s) ∼ N (0, t), para cualquier
s ≥ 0, t > 0.
clear all
n=1000;
dt=1;
y=[0 cumsum(dt∧ 0.5.*randn(1,n))];
plot([0:n],y);
4. Proceso de Poisson
El proceso de Poisson es un ejemplo clásico de Cadena de Markov en tiempo continuo.
Asimismo, se suele introducir desde la teorı́a de procesos de recuento y procesos de renova-
ción. Éste es también un modelo universal. Su distribución de probabilidad y propiedades se
caracterizan mediante un único parámetro λ, que representa la tasa de ocurrencia de los suce-
sos aleatorios que contabiliza. Desde el punto de vista estadı́stico, es un modelo idóneo para
la inferencia ya que se halla caracterizado en términos de un único parámetro. La inferencia
3
sobre este modelo se centra, pues, en la estimación puntual y por intervalos de confianza del
parámetro λ, ası́ como en el planteamiento de contrastes de hipótesis sobre dicho parámetro
y funciones del mismo. El proceso de Poisson ha sido ampliamente utilizado como modelo
para representar el número de fallos de un sistema en Fiabilidad, el número de nacimientos o
muertes en Análisis de Supervivencia, la distribución de excesos sobre umbrales en Medicina,
la ocurrencia de incendios forestales en Medio-Ambiente, etc.
Matemáticamente, el proceso de Poisson {N (t), t ≥ 0} , con parámetro λ, se define como
un proceso de recuento, es decir, N (t) − N (0) = N (t) contabiliza el número de sucesos
aleatorios ocurridos en un intervalo de longitud t, satisfaciendo las siguientes condiciones:
N (t + h) − N (t) ∼ P(λh),
donde se denota por P(λh) la distribución de Poisson con parámetro λh. Adicionalmente,
se tiene que los tiempos aleatorios entre ocurrencias de sucesos se distribuyen según una
esponencial con parámetro λ y que los tiempos de espera hasta que se produce la
ocurrencia de n sucesos aleatorios se distribuyen según una Gamma con parámetro nλ.
clear all
interarr=[0 -log(rand(1, n))./lambda];
stairs(cumsum(interarr), 0:n);
Otra opción en el diseño de algoritmos para la simulación del proceso de Poisson es con-
siderar un intervalo temporal fijo [0, T ] y contabilizar el número de sucesos aleatorios que
ocurren en dicho intervalo. El número de sucesos ocurridos en dicho intervalo se distribuye
según una Poisson con media λT. Condicionando al número de sucesos que ocurrieron, los
sucesos se distribuyen uniformemente en el intervalo.
Seguidamente se muestra, en código MatLab, un algoritmo de generación del Proceso de
Poisson con parámetro λ considerando un intervalo temporal fijo [0, T ]
4
clear all
npoints = poissrnd(lambda*T);
if (npoints > 0)
arrt = [0; sort(rand(npoints, 1)*T)];
else
arrt = 0;
end
stairs(arrt, 0:npoints);
Una versión vectorial del algoritmo anterior es difı́cil de obtener, sin embargo, se puede
realizar una versión alternativa desde la teorı́a de procesos de renovación con tiempos alea-
torios entre renovaciones exponencialmente distribuidos. Seguidamente se muestra, en código
MatLab, un algoritmo de generación del Proceso de Poisson desde la perspectiva de procesos
de renovación.
clear all
tarr = zeros(1, nproc);
i = 1;
while (min(tarr(i,:))<= T)
tarr = [tarr; tarr(i, :)-log(rand(1, nproc))/lambda];
i = i+1;
end
tarr2=tarr’;
X=min(tarr2);
stairs(X, 0:size(tarr, 1)-1);
5. Versiones multidimensionales
En esta sección, se introducen extensiones de los algoritmos anteriores para la generación
de versiones multidimensionales de recorridos aleatorios, movimiento Browniano y proceso de
Poisson.
5
clear all
n=100000;
colorstr=[’b’ ’r’ ’g’ ’y’];
for k=1:4
z=2.*(rand(2,n)¡0.5)-1;
x=[zeros(1,2); cumsum(z’)];
col=colorstr(k);
plot(x(:,1),x(:,2),col);
hold on
end grid
clear all
npoints = 5000;
dt = 1;
bm = cumsum([zeros(1, 3); dt∧ 0.5*randn(npoints-1, 3)]);
figure(1);
plot3(bm(:, 1), bm(:, 2), bm(:, 3), ’k’);
pcol = (bm-repmat(min(bm), npoints, 1))./ ...
repmat(max(bm)-min(bm), npoints, 1);
6
hold on;
scatter3(bm(:, 1), bm(:, 2), bm(:, 3), ... 10, pcol, ’filled’);
grid on;
hold off;
clear all
lambda=100;
nmb=poissrnd(lambda)
x=rand(1,nmb);
y=rand(1,nmb);
z=rand(1,nmb);
grid
scatter3(x,y,z,5,5.*rand(1,nmb));