16:07 

Искусственная эволюция учит роботов думать

Щоденник.юа
Ах, где же это было? В терминаторе? SkyNet? Фантастика, она к нам всё ближе. И всё реальнее.
Далее мы приведём статью Олега Егорова для CNews. Статья большая, но очень познавательная:

Компьютерное моделирование эволюционных процессов дает возможность не только проверить основные положения эволюционной теории, но и создать развивающиеся и обучаемые компьютерные программы, которые могут решать задачи, непосильные для традиционного программирования. Примерами успешного изучения и использования искусственной эволюции могут служить проекты "Авида" и NEAT.

По Дарвину для эволюции необходимо наличие триады "наследственность, изменчивость, отбор". Эволюционные единицы - организмы, гены - конкурируют друг с другом за ресурс (отбор), победители оставляют более приспособленное потомство (наследственность), которое может отличаться от родителей в ту или иную сторону (изменчивость), предоставляя материал для последующего отбора. Есть, однако, и более тонкие требования, пренебрежение которыми может почти остановить эволюционное развитие. Например, мутации должны быть достаточно малы, чтобы модифицировать, а не кардинально изменять фенотип. Это увеличивает вероятность того, что мутация окажется полезной или хотя бы нейтральной.

"Авида" (Avida) - программа, предназначенная для изучения эволюционных процессов на примере искусственной жизни. В этой программе создается виртуальное пространство, заселенное простыми электронными организмами - авидянами (avidians), которые способны размножаться, случайно мутировать, конкурировать друг с другом за жизненное пространство и, как следствие, эволюционировать.


Рабочее окно программы AVIDA-ED. В центре карта популяции авидян, цветами обозначена относительная приспособленность особей, основанная на умении производить логические операции и быстро размножаться. В правом нижнем углу - график зависимости средней приспособленности популяции от времени.


Может показаться странным, что ученые всерьез рассматривают компьютерные программы как аналоги живых существ. Однако, если присмотреться внимательнее, то окажется, что геном живого существа в определенном смысле мало отличается от компьютерной программы: и то, и другое - это набор инструкций, описывающий поведение своего носителя, живого или электронного.

"Авида" и авидяне


Геном каждого авидянина представляет собой циклический набор из нескольких десятков инструкций, последовательно выполняемый простым виртуальным процессором из двух 32-битных стеков и трех регистров. Весь жизненный цикл каждого авидянина зашифрован в его геноме. Из 26 типов инструкций лишь небольшая часть служит производству себе подобных, большинство же предназначено для логических операций над 32-битными строками, которые система подает на вход каждому авидянину. За выполнение логических операций над этими строками авидяне получают преимущество в скорости размножения. Все логические операции базируются на инструкции И-НЕ (NOT AND), последовательным применением которой можно получить любую другую логическую функцию. Каждый авидянин может за свою жизнь получить награду за одну логическую операцию каждого типа. Чем сложнее операция - тем больше за нее награда.

В каждой популяции первое поколение авидян умеет только размножаться. Через некоторое время за счет случайных ошибок при копировании - мутаций – появляются организмы, выполняющие простейшие логические операции. Эти организмы получают преимущество в скорости размножения и быстро вытесняют остальных из жизненного пространства. Дальнейшая эволюция идет подобным образом, скачкообразно - один из авидян обнаруживает новую логическую операцию, и его получившее преимущество потомство завоевывает мир. Важный результат, полученный создателями "Авиды" состоит в том, что авидяне могут научится сложным логическим операциям только если они получают награду за выполнение более простых. В экспериментах, где выполнение простых операций не награждалось, эволюция никогда не приводила к появлению организмов, способных выполнять сложные операции. То же самое наблюдается в биологической эволюции: любая сложная адаптация, которая не может возникнуть в результате единичной мутации, появляется в результате развития более простых, но тем не менее полезных приспособлений.


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


Классическим примером сложной адаптации в биологической эволюции является глаз. Глаз позвоночного животно

@темы: Наука, Статьи

   

Что Нового в Науке и Технике

главная