300 likes | 960 Views
Национальный аэрокосмический университет им. Н.Е. Жуковского „Харьковский авиационный институт”. Генетические алгоритмы для решения задачи коммивояжера. Кафедра компьютерных систем и сетей. Шелиманова Ж.В. Украина, Харьков, 5 октября, 2013 год. Содержание доклада:.
E N D
Национальный аэрокосмический университет им. Н.Е. Жуковского „Харьковский авиационный институт” Генетические алгоритмы для решения задачи коммивояжера Кафедра компьютерных систем и сетей Шелиманова Ж.В. Украина, Харьков, 5 октября, 2013 год
Содержаниедоклада: • Задача коммивояжера (ЗК) • Постановка задачи, особенности • Методы решения ЗК • Генетические алгоритмы (ГА) • Генетический алгоритм для задачи коммивояжера • Решение задачи при помощи MATLAB • Сравнение показателей программ • Выводы. Пути дальнейшего исследования
Постановка задачи: • Коммивояжер должен объехать N городов по кратчайшему пути, посетив каждый город один раз и вернуться в исходный город. • Если затраты на переезд между каждой парой городов не зависят от направления движения, то задача называется симметричной, в противном случае – несимметричной. • Данная задача коммивояжера, относящаяся к числу задач комбинаторной оптимизации, является одной из наиболее хорошо изученных с точки зрения разработанных методов и алгоритмов её решения. Это обусловлено тем фактом, что к ней сводятся многие прикладные задачи из разных областей.
Задача коммивояжера — полигон для испытания оптимизационных методов • Метод ветвей и границ • Метод локальных улучшений • Приближенные и эвристические методы • Псевдополиномиальные алгоритмы • Метод случайного поиска
Генети́ческийалгори́тм - это эвристический алгоритм поиска, используемый для решения задач оптимизации и моделирования путем последовательного подбора, комбинирования и вариации искомых параметров с использованием механизмов, напоминающих биологическую эволюцию. Является разновидностью эволюционных вычислений (англ. evolutionarycomputation).
Применение генетических алгоритмов: • При создании вычислительных структур, например, автоматов или сетей сортировки • При проектирование нейронных сетей или при управлении роботами • Наиболее популярное приложение генетических алгоритмов - оптимизация многопараметрических функций. • Решение задачи синтеза топологии кольцевой сети (задача коммивояжера)
Основные термины: потенциальное решение потомок – это улучшенная копия потенциального решения родителя набор потенциальных решений качество отбор особей на основе их приспособленностей обычное улучшение. Часто рассматривается как «бесполое» размножение. • особь (individual) • потомок и родитель (child,parent) • популяция (population) • приспособленность (fitness) • селекция (selection) • мутация (mutation)
Полученный результат: Метод случайного подбора: Количествогородов – 45, длинамаршрута – 14934 (пикселей)
Полученныйрезультат: Метод генетического алгоритма: Количествогородов – 45, длинамаршрута – 14692 (пикселей)
Тестирование программы. Сравнение алгоритмов
Решение задачи с помощью MATLAB Механизм работы с генетическими алгоритмами в среде MATLAB реализован двумя способами: 1. Вызов функции генетических алгоритмов2. Использование комплекта GeneticAlgorithmTool
GeneticAlgorithmTool Количествогородов – 45, длинамаршрута – 13734(пикселей)
Пути дальнейшего исследования: • В теоретическом плане представляет интерес продолжение исследований по анализу различных генетических операторов, влиянию значений их параметров на эффективность применения генетических методов. • До сих пор не получены теоретические обоснования сходимости ГА. • В практическом плане представляется важным усовершенствование класса по уменьшению длины маршрута в ЗК. Т.к. результаты проведенных исследований по решению ЗК показывают успешность применения ГА для таких задач.
Выводы по проведенной работе: Генетический алгоритм решения задачи коммивояжера дает отличный результат в поиске топологии кольцевой сети минимальной длины и показывает лучший результат с методом случайного подбора. Однако следует отметить, что данный алгоритм не дает гарантии по нахождению самого оптимального маршрута. Его назначение заключается в том, чтобы за короткий промежуток времени найти приемлемый вариант решения поставленной задачи, оптимальность которого будет прямо пропорционально зависеть от количества времени затраченного на его поиск. То есть данный алгоритм будет оптимизировать ваше решение настолько, насколько у вас есть на это времени.
Источники: • Rechenberg, I. Cybernetic solution path of an experimental problem. August 1965. Farnborough Hants: Royal Aircraft Eatablishment. Englishtranslation of lecture given at the1964. • Schwefel, H.P. Numerical Optimization of Computer Models. John Wiley&Sons. 1981. • Fogel, L.J., Owens, A.J., Walsh, M.J. Artificial Intelligence Through SimulatedEvolution. – John Wiley&Sons. • Фогель Л., Оуенс А., Уолш М. Искусственный интеллект и эволюционное моделирование. – М.: Мир, 1969. – 230с. • Исаев С.А. Разработка и исследование генетических алгоритмов для принятия решений на основе многокритериальных нелинейных моделей / Автореф.дисс. к.т.н. – Н. Новгород: НГУ, 2000. – 18с. • Веб-ресурс : http://algolist.manual.ru/ai/ga/ga1.php • Веб-ресурс : http://www.computerra.ru/offline/1999/289/2523/
Полезное: • http://www.computerra.ru/offline/1999/289/2523/ О генетическом алгоритме применительно к ЗК • http://www.kv.by/index2005321102.htm GeneHunter и генетические алгоритмы • http://masters.donntu.edu.ua/2004/kita/polyakov/links/index.htm Много информации по ЭВ и ГА (!) • http://www.artint.com.ua/index_a.htm • http://algolist.manual.ru/ai/index.php (!)
Спасибо за внимание! Украина, Харьков, 5 октября, 2013 год