21
Генетические алгоритмы для решения задачи коммивояжера Шелиманова Ж.В. Кафедра компьютерных систем и сетей Национальный аэрокосмический университет им. Н.Е. Жуковского „Харьковский авиационный институт” Украина, Харьков, 5 октября, 2013 год

Генетические алгоритмы для решения задачи коммивояжера

  • Upload
    sal

  • View
    186

  • Download
    7

Embed Size (px)

DESCRIPTION

Национальный аэрокосмический университет им. Н.Е. Жуковского „Харьковский авиационный институт”. Генетические алгоритмы для решения задачи коммивояжера. Кафедра компьютерных систем и сетей. Шелиманова Ж.В. Украина, Харьков, 5 октября, 2013 год. Содержание доклада:. - PowerPoint PPT Presentation

Citation preview

Page 1: Генетические алгоритмы для решения задачи коммивояжера

Генетические алгоритмы для решения задачи

коммивояжера

Шелиманова Ж.В.

Кафедра компьютерных систем и сетей

Национальный аэрокосмический университет им. Н.Е. Жуковского „Харьковский авиационный

институт”

Украина, Харьков, 5 октября, 2013 год

Page 2: Генетические алгоритмы для решения задачи коммивояжера

Содержание доклада:• Задача коммивояжера (ЗК)

o Постановка задачи, особенностиo Методы решения ЗК

• Генетические алгоритмы (ГА)• Генетический алгоритм для задачи коммивояжера• Решение задачи при помощи MATLAB• Сравнение показателей программ• Выводы. Пути дальнейшего исследования

Page 3: Генетические алгоритмы для решения задачи коммивояжера

Постановка задачи:o Коммивояжер должен объехать N городов по

кратчайшему пути, посетив каждый город один раз и вернуться в исходный город.

o Если затраты на переезд между каждой парой городов не зависят от направления движения, то задача называется симметричной, в противном случае – несимметричной. 

o Данная задача коммивояжера, относящаяся к числу задач комбинаторной оптимизации, является одной из наиболее хорошо изученных с точки зрения разработанных методов и алгоритмов её решения. Это обусловлено тем фактом, что к ней сводятся многие прикладные задачи из разных областей.

Page 4: Генетические алгоритмы для решения задачи коммивояжера

Постановка задачи коммивояжёра:

Page 5: Генетические алгоритмы для решения задачи коммивояжера

Задача коммивояжера — полигон для испытания оптимизационных методов Метод ветвей и границ  Метод локальных улучшений  Приближенные и эвристические методы  Псевдополиномиальные алгоритмы  Метод случайного поиска 

Page 6: Генетические алгоритмы для решения задачи коммивояжера

Генети́ческий алгори́тм - это эвристический алгоритм поиска, используемый для решения задач оптимизации и моделирования путем последовательного подбора, комбинирования и вариации искомых параметров с использованием механизмов, напоминающих биологическую эволюцию.

Является разновидностью эволюционных вычислений (англ. evolutionary computation).

Page 7: Генетические алгоритмы для решения задачи коммивояжера

Применение генетических алгоритмов:• При создании вычислительных структур,

например, автоматов или сетей сортировки• При проектирование нейронных сетей или при

управлении роботами• Наиболее популярное приложение генетических

алгоритмов - оптимизация многопараметрических функций.

• Решение задачи синтеза топологии кольцевой сети (задача коммивояжера) 

Page 8: Генетические алгоритмы для решения задачи коммивояжера

• особь (individual) • потомок и родитель

(child, parent)

• популяция (population)

• приспособленность (fitness)

• селекция (selection)

• мутация (mutation)

потенциальное решениепотомок – это улучшенная копия потенциального решения родителянабор потенциальных решений

качество

отбор особей на основе их приспособленностей

обычное улучшение. Часто рассматривается как «бесполое» размножение.

Основные термины:

Page 9: Генетические алгоритмы для решения задачи коммивояжера

Схема генетического алгоритма:

Создание начальной популяции

Отбор

Скрещивание

Мутация

Переход к новому поколению

Переход к новому поколению

Ответ

Page 10: Генетические алгоритмы для решения задачи коммивояжера

Интерфейс проекта:

Page 11: Генетические алгоритмы для решения задачи коммивояжера

Полученный результат:Метод случайного подбора:

Количество городов – 45, длина маршрута – 14934 (пикселей)

Page 12: Генетические алгоритмы для решения задачи коммивояжера

Полученный результат:Метод генетического алгоритма:

Количество городов – 45, длина маршрута – 14692 (пикселей)

Page 13: Генетические алгоритмы для решения задачи коммивояжера

Принцип работы ГА:

Page 14: Генетические алгоритмы для решения задачи коммивояжера

Тестирование программы. Сравнение

алгоритмов

0

1000

2000

3000

4000

5000

6000

7000

10

3000

7000

1100

0

1500

0

1900

0

2300

0

2700

0

3100

0

3500

0

3900

0

4300

0

4700

0

5100

0

5500

0

5900

0

6300

0

Поколения (шт.)

Дли

на м

арш

рута

(пик

сель

)

Генетический алгоритмМетод случайного подбора

Page 15: Генетические алгоритмы для решения задачи коммивояжера

Решение задачи с помощью MATLAB

Механизм работы с генетическими алгоритмами в среде MATLAB реализован двумя способами: 

1. Вызов функции генетических алгоритмов2. Использование комплекта Genetic Algorithm Tool

Page 16: Генетические алгоритмы для решения задачи коммивояжера

Genetic Algorithm Tool

Количество городов – 45, длина маршрута – 13734(пикселей)

Page 17: Генетические алгоритмы для решения задачи коммивояжера

Пути дальнейшего исследования:• В теоретическом плане представляет интерес продолжение

исследований по анализу различных генетических операторов, влиянию значений их параметров на эффективность применения генетических методов.

• До сих пор не получены теоретические обоснования сходимости ГА.

• В практическом плане представляется важным усовершенствование класса по уменьшению длины маршрута в ЗК. Т.к. результаты проведенных исследований по решению ЗК показывают успешность применения ГА для таких задач.

Page 18: Генетические алгоритмы для решения задачи коммивояжера

Выводы по проведенной работе:

Генетический алгоритм решения задачи коммивояжера дает отличный результат в поиске топологии кольцевой сети минимальной длины и показывает лучший результат с методом случайного подбора.

Однако следует отметить, что данный алгоритм не дает гарантии по нахождению самого оптимального маршрута. Его назначение заключается в том, чтобы за короткий промежуток времени найти приемлемый вариант решения поставленной задачи, оптимальность которого будет прямо пропорционально зависеть от количества времени затраченного на его поиск. То есть данный алгоритм будет оптимизировать ваше решение настолько, насколько у вас есть на это времени.

Page 19: Генетические алгоритмы для решения задачи коммивояжера

1. Rechenberg, I. Cybernetic solution path of an experimental problem. August 1965. Farnborough Hants: Royal Aircraft Eatablishment. English translation of lecture given at the 1964.

2. Schwefel, H.P. Numerical Optimization of Computer Models. John Wiley&Sons. 1981.

3. Fogel, L.J., Owens, A.J., Walsh, M.J. Artificial Intelligence Through Simulated Evolution. – John Wiley&Sons.

4. Фогель Л., Оуенс А., Уолш М. Искусственный интеллект и эволюционное моделирование. – М.: Мир, 1969. – 230с.

5. Исаев С.А. Разработка и исследование генетических алгоритмов для принятия решений на основе многокритериальных нелинейных моделей / Автореф.дисс. к.т.н. – Н. Новгород: НГУ, 2000. – 18с.

6. Веб-ресурс : http://algolist.manual.ru/ai/ga/ga1.php7. Веб-ресурс : http://www.computerra.ru/offline/1999/289/2523/

Источники:

Page 20: Генетические алгоритмы для решения задачи коммивояжера

Полезное:• 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 (!)

Page 21: Генетические алгоритмы для решения задачи коммивояжера

Спасибо за внимание!

Украина, Харьков, 5 октября, 2013 год