Skip to content

Maxacross/MarkovChainModelingSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Markov Chain Modeling System

Веб-застосунок для моделювання та аналізу:

  • дискретних марковських ланцюгів (DTMC);
  • безперервних марковських ланцюгів (CTMC).

Проєкт реалізовано як повністю клієнтський веб-застосунок без використання серверної частини.

🌐 Онлайн-версія (GitHub Pages):
👉 https://maxacross.github.io/MarkovChainModelingSystem/


🔍 Основні можливості

📌 DTMC модель

Для дискретних марковських ланцюгів реалізовано:

  • введення матриці ймовірностей переходів;
  • введення початкового вектора ймовірностей;
  • автоматичну перевірку коректності матриці переходів;
  • побудову системи лінійних рівнянь;
  • обчислення ймовірностей станів за кроками;
  • знаходження стаціонарного розподілу;
  • моделювання еволюції системи;
  • побудову графа марковського ланцюга;
  • візуалізацію зміни ймовірностей у вигляді графіків;
  • експорт графів у формати SVG та PNG.

📌 CTMC модель

Для безперервних марковських ланцюгів реалізовано:

  • введення матриці інтенсивностей переходів;
  • введення початкового розподілу ймовірностей;
  • автоматичну перевірку введених даних;
  • побудову системи рівнянь Колмогорова;
  • чисельне моделювання еволюції системи;
  • обчислення стаціонарних ймовірностей;
  • побудову графа станів;
  • візуалізацію динаміки ймовірностей у часі;
  • експорт графів у SVG та PNG.

📌 Загальні можливості

  • адаптивний інтерфейс;
  • підтримка математичних формул LaTeX;
  • автоматичний рендеринг формул через MathJax;
  • збереження моделей у форматі JSON;
  • завантаження власних моделей;
  • підтримка прикладів моделей;
  • робота без серверної частини;
  • підтримка сучасних браузерів.

⚙️ Використані технології

🖥 Основні технології

  • HTML5
  • CSS3
  • JavaScript (ES6+)

📚 Використані бібліотеки

Бібліотека Призначення
Math.js математичні обчислення
MathJax рендеринг математичних формул
Plotly.js побудова графіків
Viz.js / Graphviz побудова графів марковських ланцюгів

📁 Структура проєкту

.
├── index.html
├── LICENSE
├── README.md
├── .gitattributes
├── .gitignore
│
├── css
│   ├── main.css
│   ├── dtmc.css
│   └── ctmc.css
│
├── pages
│   ├── dtmc.html
│   └── ctmc.html
│
├── js
│   ├── common
│   │   ├── notifications.js
│   │   └── utils.js
│   │
│   ├── dtmc
│   │   ├── dtmc.js
│   │   ├── matrix.js
│   │   ├── validation.js
│   │   ├── stationary.js
│   │   ├── simulation.js
│   │   ├── chart.js
│   │   ├── graph.js
│   │   └── fileIO.js
│   │
│   └── ctmc
│       ├── ctmc.js
│       ├── matrix.js
│       ├── validation.js
│       ├── stationary.js
│       ├── simulation.js
│       ├── chart.js
│       ├── graph.js
│       └── fileIO.js
│
├── resources
│   ├── icons
│   │   └── favicon.png
│   │
│   ├── dtmc_example
│   │   ├── dtmc_example_2states.json
│   │   ├── dtmc_example_3states.json
│   │   └── dtmc_example_4states.json
│   │
│   └── ctmc_example
│       ├── ctmc_example_2states.json
│       ├── ctmc_example_3states.json
│       └── ctmc_example_4states.json

📚 Теоретична основа

Проєкт базується на теорії:

  • марковських моделей;
  • дискретних марковських ланцюгів;
  • безперервних марковських ланцюгів;
  • рівнянь Колмогорова;
  • стаціонарних режимів стохастичних систем;
  • чисельного моделювання випадкових систем.

📥 Приклади моделей

У каталозі resources містяться готові приклади моделей:

DTMC

resources/dtmc_example/

CTMC

resources/ctmc_example/

Приклади можна завантажити безпосередньо з інтерфейсу застосунку.


🚀 Запуск проєкту

1. Клонування репозиторію

git clone https://github.com/Maxacross/MarkovChainModelingSystem.git

2. Відкриття застосунку

Відкрити файл:

index.html

у браузері.


📜 Ліцензія

Проєкт розповсюджується за ліцензією MIT.

Детальніше див. файл:

LICENSE

👤 Автор

Maxacross
2026


Releases

No releases published

Packages

 
 
 

Contributors