marigranula: (Default)
[personal profile] marigranula
      В свое время, была довольно популярна попытка моделировать биологическую эволюцию на компьютере с помощью эволюции коротеньких программ написанных на специальных, разработанных для этих целей, языках программирования. Эти коротенькие программки были аналогом популяции "дигитальных" организмов "живущих" в компьютере. Первой подобной системой стала Tierra, затем распространение получила Avida. Идея в том, что пишется интерпретатор специального (простого) языка, и запускается популяция коротеньких программок на этом языке. Они конкурируют между собой, мутируют, "лучшие" из них дают потомство, подобно организмам в процессе естественной эволюции. Я этим увлекся, и тоже написал на С интерпретатор для специального языка, который сам и придумал. Понятно. что этот язык был не похож ни на один существующий :))). Особо интересных результатов, к сожалению, ни у меня, ни у других, этот метод не принес - эволюция разумеется происходила, и новые неожиданные программы возникали, но мало чего нетривиального наблюдалось.
      Но зато я почувствовал себя творцом, демиургом, творящим жизнь по своему разумению! Вот когда я шел по Чукотке среди карликовых деревьев и ощущал себя великаном, возвышающемся над лесом, - что то в этом духе.

Date: 2019-01-13 11:38 pm (UTC)
From: [identity profile] home-lynxy.livejournal.com
Все дело в генераторе случайных чисел, он должен быть очень хорошего качества )
Кстати, я бы вернулся сейчас к теме Random Code Programing :)
У Вас не сохранился этот проект?

Date: 2019-01-14 04:05 am (UTC)
From: [identity profile] marigranula.livejournal.com
Не, генератор случайных чисел был стандартной функцией С... Его качество без разницы... А Вы слышали, сейчас используют чип который использует квантовый эффект чтобы генерировать случайные числа :)

Date: 2019-01-14 04:42 am (UTC)
From: [identity profile] home-lynxy.livejournal.com
Слышал, конечно.
Но у меня генераторы не хуже, это же моя работа )
На самом деле качество генератора имеет значение.

Date: 2019-01-14 07:31 am (UTC)
From: [identity profile] marigranula.livejournal.com
Я с Вами полностью согласен, для криптографии качество генератора очень важно. Я имел ввиду, что для эволюции оно не важно :).

Date: 2019-01-14 01:41 pm (UTC)
From: [identity profile] home-lynxy.livejournal.com
Дмитрий, как Вы знаете, я не люблю спорить и стараюсь ни с кем не спорить.
Но в данном случае, я с Вами не соглашусь и вот почему: каждый процесс в пнироде отражен соответствующим случайным процессом, например, отказы - пуассоновский поток, мутации - марковский процесс и т.д.
Поэтому я бы, конечно, сделал отдельный генератор под "эволюцию" :)
И простите, что спорю - все-таки я не биолог :)

Date: 2019-01-14 05:28 pm (UTC)
From: [identity profile] marigranula.livejournal.com
Я с Вами согласен и в случае с случайностью мутаций и с тем что эволюция корректнее моделировалась бы не генератором псевдо-случайных чисел rand() с инициализацией от time_stamp, а чем-нибудь более эффективным. Но проблемы с моей моделью, как впрочем и с Tierra в том, что они выдают тривиальные результаты, в том смысле, что они показывают что эволюция идет... ну и?

Date: 2019-01-15 01:05 am (UTC)
From: [identity profile] home-lynxy.livejournal.com
Меня интересует в данном случае не биологическая эволюция, а именно эволюция кода, в первую очередь, скорость его изменчивости.
Подскажите, пожалуйста, есть ли проекты с открытым кодом и где про них можно прочитать, чтобы не растекаться "мыслию по древу"?

Date: 2019-01-15 06:10 am (UTC)
From: [identity profile] marigranula.livejournal.com
Да, есть такая. Генетическое программирование. Оно занимается созданием программ путем их эволюционирования (моя и другие подобные системы занимались конкретно программами, чья задача - копировать себя). То есть, берется начальная программа, потом в нее вносятся случайные мутации, рекомбинации и т.д., и отбираются потом лучшие; затем они тоже мутируют и рекомбинируют, и так много раз. Но там не ставятся задачи по моделированию биологической эволюции, а именно создать более эффективные программы. Есть журнал https://link.springer.com/journal/10710 (https://link.springer.com/journal/10710)

Date: 2019-01-15 07:51 am (UTC)
From: [identity profile] home-lynxy.livejournal.com
Большое спасибо, Дмитрий!
Бегло прочитал, это как раз то, что нужно!

Date: 2019-01-15 07:54 am (UTC)
From: [identity profile] marigranula.livejournal.com
Рад что оказалось полезным!

Profile

marigranula: (Default)
marigranula

March 2026

S M T W T F S
1 2 3 4 5 6 7
8 9 1011121314
15161718192021
22232425262728
293031    

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 10th, 2026 08:00 pm
Powered by Dreamwidth Studios