XI Национальная конференция по искусственному интеллекту, КИИ - 08 Оптимизация многоэкстремальных функций на основе кластерной модификации генетического алгоритма КАЗАКОВ Павел Валерьевич канд. техн. наук, доцент Брянский государственный технический университет кафедра «Компьютерные технологии и системы» ПОДХОДЫ К РАСШИРЕНИЮ ВОЗМОЖНОСТЕЙ СТАНДАРТНОГО ГЕНЕТИЧЕСКОГО АЛГОРИТМА ДЛЯ РЕШЕНИЯ МНОГОЭКСТРЕМАЛЬНЫХ ЗАДАЧ ОПТИМИЗАЦИИ Имитационный (стандартный ГА) Многократные запуски ГА с варьированием значений управляющих параметров Частичная локализация экстремумов при наличии «предсказуемого» пространства решений На основе обработки локальных подпопуляций (ГА с логистической моделью, ГА с дифференциальной эволюцией, ГА с нишевыми надстройками) Выделение в основной популяции подпопуляций хромосом, обладующих определенными свойствами Добавление новых генетических операторов, управляющих параметров усложняют поиск и реализацию ГА На основе обработки распределенных популяций (параллельные ГА, ГА с моделью островов) Использование глобального разделения популяций, эволюционирующих изолированно либо, взаимодействуя друг с другом Требуется дополнительная настройка управляющих параметров, возможны сложности реализации в распределенных вычислительных системах 2 ПРИНЦИПЫ КЛАСТЕРНОЙ МОДИФИКАЦИИ ГЕНЕТИЧЕСКОГО АЛГОРИТМА (КГА) X2 Кластер хромосом – множество хромосом с «похожим» фенотипом Кластеры Степень «похожести» определяется на основе вещественной (Евклида), бинарной (Хемминга) метрики d Центроиды Хромосомы Ck принадлежат кластеру Zi, если d(Ck, Zi) Rc Недоминирующие решения X1 Rc [0, 1] – радиус гиперсферы кластера, дополнительный управляющий параметр. Его значение определяет число кластеров 3 ПРИНЦИПЫ КЛАСТЕРНОЙ МОДИФИКАЦИИ ГЕНЕТИЧЕСКОГО АЛГОРИТМА (продолжение) Для кластеризации хромосом используется принцип доминирования Пусть Z1, Z2,…,Zk – k фрагментов популяции Pn, представляющих собой кластеры. Хромосома C* Zi доминирует в кластере i, если C’ Zi : f(C*) f(C’). Хромосома C* является центроидом кластера Zi тогда и только тогда, если C’ Zi : d(C*, C’) Rc. 4 ОГРАНИЧЕННОСТЬ СТАНДАРТНОГО ГА И ВОЗМОЖНОСТИ КГА ПРИ ЛОКАЛИЗАЦИИ ГРУППЫ ЭКСТРЕМУМОВ X2 Глобальный оптимум Стандартный ГА «стягивает» популяцию к единственному оптимальному решению X1* X2* В кластерной модификации ГА кластеры обеспечивают разнообразие популяции и исследование всех участков поискового пространства X2 X 3* Z1 X1 X1* Z2 X2* Z3 X3* X1 5 СХЕМА РАБОТЫ КГА Выделяются хромосомы-центроиды кластеров, которые доминируют другие члены кластера в пределах расстояния Rc Оценивание решений Новая популяция Определение кластеров Отбор, кроссинговер, мутация Подпопуляция кластеров Результат Копирование кластеров Осуществляется за счет замены в новой популяции «худшей» хромосомы из некоторого кластера его центроидом 6 ВЫЧИСЛИТЕЛЬНЫЕ ОСОБЕННОСТИ КГА Временная эффективность КГА (Tz) зависит от числа вычислений мер близости при обработке кластеров. Расчеты показали, что линейная O(Tz) квадратичная и зависит от Rc и Np Параметр Rc влияет на число кластеров и определяется экспериментально. Возможно аналитическое определение Rc ≥ 2d, где d – расстояние между двумя наиболее различными решениями Nopt Обощенная кривая изменения числа возможных экстремумов, которые могут найдены для разных значений Rc. (обычно представляет собой ломаную) При Rc -> 1 КГА функционирует как стандартный ГА со cтратегией элитизма 1 0 1 Rc Критерий определения экстремума в последней популяции: | f ( Zci ) f (C*) | , где f(Zci) – оптимальность i – го центроида кластера; f (C*) – оптимальность лучшей хромосомы последней популяции; ε > 0 – параметр, определяющий верхнюю границу «глобального» оптимума. 7 ТЕСТОВЫЕ ФУНКЦИИ МНОГОЭКСТРЕМАЛЬНОЙ ОПТИМИЗАЦИИ Функция 1 f ( x1, x2 ) (4 2.1 x12 x14 ) 3 x1 x2 (4 4 x2 2 ) x2 2 3 x1 3, 2 x2 2 2 Число глобальных оптимумов 2 5 f ( x1, x2 ) j cos[( j 1) xi j ] i 1 j 1 10 xi 10 Параметры КГА Np = 100, Pc = 0,9, Pm = 0,03, Rc = 0,03 Np = 300, Pc = 0,9, 18 Pm = 0,03, Rc = 0,025 8 ГРАФИКИ И ПЛОТНОСТИ ИССЛЕДОВАНИЯ ПРОСТРАНСТВА РЕШЕНЙИ КГА ФУНКЦИЙ Функция 1 Функция 2 9 РЕЗУЛЬТАТ РАБОТЫ ПРОГРАММЫ, РЕАЛИЗУЮЩЕЙ КГА 10