Исследование влияния параметров локализаци, регруппировки на эффективность работы алгоритма DMS-PSO
Анализ основ алгоритма PSO и его модификации DMS-PSO. Исследование влияния периода регруппировки и локализации на качество найденного решения алгоритмом DMS-PSO, а так же на надежность работы алгоритма. Разработка рекомендаций к использованию настроек.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 18.01.2018 |
Размер файла | 184,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
ИССЛЕДОВАНИЕ ВЛИЯНИЯ ПАРАМЕТРОВ ЛОКАЛИЗАЦИ, РЕГРУППИРОВКИ НА ЭФФЕКТИВНОСТЬ РАБОТЫ АЛГОРИТМА DMS-PSO
В.О. Долин (slane@bk.ru)
Сибирский государственный
аэрокосмический университет
имени академика М.Ф. Решетнева,
Красноярск
Ключевые слова и выражения: оптимизация роем частиц, PSO, DMS-PSO
алгоритм локализация решение регруппировка
В статье представлены основы алгоритма PSO и его модификации DMS-PSO. Проведено исследования влияния периода регруппировки и локализации на качество найденного решения алгоритмом DMS-PSO, а так же на надежность работы алгоритма. Выработаны рекомендации к использованию этих настроек.
Введение
Поиск оптимальных решений занимает все более значимую роль при решении прикладных задач. Для поиска разработано множество поисковых методов, таких как методы нулевого порядка: Метод бисекций, Метод покоординатного спуска, Метод деформируемого многогранника Нелдера-Мида и т.д.; методы первого порядка: Метод наискорейшего спуска, Метод сопряженного градиента Флетчера-Ривса и т.д.; методы второго порядка: Метод Ньютона-Рафсона, Метод Дэвидона-Флетчера-Пауэла и так далее. Так же, все большей популярностью пользуются стохастические алгоритмы, имеющие слабую доказательную базу, но, зачастую, показывающие хорошие результаты при решении прикладных задач.
Все больший научный и практический интерес вызывают эволюционные алгоритмы глобальной оптимизации, имитирующие процессы естественной эволюции и поведения живых организмов в окружающей среде: генетические алгоритмы, эволюционные стратегии, «муравьиные алгоритмы», «пчелиные алгоритмы». И относительно недавно разработан смежный метод, обобщающий имитацию интеллектуального совместного поведения субъектов, без отнесения их к какой-либо биологической группе, так называемый particle swarm optimizer (PSO).
В методе оптимизации PSO субъектами-решениями являются частицы, осуществляющие итерационный поиск эффективного сочетания значений независимых переменных в пространстве поиска задачи оптимизации. В каждый момент времени (на каждой итерации) частицы имеют в этом пространстве некоторую позицию (вектор значений параметров целевой функции) и вектор скорости, определяющий направление движения. Для каждой позиции частицы вычисляется соответствующее значение целевой функции, и на этой основе по формулам (1.1) и (1.2) частица меняет свою позицию и скорость, тем самым ориентируясь в пространстве поиска и стремясь отыскать область глобального экстремума.
Простота реализации и эффективность данного алгоритма вызывают повышенный практический интерес к particle swarm optimizer (PSO) в целом и к dynamic multi-swarm particle swarm optimizer (DMS-PSO) в частности, а недостаточная изученность влияния параметров алгоритма требует дополнительных исследований.
1. Постановка задачи
Рассмотрим задачу глобальной безусловной минимизации целевой функций:
Множество частиц обозначим , где - количество частиц. В момент времени координаты частицы определяются вектором , а ее скорость - вектором . Начальные координаты и скорости частицы равны , соответственно.
Итерации в каноническом методе PSO выполняются по следующей схеме:
(1.1)
(1.2)
Здесь как , так и представляют собой n-мерный вектор псевдослучайных чисел, равномерно распределенных в интервале . - наилучшая по значению целевой функции позиция, найденная частицей за все время поиска. - наилучшая по целевой функции позиция, найденная группой в которую входит частица. - параметр инерции скорости, и - это коэффициенты индивидуальной и групповой сходимости частицы. Параметр может изменяться динамически по согласно формуле:
где - максимальное значение параметра , - минимальное значение параметра , - номер итерации, - максимальное количство итераций.
Важным параметров в PSO является топология группы частиц, на которые разбивается все частицы. Другими словами топология группы определяет структуру соседства частиц в группе. В данной работе для исследования выбраны такие топологии: «клика», «кластер» размерности 3. Топология «клика» это наиболее очевидная структура соседства частиц - каждая с каждой в группе, то есть каждая частица в группе знает информацию о каждой частице в группе, и самое главное «знает» . Одним из ключевых отиличий DMS-PSO от кононического PSO является наличе топологии «кластера», которая состоит из нескольких топологий «клика» или групп, в каждой группе свой и частицы из других групп его не «знают», для нагляности данную топологию можно представить графически, как изображено на рис. 1.
Рис.1. Топология кластера, размер кластера 5
Например, для P1 соседними являются частицы: P2, P3, P4, P5.
2. DMS-PSO с локальным поиском
PSO с размерностью кластера 5 и более достигает хороших результатов на простых задачах, было проведено множество исследований на эту тему, если же размерность кластера не большая, то PSO работает лучше на комплексных задачах. PSO использует информацию предыдущей итерации, что в совокупности с небольшим размером кластера дает быструю сходимость к локальному оптимуму. Чтобы этого избежать, необходимо дать возможность частицам в разных кластерах обмениваться информацией между собой. Причем информация должна быть как положительной (информация о более «хорошем» решении), так и отрицательной, чтобы более разнообразить популяцию. Поэтому вводится случайная регруппировка элементов кластеров, благодаря чему PSO имеет динамическую структуру соседства частиц. Каждые итераций работы алгоритма кластеры обмениваются некоторыми частицами и поиск оптимума продолжается с уже новой конфигурацией соседства частиц. называется периодом регруппировки. Таким образом, происходит обмен информацией между кластерами и повышается разнообразие популяции.
Для примера, возьмём 9 частиц, топология соседства - кластер размерности 3. Кластеры формируются случайным образом. Через некоторый период частицы (кластеры) могут сгруппироваться вокруг локальных оптимумов. Затем применятся операция регруппировки и продолжается поиск оптимума. Этот процесс повторяется, пока не будет выполнен критерий останова алгоритма. Изменение структуры соседства даёт возможность небольшим группам частиц охватывать большие области поиска. Операция регруппировки представлена на рис. 2.
Рис.2. Работа оператора регруппировки
При достижении болшего разнообразия популяции, уменьшается скорость сходимости и благодаря стахостическому поведению алгоритма нет вообще гарантии, что найденное алгоритмом PSO решение будет хотябы локально-оптимальным. По этой причине, в DMS-PSO добавлен локальный поиск: каждые L итераий популяция сортируется согласно пригодсности, выбирает 25% лучших индивидов и эти индивиды улучшаются, использую локальный поиск. L называется периодом локализации. Улучшенные индивиды возвращаются в популяцию, структура топологии при этом переинициализируется.
3. Эксперимент
В ходе проведенной работы была разработана программная система решения задач глобальной оптимизации методом DMS-PSO, проведено тестирование алгоритма на репрезентативном множестве функций, включающем многоэкстремальные масштабируемые функции, с возможностью произвольного сдвига точки экстремума. В перечень функций тестирования включал следующие функции: Сферическая, Повернутая Эллиптическая, Розенброка, Гринвока, Экли, Растригина.
В данной работе исследовалось влияние периода локализации и периода регруппировки на качество полученного решения, а так же на надежность работы алгоритма.
Стохастичность исследуемого алгоритма предопределила оценку эффективности по усредненным многократным прогонам и четырем показателям качества: скорости, надежности, разбросу, среднему лучшему найденному решению за все прогоны.
Во всех запусках алгоритма число прогонов равнялось 50 точность поиска экстремума равна 0.01, значения параметров алгоритма , . Параметр инерции скорости изменялся динамически на отрезке , либо был статичным равным . Область определения функций по всем координатам: для Сферической функции , для Повернутой Эллиптической , для Розенброка , для Гринвока , для Экли , для Растригина . Размерности функций: 2, 4, 8, 16.
Пример сводной таблицы полученных в ходе исследования результатов для каждой тестовой функции выглядит, как приведено в таблице 1.
В случае Таблицы 1, настройками алгоритма являлись: количество частиц , количество итераций работы алгоритма , точность поиска , параметр инерции скорости , топология соседства частиц - кластер размерности 3, тип локализации - градиентный спуск.
Из рисунка 3 и таблицы 1 видно, что алгоритм DMS-PSO, при настройках, работает с наибольшей надежностью при периоде локализации равном 0, т.е. локализация не используется. Наименьшую надежность алгоритм показывает при периоде локализации, равном , что равняется от максимального количества итераций (поколений).
Рис.3. Зависимость надежности алгоритма от периода локализации для функции Растригина при настройках
Зависимость надежности работы алгоритма, разброса, скорости и среднего лучшего решения от периода локализации на функции Растригина размерности 8
Табл. 1
Период локализации |
надежность |
разброс |
скорость |
сред. лучший |
|
0 |
92% |
254:674 |
473,7188 |
0,114868 |
|
116 |
86% |
404:700 |
567,8333 |
0,058817 |
|
233 |
60% |
290:680 |
500,4762 |
0,423223 |
|
349 |
72% |
262:687 |
466,8 |
0,239284 |
|
466 |
74% |
291:663 |
492,5385 |
0,137471 |
|
582 |
74% |
253:693 |
458,68 |
0,138243 |
|
699 |
80% |
195:684 |
453,7143 |
0,144116 |
На рис. 4 отражена зависимость надежности работы алгоритма от периода регруппировки на функции Растригина при тех же настройках алгоритма.
Рис.4. Зависимость надежности алгоритма от периода регруппировки для функции Растригина при настройках
Наибольшая надежность, при настройках, достигается на периоде регруппировки, находящемся в интервале . Наименьшая надежность достигается на периоде регруппировки, равном , что равняется от максимального количества итераций (поколений).
Анализ полученных результатов показал, что надежность работы алгоритма зависит от периода локализации (регруппировки). При большинстве настроек алгоритм показывает наивысшую надежность при периоде, равном от максимального количества итераций работы алгоритма. Условно, зависимости надежности алгоритма от периода локализации (регруппировки) можно представить на рисунке 5. По горизонтальной оси - период локализации, по вертикальной оси - надежность работы алгоритма. - максимальное количество итераций работы алгоритма. Красной линией обозначена зависимость для динамической скорости, зеленой для статичной.
Стоит отметить, что графики отражают лишь зависимость и не показывают точное значение надежности алгоритма, так как она зависит и от других настроек алгоритма.
Рис.5. а) отражает зависимость на унимодальных «простых» функциях; б) отражает зависимость на полимодальных функциях при использовании топологии «клика»; в) отражает зависимость на полимодальных функциях при использовании топологии «кластер 3»; г) отражает зависимость на полимодальных функциях при использовании топологии «кластер 3» с использованием регруппировки
Таким образом:
На унимодальных «простых» функциях наивысшая надежность достигается при периоде, равном от максимального количества поколений. Результаты для динамической и статичной скоростей совпадают, т.к. алгоритм одинаково хорошо работает и при статичной, и при динамической скоростях, что обусловлено простотой функций.
На полимодальных функциях наивысшая надежность поиска достигается при использовании топологии «клика» совместно с динамическим изменением инерции скорости при условии локализации решений с периодом локализации равным от максимального количества поколений. В случае использования статичного значения инерции скорости локализация не требуется, так наивысшее значение надежности достигается при периоде локализации равным 0.
На полимодальных функциях при использовании топологии «кластер 3» наивысшие надежности достигаются на периоде, равном от максимального количества поколений, в случае динамической скорости. Отсутствие локализации отрицательно сказывается на надежности работы алгоритма. В случае статичной скорости, наивысшая надежность работы алгоритма достигается на периоде локализации, равном от максимального количества поколений. Отсутствие локализации так же отрицательно сказывается на надежности работы алгоритма.
На полимодальных функциях процесс регруппировки соседей в кластере показывает наилучшие результат по надежности для кластера «кластер 3» при этом локализация не требуется, так как не повышает надежность поиска. Результаты для статичной и динамической скоростей совпадают.
Заключение
Необходимо в дальнейшем сравнить эффективность PSO с другими аналогичными стохастическими алгоритмами, а также предложить варианты автоматизации выбора параметров PSO, позволяющие пользователю избежать необходимости настройки параметров при решении реальных задач оптимизации. Провести опробацию PSO при решении прикладных задач оптимизации.
Список литературы
[Holland et al., 1975] Holland J. H. Adaptation in natural and artificial systems. // University of Michigan Press. 1975.
[Kennedy et al., 1995] Kennedy J. and Eberhart R. Particle swarm optimization // Proc. of the IEEE Int. Conf. on Neural Networks. - Piscataway. 1995.
[Kennedy, 1999] Kennedy J. Small worlds and mega-minds: effects of neighborhood topology on particle swarm performance // Proc. of IEEE Congress on Evolutionary Computation (CEC 1999), Piscataway. 1999.
[Kennedy et al., 2002] J. Kennedy and R. Mendes Population structure and particle swarm performance [Text] // Proc. of the IEEE Congress on Evolutionary Computation (CEC 2002), Honolulu, Hawaii USA. 2002
[Liang et al., 2005] Liang J. J. and Suganthan P. N. Dynamic Multi-Swarm Particle Swarm Optimizer // IEEE International Swarm Intelligence Symposium. 2005.
Размещено на Allbest.ru
...Подобные документы
Описание принципа работы генетического алгоритма, проверка его работы на функции согласно варианту на основе готовой программы. Основные параметры генетического алгоритма, его структура и содержание. Способы реализации алгоритма и его компонентов.
лабораторная работа [20,2 K], добавлен 03.12.2014Исследование технических характеристик и принципа работы графического планшета. Разработка алгоритма подключения и настройки периферийного устройства. Линейный ряд графических планшетов Wacom. Изучение основных неисправностей и способов их устранения.
курсовая работа [1,2 M], добавлен 10.11.2014Состав и принцип работы аппаратуры. Выбор параметров корреляционного анализа и Фурье-анализа. Разработка и применение алгоритма корреляционного анализа. Реализация алгоритма Фурье-анализа на языке С++ и алгоритма корреляционного анализа на языке С#.
дипломная работа [4,6 M], добавлен 30.11.2016Разработка алгоритма и реализация интеллектуальной информационной системы, позволяющей оценить время в неделю, необходимое для осуществления функций технической поддержки администратора с необходимым уровнем надежности работы локальной сети.
курсовая работа [37,4 K], добавлен 01.12.2009Принцип работы алгоритма бинарного поиска в массиве. Способы исследования алгоритма "прямое включение". Формулы зависимости числа сравнений от элементов в массиве. Графики среднего числа сравнений и перемещений практических и теоретических измерений.
курсовая работа [646,1 K], добавлен 07.01.2014Анализ функции и разработка алгоритма по ее вычислению. Программирование отдельных блоков и структур алгоритма. Структура Паскаль-программы. Раздел описаний, подпрограммы, тело программы. Полная Паскаль-программа в соответствии с разработанным алгоритмом.
курсовая работа [241,8 K], добавлен 30.01.2016Анализ заданной сложной функции и разработка структурной схемы алгоритма по её вычислению. Программирование отдельных блоков и структур алгоритма решаемой задачи на языке Паскаль. Полная программа в соответствии с алгоритмом. Результаты расчётов на ПК.
курсовая работа [59,2 K], добавлен 09.04.2012Оптимизация показателей эффективности функционирования технологического контура системы управления космическим аппаратом, исследование свойств его показателей. Настройка нейронной сети, гибридизация генетического алгоритма с алгоритмами локального поиска.
дипломная работа [4,5 M], добавлен 02.06.2011Решение нелинейных краевых задач. Входные данные и содержание алгоритма Бройдена. Содержание алгоритма Бройдена. Метод исключения Гаусса для решения СЛАУ. Вывод формулы пересчета Бройдена. Разработка программы, исследование результата и примеры ее работы.
курсовая работа [912,3 K], добавлен 01.04.2010Основные принципы разработки программ. Разработка алгоритма решения задачи о пересечении двухвыпуклым многоугольником. Реализация разработанного алгоритма на языке программирования. Тесты для проверки работы программы. Графическая иллюстрация решения.
курсовая работа [53,3 K], добавлен 20.11.2015Исследование системы распределения ключей на основе линейных преобразований. Описание компонентов сети конфиденциальной связи. Характеристика отечественного алгоритма шифрования данных. Обзор результатов расчетов криптостойкости алгоритма шифрования.
контрольная работа [56,5 K], добавлен 26.09.2012Исследование симметричных алгоритмов блочного шифрования. Минусы и плюсы алгоритма IDEA. Разработка программы аутентификации пользователя и сообщений на основе алгоритма IDEA. Выбор языка программирования. Тестирование и реализация программного средства.
курсовая работа [314,2 K], добавлен 27.01.2015Описание алгоритма работы и разработка структурной схемы МКС. Схема вывода аналогового управляющего сигнала, подключения ЖК-дисплея, клавиатуры и аварийного датчика. Разработка блок-схемы алгоритма главной программы работы МКС. Функция инициализации.
курсовая работа [5,7 M], добавлен 26.06.2016Этапы процедуры принятия решений. Разработка математического алгоритма. Блок-схема алгоритма работы программы. Разработка программы на языке программирования С++ в среде разработки MFC. Текст программы определения технического состояния станка с ЧПУ.
курсовая работа [823,0 K], добавлен 18.12.2011Разработка программы шифрования данных с использованием алгоритма DES. Структура алгоритма, режимы его работы. Электронный шифровальный блокнот. Цепочка цифровых блокнотов. Цифровая и внешняя обратная связь. Структура окна: функции основных кнопок.
лабораторная работа [830,3 K], добавлен 28.04.2014Составление математической модели насосной станции. Исследование алгоритма каскадно-частотного регулирования в пакете программ Matlab Simulink. Решение проблемы обеспечения устойчивой работы насосных агрегатов и выбор ширины зоны нечувствительности.
курсовая работа [1,7 M], добавлен 15.01.2012Анализ алгоритмов, оценка параметров алгоритма (эффективности, сложности, правильности). Комплексный анализ эффективности алгоритма на основе комплексной оценки ресурсов формальной системы. Верификация при коллективной разработке программных систем.
презентация [234,9 K], добавлен 22.10.2013Основные свойства алгоритма. Формальный и неформальный исполнитель алгоритма, система его команд. Способы записи алгоритма. Словесное описание, построчная запись, опорный конспект. Характеристики алгоритмического языка. Выполнение алгоритма компьютером.
презентация [2,0 M], добавлен 04.04.2014История создания алгоритма Форда-Фалкерсона, краткое описание его алгоритма, особенности работы, анализ сложности. Создание распараллеленного варианта алгоритма и его краткое описание. Основные характеристики теории графов, специфика, пути и маршруты.
контрольная работа [246,3 K], добавлен 06.08.2013Особенности метода неопределенных множителей Лагранжа, градиентного метода и метода перебора и динамического программирования. Конструирование алгоритма решения задачи. Структурная схема алгоритма сценария диалога и описание его программной реализации.
курсовая работа [1010,4 K], добавлен 10.08.2014