МатВектор

Command Palette

Search for a command to run...

🔀 Дискретка

Цепь Маркова

англ. Markov chain

Случайный процесс без памяти: следующее состояние зависит только от текущего — будущее зависит только от настоящего, а не от прошлого.

Цепь Маркова — случайный процесс без памяти. Будущее зависит только от настоящего, а не от прошлого: как система попала в текущее состояние — неважно, важно лишь само состояние. Погода, очередь в магазине, фишка на игровом поле — всюду, где «сейчас» определяет вероятности «потом», работает марковская модель. Марковская цепь простыми словами: шагнули в новое состояние — и вся предыстория стёрлась.

Формально пусть — состояния системы в моменты 0, 1, 2, …, каждое из конечного набора (для погоды: «ясно», «дождь»). Цепь называется марковской, если при известном настоящем прошлое не добавляет ничего к прогнозу. Это условная вероятность в её чистом виде:

Свойство марковости (отсутствия последействия)

Числа — переходные вероятности — шанс за один шаг перескочить из в . Их собирают в матрицу переходов : по строкам «откуда», по столбцам «куда» (что такое матрица в целом — в статье матрица). Каждая строка — полноценное распределение, поэтому сумма её элементов равна единице.

Матрица переходов «погода»: за ясным днём с вероятностью 0.7 снова ясный, с 0.3 — дождь

Что будет через шагов? Запишем начальное распределение строкой вероятностей — по-математически это вектор . Тогда . Для матрицы выше при ясном старте шанс ясного дня через двое суток: .

Эволюция распределения состояний за n шагов

Главный вопрос про длинную перспективу: к чему всё идёт? Есть распределение, которое не меняется от шага к шагу, — стационарное. Оно удовлетворяет уравнению:

Уравнение стационарного распределения

Если из любого состояния достижимо любое другое и цепь не скачет с фиксированным периодом (неразложимость и апериодичность), стационарное распределение существует, единственно, и независимо от старта. Для погодной матрицы решение : в долгосроке 57% ясных дней и 43% дождливых. Проверьте подстановкой: . Вычисление степеней и предельного вектора опирается на ту же технику, что рекуррентные соотношения: каждое следующее состояние получается из предыдущих по фиксированному правилу.

Где это живёт: ранжирование страниц в PageRank — стационарное распределение цепи блуждания по ссылкам; расчёт очередей и запасов на складах; модели отказов и износа техники; алгоритмы MCMC в статистике. По духу это конечные автоматы, в которых переходы случаются с вероятностями, а не жёстко; на графах с пропускными способностями те же идеи работают в задачах о потоках в сетях.

  • Погода или спрос: два состояния, матрица — найти долю дней каждого типа из .
  • Блуждание по вершинам графа: частица прыгает в случайного соседа — найти частоту посещения каждой вершины.
  • Урны с перегородкой: перекладывание случайного шара задаёт матрицу переходов; вопрос — долгосрочное распределение.

Частые вопросы

Почему «цепь» и в честь кого она названа?

В честь Андрея Маркова, который в 1906 году исследовал последовательности зависимых испытаний — он называл их «испытаниями, связанными в цепь». Название прижилось: состояния сцеплены переходными вероятностями, и каждое звено помнит только предыдущее.

Чем цепь Маркова отличается от независимых испытаний?

При независимых бросках монеты исход не зависит ни от чего вообще. В цепи Маркова зависимость есть, но ровно на один шаг назад: текущее состояние задаёт распределение следующего. Схема Бернулли — вырожденный случай: все строки матрицы переходов одинаковы.

Всегда ли существует стационарное распределение?

У конечной цепи решение с нормировкой есть всегда. Другой вопрос — сходятся ли к нему блуждания: если цепь неразложима и апериодична, сходится, и предел единственный. У периодической цепи (детерминированные качели «влево — вправо») распределение может вечно колебаться, так и не устоявшись.

Как решать задачи на цепи Маркова?

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