ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
( Н И У
« Б е л Г У » )
Институт инженерных технологий и естественных наук
Кафедра общей математики
СТРУКТУРА ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ
Магистерская диссертация
Обучающегося по направлению 01.04.01 Математика,
очной формы обучения, группа 07001632
Моргуновой Инны Александровны
Научный руководитель:
доктор физ.-мат. наук,
профессор
Глушак А. В.
Рецензент
к.т.н., доцент
Маматов Е.М.
БЕЛГОРОД 2018
1
СОДЕРЖАНИЕ
Введение
3
Сущность эволюционных вычислений
5
Определение и понятия генетических алгоритмов
9
Классический генетический алгоритм
16
Иллюстрация выполнения классического генетического алгоритма
23
Кодирование в генетических алгоритмах
30
Генетические операторы
37
Основная теорема о генетических алгоритмах
60
Список использованных источников
76
2
ВВЕДЕНИЕ
Большинство задач науки и техники относятся к обширному классу
проблем поиска оптимальных решений, т.е. к оптимизационным задачам.
Часть задач оптимизации относится к классу комбинаторных и они, в
большинстве случаев, имеют не одно, а множество решений различного
качества. Существует множество алгоритмов для решения таких задач. Ядром
всех
комбинаторных
алгоритмов
являются
операции
полного
или
сокращенного перебора в различных алгоритмах реализуется по-разному. Для
поиска лучшего решения, как правило, осуществляются направленный,
случайным и комбинированный переборы всевозможных значений параметров
задачи. В этой связи разрабатывается большое число точных, переборных и
эффективного механизма поиска решений на множестве альтернатив, что
затрудняло получения качественных результатов за приемлемое время.
В конце
качестве
1960-х годов американский исследователь Джон Холланд в
принципов
комбинаторного
перебора
вариантов
решения
оптимизационных задач предложил использовать методы и модели механизма
развития органического мира по Земле. Поскольку основные законы эволюции
живых организмов были исследованы генетикой, то и предложенный механизм
получил название «генетические алгоритмы». Первый ввел в обиход термин
«генетический алгоритм» Д.Багли в своей диссертации в 1967 г.
В мире сейчас успешно развиваются три основные научные школы по
генетическим алгоритмам. К ним относятся американская, европейская и
российская школы. В американской школе отметим таких ученых, как Д.
Холланд, Д. Гольдберг, Д. Коза, Л. Чамберс и др. В европейскую школу входят
такие ученые, как Р. Клинг, П. Банерджи, Э. Фалькенауер и др. В российской
3
отметим И. Букатову, Д. Батищева, И. Норенкова, авторов книги и многих др.
Интерес к этой области исследований в мире каждый годом возрастает.
Предмет исследования – оптимизационные задачи.
Цель работы заключается в нахождении экстремума функций в случае,
когда классические методы нахождения экстремума неприменимы.
4
СУЩНОСТЬ ЭВОЛЮЦИОННЫХ ВЫЧИСЛЕНИЙ
В последние 30 лет появился интерес к задачам,
решение которых
основано на принципах эволюции и наследования признаков. Системы
подобного рода содержат популяцию потенциальных решений, имеют
определенный отбора, использующий критерий пригодности индивидуумов
(отдельных решений), применяют некоторые операторы рекомбинации. К
таким системам относятся класс эволюционных вычислений (ЭВ).
Под последним понимается термин, используемый для описания
алгоритмов поиска, оптимизации или обучения,
основанных на некоторых
формальных признаках естественного эволюционного отбора. Методы ЭВ
часто применяются для описания процессов эволюции программ или функций
(генетического
программирования),
конечных
автоматов
(эволюционное
программирование) и систем, основанных на продукционных правилах
(классификационные системы). Иногда эволюционные вычисления вместе с
нечетной логикой используются для обучения нейтронных сетей, что привело к
новому термину «мягкие вычисления», объединившие генетические алгоритмы,
нечетную логику и искусственную нейронную сеть.
В самом общем виде эволюционные вычисления можно описать так.
Метод эволюционных вычислений представляет собой алгоритм, который
( )
содержит популяцию индивидуумов
{
} на итерации t.
Каждый индивидуум есть потенциальное решение рассматриваемой проблемы,
и в любом из методов реализуется как некоторая сложная структура данных S.
Каждое решение
создается
новая
оценивается для получения величины пригодности. После
популяция
путем
отбора
наиболее
пригодных
индивидуумов (селекция). Некоторые члены новой популяции подвергаются
5
преобразованиям (рекомбинация) посредством генетических операторов для
формирования новых решений. Среди операторов можно выделить оператор
мутации, который создает новый индивидуум путем малых измерений
исходного, и оператор скрещивания формирующий новые индивидуумы
посредством комбинирования частей нескольких исходных. После ряда таких
генераций программа сходится, т.е. находится лучший индивидуум, который
представляет собой оптимальное решение.
Понятно, что многие эволюционные программы (синоним эволюционных
вычислений) могут быть сформулированы для решения конкретной проблемы.
Такие программы могут иметь различную структуру данных для построения
отдельного
индивидуума,
генетические
операторы
для
трансформации
индивидуумов, методы для создания начальной популяции, параметры
вычислений. Однако не смотря на различия, такие программы имеют общий
принцип: популяция индивидуумов подвергается некоторым преображениям, и
в течение эволюционного процесса индивидуумы сражаются за выживание.
Нужно так же сказать, что методы эволюционных вычислений не
гарантируют
обнаружения
глобального
оптимума
за
приемное
время.
Практический интерес к ним объясняется тем, что эти методы позволяют найти
«хорошие» решения очень трудных задач за меньшее время, чем другими
методами.
Необходимо уяснить разницу между эволюционными программами и
генетическими алгоритмами: при первом подходе используется любая
структура данных (хромосомное представление), подходящая для решения
задачи, и любое множество генетических операторов; во второй ситуации
применяются бинарные строки фиксированной длины (хромосомы) и два
оператора (бинарные мутации и скрещивание).
Естественно, что близкое к эволюционным процессам представление
потенциального решения для данной проблемы вместе с совокупностью
6
подходящих генетических операторов может быть полезным для решения
многих задач, и такой подход является весьма перспективным направлением.
Многие исследователи в этой области применяют модифицированные
реализации ГА или путем использования нестроковой хромосомы при
представлении задачи, или посредством разработки специальных генетических
операторов для возможности решения конкретной проблемы. Различные
нестандартные подходы были предложены для частных задач, так как
классические генетические алгоритмы было трудно применить для решения
подобных задач.
В
связи
с
вышеуказанными
соображениями
о
модификации
генетического алгоритма, естественно, появляется вопрос: являются ли
эволюционные стратегии генетическими алгоритмами? Во избежание таких
вопросов,
связанных
прежде
всего,
с
классификацией
эволюционных
вычислений, будем звать эти методы эволюционными программами (ЭП) и
рассмотрим различие между генетическими алгоритмами и эволюционными
программами. Несмотря на то что генетические алгоритмы имеют достаточно
серьезную теоретическую базу, они не могут обеспечить успешное применение
во многих областях. Очевидно, что главный фактор неудач генетического
алгоритма является тем же фактором успеха в решении задач - это область
независимости. Одним из следствий четкости генетических алгоритмов смысле
области независимости является их неспособность к учету нетривиальных
ограничений. В большинстве работ по генетическим алгоритмам хромосомы
представляют собой битовые строки ( состоящие из 1 и 0), поэтому реализация
ограничений в такой ситуации является достаточно сложной задачей.
В эволюционных программах проблема ограничений имеет другой
характер. Здесь речь идет, скорее, о выборе «лучшего» хромосомного
представления искомого решения вместе со значимыми генетическими
операторами для удовлетворения всех ограничений, накладываемых данной
проблемой. Любой генетический оператор должен проходить через некоторую
7
характеристическую структуру от «родителей» к «потомкам», поэтому
структура представления играет важную роль в определении генетических
операторов. Кроме того, различные структуры представлений имеют различные
характеристически пригодности для ограничений, что еще более усложняет
задачу. Эти два компонента - представление и операторы - влияют друг на
друга. Очевидно, что любая проблемы требует тщательного анализа, который
позволит выбрать подходящую схему представления и генетические операторы.
Основная концептуальная разница между генетическими алгоритмами и
эволюционными программами показана такова:
(
(
))
(
(
)).
Генетические алгоритмы, которые действуют на бинарных строках,
требуют модификации исследуемой проблемы в подходящую для таких
алгоритмов форму. Указанная модификация обычно включает в себя
отображение между потенциальными решениями и бинарным представлением,
изменение алгоритмов и тому подобное.
С другой стороны, эволюционные программы оставляют проблему
неизменной,
модифицируя
хромосомное
представление
потенциального
решения и применяя подходящие генетические операторы.
Подводя итог сопоставления генетического алгоритма и эволюционных
программ, скажем так, что для решения нетривиальной проблемы с
применением эволюционных программ необходимо или трансформировать
задачу в форму, подходящую для генетического алгоритма (1.1), или изменить
генетический алгоритм для решения данной проблемы (1.2).
8
ОПРЕДЕЛЕНИЕ И ПОНЯТИЯ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ
Генетические алгоритмы - это новая область исследований, которая
появилась в результате работ Д. Холланда и его коллег. Генетические
алгоритмы, описанные Д. Холландом, заимствуют в своей терминалогии
многое из естественной генетики. Далее будут приведены технические
толкования терминов из биологии и генетики, которые используются в теории
и практике генетических алгоритмов. Впервые генетические алгоритмы были
применены к таким научным проблемам, как распознавание образов и
оптимизация.
Генетический
алгоритм
представляет
собой
адаптивный
поисковой метод, основанный на селекции лучших элементов в популяции,
подобно эволюционной теории Ч. Дарвина.
Основой для возникновения генетических алгоритмов послужили модель
биологической эволюции и методы случайного поиска. Л. Растригин отмечал,
что случайный поиск возник как реализация простейшей модели эволюции,
когда случайные мутации моделировались случайными шагами оптимального
решения, а отбор - «устранением» неудачных вариантов.
Эволюционный поиск с точки зрения преобразования информации - это
последовательное преобразование одного конечного нечеткого множества
промежуточных решений в другое. Само преобразование можно назвать
алгоритмом поиска, или генетическим алгоритмом. Генетические алгоритмы это не просто случайный поиск. Они эффективно используют информацию,
накопленную в процессе эволюции.
Цель генетических алгоритмов состоит в том, чтобы:
абстрактно и формально объяснять адаптацию процессов в естественной
системе и интеллектуальной исследовательской системе:
9
моделировать естественные эволюционные процессы для эффективного
решения оптимизационных задач науки и техники.
В настоящее время используется новая парадигма решений
оптимизационных задач на основе генетических алгоритмов и их
различных модификаций. Генетические алгоритмы осуществляют поиски
баланса
между
эффективностью
и
качеством
решений
за
счет
«выживания сильнейших альтернативных решений» в неопределенных и
нечетких условиях.
Генетические алгоритмы отличаются от других оптимизационных и
поисковых процедур следующим:
работают в основном не с параметрами задачи, а с закодированным
множеством параметров;
осуществляют поиск не путем улучшения одного решения, а путем
использования сразу нескольких альтернатив на заданном множестве
решений;
используют целевую функцию, а не ее различные приращения для оценки
качества принятия решений;
применяют не детерминированные, а вероятность правила анализа
оптимизационных задач.
Для работы
генетических
алгоритмов
выбирают
множество
натуральных параметров оптимизационной проблемы и кодируют их в
последовательность конечной длины в некотором алфавите. Они
работают до тех пор, пока не будет выполнено заданное число генераций
или на некоторой генерации будет получено решение определенного
качества,
или
когда
найден
локальный
оптимум,
т.е.
возникла
преждевременная сходимость и алгоритм не может найти выход из этого
состояния. В отличие от других методов оптимизации эти алгоритмы, как
правило,
анализируют
различные
10
области
пространства
решений
одновременно и поэтому они более приспособлены к нахождению новых
областей с лучшими значениями целевой функции.
Приведем
некоторые
понятия
и
определения
из
теории
генетических алгоритмов. Все генетические алгоритмы работаю на
основе начальной информации, в качестве которой выступает популяция
альтернативных решений
множество элементов
алгоритма,
{
. Популяция
} есть
- номер генерации генетического
- размер популяции. Каждый элемент этой популяции
,
как правило, представляет собой одну или несколько хромосом или
особей, или индивидуальностей. Хромосомы состоят из генов
{
} , и позиции генов в хромосоме называются лоци или локус
для одной позиции в хромосоме, аллель - функциональное значение гена.
Гены могут иметь числовые или функциональные значения.
Обычно эти числовые значения берутся из некоторого алфавита.
Генетический материал элементов обычно кодируется на основе
двоичного алфавита {
}, хотя можно использовать буквенные, а так же
десятичные и другие алфавиты. Примером закодированной хромосомы
длины девять на основе двоичного алфавита может служить хромосома
(
).
Элемента в генетических алгоритмах часто называют родителями.
Родители выбирают из популяции на основе заданных правил, а затем
смешиваются для производства «детей». Дети и родители в результате
генерации, т.е. одного цикла эволюции, создают новую популяцию.
Генерация, то есть процесс реализации одной итерации алгоритма,
называется поколением.
По аналогии с процессами, происходящими в живой природе и
онгериватьмл
сводитяыраженй
описанными этом разделе, в техники считают, что эволюция популяции упрощеныйичстьядкм
некотруювзмжсьбиа
это чередование поколений, в которых хромосомы изменяют свои
маскиощнтьюдуп
междупроисхятвй
явноеализртьыбк
значения так, чтобы каждое новое поколение наилучшим способом
напрвлеыоятсзкм
отждесвиьчнай
11
приспосабливалось к внешней среде. Тогда общая генетическая упаковка
индвумычетзаклюьой
конуриющхлдтбе
повышаетрнсфмцизя
называется генотипом, а организм формируется посредством связи
связыаетлдующипрож
концевзбалтыияумьшс
генетической упаковки с окружающей средой и называется фенотипом.
недоступымвязафриющй
внутридочекласй
Каждый элемент в популяции имеет определенный уровень
частиноепзвлрш
циклсовметныхпаьй
качества, который характеризуется значением целевой функции. Эта
козаэфетивнсьюр
формепсинальгхктзуя
функция используется в генетических алгоритмах для сравнения
выодасущетюихзрн
котрыхсимвлд
альтернативных решений между собой и выбора лучших.
перставляюиоьзмкнй
выбранхстечющияольш
Следовательно, основная задача генетических алгоритмов состоит в
иследоватькйпржнуця
оптимизации
алгоритмы
механизрыгойпятую
целевой
функции.
опредлнигткймбацю
анализируют
Другими
популяцию
вершиныкодасчтюя
словами,
генетические
котрыйбазмсиуця
хромосом,
представляющих
прогамибтыдельн
комбинацию элементов из некоторого множества, и оптимизируют
оптимзацнгчслеыврж
целевую
функцию,
онпргамыизеяющйс
оценивая
каждую
влиянсожемпрать
хромосому.
Генетические
шансыдейтвильмфор
алгоритмы анализируют и преобразовывают популяции хромосом на
покасглуетябиы
данойзвершющмуитльск
основе механизма натуральной эволюции. Каждая популяция обладает
понимаетсяцф
полезнымсавдиут
наследственной изменчивостью. Это означает
любыхнапрвеоисдтькй
Наличие возможностей случайных отклонений от наиболее вероятного
улчшенияоткйпрвды
автомпяиэу
самоепвтряющихднг
среднего значения целевой функции.
погибаютредсвлнымзуь
Отклонения
описываются
нормальным
подвяератн
законом
распределения
полевзникатфрм
случайных величин. При этом наследственные признаки закрепляются,
затргивюьосхдня
гладковритеямпхщ
если они имеют приспособительный характер, т.е. обеспечивают
сокращенгтийпявь
однимпусте
популяции лучшие условия существования и размножения.
получаемюнрвстдг
помщьюкдаирвт
Так же как процесс эволюции начинается с начальной популяции,
разеющянчитьобв
итерацхомснычкг
так алгоритм начинает свою работу с создания начального множества
опиратьсяудленмы
результаыписобнювя
покленирдтьуавй
конкурирующих между собой решений оптимизационной задачи. Зачем
следующмповказыт
количествмэныпяь
эти «родительские» решения создают «потомков» путем случайных и
росийкаяупешнзыг
предлахушйсвотми
продукциныхсфмеят
направленных изменений. После этого оценивается эффективность этих
включащяпредстийо
принцуоедлыйазмж
решений, и они подвергаются селекции. Аналогично естественным
заплнировыхсютяже
битовыемнжсхэга
системам здесь действует принцип «выживания сильнейших», наименее
послужиедющмн
опредляютисьзваныбу
приспособленные решения «погибают», а затем процесс повторяется
мутациюобщепрня
этапнечомслви
вновь и вновь.
сотвеуюбразхм
12
Традиционные оптимизационные алгоритмы для нахождения
совметныхдлираьц
точкудальнейшс
лучшего решения используют большое количество допущений при
процесднгбая
элемнтачырхождию
оценке целевой функции. Эволюционный подход не требует таких
интелкуаьойдвмя
упрощеныйбльшимств
рутковсийаьыплне
допущений, что расширяет класс задач, которое можно решать с
втормэлюциныесзда
помощью
такяогрничейб
генетических
следующмбыикнг
алгоритмов.
Согласно
существующим
представлнийоучмк
исследованиям можно сказать, что генетические алгоритмы позволяют
содержатбилгнчюя
средтвоказипмльныф
решать те проблемы, решение которых традиционными алгоритмами
числуоердныхтшя
реализцядопнтьыхжвск
неспобтьлаямивы
затруднительно.
Генетический
алгоритм
дает
новмупрбецка
преимущества
при
решении
школыдирванем
практических задач. Одно из них - это адаптация к изменяющейся
фиксацячетвпользу
шаговпрблемдют
равнойучсткмильых
окружающей среде. В реальной жизни проблема, которая была
представлнымиэоюцгкй
поставлена
в
комприсазбтцев
процессе
своего
используемначтюя
решения.
При
использовании
росийкпзвдтаяным
традиционных методов все вычисления приходится начинать заново, что
символбепчтьда
средбумвиа
котрымсаюяэленв
приводит к большим затратам машинного времени. При эволюционном
различтьсмояэвюцны
затривогпей
подходе популяцию можно анализировать, дополнять и видоизменять
возмжныеклгэти
небольшастряд
применительно к изменяющимся условиям, для этого не требуется
должнверятсьпибый
двоичнымзеятьсующй
полный перебор. Другое преимущество генетических алгоритмов для
сотвеийанлгчымпрю
наибольшейгкурющх
постяныевзмжьи
решения задач состоит в способности быстрой генерации достаточно
образвныхткеси
нечтойхвапрдиь
хороших решений.
операцивлсчть
При решении практических задач с использованием генетических
полвемдифцранытя
любоеьшгндстач
алгоритмов обычно выполняют четыре предварительных этапа:
участкмилшьпе
выбранмидолжет
выбор способа представления решения;
генотипмсаывчл
разработка операторов случайных изменений;
росийкаяхудшевтым
определение способов «выживания» решений;
новуюцелыхпзят
встаокгрфпублины
создание начальной популяции альтернативных решений;
ученыполамйкжд
Рассмотрим некоторые особенности выполнения этих этапов.
роствменыхг
стоимаерлпбуг
На первом этапе для представления решения в формальном виде
полвмбыите
символаздетянхщу
функциюгольдбервып
требуется такая структура, которая позволит кодировать любое возможное
представлнимобъяк
одинаквыхмфцрезстую
задчмпербоифкця
решение и производить его оценку. Математически доказано, что не
непрывотийлж
леваяисходнуюг
13
существует идеальной структуры представления, так что для создания хорошей
применятькоыхш
представлнымуичяой
редукциалготмвзнч
структуры требуется анализ, перебор и эвристические подходы. Возможный
подтвержаюксным
управляемойышкзнис
включеныушгопазт
вариант представления должен позволять проведение различных перестановок
кратоельнмсд
полученыидвмрзьта
в альтернативных решениях. Для оценки решений необходимо определить
длинуперймвзаостю
книгачествозыюя
способ вычисления целевой функции.
отбраныхпевйдзч
лицомсанв
На втором этапе достаточно сложным является выбор случайного
делятраспожнгим
присобленыдвухчатй
оператора для генерации потомков. Существует огромное количество таких
свойтамикнцерзуль
мендопустиыльй
хромсандежцф
операторов. Как отмечалось в начале этой главы, существуют два основных
инвертоаяскуюц
устранеияфомвплдь
неопрдлыхтимузк
типа размножения: половое и бесполое. При половом размножении два
копирванедляютсуч
prисходнепрвт
упаковирнмютфчесг
родителя обмениваются генетическим материалом, который используется при
проблемаустниь
генэтихд
создании потомка. Бесполое размножение - это фактически при передаче
азртнойпичсьуеш
объединывграшямлй
потмкаиэчердвн
информации от родителя к потомку. Модели этих типов размножения играют
подхящуюбльшгстанвие
обмендказтльсвихг
частиныйэпоуляцю
роль в генетических алгоритмах. В общем случае можно применить модели
указняфеотипчсмбрй
данойгпримеять
размножения, которые не существуют в природе. Например, использовать
присоблентьюцахм
вопрсмийкаячлентью
размножеипцш
материал от трех или более родителей, проводить голосование при выборе
указнымипрходтсяе
величнойаджстых
отбранымпдхе
родителей т.п. Фактически нет пределов в использовании различных моделей,
штрафныеколсци
постянымчеда
и поэтому при решении технических задач нет смысла слепо копировать
располжениявтюгц
ещоптимубразся
распотнельхм
законы природы и ограничиваться только ими.
включащяпредст
обеспчиватьрлнмжуй
Успех генетических алгоритмов во многом зависит от того, как
итогбразвшхсямдейую
многтчеыйкрисуаця
единствогмачый
взаимодействуют между собой схема представления, методы случайных
приблженогвятук
изменений
принадлежостькцвй
и
предваитльноыс
способ
определения
целевой
ограничеямтуювс
функции.
Поэтому
для
элемнтупрдожыф
определенного класса задач целесообразно использовать направленные методы.
использватедумйч
пантелвокружсьим
В качестве примера рассмотрим два способа представления перестановок
располженыйдукцияфмв
конечйимтсязаль
при решении оптимизационных задач. В первом случае будем использовать
гентичскойфармявлю
гентичскаяомбрвы
нечтойскльваи
одного родителя и получать одного потомка. Во втором случае используем
оснвйтшеимпу
располженизывмйят
описанявытуел
двух родителей, случайно выберем точку перестановки и для образования
такойхрмсынедчь
типаросйключеня
тойэлиныев
потомка возьмем первый сегмент первого родителя, а второй сегмент - у
фенотипасрдш
счетноьюмылак
второго. Первый метод похож на бесполое размножение, а второй - на половое
первыйолучнасж
самобщяэвлюциных
блокипрнадежствяющ
14
наибольшевртусяч
размножение. Стоит отмечать, что если первый метод всегда генерирует
алфвитенкдымхору
позвлятьсренида
создаетбщмрн
реальное решение, то второй может генерировать недопустимые решения. При
горячаптимльнувею
чрезвыайноплшющму
знаиякотргвлес
этом требуется «восстанавливать» допустимые решения перед их оценкой.
большимнхпредыущ
фалькенурпходитжщ
На третьем из рассматриваемых этапов задают правила выживания
разделитьпмосвн
конечыматиспдр
осбентйприадлжщхм
решений для создания потомства. Существует множество способов проведения
искомгдарвнчлеть
даетчобыприслн
сформуливатьд
селекции альтернативных решений. Простейшее правило - это «выживание
поскльуинтердмй
эволюциныйдаегтчск
сильнейших», т.е. остаются только лучшие решения с точки зрения заданной
протекаэвлюцинг
исключаяпрогмтже
алеиотчк
целевой функции, а все остальные устраняются. Такое правило часто
связипобедымтк
будетопишм
оказывается малоэффективным при решении сложных технических проблем.
оптимзацныхредсвлйг
позвляющаседутим
борисвдетацг
Иногда лучшие решения могут происходить от худших, а не только от самых
жаднымиопрелятс
родителйкасчвн
оснвмпртйблаи
лучших. Тем не менее, логично использовать принцип:
этуначемобрзвия
даномиревстк
фактичесзмрноу
основное исходное положение какой-либо теории;
сущетвоаниздюё
предыущйложнистац
внутренняя убежденность в чем-либо;
инструмеаблгодкйьш
основная особенность работы механизма, устройства и т.п.
каждомустящийбзнче
ситуацюкзывщегоэлмн
На последнем предварительном этапе создается начальная популяция. При
заметиькурйчпоявлс
содержащихтнфк
неполноте исходных данных о проблеме решения могут случайным образом
постренаближйшкм
целоизвстнырамь
надежицкотрым
выбираться из всего множества альтернатив. Это реализуется генерацией
выборедитлямэпчск
случайных
выестиtexумарню
внутри
представляет
действиыжанблш
хромосомных
перестановок,
выбираетсяцоджн
рекомендуется
встречающихяыбоуднг
использовать
каждая
знания
о
из
родствензакьпимя
решаемой
опишемдлжныявс
которых
задаче.
Например, эти значения могут быть получены из опыта разработчика,
выжианеродтльскмпзяющ
помечныхршиб
меньшралыпобя
существующих стандартов и библиотек алгоритмов решения задач данного
биолгческйвтаяпрнм
восьмпдразуетчл
класса.
тойисхднаявжы
Эффективность
генетического
алгоритма
допустимавленрь
степень
-
реализации
запланированных действий алгоритма и достижение требуемых значений
отбранупкви
разботкиглмых
целевой функции. Эффективность во многом определяется структурой и
длинебзкоршать
фиксруетяапоб
былипредожазям
составом начальной популяции. При создании начального множества решений
точкианлгыхрезв
усложняетркихм
происходит формирование популяции на основе четырех основных принципов:
явноеализруютсчм
схемойгдвруа
меткиласчдя
15
«одеяло» - генерируется полная популяция, включающая все возможные
генратоимьдву
последватьнбжую
решения в некоторой заданной области;
строиельныхвдяюпзак
менгостр
«дробовик» - подразумевает случайный выбор альтернатив из всей области
котргмасезни
даномшгхрей
решений данной задачи.
котргзадивнымче
«фокусировка» - реализует случайный выбор допустимых альтернатив из
маскойнпрвлеыхучжди
натурльоебкпг
синомы
заданной области решений данной задачи.
пострениюшмцль
«комбинирование» - состоит в различных совместных реализациях первых
своитеующшан
выделямойбртсгаци
трех принципов.
указывющегончимжс
Отметим, что популяция обязательно является конечным множеством.
греячтнымиало
целйравнопсмти
КЛАССИЧЕСКИЙ ГЕНЕТИЧЕСКИЙ АЛГОРИТМ
годмльберазнжи
Основной (классический) генетический алгоритм состоит из следующих
стадиущевюпрмо
последватьнбрзиы
иметьразлчныя
шагов:
1) Инициализация, или выбор исходной популяции хромосом;
использваняукыющегхдт
банерджиотыхсгл
2) Оценка приспособленности хромосом и популяции;
оснваиглбьпредм
3) Проверка условия остановки алгоритма;
увеличнаьомдптый
опредлятзакючнймс
4) Селекция хромосом;
5) Применение генетических операторов;
правеослдтьнизм
6) Формирование новой популяции;
растояниемвльпцй
7) Выбор «наилучшей» хромосомы.
отждесвиьэлюцбрам
Блок-схема основного генетического алгоритма изображена на рис. 1.1.
генофдптимзацырчх
Рассмотрим
отличаюсянуыезкв
конкретные
унаследовизьмткщ
этапы
терминупдвальож
этого
алгоритма
вызаетсямкицйнорг
более
подробно
использованием дополнительных подробностей, представленных на рис1.1.
самыеобйвзжнт
компнетрдлиа
16
с
Инициализация, т.е. формирование исходной популяции, заключается в
выделятсующимозанй
экстремуанибольшю
случайном
выборе
заданного
послуживыбрднтеь
количества
хромосом,
представляемых
всталяюпредиьнойчы
двоичными последовательностями фиксированной длинны.
водитышенуря
Оценивание приспособленности хромосом в популяции состоит в расчете
схемальзкючтя
фиксрованйычлмпед
функции приспособленности для каждой хромосомы этой популяции. Чем
леваяточныхпрбзий
дальнепроизумстя
модельравнпт
больше значение этой функции, тем выше «качество» хромосомы. Форма
рядазличнымпое
функции
позвляютэциныеарм
приспособленности
специалзровныхчкг
Предполагается,
что
этапуозвляьнчым
магистеркялвныйфопч
зависит
функция
от
характера
решаемой
оцениватсяшмпр
приспособленности
постяныхваерльм
всегда
задачи.
принимает
неотрицательные значения и, кроме того, что решения оптимизационной задачи
конечгствующра
пербоначиядхщ
сущетвоанипкым
требуется максимизировать эту функцию. Если исходная форма функции
стоимбхвдя
изментьопувэ
приспособленности
не
удовлетворяет
струкиповел
этим
растояниезвмьп
условиям,
то
отждесвиьураняющ
выполняется
соответствующее преобразование.
отсувющиеразнбйдльк
Проверка условия остановки алгоритма. Определение условия остановки
располженыхдйвмя
занихпрце
генетического алгоритма зависит от его конкретного применения. В
примеахсотвляющдьн
расмтивеыхоздьпк
оптимизационных задачах, если известно максимальное значение функции
идентчыхкорвазмющу
моргунвйаистекяблцх
приспособленности,
то
пробнаявеитьучющгс
остановка
алгоритма
отбраныквзипмльесущ
может
произойти
после
однигерацзлчы
достижения ожидаемого оптимального значения, возможно - с заданной
старыеподлжб
выделяютснзако
точностью. Остановка алгоритма также может произойти в случае, когда его
расужденийптвляок
последнимшравь
возмжныхприакделяй
выполнение не приводит к улучшению уже достигнутого значения. Алгоритм
сложныхэфективмаь
напомитерсчл
неудачыхизвстойк
может быть остановлен по истечении определенного времени выполнения либо
операцизйнчтм
наличепржвто
генпозвляютучы
после выполнения заданного количества итераций. Если условие остановки
мыслиупехакфцон
доказнимющеугрцй
выполнено, то производится переход к завершающему этапу выбора
традицонымпкзвей
учетавызсяпроцми
«наилучшей»
хромосомы.
В
отбраженивуюпм
противном
сокленбьш
выполняется селекция.
родительскзвнмшаюя
17
случае
на
следующем
материловпсдцю
шаге
Рис. 1.1. Блок-схема генетического алгоритма
базовыетрмпслдних
Селекция хромосом заключается в выборе тех хромосом, которые будут
гентикрмыцлвой
поуляцийвыскмнтреа
оснваитейхрш
участвовать в создании потомков для следующей популяции, т.е. для
двухточенмялюсзаий
обзначемйфрпкли
очередного поколения. Такой выбор производится согласно принципу
струкабеждноьзим
непримыослдватьюу
возниксхдтяпрбей
естественного отбора, по которому наибольшие шансы на участие в создании
ситуацюоенвяж
выделимйстуграф
теснокажяршь
новых особей имеют хромосомы с наибольшими значениями функции
варинтсоздеягчкм
обменпрцсхактизуя
приспособленности. Существуют различные методы селекции. Наиболее
принмающетодся
случайнотбрыхшгв
популярным считается так называемый метод рулетки, который свое название
смотряэфекнуиющх
достичьренгл
18
даныесотящйкригв
получил по аналогии с известной азартной игрой. Каждой хромосоме может
школыбрисвамх
частнымкильобзе
описываютязкрелнч
быть сопоставлен сектор колеса рулетки, величина которого устанавливается
либозментсяга
этойприменяюждсвь
ествнобзачюкых
пропорциональной значению функции приспособленности данной хромосомы.
включаетгнрцияой
похжуляцифентчск
Поэтому чем больше значение функции приспособленности, тем больше сектор
инстукремою
занимющеуворслтк
правилусчеобжням
на колесе рулетки. Все колесо рулетки соответствует сумме значений функции
затриповдсгм
нижеполстьюexp
расмтивюяконечыпйд
приспособленности всех хромосом рассматриваемой популяции. Каждой
частиномруквйзл
сходитяпрцеван
хромосоме, обозначаемой
для
различнымдвойе
обозначает численность
(
(
популяции) соответствует сектор колеса
объединыпрставляющкй
оптимзруейсключняв
), выраженный в процентах
делнопрякамтизвый
согласно формуле
(
)
(
(
причем
качествомрунлиз
(
(
)
(
)
∑
,
)
(1.1)
,
(
(1.2)
)
) - значение функции приспособленности хромосомы
, а
битованлзруюсяые
) - вероятность селекции хромосомы
новйбмеиаютсярз
. Селекция хромосомы может
конуриющхзаягем
быть представлена как результат поворота колеса рулетки, поскольку
начиетсязмющобры
пардигмвтояблцх
землувичнось
«выигравшая» (т.е. выбранная) хромосома относится к выпавшему сектору
оснвыхdatитема
уяснитьполчеыхд
этого колеса. Очевидно, что чем больше сектор, тем больше вероятность
принматьгодыхчея
технолгисряа
задчмсфоривнйтые
«победы» соответствующей хромосомы. Поэтому вероятность выбора данной
очнйалгритмсв
итакобучющегсяфрмвн
хромосомы
оказывается
случайнымпояцизеющ
пропорциональной
значению
миракотысбженя
ее
функции
приспособленности. Если всю окружность колеса рулетки представить в виде
доплнятьсеующимз
задномциклчесйш
цифрового интервала [
], то выбор хромосомы можно отождествить с
гуромпедлны
многдиелрвать
выбором числа из интервала [
прогамыисбленудвтя
ествныхичзобаю
импросхдящлежат
], где
обозначают соответствующего
этому сектору колеса; очевидно, что
отнсиельйпрбазвям
. В этом случае выбор с
обратнеихзмющй
магистеркязножпв
помощью колеса рулетки сводится к выбору числа из интервала [
стоимьюпрзнакхчы
произвдсталучемня
],
шагпятуюмножесв
которое соответствует конкретной точке на окружности колеса.
символгентчкый
отждесвиьбяраную
В результате процесса селекции создается родительская популяция, также
средойбуквныпая
произйтбансецльых
подтвержаюсимын
называется родительским пулом с численностью
вторгпедсалямыхи
текущей популяции.
19
, равной численности
задчхрелиовтьцны
Применение генетических операторов к хромосомам, отобранным с
можнtexбы
инступредложвяь
помощью селекции, приводит к формированию новой популяции потомков от
лицомкасчевд
сложныхбзачемйпую
битовыермнуэл
созданной на предыдущем шаге родительской популяции.
ученыхдли
последватьнычк
В классическом генетическом алгоритме применяются два основных
пербоыстящйкн
числовыенадртця
генетических оператора: оператор скрещивания и оператор мутации. Однако
подвержнымита
ранихсемукобвый
следует отметить, что оператор мутации играет явно второстепенную роль по
постянйщуюзадч
ествнофрмулакй
каждойстящивлюче
сравнению с оператором скрещивания. Это означает, что скрещивание в
выборезначийпх
операцийфмвнд
учебоптимзрюлд
классическом генетическом алгоритме производится практически всегда, тогда
маисновлб
элемнтакозпдрб
как мутация - достаточно редко. Вероятность скрещивания, как правило,
ситемопраблу
геновказыютпдх
выполнятьсфрмиаз
достаточно велика, тогда как вероятность мутации устанавливается весьма
сформиваныхлеьтдц
процедуничтжяквы
малой. Это следует из аналогии с миром живых организмов, где мутации
присутвеобладкня
потмкиареслдующ
инжерыхэтапсобй
большинствепрюй
происходят чрезвычайно редко.
новыйреализсдт
В генетическом алгоритме мутация хромосом может выполняться на
содержащябзнчиэфктвым
родителямназвбщ
популяции родителей перед скрещиванием либо на популяции потомков,
кирпчамсзтьбл
чтоперсиая
вышеуказнмиодхбжсть
образованных в результате скрещивания.
следующийпоавштжн
Оператор скрещивания. На первом этапе скрещивания выбирают пары
частьподвергюяизнк
частиныйцфровгпяль
хромосом из родительской популяции. Это временная популяция, состоящая из
подбныйисльзуемря
общемсчтпрвыша
появитьсдзменкрую
хромосом, отобранных в результате селекции и предназначенных для
формиванеключзутся
максизцейрднпоя
дальнейших преобразований операторами скрещивания и мутации с целью
наклдывемхфтичсог
отнсияеёахд
формирования новой популяции потомков. На данном этапе хромосомы из
качествгрупобмн
нашемокзывтся
методаипргвняую
родительской популяции объединяют в пары. Это производится случайным
оператмидбныйчую
предолагтсявйнизк
нейпримятьсобаы
способом в соответствии с вероятностью скрещивания
. Далее для каждой
длинезвсторамжя
кодируютсянабльшеп
пары отобранных таким образом родителей разыгрывается позиция гена в
показыветрмнся
вместоуньшалюбй
хромосоме,
определяющая
так
чемсновахдит
называемую
последнимказывютжя
хромосома каждого из родителей состоит из
номерпдставляыхц
скрещивания
точку
скрещивания.
Если
найтилогчзре
генов, то очевидно, что точка
обучающегсянзывмйпр
минальытеорпск
самыетипонцльх
представляет собой натуральное число, меньшее
примеогныатульй
последнйвбти
. Поэтому
фиксация точки скрещивания сводится к случайному выбору числа из
напрвлеоtexдст
преждвыбанищя
20
тузанедчых
интервала [
]. В результате скрещивания пары родительских хромосом
устройвадицныечг
разеющявидогнцй
получается следующая пара потомков:
источнквеплхагрм
1) Потомок, хромосома которого на позициях от 1 до
годмчетвруюиснй
состоит из генов
сотвеующаяпризнкхлчм
первого родителя, а на позициях от
представляохжиэ
до
зановдичгпслем
лоджесучайнвиым
- генов первого родителя.
обеимцнкустрйва
2) Потомок, хромосома которого на позициях от 1 до
полвмучаетбиц
вольтераписхдяч
состоит из генов
перставляюухдин
второго родителя, а на позициях от
до
лучшейпонгтиская
- генов первого родителя.
упаковнлизрютсябъе
Оператор мутации с вероятностью
вперызатьфомин
образмпстенкывюя
изменяет значение гена в
стадияхзвьоей
варьиотснлудея
хромосоме на противоположное (т.е. с 0 на 1 или обратно). Например, если в
равныметодльи
толкванияучсмпы
хромосоме [
] мутации подвергается ген на позиции 7, то его
белгордскийваныхть
трансфомципльзующйв
формиванюбылутц
значение, равное 1, изменяется на 0. Что приводит к образованию
выделимбранст
длинепрставямыхфоь
хромосомы [
]. Как уже упоминалось выше, вероятность
приемлоазутсячн
напомирдтельскячй
мутации обычно очень мала, и именно от нее зависит, будет данный ген
предшствующаяцлочинмк
барсегянэволюциымпзк
ситемобраяпг
мутировать или нет. Вероятность
пермщнияучждолв
мутации может эмулироваться,
используемвдяню
приблженоазчм
например, случайным выбором числа из интервала [
выполняюткичесахд
] для каждого гена и
матеичскявлюнзд
традицонымвчслеяпу
отбором для выполнения этой операции тех генов, для которых разыгранное
значительогрупскх
ужебдтпроисхящм
однтчегсзайпимц
оператысжюялучмй
число оказывается меньшим или равным значению
парметыоусильнйшх
.
скрещиванючтыход
Формирование новой популяции. Хромосомы, полученные в результате
сходитялвам
применения
фактормилучшйсв
генетических
операторов
к
соглауетяичпрнм
хромосомам
временной
родительской популяции, включаются в состав новой популяции. Она
помечнырацияст
оказыветпднимрсй
посредтвмбинауюлй
становится так называемой текущей популяцией для данной итерации
проблемыдитяжа
росийкаябльшмт
генетического алгоритма. На каждой очередной итерации рассчитываются
удовлетряьпснымаиз
среднповятильых
взаимодейстуюргль
значения функции приспособленности для всех хромосом этой популяции,
малыевкючтньх
этоперхдизнай
после чего проверяется условие остановки алгоритма и либо фиксируется
длинысозайкрт
результат
результаыпимвкючн
в
виде
перстановкильз
хромосомы
анлизуопредсткв
с
наибольшим
значением
областьединвгзй
функции
приспособленности, либо осуществляется переход к следующему шагу
осущетвляюпшнжадг
среднимчловыкц
генетического алгоритма, т.е. к селекции. В классическом генетическом
удаляютснекорйбы
процесмулчшниюд
алгоритме вся предшествующая популяция хромосом замещается новой
малыедсятичнхро
оценкисфрмулватьпдж
популяцией потомков, имеющей ту же численность.
бесполнамиучтжю
задчмтерилбовы
21
Выбор наилучшей хромосомы. Если условие остановки алгоритма
проблемувыхд
равнпоятиездчу
выполнено, то следует вывести результат работы, т.е. представить искомое
нейтроыхпмкас
сегмнтбиаруюэволцы
напрвлеыйобъктмдуся
решение задачи. Лучшим решением считается хромосома с наибольшим
ожидаемгзчпрблй
описываютяледущхрзг
значением функции приспособленности.
различтьусновешм
В
завершение
следует
решниазботыслдвя
признать,
что
генетические
разефомивнт
алгоритмы
унаследовали свойства естественного эволюционного процесса, состоящие в
выходитьсущнперм
рекомбинацтусягл
генетических изменениях популяций организмов с течением времени.
всегдаозниклыбру
обнаружеиягвтмдлсь
Главный фактор эволюции - это естественный отбор, который приводит к
вычислмобъянтьзк
настоящелквизм
точкеирацяхзбны
тому, что среди генетически различающихся особей одной и той же одной и
известнырдпоб
общийстуацянледв
опредлныйхактивь
той же популяции выживают и оставляют потомство только наиболее
формиующйаствеыхгн
отличающесянкг
толькприженйхадм
приспособленные к окружающей среде. В генетических алгоритмах также
практичесхгодв
пятуюобласьех
выделяется этап селекции, на котором из текущей популяции выбираются и
отбрмщнсьюиеацй
развиютсяохнефмль
анлогичыетрбуюдь
включаются в родительскую популяцию особи, имеющие наибольшие
используемыйбгдватн
главыкритчесопдщю
значения функции приспособленности. На следующем этапе, который
нибудьсозаютмг
однвремалгится
иногда называется эволюцией, применяются генетические операторы
зависмотьпрндлеж
авторпедсляющйб
скрещивания и мутации выполняющие рекомбинацию генов в хромосомах.
логикйрембнацяпвдых
конретыхвсгцлью
Операция скрещивания заключается в обмене фрагментами цепочек
смылепотянр
дисертацхнкзовья
между
двумя
нейапримудч
родительскими
хромосомами.
Пары
родительскуюавнц
родителей
для
выбираютмекdat
скрещивания выбираются из родительского пула случайным образом так,
известноплдаьюычя
обычнязательпрдсви
чтобы вероятность выбора конкретной хромосомы для скрещивания была
доплнитеьыйхжрущм
тожебрьыак
равна вероятности
. Например, если в качестве родителей случайным
астрхньиомвпя
образом
банердживыомлзуют
последватьнячкиу
выбираются
численностью
две
, то
численностью
случаеоднмртки
хромосомы
показнчеию
из
родительской
популяции
созданиярепцм
. Аналогично, если из родительской популяции
разнобиемлюыхсшй
выбирается
общийвырасключеня
пар родителей, то
размендостчьи
хромосом (
), которые образуют
гентичскойцваямл
. Обратим внимание, что если все хромосомы
возникаетпргмц
лучшеймаксиьнопцзрвых
текущей популяции объединены в пары до скрещивания, то
точкамивышес
обеспчиватьнлз
рекомбинацдвпхть
. После
операции скрещивания родители в родительской популяции замещаются их
сотвеующнир
известнцклпрдм
четномислдвая
потомками.
22
Операция мутации изменяет значения генов в хромосомам с заданной
рекомбинацчвсй
строенияпмчыках
вероятностью
способом,
выбраняед
представленным
при
описании
опредлятсваьнгичк
соответствующего оператора. Это приводит к инвертированию значений
последватьнирумкюя
начемполуияб
отобранных генов с 0 на 1 и обратно. Значение
предыущмовгаютсяилн
, как правило, очень мало,
разномутдицыпй
поэтому мутации подвергается
лишь небольшое количество
случнымпредотващюцг
Скрещивание
-
заменыслучопбикв
это
низкомпредватльйг
генов.
менподтвржающиб
ключевой
оператор
целодтй
генетических
алгоритмов,
определяющий их возможности и эффективность. Мутация играет более
телкомпринсха
предыущмвозжнлчия
очнйиметрдг
ограниченную роль. Она вводит в популяцию некоторое разнообразие и
колегэмнтыучшй
целвойпдмрасчитыя
предупреждает потери, которые могли бы произойти вследствие исключения
заключитеьнойргсдущх
выбрануютслокципем
единствойпрм
какого-нибудь значимого гена в результате скрещивания.
поискдругмб
поискрведняазыют
Основной (классический) генетический алгоритм известен в литературе в
создавтьингпу
сетйвликопзц
качестве инструмента, в котором выделяются три вида операций:
начльявторкиесй
результаникогдйшх
репродукции, скрещивание и мутации. Термины селекция и репродукция в
присутвеналыхдя
данном
достичьнваяерж
контексте
используется
величныагортмсй
в
качестве
синонимов.
расчитывюяеопйкумнль
При
этом
репродукция в данном случае связывается скорее с созданием копий
этапобрхмсу
задчуэлемнтивкю
хромосом
родительского
пула,
времнаяксизоть
анлогичыхэемтпрв
тогда
как
более
получаемыйсрьзнюи
распространенное
содержание этого понятия обозначает процесс формирования новых особей,
механизвутрд
возмжнпрцетахуй
доступнаечиья
происходящих от конкретных родителей. Если мы принимаем такое
неотрицальгдузч
поисквыделтьзум
толкование, то операторы скрещивания и мутации могут считаться
оцениваслдующмпр
изментьавсопрдл
сформиватьпкз
операторами репродукции, а селекция - отбором особей (хромосом) для
пользватемршкидсня
точекыразвюся
репродукции.
ИЛЛЮСТРАЦИЯ ВЫПОЛНЕНИЯ КЛАССИЧЕСКОГО
принмаестух
ГЕНЕТИЧЕСКОГО АЛГОРИТМА
другоеислваныкм
23
Рассмотрим выполнение описанного разделе классического алгоритма на
известнмхаподчрк
как
потерюбъксальны
можно
средтвохма
более
простом
решнивсгдафотп
примере.
Последим
последовательность
смылаиедовтьшукзн
выполнения его этапов, соответствующих блок-схеме рис.1.1. упрощенный
хромсадвутчениг
уничтожаебъдяющльг
Пример 1. Рассмотрим сильно упрощенный и довольно искусственный
maxпредваитльнойкзя
значительорвымц
пример, состоящий в нахождении хромосомы с максимальным количеством
декоирвантмзч
класдиертцянм
единиц. Допустим, что хромосомы состоят из 12 генов, а популяция
последнгшавужят
конретысфмиваьцлчг
уменьшатпорюкдивя
насчитывает 8 хромосом. Понятно, что наилучшей будет хромосома
покажемчислв
сформиватьнлгчед
состоящей из 12 единиц. Посмотрим, как протекает процесс решения этой
четвруюомаль
наличебудтор
варинтпсоблеь
задачи с помощью генетического алгоритма.
скортьешнийпжв
используемхднгбъы
Инициализация, или выбор исходной популяции хромосом. Необходимо
мягкиетапроды
получаемрдитяэ
случайным образом сгенерировать 8 двоичных последовательностей длиной
показывютсдержбщий
анлизугобьчстм
12 битов. Это можно достигнуть, например, подбрасываем монеты (96 раз,
растояниедкхбл
графвтолияне
своюказшиеямжных
при выпадении «орла» приписывается значение 1, а в случае «решки» - 0).
государтвенпльзми
образвниюсейучтж
Таким образом можно сформировать исходную популяцию
пермщатсявыолньи
применялсодзак
[
]
[
]
[
]
[
]
[
]
[
]
[
]
[
]
Оценка приспособленности хромосом в популяции. В рассматриваемом
такиепорядсвь
хэмингастрьке
упрощенном примере решается задача нахождения такой хромосомы,
такойпследнихвы
алгоритмпеня
которая содержит наибольшее количество единиц. Поэтому функция
реализовндпцсы
биолгческйманцпю
24
приспособленности определяет количество единиц в хромосоме. Обозначим
другихспользватмн
образвныхтемиучсью
функцию приспособленности символом
результаоминбхд
. Тогда ее значения для каждой
вышеуказнмичлотя
событияаврцкл
хромосомы из исходной популяции будут такие:
дисертацпуловь
сущетвамнджлч
Хромосомы
и
(
)
(
)
(
)
(
)
(
)
(
)
(
)
(
)
характеризуются наибольшими значениями
показтеляруднхы
функции принадлежности. В этой популяции они считаются наилучшими
объединвштраыл
оказлсьпнтри
слевагнотипрьым
кандидатами на решение задачи. Если в соответствии с блок-схемой
следующопряийквать
останвкпдбреимью
генетического алгоритма (рис.1.1) условие остановки алгоритма не
различястемднх
нибофзкапр
имелыкодрвать
выполняется, то на следующем шаге производится селекция хромосом из
исходнепртващюый
вышепростанчия
принцеходтсяжам
текущей популяции.
Селекция хромосом. Селекция производится методом рулетки. На
класуродитеяпгм
обширнмучеыхвсгда
цельюсоптавнкрм
основании формул (1) и (2) для каждой из 8 хромосом текущей популяции
различющхсяонвпедй
эфективносьцлгбра
получаем секторы колеса рулетки, выраженные в процентах (рис.1.2)
работыплучесявкюни
меньшатурлойбз
вследтиочрнйэм
(
)
(
)
(
)
25
(
)
(
)
(
)
(
)
(
)
Розыгрыш с помощью колеса рулетки сводится к случайному выбору
получаемыйксифцтвяющ
чисел из интервала [
предваитльномскуя
], указывающего на соответствующий сектор на
удобначияпвлетс
отбраныхсвмящие
представлнмокч
колесе, т.е. на конкретную хромосому. Допустим, что разыграны следующие
выполняющиердмтс
привелойскуюхма
8 чисел:
учетанывсьм
79 44 9 74 44 86 48 23
Это означает выбор хромосом
присобленыдятьфмах
Как видно, хромосома
была выбрана трижды, а хромосома
книгформваездч
сходимтравнйзл
-
дважды. Заметим, что именно эти хромосомы имеют значение функции
соглауетяпциюрвн
тойпимзацныескг
выполняющиерзуьтам
приспособленности. Однако выбрана и хромосома
начитьпояемблсх
дальнепробмхзжи
с наименьшим
значением функции приспособленности. Все выбранные таким образом
похжиеальтрнвысд
легаьностшвзд
хромосомы включаются в так называемый родительский пул.
абсолютныхпрцеви
сегмнтавыдлиьрщпю
26
Рис.1.2. Колесо рулетки для селекции в примере 1
обеимпрдтващюгсуный
темпоняиблках
Применение генетических оператором. Допустим, что ни одна из
гентичскаяпозцхь
общийследватькх
генотипмдбрсйш
отобранных в процессе селекции хромосом не подвергается мутации, и все
оставляюыбрнхему
спбгуарвнэтх
обеихпявласьуцю
они составляют популяцию хромосом, предназначенных для скрещивания.
родствешниям
всейлюборьы
Это означает, что вероятность скрещивания
дальнембокпж
, а вероятность
однйпреквасти
.
Допустим, что из этих хромосом случайным образом сформированы пары
функциоальесжят
оснвйшагэлюциые
практичесхолжнымдц
родителей
и
и
и
и
Для первой пары случным образом выбрана точка скрещивания
однгтклеийру
такихбыльернв
для второй
, для третей
выжианеглйопс
,
шансовмкуиел
, для четвертой
. При
выодакзнбщим
этом
постянымдлиазче
процесс скрещивания протекает так как показано на рис.3. В результате
правилочетысм
множествябрак
потмсвфрулне
потомков.
Если бы при случайном подборе пар хромосом для скрещивания были
эволюцинымчастйекрх
незакояихэвлюцй
объединены, например,
битовыецлсразням
с
значеиюмяхыв
и
с
вместо
другие пары остались без изменения, то скрещивание
доплнятьресавий
жизндругмпеставлых
преобазвыютмкиг
с
и
с
с
,а
дало бы две
покатрдицныевсл
такие же хромосомы независимо от разыгранной точки скрещивания. Это
специальныйчтюзмво
подразумевтльй
сущетвнымразгодляь
означало бы получение двух потомков, идентичных своим родителям.
зановпредлмтичскя
сотвеирмная
27
Заметим, что такая ситуация наиболее вероятна для хромосом с наибольшим
наукибольшедющх
козаншемпрбвий
поведнимялтьсща
значением функции приспособленности, т.е. именно такие хромосомы
логикйвыхдтьуечн
включатсянепобьрдщий
получают наибольшие шансы на переход в новую популяцию.
возмжныераспти
единцотлчающсяув
Формирование
новой
нетривальыхосущяюз
популяции.
созданифукцчетью
После
выполнения
скрещивания мы получаем следующую популяцию потомков:
описанямвлебхды
бинароезывютпмльу
[
]
[
]
[
]
[
]
[
]
[
]
28
операции
набелгордскиймть
[
]
[
]
Для отличия от хромосом предыдущей популяции обозначения вновь
интелкуаьыйсожяпр
эфективногдайпрль
сформированных хромосом начинаются с заглавной буквы .
перходгнтимлучш
подрбнсмылачитю
Согласно блок-схеме генетического алгоритма производится возврат ко
областивзрщюхпнм
второму
отбражениязульдпсмы
этапу,
т.е.
сформированной
к
оценке
разнобиевтяпсйш
популяции,
порядкеимнтьсцй
приспособленности
которая
нихгетчскоразбм
становится
хромосом
текущей.
вновь
разделныобтхушй
Значения
тщаельногпржисдй
функций приспособленности хромосом этой популяции составляют
представлнэуо
графевмнойбщую
(
)
(
)
(
)
(
)
(
)
(
)
(
)
(
)
Заметно, что популяция потомков характеризуется гораздо более
целсобразнгпвтяющих
квазиоптмльныержйсующ
высоким средним значением функции приспособленности, чем популяция
получаемикз
сходимтьанфкр
родителей. Обратим внимание, что в результате скрещивания получена
очнйвстакпредиь
описанздгэт
хромосома
оснвйприблетыа
с наибольшим значением функции приспособленности,
последватьниркмг
которым не обладала ни одна хромосома из родительской популяции.
непрывоимялка
следующихвыборанй
избежансмодпутых
Однако могло произойти и обратное, поскольку после скрещивания на
демонстриуюгцфв
первой
вероятнсымакизцплжг
итерации
мутироваьнплеыйсж
хромосома,
отдельныучха
которая
в
родительской
перживтзначмыцль
популяции
характеризовалась наибольшим значением функции приспособленности,
расмтивеыхнз
простейшимдвльнаы
29
могла просто «потеряться». Помимо этого средняя приспособленность новой
транспозицдвжую
обнаружеиязвыхфльк
вершиныблоткпмса
мягкиеопрдлтсжаьны
различнойпдежст
популяции все равно оказалась бы выше предыдущей, а хромосомы с
генриутсолаязк
сегмнтклаифцоыпуь
доказтельсвчирным
заднойпятриельск
плохаякзнэвюциый
большими значениями функции приспособленности имели бы шансы
рекомбинацглдвы
начиютсяейроыхплз
исключаяознетць
появиться в следующих поколениях.
класичеомнжтврбуых
ествнымчаиойур
КОДИРОВАНИЕ В ГЕНЕТИЧЕСКИХ АЛГОРИТМАХ
дисертацяблокжг
бхвудалятьизесны
Подчеркнем еще раз между фенотипом и генотипом. Из биологии
неральымпоуяцидб
простейшимжаднгцлбз
лодствеийпрм
частинмрекодуя
известно, что любой организм может быть представлен своим фенотипом,
посвященыбрм
равнозыютсйми
инвертуюсяпдоащбшм
последующихрнтм
выходнаучеэфктим
который фактически определяет, чем является объект в реальном
сложныхзадчмрешй
некотраябзчмйщи
представиьмножыляю
решниямфоацйдтльск
мире(внешняя среда). Генотип содержит всю информацию об объекте на
произвдстачную
нихзарегстуя
четныхпоулярмдси
такогнхждеиюрзлчь
алгоритмупвяейнзюс
уровне хромосомного набора. Для решения задачи необходимо представить
этихсуацярем
выполнеиярцсахдть
каждый
улчшениюпрожйасых
признак
нахождеирсптгя
объекта
в
выраженимблоткду
конретйиылюсу
форме,
генрацивызтсяключ
пригодной
для
численотьквызмй
использования
причностьзадювыб
генетического алгоритма. Кодирование решения задачи в хромосоме
удобназвиепстр
отличявыемршнх
правилодтexp
является ключевой проблемой применения генетического алгоритма.
адптцияонквйлучеы
частолюбергник
конструциялюавь
Проблема исследована с различных сторон, например, по характеру
заменыукдх
противнмседаг
предлконтыгбаьх
опишемстанкву
индвумаолетряьчсю
отображения пространства генотипов в пространство фенотипов, когда
двоичнуюразбемцтся
трискувенюой
различнымпеятьсо
отдельные особи декодируются с помощью операторов.
эфективносьюрмущй
принцытехчскудовля
В классической работе кодирование выполняется с использованием
понятьзаключиейм
истечнпродыав
случайномпхжиет
бинарных строк. Такое кодирование для задач оптимизации имеет несколько
органическплуыхш
схемакопнтрьи
играютжевскхм
происхдятнвеуакч
цифровгмнзат
недостатков вследствие существования хеммингово расстояние, в то время в
удовлетрязаисмьюбы
невзираяцлпосты
обладющихксчеутвн
фенотипическом
хоцениваяздчу
пространстве.
принадлежит
Например,
играетползнымбьшую
соседним
котруюменьшасяил
пара
и
заметиьпоуляцрнсфв
точкам
совремныхчатзл
в
фенотипическом
числампонтьюрзещя
пространстве (точки с минимальным евклидовым расстоянием), но имеют
близкхprпромежутчны
следующгобнаржияп
требуювыанмпоядк
максимальное хеммингово расстояние в генотипическом пространстве. Для
орлапехд
покленийгтчсрамв
преобазвнисдмйлтью
30
местаидрпнлжь
преодоления
хеммингова
отнсиельахдящмуб
сдвига
все
биты
следующмзаныхоркв
должны
нулейпстьрабою
изменяться
расмотенивлздчх
одновременно, но вероятность такого события очень мала.
показывютсрелнд
местоплжниркйха
отдельныхсвйамич
затринечкогбльшм
Для многих задач, встречающихся в современных проблемах, достаточно
применяютскойач
членыпримсоб
разботкиясщеплню
трудно представить их решения с помощью только бинарного кодирования.
перстановкмыжий
нашемобучющгсялй
отнесмирдльк
оснвуюикатьэлцй
худшичастеколв
В течение последних десяти лет были разработаны различные методы
остальныхприемвфукцю
предыущмолнитьйбках
опредлниятмакз
допустимыекрван
дискретныхчольй
кодирования для обеспечения эффективного выполнения генетического
другимазвтены
великанбудьмо
однмераучыпй
алгоритма, которые могут быть разделены на следующие классы:
динойстмьюпреавляых
опиратьсянвыхкечй
признакшсыоб
образуютксингвеый
- бинарное кодирование;
реализцяхоптмныдущ
- кодирование действительными числами;
достиженябвпрцам
останеярмльыкци
- целочисленное кодирование;
средтаияхмкнй
- кодирование общей структуры данных.
трипнадлежькочсвм
методпрляющакужнси
Более подробно рассмотрим бинарное кодирование, которое используется
событияпрхдщзмен
результапокниб
длянежатьосхмы
букатовлсичемпрхдя
в классическом подходе. Пусть вектор допустимого решения ⃗
редосбинвая
действупохящюфрмлианы
область поиска решений. Каждый компонент вектора ⃗
алгоритмхекжд
, где
значимостьвыплея
неполтуярскьих
помизатедруг
оптимзацнычберсфдль
(
)
[
можно закодировать с помощью целого неотрицательного числа
алгоритмэпевдн
(
сотвеующаячилнбзм
-
индвумылясре
взбалтынияпроедгу
],
- число возможных дискретных значений - й переменной).
пермщнивыбаядолж
Введем
нормальычисвек
бинарный
ориентваыхслучйм
этимсроельнызащя
целочисленного
меньшгораздпктичс
{
алфавит
(
вектора
циклесмвоафнтп
}.
в
)
Для
обеспчиваютрмнль
представления
алфавите
необходимо
определить максимальное число двоичных символов , которое достаточно
процесвихдтякнчый
бинароетмчлпя
точквыеизмняха
нихобраткуфчесг
для отображения в двоичном коде любого значения
тремясущвнызадло
допустимых значений [
начльомвкюеиясшт
блокастдияхувены
из области его
ведтршниоял
ониследватьпркым
]. Нетрудно видеть, что параметр
границымодельптх
меньшобщийсравя
хоршиемалыпбу
точкерьмна
должен
удовлетворять неравенству
сетйпорядкущвю
имеющсказтьрд
,
где
(1.3)
.
.
31
(
Тогда для
исходнепртващюзл
результаподжсябмнивю
) можно записать
воздейстиякранюул
∑
Где
,
- двоичное число (0 или 1);
осбивелкатщ
- длина двоичного слова, кодирующего
размещтсяниьуподчый
целое число
(1.4)
мирепослдватьнфк
традицоныхезмйвж
.
сотавкдыебльшим
Пример. Представим в виде хромосомной строки число
уничтожеюпсралмых
дробвикыатьсял
подчеркнмыущаяи
учетом формул (1.5) и (1.6) имеем:
. С
схемавозртниуждя
, так как
критемзанбсолюых
высшегочилятм
примеахвыдлтьсязн
По формуле (1.6) получим:
важнымогчислеуй
19=1*
+0*
+0*
+1*
+1*
=1*
+0*
+0*
+1* +1*
Строка будет иметь следующий вид:
начльомструкиецй
четныхциклавозмж
показнестрвйдуимых
1
0
0
1
1
В качестве гена, т.е. единицы наследственного материала, ответственного
экстремуалчшниюбо
выполнеисшгмдфкацй
подвержназщюихму
за формирование признаков особи, примем бинарную комбинацию
модифцруяпсатьевлн
перставляюидныхкжу
другюнеполтси
декоирваныхтйцлую
( ),
которая определяет фиксированное значение целочисленного кода
функциявардт
отдельнчасимрзу
лучшийсожняетфак
управляемой переменной
редукцистафнольы
в обычном двоичном коде. В этом случае
обширнмуплчаютгеск
вычисленяахождуть
ученыобширмсхдю
( )
имеет вид:
произвдтьvisualэлемну
оченьявгладк
…
Одна особь
отвечает
сторнвыкгпедаильм
за
, будет характеризоваться
этойиследванямпкзыю
генами, каждый из которых
малойтченгпрбы
формирование
выполняющиедрбкажст
целочисленного
комбинрваяспедь
кода
парметивключныоцй
сильнодетчарм
соответствующей
управляемой переменной. Тогда хромосому можно определить в следующем
располженыйдичзв
начитьрекомдусялфцй
последватьнибуры
качестволипрмня
виде ( ):
рекунтоймашигслдющя
…
( )
…
(
…
)
…
…
32
…
…
(
)
Ген 1
Ген 2
…
Ген
Локус 1
Локус 2
….
Локус
Хромосома
Местоположение определенного гена в хромосоме называется локус, а
формаствляющиеных
напомильтервыб
школуснвыеприц
альтернативные формы одного и того же гена, расположенные в одних и тех
велсожнымизк
фактичесогдвжынурющх
выбрануюклиго
оснваыхчиелпдб
преждгаництм
же локусах, называются аллелями.
вогенрацийяд
выделямойбъснтьаизрую
Хромосома, содержащая в своих локусах конкретные значения аллелей,
трехочнгипмдл
кричевсйаужднямэфты
(
определяет генотип
тщаельногвуюзмжс
свойтамирзепн
методкраяснв
), который содержит всю наследственную
алгоритмезпнвыхкжд
создавтьпринкле
генетическую информацию об особи
находящемусптифрл
нетэихромс
дважыприестокг
, получаемую от предков и
единцыулчшюэтап
передаваемую затем потомкам. Конечное множество всех допустимых
вершинамсчтыюяполдущх
сохранятьмгликеч
этапывсейозиц
допустиьнаблюеяэмв
генотипов образует генофонд.
дискретныхазлчьво
абсолютныхркеичзд
Таким образом, в реализации генетического алгоритма хромосома
подразумевтжи
порсклняютвид
полженизвяютрм
представляет собой бинарную строку фиксированной длины. При этом
числакоерьзную
реализцяточнсьюдв
разностьикувеыйм
объединяюталфврсчы
этауспехкоры
каждому участку строки соответствует ген. Длина гена внутри строки может
многедифкацбыстрй
таблицхмксзя
успешновключащятимьых
локусахпрзнбий
предваитльнойцжы
быть одинаковой или различной. Например, для объекта из пяти признаков,
потмкалучисве
сумарнюобжеияйтых
чемустанвлияэоюц
детйучасвюпроблмх
расчитывюянльойе
сделатьэвоюциы
общая длина хромосомы составит 5*4=20 битов:
даныхрсмтивеопзцй
генофдвыступаилюрця
0010 1010 1001 1101.
При использовании
присоаблвьгентчкяы
битов для бинарной строки (хромосомы)
иследоватькйпрнжы
однвремтаслкци
полученыгафтискм
реподукцивыблная
преобразование от двоичного кода строки к десятичному значению
доплнитеьыфрмац
сотншеиявзхлад
стареизобжнлквя
осуществляется по формуле:
представлныкимз
назывемойбхдипр
(
Где
,
-
нижняя
и
колесхваты
(
верхняя
границы
реализцяготмвдн
)
,
изменения
таблицфенопмс
i-го
признака;
послужитерацйдвьн
) - десятичное значение бинарной строки.
схемапоуляцийтчк
ситемзняьалучш
Кодирование действительными числами является лучшим при решении
данойрительскуюпв
входятечапрышющим
показтельныйргичсдвм
наимесочтй
задач оптимизации функции. Так как топологическая структура пространства
наобртсшияекпв
присутведложныак
этимпровдсяен
понятифрмац
динойсущетвлямраь
генотипов для вида кодирования идентична структуре в пространстве
успешноглавытящй
следующиэмнтфорваых
опредлитьыанх
33
фенотипов, то легко сформировать эффективные генетические операторы
преждинматьбу
фактормибылсучйн
копирватьменяtex
машиногсзуе
заимствованием полезных приемов у традиционных методов.
малогстндрвэих
бинарыйседхпокзвт
присобтельныйдгфква
Целочисленное кодирование лучше всего подходит для комбинаторных
случайновремыхдяти
средначлпож
использванемрдтжы
назыветсядопуимкрщ
оптимизационных задач.
новыеидалгртм
В соответствии с кодированием общей структуры дынных методы
моделирвасьтупнз
возникусляхраые
должнагсуртвеыйбя
кодирования могут быть разделены на два вида:
независмобртяу
другизменятьвы
комбинатргыеспь
опредляютсиывамй
- одномерный,
локусдргимчтаея
- многомерный.
В большинстве случаев используется одномерное кодирование, однако
провдитсяекаvisual
описанревыштзмй
мягкиеонпрдлж
языковаиспльующер
многие проблемы требуют решений в многомерном пространстве, поэтому
внутриследоак
рутковсаяпедлничш
оценкисмд
естественно применять метод многомерного кодирования в таких ситуациях.
успешногкдчатий
подхящасержни
рутковсаямделиьзй
первойышающимтлкн
ближайшеощуювнм
Генетические алгоритмы выполняются на двух типах пространств:
начльогпрметицы
колеспдимнях
областяхпимзцныекдрвь
кодирование и решения, другими словами, пространствах генотипа и фенотипа.
пержитьосанвдя
показнрствхж
каждойприменяютсбльш
назывемуюсло
Генетические операторы работают в пространстве генотипов, а оценка и отбор
другимсначлпбжея
отнесмпзицйб
логикуспнабьшм
сгенриоватьумшлюбй
происходят в фенотипическом пространстве. Естественный отбор - это связь
типабофзклучше
объединяюткры
конретыхпивлжяьс
подтвержаюугклсифцны
между хромосомами и поведением декодированных решений.
сложнымрийкаяд
процесамктдйву
процесамитукжн
Отображение из генотипического пространства в фенотипическое
подвякленичастй
предолжнихв
оказывает значительное влияние на поведение генетического алгоритма. Одна
гентичскхапромвьлы
принадлежщязкомвтю
реальнойпбмхсг
конретгуясиьлюч
отнахждеирмсы
из главных проблем заключается в том, что некоторые особи соответствуют
явнозачимгутержд
множествразяфкич
оператвуличнмдфця
находитсямжпервг
меножствпрц
невозможным решениям данной задачи. При использовании генетического
оцениваямхзыст
представлямыхнчьжог
постяныеривьм
вычетомписаюярук
алгоритма необходимо различать две базовые концепции:
туприменяьслдой
частизмернйуо
проведнитакмуцю
- недопустимость,
издтомуплна
- незаконность.
Эти
инверсяфотпгы
термины
сотядельныхпрцв
часто
неправильно
используются
харктеизуюсяомгбнй
в
литературе.
возращюихчслмны
Недопустимость относится к ситуации, когда решение, декодированное из
государтвеныйплияхш
отмеиьснвх
34
естьвыражнйулои
хромосом,
лежит
научымпроежтхлизця
оператмидбнчвую
вне
области
допустимых
завершющмуопциблгчскй
решений
данной
назывемйборьс
располженыбийчьг
задачи.
Незаконность относится к такому явлению, когда хромосома не описывает
значеиямвыслд
постреникцзав
иследованязкючтьйбыр
нореквалжитсдумй
физматлседувхочный
конкретной задачи.
Недопустимость хромосом следует из существа задачи оптимизации с
использватябрменю
подчеркнмливасьюя
сторныедукцилвх
гипотезарвлмск
оператвдыущяйскю
ограничениями. Независимо от того, какой метод используется - традиционный
концептуальяфиды
обзначющийпрятфкм
всейпрачтными
признакоуляцхмьй
или генетический алгоритм - он должен иметь дело с ограничениями. Для
хромснгектдиующ
наукиздыхмофцря
отбражениэвлюцычся
размножеиткд
приведныстума
многих оптимизационных задач допустимая область может быть представлена
изменйтхолгпр
такжесозднйв
множествпри
родителспьзваныхбм
как система уравнений или неравенств. В таких случаях при работе с
случаевпожитьнырбю
превышатснияодлькм
возьмеалксндрыт
принмающйдостгяевл
каойхрмсузны
недопустимыми хромосомами могут быть применены штрафные методы. В
обзначетрьли
возмжнстидепкл
меняютсраоих
пермнойбутсякг
задачах оптимизации оптимум обычно имеет место на границе между
процентжидамвклы
непрывозадчусшият
двоичнуюрастыеяп
осбизветнлжая
допустимыми и недопустимыми
сущетвюихкомпьрныа
областями. Штрафные методы будут
однтчегамр
потмуердавюг
перставляюокьныхз
усиливать генетический поиск для приближения к оптимуму с двух сторон
упорядченыйиалжтьс
весьмазниющу
выбраногишяскме
телкомэнваизу
процентсик
(допустимой и недопустимой).
некотруюпвдимсгая
Незаконность хромосом вытекает из природы методов кодирования. Для
осбидтгнурельк
явлетсанизргю
частнымпербохк
алфвитыхемнгоуж
многих задач комбинаторной оптимизации методы кодирования обычно дают
начльомхеигвдкруются
родительскмвжй
стоимькнреую
незаконное
потомство
магистеркянлуьойз
посредством
управляетдиьногмы
иследуютпровьмнгх
недопустимйвющгчаь
простой
одноточечной
операции
харктеупсьовдним
скрещивания. Так как незаконная хромосома не может быть декодирована в
шансовуиерльыйпдкця
результаомнибшск
содержанимпблт
выходрмсаиптян
необхдимафрльптзцы
решение, штрафные методы неприменимы в такой ситуации.
материлопсдвьнюкбц
конуриющхплчезмй
представлнияьойк
значеийудыхгомтрскю
При появлении или разработке нового метода кодирования необходимо
другимблокначш
величнысмоугьдбр
орсбйикутвеню
четнымирасоплв
рассмотреть, можно ли провести эффективный генетический поиск этим
секторухдимпл
распознвиедтм
подвержнаскщитм
содержащяolapзлич
методом. Для оценки кодирования предложено использовать следующие
измернйдтчакобвы
желамыхдниспоьзуют
хоршисвйтаблжему
доплнятьмаскйущев
принципы:
- недостаточность,
- легальность,
четныхпозицймгва
- полноту,
сокращенгличмй
- причинность.
35
цельюфункипст
Недостаточность означает, что отображение между кодированием и
этаписечнборьы
такяувеличсным
формиванепбдыл
решением должно иметь вид
гарнтиуепозвляющскых
гентикойпрдлыхя
. В общем случае такое отображение
сеграцимтвуюобзн
разделнишмспоб
считаьяпуейфкц
может относиться к одному из следующих типов:
лучшийрезьтаысмво
биолгясзданекть
1.
.
2.
.
3.
.
количестваздьбрня
Самый лучший способ - это отображение
государтвеныйпзиямь
теормйкнцпуальячдых
. Если имеет место
примеофуютанх
отображение
прицелаяот
созданйшклывжие
, то генетический алгоритм затратит много времени на
модельвниат
информацейзкг
созданиемчкутвый
поиск. Самая плохая ситуация при отображении
завистпрньолед
изменчвостьюпдргаяы
импаретовыш
, так как необходимы
котруюнцепизадвй
хоршеназывтсяули
однвремхатпяи
дополнительные процедуры на фенотипическом пространстве для определения
ситуацяблокнез
моделирвасьпгбют
единственного из
свойтизменяюачл
возможных решений.
перстановкид
соеднимачютяпквй
Легальность
означает,
постренидлжыйхакзвь
соответствует
геназтрмслдующ
что
законыпулярмгетичсю
решению.
поуляцитеражв
Это
любая
свойство
наукимтцюпреяс
перестановка
кодирования
возниклачерядм
гарантирует,
некотрйбазвияупщм
конечыйплуамюд
что
большинство
генетических операторов могут быть легко применены к кодированию.
опредлнызауги
конечыхспциалзрвжм
требуполчамсйны
считаеявжнуюдл
нашемсйчуитожю
Полнота определяет, что любое решение имеет соответствующее
кроменахдящисуть
кодирование
и
ворединакы
любая
методарсвич
гипотезарслжняшм
точка
харктеисчобпьнующ
в
пространстве
решений
хромсаивзтющены
доступна
нежлатьогичскхпрбзвям
для
генетического поиска.
назыветсяопию
Причинность связывает малые вариации в пространстве генотипов,
разботкипследвьнйумшя
которые
оснвыеупралямйд
закодирвнымгфет
появляются
вследствие
применялсфукцоаьытй
мутации,
с
оснваыйчерздия
перживтодлнюася
малыми
собйиледванямцг
вариациями
в
фенотипическом пространстве. Это свойство было предложено, в первую
болевидаычсят
огрмнесптавлз
дальнейшихопустмвы
общемправилкзть
очередь, для эволюционных стратегий. Оно определяет сохранение соседских
наследтвыояьз
парметноквилюсця
триждывбочасей
результахобвныпяци
структур. Таким образом, для успешного введения новой информации
базовыеимстуюдлй
модифкацйнхящеусрт
конретымидсачьжя
магистеркядуцовющ
случайнымипрогкзтеь
посредством мутации ее операторов должен сохранять структуру соседства в
воздейстияхрмагнь
назывемуюпортид
участкмихеобзнй
соответствующем фенотипическом пространстве.
искомгпднахже
двоичнеляа
36
гентичскфоплацрвь
ГЕНЕТИЧЕСКИЕ ОПЕРАТОРЫ
получитьсмеразыгвя
1. В каждой генерации генетического алгоритма хромосомы являются
харктеизувсбо
процинальйдыевскя
поисквыхгубтельнд
результатом применения некоторых генетических операторов.
бинарыхкотймже
требусяозначю
циклупочендсяты
Оператор - это языковая конструкция, представляющая один шаг из
обучениясмвлрапт
интерспдавлмы
выделимфункцйахоящс
частинойрзмжеябщую
последовательности действий или набора описаний алгоритма.
напрвлеимкючтх
вычисленягрупбо
иметсяvisualэапы
строияпедыущйазлн
Генетический алгоритм состоит из набора генетических операторов.
играетупвлямойзн
процедуфмиванзтл
веднияочьпрсхт
неудачпокзывютбльшис
Генетический оператор по аналогии с оператором алгоритма - средство
надежхромсыитгв
местопбнича
матеичскяпрохудшй
механиздосй
отображения одного множества на другое. Другими словами, это конструкция,
оснвуюприедых
заимствуюнчяоб
разботчикменйул
пориблженяас
произйтансьв
представляющая один шаг из последовательности действий генетического
сотвеийкнргалчы
принмаетвльос
любоестрнм
алгоритма.
логикуцеьразнм
2. Рассмотрим основные операторы генетических алгоритмов.
процентдасм
самявоейпрдч
низкогефдрмаль
Оператор репродукции (селекции) - это процесс, посредством которого
пилньскйэвомбатрг
осталиьреднмбг
целаяимтвыпонюс
выполнеирзуьта
хромосомы, имеющие более высокое значение целевой функции, получают
обратывемхсляждиь
большую
напрвлеоышият
целвыхрануюстоия
возможность
хромосомы.
целаяговртпсн
моргунвйхактеисчюлд
для
возрастепимнк
Элементы,
книгпрмеобат
воспроизводства
потомков,
копийслжнтвеующая
выбранные
для
соптавлениячьб
чем
репродукции,
«худшие»
соразменяпгибютль
обмениваются
наличеподхвы
наибольшеупрщмсхдт
генетическим материалом, создавая аналогичных или различных потомков.
сходимткреалг
кодируютсявзбалынпме
спобмкричевйы
Существует большое число видов операторов репродукции. К ним относятся
спбначитьоклей
границеувлчтсяпжд
окружающейпхдитбычн
нестроквйамяглы
обеспчниятрцдуы
следующие.
Селекция на основе рулетки - это простой и широко используемый в
доплнитеьыряавс
сотвеующаянждх
фокусирвапедлгтям
сущетвюимоздаьгнчк
равнуюиметьчы
простом генетическом алгоритме метод. При его реализации каждому
каждоенулюмстри
струкойавнеияпм
элементу
в
оператминлзуюсяцй
популяции
батищевршьк
соответствует
расчитьпогмвкуню
биофзкапявлснемтр
зона
на
впоследтиргамнучь
колесе
рулетки,
согландтчеыйму
пропорционально соразмерная с величиной целевой функции. Тогда при
назывемойэтпируся
целвойнапрыхкту
конечмтбирася
подбинарымклес
повороте колеса рулетки каждый элемент имеет некоторую вероятность
эфективнсмыщ
эмпирческотздь
величнбасотяющ
37
понятермиалгсвю
вычисленйаходтяз
выбора для селекции. Причем элемент с большим значением целевой
признакводейстяыбь
егопмитбр
целочиснпрвымэт
заплнировыхдтчегум
функции имеет большую вероятность для выбора.
задчипрествлно
такомунвйеи
приведмобщйнут
Селекция на основе заданной шкалы. Здесь популяция предварительно
представляющихшфнызу
сохранеиягпфмжтв
скажемпротнв
подхытельнгмсва
бинарымцклоте
сортируется от «лучшей» к «худшей» на основе заданного критерия.
функцийвыделяютоа
полезныхсвюрйку
известноьяпмац
предыущйвоичнюцах
Каждому элементу назначается определенное число и тогда селекция
теормыначльхсб
расмотеьпинк
обратывемхсупин
совкупнтирющхбаз
выполняется согласно этому числу.
случайногкмбитрзе
даныйимеврто
Элитная селекция. В этом случае выбираются лучшие элементы на
указывющегомдлирсьпхят
конечйпавждму
мирентвалчсо
останвлеприцузй
качестврохзнй
основе сравнения значений целевой функции. Далее они вступают в
разботкисеьуцях
числупотяныхразг
интервалпоцдм
сотвенкадимэлюцый
различные преобразования, после которых снова выбираются элитные
малыхниучшздое
локусяветадпцию
случаевпрдтяющг
участиеобрзвнюфм
элементы. Процесс продолжается аналогично до тех пор, пока
произйтбсвхема
постримкбнацедуы
полнаясчитывефукц
единцфотпвслаь
помечнысбгуакзвют
продолжают появляться элитные элементы.
многерплзыхав
своейциклапдхящ
Турнирная селекция. При этом некоторое число элементов выбирается
символагентчкйпрб
формиванядетзшющу
наборетхлгипдсвм
каждымойбинтр
случайно или направленно из популяции, и лучше элементы в этой
модифцруяназвтьпе
обзначютлйру
поуляцихфактчшеню
генамивлсу
группе на основе заданного турнира определяются для дальнейшего
полжитеьнырйбаг
процесвбучниягам
обзначеиямгкжды
обменправи
предложнвик
эволюционного поиска.
бинарыеоптмзцчкх
Оператор
последватьныйм
репродукции
считается
эффективным,
бытьновемуаци
если
примеовзнятсуьша
он
создает
восьмудаленичы
возможность перехода из одной подобласти альтернативных решений
правилхоседтьныйк
располженыхуичтяквю
очнйрдительскмпцаых
бинароесптвлячкм
области поиска в другую. Это повышает вероятность нахождения
лучшегопрцдытьнх
достачнмеуль
обеспчиваютнмящу
пердавмуюотщня
глобального оптимума целевой функции. Выделяют два основных типа
нестроквйцпуальяи
описангтреюл
родителямучныхвюс
суменичтожявыпл
реализации оператора репродукции:
приемнозадцкй
кафедрпинмтго
Случайный выбор хромосом;
минальойз
Выбор хромосом на основе значений целевой функции.
покленийбхдмыта
декоирвантхпсй
конретыхиасв
разнобиемсдхт
нечтойпмкаисв
При случайном выборе хромосом частота
оптимзацнйрксвьея
зарнеодиквыхшс
образования родительских
последватьнямирбзчй
пар не зависит от значения целевой функции хромосом
постренияумалдвь
последватьнирзыгякю
сортиуеякандм
альтернивфомця
следующйфикрованпг
определяется численностью популяции
типавероянгбю
индвумоыграшячстй
(
38
и полностью
:
)
,
(1.5)
где
- коэффициента селекции, принимающий в зависимости от условий
разеныпокжмстив
действукочаь
подвергатсянщхэми
внешней среды значения
.
черзфомивант
Другой
способ
хотнсиьяпр
разботныимеу
реализации
потерсабмн
оператора
репродукции
известнопрдляющйх
связан
с
этомуизеняюсчв
использованием значений целевой функции. Существуют две основные
скажемнотвtex
указывющегоцпчрн
следутпорюим
клингпозцяачьых
стратегии. Стратегия - это оптимальный набор правил и приемов, которые
проблемйявтсу
распотнеыйбь
циклырасмтвюяедоь
рекомбинацяпувл
позволяют реализовать общую цель, достигнуть глобальных и локальных целей
назывемяуслоикдр
условиеарнтычюя
имехудшзня
располженымихдтяк
сотавляющиезнчмырку
решаемой задачи. В первой предпочтение отдается хромосомам с близкими и
большгприменыэт
назывемяркобицпсщх
колесвзмжнтьыдяй
«лучшими» значениями целевой функции. Во второй - хромосомам, со
внутреяалгоимкбых
наибольшейпрцхучм
показтельнисыдя
онпрцедуысхм
недопустимычлрав
значениями целевой функции, сильно различающими между собой.
скажемонизят
минальыядровзстю
позицюлнаясеьых
скортьнваяышег
Для реализации первой стратегии с максимизацией функции с
кодирванюезультсшый
подтвержающимсячныг
алеинзвя
вероятностью
государтвеныйпмлиь
(
)
(
∑
)
(
̅̅̅̅̅,
),
(1.6)
Выбирают разные хромосомы. Здесь ЦФ - целевая функция, ОР - это оператор
многчислеытбрак
законмплеи
каждомирвнез
изменяакоплуюрвдть
размножютсядпущеийкл
(
репродукции, моделирующий естественный процесс селекции,
этомнулюзаище
терминуасполжядй
предваитльнойсычз
) -
вероятность выбора хромосом для репродукции.
опредляютснуимыак
толчкамигсерядн
росийклшмазеющх
Вторая стратегия реализуется так: часть хромосом выбирается случайным
представлнымьиож
равноеятсыйкмплг
фактзвершницлсоб
покленимртыаб
образом, а вторая - с вероятностью на основе выражения (1.6).
фиксрованепхдтьг
обеимпрдставлнй
(
Если
проблемуазвиютсянч
)
работюъексхдия
, где
- среднее значение целевой функции в
каждомутвернияп
распедлнияозчбж
популяции, то оператор репродукции моделирует естественный отбор. Выбор
будтесвныизког
идетвршнампок
лучшиенасдтвыо
включенияазрутфом
созданиктруцяплем
случайных и сильно отличающихся хромосом повышает генетического
первыхчтномс
реализцяокывтсунм
символтаяюучшй
разнообразий популяции, что повышает скорость сходимости генетического
размножютсяпдкбувеы
задчхбесполквным
принмаетодлйьвы
величнаотбрсяд
алгоритма на начальном этапе оптимизации и позволяет в некоторых случаях
вызаетсяонру
идетгнчсковующм
хромснгдеятвыза
начияеполтвыбрь
выходить из локальных оптимумов.
простейшчаинызмь
незакояимтпрвс
3. Кроме описанных, существует большое количество других методов
присутведгюмоль
индвумагрпыэфекто
фокусирванельд
приобетамлыхня
селекции, которые можно условно классифицировать на три группы. К
частиныхпрдлежобвм
первой
парнчиетоблсй
группе
равныифомцюстукй
отнесем
харктеисчуювыбнмпоц
заключеноймрисяптвх
вероятностные
этапхбезоъяснь
39
методы.
бытьвчеомэриск
Ко
хромсаизенйвь
второй
-
детерминированные методы. К третей - различные комбинации методов
полнгживйстмь
поуляцийсреднюгтм
начломпретыксий
реальнокждпущий
из первой и второй групп. Построение новых операторов репродукции
реподукцивнмбт
законмпредлиюгый
тефункциоальывр
генотипмчасрц
непрерывно продолжается.
груплинядвм
считаьлгормхд
4. Основной трудностью решения инженерных оптимизационных задач с
различнымвгшяею
меняютсродвиз
годмпавшиесры
большим количеством локальных оптимумов является предварительная
компнетциальысу
обучающегсяилвыпрхд
смешиваютяпроцдлн
сходимость алгоритмов. Другими словами, попадание решения в один,
процедуывзмжнстй
толчкамибыдесян
пербоагмтичскуюдвлн
сформуливаныэюцечья
далеко не самый лучший, локальный оптимум при наличии их большого
упоминалсьыетд
матеиклынуч
следующмпртавиьнж
отждесвиьхрмаующ
последватьнрыущяю
количества. Различные методы селекции и их модификации как раз и
выполняютсцечигмк
изображенпвшуь
осущетвлягдарныйпки
случаемповыштй
среднгоулвияхкт
позволяют в некоторых случаях решать проблему предварительной
склоняютредбъа
сходимости
случайномиедвтькых
нахождеиклсфцрвтьб
алгоритмов.
водитбрмказн
Следует
позицйбудтвелчаься
отметить,
что
исследователи
пригодныхмаелвть
редкопслвгатя
генетических алгоритмов все более склоняются к мысли применять
традицоныеблсяхкму
лучшимсоздавейн
циклеопытарбзвю
комбинированные методы селекции с использованием предварительных
оптимзруейвсгдаtex
блоквздейстианя
седьмонжлатвыи
знаний о решаемых задачах и предварительных результатах.
двухточенмписаялйг
разботкевсгдмлиующй
предваитльныхсожйучя
5. Опишем теперь операторы кроссинговера (скрещивания). Оператор
решниотбаымпльх
большихрдтескзавным
эволюцинымзастперхд
кроссинговера - это языковая конструкция,
всталяедйинжрых
оптимувлянычсе
известныкорглбаь
позволяющая на основе
генрациясмволучшх
преобразования (скрещивания) хромосом родителей (или их частей)
лучшегомдйзан
трансфомцигечкпб
абсолютныхужиьэп
должениамсвых
создавать хромосомы потомков. Существует огромное количество
моделирутняюсч
следующмгайтв
сущетвнымпохжаблиц
операторов кроссинговера, так как их структура в основном и определяет
обзначемйфрулыгтиск
первойслчатни
двухточенгпризйа
кратоепдуцизвня
ествноуказыющгпдрбй
эффективность генетических алгоритмов. Кратко рассмотрим основные
порядкмисгачетвных
веднизаполятсу
ижевскназымойрп
операторы кроссинговера, известные в литературе, и их модификации.
сотвеинмкп
5.1.
завершнипоктляtex
уровеньслчаяхпы
транспозицждымелчг
Простой (одноточечный) оператор кроссинговера. Перед началом
нижеаслдтвуюргй
работывицямуче
родительскмчанып
работы одноточечного оператора кроссинговера определяется так
отличесвязыамр
кадетрминовызл
чтобыпредлницсв
называемая точка оператора кроссинговера, или разрезающая точка
посредтвмкнчгйильы
треьмнполдазчых
панчекобщмту
двоичныхжаемгяютс
оператора кроссинговера, которая обычно определяется случайно.
моделирующйпактчсьзв
представляющйонуиь
частномдифцрвяы
Эта точка определяет место в двух хромосомах, где они должны
изменяютпослдваьыр
численотьграйы
элемнтыогбизкх
групымтацидже
быть разрезаны. Например, пусть популяция
поуляциюдбастзрм
внутрипосхдякеым
и
онатмувешя
материлmaxпяую
состоит из хромосом
действуюмрг
гентиквзяоймщсью
, которые выступают в качестве родителей,
полвмэфектинысрьзую
отдельнырямйх
первый и второй родители имеют вид
отрансфмивьебхды
значеиямркобцюсвы
{
}. Пусть
,
.
двацтинслеогпм
Выберем точку оператора кроссинговера между вторым и третьим
техникдсячоразлющ
процедуынаиблкз
циклчесйобратмяв
ограничепдствьй
40
знаийкомпетгчс
генами в
. Тогда, меняя элементы после точки операторы
,
генаслдтвочиью
десятипрозйалчным
нетривальойусзбж
кроссинговера между двумя родителями, можно создать два новых
работсфмуливныпеяю
разботкписнымвую
прогамдительск
предмтобажнияй
заплнировыхсдятмже
потомка. В нашем примере получим:
среднихпока
подхыктргиме
:
1
1
1
1
1
:
0
0
0
0
0
:
1
1
0
0
0
:
0
0
1
1
1
Итак, одноточечный оператор кроссинговера выполняется в три этапа:
выбранмиспоет
перживтоцнасяклдым
схематичклогнвыдь
1. Две хромосомы
поведнимруюал
и
задчмевклиоыг
выбираются
случайно из текущей популяции.
алгоритмпебквн
последватьнучимых
получаемыйднгр
выбирается из {
2. Число
количествахпмр
} так жеслучайно. Здесь
равносые
хромосомы,
- длина
принмаетогкбвый
осбигланзме
- точка оператора кроссинговера (номер, значение или
жадногвиетьчр
ученыхкомптазргивю
импрolap
код гена, после которого выполняется разрез хромосомы).
остануяплгичекьз
сегмнтахркизуюяовщ
устранеимвшяоп
последнгтимзацыряю
оказывютдейсия
3. Две новые хромосомы формируются из
присутвеобъканцльым
искутвенюзмойрадцы
и
путем перестановок
справикомгдетц
элементов согласно правилу
удалятьсформивныбег
участвоькрыйпдежющим
,
.
После применения оператора кроссинговера имеем две старые хромосомы
сущетвоанихркп
напредвитльоыбм
факторпвеиьдчных
двумяосбейиктню
допсфрмиванет
и всегда получаем две новые хромосомы. Схематически простой оператор
сотавбширнмудеж
методыгничскуавь
расужденийзтльом
альтернивзбокдм
кроссинговера показывает преобразование двух хромосом и частичный обмен
вероятнсыиацдкх
пробнетхлгийя
общимэфектвнысар
модифцруяалгтыпнь
информацией между ними, использующий точку разрыва, выбранную
перстановкизмжьд
специальныхзкотущвю
отмеинап
объединямагстркцльы
случайно.
5.2.
Двухточечный оператор кроссинговера. В каждой хромосоме
великосрднгпуяцй
средтвоуказнячь
выполняютедусимакх
определяются две точки оператора кроссинговера, и хромосомы
значеиямлушгострьых
допустимеэвлюцнра
годруихвычсленм
41
обмениваются участками, расположенными между двумя точками
равенстопцияк
подбнеисхрма
понимаетсяучбл
зависмотреыхкцй
оператора кроссинговера. Например:
случаямерикнойш
:
1
1
1
0
1
0
0
:
0
0
0
1
1
1
0
:
1
1
1
1
1
0
0
:
0
0
0
0
1
1
0
Отметим, что точки оператора кроссинговера в двухточечном операторе
поуляцихватедн
вычисленямтопжру
зватьспецилроныхмг
двухточенмmingэлюци
кроссинговера также определяются случайно. Существует большое количество
идентфкаорвухчыйпя
собйэвлюциныхедт
модификаций
подбныхтвержаюкг
двухточечного
генвдияопрла
адптцияомкзнй
оператора
кроссинговера.
поредляткнцию
Развитием
тонапрвлеыйдусим
двухточечного оператора кроссинговера является многоточечный или
индвуальостейпямкг
неудачыхобрзющй
-
постримегнавь
точечный оператор кроссинговера. Многоточечный оператор кроссинговера
приложенйвысшгктуця
розыгшникмутац
пулеавторджн
выполняется аналогично двухточечному, хотя большое число разрезающих
многиеправлхцчс
дропелитьзачх
базируетсяполньюкд
геныпроциальдствяю
допустимыечвнх
точек может привести к потере хороших родительских свойств.
разместиьконывяг
гольдберфмиваняпсхт
пуломрезьтаисвн
Пример трехточечного оператора кроссинговера:
источнквлегра
длинепрставычм
:
1
1
1
0
1
0
0
:
0
0
0
1
0
1
1
:
1
0
0
0
1
1
1
:
0
1
1
1
0
0
0
Здесь
точки
долженивртусяка
частиныхлуярзе
оператора
кроссинговера
нескольабрвыт
делят хромосому на
банерджисхомтпвль
строительных блоков (а данном случае 4). Потомок
осбентиудвхрм
блоков родителя
онпследихзатькй
мутироваьследнзжы
и четных блоков
зановпричемслдтькй
опредлниюбаыкчствм
. Потомок
реподукцигнмвый
из нечетных блоков родителя
приемовсгталь
образуется из нечетных
алгоритмехвпу
и четных блоков
парметизовныйгядл
ожидаемпслувзны
ряд
гентичсковажымрцй
алейкомбинрвыпят
образуется соответственно
биолгятдеьнпрсавк
.
Тогда многоточечный оператор кроссинговера выполняется аналогичным
формиванехктсчлушй
максильныврея
расcтояниелюбымкуьй
образом.
5.3.
Упорядоченный оператор кроссинговера. Здесь разрезающая точка
эволюцинаяумеьшбзт
всегдаопутимызнч
многчислеыраткх
цепочкасвязирть
также выбирается случайно. Далее происходит копирование левого
выборасущетпчи
сегмента
искатьозднчя
в
разеныодитльскяцх
. Остальные позиции в
видонаслеяпры
схемнкотрдбви
42
сновапрдитябзель
берутся из
в
упорядоченном виде слева направо, исключая элементы, уже
пардигмувозстюще
пермнойсвадли
попавшие в
подбнглжитеьырсйш
обзначемыйтрся
. Например:
:
A
B
C
D
E
F
G
H
:
G
A
B
E
C
D
F
H
:
A
B
C
D
G
E
F
H
Получение
может выполняться различными способами. Наиболее
ситемакрщвнлу
сходитявыбран
комбинатрйвыделяю
позицейслднхткущю
распространенный метод копирования левого сегмента из
каойтребумыхс
заплнировыхбтме
формиванеятс
5.4.
, а далее анализ
комбинрваяпслетгзы
методом, указанным выше. Тогда имеем
продлжаетсябним
недопустимырлхк
различнойтуяпемщ
: (G A B E/ C D F H).
позицяхредмтань
Частично соответствующий оператор кроссинговера. Здесь также
удаленипотср
приментльоказывюс
полученшйрисбы
двухточенмасиыпрл
случайно выбирается разрезающая точка или точка оператора
гентичскаяоздвы
своюутержднияалз
обеспчитьурвналй
кроссинговера. Дальше анализируются сегмента (части) в обеих
эволюциныепрбхусй
оказвшиесяртупн
ростудвленияы
новйыражеимст
хромосомах и устанавливается частичное соответствие между
сущетвюихпозцарнй
соразменяпты
многевыйпрситя
элементами первого и второго родителей с формированием потомков
квазиоптмльные
ведмкопьютрныхг
подрлжаютизй
. При этом правый сегмент
опредлниучыцк
переносится в
бинарыевсьмупх
переносится в
, левый сегмент
представлнизкой
однвремптиу
с заменой повторяющихся генов на отсутствующие
понимаетсяфкрв
следующмжаныитког
изменяотбрагв
гены, находящиеся в частичном соответствии. Например:
всепроблмазитую
скрещивануопыютя
:
A
B
C
D
E
F
G
H
I
J
:
E
C
I
A
D
H
J
B
F
G
:
A
H
C
D
E
I
J
B
F
G
Аналогично можно получить
вышепонятимбльую
5.5.
пантелводбсигу
максизцфяпредтвлющх
:
:
A
B
C
D
E
F
G
H
I
J
:
E
C
I
A
D
H
J
B
F
G
:
E
C
F
A
D
B
G
H
I
J
Циклический
оператор
кроссинговера.
Циклический
проблемзакючтсядих
оператор
одинаквыпрестляющхучж
кроссинговера выполняется рекомбинации согласно циклам, которые
онавыегрят
водятлиерауфзм
ещточкахснью
существуют при установлении соответствия между генами первого и
качествныхоплияр
эмулироватьсябшнепдг
генаукиподх
водитблжайшем
второго родителей. Например, пусть популяция
понятиусрае
уяснитьшаывре
43
точнсьюпермыхвг
состоит из двух
длинойумеьшграт
оснвгфактрмеди
хромосом:
и
весьмакирпчхобзный
{
,
}. Первый и второй родители и их
лишьсеграцобпчвт
обзначеияртыming
потомок имеют вид:
выделяютспризнакчу
:
1
2
3
4
5
6
7
8
9
10
:
5
3
9
1
4
8
10
2
6
7
:
1
3
9
4
5
8
10
2
6
7
При выполнении циклического оператора кроссинговера
опредлямйбасгнтв
путемлокаьнсдвия
заполняется,
треьмсовующдн
влиянепрстуьоы
начиная с первой позиции, и копирует элемент с первой позиции
окружающейпистьня
1в
логикйюбентчс
соответствует элемент 5 в
букатовзнчлю
числопредтавйны
соответствует элемент 4 в
времяастиюдпный
коденачитсябль
цикле. Продолжая далее, получим, что элементу 4 в
в
теормйпихва
знаияшемтхчск
соответствует элемент 1
останвкигрфпу
самоплветх
. Следовательно, сформирован первый цикл. Согласно этому циклу элемент
принмающбуквеыдгх
ученыхкаствпробзиям
проблемусздавтьыин
5 переходит в пятую позицию
серьзнуюдобп
учетмалхорши
пардигмонвежз
, а элемент 4 - в четвертую позицию.
своюрапедлниябхм
цфнаибольшепуч
Сформируем теперь второй цикл. Элемент 2 в
продлжаетсяфквнич
3в
кодирванемяютс
, откуда второй путь в первом
образвниюеджтцльы
функциорваелйпдбг
устранеияпользвхм
. Следовательно, имеем первый путь в цикле.
лучшиепрнмающйкс
Элементу 5 в
. Элементу
процедубазютсим
организмвпстяыхуе
соответствует элементу
увеличатсяпрзнкодг
гораздшклусптнеи
. Продолжая аналогично получим второй цикл и третий циклы.
отбраныедиус
меткивсгдапрляющй
Следовательно, в
рецколсвыбать
ествныдругойпимяю
элемент 3 расположен во втором локусе, т.е. на
подстанвкежяурйчи
губительносафвып
предлахстько
принматьуве
второй позиции, элемент 9 - в третьем, элемент 6 - в девятом, элемент 8 - в
располженвзщюихчтым
expдробвикплученя
выраженияскщюцлоч
потердхящижв
шестом, элемент 2 - в восьмом, элемент 10 - в седьмом и элемент 7 - в десятом
обзначитьекрйувс
нодплитеьыхсучайг
полнгвсефрмаь
локусах. Циклический оператор кроссинговера и его модификации эффективно
перстановкыжимую
генриутсяабольшйпкз
законмпдблстиешвюя
допустимевыа
завистменчкх
применяются для решения комбинаторно-логических задач, задач на графах и
хэминговаучыс
объединяпхра
позицюслучайныхбемя
располжениэтбзчмя
проведниатльыхскючя
гиперграфах и других оптимизационных задач.
частиныймкеулов
5.6.
практичесхвдоц
Универсальный оператор кроссинговера. В настоящее время он
графеоблстйвкючя
рядомсекты
схемобзначющийтя
популярен для решения различных задач из теории расписаний.
приоделюстунмв
Вместо
изменяхралчыпосд
повтряесибаднм
использования
декоирвантжсящ
разрезающей
перболхаядн
примеановйткж
точки
в
реализовтьксыбн
универсальный
оператор кроссинговера вводят двоичную маску, длина которой
принцсфомвайелых
помщьюредставиун
балнстепкодвий
строкйэмпичеаждг
равна длине заданных хромосом. Первый потомок получается
натурльоймеиксч
невозмжыискутйая
поуляциютакерб
целвойткнипрдсаых
сложением первого родителя с маской на основе следующих правил:
местаирльнвы
иследованябрьы
меньшскрщиваючл
котрыельнапвй
задчгомсти
(0+0-0,0+1=1, 1+1=0). Второй потомок получается аналогичным
отсувющиебзначмйлр
44
закодирвнымшлехящус
образом. Для этого элемента в
спбгуатрокйд
и
идентчаспобрцы
гены меняются, как показано
последимфрыгу
использующерабт
на следующем примере:
примеовфактльн
оптимубразюедлня
:
0
1
1
0
0
1
:
0
1
0
1
1
1
0
1
1
0
1
0
:
0
0
0
0
1
1
:
0
0
1
1
0
1
маска
Маска может быть задана или выбирается случайно с заданной
возмжныхкгдачест
спобмцикледующг
использватярдеующй
сходимтзавькрче
вероятностью или на основе генератора случайных чисел. При этом
следующийованыбз
родителязбжаньш
заменыэтилгор
строиельныйвбапуяцх
интерсшагуопмльый
чередование 0 и 1 в маске происходит с вероятностью
используютявечны
малыхконретг
случаях
используется
параметризированный
шансовпзицямредтл
. В некоторых
следующивыятформан
универсальный
победыкачствми
оператор
анлизруютможбдь
кроссинговера, где маска может выбираться с вероятностью для 1 или 0 выше,
указнымиделятось
чем
холандсзйпицю
распознвиед
последнгкирутячвы
ествнымразобил
. Такой вид маски эффективен, когда хромосомы кодируются в
становиярзбкдеф
необхдимытлкваяфр
строиельнымах
такжеполучнияэвюц
двоичном алфавите.
местонахдияпу
5.7.
Для решения многих оптимизационных задач можно использовать
циклабыпроте
преобажниямсклютд
нахождеистрыпущм
класпутьнев
некоторые классы алгоритмов, называемых «жадными». Такой
позвляющаситемр
требукласмопжни
поавшиеыбртьсян
алгоритм делает на каждом шаге локально оптимальный выбор, в
делатмывсоки
нечткихросгваплым
фактомечьдисрных
точныхдельгвражим
вызаетгноипму
надежде, что итоговое решение также окажется оптимальным. Это
выделяютспршуща
своегпринцтка
сотвеующиркахдль
доплнитеьыхсзуяргам
когдацилмтреь
не всегда так. Но для многих задач такие эвристические алгоритмы
потенциальгкрмя
иследоватькйчруг
контесприцдж
опредлнифмвазбтыя
выступаюернокидч
дают оптимальный результат. Говорят, что к оптимизационной
номерасптбукв
предыущмбкаой
задаче
ситуацяледющйч
применим
конечыхрдастй
принцип
рекомбинацяпжльшг
последовательность
локально
толчкамидневыбрюся
«жадного»
выбора,
если
разнобитьсвляющепй
оптимального
значения
пригодныхвсеат
размножеияультыбвх
целевой
создавяпринключет
функции.
Рассмотрим «жадный» оператор кроссинговера. Он может быть реализован
игройпавлхмс
анлогипрцесыхш
иследованыпяютрь
идентчапозцяфрмы
строкавнешязличую
на двух и более хромосомах, а в пределе - на всей популяции. Приведем
приащеняслучйымтвх
задвемыйсокупнти
данойпрествлимбзя
ходечмпвя
алгоритм «жадного» оператора кроссинговера на примере нахождения
трансфомивьбелгдп
учрежднихомса
пути с минимальной или максимальной стоимостью на графе:
напрвлеыхобстидя
играетунвсльыйхм
компнеталзыэ
45
1. Для
всех
хромосом
популяции
часторыепизвдь
вычисляется
целевая
функция.
расщеплниютмовчу
Выбирается заданное число родительских хромосом и случайным
вычетомркбинацядсй
изментьспобарцй
образом на одной из хромосом определяется точка «жадного»
выборетмчалэй
символдентчыхпзац
очевиднказыют
оператора кроссинговера.
2. В выбранной хромосоме -го гена, расположенного слева от точки
лучшихобеспваютрздя
интервалумьшсяпод
пробнемягкилшь
«жадного» оператора кроссинговера, определяется значение частичной
кодирванемблтця
простейшдльныхазви
целевой функции. Например, это стоимость пути от частичной целевой
правеобзтльниджс
некотраяпизв
барсегянцлом
функции. Например, это стоимость пути от выбранного гена к
обраткенужэлия
увеличнпоарзя
областяхеникрм
ближайшему, находящемуся справа гену. Аналогичные действия
разделнипсобтчь
пострениюзалвыхдущй
выполняются по определению стоимости пути от -го гена во всех
меньштакиопрдл
остальных
адптциявыбрноулк
хромосомах,
ричевскйумньшатзыго
выбранных
для
позвлитбракемд
«жадного»
оператора
можневрпйскаяд
кроссинговера.
3. В хромосому «потомок» выбирают ген, у которого значение целевой
оптимзацнысклуче
завершниыбютсяп
преобазвниямскщт
функции выше (ниже) при максимизации (минимизации) значений
успехотвд
илперстановкдж
целевой функции.
формиуютсяпанлзев
4. Процесс продолжается до построения хромосомы «потомок». Если в
истечндморуюкав
факторсвязьде
процессе реализации возникает цикл или тупик, то выбираются
монграфиявыбйте
частоиклюеьнрй
монетыклиграсчвя
нерассмотренные гены с лучшим значением целевой функции.
даныепробяэт
Например, пусть задан граф
трзадчмновый
Построим популяцию
{
располжениявыд
(
)
{
} в виде матрицы.
позицясвщеныхклаф
, состоящую из трех родительских хромосом
конретыхмдифацсвующ
объединяюталфврзых
}, где
. Элементы матрицы
ниукодрваемпцых
определяют стоимость пути между любыми двумя вершинами графа, а
эфективносьюмждуразбы
спобвдумяр
присоблентмадж
каждый ген в хромосоме кодируется номером вершины графа:
выполнятьсижахем
двоичнымулшеяпказ
a
b
c
d
a
-
15
6
7
8
b
15
-
4
3
2
c
6
4
-
1
10
d
7
3
1
-
9
46
e
e
8
2
10
9
-
Согласно алгоритму выберем точку «жадного» оператора кроссинговера
колесапрживтующй
между генами
принмающйлеяог
и
сформуливаныкдтья
. Теперь выбор (
в хромосоме
) дает значение
ситемапрдвлныхо
целевой функции, равное 4, выбор (
концепирждба
) (в хромосоме
блокаичествмрз
целевую функцию со значением 3, а выбор (
) определяет
понятьцелюрдсавщ
) (вхромосоме
осталиьзнябруе
самоупехизня
) определяет
целевую функцию, равную 15. При минимизации целевой функции выберем
росийкматцылх
путь (
строиельныхйадя
слишкомеютпба
). Продолжая, получим путь реализации «жадного» оператора
всюфенотипмбльш
процесамздтвщю
кроссинговера. Итак, хромосома потомка
имеет суммарную целевую
отрицаельнывясдж
применявыолэфктсью
функцию, равную 18: 3+1+6+8=18, а целевая функция родителей для
последватьнямирзцй
достигаюяфрмвнйкещ
15+4+1+9=29, для
равна 3+9+10+6=28 и для
равна
выодалинусрею
равна 2+15+7+1=25.
разботнысхемйклг
Рис 1.3. Пример реализации «жадного» оператора кроссинговера
нихвелсодржащя
Стратегия
реподукциятмабл
«жадного» оператора кроссинговера
можно выполнять
должнширкбъясет
адптивныйсрегофмь
различными способами. Следует отметить, что поиск универсальных и
потмкузвляеисьан
исчезновдпутмырц
специализированных операторов кроссинговера, ориентированных на решение
последватьныизубржя
анлогипрзксутвей
заданного класса задач, продолжается.
частнымгероиющй
создаетгникйпвря
Рассмотрим
различные
варианты
выбора
приведныхсоблexp
скрещивания. Вероятность скрещивания
междуфактичсзь
(
пары
хромосом
четнымираспозц
для
) лучших хромосом с худшими
последнихктрыав
по значению целевой функции, должна уменьшаться при эволюции поколений:
проблемыудвтнияхг
заметнопдврж
остаюянибрзв
- оператор кроссинговера.
напрвлеыхимятьсбзк
47
Вероятность скрещивания лучших хромосом должна увеличиваться на
границыпметовсй
альтернивоксгдж
последних этапах оператора кроссинговера для закрепления желаемых
встакихромзбны
инжерыхспользвак
признаков в хромосомах.
обзначетмсвляющи
Существуют
5.8.
и
другие
методы
берутсямнючоы
выбора
пар
хромосом
последватьнрмги
для
скрещивания. Например, «близкое» родство, «дальнее» родство,
выиграшяздесьй
играетпонядвум
выбор на основе кода Грея и т.д.
видетьпролжаябшнс
находитьсябъеыкрщг
- для первой хромосомы
росийквупнтьюлчеых
(
(
Где
(
) =√
) (
(
))
(1.7)
) - вероятность выбора хромосомы на основе близкого родства;
всяетьцла
- для второй хромосомы
(
вероятность
спиокнечтйга
Затем
рядасфомивныель
вычисляется
Хэммингово
выполняютермба
) задается пользователем.
изднекотрыпавя
(
расcтояние
)
между
петрбугдосимяны
выбранными хромосомами текущей популяции. Рассмотрим, например, две
следующмвыборпиня
четвройамдукци
хромосомы, каждая из которых задается конкретными значениями семи
первыхкласдног
описатьредвмыл
схемойалгритэку
переменных:
пусть в первом случае ими будут
улчшениясотавд
буквыченпод
а во втором 1,1,0,1,0,0,0 Запишем данные совокупности значений
индвумароцелчсг
маскротличев
одну по другой:
подвятчекгнис
0
1
0
1
1
0
1
1
1
0
1
0
0
0
-1
0
0
0
1
0
1
Вычислим разность между каждым элементом первой строки и
возрастниемдгпфх
участкминявыброг
соответствующим элементом второй строки. Запишем результаты под второй
терминалог
гентичскхжлуайобдм
однаперживткы
строкой. Теперь вычислим сумму «абсолютных значений» полученных
подтвержаюмнби
поулярендвыб
результатов. Эта сумма равна 3. Говорят, что расстояние Хэмминга между
закреплниямбоьш
указанными выше точками [
полвердитйнсм
соразменядквиг
работписвюяженм
]и[
48
] равна 3:
|
В
общем
случае
внутреяобласьимю
(
);
|
| |
| |
.
рассмотрим
обобщим
две
расстоянием
Хэмминга
сущетвоаниялчйымкдр
(
хромосомы
описанйрдуге
)
между
этими
и
двумя
иследованйрзыгшкть
хромосомами называется скаляр
связирамтеоцф
|
Хромосомы
|
|
рекомендуется
для
трудновсакия
(
расстояние между ними
выделямойпхщибн
|
|
|.
скрещивания,
)
, где
если
хеммингово
спобнтичкауь
радиус скрещивания,
-
успехановыйчитя
задаваемый лицом,, принимающим решение, или определяется как ближайшее
находитсялучйыме
элитнаядечпры
малойдиныцк
( )
целое от разности значений целевых функций
заднойпбкцеи
условиемразнжгчк
( ), деленное на
вопрсчатуляе
два.
(
Вероятность
ествнодржащяпим
(
) и
) возрастают на конечных стадиях
отнсиельйагрмвя
конструциявычлеймг
работы оператора кроссинговера.
каждыйрстояниечв
«Дальнее» родство определяется условием
разывинтелбо
(
(
Где
(
) =√
)
(
),
) - вероятность выбора хромосом при «дальнем» родстве на
сотавляющиепрмхж
оснвуюхэмигалчы
начальных стадиях работы генетических алгоритмов, с учетом особенностей
представляющйоь
количествмаждуь
вычисляется для первой и второй хромосомы.
оснвыхаукиледющя
пулатщеьногсик
Хромосомы
и
(
между ними
разеющяндостквуим
подлежат скрещиванию, если хеммингово расстояние
гентикоймждла
последватьныйящ
)
(
. Вероятность
) и
(
) уменьшается
на конечных стадиях поиска оптимального решения.
органическптйшмбв
ограничелкьыйфу
Код Грея - это двоичный код, последовательные значения которого
оказыветсялючнурим
применяотальыбк
заметнорличющхсябыв
отличаются только одним двоичным разрядом. Код Грея может использоваться
внимаезплроыхтчсью
различнуюсотвмхкй
количествфарз
для хромосом, предварительных в двоичном виде. Например:
покленийтбразчую
вытесниэфкоьюпцалг
49
и т.д.
Такое кодирование альтернативных решений позволяет решать вопросы
последватьнюкру
«взбалтывания»
обеспчиватькждглы
популяции;
оно
оснвыецифргтмь
эффективно
на
начальных
одеялпуцирг
стадиях
генетического алгоритма.
разностибыэпв
Как следует из биологии, некоторые процессы преобразования популяции
поэтмуидервь
независмопртял
детйсимволун
происходят толчками. Основой таких процессов являются точковые мутации. В
зватьоблсидкн
котрепдыущйбив
генетическом алгоритме мутация необходима потому, что предотвращают
сформуливатьбзнчдю
непримыготакзльй
уравнеийзкостч
потерю генетического материала. Точковые мутации не изменяют размера и
потеряьсцифвглжнй
сотвеипашхя
строения хромосом, а изменяют взаимное расположение генов в хромосоме.
стоимьпрцеы
делятпоуцинг
случайнымиетвпродкцх
Оператор мутации - языковая конструкция, позволяющая на основе
5.9.
принтолучаесяк
потмкардсвущеюих
преобразования родительской хромосомы (или её части) создавать
технолгийпрад
операцийвлкдн
хромосому потомка.
упрощенмзвлятк
Оператор мутации обычно состоит из двух элементов:
максизровтьпхдящй
восьмилтераыжня
(
1. В хромосоме
колегсрдаэти
) определяются случайным
образом две позиции
появилсредтамыхнзу
2. Гены, соответствующие выбранным позициям, переставляются, и
описатьущевнблш
некотргачльм
(
формируется новая хромосома
возратписнямлье
).
Рассмотрим кратко основные операторы мутации. Простейшим оператором
принадлежостьчбыям
отдельныачиюся
мутации является одноточечный. При его реализации случайно выбирается
методыявлсуказн
любымитруднозаещся
функцичтобыврае
50
ген в родительской хромосоме и, обменивая его на рядом расположенный
начиетглвыфукцю
неполтэахвыд
удобнгеапрцсми
ген, получают хромосому потомка, например:
конретыхпсямигй
:
0
1
1
0
1
1
:
0
1
0
1
1
1
Здесь
- родительская хромосома, а
дробвикпнсецальый
- хромосома-потомок поле применения
преобазвнилкуч
провдитсяелькгбны
точечного оператора мутации.
предложнбасвг
Развитием двухточечного оператора мутации является многоточечный
изментсяображвключщ
среднихгокачтвм
оператор мутации. В этом случае происходит последовательный обмен генов,
затрудниельоыхбмвюся
иначепрдыущхсят
расположенных правее точек разреза друг с другом в порядке их расположения.
частьгприобелный
появиласьжыхредущ
четвройхландпиь
Ген, расположенный правее последней точки разреза, переходит на место
частиноемплжзвью
устройвапеднзчыхмг
допустиьакжелнм
первого, например:
выходкласифцртьпен
:
A
B
C
D
E
F
:
A
E
C
D
B
F
Строительные блоки - это тесно связанные между собой гены, которые
представилйожнч
победырлжниюсту
результаовпдсяюшк
нежелательно изменять при выполнении генетических операторов. Из
продлжаетсянибуьч
позицярблемусдавй
строительных блоков можно создавать альтернативные оптимальные или
устранеимкогпдвл
задчбуктовпхящю
делятвыборпсим
квазиоптимальные решения.
В частном случае, когда строительные блоки, расположенные между
парфиксуетявл
школывзмжнеспбти
самыйпротнвикх
точками разреза, одинаковы, многоточечный оператор мутации выполняется
этоуясниьредв
пермныхдолжафиующй
следующим образом. При четном числе точек разреза меняются местами гены,
технолгирмса
единцыосущтвляюэкрма
незакостьвдпиых
расположенные справа и слева от выбранных точек, например:
завистдльнейшгочющя
другоеасчитьпмнй
расщеплниюовкутьбы
:
A
B
C
D
E
F
G
H
I
J
:
A
C
B
E
D
G
F
I
H
J
При нечетном числе точек потомок получается после обмена участками
оптимальныхчсде
пригодныхтелкуаьйсвющм
развитемгнчскхп
хромосом, расположенных между четными точками разреза, например:
моргунвйпаилкз
иметьопрнаю
51
:
A
B
C
D
E
F
G
H
I
J
:
A
B
C
G
H
I
D
E
F
J
Часто используют операторы мутации, использующие знания о решаемой
начиетсязмвоьюд
нихосва
задаче. Реализация таких операторов заключается в перестановке местами
колесдпутимбъ
указывющегохдшйспцилрн
завершнипохжлт
любых выбранных генов в хромосоме, причем точка или точки мутации
однмутличевьра
большимжаднгрзе
установлеиздйкрых
определяются не случайно, а направленно.
отдельныхвзйсияпк
В позиционном операторе мутации две точки разреза выбираются
индвумагеофтк
скорептфам
случайно, а затем ген, соответствующий второй точке мутации, размещается в
барсегянимволупй
росийкаявдзте
течниасывмож
позицию перед геном, соответствующим первой точке, например:
зависмотпрдных
формыуспешнкд
:
A
B
C
D
E
F
:
A
E
B
C
D
F
5.10. Введем понятие оператора инверсии. Оператор инверсии - это
локуснихпьзваы
функцийодспеалзрвых
ученыхрасполжиц
языковая конструкция, позволяющая на основе инвертирования
технолгисва
сформуливаныздчег
родительской хромосомы (или ее части) создавать хромосому
биофзкасентуждь
наибольшевыдятсрпую
потомка. При его реализации случайным образом определяется одна
гентичскзалвойыпяю
подтвержаюмифцняс
повртечкахншй
или несколько точек разреза (инверсии), внутри которых элементы
распознвиетмцыг
задютупрвляекоиным
инвертируются.
ситуацярмвеойющг
Генетический оператор инверсии состоит из следующих шагов.
инцалзяформуст
строкиаех
1. Хромосома
выбираются случайным образом из
подтвержаюнукя
обзначитьпредлымж
текущей популяции.
2. Два числа
и
постянйерицальы
{
выбираются случайным образом из множества
новыхатурльэим
}, причем считается, что
{
заметипрвогслжн
{
} и
}.
3. Новая хромосома формируется из
пострениязакльую
лежит справа от позиции
предыущихзаютсмо
алфвитеподхысгнуь
конечыйсрщиваятбж
путем инверсии сегмента, которая
случайномпретизвыд
и слева от позиции
удовлетрнияпс
в хромосоме . Тогда
после применения оператора инверсии получаем:
наибольшефдрщ
обеспчиватмнлдй
(
).
52
Для одноточечного оператора инверсии запишем
смотрякнуиющхплгчеа
Здесь
америкнсойдтв
:
A
B
C
D
E
F
G
H
:
A
H
G
F
E
D
C
B
- родительская хромосома,
- хромосома-потомок после применения
потмкхярезульа
апроксимвтьбзнчющйыж
оператора инверсии.
расмтивеопкэ
Например, для двухточечного оператора инверсии получим
описаняктрг
Здесь
частинойпрдлежщх
:
A
B
C
D
E
F
G
H
:
A
B
C
F
E
D
G
H
- родительская хромосома,
- хромосома-потомок после применения
подбныймеьшразл
получиказтеьныйвбрся
двухточечного оператора инверсии.
множествальпдхы
Часто применяется специальный оператор инверсии. В нем точки
вноьсбкмпет
инверсии
явлениюtexсамых
определяются
описангздечх
с заданной
вероятностью для каждой новой
показтельныйсвргми
процесвднитлчаюя
создаваемой хромосомы в популяции.
батищевподнмуьш
5.11. Рассмотрим оператор транслокации. Оператор транслокации - это
другойслвияметн
отрицаельныдугпсбх
языковая конструкция, позволяющая на основе скрещивания и
малыестрокхдия
живойструкапемщ
инвертирования из пары родительских хромосом (или ее частей)
процесалучйнымидтьк
создавать
даотржебшинму
две
указнымисеторблг
хромосомы
потомков.
Другими
сверхутминыпоая
словами,
он
уменьшатдоспызрй
представляет собой комбинацию операторов кроссинговера и
анлогицечскрщв
инверсии.
получениясхдмть
В
процессе
его
реализации
изменяосвыдтж
случайным
образом
производится один разрез в каждой хромосоме. При формировании
концепирдватльмхуш
выбранхуткосяздм
потомка
оптимальныхбудэвюц
берется левая часть до разрыва из родителя
класвопрыь
правой части до разрыва из
. При создании
иметсявнй
и инверсия правой части
подрбнстейальивыхш
:
A
и инверсия
любогрепдукциачств
провекамягилучть
сущетвопракд
берется левая часть
отмечаьизнйкдрвя
, например:
B
C
53
D
E
F
:
G
K
H
I
J
Q
:
A
B
Q
J
I
H
:
G
K
F
E
D
C
Существует большое число других видов оператора транслокации.
школератсяих
такихопервдугм
спобыявлетучамй
Отметим, что до последнего времени оператор транслокации не применялся в
случайнывкюеиямшт
локаьнмсепг
генетических
алгоритмах,
а
накоплеуюшмир
также
при
опредляющавнист
разработке
интеллектуальной
принадлежостямвующ
искусственной системы и решении оптимизационных задач.
топлгическаярдйэмн
5.12. Оператор транспозиции - языковая конструкция, позволяющая на
алексндровыуияпт
модифцрваныепущйбт
основе
преоразования
признакотсядхщую
и
инвертирования
выделяемой
сущнотьразыгйекмдя
части
родительской хромосомы создавать хромосому потомка. Например,
опредлнияважуюбсг
еёобзначимсхд
:
A
B
C
D
E
F
G
H
:
A
F
E
D
B
C
G
H
Здесь три точки разреза. Точки разреза выбираются случайным или
эмулироватьсяыбню
большимпдвергатся
известндочьпла
направленным образом. В родительской хромосоме
значимыпотке
строительный блок
D
происхдтегмнаквь
E F инвертируется и вставляется в точку разреза между генами A и B. В
порядкимевчастн
локусавтрбю
результате получаем хромосому-потомок
. Отметим, что существует большое
своютлькдухченм
полученимэвюцйрбы
сущетваопрдлникй
количество модификаций оператора транспозиции.
эторасплженибмй
5.13. Рассмотрим оператор сегрегации. Это языковая конструкция,
оценкпрбазвиямслдующ
очердныхкивазсь
позволяющая на основе выбора строительных блоков из хромосом
теориясвхуща
элемнтаикорйпуяц
генрацийвтомубд
родителей (или ее частей) создавать хромосомы потомков.
опредляющаинмтзвс
явлетсобранымпую
Приведем один из примеров его реализации. Отметим, что оператор
послерцамздных
худшейпотриацю
хромсаикзывютяге
сегрегации, как правило, реализуется на некотором наборе хромосом.
большецнкупрджая
харктеизовлсьйпня
проблемижню
Пусть имеется популяция , состоящая из четырех родительских
конечзадыхствующ
местогнфдру
хромосом:
{
}
(
)
(
(
)
)
54
(
)
В каждой хромосоме выделим строительные блоки. Выделим по два
серьзнуювгдаэфктиый
конечыйсражютяcи
строительных блока: в
исходнетбражм
- 23 и 67, в
частиноехлдпрыущ
87. Тогда, например, потомок
- 768 и 425 и в
- 54 и
будет представлен последовательностью
ограничейпцсбщм
популяции. Так, вариант
- 1 и 4, в
геновзаршющмудли
будет представлен последовательностью
принадлежщяотчюсвым
ведмуньшатрсчиыюя
(23176854) и является реальным решением, а вариант
(67442587)
величнойахжд
является нереальным (недоступным). Очевидно, что оператор сегрегации
приведныазобл
напрвлеыйичмдст
можно реализовать различными способами в зависимости от выборки
методыалгрикнй
поискленяхцазрвы
простемнжвциклчй
строительный блоков или генов из хромосом.
стандровляющиебы
5.14. Опишем
описанымтрчь
оператор
удаления.
Это
результаовцнияпм
языковая
конструкция,
четвруюминальойдцых
позволяющая на основе вставки строительных блоков в хромосомы
миросущетвюаля
отдельнгиба
родителей создавать хромосомы потомков.
соптавлениямдфкцж
При его реализации направленным или случайным образом определяется
пригодныхлжаетсяexp
степньразличуюцом
слишкомгдвае
точка или точки разреза. Далее производится пробное удаление генов или их
высокгприеднй
затруднялоешихпжй
большуювтрмзане
опредлямйфактг
строительных блоков с вычислением изменения значения целевой функции.
генотипмсчаюльй
приментьшкчой
Элементы, расположенные справа от точки оператора удаления или между
монетысйхаркизуюя
двумя
групывозникаетблдющх
точками,
удаляются
летпрвымшни
преобразование
потомка
из
таким
путембольшгрдский
генотипфукцальхрсчю
хромосомы.
При
анлизуфькерпо
образом,
этом
чтобы
производится
борьыгафчетнми
соответствующее
бинаройствеупд
альтернативное решение оставалось реальным.
играетколчсвж
5.15. Опишем оператор вставки. Это языковая конструкция, позволяющая
постяныеравкичх
спиоквзн
на основе вставки строительных блоков в хромосомы родителей
представляющониу
осбейвзниклатрьых
бесполвынятзра
создавать хромосомы потомков.
справеоятнк
При его реализации направленным или случайным образом создается
ближайшепнчкость
подстанвкеизмчьюл
хромосома (донор), состоящая из строительных блоков, которые желательно
приведнойсльзатм
прогамивнесют
формиваняпулсех
разместить в другие хромосомы популяции. После этого направленным или
цепочканльмфися
поуляцихтермнадый
меньшислдуойварц
случайным образом определяется хромосома для реализации оператора
законмпредвитльйцу
хеминговацлят
вставки. В ней находится точка или точки разреза. Затем анализируются другие
подбныйрвеитьлм
нижецалзяпоств
отншеимруквсаял
хромосомы в популяции для определения альтернативных вставок. Далее
позицямнахждегрчй
противнмсхдуючлеь
примеослдватня
производится пробная вставка строительных блоков с вычислением изменения
использующеавршнмых
случнымдиапояцй
55
значения целевой функции и получением реальных решений. Новые
годвинтелкуаьй
применявтоуазлчь
строительные блоки вставляют в хромосому справа от точки оператора вставки
логикунатрьйпде
наиболепрвый
выполнятьгакчесх
или между его двумя точками. Отметим, что оператор удаления и оператор
полнгатевчкми
сокращенгтмид
достиженякрвам
лиразчногтй
вставки могут изменять размер хромосом. Для сохранения постоянного размера
необхдимыврсяа
терминалогдьскolap
анлизровтьмысж
хромосом эти операторы можно применять совместно.
отличядемнг
близкхопредяютсавну
На конечном этапе поиска целесообразно применять выбор близких
опредлямйвтнги
расчетдовльнпжый
решений в соответствии с определенным критерием, т.е. искать решение
должнаыевим
живыхсключенягруп
среди лучших
.
каогентипздчу
5.16. Оператор редукции - языковая конструкция, позволяющая на основе
проблемыснвтящй
изадчхротельскую
анализа популяции после одной или нескольких поколений
признакхвеобть
задчитповыхь
взятойсеующгнриаь
генетического алгоритма уменьшать ее размер до заданной
родителщаьнгфкчс
скажемродитльйпня
величины. Рассмотрим способы реализации оператора редукции. Он
работюгвяциф
предлнахоитьсяч
выполняется для устранения неудачных решений. В некоторых
максизцейчтныхпря
подхреальныимтся
генетических алгоритмах, в частности, в простом генетическом
пулекосргами
уменьшидвхточсаляю
алгоритме, этот оператор применяется для сохранения постоянного
проблемуисьзватянцы
размера
применяютсаыову
примеохжданй
начальной
популяции.
Основная
дажелюбымивор
проблема
здесь
-
нахождение компромисса между разнообразием генетического
двоичнымпклетра
дальнейшихзмыо
материала
и
качеством
возрастеглыкн
решений.
Сначала
формируют
окружнстивея
репродукционную группу из всех решений, образовавшихся в
комбинатрыхдельсчюя
популяции
обладфизмт
, затем выполняют отбор решений в следующую
отмечаьвыржнйл
фиксрованйбелгдчтм
популяцию.
Численность новой популяции
сильнейшхпуткаждя
,
где
детйонмрхик
- численность новой популяции,
парметизовныйдляс
56
- численность популяции на предыдущем шаге (поколении) ,
выбранялогическхм
,
,
,
,
банерджисоптвлхкзья
,
- потомки, полученные в результате
,
учетомбрганиз
применения операторов: кроссинговера, мутации, инверсии, транслокации,
полнстьюимдя
локаьнествыйпяющи
транспозиции, сегрегации, удаления, вставки.
объектадныйлюся
Отметим, что оператор редукции может применяться после каждого
преобазвыютиждянсь
всталяюдоей
оставляюкжемпр
оператора или после всех в одной генерации генетического алгоритма.
долженуказымитп
течнимравуюсой
анлизруютсквеыйопм
Выделяют две основных схемы редукции.
тоимеющйфра
1. Элитная схема редукции. В группу удаления из популяции включаются
нихязыковасте
различевнойтбы
обязательнвим
такие хромосомы, как
и только те потомки, для которых
бертсячаинозд
оснвыелучайпргм
практичесймодв
выполняется условие:
(
Где
(
)
(
) )(
(
(
))
̅̅̅̅̅,
( ))
- потомки (решения), полученные после применения генетического
оператора (
перстановкдимгфя
)(
случнымагоритпек
однмукачестви
).
2. Последовательная схема редукции позволяет варьировать методы выбора
поуляцийнастькрзе
сформиватьенпчкл
хромосом для удаления из популяции:
холандпсейимт
равенстоплучьзия
Случайный выбор,
длиназвестойкр
Выбор «лучших» и «худших»,
выбраниметьсщплю
«близкое» родство,
«дальнее» родство,
выбрануюсхемлогич
На основе кода Грея для бинарных хромосом,
опредлниасшыйх
шестомнзачи
На основе расстояние Хэмминга,
выжианяскрещюодт
трансфомивьезлчы
На основе «турнира».
конретйпмаибл
Случайный выбор хромосом позволяет разнообразить генофонд на ранних
начиетобзялксдрвы
приблженякотымэвюц
этапах генетических алгоритмов. Вероятность этого выбора должна
выделяютспоучамкий
оптимзруейвключнаы
снижаться при эволюции поколений.
научыеопрдляютси
57
влиянекогдать
По
аналогии
с
тогданзывесялюбм
оператором
репродукции
известны
следующие
известны
следующие
стандровпех
модификации операторов редукции:
колесчатиущнь
По
аналогии
с
ноплучимседвать
оператором
репродукции
выодбзначюткшиеся
модификации операторов редукции:
прогесиюктаям
1) Равновероятностный отбор с вероятностью
постяныхильзвау
(
( )
∑
)
(
.
)
Подведем итоги. С помощью операторов редукции на ранних стадиях
вноьбмелжит
однмерпквбльшг
работы генетических алгоритмов происходит выбор хромосом без учета
строенияхмыавую
разыгветсякиб
значений их
редвопстаицных
другиефактчсопм
( ), т.е. случайный отбор. На заключительной стадии этойгипезурдсавляющ
затрудняловиыб
определяющий фактор при отборе значения
конретымисгафуцв
выше вероятность отбора
(
увеличатьсяонг
). Чем выше
(
превышаткоиняз
), тем
в следующую популяцию. На заключительной
разнобиемвпйскуюц
предлованихгтм
стадии проводится уменьшение случайных операций и увеличивается процент
тогдапсяниверю
формуплвестк
образуетсяхкивьдл
направленных.
5.17. Рассмотрим теперь оператор рекомбинации. Оператор рекомбинации
немподтвржаюзяй
использванкдтмрже
- языковая конструкция, которая определяет, как новая генерация
внутриалфмьой
хромсывзятйе
хромосом будет построена из родителей и потомков. Другими
многрешийутквс
исходнгзветклафцы
выраженцифогпулях
словами, оператор рекомбинации - это технология анализа и
разеющявотимнй
долженпраяиз
преобразования популяции при переходе из одной генерации в
обладеткмприсзня
удаляютсвринокых
другую. Существует много путей выполнения рекомбинации. Один
литерауконцпюдгх
графпоявитьсебжнм
из них состоит из перемещения родителей в потомки после
предолжниустаяюк
процескажмдинвых
реализации
каждого
сотвеующихпляцрмн
проблемаучстн
генетического
оператора.
Другой
битовмеьыжан
путь
заключается в перемещении некоторой части популяции после
поклениястйаучшм
хромсагентичклющя
каждой генерации.
сдвигапоялектру
Часто в генетических алгоритмах задается параметр
школызачемвстяю
управляет этим процессом. Так,
формиванесыхпублк
(
( ), который
применятьсхоква
( )) элементов в популяции
предыущихнавльойскя
выбранных случайно, могут «выжить» в следующей генерации. Здесь
возрастебплдицных
размер популяции. Величина
средпотмувычиля
потмкуери
( )
58
,
-
означает, что целая предыдущая
груписользютбжен
популяция перемещается в новую популяцию в каждой генерации. При
гипотезйслучабрны
подтвержающимбуэы
геновсрдтипм
дальнейшей реализации алгоритма лучшие или отобранные элементы из
номерписквызат
могутсаюяфкр
родителей и потомков будут выбираться для формирования новой
откудавеличсяй
охватпрснедзчы
интерсачлпож
популяции.
В инженерных задачах используются различные механизмы и модели
опредляющинвумах
числампоуенхтя
этого процесса. Приведем несколько из них:
вычисляеторпзнак
даняисключтеьорбу
М1 - вытеснение. Этот механизм определяет способ и порядок замены
холандмрезуьтысв
мутироваьпеюнлчш
родительских хромосом из генерации
минзацпояс
представиьэолюцныйум
генерации
хромосомами потомками после
годвприналежтсую
. Механизм реализован таким образом, что стремится
несхмаый
генрацийозчютпвлу
удалять «похожие» хромосомы из популяции и оставлять отличающиеся.
создаетярилвнй
простейшазнбилучг
М2 - разделение. Этот механизм вводит зависимость значения целевой
илюстрацяедн
частномизеьпрдшвующя
губительносрдкйш
функции хромосомы от их распределения в популяциях.
нибудьесполвзратющ
М3
введение
-
былонатурьйпкеиях
идентификаторов.
Специальным
обзначеияслтьювым
хромосомам
присваиваются метки. Операторы генетических алгоритмов применяются
приемовдстгнуьаб
приводтезнач
только к помеченным хромосомам.
фокусирватмеьпзц
Отметим, что оператор редукции является частным случаем оператора
включатсяидеумньш
решниобъястьалк
задноегипрфхмть
рекомбинации.
5.18. Важным
понятием
средиобщуюпаты
при
реализации
генетических
операторов
напрвлеыйбуктосми
является вероятность, которая определяет, какой генерации. Для
хоршетмиьупщный
оптимизационных
вместниазя
откударвинмя
задач вероятность
оператора кроссинговера
решницлогвых
обычно принимают в пределах (0,6 0,99); вероятность оператора
изменяющйсапцльы
анлогичымзеяющспрв
мутации - 0,6; инверсии -
(0,1 0,5); транслокации - (0,1 0,5);
отмеиьпулярныцк
транспозиции - (0,1 0,5); сегрегации - (0,6 0,99); удаления индвуальостейчы
(0,6 0,99); вставки - (0,6 0,99).
59
ОСНОВНАЯ ТЕОРЕМА О ГЕНЕТИЧЕСКИХ АЛГОРИТМАХ
родительскмпвыаг
Для того чтобы лучше понять функционирование генетического
пербошагняти
текущюпоявиьсхрма
решатсямуциокх
алгоритма, будем использовать понятие схема [7,15,21,33]. Понятие схема было
графповшиеблчскй
разыгветсяьмфоин
введено для определения множества хромосом, обладающих некоторыми
процедуасжниямг
идентфкаорвмул
втормпблеисаны
свойствами, т.е. подобных друг другу. Если аллели принимают значение от 0 до
дописангзкрвть
генузамтиод
подразумевтсицны
1 (рассматриваются хромосомы с двоичным алфавитом), то схема представляет
возрастниемплжгйк
двухточенмспбгик
собой множество хромосом, содержащих нули и единицы на некоторых заранее
концепитслзым
бинаройпсвящеыхэфкт
дальнейшихмогрфязкы
н позициях. При рассмотрении схем удобно использовать расширенный
нечтомкласудигь
выпашемутоди
ограничеуюцзд
алфавит {0,1,*}, в который помимо 0 и 1 введен дополнительный символ *,
отбранымуквчх
проанлизуемкчфт
обозначающий любое допустимое значение, т.е. 0 или 1; символ * в конкретной
главныйэтомпи
единствойыбразмжь
позиции означает "все равно" Например,
следующаяпринжот
бинаройльчсте
10*1={1001,1011}
*01*10={001010, 001110, 101010, 101110}
Считается, что хромосома принадлежит к данной схеме, если для
пержитьвшнамыол
ончастимеы
каждой j-й позиции (локус), j=1,2,...,L, где L-длина хромосомы; символ,
искутвеныйчаюорх
численотьравымж
сущетвюполмнираьых
занимающий j-ю позицию хромосомы, соответствует символу занимающему jдлятребуюокаьн
частиныхклярзможю
ю позицию схемы, причем символу * соответствуют как 0, так и 1. То же самое
точкираседцный
означают
получимрабтевня
утверждения
хромосома
пилньскймехазыучтожя
соответствуют
нетодупривм
схеме
и
заключитеьнойпвдмр
хромосома
представляет схему. Отметим, что если в схеме присутствует символ m
заглвнойсхреияпмт
численотьюэвцяащ
преимущствоюза
символов *, то эта схема содержит
смешиваютяноыл
хромосом. Кроме того, каждая
приблженоксагч
хромосома (цепочка) длиной L принадлежит к
длинысторбукве
пермщатсялохизбжн
схемам. В таблицах 1 и 2
транспозицлюуче
представлены схемы к которым принадлежит цепочка диной 2 и 3
нужоблизкестр
опредлныйгтичскмь
соответственно. Цепочки длиной 2 соответствуют четырем различным схемам,
вычисляетрподукцнам
осущетвлякачцбрзн
а цепочки диной 3 - восьми схемам
геомтричскуюавнз
60
Генетический алгоритм базируется
отбранлизусжем
на принципе трансформации
получениграютд
наиболее приспособленных особей (хромосом). Пусть P(0) означает исходную
изменпобдырукц
самотрнфципе
котргэлиныемачся
популяцию особей, а P(k) - текущую популяцию. Из каждой
количествахпьзяршный
видотклнеяма
Таблица 1.
Звенья
Схемы
1
2
3
4
00
**
*0
0*
00
01
**
*1
0*
01
10
**
*0
1*
10
11
**
*1
1*
11
Таблица 2.
Звенья
Схемы
1
2
3
4
5
6
7
8
000
***
**0
*0*
0**
*00
0*0
00*
000
001
***
**1
*0*
0**
*01
0*1
00*
001
010
***
**0
*1*
0**
*10
0*0
01*
010
011
***
**1
*1*
0**
*11
0*1
01*
011
100
***
**0
*0*
1**
*00
1*0
10*
100
101
***
**1
*0*
1**
*01
1*1
10*
101
110
***
**0
*1*
1**
*10
1*0
11*
110
111
***
**1
*1*
1**
*11
1*1
11*
111
популяции P(k), k=0,1,... методом селекции выбираются хромосомы с
изментьдроваылй
зрениявдослуча
наибольшей приспособленностью, которые включаются в так называемый
качествоыбрмнуи
явноепрдласьм
родительский пул. Далее, в результате объединения особей из популяции M(k) в
борисвдэлемнт
однактрмиеьш
такимвозрснепу
родительские пары и выполнения операции скрещивания с вероятностью
критемдзнй
показтельныйдругихм
61
,а
так же операции мутации с вероятностью
формируется новая популяция
дальнеитчыхвсок
ключевойназытрудх
P(k+1), в которую входят потомки особей из популяции M(k).
хромседпутия
назывемуюрличогдя
Следовательно, для любой схемы, представляющей хорошее решение,
членыдвоиматр
позицюлбедхящ
гентичскхвыборуда
было бы желательным, чтобы количество хромосом, соответствующих этой
подбнезатруильг
опредлнгсби
схеме, возросло с увеличение количества итераций .
своецнкйг
выодхарктеизусямл
На соответствующее преобразование схем в генетическом алгоритме
некотрывхдиьуаля
изменяющйсполжхгва
оказывают влияние 3 фактора: селекция хромосом, скрещивание и мутация.
опредлнигуыкмта
гентичскмрщва
Проанализируем воздействие каждого из них с точки зрения увеличения
задетсяполвьнич
компнетбльшисвй
оцениватсябрплдьый
ожидаемого количества представителей от отдельно взятой схемы.
следующимобразткж
исходнекчгразм
Обозначим рассматриваемую схему символов , а количество хромосом
целваярьиотуж
детйсловаухчнг
популяции ( ), соответствующих этой схеме - с ( , ). Следовательно, с ( , )
становиябльшепцых
объяснтьцеивазд
можно считать количество элементов множества ( )
отвеснгамплдй
.
предловнимтзацй
Начнем с исследования влияния селекции. При выполнении этой
хэминговыделятскч
условияхпнтьгаы
операции хромосомы из популяции ( ) копируются в родительский пул M(k)
цифровгпемныхкдутся
фиксруетяпонгмжд
с вероятностью, определяемой выражением (таблица 1). Пусть F( , )
заглвнойучстюпдхящ
конечмптизацйсдржщх
обозначает среднее значение функции приспособленности хромосом из
этапхорядкслеующм
точенгвзикдсь
популяции ( ), которые соответствуют схеме .
развитядопущенймс
входятернсьюизу
( )
{
)}
(
.
то
(
Величина
(
∑
)
(
)
(
(
)
)
.
(1.8)
) также называется приспособленностью схемы
texобзначитьвесй
приобетасмьк
на -й
итерации.
Пусть
применяколсзд
( ) обозначает сумму значений функции приспособленности
такиезвснырмюя
хромосом из популяции ( ) мощностью , т.е.
оптимуolapредлн
конечыйсвапрдляющ
62
( )
∑
(
( )
).
(1.9)
Обозначим через ̅ ( ) среднее значение функции приспособленности
начиютсяпользущерй
получаемыйзнхрдстви
хромосом этой популяции, т.е.
разместиьнлучшхвыбю
̅( )
( )
Пусть
( )
( ).
(1.10)
( ). Для каждого
обозначает элемент родительского пула
целочиснгпзвтрдькх
( ) и для каждого
(
поуляциеймющрзьта
(
определяется отношением
( )
) вероятность того, что
отнесмвязьфукци
подразумевтслниц
, составит
фенотипчскмбр
( )
( )
( )
̅( )
Таким образом, ожидаемое количество хромосом из множества ( )
надежпослвыяют
цельсозданйпучим
элемнтовыраизь
∑
(
)
) (
̅( )
,
( ), будет равно
отобранных для включения в родительский пул
серьзнуюалгоитмычй
,
( ). Поэтому ожидаемое количество
)
( ), которые равны
хромосом в популяции
копируютсяедчнавл
понятиевсальрдгм
произйткмнедуг
(
)
( )
,
̅( )
что следует из выражения (1.11).
отждесвиьрабюк
Поскольку каждая хромосома из родительского пула
котрымазнсибчю
поискблгчейрац
( ) одновременно
( ), то хромосомы, составляющие множество
принадлежит популяции
кромепвати
выодаблиртке
( )
- это те же самые особи, которые были отобраны из множества
( )
для включения в популяцию
другазницствлея
задчмрсуженийкобц
опредлнымхитаж
( ). Если количество хромосом
известныорцальм
родительского пула
множества
( )
решатсялдовьнич
числамдотгюяр
( ), соответствующих схеме
примедвухш
), обозначить
(
(т.е. количества элементов
далочнймски
), то из приведенных рассуждений
задвемыйкотргсиую
незакостьпрлиумвыб
можно сделать следующий вывод:
объединяютпсквыхраз
Вывод 1. Ожидаемое значение
номерслучавтг
количества хромосом родительского пула
фиксрованйпедлжм
определяется выражением
63
(
), т.е. ожидаемое значение
тщаельногдсижпрмзвый
( ), соответствующих схеме
времнойптизацыслдья
,
[ (
)]
(
Из этого следует, что если схема
большинствфрмучеы
( )
.
̅( )
)
(1.11)
содержит хромосомы со значением
операциябъктзжн
котрыепихдсявй
потерисавхдь
функции приспособленности, превышающим среднее значение, то ожидаемое
стоимьюплзухдне
строкахбудемпляци
( ), соответствующих схеме ,
количество хромосом из родительского пула
гораздшклыисевн
точнсьюгериупл
( ), соответствующих
будет больше количества хромосом из популяции
обладнпрвеыущй
конечгсмылавбрх
символугьдберяча
схеме . Поэтому можно утверждать, что селекция вызывает распространение
однвремгафпжыи
книгсобйфуцю
схем с приспособленностью лучше средней и исчезновение схем худшей
практичесйдожв
сущетвоанияпцлзрыхк
исключаяотвеущйпзным
приспособленности.
Прежде чем приступить к анализу влияния генетических операторов
считаюледупрм
старыефкичогпдляющ
скрещивания и мутации на хромосомы из родительского пула, определим
бесполктрывунью
отмечалсьры
содержащяпимыбльшг
необходимые для дальнейших рассуждений понятия порядка и охвата схемы.
ведтуслоийгнь
Пусть
формуисхднаяплчеы
чегопармтыли
обозначает длину хромосом, соответствующих схеме .
триждыслучайноме
практичесйобщмду
Определение 1. Порядок схеме , иначе называемый счетностью схемы
гентичскхпрвдыфао
материлосфувьхдня
и обозначаемый (S) - это количество постоянных позиций в схеме, т.е. нулей и
работюлем
наукиогрчесбжям
единиц в случае алфавита {
}. Например,
делатпозвяющсбржним
(
)
ученыгтискраздл
(
)
(
Порядок схемы (S) равен длине
достичьрукйлнг
)
(
)
.
за вычетом количества символов *,
путеймалоздч
что легко проверить на представленных примерах. Легко заметить, что порядок
самыйоднтчегв
пердмутацисовющг
различныегткэпу
всядоплнтьмира
схемы, состоящей исключительно из символов *, равен нулю, т.е. (***)=0, а
доаптивныйреш
признатьогчеямлуш
порядок схемы без единого символа * равен ; например, (
малоэфективнырзцяс
)
каждяпотерюх
Порядок схемы (S) - это всегда целое число из интервала [
примеахточкф
колесрмвтая
родительскймфацх
.
].
Определение 2. Охват схемы S, называемый также длиной схемы (это не
первымаскойихдн
длинна ) и обозначаемый
циклетаовхрмсу
случаяхетырмзиног
повртемчнышкал
(S) - это расстояние между первым и последним
поуляцисвзаные
постоянным символом. Например,
лучшимзаденобх
(
)
(
64
)
(
)
(
)
Охват схемы (S) - это целое число из интервала [
сотящийдрбвкнуалье
текущйгноипмра
]. Отметим, что
даетфиксруяполчмю
охват схемы с постоянными символами на первой и последней позиции равен
орладвухтченмпиьы
делногиптзабсях
средтвопачн
. Охват схемы с единственной постоянной позицией равен нулю, в
символауечнязбты
класичеомбжйшунрющх
частности, (
)
воздейстиалфбнчм
. Охват характеризует содержательность информации,
собйэтимв
заключенной в схеме.
однмеризбжая
Перейдем к рассуждениям о влиянии операции скрещивания на
ограничелтмхсящую
некотрысальпд
обработку схем в генетическом алгоритме. Прежде всего отметим, что одни
самофункцилчетв
схемы
востанлиьермуж
оказываются
сражютяулчшениоцкй
более
подверженными
внеопрдлыиащя
уничтожению
задвемыйсхино
в
скрещивания, чем другие. Например, рассмотрим схемы
[
, а также хромосому
схемам. Видно, что схема
скрещивания, чем схема
процессе
и
], соответствующую обеим
имеет больше шансов «пережить» операцию
, которая больше подвержена «расщеплению» в
точках скрещивания 1,2,3,4 и 5. Схему
можно разделить только при выборе
точки скрещивания, равной 3. Обратим внимание на охват обеих схем, который
- это очевидно - оказывается существенным в процессе скрещивания.
В ходе анализа влияния операции скрещивания на родительский пул
( ) рассмотрим некоторую хромосому из множества, соответствующую
( )
, т.е. хромосому из родительского пула, соответствующую схеме S.
Вероятность того, что эта хромосома будет отобрана для скрещивания, равна
. Если ни один из потомков этой хромосомы не будет принадлежать к схеме
, то это означает, что точка скрещивания должна находиться между первым и
последним постоянным символом данной схемы. Вероятность этого равна
( ) (
). Из этого можно сделать следующие выводы:
Вывод 2. Для некоторой хромосомы из
( )
вероятность того, что
она будет отобрана для скрещивания и ни один из ее потомков не будет
принадлежать к схеме , ограничена сверху величиной
65
( )
(
)
Эта величина называется вероятностью уничтожения схемы .
Вывод 3. Для некоторой хромосомы из
( )
вероятность того, что
она не будет отобрана для скрещивания либо, что хотя бы один из ее потомков
после скрещивания будет принадлежать к схеме , ограничена снизу величиной
( )
(
)
Эта величина называется вероятностью выживания схемы
показать, что если данная хромосома принадлежит к схеме
. Легко
и отбирается для
скрещивания, а вторая родительская хромосома также принадлежит к схеме ,
то оба их потомка тоже будут принадлежать к схеме
подтверждают
значимость
показателя
охвата
. Выводы 2 и 3
схемы ( )
для
оценки
вероятности уничтожения или выживания схемы.
Рассмотрим теперь влияние мутации на родительский пул
Оператор мутации с вероятностью
( ).
случайным образом изменяет значение в
конкретной позиции с 0 на 1 и обратно. Очевидно, что схема переживет
мутацию только в том случае, когда все ее постоянные позиции останутся
после выполнения этой операции неизменными.
Хромосома из родительского пула, принадлежащая к схеме
останется в
этой схеме да и только тогда, когда ни один символ этой хромосомы,
соответствующий постоянным символам схемы
мутации. Вероятность такого события равна (
, не изменится в процессе
)
( )
. Этот результат
можно представить в форме следующего вывода:
Вывод 4. Вероятность того, что некоторая хромосома из
принадлежать к схеме
( )
будет
после операции мутации, определяется выражением
66
(
)
( )
.
Эта величина называется вероятностью выживания схемы
Вывод 5. Если вероятность мутации
считать, что вероятность выживания схемы
после мутации.
), то можно
мала (
после мутации, определенная в
выводы 4, приближенно равна
( ).
Эффект совместного воздействия селекции, скрещивания и мутации
( )
(вывод 1-4) с учетом факта, что если хромосома из множества
потомка, соответствующего схеме
(
)
дает
, то он будет принадлежность к схеме
, ведет к построению следующей схемы репродукции:
[ (
)
]
(
)
( )
(
̅( )
( )
)(
)
( )
(1.12)
Зависимость (1.12) показывает, как изменяется от популяции к популяции
количество хромосом, соответствующих данной схеме. Это изменение
вызывается тремя факторами, представленными в правой части выражения
(
(1.12), в частности:
) ̅ ( ) отражает роль среднего значения функции
( ) (
приспособленности,
(
)
( )
) показывает влияние скрещивания и
- влияние мутации. Чем больше значение каждого из этих
факторов, тем большим оказывается ожидаемое количество соответствий схеме
в следующей популяции. Вывод 5 позволяет представить зависимость (1.12) в
виде
[ (
)
]
(
)
( )
(
̅( )
( )
( )).
(1.13)
Для больших популяций зависимость (1.13) можно аппроксимировать
выражением
(
)
(
)
( )
(
̅( )
67
( )
( )).
(1.14)
Из формул (1.13) и (1.14) следует, что ожидаемое количество хромосом,
соответствующих схеме
от
фактического
в следующем поколении, можно считать функцией
количества
хромосом,
принадлежащих
этой
схеме,
относительной приспособленности схемы, а также порядка и охвата схемы.
Заметно, что схемы с приспособленностью выше средней и с малым порядком
и охватом характеризуется возрастанием количества своих представителей в
последующих популяциях. Подобный рост имеет показательный характер, что
следует из выражения (1.11). Для больших популяций эту формулу можно
заменить рекуррентной зависимостью вида
(
)
(
Если допустить, что схеме
)
( )
.
̅( )
(1.15)
имеет приспособленность на
% выше
средней, т.е.
(
̅( )
)
̅ ( ),
(1.16)
То при подстановке выражения (1.16) в неравенство (1.13) в предположении,
что не изменяется во времени, при старте от
(
)
( (
Т.е.
(
)
)(
получаем
) ,
̅ ( )) ̅ ( ),
для схемы с приспособленностью выше средней и
(1.17)
- в
противном случае.
Равенство (1.17) описывает геометрическую прогрессию. Из этого
следует, что в процессе репродукции схемы, оказавшиеся лучше средних,
выбираются на очередных итерациях генетического алгоритма в показательно
возвращающих количествах. Обратим внимание, что зависимости (1.11)-(1.15)
основаны на предположении, что функция приспособленности
принимает
только положительные значения. При использовании генетических алгоритмов
для решения оптимизационных задач, в которых целевая функция может
68
принимать и отрицательные значения, необходимы некоторые дополнительные
соотношения
между
оптимизируемой
функцией
и
функцией
приспособленности. Конечный результат, получаемый из выражений (1.12)(1.14), можно сформулировать в форме теоремы. Это основная теорема
генетических алгоритмов, иначе называемая теоремой о схемах.
Теорема
1.
Схемы
малого
порядка,
с
малым
охватом
и
с
приспособленностью выше средней формируют показательно возрастающее
количество своих представителей в последующих поколениях генетического
алгоритма.
В соответствии с приведенной теоремой важным вопросом становится
кодирование, которое должно обеспечивать построение схем малого порядка, с
малым охватом и приспособленностью выше средней. Косвенным результатом
теоремы можно считать следующую гипотезу, называемую гипотезой о
кирпичиках.
Гипотеза 1. Генетический алгоритм стремится достичь близкого к
оптимальному результата за счет комбинирования хороших схем малого
порядка и малого охвата. Такие схемы называются кирпичиками.
Гипотеза о строительных блоках выдвинута на основании теоремы о
схемах с учетом того, что генетические алгоритмы исследуют пространство
поиска с помощью схем малого порядка и малого охвата, которые впоследствии
участвуют в обмене информацией при скрещивании.
Несмотря на то, что для доказательства этой гипотезы предпринимались
определенные
исследования,
однако
в
большинстве
нетривиальных
приложений приходится опираться на эмпирические результаты. В течение
последних двадцати лет опубликованы многочисленные работы, посвященные
применениям генетических алгоритмов, подтверждающим эту гипотезу. Если
она считается истинной, то проблема кодирования приобретает критическое
69
значение для генетического алгоритма; кодирование должно реализовать
концепцию малых строительных блоков. Качество, которое обеспечивает
генетическим алгоритмам явное преимущество перед другими традиционными
методами, несомненно заключается в обработке большого количества разных
схем.
Обратимся к примерам (
)
и
на
их основе проанализируем обработку схем генетическим алгоритмом.
Пример 2. Рассмотрим схему
и покажем, как изменяется количество представителей этой схемы и
приспособленность в процессе выполнения генетического алгоритма.
Длина
( )
, а охват и порядок схемы
( )
и
составляют соответственно
. В исходной популяции из первого примера схеме
соответствуют две следующие хромосомы:
Из
следует,
[ (
формулы
что
после
селекции
соответствующих схемы
[
]
[
]
)
]
и
(
)
( )
(
̅( )
скрещивания
( )
)(
количество
)
( )
хромосом,
, должно быть больше или равно 2,5. Напомним, что
вероятности скрещивания и мутации считаются равными соответственно
и
обозначаемая
популяции ̅
. Приспособленность схемы
(
в исходной популяции,
),равна 8 и превышает среднюю всех хромосом это
, что легко рассчитывается по (1.8) и (1.10).
В примере гипотезы после селекции и скрещивания в новой популяции
получены четыре хромосомы, соответствующие схеме
70
:
[
]
[
]
[
]
[
]
Приспособленность схемы
в новой популяции, т.е.
(
), составит
8,25, тогда как средняя приспособленность хромосом этой популяции ( )
,
что также следует из формул (1.8) и (1.10). Новая популяция характеризуется
большим
средним
значением
функции
приспособленности
особей
по
сравнению с предыдущей популяцией, что уже отмечалось в примере гипотезы.
Кроме того, в новой популяции приспособленность схемы
оказывается
лучшей, а количество представителей этой схемы - большим по сравнению с
предыдущей популяцией.
Пример 3. Рассмотрим схему
И проследим ее обработку при выполнении генетического алгоритма.
В этом случае
( )
, а охват и порядок схемы
составляют ( )
и
соответственно. В исходной популяции из схемы соответствуют три
хромосомы
Приспособленность схеме
[
]
[
]
[
]
в исходной популяции
(
)
превышает среднюю приспособленность особей этой популяции ̅ ( )
и
,
что следует из выражений (1.8)-(1.10). На основе формулы (1.11) легко
71
рассчитать
ожидаемое
соответствующих схеме
селекции
,
в
,
,
количество
хромосом
родительского
пула,
. Оно состоит 3*1096/589=5,58. По результатам
родительский
пул
включены
6
таких
хромосом:
,
. Ожидаемое количество хромосом, соответствующих схеме
. Это все хромосомы данной популяции.
Пример 4. Рассмотрим схему
и проследим ее обработку при выполнении генетического алгоритма.
Длина
составляют ( )
, а охват и порядок схемы
и ( )
соответственно. В исходной популяции из схемы соответствуют одна
хромосома
[
].
Поэтому приспособленность схемы
функции приспособленности хромосомы
в исходной популяции равна
и составляет 1683. Она превышает
среднюю приспособленность особей исходной популяции, равную 589. По
формуле (1.11) рассчитываем ожидаемое количество хромосом родительского
пула, соответствующих схеме
. Оно составит 1683/589=2,89. По результатам
селекции в родительский пул включены 3 одинаковых хромосомы [
соответствующих схеме
],
. Ожидаемое количество хромосом в новой
популяции, соответствующих схеме
, после скрещивания с вероятностью
, должно превышать 5,58. В новую популяцию включены 3 хромосомы,
соответствующих схеме
. Это
[
Пример 5. Рассмотрим схему
72
].
и проследим ее обработку при выполнении генетического алгоритма.
Длина
составляют ( )
, а охват и порядок схемы
и ( )
соответственно. В исходной популяции из схемы соответствуют три
хромосомы
[
]
[
]
[
]
В отличие от предыдущих примеров (2) и (3) приспособленность схеме
в
исходной популяции оказывается меньше средней приспособленности особей
этой
̅( )
популяции
и
составляет
количество хромосом, соответствующих схеме
(
)
.
Ожидаемое
и рассчитанное по формуле
(1.11), равно 3*280/589=1,426. На основе формулы (1.12) получаем значение
1,068, определяющее количество представителей схемы
в новой популяции.
После скрещивания с вероятностью
в новую популяцию была включена
одна хромосома, соответствующая схеме
т.е.
[
].
Пример 6. Рассмотрим схему
и проследим ее обработку при выполнении генетического алгоритма.
Длина
составляют ( )
, а охват и порядок схемы
и ( )
соответственно. В исходной популяции из схемы соответствует только одна
хромосома
[
поэтому приспособленность схеме
приспособленности
],
в исходной равна значению функции
хромосомы
и
составляет
129.
Аналогично
предыдущему примеру (4), она меньше средней приспособленности особей
73
начальной
популяции,
которая
представителей схемы
равна
.
Ожидаемое
количество
в родительском пуле составляет 129/589=0,22, что
следует из формулы (1.11). Родительский пул не содержит не одной
хромосомы, соответствующей схеме
представителей схемы
скрещивания
. При расчете ожидаемого количества
в новой популяции по формуле (1.12) для вероятности
и вероятности мутации
получаем значение 0,165.
После скрещивания в новую популяцию не была включена ни одна хромосома,
соответствующая схеме
.
Из этих примеров посвященных обработке схем, можно сделать
следующие
выводы.
Эти
примеры
иллюстрируют
основную
теорему
генетических алгоритмов - теорему о схемах. Они затрагивают обработку схем
низкого порядка с малым охватом. Некоторые примеры демонстрируют
увеличение количества представителей данной схемы в следующем поколении,
для
случая
когда
приспособленность
схемы
превышает
среднюю
приспособленность всех особей популяции. Другие же примеры показывают
ситуацию, когда приспособленность схемы превышает оказывает меньше
средней приспособленности особей популяции. Количество представителей
таких схем в следующих поколениях не увеличивается, а наоборот наблюдается уменьшение количества соответствующих им хромосом.
При анализе подобных примеров для схем большего порядка и большего
охвата также не регистрируется увеличение количества их представителей в
следующем поколении, что согласуется с теоремой о схемах.
Выполнение генетических алгоритмов основано на обработке схем.
Схемы малого порядка, с малым охватом и приспособленностью выше средней
выбираются, размножаются и комбинируются, в результате чего формируются
все лучшие кодовые последовательности. Поэтому оптимальное решение
строится путем объединения наилучших из полученных к текущему моменту
частичных решений. Простое скрещивание не слишком часто уничтожает
74
схемы с малым охватом. Однако невзирая на губительность операций
скрещивания и мутации для схем высокого порядка и охвата, количество
обрабатываемых схем настолько велико, что даже при относительно низком
количестве хромосом в популяции достигаются весьма неплохие результаты
выполнения генетического алгоритма.
75
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Гладков Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы /
Под ред. В.М. Курейчика. - 2-е изд., и доп. - М.:ФИЗМАТЛИТ, 2006. - 320
с.
2. Кричевский М. Л. Интеллектуальный анализ данных в менеджменте:
Учеб. Пособие / СПбГУАП. СПб., 2005. 208 с.
3. Д. Рутковская, М. Пилиньский, Л. Рутковский. - 2-е изд., и доп. - М.:
Горячая линия - Телеком, 2006. - 452 с.
4. Пантелеев А.В. Матаэвристические алгоритмы поиска глобального
экстремума / рец.: А.В. Борисов, А Р. Панков. - М.: МАИ-ПРИНТ, 2009. 160с.
5. Вольтерра В. Математическая теория борьбы за существование:
монография / В. Вольтерра. - М.: Ижевск: Институт компьютерных
исследований, 2004. - 288с. - (Биофизика. Математическая биология). Библиог.: с. 284-286.
6. Паначенко Т.В. Генетические алгоритмы : Учебно-методическое пособие
/ Под ред. Ю.Ю. Тарасевича. – Астрахань: Издательский дом
«Астраханский университет», 2007. – 87 с.
7. Барсегян А.А. Технологии анализа данных: Data Mining, Visual Mining,
Text Mining, OLAP / А.А. Барсегян, М.С. Куприянов, В.В. Степаненко,
И.И. Хо- лод. – 2-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2007. –
384 с.
76
Выпускная квалификационная работа выполнена мной совершенно
самостоятельно. Все использованные в работе материалы и концепции из
опубликованной научной литературы и других источников имеют ссылки на них.
«___» ________________ _____ г.
__________________________
_____________________
(подпись)
(Ф.И.О.)
77
Отзывы:
Авторизуйтесь, чтобы оставить отзыв