Бактерии кода: развитие математического поведения

Это не было бы мое намерение поместить ссылку на мой блог, но у меня нет никакого другого метода для разъяснения то, что я действительно имею в виду. Статья довольно длинна, и это находится в трех частях (1,2,3), но если Вам любопытно, это стоит чтения.

Давным-давно (5 лет, по крайней мере) я запрограммировал программу Python, которая генерировала "математические бактерии". Эти бактерии являются объектами Python с простым основанным на коде операции генетическим кодом. Можно подать их с числом, и они возвращают число, согласно выполнению их кода. Я генерирую их генетические коды наугад и применяю экологический выбор к тем объектам, приводящим к результату, подобному предопределенному математическому ожиданию. Затем я позволяю им копировать, представить мутации и развить их. Результат довольно интересен, поскольку их генетический код в основном изучает, как решить простые уравнения, даже для значений, отличающихся для обучающего набора данных.

Теперь, этой вещью является просто игрушка. У меня было время для траты, и я хотел удовлетворить свое любопытство. однако, я предполагаю, что что-то, с точки зрения исследования, было сделано... Я изобретаю велосипед здесь, я надеюсь. Вы знаете о более серьезных попытках создания в - silico бактерии как та, которую я запрограммировал?

Обратите внимание на то, что это не действительно "генетические алгоритмы". Генетические алгоритмы - при использовании эволюции/выбора для улучшения вектора параметров против данного выигрыша функции. Это довольно отличается. Я оптимизирую код, не параметры, против данного выигрыша функции.

9
задан Joel Coehoorn 22 November 2010 в 22:07
поделиться

4 ответа

Если вы оптимизируете код, возможно, вы занимаетесь генетическим программированием ?

10
ответ дан 4 December 2019 в 13:47
поделиться

Вы знакомы с Core Wars ? Я помню, что для игры было написано несколько эволюционистов кода, которые имели некоторый успех. Например, MicroGP ++ - это генератор кода ассемблера, который можно применить к языку ассемблера Core Wars (а также к реальным проблемам!).

1
ответ дан 4 December 2019 в 13:47
поделиться

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

См. Также статью «Загрузите своего собственного ученого-робота» на сайте Wired для разбивка общего представления о том, как это работает.

2
ответ дан 4 December 2019 в 13:47
поделиться

Nice article, I would say you're talking about "gene expression programming" rather than "genetic programming", btw.

2
ответ дан 4 December 2019 в 13:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: