Научная статья на тему 'Исследование решения задачи коммивояжера'

Исследование решения задачи коммивояжера Текст научной статьи по специальности «Математика»

5400
450
Поделиться
Ключевые слова
TRAVELING SALESMAN"S TASK / ЗАДАЧА КОММИВОЯЖЕРА / ТОЧНЫЕ АЛГОРИТМЫ / ЭВРИСТИЧЕСКИЕ АЛГОРИТМЫ / ПОИСКОВЫЕ АЛГОРИТМЫ / ОЦЕНКА ВРЕМЕННОЙ СЛОЖНОСТИ / БЫСТРОДЕЙСТВИЕ КОМБИНАТОРНЫХ АЛГОРИТМОВ / EXACT ALGORITHMS / HEURISTIC ALGORITHMS / SEARCH ALGORITHMS / ASSESSMENT OF TIME COMPLEXITY / THE SPEED OF COMBINATORIAL ALGORITHMS

Аннотация научной статьи по математике, автор научной работы — Борознов Владимир Олегович

Проведен обзор наиболее распространённых алгоритмов, используемых для решения задачи коммивояжёра: точных (алгоритм полного перебора, метод ветвей и границ), эвристических (метод включения дальнего, BV-метод) поисковых (генетический алгоритм, муравьиный алгоритм ACS-Q). Сравнительный анализ алгоритмов относительно качества получаемых решений и их «быстродействия» показал: эвристические алгоритмы бесспорные «лидеры» по быстродействию с хорошим соотношением качество/время точные методы мало пригодны для решения задач больших размерностей (не способны решить задачу за разумное время) алгоритмы поиска являются компромиссом между эвристикой и точными методами, но требуют подбора параметров. Временные оценки, данные алгоритмам, позволяют оценить время решения задачи и выбрать наиболее подходящий метод, когда быстродействие является критичным параметром. Библиогр. 4. Ил. 3.

Похожие темы научных работ по математике , автор научной работы — Борознов Владимир Олегович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

The review of the most widespread algorithms used for the task solution of the traveling salesman such as: exact (exhaustive algorithm, method of paths and limits), heuristic (method of distant inclusion, BV-method) and search (Genetic algorithms, Ant Colony System ACS-Q) is given. The comparative analysis of the algorithms, concerning the quality of the received solutions and their "speed" has shown: heuristic algorithms are undeniable "leaders" in speed with good ratio quality/time the exact methods are poorly suitable for the solution of tasks of the large dimensions (are not capable to solve a task for reasonable time) the algorithms of search are the compromise between heuristics and exact methods, but they require selection of parameters. The temporary estimations given to algorithms, allow to estimate time of the task solution and to choose the most suitable method, when the speed is a critical parameter.

Текст научной работы на тему «Исследование решения задачи коммивояжера»

УДК 681.31.00

В. О. Борознов

ИССЛЕДОВАНИЕ РЕШЕНИЯ ЗАДАЧИ КОММИВОЯЖЕРА

Введение

Задача коммивояжера является важной и вместе с тем трудноразрешимой [1]. Данная задача возникает в обширном классе таких приложений, как, например, распознавание траекторий, образов, построение оптимальных схем движения и т. д.

Постановка задачи

Задача коммивояжера представляет собой задачу отыскания кратчайшего гамильтонова пути в полном конечном графе с N вершинами. Все известные методы нахождения точного решения включают в себя поиск пространства решений, которое увеличивается экспоненциально в зависимости от N. Ниже представлены результаты исследования решений задачи коммивояжера с помощью эвристических, поисковых и переборных алгоритмов.

Описание алгоритмов

Точные алгоритмы. Алгоритм полного перебора (АПП) осуществляет поиск в пространстве N1 решений посредством перебора всех вариантов. Результатом работы алгоритма является точное решение. Недостатком АПП является его временная сложность - пространство поиска растёт экспоненциально, поэтому когда N не является значительно малым, используют эвристические и поисковые алгоритмы. Временная сложность АПП показана на рис. 1 с логарифмической шкалой.

Экспериментально сложность данного алгоритма была оценена как t = 0,0056 • е(13789 ' 1Г). К преимуществам данного алгоритма можно отнести возможность распараллеливания и точное решение задачи.

Метод ветвей и границ (МВиГр) является развитием АПП. Его суть заключается в добавлении проверки критерия ограничивающей функции, исходящего из знания задачи, по которому на определенном уровне можно приостановить построение данной ветви дерева перестановок. Он сохраняет все положительные свойства АПП, но тем не менее мало пригоден для задач, где N не является значительно малым. Экспериментально сложность данного алгоритма была оценена как t = 0,0745 • е(08485 • 1Г). В случае использования в качестве минимального начального решения используется решение, полученное «жадным» методом. Сложность алгоритма составит t = 0,3164 • е('°’1Л69 • ^. К преимуществам данного алгоритма можно отнести возможность распараллеливания и точное решение задачи. Временная сложность МВиГр и его развитие показаны на рис. 1 с логарифмической шкалой.

N

Рис. 1. Временная сложность точных алгоритмов:

- АПП;------ МВиГр + «жадный»; -------- - МВиГр

Эвристические алгоритмы. Идея метода включения дальнего (МВД) заключается в следующем: города, максимально удаленные друг от друга, никогда не будут смежными в цепи. Эти два города и будут базовыми для дальнейшего решения. Затем опять находится вершина, максимально удаленная от вершин, уже заключенных в цепь. Находится минимальная сумма длин ребер между найденной вершиной и парой смежных вершин в цепи, что задает место в цепи найденной вершине. Данный алгоритм имеет линейную сложность, даёт приблизительное решение задачи и не может быть распараллелен. Его временная сложность была оценена как t = 28,0600 + (-1,6069 ■ N) + (0,0227 ■ N2).

BV-метод основан на анализе имеющегося эталонного маршрута и его оптимизации. Решение условно состоит из двух этапов: 1) получение начального эталонного решения; 2) оптимизация начального решения. Начальное решение представляет собой лучшее решение из всех решений, полученных на основе «жадного» метода. Второй этап состоит в модернизации полученного начального эталонного маршрута с помощью BV-модификаторов, которые позволяют выявить неоптимальные участки и преобразовать их. Данный алгоритм имеет квадратичную сложность, даёт приблизительное решение и может быть распараллелен на 2-м этапе [2]. Его временная сложность была оценена как t = -169,40 + (15,5786 ■ N) + (-0,4104 ■ N2) + (0,0040 ■ N3).

Поисковые алгоритмы. Генетический алгоритм (ГА) и алгоритм «Система колонии муравьёв» (Ant Colony System - ACS) являются «лидерами» среди поисковых алгоритмов.

Самым оптимальным (результат/время) среди поисковых алгоритмов является ГА. Правда, он тоже имеет свои недостатки, связанные с преждевременной сходимостью (не всегда позволяет найти выход из локального минимума). Генетический алгоритм даёт приближенное решение задачи, может быть распараллелен [3]. Экспериментально его временная сложность была оценена как t = 683 + (-42,467 ■ N) + (1,0696 ■ N2).

Ant Colony System (ACS) является развитием алгоритма «Система муравьёв» (Ant System (AS)). Его главные отличия:

— в функции выбора нового города явно задан баланс между использованием накопленных знаний и исследованием новых возможных решений;

— при глобальном обновлении феромона (по завершении каждой итерации) его добавление происходит только к дугам, принадлежащим глобальному кратчайшему пути;

— пока муравьи ищут решение, происходит локальное обновление феромона (аналогия с настоящими муравьями, которые откладывают феромон в процессе своего движения).

Алгоритм ACS-Q (Дту - величина добавления феромона вычисляется по формуле Dtij =g* maxtjz , где 0<g< 1 (такой ACS принято называть ACS-Q)) даёт лучший результат zeallowedk (j)

по сравнению со стандартным ACS или их предшественником AS. Его временная сложность была оценена как t = 4437,6 + (-293 ■ N) + (4,6779 ■ N2).

Результаты исследования

Для каждой задачи размерности N проводилось по 33 испытания, что соответствует доверительной вероятности 0,75 и ошибке 0,1. Случайным образом строилась матрица расстояния заданной размерности N, после чего задача решалась четырьмя методами. Генетический алгоритм был взят со следующими параметрами: вероятность кроссинговера 0,85, вероятность мутации - 0,1; критерий окончания эволюции следующий: за последние 20 поколений целевая функция не улучшилась, размер популяции = N. ACS-Q был взят с параметрами a = 1, b = 3, глобальное испарение GE = 0,5, локальное испарение LE = 1, параметр баланса между использованием накопленных знаний и исследованием новых решений q0 = 0,3, начальное значение феромона 0,0001, количество муравьёв = N. Среднее отклонение считалось относительно BV-метода (табл. 1, 2).

Таблица 2

Относительная погрешность методов, %

N Эвристические методы Алгоритмы поиска

МВД БУ ГА лс8-д

20 7,99 0,00 2,85 0,78

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

40 11,56 0,00 3,81 2,04

60 13,18 0,00 3,54 1,89

80 13,89 0,00 5,27 1,81

100 14,04 0,00 5,05 2,03

Таблица 3

Временные затраты методов, мс

N Эвристические методы Алгоритмы поиска

МВД БУ ГА лс8-д

20 7 25 245 104

40 10 84 740 924

60 20 401 1954 3603

80 57 918 4130 10342

100 110 2856 7139 22230

Для того чтобы оценить эффективность сравниваемых алгоритмов, построим зависимости времени (рис. 2) и относительной погрешности (рис. 3) от размерности задачи.

N

Рис. 2. Временная зависимость

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

Результативность

—ACS-Q "МВД —ГА BV

N

Рис. 3. Относительная погрешность

Относительная результативность методов отчётливо показана на рис. 3. Из данных на рис. 3 видно, что АС8^ и ГА имеют примерно одинаковую погрешность, однако ГА является более «быстрым». БУ-метод превосходил все рассматриваемые алгоритмы, уступив лишь МВД в «быстродействии».

Проведём абсолютное сравнение рассматриваемых эвристических и поисковых алгоритмов. Для этого воспользуемся задачами Бйоп^ 50 и Бйоп^ 75, лучшее решение которых заведомо известно. Результат сравнения приведён в табл. 4.

Таблица 4

Результат сравнения для Eilon's задач

Задача Точное решение Эвристические методы Алгоритмы поиска

BV МВД ACS-Q ГА

Результат Погрешность, % т тат 1 Р Погрешность, % т тат 1 Р Погрешность, % т тат 1 Р Погрешность, %

Eilon's 50 425 430 1,163 488 12,910 433 1,848 428 0,701

Eilon's 75 535 544 1,654 671 20,268 564 5,142 542 1,292

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Генетический алгоритм оказался более точным. Следует отметить тот факт, что в случае использования неклассического ГА (например, Greedy Crossover) погрешность может быть ещё меньше [4]. BV-метод и метод ACS-Q оказались менее эффективными ввиду того, что матрица расстояний содержит значения близкие или равные друг другу.

Заключение

Рассмотренные методы решения задачи коммивояжера могут иметь широкий спектр применения - в зависимости от потребности можно использовать тот или иной метод. Эвристические алгоритмы - бесспорные лидеры по быстродействию, они показывают хорошее соотношение качество/время; точные методы мало пригодны для решения задач больших размерностей (не способны решить задачу за разумное время); алгоритмы поиска являются компромиссом между эвристикой и точными методами, но требуют подбора параметров.

Временные оценки, данные алгоритмам, позволяют оценить время решения задачи

и выбрать наиболее подходящий метод, когда быстродействие является критичным параметром.

СПИСОК ЛИТЕРАТУРЫ

1. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. - М.: Мир, 1982. - 419 с.

2. Борознов В. О. Исследование эвристического метода решения задачи коммивояжера // Электронный журнал «Исследовано в России». - 2008. - С. 322-328 / http://zhurnal.ape.relarn.ru/articles/2008/028.pdf.

3. Борознов В. О., Ведерникова О. Г. Исследования генетических методов решения задачи коммивояжёра // Вестн. Ростов. гос. ун-та путей собщения. - 2004. - № 1. - С. 42-45.

4. Kureichick V. M., Miagkikh V. V. Genetic Algorithm for Solution of the Traveling Salesman Problem with New Features against Premature Convergence.

Статья поступила в редакцию 7.10.2009

RESEARCH OF THE TASK SOLUTION OF THE TRAVELING SALESMAN

V. O. Boroznov

The review of the most widespread algorithms used for the task solution of the traveling salesman such as: exact (exhaustive algorithm, method of paths and limits), heuristic (method of distant inclusion, BV-method) and search (Genetic algorithms, Ant Colony System - ACS-Q) is given. The comparative analysis of the algorithms, concerning the quality of the received solutions and their "speed" has shown: heuristic algorithms are undeniable "leaders" in speed with good ratio quality/time; the exact methods are poorly suitable for the solution of tasks of the large dimensions (are not capable to solve a task for reasonable time); the algorithms of search are the compromise between heuristics and exact methods, but they require selection of parameters. The temporary estimations given to algorithms, allow to estimate time of the task solution and to choose the most suitable method, when the speed is a critical parameter.

Key words: traveling salesman’s task, exact algorithms, heuristic algorithms, search algorithms, assessment of time complexity, the speed of combinatorial algorithms.