Другие журналы
|
научное издание МГТУ им. Н.Э. БауманаНАУКА и ОБРАЗОВАНИЕИздатель ФГБОУ ВПО "МГТУ им. Н.Э. Баумана". Эл № ФС 77 - 48211. ISSN 1994-0408![]()
Мультимемеевая модификация гибридного муравьиного алгоритма непрерывной оптимизации HCIAC
# 09, сентябрь 2012 DOI: 10.7463/0912.0470529
Файл статьи:
![]() Россия, МГТУ им. Н.Э. Баумана chernobrivchenko.k@gmail.com
ВведениеПубликация продолжает работу [1], посвященную исследованию эффективности модифицированного нами алгоритма непрерывно взаимодействующей колонии муравьев CIAC (ContinuousInteractingAntColony) [2]. Муравьиные алгоритмы представляют собой новый класс алгоритмов оптимизации, инспирированных живой природой. В основу алгоритмов положено моделирование самоорганизации в муравьиной колонии, как многоагентной системе, в которой каждый агент (муравей) функционирует по очень простым правилам, но поведение системы в целом оказывается высоко рациональным. Муравьи в колонии образуют структуру, называемую гетерархией, которая, в отличии от иерархии, предполагает не вертикальные связи между агентами системы, а горизонтальные, когда все агенты равноправны между собой. В колонии муравьев имеет место плотная гетерархия, когда каждый из агентов системы может связываться с любым другим агентом и в любой момент времени. Общение между муравьями происходит через каналы прямого взаимодействия и стигмергии (stigmergy). Прямое взаимодействие между агентами осуществляется посредством обмена пищей и выделениями желез (трофоллаксис). Канал стигмергии (следовой канал) представляет собой способ обмен информацией через феромонный след, оставляемый муравьями. Муравьиные алгоритмы используют для решения задач, как дискретной, так и непрерывной оптимизации. Первым вариантом алгоритма колонии муравьев, разработанным для решения задачи непрерывной оптимизации, стал алгоритм непрерывной оптимизации колонией муравьев (ContinuousAntColonyOptimization, CACO), наметки которого были предложены Билчевым (G.Bilchev) и Парми (I.C. Parmee) в 1995 г. В настоящее время известно большое число алгоритмов непрерывной оптимизации колонией муравьев, одним из которых является упомянутый выше алгоритм CIAC. Для повышения эффективности алгоритма CIAC его авторы разработали модификацию HybridCIAC (HCIAC) [3], основной особенностью которой является реализация локального поиска с помощью широко известного алгоритма Нелдера-Мида. В данной работе мы предлагаем модификацию алгоритма HCIAC на основе меметических (memetic) алгоритмов, которые представляют собой гибридные популяционные метаэвристические алгоритмы поисковой оптимизации, основанные на концепции мема и нео-дарвиновском принципе эволюции [4]. Модифицированный алгоритм назван нами HCIAC-M. В контексте меметических алгоритмов мем является реализацией какого-либо алгоритма локальной оптимизации, уточняющего текущие решения на каждой итерации, либо через некоторое число итераций. В широком смысле, меметические алгоритмы можно рассматривать как гибридизацию одного из популяционных алгоритмов глобального поиска и одного или нескольких классических или популяционных алгоритмов локальной оптимизации. Из различных вариантов меметических алгоритмов чаще всего используют вариант мультимемных (multi-memes) адаптивных алгоритмов. Основной задачей конструирования таких алгоритмов является выбор целесообразной стратегии использования того или иного мема из роя доступных мемов. Задача относится к классу задач метаоптимизации [5]. Указанную стратегию иногда называют гиперэвристикой (hyperheuristic). Наиболее известны три следующие категории гиперэвристик, используемых в гиперэвристических адаптивных мультимемных алгоритмах: случайные (random) гиперэвристики, жадные (greedy) гиперэвристики, гиперэвристики cфункцией выбора (choice-function). В алгоритме HCIAC-Mиспользован один из вариантов жадной гиперэвристики. HCIAC-Mвключает в себя еще одну модификацию алгоритма HCIAC– последний алгоритм дополнен процедурой встряски популяции, которая призвана диверсифицировать поиск и тем самым повысить вероятность локализации глобального экстремума целевой функции. В пункте 1 приведена постановка задачи и представлены схемы алгоритмов CIAC и HCIAC. Предлагаемая модификация алгоритма HCIAC рассматривается в пункте 2. Пункт 3 посвящен исследованию эффективности алгоритма HCIAC-Mпри поиске глобального экстремума одноэкстремальной овражной функции Розенброка (Rosenbrock) и многоэкстремальной функции Растригина (Rastrigin) из известного пакета тестовых функций CES (CongressofEvolutionaryComputing) [6]. Последовательно представлены результаты исследования модифицированных встряской алгоритмов CIACи HCIAC, а также алгоритма HCIAC-M. В пункте 4 в качестве примера применения алгоритма HCIAC-Mрассмотрена практически значимая задача оптимизации системы двигатель-генератор [7], сводящаяся к задаче оптимального управления, которую мы решаем путем редукции к задаче нелинейного программирования, а затем к задаче безусловной оптимизации.
1. Постановка задачи и схема базового муравьиного алгоритма Рассматриваем задачу многомерной глобальной безусловной оптимизации: найти максимум целевой функции
Здесь
параллелепипед допустимых значений этого вектора. Как мы отмечали выше, алгоритм HCIAC построен на основе алгоритма CIAC. Рассмотрим поэтому прежде последний алгоритм [2]. 1.1. Алгоритм CIAC Схема алгоритма CIACимеет следующий вид. 1) Создаем агентов (муравьев) 2) Моделируем работу канала стигмергии, для чего для каждого из агентов
где
нормированный интерес j-го агента к i-ой феромонной точке;
Здесь 3) Перемещаем агента 4) Моделируем функционирование канала прямого взаимодействия – агент 5) Сравниваем значение целевой функции 6) Если 7) После того, как по рассмотренной схеме все агенты колонии завершили свои перемещения, моделируем испарение феромонных точек (см. ниже). 8) Проверяем выполнение критерия останова, в качестве которого может использоваться условие достижения заданного числа итераций
где В каждой точке
где Размер памяти агента ограничен, так что максимально допустимое число сообщений в памяти каждого из агентов не превышает величины
1.2. Алгоритм HCIAC Алгоритм HCIAC использует следующие модификации алгоритма CIAC [3]. Во-первых, как мы отмечали выше, HCIAC реализует локальный поиск на основе алгоритма Нелдера-Мида. Во-вторых, HCIAC использует модифицированную модель канала стигмергии. В алгоритме CIACв случае медленного испарения феромонных точек число этих точек может стать чрезвычайно большим, что приведет к значительному увеличению требуемой памяти ЭВМ и высоким вычислительным затратам. В алгоритме HCIAC для решения этой проблемы муравьи могут не только добавлять новые точки, но и усиливать старые, находящиеся в зоне видимости (visiblezone) агентов. Схему алгоритма HCIAC передает следующая последовательность его основных шагов. 1) Инициализируем агентов по схеме алгоритма CIAC. Кроме того задаем начальные радиусы зон видимости 2) Моделируем испарение феромонных точек по формуле (3). 3) Для каждого из агентов 3.1) Моделируем выбор агентом
где 3.2) Если для агента 3.3) Если для агента 4) Если в зоне видимости агента 4.1) Если выбор сделан в пользу работы агента 4.2) В случае выбора второго варианта действий, исходя из текущего положения агента 4.2.1) Запускаем локальный поиск алгоритмом Нелдера-Мида, полагая начальную длину ребра симплекса, равной текущему радиусу зоны видимости 4.2.2) Отыскиваем видимые данным агентом феромонные точки. 4.2.3) . Если указанные точки имеются, усиливаем ближайшую из них
а радиус видимости 4.2.4) Если указанные феромонные точки отсутствуют, формируем новую феромонную точку 5) Реализуем случайное перемещение агента 6) По правилам алгоритма CIACпродолжаем либо завершаем итерации.
2. Модификация базового алгоритма Результаты исследований, выполненных авторами алгоритма HCIAC, показывают, что этот алгоритм по сравнению с алгоритмом CIAC позволяет значительно повысить скорость сходимости итераций. Однако ценой этого является значительное увеличение числа испытаний (вычислений значений целевой функции). Так, в наших экспериментах показано, что один акт локального поиска пятимерной функции Розенброка может требовать до 800 испытаний. Причиной этого является низкая скорость сходимости алгоритма Нелдера-Мида на некоторых классах функций. При решении практически значимых задач оптимизации, в которых целевая функция имеет высокую вычислительную сложность, данное обстоятельство может привести к недопустимо большим вычислительным затратам. В алгоритме HCIAC-Mв качестве мемов используем алгоритм Используем жадную гиперэвристику, основные особенности которой заключаются в следующем. 1) Лучшего для данного агента 2) Критерий эффективности мема
где и если лучшее решение
3) На последних
Как отмечалось выше, алгоритм HCIAC-Mвключает в себя еще процедуру встряски популяции, которая запускается c шагом
где Суть процедуры встряски популяции заключается в следующем. 1) После завершения очередных 2) Вычисляем значения целевой функции в точках
где
3. Исследование эффективности алгоритма HCIAC-M Модификация алгоритма HCIAC была выполнена в несколько этапов. Соответственно многоэтапным было исследование его эффективности. Реализация рассматриваемых алгоритмов выполнена среде MatLab Вычислительные эксперименты проводились на персональном компьютере с процессором IntelCore 2 DuoT8100 2,1 ГГц и оперативной памятью объемом 2 ГБ.
3.1. Модификация алгоритма CIACвстряской. В качестве тестовой использована пятимерная функция Растригина. Если не указано иное, вычислительные эксперименты выполнены со значениями свободных параметров модифицированного алгоритма CIAC, называемого нами CIAC-S, которые использованы в работе [1]: коэффициент устойчивости феромонных точек В качестве критерия эффективности алгоритма используем величину Рисунок 1 иллюстрирует вероятность
Рисунок 1 – Оценка вероятности
Зависимость вероятности
Рисунок 2 – Оценка вероятности
Из рисунка 2 следует, что, как и ожидалось, малые значения величины Результаты исследования зависимости
Рисунок 3 – Оценка вероятности
Рисунок 3 показывает, что увеличение значений параметра Результаты варьирования относительного числа агентов
Рисунок 4 – Оценка вероятности
Из рисунка 4 отчетливо видно, что встряска популяции повышает вероятность локализации глобального экстремума в тем большей степени, чем выше значение этого параметра. Однако с ростом величины Таким образом, представленные результаты показывают эффективность предложенной модификации алгоритма CIAC. Исследование позволило определить оптимальные для пятимерной функции Растригина значения свободных параметров процедуры встряски. Есть основания полагать, что эти значения будут близки к оптимальным и для других многоэкстремальных функций. Важно, что процедура встряски не уменьшает результирующую точность алгоритма, поскольку на его завершающих итерациях эта процедура «отключается». Процедура оставляет широкие возможности оптимизации ее свободных параметров по критериям вероятности локализации глобального экстремума и вычислительной сложности.
3.2. Модификация алгоритма HCIACвстряской Исследование эффективности данной модификации алгоритма HCIAC, названной нами HCIAC-S, выполнено на функциях Розенброка и Растригина. В качестве значений свободных параметров алгоритма использованы значения, указанные в п. 3.1. Зона видимости агента в алгоритме HCIACдинамически меняется в процессе поиска, поэтому исследование зависимости Исследование выполнено для пяти- и десятимерной функций Розенброка. В работе [3] показано, что при поиске экстремума этой функции с помощью канонического алгоритмаHCIAC, возникает ряд проблем. Модификация алгоритма HCIACвстряской имела целью, как отмечалось выше, повышение эффективности алгоритма при поиске экстремума многоэкстремальных функций. Использование в качестве тестовых функций Розенброка разной размерности позволяет проверить насколько процедура встряски эффективна для иного класса функций – класса овражных функций. Результаты исследования для пятимерной функции Розенброка иллюстрирует рисунок 5, а для десятимерной функции – рисунок 6.
Рисунок 5 – Оценка вероятности
Рисунок 6 – Оценка вероятности
Рисунок 5 показывает, что популяция уже из 100 агентов обеспечивает практически стопроцентную вероятность локализации экстремума пятимерной функции Розенброка. Поскольку увеличение числа агентов популяции вызывает почти пропорциональный рост требуемого числа испытаний (в рассматриваемом примере с Отметим следующее обстоятельство. Благодаря динамическому изменению зоны видимости агента и гибридизации с алгоритмом локального поиска, алгоритм HCIAC-S в обоих экспериментах обеспечил среднюю абсолютную погрешность порядка 10-8 ‑ 10-9, что на порядок меньше лучшего результата алгоритма CIAC. Некоторые результаты исследования эффективности алгоритмаHCIAC-Sдля функции Растригина представлены на рисунке 7.
Рисунок 7 – Оценка вероятности
Из рисунка 7 вытекает, что алгоритм HCIAC обеспечивает 100 % вероятность локализации глобального экстремума пятимерной функции Растригина уже при 200 агентах (против 398 агентов алгоритма CIAC[1]). Данное обстоятельство, как отмечалось выше, позволяет значительно уменьшить вычислительные затраты. Алгоритм обеспечил среднюю абсолютную погрешность решения порядка 10-7 ‑ 10-8, то есть на два-три порядка меньше, чем лучший результат алгоритма CIAC. Итого, на основе представленных результатов можно сделать вывод, что гибридизация алгоритма CIAC с алгоритмом локального поиска Нелдера-Мида, а также использование процедуры встряски позволяют существенно повысить эффективность алгоритма, как по критерию вероятности локализации глобального экстремума, так и по критериям средней абсолютной погрешности решения и суммарных вычислительных затрат. При этом снижение вычислительных затрат имеет место, не смотря на то, что применение алгоритма Нелдера-Мида в локальном поиске неизбежно влечет за собой увеличение суммарного числа испытаний, необходимых для эволюции каждого из агентов в течение одной итерации. Эффект обусловлен следующими причинами: возможность использования меньшего числа агентов для обеспечения той же точности поиска; уменьшение общего числа феромонных точек в зоне поиска; более высокая скорость сходимости алгоритма.
3.3. Мультимемеевая модификация алгоритма HCIAC Эффективность алгоритма HCIAC-Mисследуем на пятимерных тестовых функциях Розенброка и Растригина. Мультимемеевую модификацию в экспериментах, результаты которых представлены ниже, определяют следующие значения свободных параметров: число запусков локального поиска Эффективность рассматриваемых мемов для функций Розенброка и Растригина иллюстрируют рисунки 8, 9 соответственно, на которых величина
Рисунок 8 – Оценка вероятность использования мемов: функция Розенброка (
Рисунок 9 – Оценка вероятность использования мемов: функция Растригина (
Рисунки 8, 9 получены при использовании в качестве меры эффективности мемов среднего числа испытаний На рисунках 10, 11 представлены средние по числу запусков локального поиска погрешности
Рисунок 10 – Средняя погрешность локального поиска мемами
Рисунок 11 – Средняя погрешность локального поиска мемами
Из рисунков 10, 11 следует, что средняя точность квазиньютоновского алгоритма примерно на два порядка выше такой же точности алгоритма Нелдера-Мида. Средние числа испытаний
Рисунок 12 – Средняя число испытаний за один запуск алгоритма локального поиска для мемов алгоритм HCIAC-M
Рисунок 13 – Средняя число испытаний за один запуск алгоритма локального поиска для мемов алгоритм HCIAC-M
Рисунки 12, 13 показывают, что по критерию Представленные результаты исследования свидетельствуют о том, что задачу выбора лучшего мема следует рассматривать как трех- или более критериальную задачу.
3.4. Сравнение эффективности алгоритмов CIAC, HCIACи HCIAC-M Введем в рассмотрение еще один критерий эффективности алгоритма ‑ среднее по мультистарту число испытаний
Рисунок 14 – Среднее по мультистарту число испытаний за все время решения задачи: функция Растригина (
Из рисунка 14 вытекает, что алгоритм HCIAC-M обеспечивает почти тоже суммарное число испытаний, что алгоритм CIAC и почти в четыре раза меньшее число, чем алгоритм HCIAC. В целом, результаты данного исследования показывают, что алгоритм HCIAC-M позволяет для пятимерной функции Растригина примерно в четыре раза повысить быстродействие, сохранив практически прежней вероятность локализации глобального экстремума.
4.Пример Рассматриваем силовую часть электрического привода типа генератор-двигатель, предназначенного для управления некоторым рабочим механизмом (рисунок 15) [7].
Рисунок 15 – Схема силовой части электрического привода типа генератор-двигатель: Г – генератор; Д – двигатель; РМ –рабочий механизм
Динамику системы описываем системой алгебро-дифференциальных уравнений вида
где приняты следующие обозначения: J — момент инерции якоря двигателя и приводимого им в движение рабочего механизма; Во-первых, при заданных начальных условиях требуется найти закон изменения во времени ЭДС
имеющего смысл суммарных затрат энергии на перемещение якоря двигателя за период времени Во-вторых, функция
В-третьих, функция
Таким образом, имеем трехкритериальную задачу оптимального управления: найти допустимое управление При всех известных недостатках решения задачи оптимального управления методом сведения ее к задаче нелинейного программирования, используем именно этот метод [10]. Обозначим для простоты записи
Рисунок 16 - Кусочно-линейная аппроксимация управления
Обозначив
Переведем критерии оптимальности
где Примем следующие значения параметров задачи: J=0,425 кг·м2; Число узлов сетки, покрывающей интервал
с точностями
4.1. Алгоритм CIAC-S Принимаем следующие значения основных свободных параметров алгоритма: размер популяции равен
где Пример начального приближения к решению иллюстрирует рисунок 17. Указанному приближению соответствуют угол Лучшие (с точки зрения достигнутого значения функционала (8) результаты вычислительного эксперимента иллюстрируют рисунки 18а – 18в. Рисунок 18а показывает найденное оптимальное управление
а) б) в) Рисунок 17 – Пример начального приближения к решению
а) б) в) Рисунок 18 – Результаты решения задачи – оптимальная функция
Полученному решению задачи соответствуют угол Рассмотрим также движение системы на интервале Пример начального приближения к решению в этом случае иллюстрирует рисунок 19. Указанному приближению соответствуют угол
а) б) в) Рисунок 19 – Пример начального приближения к решению
Лучшие результаты вычислительных экспериментов, выполненных при помощи алгоритма CIAC-S, представлены на рисунке 20. Ему соответствует угол
4.2. Алгоритм HCIAC-M Максимальное число оценок целевой функции в процессе локального поиска ограничиваем величиной
а) б) в) Рисунок 20 – Результаты решения задачи – оптимальная функция
Результаты решения задачи с помощью алгоритма HCIAC-M, полученные в условиях п.4.1, иллюстрирует рисунок 21. Представленному решению соответствует угол
а) б) в) Рисунок 21 – Результаты решения задачи – оптимальная функция
Из рисунков 20, 21 следует, что, как и ожидалось, алгоритм HCIAC-M обеспечивает повышение точности решения и позволяет получить более гладкий управляющий сигнал. Вследствие увеличения числа испытаний скорость поиска замедляется по сравнению с алгоритмом CIAC-Sпримерно на 30%.
Заключение Представленные результаты исследования позволяют сделать вывод, что предложенная мультимемеевая гибридизация муравьиного алгоритма HCIACпозволяет не только увеличить вероятность локализации глобального экстремума целевой функции, но и повысить точность решения. Кроме того, за счет повышения эффективности поиска, гибридный алгоритм дает возможность уменьшить число агентов в системе и повысить тем самым его быстродействие. Мультимемеевая гибридизация приводит к алгоритму, обладающему свойствами самоадаптации, поскольку в процессе поиска мемы конкурируют между собой и победивший на данном этапе поиска мем используется на последующих этапах. В развитие работы авторы планируют использовать расширенный набор мемов, выбирать наилучших мемов для различных подобластей пространства поиска. Планируется также параллельная реализация рассматриваемых алгоритмов.
Список литератуы 1. Карпенко А.П., Чернобривченко К.А. Эффективность оптимизации методом непрерывно взаимодействующей колонии муравьев (CIAC) // Наука и образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2011. № 2. Режим доступа: http://technomag.edu.ru/doc/165551.html (дата обращения 20.10.2012). 2. Dréo J., Siarry P. Continuous interacting ant colony algorithm based on dense heterachy // Future Generation Computer Systems. 2004. Vol. 20, no. 5. P. 841–856. DOI: http://dx.doi.org/10.1016/j.future.2003.07.015 3. Dreo J., Siarry P. Hybrid Continuous Interacting Ant Colony aimed at enhanced global optimization // Algorithmic Operations Research. 2007. Vol. 2, no. 1. P. 52–64. 4. Krasnogor N. Studies on the Theory and Design Space of Memetic Algorithms : Ph.D. Thesis. Faculty of Computing, Mathematics and Engineering, University of the West of England, Bristol, U.K, 2002. 289 p. 5. Karpenko A.P., Svianadze Z.O. Meta-optimization based on self-organizing-map and genetic algorithm // Optical Memory and Neural Networks (Information Optics). 2011. Vol. 20, No. 4. P. 279-283. DOI: 10.3103/S1060992X11040059 6. Tang K., Yao X., Suganthan P.N., MacNish C., Chen Y.P., Chen C.M., Yang Z. Benchmark Functions for the CEC'2008 Special Session and Competition on Large Scale Global Optimization. Nature Inspired Computation and Applications Laboratory, USTC, China, 2007. 7. Александров А.Г. Оптимальные и адаптивные системы. М.: Высшаяшкола, 1989. 263 с. 8. Hu X.-M., Zhang J., Li Y. Orthogonal Methods Based Ant Colony Search for Solving Continuous Optimization Problems // Journal of Computer Science and Technology. 2008. Vol. 23, no. 1. P. 2-18. DOI: 10.1007/s11390-008-9111-5 9. MatLab, Optimization Toolbox Fminunc. Центркомпетенции MathWorks. Режимдоступа: http://matlab.exponenta.ru (дата обращения 20.10.20120). 10. Федоренко Р.П. Приближенное решение задач оптимального управления. М.: Наука, 1978. 488 с. Публикации с ключевыми словами: глобальная оптимизация, муравьиный алгоритм, мем Публикации со словами: глобальная оптимизация, муравьиный алгоритм, мем Смотри также: Тематические рубрики: Поделиться:
|
|
||||||||||||||||||||||||||||||||
|