http://iisus.livejournal.com/ ([identity profile] iisus.livejournal.com) wrote in [personal profile] macroevolution 2012-07-15 11:45 am (UTC)

> биофак МГУ

Отлично, теперь в вашей компетенции я не сомневаюсь.

> Для понимания этого недостаточно.

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

> Я вам задам наводящий вопрос. Чем генетическое программирование отличается от генетических алгоритмов?

Они отличаются интерпретацией генетического текста. И возможностями наращивания генотипа. ГА интерпретируется прямо, ибо каждый кодируемый ими параметр задаёт параметр оптимизируемой системы. Генотип равен фенотипу. И создание новых генов не имеет смысла, так как в исходной системе для них нет места. В то время как в ГП геном интерпретируется путём построения на его основе программы. И тут фенотип принципиально отличается от генотипа, так как фенотип есть не сама программа, а ход её работы и результаты вычислений. И если геном породит построение фрактального объекта, то фенотип окажется несравнимо сложней генотипа. Плюс, в ГП возможно наращивание генокода, ибо всякая новая запись будет интерпретирована как осмысленная комманда в программе. (Это если я ничего не путаю).

Но в этом различии мне не видно преимущества одних языков над другими. На любом мы можем создать систему объектов, и позволить генотипу кодировать взаимодействие между ними. И тут нет принципиального отличия от случая, когда мы генотипом кодируем команды традиционного программирования, где операнды воздействуют на числа. Традиционный вид программы как последовательности комманд удобен для человека. А для компьютерной эволюции можно сделать другой тип программы. Например, нейросеть - тоже программа с входными и выходными данными и процессом вычисления. Но человеку сложно было бы писать такую "программу", ибо надо учитывать множество параллельных процесов, а для эволюции нейросеть подходит отлично.

>А вот куда бы хотелось двигаться вам - этого я пока что не смог понять.

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

Простейший способ взаимодействия между нами состоит в том, чтоб планируя очередной эксперимент, обсуждать его друг с другом, что может дать новые идеи и поможет избежать подводных камней. Ну и результаты потом можно обсуждать. Из этого может возникнуть идея для совместного эксперимента.

Post a comment in response:

If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting