Определите асимптотическое поведение марковской цепи

Этот пример показывает, как вычислить стационарное распределение марковской цепи, оценить время ее смешения и определить, является ли цепь эргодичной и редуцируемой. Пример также показывает, как удалить периодичность из цепи, не нарушая асимптотического поведения.

Рассмотрим эту теоретическую, правостохастическую переходную матрицу стохастического процесса.

P=[001/21/41/400001/302/300000001/32/3000001/21/2000003/41/41/21/2000001/43/400000].

Создайте марковскую цепочку, которая характеризуется переходной матрицей P. Постройте график цепи и укажите вероятности перехода с помощью краевых цветов.

P = [ 0   0  1/2 1/4 1/4  0   0 ;
      0   0  1/3  0  2/3  0   0 ;
      0   0   0   0   0  1/3 2/3;
      0   0   0   0   0  1/2 1/2;
      0   0   0   0   0  3/4 1/4;
     1/2 1/2  0   0   0   0   0 ;
     1/4 3/4  0   0   0   0   0 ];
mc = dtmc(P);

figure;
graphplot(mc,'ColorEdges',true);

Figure contains an axes. The axes contains an object of type graphplot.

Поскольку переходная матрица является правой стохастической, марковская цепь имеет стационарное распределение π таким, что π=πP.

Определите, является ли цепь Маркова неприводимой.

tfRed = isreducible(mc)
tfRed = logical
   0

tfRed = 0 указывает, что цепь неприводима. Этот результат подразумевает, что π уникальна.

Определите, является ли марковская цепь эргодичной.

tfErg = isergodic(mc)
tfErg = logical
   0

tfErg = 0 указывает, что цепь не эргодична. Этот результат подразумевает, что π не является ограничивающим распределением для произвольного начального распределения.

Можно определить, является ли марковская цепь периодической, двумя способами.

  • Цепи, которые являются неприводимыми, а не эргодическими, являются периодическими. Результаты предыдущего раздела подразумевают, что марковская цепь периодическая.

  • Смотрите график собственных значений на комплексной плоскости. Собственное собственное значение указывает, является ли цепочка Маркова периодической, а график - периодом цепи.

Постройте графики собственных значений марковской цепи на комплексной плоскости.

figure;
eigplot(mc);

Figure contains an axes. The axes contains 5 objects of type line, patch. These objects represent Eigenvalues, Spectral Gap.

К примечательным функциям собственного значения относятся:

  • Жирная звездочка - собственное значение Перрона-Фробениуса. Он имеет величину 1 и гарантирован для неотрицательных матриц перехода.

  • Все собственные значения в корнях единства указывают на периодичность. Поскольку три собственных значений находятся на модуль круге, цепь имеет период 3.

  • Спектральный зазор является областью между окружностью модуля круга и окружностью окружности с радиусом второй по величине собственное значение величины (SLEM). Размер спектральной погрешности определяет скорость смешения марковской цепи.

  • В целом спектр определяет структурные свойства цепи.

Вычислите стационарное распределение цепи Маркова.

xFix = asymptotics(mc)
xFix = 1×7

    0.1300    0.2034    0.1328    0.0325    0.1681    0.1866    0.1468

xFix является уникальным стационарным распределением цепи, но не является ограничивающим распределением для произвольного начального распределения.

Визуализируйте две эволюции распределения состояний марковской цепи с помощью двух 20-шаговых перераспределений. Для первого перераспределения используйте равномерное начальное распределение по умолчанию. Для второго перераспределения задайте начальное распределение, которое помещает весь вес в первое состояние.

X1 = redistribute(mc,20);
figure;
distplot(mc,X1);

Figure contains an axes. The axes with title Distribution of States contains an object of type image.

X2 = redistribute(mc,20,'X0',[1 0 0 0 0 0 0]);
figure;
distplot(mc,X2);

Figure contains an axes. The axes with title Distribution of States contains an object of type image.

На рисунках периодичность очевидна и препятствует оседанию распределения состояний. Кроме того, различные начальные значения приводят к различным эволюциям.

Удалите периодичность из цепи Маркова путем преобразования цепи в «ленивую» цепь. Постройте график ленивой цепи. Определите, является ли ленивая цепь неприводимой и эргодичной.

lc = lazy(mc);

figure;
graphplot(lc);

Figure contains an axes. The axes contains an object of type graphplot.

tfRedLC = isreducible(lc)
tfRedLC = logical
   0

tfErgLC = isergodic(lc)
tfErgLC = logical
   1

Наблюдайте самоциклы в диграф. Чтобы удалить периодичность, ленивая цепь обеспечивает стойкость состояния. Ленивая цепь неприводима и эргодична.

Постройте графики собственных значений ленивой цепи на комплексной плоскости.

figure;
eigplot(lc);

Figure contains an axes. The axes contains 5 objects of type line, patch. These objects represent Eigenvalues, Spectral Gap.

Ленивая цепь не имеет собственных значений в корнях единства, кроме собственного значения Перрона-Фробениуса. Поэтому ленивая цепь имеет период 1. Поскольку спектральный зазор ленивой цепи тоньше, чем спектральный зазор нетрансформированной цепи, ленивая цепь смешивается медленнее, чем нетрансформированная цепь.

Вычислите стационарное распределение ленивой цепи.

xFixLC = asymptotics(lc)
xFixLC = 1×7

    0.1300    0.2034    0.1328    0.0325    0.1681    0.1866    0.1468

xFixLC является уникальным стационарным распределением цепи, и это ограничивающее распределение, заданное произвольным начальным распределением. Кроме того, xFixLC и xFix идентичны.

Визуализируйте эволюцию распределения состояний ленивой цепи с помощью 10-шагового перераспределения.

XLC = redistribute(lc,10);

figure;
distplot(lc,XLC)

Figure contains an axes. The axes with title Distribution of States contains an object of type image.

Распределение состояний развивается от равномерного распределения к стационарному распределению менее чем за 10 временных шагов. Заметьте, что цвета на заключительном шаге совпадают со значениями в xFixLC.

См. также

Объекты

Функции

Похожие темы