exponenta event banner

подцепь

Извлечь подцепь Маркова

Описание

пример

sc = subchain(mc,states) возвращает подцепь sc извлечено из дискретной цепи Маркова mc. Подцепь содержит состояния states и все состояния, которые доступны из states.

Примеры

свернуть все

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

P = [01000.500.50000.50.5000.50.5].

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

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

Постройте направленный график цепи Маркова. Визуально определите класс связи, к которому принадлежит каждое состояние, используя цвета узлов.

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

Figure contains an axes. The axes contains 3 objects of type graphplot, line. These objects represent Transient, Aperiodic.

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

x = asymptotics(mc)
x = 1×4

    0.0000    0.0000    0.5000    0.5000

Марковская цепь в конце концов поглощается государствами 3 и 4и последующие переходы являются стохастическими.

Извлечь повторяющуюся подцепь цепи Маркова пропуском mc кому subchain и определение одного из состояний в рецидивирующем апериодическом связном классе.

sc = subchain(mc,3);

sc является dtmc объект.

Постройте направленный график подцепи.

figure;
graphplot(sc,'ColorNodes',true)

Figure contains an axes. The axes contains 2 objects of type graphplot, line. This object represents Aperiodic.

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

P = [0.50.50000.50.50000.50.5000.50.5].

Создайте цепочку Маркова, которая характеризуется матрицей перехода P. Назовите состояния Режим 1 - Режим 4.

P = [0.5 0.5 0 0; 0 0.5 0.5 0; 0 0 0.5 0.5; 0 0 0.5 0.5];
mc = dtmc(P,'StateNames',["Regime 1" "Regime 2" "Regime 3" "Regime 4"]);

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

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

Figure contains an axes. The axes contains 4 objects of type graphplot, line. These objects represent Transient, Aperiodic.

Режимы 1 и 2 имеют собственный класс связи, поскольку Режим 2 не переходит к Режиму 1.

Извлеките подцепь, содержащую режим 2, переходное состояние. Отображение матрицы перехода подцепи.

sc = subchain(mc,"Regime 2");
sc.P
ans = 3×3

    0.5000    0.5000         0
         0    0.5000    0.5000
         0    0.5000    0.5000

Режим 1 не входит в подцепь.

Постройте график подцепи.

figure;
graphplot(sc,'ColorNodes',true);

Figure contains an axes. The axes contains 3 objects of type graphplot, line. These objects represent Transient, Aperiodic.

На сюжете показан унихейн: цепь Маркова, содержащая один повторяющийся сообщающийся класс и выбранный переходный класс.

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

свернуть все

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

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

  • Для числового вектора элементы states соответствуют строкам матрицы перехода mc.P.

  • Для вектора строки или вектора ячейки символьных векторов элементы states должны быть именами состояний в mc.StateNames.

Пример: ["Regime 1" "Regime 2"]

Типы данных: double | string | cell

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

свернуть все

Дискретно-временная марковская цепочка, возвращенная как dtmc объект. sc является подцепью mc содержащие состояния states и все государства, доступные из states. Имена состояний подцепи sc.StateNames наследуются от mc.

Алгоритмы

  • Государство j достижим из состояния i при наличии ненулевой вероятности перехода от i кому j в конечном числе шагов. subchain определяет достижимость, формируя переходное закрытие связанного диграфа, затем перечисляя одноступенчатые переходы.

  • Подцепи закрываются при достижимости, чтобы гарантировать, что матрица перехода sc остается стохастическим (то есть строки суммируются с 1), с вероятностями перехода, идентичными вероятностям перехода в mc.P.

  • Если указать состояние в повторяющемся связном классе, то subchain извлекает весь класс связи. Если указать состояние в переходном связном классе, то subchain извлекает переходный класс и все классы, доступные из переходного класса. Чтобы извлечь unichain, укажите состояние в каждом переходном классе компонента. Посмотрите classify.

Ссылки

[1] Галлагер, Р. Г. Стохастические процессы: теория для применения. Кембридж, Великобритания: Cambridge University Press, 2013.

[2] Рог, R. и К. Р. Джонсон. Матричный анализ. Кембридж, Великобритания: Cambridge University Press, 1985.

Представлен в R2017b