Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Эволюционное моделирование и генетический алгоритм

Лекция



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

эволюционное моделирование (англ. Evolutionary computation) использует признаки теории Дарвина для построения интеллектуальных систем (методы группового учета, генетические алгоритмы). Является частью более обширной области искусственного интеллекта — вычислительного интеллекта.

Эволюционное моделирование это уже достаточно сложившаяся область, в которой можно выделить:

  1. модели возникновения молекулярно-генетических информационных систем;
  2. моделирование общих закономерностей эволюции (Эволюционные алгоритмы). Это системы, которые используют только эволюционные принципы. Они успешно использовались для задач типа функциональной оптимизации и могут легко быть описаны на математическом языке. К ним относятся эволюционные алгоритмы, такие как Эволюционное программирование, Генетические алгоритмы, Эволюционные стратегии, Генетическое программирование;
  3. эволюционные модели. Это системы, которые являются биологически более реалистичными, чем эволюционные алгоритмы, но которые не оказались полезными в прикладном смысле. Они больше похожи на биологические системы и менее направлены на решение технических задач. Они обладают сложным и интересным поведением, и, видимо, вскоре получат практическое применение. К этим системам относят так называемую искусственную жизнь.
  4. прикладное эволюционное моделирование.

Использование принципов дарвинизма для автоматизированного решения проблем началось в 1950-х. К 1960-му году три различные интерпретации этой идеи разрабатывались в трех разных местах. Эволюционное программирование было введено Лоуренсом Дж. Фогелем в США, в то время как Джон Генри Холланд назвал свой метод генетическим алгоритмом. В Германии Инго Rechenberg и Ханс-Пол Schwefel представили подход эволюционной стратегии. Эти области разрабатывались отдельно в течение примерно 15 лет. С начала девяностых годов они были унифицированы как «диалекты» одной технологии, называемой эволюционные вычисления. Кроме того, в начале девяностых годов появился четвертый поток — генетическое программирование. С 1990-х эволюционные вычисления во многом стали связаны с идеей роевого интеллекта и вдохновленные природой алгоритмы становятся все более значительной частью этого направления.

Таким образом, термины «эволюционное программирование», «эволюционные стратегии», «генетические алгоритмы» и «генетическое программирование» рассматриваются как частные случаи общего термина «эволюционные вычисления» или «эволюционное моделирование».

Моделирование эволюции с использованием идей эволюционных алгоритмов и искусственной жизни началось с работы Нильса Aall Barricelli в 1960-х, и было продлено Алексом Фрейзером, который опубликовал ряд работ по моделированию искусственного отбора. Эволюционные алгоритмы стали общепризнанным методом оптимизации в результате работ Инго Rechenberg в 1960-х и начале 1970-х, который использовал их для решения сложных инженерных задач. Генетические алгоритмы стали особенно популярны благодаря работам Джона Холланда. Вместе с ростом академического интереса, резкое увеличение мощности компьютеров позволило практические применения, в том числе автоматическую эволюцию компьютерных программ. Эволюционные алгоритмы в настоящее время используются для решения многомерных задач более эффективно, чем программное обеспечение, разрабатываемое человеком.

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

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

эволюционные алгоритмы
К ним относятся:

  • Эволюционное программирование
  • Генетические алгоритмы
  • Эволюционные стратегии
  • Системы классификаторов
  • Генетическое программирование

Эволюционные алгоритмы моделируют базовые положения в теории биологической эволюции - процессы отбора, мутации и восстановление популяции особей.
Множество особей называют популяцией. Популяция эволюционирует по правилам отбора в соответствии с целевой функции, задается внешней средой. Каждой особи (индивидуума) популяции назначается значение ее приспособленности во внешней среде. Размножаются только наиболее приспособленные виды. Рекомбинация и мутация позволяют особям изменяться и приспосабливаться к среде. Эволюционные алгоритмы относятся к адаптивным поисковых механизмов.
эволюционное программирование
Эволюционное программирование было предложено доктором Лоуренсом Дж. Фогелем в 1960 году. В то время искусственный интеллект было ограничено двумя основными направлениями исследований: моделированием человеческого мозга (нейронные сети) и моделированием поведения человека (эвристическое программирование). Альтернативный вариант Фогеля отвергал моделирования конечного продукта эволюции, и был направлен на моделирование процесса эволюции, как средства получения разумного поведения. Фогель рассматривает интеллект как составную часть способности делать предсказания внешней среды в сочетании с переводом каждого прогноза в целесообразную ответ согласно заданной цели (например, для максимизации функции выигрыша). Таким образом, по его мнению прогнозирования является необходимым условием для разумного поведения.
Гипотезы о виде зависимости целевой переменной от других переменных формулируются системой в виде программ на некотором внутреннем языке программирования. Если это универсальный язык, то теоретически на ней можно выразить зависимость любого вида. Процесс построения таких программ строится как эволюция в популяции программ. Если система находит программу, которая точно воспроизводит искомую зависимость, она начинает вносить в нее небольшие модификации и отбирает среди дочерних программ только те, которые повышают точность.
Система "выращивает" несколько генетических линий программ, конкурирующих между собой в точности нахождения искомой зависимости. Специальный транслирующий модуль переводит найденные зависимости с внутреннего языка системы на понятный пользователю язык (математические формулы, таблицы и т.д.), делая их легкодоступными. Для того, чтобы сделать полученные результаты более понятными для пользователя-нематематика, существует большой арсенал разнообразных средств визуализации выявленных зависимостей.
Поиск зависимости целевых переменных от других факторов проводится в форме функций определенного вида. Например, в одном из самых удачных алгоритмов этого типа - методе группового учета аргументов (МГУА) зависимость ищут в форме полиномов. Причем сложные полиномы заменяются несколькими простыми, учитывают лишь некоторые признаки (группы аргументов). Полученные формулы зависимостей поддаются анализу и интерпретации.
Современное эволюционное программирование
Возрождение эволюционного программирования было продолжено в 1980-х. разработки касались произвольного представления данных и обобщенной проблемы оптимизации.
Эволюционное программирование было применено к различным инженерных задач:

  • Системы управления, системы идентификации.
  • Маршрутизация трафика.
  • Военное планирование.
  • Обработка сигналов.
  • Игровые и обучающие программы.

генетический алгоритм


Генетический алгоритм - это эвристический алгоритм поиска, используемый для решения задач оптимизации и моделирования путем случайного подбора, комбинирования и модификации искомых параметров с использованием механизмов, напоминающих биологическую эволюцию.
эволюционная теория
Эволюционная теория утверждает, что жизнь на планете возникла сначала лишь в простейших формах - в виде одноклеточных организмов. Эти формы постепенно усложнялись, приспосабливаясь к окружающей среде, порождая новые виды, и много миллионов лет появились первые животные и люди. Каждый биологический вид со временем совершенствует свои качества, чтобы эффективно справляться с важнейшими задачами выживания, самозащиты, размножения. Таким образом возникло защитная окраска у многих рыб и насекомых, панцирь у черепахи, яд в скорпиона и т.д..
С помощью эволюции природа постоянно оптимизирует живые организмы, находя время неординарные решения. Неясно, за счет чего происходит этот прогресс, однако ему можно дать научное объяснение, основываясь лишь на двух биологических механизмах - естественного отбора и генетического наследования.
Естественный отбор и генетическое наследование
Ключевую роль в эволюционной теории играет естественный отбор. Его суть заключается в том, что наиболее приспособленные особи лучше выживают и приносят больше потомков, чем менее приспособленные. Сам по себе естественный отбор еще не обеспечивает развитие биологического вида. Поэтому важно узнать, каким образом происходит наследование, то есть как свойства потомков зависят от свойств родителей.
Основной закон наследования интуитивно понятным - потомки похожи на родителей. В частности, потомки более приспособленных родителей будут, скорее всего, одними из наиболее приспособленных в своем поколении. Для ясного понимания наследственности, нужно несколько углубиться в построение естественной клетки - в мир генов и хромосом.
Почти в каждой клетке любого особи есть набор хромосом, содержащих информацию об этой особь. Основная часть хромосомы - нить ДНК, которая определяет, какие химические реакции будут происходить в данной клетке, как она будет развиваться и какие функции выполнять.
Ген - это отрезок цепи ДНК, который отвечает за определенное свойство особи, например за цвет глаз, тип волос, цвет кожи и т.д.. Вся совокупность генетических признаков человека кодируется с помощью примерно 60 тыс. Генов.
Различают два вида клеток: половые (такие, как сперматозоид и яйцеклетка) и соматические. В каждой соматической клетке человека содержится 46 хромосом (23 пары). В каждой паре одна из хромосом получена от отца, а вторая - от матери. Об этом говорит сайт https://intellect.icu . Парные хромосомы отвечают за одинаковые признаки - например, родительская хромосома может содержать ген черного цвета глаз, а парная ей материнская - ген голубого цвета. Существуют определенные законы, управляющие участием тех или иных генов в развитии особи. В частности, в нашем примере потомок будет черноглазым, поскольку ген голубых глаз является "слабым" и подавляется геном любого другого цвета.
В половых клетках хромосом только 23, и они нечетные. При оплодотворении происходит слияние мужской и женской половых клеток и образуется клетка зародыша, содержащая именно 46 хромосом. Какие свойства потомок получит от отца, а какие - от матери? Это зависит от того, какие именно половые клетки участвовали в оплодотворении. Дело в том, что процесс выработки половых клеток в организме подвергается изменениям, благодаря которым потомки отличаются от своих родителей. В частности, происходит следующее: парные хромосомы соматической клетки сближаются вплотную, затем их нити ДНК разрываются в нескольких случайных местах и ​​хромосомы обмениваются своими частями (рис. 1).

Эволюционное моделирование и генетический алгоритм


Рис.1. Условная схема кроссинговера
Этот процесс обеспечивает появление новых вариантов хромосом и называется "кроссинговер" (в литературе по генетическим алгоритмам также употребляется название кроссовер или скрещивание). Каждая из новых хромосом появляется затем внутри одной из половых клеток, и генетическая информация может реализоваться в потомках данной особи.

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


задачи оптимизации

Эволюция - это процесс постоянной оптимизации биологических видов. Естественный отбор гарантирует, что наиболее приспособленные особи оказывают большее количество потомков, а благодаря генетическому наследованию часть потомков не только сохранит высокую приспособленность родителей, но будет иметь и некоторые новые свойства. Если новые свойства оказываются полезными, то с большой вероятностью они перейдут и в следующее поколение. Таким образом, происходит накопление полезных качеств и постепенное повышение приспособленности биологического вида в целом. Зная, как решается задача оптимизации видов в природе, можно применить похожий метод для решения различных реальных задач.
Задачи оптимизации - распространенный и важный для практики класс задач. Их приходится решать или в быту, распределяя свое время между различными делами, или на работе, добиваясь максимальной отдачи от прилагаемых усилий. Некоторые задачи легко решить, но есть и такие, точное решение которых найти практически невозможно.
Введем обозначения и приведем несколько классических примеров. Как правило, в задаче оптимизации можно управлять несколькими параметрами (x1, x2, ..., xn), целью является максимизация (или минимизация) определенной функции, f (x1, x2, ..., xn), зависит от этих параметров . Функция f называется целевой функцией.
Например, если нужно максимизировать целевую функцию "доход компании", тогда управляемыми параметрами будет число работников компании, объем производства, затраты на рекламу, цены на конечные продукты и т.д.. Эти параметры связаны между собой - например, при уменьшении числа сотрудников скорее всего упадет и объем производства.
Эффективным способом решения задач оптимизации являются генетические алгоритмы.
Известно два основных пути решения таких задач - преодолим и градиентный. Рассмотрим классическую задачу коммивояжера. Суть задачи состоит в нахождении короткого пути следования всех городов.
Преодолим метод является самым простым. Для поиска оптимального решения (максимум целевой функции) нужно последовательно вычислить значения функции во всех точках. Недостатком является большое количество вычислений.
Другим способом является градиентный спуск. Выбираем случайные значения параметров, а затем значение постепенно изменяют, достигая максимальной скорости роста целевой функции. Алгоритм может остановиться, достигнув локального максимума. Градиентные методы быстрые, но не гарантируют оптимального решения (поскольку целевая функция имеет несколько максимумов).
Генетический алгоритм представляет собой комбинацию переборного и градиентного методов. Механизмы кроссовера (скрещивания) и мутации реализуют переборную часть, а отбор лучших решений - градиентный спуск.
То есть, если на некотором множестве задано сложную функцию от нескольких переменных, тогда генетический алгоритм является программой, которая за определенное время находит точку, где значение функции находится достаточно близко к максимально возможному значению, это будет одним из лучших решений.


Работа генетического алгоритма


Представим себе искусственный мир, населенный множеством существ (особей), причем каждая особь - это некоторое решение задачи. Будем считать особь более приспособленной, чем лучше есть ее решение (чем больше значение целевой функции оно дает). Тогда задача максимизации целевой функции сводится к поиску наиболее приспособленной существа.
Конечно, нельзя поселить в виртуальный мир все существа сразу, поскольку их очень много. Вместо этого будем рассматривать многие поколения, сменяющих друг друга. Если применить естественный отбор и генетическое наследование, тогда полученное среда будет подчиняться законам эволюции. Согласно определению приспособленности, целью искусственной эволюции будет именно создание лучших решений.
Эволюция является бесконечным процессом, в ходе которого приспособленность особей постепенно повышается. Если принудительно остановить этот процесс за определенное время после его начала и выбрать наиболее приспособленную особь в текущем поколении, можно получить ответ не абсолютно точную, но близкую к оптимальной. Это общая идея генетического алгоритма.
Опишем работу генетического алгоритма более подробно.
Для того чтобы говорить о генетическом наследовании, нужно наделить особи хромосомами. В генетическом алгоритме хромосома - это числовой вектор, решению задачи. Какие векторы следует рассматривать в конкретной задаче, решает пользователь. Каждая из позиций вектора хромосомы называется геном. Ген отвечает за определенный входной параметр.
Простой генетический алгоритм случайным образом генерирует начальную популяцию решений. Работа генетического алгоритма является итерационным процессом, продолжается до тех пор, пока не выполнится заданное число поколений или другой критерий остановки. В каждом поколении генетического алгоритма реализуется отбор пропорционально приспособленности, одноточечный кроссинговер и мутация.
1 Сначала, пропорциональный отбор назначает каждой особи вероятность Ps (i), равной отношению ее приспособленности к суммарной приспособленности популяции:

Эволюционное моделирование и генетический алгоритм

Затем происходит отбор (с замещением) всех n особей для дальнейшей генетической обработки, в соответствии с величиной Ps (i).
При таком отборе члены популяции с высокой приспособленностью будут выбираться с большей вероятностью, чем особи с низкой приспособленностью. После отбора, n избранных особей случайным образом разбиваются на n / 2 пары. Для каждой пары с вероятностью Pc может применяться кроссинговер. Согласно с вероятностью 1-Pc кроссинговер не происходит и неизмененные особи переходят на стадию мутации. Если кроссинговер происходит, полученные потомки заменяют собой родителей и переходят к мутации.
2 кроссинговера - это операция, при которой из двух хромосом порождается одна или несколько новых хромосом. Одноточечный кроссинговер работает следующим образом. Сначала, случайным образом выбирается одна из l-1 точек разрыва (участок между соседними битами в строке).
Обе родительские структуры разрываются на два сегмента в этой точке. Затем, соответствующие сегменты различных родителей склеиваются и получаются два генотипа потомков.
Например, предположим, один родитель состоит из 10 нулей, а другой - с 10 единиц. Пусть из 9 возможных точек разрыва выбрана точка 3 Родители и их потомки показаны ниже.

Эволюционное моделирование и генетический алгоритм
После того как заканчивается стадия кроссинговера, выполняются операторы мутации.
3 Мутация - это преобразование хромосомы, которое случайно меняет одну или несколько ее позиций (генов). Распространенным видом мутаций является случайное изменение только одного гена с хромосомы.
В каждой строке, что подвергается мутации, случайный бит с вероятностью Pm изменяется на противоположный.
4 Популяция, полученная после мутации заменяет старую и цикл одного поколения завершается. Следующие поколения обрабатываются подобным образом: отбор, кроссинговер и мутация.


Блок-схема генетического алгоритма

Эволюционное моделирование и генетический алгоритм

Эволюционное моделирование и генетический алгоритм

Сначала генерируется начальная популяция особей (индивидуумов), т.е. некоторый набор решений задачи. Как правило, это делается случайным образом. Далее моделируется размножение внутри этой популяции. Для этого случайно отбирается несколько пар индивидуумов, происходит скрещивание между хромосомами в каждой паре, а полученные новые хромосомы воплощаются в популяцию нового поколения.
В генетическом алгоритме сохраняется основной принцип естественного отбора - чем приспособленным является индивидуум (чем больше соответствующее ему значение целевой функции), тем с большей вероятностью он будет участвовать в скрещивании.
Далее моделируются мутации - в нескольких случайно выбранных особях нового поколения изменяются некоторые гены. Старая популяция частично или полностью уничтожается и происходит обработка следующего поколения. Популяция следующего поколения в большинстве реализаций генетических алгоритмов содержит столько же особей, сколько начальная, но в силу отбора приспособленность в ней в среднем выше.
Теперь описанные процессы отбора, скрещивания и мутации повторяются уже для новой популяции.
Шаги алгоритма повторяются итеративно, моделируется «эволюционный процесс», продолжающийся несколько жизненных циклов (поколений), пока не будет выполнено критерий остановки алгоритма. Таким критерием может быть:

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

Генетические алгоритмы в основном предназначены для поиска решений в многомерных пространствах поиска.

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

  • Функциональная оценка сложных проблем, часто является фактором, ограничивающим использование алгоритмов искусственной эволюции. Поиск оптимального решения для сложной задачи высокой размерности часто требует больших затрат. В реальных задачах, таких как задачи структурной оптимизации, вычисления функциональной оценки требует от нескольких часов до нескольких дней.
  • Генетические алгоритмы плохо масштабируются под сложность решаемой проблемы. При увеличении области поиска решений увеличивается число элементов, подвергающихся мутациям. Это делает использование алгоритма чрезвычайно сложным.
  • Условия остановки алгоритма различны для каждой проблемы.
  • Во многих задачах генетические алгоритмы имеют тенденцию сходиться к локальному оптимуму или в спорных точек, вместо глобального оптимума для данной задачи. Это означает, что они "не знают", каким образом пожертвовать кратковременной высокой пригодностью для достижения долгосрочной годности.

эволюционная стратегия


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

Общая идея

Эволюционное моделирование и генетический алгоритм
Схема работы генетического алгоритма

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

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

Мутации и скрещивания

Эволюционное моделирование и генетический алгоритм
Функция, представленная в древовидной форме

Мутация — это случайное изменение «генотипа». В ГА и ЭС оператор мутации может быть реализован простым добавлением нормально распределенной случайной величины к каждой компоненте вектора. В ГП и ЭП эта операция сильно зависит от способа кодирования выращиваемых программ. Например, при древовидном кодировании (см. рисунок) она может быть осуществлена случайным изменением информации в узле или добавлением, удалением узла или целого поддерева.

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

Отбор (селекция)

На этапе отбора нужно из всей популяции выбрать определенную ее долю, которая останется «в живых» на этом этапе эволюции. Есть разные способы проводить отбор. Вероятность выживания особи h должна зависеть от значения так называемой функции приспособленности Fitness(h). Эта функция должна быть задана так, чтобы по ее значению на данном генотипе (векторе генов, результатам работы выращиваемой программы) можно было судить о степени успешности данного генотипа. Сама доля выживших s обычно является параметром генетического алгоритма, и ее просто задают заранее. По итогам отбора из N особей популяции H должны остаться sN особей, которые войдут в итоговую популяцию H'. Остальные особи погибают.

Модели возникновения молекулярно-генетических информационных систем

В начале 70-х годов лауреат Нобелевской премии М.Эйген совершил впечатляющую попытку построения моделей возникновения в ранней биосфере Земли молекулярно генетических систем обработки информации . Наиболее известная из них — модель «квазивидов», описывающая простую эволюцию полинуклеотидных (информационных) последовательностей. Вслед за Эйгеном в 1980 г. новосибирскими учеными В.Ратнером и В.Шаминым была предложена модель «сайзеров» .

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

Модель сайзера в простейшем случае рассматривает систему из трех типов макромолекул: полинуклеотидной матрицы и ферментов трансляции и репликации, кодированных этой матрицей. Полинуклеотидная матрица — это как бы запоминающее устройство, в котором хранится информация о функциональных единицах сайзера — ферментах. Фермент трансляции обеспечивает «изготовление» произвольного фермента по записанной в матрице информации. Фермент репликации обеспечивает копирование полинуклеотидной матрицы. Сайзеры достаточны для самовоспроизведения. Включая в схему сайзера дополнительные ферменты, кодируемые полинуклеотидной матрицей, можно обеспечить сайзер любыми свойствами, например свойством регулирования синтеза определенных ферментов и адаптации к изменениям внешней среды.

Применение в задачах функциональной оптимизации

Эволюционные вычисления (ЭВ) часто используются для организации стохастического поиска, особенно в случае многомодальных задач, когда детерминированные методы оптимизации или более простые стохастические методы не позволяют исследовать поведение целевой функции вне областей локальных оптимумов. Методы ЭВ не гарантируют обнаружения глобального оптимума за полиномиальное время. Практический интерес к ним объясняется тем, что эти методы, как показывает практика, позволяют найти более хорошие (или «достаточно хорошие») решения очень трудных задач поиска за меньшее время, чем другие, обычно применяемые в этих случаях, методы. Типичное ограничение на их применение заключается в необходимости (для построения хорошего решения) многократного вычисления целевой функции (под словом «многократно» обычно подразумеваются числа от сотен до миллионов). Тем не менее, методы ЭВ оказались достаточно эффективными для решения ряда реальных задач инженерного проектирования, планирования, маршрутизации и размещения, управления портфелями ценных бумаг, поиска оптимальных энергетических состояний химических и молекулярных структур, а также во многих других областях, допускающих подходящий набор представлений, операторов, объемов и структур популяций и т. д.

Эволюционное моделирование как исследовательский метод в информатике

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

Роевой интеллект (англ. Swarm intelligence) описывает коллективное поведение децентрализованной самоорганизующейся системы. Рассматривается в теории искусственного интеллекта как метод оптимизации. Термин был введен Херардо Бени и Ван Цзином в 1989 году, в контексте системы клеточных роботов . Системы роевого интеллекта, как правило, состоят из множества агентов (Многоагентная система) локально взаимодействующих между собой и с окружающей средой. Сами агенты обычно довольно просты, но все вместе, локально взаимодействуя, создают так называемый роевой интеллект. Примером в природе может служить колония муравьев, рой пчел, стая птиц, рыб…

Коллективный интеллект — термин, который появился в середине 1980-х годов в социологии при изучении процесса коллективного принятия решений. Исследователи из NJIT определили коллективный интеллект как способность группы находить решения задач более эффективные, чем лучшее индивидуальное решение в этой группе.

Социологическое направление — поскольку человеческое общество представляет собой реальный, к тому же хорошо поддающийся наблюдению и задокументировнный (в отличие от человеческого мозга), инструмент обработки информации, социологические метафоры и реминисценции присутствуют в работах по кибернетике и смежным направлениям с самого их возникновения. Если роевой интеллект ориентирован на получение сложного поведения в системе из простых элементов, этот подход, наоборот, исследует построение простых и специальных объектов на базе сложных и универсальных: «государство глупее, чем большинство его членов»[10]. Для этого направления характерно стремление дать социологическим понятиям определения из области информатики. Так в[11] элита определяется как носитель определенной частной модели реального мира, а базис (то есть народ) играет роль арбитра между элитами. Эволюционный процесс заключается в порождении и гибели элит. Базис не в состоянии разобраться в сути идей и моделей, представляемых элитами, и не ставит перед собой такой задачи. Однако, именно в силу своей невовлеченности сохраняет способность к ясной эмоциональной оценке, позволяющей ему легко отличать харизматические элиты от загнивающих, пытающихся сохранить свои привилегии, понимая, что их идея или модель не подтвердилась.

Применение генетических алгоритмов


Генетические алгоритмы применяются для решения следующих задач:

  • Оптимизация функций
  • Оптимизация запросов в базах данных
  • Разнообразные задания на графах (задача коммивояжера)
  • Составление расписаний
  • Игровые стратегии
  • Теория приближений
  • Искусственная жизнь
  • Биоинформатика

Вау!! 😲 Ты еще не читал? Это зря!

Статью про эволюционное моделирование я написал специально для тебя. Если ты хотел бы внести свой вклад в развитие теории и практики, ты можешь написать коммент или статью отправив на мою почту в разделе контакты. Этим ты поможешь другим читателям, ведь ты хочешь это сделать? Надеюсь, что теперь ты понял что такое эволюционное моделирование, генетический алгоритм и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Эволюционные алгоритмы

создано: 2014-09-07
обновлено: 2021-12-03
133379



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей



Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Эволюционные алгоритмы

Термины: Эволюционные алгоритмы