Исследование свойства масштабируемости генетичесного алгоритма

Секция

«МАТЕМАТИЧЕСКИЕ МЕТОДЫ МОДЕЛИРОВАНИЯ, УПРАВЛЕНИЯ

И АНАЛИЗА ДАННЫХ»

УДК 004.89

С. С. Аннина Научный руководитель - Е. С. Семёнкин Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнёва, Красноярск

ИССЛЕДОВАНИЕ СВОЙСТВА МАСШТАБИРУЕМОСТИ ГЕНЕТИЧЕСНОГО АЛГОРИТМА

Рассматривается исследование эффективности стандартного генетического алгоритма на тестовых задачах безусловной оптимизации при увеличении размерности. Показано свойство масштабируемости генетического алгоритма - линейная зависимость ресурса, необходимого для сохранения высокой эффективности алгоритма, от размерности задачи оптимизации.

Для многих задач оптимизации характерна проблема «проклятия размерности». При увеличении размерности решаемой задачи количество ресурсов, необходимое для эффективного решения задачи увеличивается экспоненциально, и наблюдается так называемый «комбинаторный взрыв». Среди стохастических алгоритмов оптимизации особую популярность приобрели генетические алгоритмы, нашедшие применение во многих предметных областях [1].

Целью данной работы является исследование особенностей работы стандартного генетического алгоритма [2] при увеличении размерности задачи оптимизации. Для этого были использованы три задачи безусловной оптимизации, которые считаются трудными для классических методов. Это функция Рас-тригина, Гриванка и функция, сконструированная автором. Ниже приведено их математическое описание, интервалы варьирования переменных и значение функций в точке глобального минимума:

/(х) = ^ 0,Ц 2 - 4соБ(0,8хг-) + 4

г

х е [-10; 10] /(0) = 0;

f (*)=£-

10

0,005* 2 - cos(^) + 2 V/

+10

Xj e [-16; 16]

f (0) = 0;

f (X)=Z:

1

--5

с заданной точностью при многократном запуске) и среднее число поколений на котором находится решение. При фиксированной размерности каждая комбинация настроек тестировалась по пять пятидесятикратных запусков для последующего статистического анализа с использованием критерия Вилкоксона [3].

Исследование проводилось по следующей схеме: с увеличением размерности задачи при фиксированном количестве индивидов увеличивалось количество поколений таким образом, чтобы сохранялась практически стопроцентная надёжность работы алгоритма.

Далее приведены графики зависимость числа поколений, необходимого для достижения 100 % надежности, от размерности решаемой задачи при наилучших настройках.

Рис. 1. Результаты исследования для функции Растригина

, '5хг + 0,2 Х- e [-4; 4] f (0) = 0.

Для проведения исследования была разработана программная система в среде C++ Builder. В программе реализована возможность выбора типа мутации (слабая, средняя, сильная), типа селекции (пропорциональная, турнирная, ранговая), и типа скрещивания (одноточечное, двухточечное, равномерное).

Критериями оценки работы алгоритма являются надёжность (частота отыскания истинного оптимума

Рис. 2, Результаты исследования для функции Гриванка

Актуальные проблемы авиации и космонавтики. Информационные технологии

Рис. 3. Результаты исследования для функции № 3

В результате проделанных исследований можно сделать следующие выводы:

Наблюдается линейная зависимость увеличения ресурсов (числа поколений) при увеличении размерности.

Увеличение числа поколений предпочтительней увеличению числа индивидов.

При увеличении размерности задачи оптимизации степень различия между эффективностью различных настроек ГА увеличивается.

Таким образом, можно заключить, что для генетических алгоритмов не является существенной проблема «проклятие размерности», что доказывает его свойство масштабируемости.

Библиографические ссылки

1. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы : пер. с польск. И. Д. Рудинского. М. : Горячая линия. Телеком, 2006.

2. Сергиенко А. Б., Галушин П. В., Бухтояров В. В., Сергиенко Р. Б., Сопов Е. А., Сопов С. А. Генетический алгоритм. Стандарт. Красноярск, 2010 [Электронный ресурс]. URL: http://www.harrix.org/ files/61/Geneticheskii_algoritm_Standart_Part_I_v_l_8_ Release_Candidate.pdf.

3. Лагутин М. Б. Наглядная математическая статистика : в 2 т. М. : П-центр, 2003. С. 204-209.

© Аннина С. С., Семёнкин Е. С., 2011

УДК 735.29.

Ш. А. Ахмедова Научный руководитель - Е. С. Семенкин Сибирский федеральный университет, Красноярск

ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ «СТАЙНОГО» АЛГОРИТМА ДЛЯ ЗАДАЧ

УСЛОВНОЙ ОПТИМИЗАЦИИ

Исследовалась эффективность «стайного» алгоритма (particle swarm optimization, PSO) на задачах условной оптимизации. Было проведено сравнение вещественного и бинарного PSO, а так же решена практическая задача.

Первоначально Р80 был создан для задач с вещественными переменными. Идею алгоритма Р80 впервые сформулировали Дж. Кеннеди и Д. К. Эберхарт в 1995 году, она была почерпнута из социального поведения некоторых животных - стаи птиц, стада копытных или косяка рыб.

Р80 начинает работу с создания популяции случайным образом. Строки в Р80 называются частицами. Строки-частицы представляют собой вектор координат точки в пространстве оптимизации (вещественных чисел). Каждая частица передвигается по поверхности графика функции с какой-то скоростью. Частицы изменяют свою скорость и координаты, основываясь на собственном опыте и опыте других частиц.

В настоящий момент использование алгоритмов расширилось вплоть до дискретных задач и задач с бинарными переменными. Чтобы расширить версию Р80, работающую с вещественными переменными, в бинарное/дискретное пространство, наиболее важная часть - понять смысл таких понятий, как: траектория, скорость в бинарном/дискретном пространстве. Кеннеди и Эберхарт используют скорость и вероятность для определения является ли хга (частица) в том или ином состоянии (1 или 0). Они стягивали в точку хы ,

используя логическую функцию 5(у) = 1/(1 + ехр(—V)), где скорость высчитывается, используя некоторое уравнение, как

^ = ^ + С1 * гапЛ () * (Ргй — хг<1 ) + + с2 *КаЫ() * (р^ - хгй ).

Если случайно сгенерированное число в пределах [0; 1] меньше, чем ), тогда хы становится 1, иначе становится 0.

Пусть решается следующая задача условной одно-критериальной оптимизации:

/ (х) ^ ех(г

Г^ (х) < 0, у = й

\hJ (х) = 0, у = г +1, т

В общем виде, пригодность индивида х вычисляется по формуле:

т

Атезз{ х) = / (х) + 5-ЦГ) -X Уx),

у=1

где ( - номер текущего поколения; 5 = 1, если решается задача минимизации; 5 = — 1 если решается задача