Решетневские чтения. 2018
УДК 519.87
ОБ ЭФФЕКТИВНОСТИ КООПЕРАТИВНОГО МУРАВЬИНОГО АЛГОРИТМА ПРИ РЕШЕНИИ ЗАДАЧ КОМБИНАТОРНОЙ ОПТИМИЗАЦИИ*
Д. В. Дресвянский
Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
E-mail: [email protected]
Рассматривается решение комбинаторных задач оптимизации с помощью кооперативного муравьиного алгоритма. В результате исследований продемонстрирована целесообразность и эффективность предложенного подхода.
Ключевые слова: комбинаторная оптимизация, муравьиный алгоритм, задача коммивояжера, кооперативный алгоритм.
ABOUT EFFECTIVENESS OF ^-OPERATION OF ANT COLONY OPTIMIZATION ALGORITHMS IN SOLVING THE PROBLEMS OF COMBINATORIAL OPTIMIZATION
D. V. Dresvyanskiy
Reshetnev Siberian State University of Science and Technology 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: [email protected]
We consider the solution of combinatorial problems with the help of a co-operative ant colony optimization algorithm. As a result of the research, the expediency and effectiveness of the proposed approach was demonstrated.
Keywords: combinatorial optimization, ant colony optimization algorithm, travelling salesman problem, cooperative algorithm.
В современном мире необходимость решения задач комбинаторной оптимизации растет с каждым днем. Составление оптимального расписания работы промышленных агрегатов, построение кратчайшей сети дорог между заданными объектами, поиск минимальной длины обхода населенных пунктов - все эти задачи требуют максимально эффективного решения.
Одной из классических задач комбинаторной оптимизации является задача коммивояжера. Ее суть заключается в поиске самого выгодного гамильтонова цикла - маршрута, проходящего через все заданные города по одному разу с последующим возвратом в исходный город. Данная задача относится к классу NP-трудных задач - при относительно небольшой размерности (66 городов и более) найти ее решение за приемлемое время методом полного перебора становится невозможным.
Одними из самых эффективных алгоритмов решения задачи коммивояжера стали бионические алгоритмы, а именно - муравьиный алгоритм (ACO). Муравьиный алгоритм, как и все бионические алгоритмы, включает в себя параметры, которые необходимо настраивать для каждой конкретной задачи.
Для решения данной проблемы существуют различные варианты самонастройки параметров аир, например, вероятностная самонастройка, представленная в [1]. В данной работе использован другой подход к выбору параметров - кооперативный подход, представленный в [2].
Идея кооперативного подхода заключается в одновременной работе нескольких алгоритмов в течение периода адаптации, задаваемого исследователем. После окончания периода адаптации с помощью формулы (1) определяется качество алгоритма на данном периоде:
1=1 T - k
я,=1■ ь (к ^ (1)
к=о к "+"1
где Т - интервал адаптации, Ь(к) = 1, если /-я популяция в момент к содержит наилучшего индивида, к = 0 - означает текущую ситуацию, к = 1 - предыдущую и т. д.
Полученные оценки алгоритмов используются для определения лучшего алгоритма и перераспределения ресурсов в его пользу. После перераспределения ресурсов период адаптации повторяется.
Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 18-37-00433.
Математические методы моделирования, управления и анализа данных
Эффективность бионических алгоритмов комбинаторной оптимизации при решении задачи коммивояжера
Задача Oliver30 (оптимум = 423.741) Eil51 (оптимум = 426) Berlin52 (оптимум = 7542)
Алгоритм Длина лучшего обхода Средняя длина обхода Длина лучшего обхода Средняя длина обхода Длина лучшего обхода Средняя длина обхода
Генетический алгоритм 423.741 429.67 431.935 445.324 7544.36 7969.25
Самонастраивающийся генетический алгоритм 423.741 430.62 439.22 447.80 7544.36 8097.75
Муравьиный алгоритм 423.741 424.59 429.78 433.52 7544.37 7551
Самонастраивающийся муравьиный алгоритм 423.741 425.20 429.48 440.42 7548.99 7579.70
Кооперативный муравьиный алгоритм 423.741 424.78 435.61 438.67 7544.36 7545.36
Помимо перераспределения такого ресурса, как количество индивидов в популяции, в данной работе также перераспределялось количество феромона на всех ребрах между вершинами (городами) согласно следующей формуле:
(2)
где т - конечная матрица следов феромонов; т,- - матрица следов феромонов алгоритма /; п - количество алгоритмов в кооперативном алгоритме. Качество алгоритмов qi при этом необходимо преобразовать по следующей формуле:
j=1
(3)
Тестирование кооперативного муравьиного алгоритма производилось на трех задачах коммивояжера -0Иуег30, ЕП51 и ВегИп52. Цифры в названиях задач указывают на их размерность. Для каждой задачи было выделено ограниченное количество вычислений целевой функции: для ОИуегЗО - 52800, для ЕП51 -342210 и для ВегИп52 - 348920 соответственно.
Эффективность кооперативного муравьиного алгоритма при решении задачи коммивояжера представлена в таблице. В данную таблицу также, для сравнения, включены результаты предыдущих исследований [3; 4].
Лучший результат в таблице по столбцу выделен жирным шрифтом. В результате тестирования было установлено, что эффективность кооперативного муравьиного алгоритма превосходит эффективность самонастраивающихся генетического и муравьиного алгоритмов на всех задачах. Также, тестирование показало, что эффективность кооперативного муравьиного алгоритма практически не уступает эффективности муравьиного алгоритма с лучшими найденными настройками, а в некоторых случаях даже превосходит ее.
С другой стороны, кооперативный муравьиный алгоритм не требует траты громадного количества времени на настройку параметров, что является его неоспоримым преимуществом и позволяет использовать его как один из эффективных методов решения задачи коммивояжера. Таким образом, полученные результаты позволяют сделать вывод о целесообразности и эффективности использования предложенного подхода.
Библиографические ссылки
1. Семенкина О. Е., Семенкина О. Э. Исследование эффективности бионических алгоритмов комбинаторной оптимизации // Программные продукты и системы. 2013. № 3. С. 126-130.
2. Об эволюционных алгоритмах решения сложных задач оптимизации / Е. С. Семенкин [и др.] // Вестник СибГАУ. 2003. Вып. 5. С. 14-23.
3. Дресвянский Д. В. О применении бионических алгоритмов при решении задач комбинаторной оптимизации // Решетневские чтения : материалы XXI Междунар. науч.-практич. конф., посвященной памяти генерального конструктора ракетно-космических систем акад. М. Ф. Решетнева. Красноярск, 2016. Т. 2. С. 187-188.
4. Дресвянский Д. В. On biology-inspired stochastic algorithms for solving combinatorial optimization problems // Материалы XVII Международной научной конференции бакалавров, магистрантов, аспирантов и молодых ученых. Красноярск, 2018. С. 254-256.
References
1. Semenkina O. E., Semenkina O. E. [Research of the effectiveness of bionic algorithms of combinatorial optimization]. Programmnye produkty i sistemy. 2013. № 3. P. 126-130. (In Russ.)
2. Semenkin E. S. [et al.] [About evolutionary algorithms for solving complex optimization problems]. Vest-nik SibSAU. 2003. Vol. 5. P. 14-23. (In Russ.)
3. Dresvyanskiy D. [On application of biology inspired algorithms in combinatorial optimization]. Materi-aly XXI mezhdunarodnoj nauchno-prakticheskoj konfer-encii "Reshetnevskie chtenija", posvjashhennoj pamjati general'nogo konstruktora raketno-kosmicheskih sistem akademika M. F. Reshetneva [Materials of the XXI International Scientific and Practical Conference "Reshetnev Readings", dedicated to the memory of the general designer of rocket-space systems Academician M. F. Re-shetnev]. Krasnoyarsk, 2017. P. 187-188. (In Russ.)
4. Dresvyanskiy D. [On biology-inspired stochastic algorithms for solving combinatorial optimization problems]. Volume of the XVII-th International Scientific Conference of bachelor students, master students, postgraduate students and young scientists. Krasnoyarsk, 2018. P. 254-256.
© Дресвянский Д. В., 2018
i=1