Clear Filters
Clear Filters

Two state markov chain realization

6 views (last 30 days)
I have a state transition probability matrix and a state probability vector
[0.9 0.1; 0.1 0.9] & [0.4 0.6] respectively.
Now, I want to generate the states according to this. say 100 state sequence.
Any sort of help would be appreciated.
Thanks.

Accepted Answer

the cyclist
the cyclist on 2 Jul 2011
I have to admit that my memory of MC is a bit rusty. Does this do what you want? Do you expect a convergence to a state probability vector [0.5 0.5]?
If this is right, there are faster implementations, but I wanted to lay out the basics clearly.
transitionMatrix = [0.9 0.1; 0.1 0.9];
initialProbabilityState = [0.4; 0.6]; % Made it a column vector, rather than a row.
nStates = 100;
states = zeros(2,nStates);
states(:,1) = initialProbabilityState;
for ns = 2:nStates
states(:,ns) = transitionMatrix*states(:,ns-1);
end
  1 Comment
the cyclist
the cyclist on 2 Jul 2011
Given that this is homework, it would be best if you were to post what you yourself have tried to do, and where you are stuck. Then, maybe you can get some hints from someone about how to proceed. You'll learn more that way than if someone just does your assignment for you.

Sign in to comment.

More Answers (1)

Fangjun Jiang
Fangjun Jiang on 2 Jul 2011
You've asked the same question multiple times. Sounds like you need to go back to your textbook to learn what is state transition probability and Markov chain.
  5 Comments
lemontree45
lemontree45 on 2 Jul 2011
Thank you. yes. Initial state can be obtained from the state probability vector. I have taken care of that part. Hope that side is correct. Also, I am getting >>sum(P,2)=[1 1]. so I guess that part is clear too.
I couldn't find any problem with my state transition probability matrix and the state probability vector. But still I am not able to regenerate the same sequence when I do the reverse step.
Is it really possible to regenerate it correctly or would there be some sort of uncertainty?
Fangjun Jiang
Fangjun Jiang on 2 Jul 2011
I don't think you can re-generate the exact sequence. Think about your probability matrix, it is derived from 100 state transition. There are so many other slightly varied sequence that can draw to the same probability matrix.
When you generate the state probability vector, remember that you vector should be defined as row vector as V=[0.9 0.1], and the next vector would be V*P. This is different from cyclist because the definition of P(1,1), P(1,2),P(2,1),P(2,2).

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!