lazy

Настройте инерцию состояния марковской цепи

Описание

пример

lc = lazy(mc) преобразует дискретную цепь Маркова mc в ленивую цепь lc с скорректированной инерцией состояния.

пример

lc = lazy(mc,w) применяет инерционные веса w для преобразования.

Примеры

свернуть все

Рассмотрим эту матрицу перехода с тремя состояниями.

P=[010001100].

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

P = [0 1 0; 0 0 1; 1 0 0];
mc = dtmc(P);

В момент времени t = 1,..., T, mc вынужден перейти в другое состояние детерминированно.

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

xFix = asymptotics(mc)
xFix = 1×3

    0.3333    0.3333    0.3333

isergodic(mc)
ans = logical
   0

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

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

x0 = [1 0 0];
x1 = x0*P
x1 = 1×3

     0     1     0

x2 = x1*P
x2 = 1×3

     0     0     1

x3 = x2*P
x3 = 1×3

     1     0     0

sum(x3 == x0) == mc.NumStates
ans = logical
   1

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

Создайте ленивую версию марковской цепи mc.

lc = lazy(mc)
lc = 
  dtmc with properties:

             P: [3x3 double]
    StateNames: ["1"    "2"    "3"]
     NumStates: 3

lc.P
ans = 3×3

    0.5000    0.5000         0
         0    0.5000    0.5000
    0.5000         0    0.5000

lc является dtmc объект. В момент времени t = 1,..., T, lc «переворачивает прекрасную монету». Он остается в текущем состоянии, если «монета показывает головы» и переходит в другое состояние, если «монета показывает хвосты».

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

lcxFix = asymptotics(lc)
lcxFix = 1×3

    0.3333    0.3333    0.3333

isergodic(lc)
ans = logical
   1

lc и mc имеют те же стационарные распределения, но только lc является эргодическим. Поэтому ограничение распределения lc существует и равен его стационарному распределению.

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

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;
eigplot(mc);
title('Original Markov Chain')

Figure contains an axes. The axes with title Original Markov Chain contains 5 objects of type line, patch. These objects represent Eigenvalues, Spectral Gap.

Три собственных значений имеют модуль один, что указывает на то, что период mc - это три.

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

w2 = 0.1;                                 % More active Markov chain
w3 = 0.9;                                 % Lazier Markov chain
w4 = [0.9 0.1 0.25 0.5 0.25 0.001 0.999]; % Laziness differs between states

lc1 = lazy(mc);
lc2 = lazy(mc,w2);
lc3 = lazy(mc,w3);
lc4 = lazy(mc,w4);

figure;
eigplot(lc1);
title('Default Laziness');

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

figure;
eigplot(lc2);
title('More Active Chain');

Figure contains an axes. The axes with title More Active Chain contains 5 objects of type line, patch. These objects represent Eigenvalues, Spectral Gap.

figure;
eigplot(lc3);
title('Lazier Chain');

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

figure;
eigplot(lc4);
title('Differing Laziness Levels');

Figure contains an axes. The axes with title Differing Laziness Levels contains 5 objects of type line, patch. These objects represent Eigenvalues, Spectral Gap.

Все ленивые цепи имеют только одно собственное значение с модулем один. Поэтому они апериодичны. Спектральный зазор (расстояние между внутренним и внешним кругом) определяет время смешения. Заметьте, что все ленивые цепи смешиваются дольше, чем исходная марковская цепь. Цепи с различными инерционными весами, чем по умолчанию, смешиваются дольше, чем ленивая цепь по умолчанию.

Входные параметры

свернуть все

Дискретная цепь Маркова с NumStates состояния и матрица переходов P, заданный как dtmc объект. P должен быть полностью задан (нет NaN записи).

Инерционные веса, заданные как числовой скаляр или вектор длины NumStates. Значения должны быть между 0 и 1.

  • Если w является скаляром, lazy применяется ко всем состояниям. То есть матрица переходов ленивой цепи (lc.P) - результат линейного преобразования

    Plazy=(1w)P+wI.

    P mc.P и I является NumStates-by- NumStates единичная матрица.

  • Если w является вектором, lazy применяет состояние весов по состояниям (строка за строкой).

Типы данных: double

Выходные аргументы

свернуть все

Дискретная цепь Маркова, возвращается как dtmc объект. lc является ленивой версией mc.

Подробнее о

свернуть все

Ленивая цепь

Для lazy варианта марковской цепи вероятность пребывания в одном состоянии равна, по меньшей мере, 0,5.

В ориентированном графе марковской цепи ленивое преобразование по умолчанию гарантирует самоциклы на всех состояниях, устраняя периодичность. Если марковская цепь неснижаема, то её ленивая версия эргодична. Посмотрите graphplot.

Ссылки

[1] Gallager, R.G. Stochastic Processes: Theory for Applications. Кембридж, Великобритания: Cambridge University Press, 2013.

Введенный в R2017b
Для просмотра документации необходимо авторизоваться на сайте