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

Preview:

DESCRIPTION

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

Citation preview

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

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

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

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

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

институт”

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

(child, parent)

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

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

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

• мутация (mutation)

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

качество

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

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

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

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

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

Отбор

Скрещивание

Мутация

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

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

Ответ

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

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

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

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

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

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

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

алгоритмов

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

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

Дли

на м

арш

рута

(пик

сель

)

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

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

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

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

Genetic Algorithm Tool

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

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

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

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

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

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

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

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

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/

Источники:

Полезное:• 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 год

Recommended