- •Способы интеграции нечетких и нейронных систем
- •П1.3. Обучение методами спуска
- •П1.4. Нечеткие схемы рассуждений
- •П 1.5. Настройка нечетких параметров управления с помощью нейронных сетей
- •П1.6. Нейронечеткие классификаторы
- •П 2.2.2. Последовательные модификации базового генетического алгоритма
- •П2.2.3. Параллельные модификации базового генетического алгоритма
- •Адаптация на уровне индивидов
- •Адаптация на уровне компонентов
- •П2.5.3. Основа управления адаптацией
- •П2.6. Двунаправленная интеграция га и нечетких алгоритмов продукционного типа
П 2.2.2. Последовательные модификации базового генетического алгоритма
Как показывает анализ, модификации ГА отличаются прежде всего способом селекции индивидов. В основных модификациях ГА несколько способов селекции используется для достижения различных целей — упрощения формирования промежуточной популяции, распараллеливания работы алгоритма, возможности анализа и предсказания поведения ГА. Было произведено сравнение четырех различных схем селекции (для СГА и SSGA, рассматриваемых далее), показавшее, что эффективность всех методов примерно одинакова. Таким образом, в настоящее время абсолютно лучший метод селекции не определен.
Модификация стандартного варианта ГА (Steady State GA) [Whitley и Kauth, 1988] затронула способ формирования промежуточной популяции (Mating Pool), являющейся результатом отбора (селекции) для формирования наследников с помощью генетических операторов. SSGA не формируют промежуточную популяцию как стандартный ГА, а осуществляют последовательно выбор пары наилучших индивидов, применяя к ним генетические операторы с целью формирования наследников, которые заменяют худшие индивиды популяции. Данная модификация ГА представлена на рис. П2.6.

Рис. П2.6. Steady State GA
При проектировании ГА могут быть выгодно использованы знания, полученные селекционерами в области искусственной селекции. Генетические алгоритмы селекционеров (ГАС) моделируют именно искусственную селекцию. ГАС представлен на рис. П2.7, где под виртуальным селекционером понимается некоторый механизм селекции, который и является основным отличием ГАС от стандартного ГА.

Рис. П2.7. Генетический алгоритм селекционеров
Селекция основывается преимущественно на статистических методах, которые позволяют произвести теоретический анализ и прогнозировать эффективность механизмов селекции, мутации и рекомбинации с помощью введенных уравнений селекции, реакции на селекцию и понятия наследственности.
Еще одна модификация ГА затрагивает решение многокритериальных задач. Многокритериальный ГА (МГА) также является модификацией стандартного ГА и отличается способом селекции, поскольку при отборе пар родителей в этом случае используется не один, а несколько критериев. При этом предлагается большое число вариантов схем селекции и соответственно вариантов МГА. На рис. П 2.8 приведен вариант МГА, предложенный SchafFer в 1984 г., — векторный ГА (VEGA). Сравнительные оценки показывают, что по эффективности VEGA имеет средние показатели, однако не оценивалась вычислительная сложность для различных вариантов МГА, по которой VEGA может существенно улучшить свои показатели.

П2.2.3. Параллельные модификации базового генетического алгоритма
Стандартный ГА представляет собой строго синхронизованный последовательный алгоритм, который в условиях большого пространства поиска или сложного ландшафта пространства поиска может быть неэффективен по критерию времени. Эту проблему позволяет решить другой вид ГА— параллельный генетический алгоритм (ПГА). Следует отметить, что любая последовательная модификация стандартного ГА может быть преобразована в параллельную.
По степени распараллеливания можно выделить следующие типы параллельных ГА:
-
ПГА на базе популяции;
-
ПГА на базе подпопуляций;
-
ПГА на базе индивидов.
ПГА на базе популяции сохраняет стандартную структуру ГА, работающего с целой популяцией, распараллеливание реализуется на этапе скрещивания и мутации (см. шаг 4, рис. П2.5). По степени распараллеливания процессов можно выделить следующие модели [8]:
-
синхронная модель "ведущий-ведомый", где главный процесс хранит целую популяцию в собственной памяти, выполняет селекцию, скрещивание и мутацию, но оставляет вычисление степени пригодности новых индивидов к подчиненным процессам;
-
полусинхронная модель "ведущий-ведомый", где новый индивид обрабатывается по мере освобождения одного из процессов;
-
асинхронная параллельная модель, где индивиды популяции хранятся в общей памяти, к которой можно обращаться к параллельным процессам. Каждый процесс выполняет оценку степени пригодности, а также генетические операции.
Каждый процесс работает независимо от других. Единственное отличие между этой моделью и стандартным ГА заключается в механизме селекции [4]. Очевидным в этом случае является вариант использования N12 параллельных процессоров при популяции в N индивидов. Тогда каждый процессор дважды случайным образом выбирает два индивида из общей памяти и оставляет лучшего. Два выбранных индивида затем подвергаются скрещиванию, мутации и оценке степени пригодности. Возникающие в результате наследники размещаются в общей памяти

Рис. П2.9. Распределенный параллельный генетический алгоритм
Особенность ПГА на базе подпопуляций заключается в использовании независимых конкурирующих подпопуляций, которые обмениваются индивидами с заданной частотой (распределенный ПГА, рис. П2.9). При этом каждый процессорный блок выполняет последовательный ГА с собственной подпопуляцией, при условии максимизации одной общей для всех функции степени пригодности. В этом случае для обмена индивидами должна быть определена структура связей подпопуляций. С точки зрения оценки и сравнения эффективности может быть рассмотрен вариант распределенной модели, в которой обмен индивидами не осуществляется. Результаты, представленные в [5], свидетельствуют о большей эффективности распределенного ПГА по сравнению с этим частным случаем, а также со стандартным ГА
Существенным недостатком модели может стать снижение степени разнообразия при интенсивном обмене индивидами. С другой стороны, недостаточно частое перемещение может привести к преждевременной сходимости подпопуляций. При построении такой модели важно определить следующее:
-
связи между процессорами для обмена индивидами;
-
частоту обмена индивидами (оптимальной является частота обмена через 20 поколений [5]);
-
степень перемещения или число обмениваемых индивидов (оптимальным является 20 % подпопуляции [5]);
-
способ селекции индивида для обмена;
-
критерий, по которому полученный индивид сможет заменить члена подпопуляции.
С точки зрения времени и даже числа поколений, затрачиваемых на решение задачи, ПГА эффективнее стандартного ГА, но при этом некоторые задачи могут быть слишком простыми для ПГА. Параллельный поиск имеет смысл в том случае, если пространство поиска большое и сложное [3]. Увеличение числа процессоров в данной модели улучшает скорость сходимости, но не качество решения.
ПГА на базе индивидов имеют одну строку индивида, постоянно находящуюся в каждом процессорном элементе (ячейке). Индивиды выбирают пары и рекомбинируют с другими индивидами в их непосредственном ближайшем окружении (по вертикали и горизонтали). Выбранный индивид затем совмещается с индивидом, постоянно находящимся в ячейке. В результате формируется один наследник, который может или не может заменить индивида в ячейке в зависимости от выбранной схемы замещения. Таким образом, модель является полностью распределенной и не нуждается в централизованном управлении (рис. П2.10).

При работе с моделью на базе индивидов необходимо задать:
-
структуру связей ячеек;
-
схему селекции;
-
схему замещения.
Исследования этой модели показали, что для сложных задач она способна обеспечить лучшие решения, чем стандартный ГА
П2.3. Классификация генетических алгоритмов
В ходе исследований в области генетических алгоритмов и эволюционных алгоритмов в целом появилось большое количество направлений, и их число непрерывно растет.
Классификация ГА и основные модификации стандартного ГА, приведенного на рис. П2.5, отражены на рис. П2.11

П2.4. Особенности генетических алгоритмов, предпосылки для адаптации
Исследования в области ГА и ЭА в целом позволяют выделить важную особенность данных методов — эффективность ЭА существенно зависит от таких взаимосвязанных параметров, как вероятность применения генетических операторов, их тип и размер популяции.
ГА являются вероятностным методом направленного поиска и поддерживают сведения об индивидуальных точках в пространстве поиска (ландшафте), известном как популяция. Как отмечалось ранее, поиск может быть рассмотрен как итерационная программа, применяемая с целью создания лучших индивидов с помощью таких операторов, как селекция, скрещивание (рекомбинация) и мутация.
Стратегии мутации и скрещивания различны. Мутация основывается на случае. Результат даже одного шага мутации всегда непредсказуем. Результат скрещивания менее случаен, поскольку при этом скрещиваются только строки, находящиеся в одной популяции. При этом поиск с помощью скрещивания приводит к сходимости популяции и способен локализовать оптимум без применения мутации только при достаточно большом размере популяции.
Эти операторы обычно являются статическими, т. е. их параметры и вероятность использования фиксированы в начале и остаются постоянными до завершения работы алгоритма. Однако имеются доказательства того, что недостаточно один раз установить набор операторов и постоянно использовать его далее, не существует такого набора операторов, который бы являлся оптимальным для всех задач. Существуют и доказательства того, что оптимальный набор операторов для данной задачи будет зависеть от степени сходимости популяции и будет меняться во времени. Основываясь на теоретических и практических подходах, некоторые авторы предложили различные методы адаптивного управления операторами.
ГА, как метод направленного поиска, на каждом шаге генерируют новые точки в пространстве поиска для дальнейшего развития популяции. Каждой точке в пространстве поиска соответствует уникальное значение степени пригодности. Следовательно, можно говорить о пространстве поиска как ландшафте функции степени пригодности. При этом популяция дает оценку эффективности работы алгоритма, которую можно определить как неоднородную функцию распределения вероятности (НФРВ).
В отличие от однородного распределения вероятности, характеризующего случайный поиск, НФРВ отражает возможные взаимодействия между членами популяции (или степень вовлечения точек пространства поиска в дальнейший процесс поиска посредством рекомбинации двух или более членов популяции).
Генетический поиск может рассматриваться как программа, состоящая из пошагового выполнения двух процессов: формирования промежуточной популяции (модификации популяции) с помощью селекции и генерации нового набора точек с помощью генетических операторов рекомбинации и мутации.
Таким образом, эффективность алгоритма зависит от двух факторов: от поддержания эффективной популяции и от соответствия НФРВ ландшафту степени пригодности и эффективной популяции. Первый из этих факторов зависит от размера популяции и алгоритма селекции. Второй будет зависеть от действия операторов и связанных с ними параметров в данной популяции.
Большое внимание было уделено тому, чтобы найти подходящие варианты операторов и их параметров, которые бы работали в широком диапазоне прикладных задач. В первой работе [DeJong, 1975] определялся тестовый набор из пяти функций для исследования различных характеристик (непрерывные/прерывные, выпуклые/вогнутые, унимодальные/мультимодальные, квадратичные/неквадратичные, с низкой размерностью/с большой размерностью, детерминированные/стохастические), предлагался набор параметров, который бы успешно работал для решения целого ряда прикладных задач. Был определен следующий набор параметров: размер популяции от 50 до 100; вероятность мутации— 0,6; вероятность скрещивания — 0,001. Также была подчеркнута эффективность элитизма и двухточечного скрещивания.
Однако последующие исследования, применяющие "мета-ГА" для определения подходящих значений [Grefenstette, 1986] или использующие полное тестирование [Schaffer, 1989], привели к различным выводам. Grefenstette использовал "мета-ГА" для исследования параметров с помощью описанных ранее пяти функций. Его набор параметров был следующим: размер популяции -—30; вероятность мутации — 0,01; вероятность скрещивания — 0,95.
Schaffer исследовал 6 размеров популяции, 10 уровней скрещивания, 7 уровней мутации и два типа скрещивания, т. е. 840 различных установок. Он отметил, что двухточечное скрещивание не хуже, а иногда лучше одноточечного скрещивания. В небольшой популяции производительность сильно зависит от уровня мутации и меньше — от уровня скрещивания. Когда размер популяции увеличивается, чувствительность к мутации снижается. Им был установлен следующий набор параметров: размер популяции от 20 до 30; вероятность мутации— от 0,005 до 0,01; вероятность скрещивания— от 0,75 до 0,95.
Тем временем теоретический анализ оптимальных размеров популяции [Goldberg, 1985] формализовал утверждение, что размер популяции зависит от размера пространства поиска.
Интенсивность использования мутации и скрещивания может и должна быть привязана к размеру популяции. Эмпирически исследователи [Schaffer, 1989] нашли почти оптимальное сочетание параметров:
![]()
где N — размер популяции, т — уровень мутации, п — длина стратегии. Это выражение может быть аппроксимировано:
![]()
Однако и это выражение не является окончательным, поскольку рассматривается вне конкретной задачи.
Мутация становится более эффективной, чем скрещивание, когда размер популяции небольшой, и наоборот [Spears и Anand, 1991]. Другие факторы, такие как схема представления, селекция, функция степени годности, также отражаются на эффективности использования мутации и скрещивании. При этом теоретически невозможно определить, какие именно операторы использовать для решения конкретной задачи.
Последующие несколько лет исследований привели к появлению ряда новых операторов, среди которых можно выделить однородное скрещивание, которое выполняется на L/2 точках скрещивания строки длиной L [Syswerda, 1989] и является более эффективным [Spears William M., Adapting Crossover in Evolutionary Algorithms].
Результаты исследований позволили сформировать два важных вывода:
-
значения НФРВ являются результатом выполнения генетических операторов (в частности, скрещивания) и зависят от их типа [Eshelman, 1989]. Практические результаты были подтверждены анализом различных механизмов рекомбинации [DeJong и Spears, 1990, 1992; Spears и DeJong, 1991];
-
вероятность того, что новая точка, сгенерированная с помощью генетических операторов, будет более эффективна, чем предыдущая родительская, также зависит от типа генетического оператора. Значение вероятности меняется также от поколения к поколению [Schaffer и Eshelman, 1991]. Кроме того, вероятность отражает соответствие между НФРВ и ландшафтом степени пригодности популяции.
Эти исследования вместе с исследованиями эволюционных стратегий, в которых уже использовались адаптивные операторы (различные версии этих алгоритмов с адаптивной оценкой мутации, оказались достаточно эффективными для решения задач оптимизации функций [Back, 1991; Schwefel/ 1981], последние исследования подтвердили эту точку зрения на эффективность мутации [Baeck & Schwefel, 1993]), повысили интерес к возможностям алгоритмов, которые способны адаптировать операторы или параметры. Цель введения механизма адаптации состоит также и в том, чтобы согласовать значения НФРВ, формируемые алгоритмом, и ландшафт степени пригодности.
П2.5. Классификация адаптивных ГА
Адаптивные ГА можно классифицировать по трем направлениям (рис. П2.12).
-
основа управления адаптацией (внешнее управление или самоадаптация);
-
область адаптации (применяется ли адаптация ко всей популяции, только к отдельным членам популяции и т. д.);
-
основа адаптации (операторы, параметры и т. д.).
П2.5.1. Основа адаптации
Большинство адаптивных алгоритмов основывается на СГА и SSGA, при этом чаще всего исследования проводятся на генетических операторах скрещивания и мутации. Направленный поиск в ГА в основном сосредоточен на исследовании новых областей пространства поиска и эксплуатации предварительно изученных эффективных областей (или гиперпланов) пространства поиска.
В алгоритме исследования высокая вероятность назначается неисследованным областям, в то время как в эксплуатационном алгоритме НФРВ представляет собой накопленную информацию об областях с большей степенью пригодности и гиперпланах пространства поиска. При этом НФРВ алгоритма исследования способна измениться быстрее, чем в эксплуатационном алгоритме.
Однако диапазон, в котором наследники отличаются от их родителей, управляется не только типом оператора, но и вероятностью их использования. Таким образом, для данной популяции и данного оператора можно настраивать форму НФРВ между предельными значениями исследования и эксплуатации, изменяя вероятность использования операторов.
Этот вывод привел в дальнейшем к сосредоточению на адаптации операторов рекомбинации и мутации, поскольку, изменяя степень разрушения, вызванного операторами, можно адаптировать популяцию, которая заменяется на каждом шаге при использовании простых и эффективных механизмов селекции.
Можно выявить ряд направлений в исследованиях того, как именно следует осуществлять адаптацию в ГА:
1. Самый простой класс — ГА, которые используют фиксированный набор операторов и адаптируют вероятности использования операторов. Хорошо известны работы, устанавливающие зависимости:
-
вероятности мутации от времени [Fogarty, 1989];
-
вероятностей использования нескольких простых операторов (однородное скрещивание, мутация и т. д.) от их эффективности на последних поколениях [Davis, 1989];

Рис. П2.12. Классификация генетических алгоритмов
2. Дальнейшее развитие этого подхода заключается в алгоритмах, которые поддерживают несколько популяций или подпопуляций, использующих различные наборы операторов и параметров. Общий подход заключается в "мета-ГА" (или многоуровневом ГА, в котором одновременно может существовать несколько популяций, расположенных по некоторой иерархии) и определении параметров для каждой подпопуляции [Grefenstette, 1986];
3. Адаптации в ГА могут подвергаться не только вероятности применения операторов, типы операторов, но и такие параметры, как размер популяции и критерий останова. За счет внешнего управления при этом возможно обеспечение большей гибкости и учет большего количества зависимостей, в том числе и неявных.
П2.5.2. Область адаптации
Адаптация в ГА может осуществляться на уровнях:
-
популяции, когда параметры ГА являются общими для всей популяции и, следовательно, изменения в НФРВ происходят со стороны всей текущей популяции;
-
индивидов, когда значения НФРВ формируются со стороны каждого члена популяции отдельно, но одним способом;
-
компонентов, где на НФРВ можно влиять со стороны каждого компонента каждого члена популяции различным способом.
Адаптация на уровне популяции
Адаптация на уровне популяции предполагает использование фиксированного набора генетических операторов, таких, что их параметры могут изменяться во времени. Наиболее важным параметром при этом является вероятность применения генетического оператора. К этому уровню адаптации относятся уже упомянутые "мета-ГА", а также конкурирующие подпопуляции ГАС, например [Schlierkamp-Voosen и Muhlenbein, 1994].
В [Fogarty, 1989] внешне определенная форма используется, чтобы уменьшить уровень мутации с течением времени. Однако этот подход не является универсальным и не применяется к другим генетическим операторам. Хорошо известен и популярен подход [Davis, 1989; Come, 1994; Julstrom, 1995], который заключается в том, чтобы хранить статистику по эффективности наследников, сгенерированных различными операторами, по отношению к их родителям. Эффективные операторы при этом "вознаграждаются"— увеличивается вероятность их использования. Этот подход требует дополнительного пространства памяти.
В [Lee и Takagi, 1993] для управления различными параметрами, в том числе и размером популяции, используются нечеткие правила, основанные на относительной эффективности самых лучших, худших и средних значений текущей популяции
