Pregunta

Estoy tratando de resolver un conjunto de ecuaciones para determinar la distribución estacionaria de una matriz Ergódica Markov.

a saber, la matriz es

P=[0   0   0   0.5 0   0.5;
   0.1 0.1 0   0.4 0   0.4;
   0   0.2 0.2 0.3 0   0.3;
   0   0   0.3 0.5 0   0.2;
   0   0   0   0.4 0.6 0;
   0   0   0   0   0.4 0.6];

y el conjunto de ecuaciones son los del teorema a continuación

¿Cómo puedo convertir las ecuaciones anteriores en la sintaxis de Matlab Valid?

¿Fue útil?

Solución

La distribución estacionaria está dada por el vector izquierda eigen con Eigen-Value 1.

>> [V D] = eig( P.' ); %// note the transpose .' - we are looking for the **left** EV
>> st = V(:,1).'; %//' the stationary distribution
st =
 0.0051    0.0509    0.2291    0.6110    0.5346    0.5346
>> D(1)
 1.0000

Otros consejos

Este es un enfoque diferente desde @ shai's respuesta .

Una forma alternativa de hacerlo proviene de resolver las ecuaciones PI * P= PI para el estado estable e ignorar el requisito de que la suma del PI_J necesita ser una (por ahora).

un poco de algebra matriz ...
DTMC Distribución estacionaria

Entonces sabemos que PI no tiene una solución única para esto sin el requisito de "Sumo a 1".La PI debe estar en el espacio null de (transposición (P) - i).Matlab es bueno en esto.La normalización después de dar el resultado deseado (como se señala en @luismendo en los comentarios).

 P=[0   0   0   0.5 0   0.5;
   0.1 0.1 0   0.4 0   0.4;
   0   0.2 0.2 0.3 0   0.3;
   0   0   0.3 0.5 0   0.2;
   0   0   0   0.4 0.6 0;
   0   0   0   0   0.4 0.6];

I = eye(size(P));

Y = null(P'-I)
PI = Y./(sum(Y))

Esto es fácil de comprobar.

>> PI(:)'     % Force into row vector
ans =
    0.0026    0.0259    0.1166    0.3109    0.2720    0.2720

Comparar con la matriz de transición de 25 pasos.

P5 = P*P*P*P*P;
P25 = P5*P5*P5*P5*P5;
>>P25 =
    0.0026    0.0259    0.1166    0.3109    0.2720    0.2720
    0.0026    0.0259    0.1166    0.3109    0.2720    0.2720
    0.0026    0.0259    0.1166    0.3109    0.2720    0.2720
    0.0026    0.0259    0.1166    0.3109    0.2720    0.2720
    0.0026    0.0259    0.1166    0.3109    0.2720    0.2720
    0.0026    0.0259    0.1166    0.3109    0.2720    0.2720

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top