А.С. Шаура Ижевский Государственный Технический Университет, г. Ижевск МОДИФИЦИРОВАННЫЙ ГЕНЕТИЧЕСКИЙ АЛГОРИТМ ДЛЯ ЗАДАЧ УСЛОВНОЙ ОПТИМИЗАЦИИ Ключевые слова: генетический алгоритм, условная оптимизация. Решение реальных задач экономики и управления часто связано с необходимостью решения задач условной оптимизации, которые в общем виде можно представить как: F ( X ) F ( x1 , x2 ,..., x N ) min , X D G H , (1) G X ( x1 , x2 ,..., x N ) g i ( X ) 0, i 1, m1 , (2) H X ( x1 , x2 ,..., x N ) hi ( X ) 0, i 1, m2 , (3) G( X ) g i X min . (5) (4) D X ( x1 , x2 ,..., x N ) ai xi b, 1 i N . Множество D задает область поиска минимума функции F (X ) , удовлетворяющего ограничениям-неравенствам g i и ограничениям-равенствам hi , задающим допустимое множество G H . Целевая функция может быть нелинейной, многоэкстремальной, разрывной и т.д., а область G H – многосвязной. Применение классических методов оптимизации может оказаться неэффективным, либо вообще невозможным, в то время как использование эволюционных методов, в частности генетических алгоритмов, может дать хорошие результаты. При применении генетических алгоритмов для решения задач условной оптимизации основная сложность заключается в учете ограничений на переменные. Как правило, задачи вида (1)-(4) сводят к задачам безусловной оптимизации, реже модифицируют генетический алгоритм. Можно выделить следующие основные подходы [1,2]: «лечение» индивидов, барьерные методы и методы штрафных функций. Последние являются наиболее часто используемыми и в свою очередь делятся по виду штрафной функции на статические, динамические, адаптивные. Применение адаптивных штрафных функций позволяет избежать настройки весовых коэффициентов. В частности, предложенный С.А. Исаевым метод с применением самоадаптации основан на оценке соотношения количества допустимых и недопустимых особей в популяции [3]. Автором данной статьи для решения задач условной оптимизации предлагается использовать модифицированный генетический алгоритм с параллельным поиском допустимых особей. Суть метода заключается в учете «допустимости» особей на этапе отбора, делая акцент на поиске оптимального решения, используя уже найденные допустимые. При этом используется вспомогательная целевая функция, представляющая свертку из ограничений: i Схематически алгоритм представлен на рис. 1. P0 P0 F P0F copy cross P0 G P0G P1 F … P1 P1 G Рис. 1. Одна глобальная итерация генетического алгоритма. Из случайной начальной популяции P0 создаются две популяции с целевыми функциями F и G (copy), для которых генерируются следующие поколения P0F и P0G. Первая популяция отвечает за минимизацию исходной целевой функции F, вторая за то, чтобы эта минимизация проходила на допустимом множестве. Далее проводится скрещивание популяций P0F и P0G с помощью классических операторов (cross), выбирая по одному родителю из каждой популяции. На этом заканчивается одна глобальная итерация алгоритма. Вычислительный эксперимент проводился на следующих задачах [4]: Задача 1. Минимизация функции Розенброка: N 1 f ( X ) (100 ( xi 1 xi2 ) 2 (1 xi ) 2 ) min , xi [5,5], i 1, 2, ..., N i 1 при ограничениях вида R12 xi2 xi21 R22 , i 1, N 1 . Размерность N 30 , границы кольца R1 2 , R2 4 . Ограничения активны. Задача 2. Условия те же, что и в задаче 1, но R1 1 , R2 3 . Ограничения неактивны, минимум лежит внутри области. Задача 3. Минимизация функции Растригина: N f ( X ) ( xi2 10 cos(2xi )) 10 N min , xi [5,5], i 1,2,..., N i 1 с ограничениями R12 xi2 xi21 R22 , i 1, N 1 , R1 2 , R2 4 . Размерность N 30 . Ограничения активны. Задача 4. Условия те же, что и в задаче 3, но ограничения вида xi2 xi21 R , i 1, N 1 , R 2 . Ограничения неактивны, минимум лежит внутри области. Эксперимент состоял в проведении серии из 30 запусков для каждой задачи с применением следующих методов: штрафная функция с постоянной величиной штрафа (ШФ), схема с самоадаптацией величины штрафа (ШФСА), генетический алгоритм с параллельным поиском допустимых особей (ГАПП). Время каждого запуска ограничивалось одной минутой. В табл. 1 для каждого случая приведены лучшие ( Fbopt ), средние ( Fmopt ) и худшие ( Fwopt ) полученные значения. Для лучших решений указано среднее время их достижения ( t , с) и процент успешных запусков (%), в которых они были найдены. Обе используемые в задачах функции являются сложными для минимизации, поскольку функция Розенброка имеет ярко выраженный овражный характер, а функция Растригина многоэкстремальна. Таблица 1. Результаты решения тестовых задач Экспериментальные значения F opt Номер Точное задачи значение opt b F 1 ≈932 opt b F 2 0 t ,с % Fmopt 945,1 955,3 935,02 Fwopt 959,8 992,2 941,6 t ,с % 0,00002 15 10 0,00001 12 23 3,3e-9 3 13 Fmopt 0,00021 0,02023 1e-7 opt w 0,00095 0,46072 1,4e-5 F opt b F 3 60 ШФ ШФСА ГАПП 932,7 42 23 935,0 35 20 932,7 12 53 t ,с % 60,00 60 6,7 66,74 45 6,7 60,00 10 30 opt m F 67,30 75,69 66,31 Fwopt 74,80 83,76 74,62 Fbopt t ,с % 4,3e-8 32 20 1,9e-14 15 30 4 0 0 5 100 Fmopt 1,11 0,44 0 opt w 4,97 1,98 0 F Видно, что наибольшую сложность для всех методов представляют задачи 1 и 3 – т.е. когда ограничения в глобальном оптимуме активны. При использовании методов со штрафными функциями не все найденные решения строго удовлетворяли ограничениям в отличие от решений, найденных методом ГАПП. В этом и заключается его основная особенность – при оценке решения в первую очередь важна его допустимость, которая в этом методе сильнее, чем в других, влияет на выживание каждой особи в популяции. Кроме того, предлагаемый метод не требует дополнительной настройки параметров алгоритма. Список литературы 1. Michalewicz Z. Genetic algorithms, numerical optimization and constraints // Proc. of the 6th Int. Conf. on Genetic Algorithms and their Applications. – Pittsburg, PA, 1995. 2. Бежитский С.С. Генетический алгоритм условной оптимизации в задаче выбора эффективной структуры системы управления космическим аппаратом // С.С. Бежитский, Е.С. Семенкин, О.Э. Семенкина // Вестник Красноярского государственного университета. Серия «Физико-математические науки», № 4. - 2005. – С. 228-233. 3. Исаев С.А. Решение задач нелинейного программирования с использованием схем самоадаптации при построении штрафных функций. Электронный научный журнал «Исследовано в России» // http://zhurnal.ape.relarn.ru/articles/2005/126.pdf. 4. Тененев В.А. Применение генетических алгоритмов с вещественным кроссовером для минимизации функций большой размерности // Интеллектуальные системы в производстве. – 2006. – №1. С. 93–107.