Замечательная демонстрация алгоритмической эволюции. С благодарностью
dration за ссылку на это видео. Смотреть лучше без звука и делая паузы на слайдах — они меняются достаточно быстро!
Каждый организм состоит из 30 шестерен, 1 анкера, 7 стрелок, 1 пружины и корпуса. Детали соединяются между собой: шестерни «склеиваются» центрами и краями, стрелки — концами, и так далее. Генотипом организма является матрица связности графа, вершины которого суть «активные точки» каждого элемента (у стрелки — концы, у шестерни — центр и зубчатый венец, и т. д.). Элементами матрицы связности графа такого вида могут быть только 0 и 1.
На каждом шаге симуляции из популяции выбирается три организма. Худший из трех уничтожается, а два лучших совокупляются и порождают одного потомка. Потомок получает каждый элемент матрицы связности от случайно взятого из обоих родителей, кроме одного случайно выбранного элемента, который опять же случаен (мутация). Кроме того, мутациям подвергается число зубьев в шестернях. Целевая функция, та, что выбирает «худшую» особь из трех, оценивает пригодность организма как часов: у него должны быть детали, отсчитывающие секунды, минуты, часы; как я понимаю, круговое движение лучше периодического, а круговое движение стрелки — самое лучшее для отсчета времени.
( Если что-то не понятно, то… )
Каждый организм состоит из 30 шестерен, 1 анкера, 7 стрелок, 1 пружины и корпуса. Детали соединяются между собой: шестерни «склеиваются» центрами и краями, стрелки — концами, и так далее. Генотипом организма является матрица связности графа, вершины которого суть «активные точки» каждого элемента (у стрелки — концы, у шестерни — центр и зубчатый венец, и т. д.). Элементами матрицы связности графа такого вида могут быть только 0 и 1.
На каждом шаге симуляции из популяции выбирается три организма. Худший из трех уничтожается, а два лучших совокупляются и порождают одного потомка. Потомок получает каждый элемент матрицы связности от случайно взятого из обоих родителей, кроме одного случайно выбранного элемента, который опять же случаен (мутация). Кроме того, мутациям подвергается число зубьев в шестернях. Целевая функция, та, что выбирает «худшую» особь из трех, оценивает пригодность организма как часов: у него должны быть детали, отсчитывающие секунды, минуты, часы; как я понимаю, круговое движение лучше периодического, а круговое движение стрелки — самое лучшее для отсчета времени.
( Если что-то не понятно, то… )