문제

나는 Ergodic Markov 매트릭스의 고정 분포를 결정하기 위해 방정식 세트를 해결하려고 노력하고 있습니다.

즉, 매트릭스는

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];
.

및 방정식 세트는

아래 정리의 것들입니다.

위의 방정식을 유효한 MATLAB 구문으로 변환 할 수 있습니까?

도움이 되었습니까?

해결책

고정 분포는 left 고유 벡터가있는

에 의해 주어진다.

>> [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
.

다른 팁

이것은 @ shai의 답변 에서 다른 접근 방식입니다.

수행 할 수있는 대체 방법은 정상 상태의 PI * P= PI 방정식을 해결하고 PI_J의 합계가 하나 (지금)가 될 필요가있는 요구 사항을 무시하는 것으로 나타납니다.

약간의 매트릭스 대수학 ...
DTMC 고정 분포

PI는 "SUM to 1"요구 사항 없이이 문제에 대한 독특한 해결책이 없습니다.PI는 (transposing (p) - i)의 니트 영역에 있어야합니다.Matlab은 이것에 능숙합니다.정규화 후 원하는 결과를 제공합니다 (@luismendo가 @luismendo가 지적한 것처럼).

 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))
.

확인하기 쉽습니다.

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

는 25 단계 전환 매트릭스와 비교합니다.

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
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top