УДК 004.023
СРАВНЕНИЕ ЭФФЕКТИВНОСТИ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ И МУЛЬТИСТАРТА ЛОКАЛЬНОГО ПОИСКА
Е. А. Сухочева
Сибирский федеральный университет Российская Федерация, 660041, г. Красноярск, пр. Свободный, 79 E-mail: [email protected]
Для решения задач оптимизации в аэрокосмической отрасли часто используются алгоритмы прямого поиска такие как генетические алгоритмы и метод Хука-Дживса. В данной работе выполнено сравнение их эффективностей.
Ключевые слова: безусловная оптимизация, генетический алгоритм, метод Хука-Дживса.
COMPARISON OF EFFICIENCY FOR GENETIC ALGORITHMS AND LOCAL SEARCH MULTISTART
E. A. Sukhocheva
Siberian Federal University 82, Svoboniy Av., Krasnoyarsk, 660041, Russian Federation E-mail: [email protected]
We consider the efficiency of genetic algorithms and local search multistart for unconstrained optimization problems.
Keywords: unconstrained optimization, genetic algorithms, Hooke-Jeeves method.
Генетические алгоритмы (ГА) [1] и мультистарт алгоритма Хука-Дживса [2] являются методами прямого поиска для решения задач безусловной оптимизации и могут быть использованы для поиска оптимального значения функции не заданной аналитически, именно такие функции часто встречаются в задачах оптимизации в аэрокосмической отрасли [2]. Целью данной работы является сравнение эффективности этих двух методов оптимизации.
Эффективность применения обоих алгоритмов для решения задач оптимизации существенно зависит от выбора их настроек, поэтому сравнение эффективности их параметров выполнено на репрезентативном множестве тестовых задач. Задача оптимизации заключается в нахождении входных параметров, при которых целевая функция будет достигать своего минимального (или максимального) значения. Рассмотри подробнее выбранные методы.
Основной принцип генетических алгоритмов заключается в организации «борьбы за существование» среди пробных решений задачи (индивидов), основываясь на механизмах эволюции. Работа ГА базируется на гипотезе селекции, суть которой может быть сформулирована так: чем выше приспособленность особи, тем выше вероятность того, что потомство, полученное с ее участием, будет иметь еще более высокую приспособленность. Уровень приспособленности индивида определяется через значение целевой функции. В общем виде работа генетического алгоритма представлена на рисунке. Выход из цикла осуществляется после оценивания последнего полученного поколения.
Инициализация
Выращивание
-7Т-
Отбор
н Оценивание ы Селекция
Мутация м Скрещивание
Схема работы ГА
Актуальные проблемы авиации и космонавтики - 2016. Том 1
Метод Хука-Дживса был разработан в 1961 году [3]. Поиск состоит из последовательности шагов исследующего поиска вокруг базисной точки, за которой в случае успеха следует поиск по образцу. Исследующий поиск начинается в точке, которая инициализируется случайным образом внутри области поиска оптимума, также вначале необходимо задать длину шага и коэффициент изменения шага. Если значение функции в пробной точке не превышает значения функции в исходной точке, то поиск считается успешным, в противном случае необходимо вернуться в предыдущую точку и сделать шаг в противоположном направлении с последующей проверкой значения целевой функции. Поиск заканчивается после перебора всех координат. Полученную точку называют базисной. Поиск по образцу заключается в реализации единственного шага из базисной точки вдоль прямой, соединяющей эту точку с предыдущей базисной точкой. Как только поиск по образцу не приводит к уменьшению целевой функции, последняя полученная точка фиксируется в качестве базисной и вновь производится исследующий поиск [3]. В случае, если исследующий поиск не приводит к успеху, необходимо уменьшить длину шага и вновь произвести исследующий поиск. Поиск заканчивается, когда величина шага становится достаточно малой. Широко известно, что метод Хука-Дживса был разработан для функций овражного типа, поэтому сравнение будет производиться на множестве таких функций, а также будет рассматриваться эффективность данного метода для функций, не принадлежащих данному классу.
Сравнение методов проводилось на 6 тестовых функциях [4], в которых требуется найти минимум этих функций.
Для генетического алгоритма были выбраны различные варианты операторов. Три вида селекции: турнирная, пропорциональная и ранговая; три вида скрещивания: одноточечное, двухточечное и равномерное, а также три уровня вероятности мутации: слабая, средняя и сильная. Число поколений, а также число индивидов в поколении возьмём равным 100. Для каждой функции будем выполнять 100 запусков генетического алгоритма.
Для метода Хука-Дживса были взяты следующие параметры: шаг 0.1, коэффициент изменения шага 0.5. Для каждой функции было сделано 100 запусков, для каждого запуска алгоритму давалось 100 попыток, чтоб найти минимум.
В качестве меры эффективности различных вариантов алгоритмов будем использовать надежность - отношение числа успешных запусков алгоритма к общему числу запусков для различных вариаций генетического алгоритма и метода Хука-Дживса.
Результаты тестирования показали, что самая высокая надежность среди ГА на данном множестве функций была получена при использовании пропорциональной селекции, одноточечного скрещивания и низким уровнем вероятности мутации, она равна 0,5816. Самый низкий результат показал алгоритм с ранговой селекцией, двухточечным скрещиванием и низким уровнем вероятности мутации, значение надежности у этого алгоритма 0,30666. Но при этом, для каждой функции наилучшая надежность достигалась на разных вариантах операторов ГА. Надежность метода Хука-Дживса составила 0,5917.
В таблице приведены результаты сравнения работы ГА и метода Хука-Дживса для выбранных функций. Из таблицы видно, что, хоть метод Хука-Дживса в среднем и показал большую надежность, однако, для некоторых функций результат данного метода ниже, чем даже у среднего ГА. Можно увидеть, что эти функции не являются овражными, и этот факт показывает, что при выходе из данного класса функций, метод Хука-Дживса работает не так эффективно.
Результаты тестирования
Название функции Средний ГА Лучший ГА Худший ГА Метод Хука-Дживса
Функция Розенброка 0,428889 0,61 0,11 0,79
Гипер-эллипсоид 0,764815 1 0,36 0,73
Развернутый гипер-эллипсоид 0,155185 0,25 0,03 0,42
Функция Швефеля 0,137778 0,83 0 0
Аддитивная потенциальная функция 0,904444 1 0,54 0,67
Функция Химмельблау 0,304815 0,45 0,2 0,94
На основании проведенной работы, можно сделать вывод, что для определенного класса функций более эффективным будет использование метода Хука-Дживса. Если же заранее неизвестно к какому классу принадлежит исследуемая функция, лучше применить генетические алгоритмы. Одна-
ко для его эффективного применения необходимо каждый раз подбирать варианты операторов. Поэтому в дальнейшем планируется разработка и исследование эффективности самоадаптивного генетического алгоритма [5].
Библиографические ссылки
1. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы. М. : Горячая Линия-Телеком, 2007. 452 с.
2. Semenkin E., Semenkina M. Stochastic models and optimization algorithms for decision support in spacecraft control systems preliminary design // Lecture Notes in Electrical Engineering. 2014. Vol. 283. Pp.51-65.
3. Банди Б. Методы оптимизации вводный курс. М. : Радио и связь, 1988. 128 с.
4. Эволюционные методы моделирования и оптимизации сложных систем / Е. С. Семенкин, М. Н. Жукова, В. Г. Жуков, И. А. Панфилов, В. В. Тынченко. Красноярск : Изд-во СФУ, 2007. 300 с.
5. Semenkin E., Semenkina M. Empirical study of self-configuring genetic programming algorithm performance and behavior // Proceedings of the IOP Conference Series: Materials Science and Engineering 70 // Reshetnev Readings : XVII International Scientific Conference. 2015. Pp. 1-13.
© Сухочева Е. А., 2016