Техническое задание для проекта “Petri Dish”
Симуляция популяции гипотетических одноклеточных организмов на чашке Петри.
Программа предоставляет возможность наблюдать за броуновским движением организмов, их размножением и распространением в популяции мутаций в зависимости от условий, а также влиять на указанные процессы.
Основные понятия:
Клетка (cell) - единица популяции, обладает положением в пространстве, направлением и скоростью движения, продолжительностью жизни; может нести и передавать мутацию.
Чашка Петри (Petri dish) - область движения клеток, выход за ее пределы запрещен.
Бесполое размножение (asexual reproduction) - образование идентичной копии клетки, рядом с делящейся клеткой; при этом, если места рядом нет, деления не происходит.
Половое размножение (sexual reproduction) - образование 4 клеток после слияния двух родительских; происходит с определенной вероятностью при встрече клеток, вероятность растет по мере ухудшения условий (100% при 0 условиях, 0% при 1); аналогично бесполому размножению, при отсутствии места для расположения новых клеток, новые клетки не образуются, либо образуется меньше 4 клеток.
Мутация (mutation) - передается со 100% вероятностью при бесполом размножении и с меньшей вероятностью при половом; изначально возникает спонтанно (т. е. у случайной клетки).
Продолжительность жизни (lifetime) - время от появления клетки в популяции до ее исчезновения.
Внешние условия (environment) - задаются пользователем и измеряются по шкале от 0 до 1: 0 - худшие условия, 1 - лучшие.
Столкновение клеток (collision) - сближение центров двух клеток на расстояние, которое меньше заданного порога столкновения; встреча ведет либо к половому размножению, либо к изменению направления движения клеток.
Постановка задачи и принятые упрощения:
- Модель: упрощенные гипотетические одноклеточные, которые могут жить, умирать, мутировать и размножаться - половым и бесполым путем
- Организмы - упрощены окружностями
- Движение - броуновское, в пределах чашки Петри
- В каждый момент времени в популяции может присутствовать только один тип мутации
Результат действия программы:
- Изображение движения организмов и событий (деления, возникновения и передачи мутаций) “в реальном времени” (графический интерфейс).
- Статистика симуляции по ее завершении - общее количество организмов; среднее, максимальное и минимальное количество организмов за все время симуляции, количество произошедших половых и бесполых размножений, общее количество мутантных клеток.
Описание интерфейса:
- Чашка Петри - большая окружность, клетки - маленькие окружности (находящиеся в движении); цвет клеток определяется мутациями: черные клетки мутированы, белые - нет.
- Настройки (settings): поле для регуляции внешних условий; поле для введения мутации в популяцию.
Задаваемые пользователем начальные параметры:
- Начальное число клеток в популяции
- Размер чашки Петри
- Продолжительность жизни клеток
- Внешние условия
- Допустимые типы размножения: половое, бесполое
Документация:
- Описание свойств системы
- Список регулируемых параметров
Программа будет написана на языке Python (для ее работы будет требоваться его установка) и оформлена согласно правилам PEP-8.
Язык интерфейса и документации: English
Вернуться к странице Petri dish