УДК 004.942
РЕШЕНИЕ ЗАДАЧ СИМВОЛЬНОЙ РЕГРЕССИИ АЛГОРИТМОМ ГЕНЕТИЧЕСКОГО ПРОГРАММИРОВАНИЯ С ОПЕРАТОРОМ РАВНОМЕРНОГО СКРЕЩИВАНИЯ
Т. С. Карасева, С. А. Митрофанов
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
E-mail: [email protected]
Рассмотрено решение задач символьной регрессии алгоритмом генетического программирования, содержащим оператор равномерного скрещивания.
Ключевые слова: алгоритм генетического программирования, оператор равномерного скрещивания, символьная регрессия.
SYMBOLIC REGRESSION PROBLEMS SOLVING USING GENETIC PROGRAMMING ALGORITHM WITH UNIFORM CROSSOVER OPERATOR
T. S. Karaseva, S. A. Mitrofanov
Reshetnev Siberian State Aerospace University 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: [email protected]
The paper deals with the symbolic regression problems solving with the genetic programming algorithm containing the operator of the uniform crossover.
Keywords: algorithm of genetic programming, operator of the uniform crossover, symbolic regression.
На сегодняшний день существует множество классов задач, решаемых эволюционными алгоритмами. В качестве примера такого класса можно привести проектирование космических систем. Одной из ветвей эволюционных алгоритмов является генетическое программирование. Алгоритм генетического программирования применятся для решения задач символьной регрессии. Данные задачи заключаются в установлении функциональной зависимости между входными и выходными переменными. Характерной чертой алгоритмов генетического программирования является древовидная структура индивида [1].
Исходя из анализа литературы, был сделан вывод о наиболее частом использовании лишь стандартного и одноточечного операторов скрещивания. Однако для алгоритма ГП возможно реализовать и оператор равномерного скрещивания, который является аналогом одноименного оператора в генетических алгоритмах [2]. Сложность реализации данного вида скрещивания заключается в древовидном представлении индивидов, т. е. сложность формирования множества возможных вариантов некоторого узла. Равномерное скрещивание обеспечивает гибкость алгоритма за счет большего разнообразия структур деревьев в результате скрещивания [3].
Программная система, реализующая алгоритм ГП для решения задач символьной регрессии, написана на языке программирования С++ в среде Embarcadero RAD Studio.
Первым этапом исследования было тестирование ГП на репрезентативном множестве задач символьной регрессии с двумя переменными. Для поиска решения алгоритму выделялось по 100 индивидов, а число поколений выбиралось для каждой конкретной задачи эмпирически, т. е. опытным путем. Для сбора статистических данных было сделано по 100 запусков на каждую тестовую функцию. На основании проведенного эксперимента были определены настройки,
Секция «Математические методы моделирования, управления и анализа данных»
обеспечивающие наибольшую эффективность при тестировании. Тестовые функции и соответствующие им настройки представлены ниже:
1. I ^ Xj, 1 — Xj ^ 2 .
Лучшие настройки: турнирная (2), одноточечное, сильная.
Средние настройки: ранговая, стандартное, средняя.
2. I(xj,x2) — 0,1x2 + 0,1x2 "4cos(0,8x1)-4cos(0,8x2) + 8.
Лучшие настройки: турнирная (2), одноточечное, слабая.
Средние настройки: пропорциональная, одноточечное, среднее.
3. I(xj,x2) —100(x2 - xj2 )2 + (1 - xj )2.
Лучшие настройки: турнирная (9), одноточечное, сильная.
Средние настройки: пропорциональная, одноточечное, сильная.
4. I (x) — 1 - 0,5 cos (15x - 0,45) cos (31,4 x) + 0,5cos (22,36x) cos (35x).
Лучшие настройки: турнирная (2), стандартное, слабая.
Средние настройки: турнирная (9), одноточечное, средняя.
5. I (x) — sin (x).
Лучшие настройки: турнирная (9), одноточечное, слабая.
Средние настройки: ранговая, стандартное, средняя.
Для исследования эффективности использования равномерного скрещивания в алгоритме ГП поиск решения тестовых задач осуществлялся с использованием «лучших» настроек, в которых вид скрещивания заменен на равномерное.
Из данных таблицы мы можем сделать вывод о том, что включение оператора равномерного скрещивания повышает эффективность работы алгоритма ГП. Из полученных данных можем сказать, что равномерное скрещивание является, скрещиванием, обеспечивающим наибольшую эффективность работы ГП c лучшими настройками.
Результаты тестирования алгоритма генетического программирования на задачах символьной регрессии
№ задачи Алгоритм Число поколений Надежность (для ГП - лучшая надежность) Среднее поколение
1 ГП (средние настройки) 300 100 71
ГП (лучшие настройки) 300 100 46
ГП с равномерным скрещиванием 300 100 39
2 ГП (средние настройки) 500 54 197
ГП (лучшие настройки) 500 71 181
ГП с равномерным скрещиванием 500 84 145
3 ГП (средние настройки) 300 67 176
ГП (лучшие настройки) 300 87 104
ГП с равномерным скрещиванием 300 93 97
4 ГП (средние настройки) 500 39 301
ГП (лучшие настройки) 500 51 254
ГП с равномерным скрещиванием 500 73 189
5 ГП (средние настройки) 300 77 65
ГП (лучшие настройки) 300 91 33
ГП с равномерным скрещиванием 300 100 27
Кроме задач символьной регрессии алгоритм ГП может быть применен для автоматической генерации интеллектуальных информационных технологий, таких как нейронные сети, системы на нечеткой логике и другие.
Библиографические ссылки
1. Koza J. R. Genetic Programming: On the Programming of Computers by Means of Natural Selection. // MIT Press, Cambridge, MA. 1992.
2. Карасева Т. С. О выборе эффективных настроек генетического алгоритма оптимизации параметров классификаторов в задаче диагностики кардиалгии // Актуальные проблемы авиации и космонавтики : материалы XII Междунар. науч.-практ. конф., посвящ. Дню космонавтики (10-15 апреля 2016 г., Красноярск) : в 2 т. Т. 1 / под общ. ред. Ю. Ю. Логинова ; Сиб. гос. аэро-космич. ун-т. Красноярск, 2016. С. 510-512.
3. Семенкин Е. С., Семенкина М. Е. Самоконфигурируемые эволюционные алгоритмы моделирования и оптимизации : монография / МДП. Магнитогорск, 2014.
© Карасева Т. С., Митрофанов С. А., 2017