(Место для непринужденных разговоров разной степени серьезности)
Сообщений: 9 Страница 1 из 1
Предлагаю пообсуждать сабж (вопрос несколько специальный, но на форуме, насколько я понимаю, есть несколько программистов, и кроме того р. Б. Константин, который немало участвовал в дискуссиях об искусственности, к которым приближена и эта тема).

Зачем это? Во первых, ГА часто упоминаются как модель и доказательство эволюции.
Во-вторых, это та тема, по которой вполне возможно сделать раздел в FAQ'е.

Несколько мыслей по поводу:

Если мы посмотрим на эволюцию некоторой популяции, мы увидим, что эволюционными (т.е. такими, которые изменяют её) событиями в ней, являются рождение и смерть. Какие-то особи умирают с большей вероятностью, какие-то с меньшей, какие больше рождают, какие-то меньше, у них есть различные предпочтения в выборе партнёра для спаривания, у них рождаются потомки, несущие в себе смесь геномов родителей, быть может изменённых. Мы можем усмотреть здесь дарвинизм, с его «наследственностью, изменчивостью и естественным отбором». Я со своей простецкой точки зрения думаю, что приведённое описание и стало бы дарвинизмом, если бы было добавлено утверждение, что так все виды и появились.

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

Генетические алгоритмы построены по аналогии с «алгоритмом» описанной эволюции. Генетическому тексту поставлено в аналогию некоторое формальное описание исследуемой задачи. Популяции — набор решений. Изменчивости и наследственности — способы случайного варьирования и комбинирования решений. Естественному отбору — алгоритм отбора решений при смене поколений популяций, для создания такого алгоритма требуется построить численную оценку качества решения как функцию его генетического текста.

Понятно, что задач, которые можно так решать много, в общем-то все задачи оптимизации - задачи в которых надо найти значения параметров, при которых некая функция принимает экстремальное значение. Но интересна одна - эволюция живых существ. И тут, самое забавное, не получается применить ГА к тому, что вдохновило их создание. Хотя бы потому, что нельзя из генетического текста вывести приспособленность. В настоящее время на основании только генетического текста тяжело даже рассуждать о приспособленности отдельных белков, не говоря уже о всём организме. Но если иногда и возможно, то о макроэволюции это ничего не говорит, а микроэволюция не интересна в контексте эво-креа дебатов. Казалось бы, можно сказать, что хотя ГА и построены по аналогии с "алгоритмом" полового размножения, но о биологической эволюции они ничего не говорят и сказать не могут, кроме тривиальных вещей, понятных и так (что генетический алгоритм будет лучше полного перебора, поскольку ищет решения в окрестности уже известных хороших и комбинирует удачные решения, как бы сводя большую переборную задачу к сумме меньших), в то время как о биологической эволюции что-то может сказать её непосредственное моделирование (не абстрактное). Можно ли об этом порассуждать? Или это всё только пустозвонство (тогда, по-видимому, надо как-то это поярче показать)?

P.S. прошу прощения за некоторую сумбурность. Я хотя и применяю ГА в исследовательской деятельности, но когда начал размышлять о них в контексте биологической эволюции понял, что мало что здесь мне понятно.
Ceterum censeo Carthaginem esse delendam
Интересная тема, жаль, совсем нет времени, поэтому дам лишь несколько очевидных соображений:

1. В мат.моделировании есть такое понятие - "адекватность модели". То что алгоритм называется генетическим отнюдь не превращает его в модель эволюции. Корректность соответствия надо рассматривать отдельно. За подробностями - к учебнику Самарского и Михайлова "Математическое моделирование".

2. Даже если ГА имеют отношение к эволюции, требуется уточнить: какой тип эволюции им соответствует: макро- или микро-. Скорее всего, макроэволюция здесь не проходит, потому что отсутствует понятие вида.

3. Собственно алгоритмы, несомненно, будут работать (но, естественно, не факт, что дадут оптимальный результат), ибо основаны на элементарном и вполне очевидном принципе, точно так же, как идея микроэволюции. Слабым звеном здесь служит вопрос о переходе от микроэволюции к макроэволюции. Это как у р.Б.Константина с прыжками на Луну...
попробую за недостатком времени предложить пару образов, показывающих отличие ГА от генетической реальности.
ГА хорошо работают на "n-мерном пространстве признаков", в котором местность - холмистая - вот есть овражки, холмы, одинокие горы... Тогда многочисленные выстрелы "шрапнелью" быстро находят экстремумы. найдя несколько нужных экстремумов, стреляем шрапнелью по ним. После нескольких итераций - находим глобальный экстремум.
Второе необходимое условие ГА - нужно много снарядов. Одиночными мы будем стрелять очень долго.

Генетические "ландшафты" другие. Они видятся мне как безбрежная пустыня с островками / овражками смысла-системности-функциональности. Выстрелы здесь подобны игре в морской бой, только в условиях, когда десять корабликов расположены на пооле 1000х1000. И патронов дают мало, и не разрывных...
Причем, система S находится на одном острове, а система S' - на другом, и ложбинки между ними нет, или она прерывистая.
Да, и еще: стрелять можно только рядом с предыдущим выстрелом, а не абы куда...
р.Б.Константин писал(а):ГА хорошо работают на "n-мерном пространстве признаков", в котором местность - холмистая - вот есть овражки, холмы, одинокие горы...
Красивая метафора. Только нужно уточнить:

р.Б.Константин писал(а): После нескольких итераций - находим глобальный экстремум.
Угу, находим... :no: Совсем, между прочим, не факт, что найдём. ГА - это угадывание решения: может угадаем, а может и нет. На практике, я так думаю, чаще всего большой точности не нужно, поэтому ГА оказываются полезными: как правило, они, всё-таки, неплохо срабатывают, но строгих обоснований для них, насколько я знаю, нет.

р.Б.Константин писал(а):Генетические "ландшафты" другие.
Это метафора. А хотелось бы ясно увидеть, где различия.
Лужехмур писал(а):
р.Б.Константин писал(а):Генетические "ландшафты" другие.
Это метафора. А хотелось бы ясно увидеть, где различия.

--Различия в том и состоят, что нет плавных переходов от одного гена к другому. В среднем пять мутаций в гене белка обнуляют его функцию. 70% генов человека не имеют паралогов, т.е. родственных генов (c >30%-ной гомологией). Вот мы и имеем: из в всего множества белковых генов с длиной, скажем, в 1000 нуклеотидов (300 аминокислот) - а 4^1000 = 10^600, мы имеем 3*10^3 генов - пиков, с небольшой площадью "вариаций, сохраняющих функцию и полезность".
Остальная площадь - это или нефункциональные, или неполезные для данного фенотипа последовательности. И "стрелять" мы можем не в случайном порядке шрапнелью, а двигаясь от пиков, модифицируя 1/10^8 структуры за один "шаг".
р.Б.Константин писал(а):--Различия в том и состоят, что нет плавных переходов от одного гена к другому. В среднем пять мутаций в гене белка обнуляют его функцию. 70% генов человека не имеют паралогов, т.е. родственных генов (c >30%-ной гомологией). Вот мы и имеем: из в всего множества белковых генов с длиной, скажем, в 1000 нуклеотидов (300 аминокислот) - а 4^1000 = 10^600, мы имеем 3*10^3 генов - пиков, с небольшой площадью "вариаций, сохраняющих функцию и полезность".
Остальная площадь - это или нефункциональные, или неполезные для данного фенотипа последовательности. И "стрелять" мы можем не в случайном порядке шрапнелью, а двигаясь от пиков, модифицируя 1/10^8 структуры за один "шаг".


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

Также есть белки с совсем уж ускользающей идентичностью, но одинаковой функцией. Ещё есть такие, которые имеют одинаковою третичную, но разные первичные структуры и разные функции. Например, лизоцим и лактальбумин. Как считают, последний произошёл от первого. Как? только руками разводят. Очень хорошо было бы доказать, что такие штуки невозможны, но надо уметь из первичной структуры получать третичную, а из третичной получать функцию. Позволю себе высказать мнение, что построение таких теорий должно быть одним из приоритетных направлений для креационистов. По крайней мере, кто-то должен быть на переднем крае.
Ceterum censeo Carthaginem esse delendam
Лужехмур писал(а):Даже если ГА имеют отношение к эволюции, требуется уточнить: какой тип эволюции им соответствует: макро- или микро-. Скорее всего, макроэволюция здесь не проходит, потому что отсутствует понятие вида.


По большому счёту, сколько применений ГА, столько и видов ГА. В общем случае ничего не соответствует :wink: То есть, можно построить модель микроэволюции формы клюва вьюрков на основе ГА или модель превращения носа в хобот на основе тех же ГА, но нельзя сказать, что им соответсвует микро- или макроэволюция. Можно сказать, что операторы ГА аналогичны микроэволюционным изменениям в природе.

Лужехмур писал(а):Слабым звеном здесь служит вопрос о переходе от микроэволюции к макроэволюции. Это как у р.Б.Константина с прыжками на Луну...


Да, собственно, я склоняюсь к тому, что на заявления типа "раз ГА, значит эволюция" надо предлагать смоделировать с помощью ГА какое-нибудь макроэволюционное событие (а лучше эволюцию в целом).
Ceterum censeo Carthaginem esse delendam
Ещё пара мыслей из моих прошлых рассуждений на тему (по большому счёту всё и так сказано, это просто некоторый промежуточный итог):

Практика показывает, что генетические алгоритмы оказываются лучше случайного перебора в поиске хороших решений. Однако они не гарантируют нахождения лучшего решения за конечное время. Хорошие решения находятся за счёт двух вещей. Во-первых решения постоянно блуждают из-за постоянных случайных мутаций. Во-вторых, происходит комбинация решений, и если задача такова, что части решения вносят вклад в качество целого решения довольно-таки независимо, то комбинирование решений позволяет соединять удачные части вместе. Фактически это очень сильно ускоряет поиск. Насколько сильно ускоряется поиск зависит от того насколько независимо вносят вклад части в качество целого. (Здесь можно приходит на ум понятие неуменьшаемой сложности.)

Для многих задач оптимизации генетические алгоритмы хороши. Они, видимо, действительно неплохо иллюстрируют механизм эволюции, той которая действительно происходит, и возможности которой мы ограничиваем рамками того, что называют микроэволюцией. Но, в то же время, размышления о генетических алгоритмах вообще, или об их конкретных применениях, не имеющих отношения к эволюции видов, — это не то, что требуется для получения верного представления о границах возможности последней. То, что можно искать некие хорошие решения множества задач таким образом, должно занимать соответствующих по вычислительным методам, химиков, ищущих конформации сложных молекул, логистикам, оптимизирующих пути, и проч. Но биолог-эволюциоист (в смысле изучающий эволюцию, не в смысле мировоззрения) будет не прав, если доверится аналогиям. У живых тварей не какая-нибудь изменчивость/наследственность, а вполне определённая, не абстрактный отбор, а определённый.

Дальше - то, что сказал Константин плюс трудность или невозможность количественной оценки функции приспособленности (и даже просто вывода фенотипа из генотипа), а значит и адекватного моделирования.

р.Б.Константин писал(а):--Различия в том и состоят, что нет плавных переходов от одного гена к другому. В среднем пять мутаций в гене белка обнуляют его функцию. 70% генов человека не имеют паралогов, т.е. родственных генов (c >30%-ной гомологией). Вот мы и имеем: из в всего множества белковых генов с длиной, скажем, в 1000 нуклеотидов (300 аминокислот) - а 4^1000 = 10^600, мы имеем 3*10^3 генов - пиков, с небольшой площадью "вариаций, сохраняющих функцию и полезность".
Остальная площадь - это или нефункциональные, или неполезные для данного фенотипа последовательности. И "стрелять" мы можем не в случайном порядке шрапнелью, а двигаясь от пиков, модифицируя 1/10^8 структуры за один "шаг".
Ceterum censeo Carthaginem esse delendam
Сообщений: 9 Страница 1 из 1

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2