How to simulate basic markov chain

John (view profile)

on 12 Oct 2012

Hi,

I'm fairly new to matlab. Would anybody be able to show me how I would simulate a basic discrete time markov chain?

Say for example I have a transition matrix with 3 states, A, b and C, how could I simulate say 20 steps starting from state A?

```    A   B  C
A .3 .2. .5
B .2 .1. .7
C .1 . 5 .4```

Any help would be greatly appreciated.

Regards

John

Products

No products are associated with this question.

Doug Hull (view profile)

on 12 Oct 2012
Edited by Doug Hull

Doug Hull (view profile)

on 12 Oct 2012

Are you looking to do a simple matrix multiply?

```v = [1 0 0]
m = [0.3 0.2 0.5; 0.2 0.1 0.7; 0.1 0.5 0.4]
```
```v = v * m
```

You can also do this in a loop.

If you want to square the matrix element by element

```m = m.^2
```

but more likely you wish to square the matrix

```m = m^2
```

You can do this for higher powers:

```m = m^20
```

And putting it together:

`    >> v = v*m^20`
```v =
```
`      0.1652    0.3217    0.5130`