Skip to content

huksleva/Coursework_computer_simulation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Epidemic Simulation

Компьютерная модель распространения эпидемии на основе клеточного автомата, разработанная на языке Python.

Описание проекта

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

В симуляции реализованы:

  • перемещение агентов по клеточному полю;
  • распространение инфекции между агентами;
  • выздоровление заболевших;
  • смертность от заболевания;
  • отображение статистики в реальном времени;
  • график изменения численности состояний;
  • выбор параметров заболевания;
  • выбор готовых профилей вирусов (COVID-19, Flu, Measles);
  • ручное добавление очагов заражения.

Используемые технологии

  • Python 3.13
  • NumPy
  • Matplotlib

Структура проекта

Coursework_computer_simulation/
│
├── app/
│   ├── __init__.py
│   ├── app.py
│   ├── config.py
│   │
│   ├── events/
│   │   ├── __init__.py
│   │   ├── buttons_events.py
│   │   ├── drag_events.py
│   │   └── mouse_events.py
│   │
│   ├── simulations/
│   │   ├── __init__.py
│   │   ├── create_grid.py
│   │   ├── infection.py
│   │   └── movement.py
│   │
│   ├── ui/
│   │   ├── __init__.py
│   │   ├── buttons.py
│   │   ├── layout.py
│   │   ├── radio_buttons.py
│   │   ├── sliders.py
│   │   ├── statistics.py
│   │   └── window.py
│   │
│   └── utils/
│       ├── __init__.py
│       └── helpers.py
│
├── .gitignore
├── LICENSE
├── pyproject.toml
└── README.md

Установка

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

git clone https://github.com/huksleva/Coursework_computer_simulation
cd Coursework_computer_simulation

2. Создание виртуального окружения

Windows:

python -m venv .venv
.venv\Scripts\activate

Linux/macOS:

python3 -m venv .venv
source .venv/bin/activate

3. Установка зависимостей

Используется pyproject.toml:

python -m pip install .

Запуск проекта

Из корневой директории проекта:

python -m app/app.py

Состояния агентов

Состояние Цвет
Пустая клетка Серый
Здоровый Зелёный
Заражённый Красный
Выздоровевший Синий
Умерший Чёрный

Управление

Кнопки

  • Pause — пауза/продолжение симуляции;
  • Restart — перезапуск симуляции;
  • Defaults — восстановление параметров по умолчанию;
  • Add Infection — режим ручного добавления заражённых.

Ползунки

  • Infection — вероятность заражения;
  • Recovery — вероятность выздоровления;
  • Death — вероятность смерти;
  • Speed — скорость симуляции;
  • Density — плотность населения.

Профили вирусов

Доступны следующие предустановленные модели:

  • COVID-19
  • Flu
  • Measles

Автор

Тоц Леонид Александрович
Группа ИВТ-2
2026

About

Курсовая работа по предмету "Компьютерное моделирование". РГПУ, 2-й курс

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages