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

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

CC BY
4002
112
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КРОССОВЕР / ГЕНЕТИЧЕСКИЙ АЛГОРИТМ / МОДИФИЦИРОВАННАЯ МОДЕЛЬ ГОЛДБЕРГА / МУТАЦИЯ / ЗАДАЧА КОММИВОЯЖЕРА / ОСОБЬ / ПОКОЛЕНИЕ / РАСПАРАЛЛЕЛИВАНИЕ / ДВУХЭТАПНЫЙ ГЕНЕТИЧЕСКИЙ АЛГОРИТМ / CROSSOVER / GENETIC ALGORITHM / MODIFIED GOLDBERG MODEL / MUTATION / TRAVELLING SALESMAN PROBLEM / INDIVIDUAL / GENERATION / PARALLELIZATION / TWO-STAGE GENETIC ALGORITHM

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

Рассматривается проблема решения задачи коммивояжера одна из многочисленных задач из области комбинаторной оптимизации. Комбинаторная оптимизация это широкая и бурно развивающаяся область математического программирования и дискретной математики, исследующая структурные и оптимизационные задачи на объектах, имеющих выраженный комбинаторный смысл. Задача коммивояжера входит в число NP-полных и является трансвычислительной. Поэтому для ее решения используются алгоритмы (генетические, муравьиные и т.д.), достигающие приближенных решений за полиномиальное время. Предлагается использовать модифицированный двухэтапный алгоритм на основе модифицированной модели Голдберга. Модель Голдберга рассматривается с наиболее эффективными кроссовером и мутацией, которые были исследованы в предыдущих работах. При увеличении количества особей и количества повторов увеличивается точность решения, однако увеличивается время получения решения. По причине роста времени для получения оптимального и субоптимального решения был поставлен вычислительный эксперимент, состоящий в распараллеленных запусках алгоритма. По результатам вычислительного эксперимента сравнивается эффективность параллельного и последовательного подхода. Применение распараллеливания приводит к существенному уменьшению времени работы алгоритма при сохранении точности решения на уровне последовательного подхода.

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

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

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

APPROACH TO OPERATING TIME REDUCTION OF A TWO-STAGE GENETIC ALGORITHM FOR TRAVELLING SALESMAN PROBLEM SOLUTION

The article deals with the problem of travelling salesman problem solution one of the many tasks in the field of combinatorial optimization. Combinatorial optimization is a broad and rapidly developing field of mathematical programming and discrete mathematics that studies structural and optimization problems on objects that have a pronounced combinatorial meaning. The traveling salesman problem is NP-complete and is transcomputational. Therefore, to solve it, algorithms (genetic, ant colony optimization, etc.) are used, which reach approximate solutions in polynomial time. It is proposed to use a modified two-stage algorithm based on the modified Goldberg model. Goldberg model is considered with the most efficient crossover and mutation that have been investigated in previous papers. As the number of individuals and the number of repetitions increases, the accuracy of the solution increases, but the time to obtain the solution increases. Due to the increase in time to obtain an optimal and suboptimal solution, a computational experiment was performed. The computational experiment consists of parallel runs of the algorithm. The results of the computational experiment are used to compare the efficiency of the parallel and sequential approach. The use of parallelization leads to a significant reduction in the algorithm time while maintaining the accuracy of the solution at the level of a sequential approach.

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

ISSN 1560-3644 ИЗВЕСТИЯ ВУЗОВ. СЕВЕРО-КАВКАЗСКИМ РЕГИОН._ТЕХНИЧЕСКИЕ НАУКИ. 2020. № 1

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE. 2020. No 1

ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И УПРАВЛЕНИЕ INFORMATICS, COMPUTER ENGINEERING AND CONTROL

УДК 519.87:004 DOI: 10.17213/1560-3644-2020-1-5-10

ПОДХОД К УМЕНЬШЕНИЮ ВРЕМЕНИ РАБОТЫ ДВУХЭТАПНОГО ГЕНЕТИЧЕСКОГО АЛГОРИТМА ДЛЯ РЕШЕНИЯ ЗАДАЧИ

КОММИВОЯЖЕРА

© 2019 г. В.Г. Кобак, А.Г. Жуковский, А.А. Пешкевич

Донской государственный технический университет, г. Ростов-на-Дону, Россия

APPROACH TO OPERATING TIME REDUCTION OF A TWO-STAGE GENETIC ALGORITHM FOR TRAVELLING SALESMAN PROBLEM SOLUTION

V.G. Kobak, A.G. Zhukovskiy, A.A. Peshkevich

Don State Technical University, Rostov-on-Don, Russia,

Кобак Валерий Григорьевич - д-р техн. наук, профессор, Kobak Valeriy G. - Doctor of Technical Sciences, Professor,

кафедра «Программное обеспечение вычислительной техники Department «The Software of Computer Facilities and the

и автоматизированных систем», Донской государственный Automated Systems», Don State Technical University, Rostov-

технический университет, г. Ростов-на-Дону, Россия. E-mail: on-Don, Russia. E-mail: valera33305@mail.ru valera33305@mail.ru

Жуковский Александр Георгиевич - д-р полит. наук, про- Zhukovskiy Aleхandеr G. - Doctor of Political Sciences,

фессор, канд. техн. наук, доцент, кафедра «Программное Candidate of Technical Science, Associate Professor, Depart-

обеспечение вычислительной техники и автоматизированных ment «The Software of Computer Facilities and the Automated

систем», Донской государственный технический университет, Systems», Don State Technical University, Rostov-on-Don,

г. Ростов-на-Дону, Россия. E-mail: zhykovskij@mail.ru Russia. E-mail: zhykovskij@mail.ru

Пешкевич Алексей Андреевич - аспирант, Донской государ- Peshkevich Alexey A. - Postgraduate Student, Don State Technical

ственный технический университет, г. Ростов-на-Дону. University, Rostov-on-Don, Russia. E-mail: alexpavkuzin@gmail.com Россия. E-mail: alexschume@mail.ru

Рассматривается проблема решения задачи коммивояжера - одна из многочисленных задач из области комбинаторной оптимизации. Комбинаторная оптимизация - это широкая и бурно развивающаяся область математического программирования и дискретной математики, исследующая структурные и оптимизационные задачи на объектах, имеющих выраженный комбинаторный смысл. Задача коммивояжера входит в число NP-полных и является трансвычислительной. Поэтому для ее решения используются алгоритмы (генетические, муравьиные и т.д.), достигающие приближенных решений за полиномиальное время. Предлагается использовать модифицированный двухэтапный алгоритм на основе модифицированной модели Голдберга. Модель Голдберга рассматривается с наиболее эффективными кроссовером и мутацией, которые были исследованы в предыдущих работах. При увеличении количества особей и количества повторов увеличивается точность решения, однако увеличивается время получения решения. По причине роста времени для получения оптимального и субоптимального решения был поставлен вычислительный эксперимент, состоящий в распараллеленных запусках алгоритма. По результатам вычислительного эксперимента сравнивается эффективность параллельного и последовательного подхода. Применение распараллеливания приводит к существенному уменьшению времени работы алгоритма при сохранении точности решения на уровне последовательного подхода.

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

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE. 2020. No 1

The article deals with the problem of travelling salesman problem solution - one of the many tasks in the field of combinatorial optimization. Combinatorial optimization is a broad and rapidly developing field of mathematical programming and discrete mathematics that studies structural and optimization problems on objects that have a pronounced combinatorial meaning. The traveling salesman problem is NP-complete and is transcom-putational. Therefore, to solve it, algorithms (genetic, ant colony optimization, etc.) are used, which reach approximate solutions in polynomial time. It is proposed to use a modified two-stage algorithm based on the modified Goldberg model. Goldberg model is considered with the most efficient crossover and mutation that have been investigated in previous papers. As the number of individuals and the number of repetitions increases, the accuracy of the solution increases, but the time to obtain the solution increases. Due to the increase in time to obtain an optimal and suboptimal solution, a computational experiment was performed. The computational experiment consists ofparallel runs of the algorithm. The results of the computational experiment are used to compare the efficiency of the parallel and sequential approach. The use of parallelization leads to a significant reduction in the algorithm time while maintaining the accuracy of the solution at the level of a sequential approach.

Keywords: crossover; genetic algorithm; modified Goldberg model; mutation; travelling salesman problem; individual; generation; parallelization; two-stage genetic algorithm.

Введение

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

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

Независимо от относительной важности физического и человеческого капитала развитие

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

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

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

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

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.

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

Рис. 1. Транспортная сеть Европы / Fig. 1. Transport net of Europe

Приложение, установленное Плэйтом, Лоув и Цхандрасекаран, - это капитальный ремонт газотурбинных двигателей в авиации. На каждой ступени турбины расположены лопасти, направляющие сопла и состоящие из закрепленных по окружности направляющих лопаток, обеспечивающих равномерный поток газа. Размещение лопастей с целью минимизации расхода топлива может быть смоделировано как симметричная задача коммивояжера.

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

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

Дан граф G = (X,U), где XI = n - множество вершин (города), I UI = m - множество рёбер (возможные пути между городами). Дана симметрическая матрица чисел R(ij), ije 1,2,...,n, представляющих собой веса рёбер (расстояний между вершинами Xi и xj).

Требуется найти перестановку ф из элементов множества X, такую, что значение целевой функции равно:

Fitness($)R($(1),$(n)) + ^{Я(ф(7'),ф(7 +1))} ^ min.

i

TECHNICAL SCIENCE. 2020. No 1 Подходы решения

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

Используемую модификацию модели Голд-берга можно представить в виде последовательности следующих этапов работы:

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

Этап 2. Выбор пар особей для скрещивания, применение операторов кроссовера и мутации, отбор особей в следующее поколение.

Этап 3. Проверка условия завершения работы алгоритма - если количество поколений без изменения лучшего значения больше определенного значения - входного параметра, то переход к этапу 2.

Этап 4. Лучшая особь принимается в качестве решения.

Схематическое представление алгоритма работы модифицированной модели Голдберга представлено на рис. 2.

В рамках данной работы для генетического алгоритма используются упорядоченный кроссовер (рис. 3) и «жадная» мутация (рис. 4) как наиболее эффективная комбинация для путевого представления [8, 9].

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.

TECHNICAL SCIENCE. 2020. No 1

^ Начало ^

Инициализа ция

1

Оценивание приспособленности хромосом

нет]

Отбор

1

Кроссовер

1

Мутация

1

Новая популяция

завершения выполнено?

Выбор наилучшей хромосомы

с

Конец

j

Рис. 2. Алгоритм работы модифицированной модели Голдберга / Fig. 2. Algorithm of modified Goldberg model

Рис. 3. Схема упорядоченного кроссовера / Fig. 3. Ordered crossover scheme

Рис. 4. Схема «жадной» мутации / Fig. 4. «Greedy» mutation scheme

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

В данной работе найдем подход к программной реализации генетического алгоритма для решения задачи коммивояжера, который позволяет уменьшить время выполнения эксперимента. Для проведения вычислительных экспериментов было разработано программное средство с использованием языка программирования C# [10] в среде разработки Visual Studio 2015.

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

Эксперименты проводились на тестовом графе из пакета TSP LIB [11] Гейдельбергского университета (Гейдельберг, Германия). Тестовый граф составляет 51 вершину и называется eil51. Расстояния между городами представлены в виде матрицы расстояний [12], где at j = j - расстояние между городами i и j. Также указан кратчайший маршрут с началом в первом городе длиной 426, который удалось определить разработчикам пакета.

Для начала был произведен следующий вычислительный эксперимент. Задача коммивояжера решалась двухэтапным генетических алгоритмом с обычной последовательной реализацией. Входные параметры принимали следующие значения: 99 %-ная вероятность кроссовера и мутации, одна элитная особь [13, 14], количество особей и количество поколений без изменения лучшего значения на первом этапе составляли 50, а количество особей в поколении и количество поколений без изменения лучшего значения на втором этапе принимали значения 1000, 2000, 3000, 4000, 5000, 6000. Запуск произведен только один. В табл. 1 представлен результат этого эксперимента.

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

да

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE. 2020. No 1

тельное количество времени. Например, для проведения 50 запусков для значения параметров 6000 потребуется около 50 часов. Поэтому появляется возможность использования распараллеливания этих запусков на многоядерном процессоре.

Таблица 1 / Table 1 Результат первого эксперимента / Results of the first experiment

Таблица 2 / Table 2 Результат второго эксперимента / Results of the second experiment

Особи/условие останова Решение Время

1000 432 0:07:22

2000 432 0:16:28

3000 432 0:23:26

4000 428 0:34:10

5000 429 0:41:44

6000 427 0:53:42

Кол-во особей Потоки Лучшее Среднее Попаданий в лучшее Лучшее время, с Среднее время, с Итоговое время (чч:мм)

6000 4 427 429 21 2951 3274 12:28

6000 6 426 428,68 1 2982 4741 12:00

6000 8 426 428,86 1 3879 5824 11:36

6000 10 426 428,72 2 3671 7298 11:03

6000 12 426 428,76 3 3290 8678 11:28

6000 14 426 428,1 2 2901 9378 11:17

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

6000 16 427 428,7 3 2910 11665 11:36

Разработанное программное средство было модифицировано. Для обеспечения проведения запусков на нескольких ядрах была использована библиотека параллельных задач (TPL) [15]. TPL - это коллекция открытых типов и API-интерфейсов в пространствах имен System. Threading и System.Threading.Tasks. Основная задача TPL - используя упрощенные методы работы с параллелизмом в программе, повышать эффективность труда разработчиков. TPL оптимизирует степень параллелизма для наибольшей производительности всех ядер процессора.

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

Методы библиотеки TPL принимают на вход степень параллелизма в качестве входного параметра. Нужно установить, при каком значении этого параметра происходит наиболее эффективное исполнение алгоритма.

Будем использовать значение количества особей и количества поколений без изменения лучшего значения, равное 6000 как наиболее перспективное и продолжительное по времени. Значения степени параллелизма возьмем из следующего набора: 4, 6, 8, 10, 12, 14, 16. Произведем по 50 запусков для каждого значения степени параллелизма.

Эксперименты проводились на ПК с процессором Intel i7 4790. Процессор имеет 4 физических ядра, базовую тактовую частоту 3600 МГц, количество виртуальных ядер равно 8. Результаты эксперимента в этой конфигурации представлены в табл. 2.

В табл. 2 в столбце «Итоговое время» видно, что каждый эксперимент занял примерно 11 - 12 часов. Это в 4 - 5 раз быстрее, чем при последовательном способе запуска.

Из полученной информации выделим зависимость времени эксперимента от степени параллелизма. Наглядно зависимость демонстрируется на рис. 5. Видно, что наиболее эффективным оказалось значение параллелизма, равное 10. Разница между лучшим и худшим временем составляет 1 час 24 мин. Также неплохое время показали эксперименты со значениями степени параллелизма, равными 8, 12 и 14.

t, ч:мин 12:43 12:28 12:14 12:00 11:45 11:31 11:16 11:02 10:48 10:33 10:19

Рис. 5. Зависимость времени эксперимента от степени параллелизма / Fig. 5. Dependence of the experiment time on the degree of parallelism

Выводы

Таким образом, проанализировав результаты, представленные в табл. 1 и 2, можно сделать ряд выводов:

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

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

ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.

TECHNICAL SCIENCE. 2020. No 1

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

3. Подход к параллельному выполнению запусков приводит к ощутимому снижению времени проведения эксперимента.

4. При использовании библиотеки ТРЬ значение степени параллелизма равное 10, позволяет достичь меньшего времени работы эксперимента.

Литература

1. Задача коммивояжера // Википедия - Свободная энциклопедия. URL Ьйр8://т.№Шре^а.о^/ток1/Задача_коммивояжера (дата обращения 11.10.2018).

2. Гладков, Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы: учеб. пособие. Ростов н/Д.: Ростиздат, 2004. 400 с.

3. Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. Алгоритмы: построение и анализ / под ред. Л.Н. Красножан. М.: Вильямс, 2013. 1328 с.

4. Трансвычислительная задача // Википедия - Свободная энциклопедия. URL https://ru.wikipedia.org/wiki/ Транс-вычислительная_задача (дата обращения 11.10.2018).

5. Полиномиальное время // Дискретная математика: алгоритмы. URL http://rain.ifmo.ru/cat/view.php/theory/algorithm-analysis /np-completeness-2004 (дата обращения 12.10.2018).

6. Пешкевич А.А., Кобак В.Г., Жуковский А.Г. Решение задачи коммивояжера с использованием двухэтапного генетического алгоритма / Инженерный вестн. Дона. 2018. № 3. С. 83 - 92.

7. Каширина И.Л. Введение в эволюционное моделирование. Воронеж: Изд-во ВГУ, 2007 URL https://docs.google.com/ viewerng/viewer?url=http%3A//window.edu.ru/resource/519/ 59519/files/may07048.pdf (дата обращения 11.10.2018).

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

9. Руководство по языку C# // Microsoft https://docs.microsoft. com/ru-ru/dotnet/csharp/ (дата обращения 11.01.2019).

10. TSP_LIB // Ruprecht-Karls-Universität Heidelberg. URL http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/ (дата обращения 11.10.2018).

11. Матрица расстояний // Википедия - Свободная энциклопедия. URL https://ru.wikipedia.org/wiki/ Матри-ца_расстояний (дата обращения 11.10.2018).

12. Кобак В.Г, Рудова И.Ш. Возможности использования элитных особей при решении задачи коммивояжера моделью Голдберга / Вестн. Донского гос. техн. ун-та. 2016. № 2. С. 129 - 135. DOI: 10.12737/19695.

13. Кобак В.Г, Кривошей Н.И. Исследование модифицированной модели Уитли с различным количеством и различными методами формирования элитных особей / Вестн. Донского гос. техн. ун-та. 2018. № 2. С. 223 - 229. DOI 10.23947/1992-5980-2018-18-2-223-229.

14. Библиотека параллельных задач (TPL) // Microsoft URL https://docs.microsoft.com/ru-ru/dotnet/standard/parallel-program ming/task-parallel-library-tpl (дата обращения 10.01.2019).

15. Кобак В.Г, Жуковский А.Г., Кузин А.П. Исследование модификаций турнирного отбора при решения неоднородной минимаксной задачи модифицированной моделью Голдбер-га / Инженерный вестн. Дона. № 2. 2018. С. 67 - 77. URL http://ivdon.ru/ru/magazine/archive/N2y2018/4962 (дата обращения 22.01.2019)

References

1. Zadacha kommivoyazhera [Travelling salesman problem]. Vikipediya - Svobodnaya entsiklopediya. Available at: https://ru.wikipedia.org/wiki/Zadacha_kommivoyazhera (accessed 11.10.2018).

2. Gladkov L.A., Kureichik V.V., Kureichik V.M. Geneticheskie algoritmy. Uchebnoe posobie [Genetic algorithms. Textbook]. Rostov-na-Donu, Rostizdat, 2004, 400 p.

3. Kormen T. et al. Algoritmy:postroenie i analiz [Algorithms: construction and analysis]. Moscow: Vil'yams, 2013, 1328 p.

4. Transvychislitel'naya zadacha[Transcomputational problem]. Vikipediya - Svobodnaya entsiklopediya. Available at: https://ru.wikipedia.org/wiki/Transvychisliternaya_zadacha (accessed 11.10.2018).

5. Polinomial'noe vremya [Polynomial time]. Diskretnaya matematika: algoritmy. Available at: http://rain.ifmo.ru/cat/view.php/ theory/algorithm-analysis/np-completeness-2004 (accessed 12.10.2018).

6. Peshkevich A.A., Kobak V.G., Zhukovskii A.G. Reshenie zadachi kommivoyazhera s ispol'zovaniem dvukhetapnogo genetich-eskogo algoritma [Solution of the traveling salesman problem using a two-stage genetic algorithm]. Inzhenernyi vestnik Dona, 2018, no. 3, pp. 83 - 92. (In Russ.)

7. Kashirina I.L. Vvedenie v evolyutsionnoe modelirovanie [Introduction to evolutionary modeling]. Voronezh: Publ. VGU, 2007. Available

at: https://docs.google.com/viewerng/viewer?url=http%3A//window.edu.ru/resource/519/59519/files/may07048.pdf (accessed 11.10.2018).

8. Kobak V.G, Zhukovskii A.G., Peshkevich A.A. Sravnenie putevogo i poryadkovogo podkhodov pri reshenii zadachi kommivoyazhera modifitsirovannoi model'yu Goldberga [Comparison of travel and ordinal approaches in solving the traveling salesman problem by the modified Goldberg model]. Izv. vuzov. Sev.-Kavk. region. Tekhn. nauki, 2017, no. 1, pp. 3 - 7. (In Russ.)

9. Rukovodstvopoyazyku C# [C# language guide]. Available at: https://docs.microsoft.com/ru-ru/dotnet/csharp/ (accessed 11.01.2019).

10. TSP LIB [TSP_LIB]. Available at:URL http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/ (accessed 11.10.2018).

11. Matritsa rasstoyanii [Distance matrix]. Vikipediya - Svobodnaya entsiklopediya. Available at: URL https://ru.wikipedia.org/wiki/ Matritsa_rasstoyanii (accessed 11.10.2018).

12. Kobak V.G, Rudova I. Sh. Vozmozhnosti ispol'zovaniya elitnykh osobei pri reshenii zadachi kommivoyazhera model'yu Goldberga [Possibilities of using elite individuals in solving the salesman problem by the Goldberg model]. Vestnik Donskogo gosudarstvennogo tekhnicheskogo universiteta, 2016, no. 2, pp. 129-135 (In Russ.)

13. Kobak V.G, Krivoshei N. I. Issledovanie modifitsirovannoi modeli Uitli s razlichnym kolichestvom i razlichnymi metodami formirovaniya elitnykh osobei [Investigation of the modified Wheatley model with different number and different methods of formation of elite individuals]. Vestnik Donskogo gosudarstvennogo tekhnicheskogo universiteta, 2018, no. 2, pp. 223 - 229. (In Russ.)

14. Biblioteka parallel'nykh zadach (TPL) [The task parallel library (TPL)]. Microsoft. Available at: URL: https://docs.microsoft.com/ru-ru/dotnet/standard/parallel-programming/task-parallel-library-tpl (accessed 10.01.2019).

15. Kobak V.G, Zhukovskii A.G., Kuzin A.P. Issledovanie modifikatsii turnirnogo otbora pri resheniya neodnorodnoi minimaksnoi zadachi modifitsirovannoi model'yu Goldberga [Investigation of tournament selection modifications in solving inhomogeneous minimax problem by modified Goldberg model]. Inzhenernyi vestnik Dona, 2018, no. 2, pp. 67 - 77 (In Russ.) Available at: http://ivdon.ru/ru/magazine/archive/N2y2018/4962 (accessed 22.01.2019).

Поступила в редакцию /Received

17 декабря 2019 г. /December 17, 2019

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