🔗 Ланцюги Маркова

Інтерактивне навчання та візуалізація

📚 Теорія

Що таке Ланцюг Маркова?

Ланцюг Маркова — це стохастичний процес, який задовольняє марківську властивість: майбутній стан залежить лише від поточного стану і не залежить від минулих станів.

P(Xn+1 = j | Xn = i, Xn-1 = in-1, ..., X0 = i0) = P(Xn+1 = j | Xn = i)

Ключові концепції:

  • Стани — можливі положення системи
  • Переходи — зміна станів з певною ймовірністю
  • Матриця переходів — таблиця ймовірностей переходів між станами
  • Марківська властивість — майбутнє залежить тільки від теперішнього

🌤️ Приклад: Погода

Уявімо прогноз погоди з трьома станами: Сонячно, Хмарно, Дощ.

Якщо сьогодні сонячно, завтра може бути:

  • Сонячно з ймовірністю 70%
  • Хмарно з ймовірністю 20%
  • Дощ з ймовірністю 10%

Це класичний приклад ланцюга Маркова!

🎮 Інтерактивна симуляція

Клікніть на полотні, щоб додати стан. Виберіть два стани для створення переходу.

Результати симуляції з'являться тут...

Модель погоди

Три стани: Сонячно ☀️, Хмарно ☁️, Дощ 🌧️

Прогноз погоди з'явиться тут...

Матриця переходів (можна редагувати):

☀️ Сонячно ☁️ Хмарно 🌧️ Дощ
☀️ Сонячно
☁️ Хмарно
🌧️ Дощ

Створіть свою модель

Визначте кількість станів та матрицю переходів для вашої власної моделі

Результати симуляції з'являться тут...

🎲 Зв'язок з методом Монте-Карло

Як пов'язані ланцюги Маркова та метод Монте-Карло?

Метод Монте-Карло — це широкий клас обчислювальних алгоритмів, які використовують випадкові вибірки для отримання числових результатів.

Ланцюги Маркова + Метод Монте-Карло = MCMC (Markov Chain Monte Carlo)

Спільні риси:

  • 🎲 Стохастичність — обидва методи базуються на випадкових процесах
  • 🔄 Ітеративність — використовують повторювані кроки
  • 📊 Апроксимація — дають наближені результати через симуляцію
  • Масштабованість — ефективні для складних систем

MCMC (Markov Chain Monte Carlo):

Це клас алгоритмів, що поєднує обидва методи для:

  • Вибірки зі складних розподілів ймовірностей
  • Байєсівського статистичного аналізу
  • Машинного навчання та нейронних мереж
  • Фізичного моделювання (алгоритм Метрополіса)

🎯 Приклад: Обчислення π

Класичний приклад методу Монте-Карло — обчислення числа π через випадкові точки у квадраті з вписаним колом.

🎯 Інтерактивні симуляції Монте-Карло

Метод Монте-Карло для обчислення π

Кидаємо випадкові точки в квадрат 1×1. Якщо точка потрапляє в коло радіусом 1, рахуємо її.

π ≈ 4 × (кількість точок в колі) / (загальна кількість точок)
Натисніть "Старт" для початку симуляції...

Обчислення інтеграла методом Монте-Карло

Обчислюємо площу під кривою f(x) = x² на інтервалі [0, 1]

∫₀¹ x² dx = 1/3 ≈ 0.333...
Результати з'являться тут...

MCMC: Вибірка з розподілу

Використовуємо ланцюг Маркова для генерації вибірки з нормального розподілу (алгоритм Метрополіса-Гастінгса)

Результати з'являться тут...

💡 Застосування

Де використовуються ланцюги Маркова?

  • 📊 Прогнозування — погода, фінансові ринки
  • 🎮 Ігри — моделювання поведінки NPC
  • 🔤 Обробка мови — генерація тексту, автодоповнення
  • 🧬 Біоінформатика — аналіз ДНК послідовностей
  • 🌐 Інтернет — алгоритм PageRank від Google
  • 📱 Телекомунікації — моделювання мережевого трафіку
  • 🏥 Медицина — прогнозування перебігу хвороб

Застосування методу Монте-Карло та MCMC:

  • 🎲 Фінанси — оцінка ризиків, ціноутворення опціонів
  • 🔬 Фізика — моделювання молекулярної динаміки
  • 🤖 Машинне навчання — навчання моделей, байєсівська оптимізація
  • 📈 Статистика — оцінка параметрів, перевірка гіпотез
  • 🎯 Оптимізація — пошук глобального мінімуму
  • 🌍 Кліматологія — прогнозування зміни клімату