Open
Description
Нужно сделать филогенетическое дерево на основе, например json или какой-нибудь технологии. Это даст нам понимание почему одни мутации поддерживают мягкая отборочный, а другие нет.
update: нужно использовать json но в формате данные и связи отдельно. Смотри этот линк. Мне нравится либа sigma.js. Суть следующая:
- при первом старте системы мы создаем пустой массив типа Creature.Organism и массив связей типа Int
- в первый массив добавляется каждый созданный организм
- во время бекапа оба массива конвертируется в json и сохраняется в файлы по времени. При этом массивы в системе очищаются
- во время клонирования в первый массив добавляется новый организм. Так же, во второй массив добавляется новая связь между родителем и ребенком
что должен уметь плагин:
- нужно иметь возможность иметь полное филогенетическое дерево за определенный период времени. для этой задачи нужно ввести параметр времени или итераций из которых будет выбираться период
пример дерева: https://www.dropbox.com/s/if22s1e7wncck60/phylo.png?dl=0 - дерево должно содержать организмы с родительскими связями между ними. по сути, по этим связям можно подняться до самого "первого" предка (на рисунке выше - это движение снизу вверх)
- при выборе организма нужно видеть его мета информацию такую как:
- имя (id)
- все свойства (энергия, количество мутаций, цвет, код и т.д). полный список свойств смотри здесь: https://github.com/tmptrash/jevo/blob/v1.1/src/organism/Creature.jl. строка "type Creature"
- список измененных организмов, которые получили порции мутаций от текущего. это не то же самое, что получить (родить) наследника так как мутации получаются в течении жизни