exponenta event banner

distplot

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

Описание

пример

distplot(mc,X) создает тепловую карту из данных X показывая эволюцию распределения состояний в дискретно-временной цепи Маркова mc.

пример

distplot(mc,X,Name,Value) использует дополнительные параметры, заданные одним или несколькими аргументами пары имя-значение. Например, укажите тип графика или частоту кадров для анимированных графиков.

distplot(ax,___) графики на осях, указанных ax вместо текущих осей (gca) с использованием любой из комбинаций входных аргументов в предыдущих синтаксисах.

h = distplot(___) возвращает дескриптор на график распределения. Использовать h для изменения свойств графика после его создания.

Примеры

свернуть все

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

rng('default'); % For reproducibility 
mc = mcmix(4,'Zeros',8);

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

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

figure;
graphplot(mc);

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

Государство 4 является поглощающим состоянием.

Вычислите перераспределение состояний на каждом шаге в течение 10 дискретных временных шагов. Предположим начальное равномерное распределение по состояниям.

X = redistribute(mc,10)
X = 11×4

    0.2500    0.2500    0.2500    0.2500
    0.0869    0.2577    0.3088    0.3467
    0.1073    0.2990    0.1536    0.4402
    0.0533    0.2133    0.1844    0.5489
    0.0641    0.2010    0.1092    0.6257
    0.0379    0.1473    0.1162    0.6985
    0.0404    0.1316    0.0765    0.7515
    0.0266    0.0997    0.0746    0.7991
    0.0259    0.0864    0.0526    0.8351
    0.0183    0.0670    0.0484    0.8663
      ⋮

X является матрицей 11 на 4. Строки соответствуют временным шагам, а столбцы - состояниям.

Визуализация перераспределения государства.

figure;
distplot(mc,X)

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

После 10 переходов распределение, по-видимому, оседает с большинством вероятной массы в состоянии 4.

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

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);

Вычислите перераспределение состояний на каждом шаге в течение 20 дискретных временных шагов.

X = redistribute(mc,20);

Анимация перераспределений в гистограмме. Укажите частоту кадров в полсекунды.

figure;
distplot(mc,X,'Type','histogram','FrameRate',0.5);

Figure contains an axes. The axes with title Distribution of States contains an object of type categoricalhistogram. This object represents Step 20.

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

свернуть все

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

Эволюция вероятностей состояний, указанных как (1 + numSteps)около-NumStates неотрицательная числовая матрица, возвращенная redistribute. Первая строка является распределением начального состояния. Последующие строки являются перераспределениями на каждом шаге. distplot нормализует строки на соответствующие суммы перед построением графика.

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

Оси для печати, указанные как Axes объект.

По умолчанию distplot графики к текущим осям (gca).

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Type','graph','FrameRate',3 создает анимированный график перераспределений с использованием частоты кадров 3 секунды.

Тип графика, указанный как разделенная запятыми пара, состоящая из 'Type' и значение в этой таблице.

СтоимостьОписание
'evolution'

Эволюция первоначального распределения. Сюжет представляет собой (1 + NumSteps)около-NumStates тепловая карта. Строка i отображает перераспределение на шаге i.

'histogram'

Анимированная гистограмма перераспределений. Вертикальная ось отображает вероятностную массу, а горизонтальная - состояния. 'FrameRate' аргумент пары имя-значение управляет ходом анимации.

'graph'

Анимированный график перераспределений. distplot окрашивает узлы по их вероятностной массе на каждом шаге. 'FrameRate' аргумент пары имя-значение управляет ходом анимации.

Пример: 'Type','graph'

Типы данных: string | char

Продолжительность дискретных временных шагов (в секундах) для анимированных графиков, определяемая как разделенная запятыми пара, состоящая из 'FrameRate' и положительный скаляр.

По умолчанию пауза на каждом временном шаге. Анимация продолжается при нажатии клавиши пробела.

Пример: 'FrameRate',3

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

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

свернуть все

Дескриптор графика распределения, возвращаемый как графический объект. h содержит уникальный идентификатор графика, который можно использовать для запроса или изменения свойств графика.

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