Расчёт вероятности поглощения в состоянии — различия между версиями
(→Псевдокод) |
(→Псевдокод) |
||
| Строка 13: | Строка 13: | ||
<tex>input[i][2]</tex> - вероятность перехода из состояния <tex>input[i][0]</tex> в состояние <tex>input[i][1]</tex>. | <tex>input[i][2]</tex> - вероятность перехода из состояния <tex>input[i][0]</tex> в состояние <tex>input[i][1]</tex>. | ||
Создадим массив <tex>absorbing[]</tex> типа Boolean, где <tex>i</tex>-ое <tex>true</tex> обозначает что <tex>i</tex>-ое состояние является поглощающим. Если состояние поглощающее то с вероятностью 1 оно переходит само в себя. Найдем такие состояния. Также посчитаем количество поглощающих состояний <tex>abs</tex>_<tex>num</tex>. | Создадим массив <tex>absorbing[]</tex> типа Boolean, где <tex>i</tex>-ое <tex>true</tex> обозначает что <tex>i</tex>-ое состояние является поглощающим. Если состояние поглощающее то с вероятностью 1 оно переходит само в себя. Найдем такие состояния. Также посчитаем количество поглощающих состояний <tex>abs</tex>_<tex>num</tex>. | ||
| + | <code style = "display: inline-block;"> | ||
| + | for i=0 to n-1 | ||
| + | if (input[i][0] == input[i][1] && input[i][2] == 1) | ||
| + | absorbing[input[i][0]] = true; | ||
| + | abs_num++; | ||
| + | </code> | ||
=Литература= | =Литература= | ||
Версия 16:25, 5 января 2013
Поглощающее(существенное) состояние цепи Маркова - состояние с вероятностью перехода в самого себя . Составим матрицу G, элементы которой равны вероятности того, что, выйдя из i, попадём в поглощающее состояние j.
| Теорема: |
| Доказательство: |
|
Пусть этот переход будет осуществлён за r шагов: i → → → ... → → j, где все являются несущественными. Тогда рассмотрим сумму , где Q - матрица переходов между несущественными состояниями, R - из несущественного в существенное. Матрица G определяется их суммированием по всем длинам пути из i в j: , т.к. , а фундаментальная матрица марковской цепи |
Псевдокод
- количество состояний Марковской цепи, - количество переходов. Состояния пронумерованы от 0 до .
Пусть входные данные хранятся в массиве где -ая строка характеризует -ый переход таким образом:
- вероятность перехода из состояния в состояние .
Создадим массив типа Boolean, где -ое обозначает что -ое состояние является поглощающим. Если состояние поглощающее то с вероятностью 1 оно переходит само в себя. Найдем такие состояния. Также посчитаем количество поглощающих состояний _.
for i=0 to n-1
if (input[i][0] == input[i][1] && input[i][2] == 1)
absorbing[input[i][0]] = true;
abs_num++;
Литература
- Википедия - Цепи Маркова
- Кемени Дж., Снелл Дж. "Конечные цепи Маркова".