УДК 519.85
ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ ОПЕРАТОРОВ РЕКОМБИНАЦИИ ДЛЯ АЛГОРИТМА ГЕНЕТИЧЕСКОГО ПРОГРАММИРОВАНИЯ3
М. А. Кулаченко
Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
Е-mail: margaritakulachenko@yandex.ru
Выполнено исследование эффективности операторов рекомбинации алгоритма генетического программирования для решения задач символьной регрессии, нередко возникающих в аэрокосмической области.
Ключевые слова: генетическое программирование, самоконфигурирация, символьная регрессия, операторы рекомбинации.
INVESTIGATION OF EFFICIENCY OF RECOMBINATION OPERATORS FOR GENETIC PROGRAMMING
M. A. Kulachenko
Reshetnev Siberian State University of Science and Technology 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation Е-mail: margaritakulachenko@yandex.ru
In this paper investigation of self-configuring genetic programming efficiency for solving of symbolic regression problems is presented, this kind of problems solving can be useful in aerospace area.
Keywords: genetic programming, self-configuration, symbolic regression, recombination operators.
Задача символьной регрессии представляет собой задачу аппроксимации, иначе говоря, задача сводится к необходимости нахождения математического выражения, связывающего входные и выходные переменные. Задача символьной регрессии может быть решена посредством применения алгоритмов генетического программирования [1], основной чертой которых является кодирование решений в виде дерева (при этом узлы дерева представляют собой элементы функционального или терминального множеств). При решении задачи символьной регрессии функциональное множество состоит из допустимых функций (операций), а терминальное - из переменных и констант. Таким образом, дерево (решение) представляет собой некоторое математическое выражение.
Первоначальный набор решений может генерироваться двумя способами: полным и неполным выращиваниями. Полное выращивание подразумевает генерацию дерева определенной глубины, где промежуточные узлы принадлежат функциональному множеству, а листья дерева -терминальному. При неполном выращивании промежуточный узел может принадлежать как терминальному (тогда он становится листом), так и функциональному множеству с равной вероятностью, ограничивается лишь максимальная глубина дерева.
Оценивание решений производится согласно среднеквадратическому отклонению результата подстановки в решение наблюдаемого значения входных переменных от наблюдаемого зна-
3 Работа выполнена при поддержке гранта Президента Российской Федерации для государственной поддержки молодых российских ученых МК-3378.2017.9.
Секция «Математические методы моделирования, управления и анализа данных»
чения выходной переменной. Лучшим считается такое решение, которое доставляет минимум указанному критерию.
Операторы селекции полностью повторяют соответствующие операторы генетического алгоритма (турнирная, пропорциональная и ранговая селекции). Мутация производится заменой значения случайного узла дерева на любой другой элемент того же множества. Вероятность мутации составляет 1/п, где п - число узлов дерева.
В данной работы был рассмотрен расширенный набор операторов скрещивания: стандартное, одноточечное и равномерное [2]. При стандартном скрещивании индивиды обмениваются случайно выбранными поддеревьями, потомком считается одно из получившихся деревьев. Для работы двух других видов скрещивание производится предварительное определение их общей части деревьев-родителей, в которую входят все вершины от корня до вершин с различной арностью (включительно) в одном положении для разных родителей. При одноточечном скрещивании в общей части случайным образом выбирается узел, затем деревья-родители обмениваются поддеревьями, начиная с выбранного узла. Из двух образованных деревьев потомок выбирается случайным образом. При равномерном скрещивании каждый узел дерева-потомка в общей области определяет случайным образом из соответствующих узлов родителей.
При практическом применении алгоритмов генетического программирования возникает та же проблема, как и при применении других эволюционных алгоритмов, а именно необходимость выбора подходящих операторов для каждой конкретной задачи. Исключения этапа подбора параметров алгоритма можно достичь посредством использования механизма самоконфигурации. Основной идеей механизма самоконфигурации [3] является зависимость вероятности использования конкретного варианта оператора от результатов его работы. Эффективность оператора определяется по средней пригодности порожденных им потомков, при этом наиболее эффективный оператор поощряются повышением вероятности его использования.
Так как алгоритм генетического программирования направлен в большей степени на создание общей структуры математического выражения, для оптимизации отдельных входящих в него констант оправдано применение дополнительной оптимизации, например, для этого может быть использован самоконфигурируемый генетический алгоритм [4].
Описанный выше алгоритм генетического программирования был реализован в виде программной системы. Тестирование производилось на выборках размером 1000 точек, сгенерированных по двумерным тестовым функциям. Ниже представлены результаты тестирования для функции Гриванка. В таблице указана среднеквадратическая ошибка лучшего найденного решения, усредненная по 10 запускам. В ходе исследования рассматривались базовый алгоритм генетического программирования (ГП) и его самоконфигурируемая модификация (СГП), в том числе в при совместном использовании с самоконфигурируемым генетическим алгоритмом (СГА).
Результаты тестирования (функция Гриванка), среднеквадратическое отклонение
Неполное выращивание Полное выращивание
Турнирная Пропорц. Ранговая Турнирная Пропорц. Ранговая
ГП Стандартное 0.062586 0.063321 0.058228 0.062498 0.061348 0.058303
Одноточечное 0.063476 0.062953 0.062594 0.763924 0.683447 0.451247
Равномерное 0.063213 0.062924 0.061730 0.632762 0.849269 0.688098
ГП+СГА Стандартное 0.055128 0.062301 0.062438 0.061151 0.059179 0.060618
Одноточечное 0.057466 0.062411 0.063113 0.075723 0.069971 0.057100
Равномерное 0.058992 0.063005 0.063488 0.062039 0.061427 0.058785
СГП 0.062534 0.499120
СГП+СГА 0.062558 0.056420
При проверке статистической значимости по парному Г-критерию Вилкоксона все результаты, отмеченные в таблице серым, являются статистически неразличимыми. При анализе полученных результатов можно сделать следующие выводы:
1. С точки зрения точности аппроксимации все 3 вида скрещивания являются эквивалентными.
2. Наиболее эффективными оказались 2 вида сочетаний: неполное выращивание с турнирной селекцией и полное выращивание с ранговой селекцией.
3. Самоконфигурируемый алгоритм генетического программирования уступает лучшему с точки зрения среднеквадратической ошибки варианту операторов, сопоставим со средним значением ошибки и превосходит худшее. В случае отсутствия возможности выполнить подбор наиболее удачного варианта настройки алгоритма, самоконфигурируемый алгоритм генетического программирования позволяет избежать худшего результата и работает относительно стабильно.
В дальнейшем рассмотренные модификации алгоритма генетического программирования могут применяться для автоматического проектирования интеллектуальных информационных технологий.
Библиографические ссылки
1. Koza J. Genetic Programming: On the Programming of Computers by Means of Natural Selection. Cambridge, MA: The MIT Press, 1992. 840 p.
2. Poli R., Langdon W.B. On the search properties of different crossover operators in genetic programming. In J. R. Koza, et al., editors, Genetic Programming 1998:Proceedings of the Third Annual Conference, pages 293-301, University of Wisconsin, Madison, Wisconsin, USA, 1998. 22-25 July.
3. Семенкин Е. С., Семенкина М. Е. Самоконфигурируемые эволюционные алгоритмы моделирования и оптимизации: монография. Магнитогорск, 2014. 310 с.
4. Кулаченко М. А. Исследование эффективности самоконфигурируемого генетического алгоритма для решения задач безусловной оптимизации // Актуальные проблемы авиации и космонавтики : материалы науч.-практ. конф. (10-14 апреля 2017, г. Красноярск). В 3 ч.
© Кулаченко М. А., 2017