Научная статья на тему 'Решение задачи коммивояжера с использованием двухэтапного генетического алгоритма'

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

CC BY
676
46
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
TRAVELING SALESMAN PROBLEM / GENETIC ALGORITHM / GOLDBERG MODEL / CROSSOVER / MUTATION / INDIVIDUAL / ROUTE / HAMILTONIAN CYCLE / DISTANCE MATRIX / ЗАДАЧА КОММИВОЯЖЕРА / ГЕНЕТИЧЕСКИЙ АЛГОРИТМ / МОДЕЛЬ ГОЛДБЕРГА / КРОССОВЕР / МУТАЦИЯ / ОСОБЬ / МАРШРУТ / ГАМИЛЬТОНОВ ЦИКЛ / МАТРИЦА РАССТОЯНИЙ

Аннотация научной статьи по математике, автор научной работы — Пешкевич А.А., Кобак В.Г., Жуковский А.Г.

В статье рассмотрено применение модифицированного двухэтапного генетического алгоритма к решению задачи коммивояжера. Задача коммивояжера является NP-сложной. При количестве городов 66 и более ее невозможно решить методом полного перебора. Для проверки предложенного подхода к решению рассматривается граф с 51 вершиной. На первом этапе работает модифицированная модель Голдберга с небольшими значениями параметров для получения первого поколения второго этапа с лучшими показателями, чем при случайном формировании особей. Второй этап работает с увеличенными значениями параметров генетического алгоритма. Эти значения варьируются от эксперимента к эксперименту, результаты которых представлены на диаграммах. Также результаты работы двухэтапного алгоритма сравниваются с результатами одноэтапного алгоритма. Используется модифицированная модель Голдберга генетического алгоритма. В генетическом алгоритме применяется путевое представление маршрута коммивояжера с двухточечным упорядоченным кроссовером и «жадной» мутацией. Результаты экспериментов показали эффективность предлагаемого подхода. Модифицированный двухэтапный алгоритм позволяет получить решение близкое к оптимальному.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Пешкевич А.А., Кобак В.Г., Жуковский А.Г.

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

Solution of the traveling salesman problem using a two-stage genetic algorithm

The article considers the application of a modified two-stage genetic algorithm to solve the traveling salesman problem. The traveling salesman problem is a classical combinatorial optimization problem known since 1930. The traveling salesman problem is NP-complex. With the number of cities 66 or more, it is impossible to solve it by exhaustive search. To test the proposed approach to the solution, we consider a graph with 51 vertices from the package TSP_LIB. At the first stage, a modified Goldberg model with small parameter values works to obtain the first generation of the second stage with better performance than the random formation of individuals. The second stage works with increased values of genetic algorithm parameters. These values vary from experiment to experiment, the results of which are presented in diagrams. Also, the results of the two-stage algorithm are compared with the results of the one-stage algorithm. A modified Goldberg model of the genetic algorithm is used. The genetic algorithm uses a waypoint representation of a traveling salesman's route with a two-point ordered crossover and a "greedy" mutation. The experimental results showed the effectiveness of the proposed approach. The modified two-stage algorithm allows to obtain a solution close to the optimal one.

Текст научной работы на тему «Решение задачи коммивояжера с использованием двухэтапного генетического алгоритма»

Решение задачи коммивояжера с использованием двухэтапного

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

А.А. Пешкевич, В.Г. Кобак, А.Г. Жуковский Донской государственный технический университет, Ростов-на-Дону

Аннотация: В статье рассмотрено применение модифицированного двухэтапного генетического алгоритма к решению задачи коммивояжера. Задача коммивояжера является КР-сложной. При количестве городов 66 и более ее невозможно решить методом полного перебора. Для проверки предложенного подхода к решению рассматривается граф с 51 вершиной. На первом этапе работает модифицированная модель Голдберга с небольшими значениями параметров для получения первого поколения второго этапа с лучшими показателями, чем при случайном формировании особей. Второй этап работает с увеличенными значениями параметров генетического алгоритма. Эти значения варьируются от эксперимента к эксперименту, результаты которых представлены на диаграммах. Также результаты работы двухэтапного алгоритма сравниваются с результатами одноэтапного алгоритма. Используется модифицированная модель Голдберга генетического алгоритма. В генетическом алгоритме применяется путевое представление маршрута коммивояжера с двухточечным упорядоченным кроссовером и «жадной» мутацией. Результаты экспериментов показали эффективность предлагаемого подхода. Модифицированный двухэтапный алгоритм позволяет получить решение близкое к оптимальному.

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

Задача коммивояжера (ЗК) задает такой вопрос: «Учитывая список городов и расстояния между каждой парой городов, каков кратчайший возможный маршрут, который включает каждый город и возвращается в исходный город?». Это КР-сложная задача в комбинаторной оптимизации, важная в исследовании операций и теоретической информатике. Она используется для тестирования производительности многих оптимизационных методов. Задача коммивояжера в своей обычной формулировке применяется в планировании, логистике[1] и изготовлении микросхем. Также ЗК используется в астрономии, поскольку астрономы, наблюдающие за многими объектами, стремятся минимизировать время, затрачиваемое на перемещение телескопа между объектами.

Введение

В данной статье рассматривается применение модифицированного двухэтапного[2] генетического алгоритма к решению ЗК для графа с 51 вершиной. Точное решение ЗК можно получить методами полного перебора, ветвей и границ и динамического программирования. Однако такие подходы требуют большого количества времени и вычислительной мощности[3]. ЗК не с любым количеством городом может быть решена этими методами. С ростом количества городов (п) увеличивается и количество различных вариантов обхода маршрута, которое можно определить по формуле:

N = (1)

2

где N - количество различных маршрутов; п - количество городов. Формула (1) указана с учетом того, что существует 2* п идентичных маршрута, различающихся направлением обхода. Для количества городов, равного 66 и более, задача коммивояжера становится трансвычислительной [4], находящейся за пределом Бремерманна[4][5].

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

1. Подходы решения

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

Задача первого этапа заключается в формировании начального поколения для второго этапа. Здесь для определения каждой особи

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

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

В работе используется модифицированная модель Голдберга. Хромосомы особей используют путевое представление[7], упорядоченный кроссовер [8] (рис.1) и «жадную» мутацию (рис. 2).

Родители Потомок

Рис. 1. - Схема упорядоченного кроссовера

Рис. 2. - Схема «жадной» мутации

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

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

Эксперимент проходил с применением тестового графа из пакета Т8Р_ЫБ[10], разработанного Гейдельбергским университетом, Гейдельберг, Германия. Использовался один граф еП51, для которого длина оптимального маршрута равна 426. Для него заданы координаты городов в декартовой системе. Расстояние между городами было определено с помощью формулы расстояния между двумя точками на плоскости:

где - расстояние между городами; (^.у^ - координаты города на плоскости.

Используя формулу (2) была определена матрица расстояний, необходимая для вычисления расстояния между городами.

2. Вычислительный эксперимент

(2)

Параметры генетического алгоритма следующие: вероятность кроссовера - 99%, вероятность мутации - 99%, одна элитная особь. Количество особей и количество запусков алгоритма до останова менялось для разных запусков и принимало следующие значения: 500, 1000, 1500, 2000, 2500. Для первого этапа количество особей и запусков алгоритма до останова составляло 50.

Оценить эффективность двухэтапного генетического алгоритма можно с помощью сравнения с результатами одноэтапного генетического алгоритма. Было сделано 50 запусков алгоритма. На рисунке 3 представлены результаты одноэтапного генетического алгоритма.

Рис. 3. - Результаты одноэтапного генетического алгоритма С увеличением количества особей и количества запусков до останова растет точность результатов. Запуски с максимальным количеством особей позволили получить точное решение. Однако время работы алгоритма тоже увеличилось. Время работы представлено на рисунке 4. Время указано в секундах.

Рис. 4. - Время работы одноэтапного генетического алгоритма Теперь приведем результаты двухэтапного генетического алгоритма. Здесь также было сделано 50 запусков с тем же количеством особей соответственно. Результаты продемонстрированы на рисунке 5.

Рис. 5. - Результаты двухэтапного генетического алгоритма Можно наблюдать аналогичную тенденцию к увеличению точности результатов с ростом количества особей. Но средние и минимальные

результаты лучше, чем при одноэтапном алгоритме. Здесь точное решение было получено уже при 1500 особях (а также при 2000 и 2500). Но время запусков уже порядком больше. Время работы двухэтапного алгоритма приведено на рисунке 6.

1600 1400 1200 1000 800 600 400

500, 500 1000, 1000 1500, 1500 I 2000, 2000 2500, 2500

Среднее значение

Минимальное значение

Рис. 6. - Время работы двухэтапного генетического алгоритма Значительное замедление работы алгоритма происходит из-за наличия первого этапа. Так как на этом этапе идёт подготовка первого поколения второго этапа, требуется выполнить работу генетического алгоритма для большого количества особей.

Вывод

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

останова ведет к росту точности решения. Экспериментальные запуски позволяли получить точное решение.

Литература

1. Быков Д.В., Д.В. Лихачёв Имитационное моделирование как средство модернизации участка транспортной сети // Инженерный вестник Дона, 2014, №2 URL: ivdon.ru/ru/magazine/archive/n2y2014/2388.

2. Печень О. А. Интеллектуальные информационные системы. Новосибирск: Новосибирский Государственный Университет Экономики и Управления - «НИНХ», 2005. С. 110-111.

3. Нетёсов А.С. Эволюционно-генетический подход к решению задач оптимизации. Сравнительный анализ генетических алгоритмов с традиционными методами оптимизации // Инженерный вестник Дона, 2011, №3 URL: ivdon.ru/ru/magazine/archive/n3y2011/459.

4. Optimization through evolution and recombination // Holtz.org URL: holtz.org/Library/Natural%20Science/Physics/Optimization%20Through%20Evol ution%20and%20Recombination%20-%20Bremermann%201962 .htm (date of access: 14.08.2018).

5. Algorithms, data and hypotheses. Learning in open worlds // muehlenbein.org: Heinz Muehlenbein URL: muehlenbein.org/algo95.pdf (date of access: 14.08.18).

6. B. Lin, X. Sun, S. Salous Solving Travelling Salesman Problem with an Hybrid Genetic Algorithm // «Journal of Computer and Communications», 2016, №15. URL: scirp.org/journal/PaperInformation.aspx?PaperID=72322.

7. Кобак В.Г., Жуковский А.Г., Пешкевич А. А. Сравнение путевого и порядкового подходов при решении задачи коммивояжера модифицированной моделью Голдберга // Известия высших учебных заведений. Северо-Кавказский регион. Технические науки. 2017. №1. С. 3-7.

8. E. Anand, R. Panneerselvam A Study of Crossover Operators for Genetic Algorithm and Proporsal of a New Crossover Operator to Solve Shop Scheduling Problem // «American Journal of Industrial and Business Management», 2016, №6. URL: scirp.org/j ournal/PaperInformation.aspx?PaperID=67660.

9. Кобак В.Г., Пешкевич А.А. Решение задачи коммивояжера с помощью модифицированной модели Голберга // Системный анализ, управление и обработка информации: тр. VII междунар. семинара (п. Дивноморское, 6 - 12 октября 2016 г.); Донской гос. техн. ун-т. - Ростов-на-Дону: ДГТУ, 2016. С. 54-56.

10. TSPLIB // The Zuse Institute Berlin (ZIB) URL: elib.zib.de/pub/mp-testdata/tsp/tsplib/tsplib.html (date of access: 15.08.2018).

References

1. Bykov D.V., Likhachyov D.V. Inzenernyj vestnik Dona (Rus), 2014, №2 URL: ivdon.ru/ru/magazine/archive/n2y2014/2388.

11. 2. Pechen' О.А. Intellektual'nye informatsionnye sistemy. Novosibirsk: Novosibirskij Gosudarstvennyj Universitet Ekonomiki i Upravleniya «NINKH» [Intelligent information system. Novosibirsk: Novosibirsk State University of Economics and Management «NSUEM»], 2005. pp. 110-111.

3. Netyosov А^ Inzenernyj vestnik Dona (Rus), 2011, №3 URL: ivdon.ru/ru/magazine/archive/n3y2011/459.

4. Optimization through evolution and recombination Holtz.org URL: holtz.org/Library/Natural%20Science/Physics/0ptimization%20Through%20Evol ution%20and%20Recombination%20-%20Bremermann%201962 .htm (date of access: 14.08.2018).

5. Algorithms, data and hypotheses. Learning in open worlds muehlenbein.org: Heinz Muehlenbein URL: muehlenbein.org/algo95.pdf (date of access: 14.08.18).

6. B. Lin, X. Sun, S. «Journal of Computer and Communications», 2016, №15. URL: scirp.org/journal/PaperInformation.aspx?PaperID=72322

7. Kobak V.G., ZHukovskij А.G., Peshkevich А.А. Izvestiya vysshikh uchebnykh zavedenij. Severo-Kavkazskij region. Tekhnicheskie nauki. 2017. №1. P. 3-7.

8. E. Anand, R. Panneerselvam «American Journal of Industrial and Business Management», 2016, №6. URL: scirp.org/journal/PaperInformation.aspx?PaperID=67660

9. Kobak V.G., Peshkevich А.А. Sistemnyj analiz, upravlenie i obrabotka informatsii: tr. VII mezhdunar. seminara (p. Divnomorskoe, 6 - 12 oktyabrya 2016 g.); Donskoj gos. tekhn. un-t. Rostov-na-Donu: DGTU, 2016 pp. 54-56.

10. TSPLIB. The Zuse Institute Berlin (ZIB) URL: elib.zib.de/pub/mp-testdata/tsp/tsplib/tsplib.html (date of access: 15.08.2018).

i Надоели баннеры? Вы всегда можете отключить рекламу.