Научная статья на тему 'СПЕЦИФИКА ПОСТРОЕНИЯ МНОГОАГЕНТНЫХ МАРШРУТОВ В ИЕРАРХИЧЕСКИХ СЕТЯХ'

СПЕЦИФИКА ПОСТРОЕНИЯ МНОГОАГЕНТНЫХ МАРШРУТОВ В ИЕРАРХИЧЕСКИХ СЕТЯХ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
34
12
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
задача коммивояжера / задача нескольких коммивояжеров / иерархическая кластеризация / алгоритм решения задачи нескольких коммивояжеров / traveling salesman problem / multiple traveling salesman problem / hierarchical clustering / algorithm for solving the multiple traveling salesman problems

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Козлова Маргарита Геннадьевна, Лукьяненко Владимир Андреевич, Макаров Олег Олегович, Руденко Людмила Ивановна

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

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

Specifics of building multi-agent routes in hierarchical networks

The article discusses applied models of multi-agent routing, taking into account the specifics of the organization of the network structure, the goals of the system and the local goals of agents. The class of problems of multiple traveling salesmen (mTSP) of different levels of hierarchycal clustering (HCmTSP) is singled out. The construction of HCmTSP routes is consistent with the natural clustering of a complex infrastructure network. An overview of problems, methods and algorithms based on various heuristics is given. The hierarchical clustering of the network is distinguished. It is shown that, depending on the logistical goals, a different type of clustering consistent with mTSP should be chosen. It is shown that the task of constructing multi-agent mTSP routes in complex networks with a hierarchical vertex structure has numerous applications. For example, it is necessary to deliver goods from a certain center to regional centers, where they will be overloaded and delivered to consumers in the shortest time or at the lowest cost. It combines cluster traversal tasks (cluster traveling salesman task) and local traveling salesman tasks on each cluster. Other models are associated with the use of unmanned aerial vehicles – drones (UAVs) in the tasks of monitoring infrastructure networks. The original network is matched with a simpler flyby network and the original task of many traveling salesmen (mTSP) is simplified. Modern information approaches lead to new formulations of multi-agent routing tasks in social networks with a hierarchical structure of user communities. To study hierarchical mTSP, modern approaches based on exact and approximate algorithms are used, using heuristics, metaheuristics, genetic algorithms and a neural network approach, intellectualized big data processing. The task of developing hierarchical routing algorithms for many agents in infrastructure networks is associated with: description of hierarchical clustering algorithms and their application to routing tasks; coordination of hierarchical clustering with the task of building routes on clusters; construction of hierarchical routing algorithms combining cluster traversal and construction of traveling salesman-type routes on clusters. The hierarchical mTSP structure is distinguished with a set of clusters of the lower level of the hierarchy, several bases (warehouses for transshipment of goods) and a base (vertex) of the highest level. It is shown that when developing HCmTSP algorithms, clustering consistent with the traveling salesman’s task is significantly used. Having analyzed the clustering efficiency based on the decomposition of the original problem, clustering algorithms consistent with TSP are proposed. Depending on one or many separation centers, their hierarchy, the structure of the network as a whole, it is necessary to choose the appropriate clustering. The article provides an overview of sources and a description of methods for solving mTSP based on clustering. The formulation of the problem is concretized and the results of a numerical experiment confirming the theoretical positions are presented. The results of a computational experiment on clustering types and routes are compared. Preference is given to hierarchical clustering consistent with the HCmTSP route hierarchy.

Текст научной работы на тему «СПЕЦИФИКА ПОСТРОЕНИЯ МНОГОАГЕНТНЫХ МАРШРУТОВ В ИЕРАРХИЧЕСКИХ СЕТЯХ»

УДК: 004.89; 519.854.2 MSC2010: 90C27

СПЕЦИФИКА ПОСТРОЕНИЯ МНОГОАГЕНТНЫХ МАРШРУТОВ В

ИЕРАРХИЧЕСКИХ СЕТЯХ

© М. Г. Козлова, В. А. Лукьяненко, О. О. Макаров, Л. И. Руденко

КРЫМСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ ИМ. В. И. ВЕРНАДСКОГО ФИЗИКО-ТЕХНИЧЕСКИЙ ИНСТИТУТ

просп. Академика Вернадского, 4, Симферополь, 295007, Российская Федерация e-mail: kozlovamg@cfuv.ru, art-inf@yandex.ru, fantom2.00@mail.ru, domlir@yandex.ru

Specifics of building multi-agent routes in hierarchical networks.

Kozlova M. G., Lukianenko V. A., Makarov O. O., Rudenko L. I.

Abstract. The article discusses applied models of multi-agent routing, taking into account the specifics of the organization of the network structure, the goals of the system and the local goals of agents. The class of problems of multiple traveling salesmen (mTSP) of different levels of hierarchycal clustering (HCmTSP) is singled out. The construction of HCmTSP routes is consistent with the natural clustering of a complex infrastructure network. An overview of problems, methods and algorithms based on various heuristics is given. The hierarchical clustering of the network is distinguished. It is shown that, depending on the logistical goals, a different type of clustering consistent with mTSP should be chosen.

It is shown that the task of constructing multi-agent mTSP routes in complex networks with a hierarchical vertex structure has numerous applications. For example, it is necessary to deliver goods from a certain center to regional centers, where they will be overloaded and delivered to consumers in the shortest time or at the lowest cost. It combines cluster traversal tasks (cluster traveling salesman task) and local traveling salesman tasks on each cluster. Other models are associated with the use of unmanned aerial vehicles drones (UAVs) in the tasks of monitoring infrastructure networks. The original network is matched with a simpler flyby network and the original task of many traveling salesmen (mTSP) is simplified. Modern information approaches lead to new formulations of multi-agent routing tasks in social networks with a hierarchical structure of user communities.

To study hierarchical mTSP, modern approaches based on exact and approximate algorithms are used, using heuristics, metaheuristics, genetic algorithms and a neural network approach, intellectualized big data processing. The task of developing hierarchical routing algorithms for many agents in infrastructure networks is associated with: description of hierarchical clustering algorithms and their application to routing tasks; coordination of hierarchical clustering with the task of building routes on clusters; construction of hierarchical routing algorithms combining cluster traversal and construction of traveling salesman-type routes on clusters.

The hierarchical mTSP structure is distinguished with a set of clusters of the lower level of the hierarchy, several bases (warehouses for transshipment of goods) and a base (vertex) of the highest level. It is shown that when developing HCmTSP algorithms, clustering consistent with the traveling salesman's task is significantly used. Having analyzed the clustering efficiency based on the decomposition of the original problem, clustering algorithms consistent with TSP are proposed. Depending on one or many separation centers, their hierarchy, the structure of the network as a whole, it is necessary to choose the appropriate clustering.

The article provides an overview of sources and a description of methods for solving mTSP based on clustering. The formulation of the problem is concretized and the results of a numerical experiment confirming the theoretical positions are presented. The results of a computational experiment on clustering types and routes are compared. Preference is given to hierarchical clustering consistent with the HCmTSP route hierarchy.

Keywords: traveling salesman problem, multiple traveling salesman problem, hierarchical clustering, algorithm for solving the multiple traveling salesman problems

Введение

Актуальность темы связана с большим числом прикладных задач построения многоагентных маршрутов в сложно организованных сетях [1-6]. Например, из некоторого центра необходимо доставить товар в региональные центры, где они будут перегружены и доставлены потребителям за наименьшее время или с минимальной стоимостью. Здесь сочетаются задачи обхода кластеров (кластерная задача коммивояжера) и локальные задачи коммивояжеров на каждом кластере. Другие модели связаны с применением в задачах мониторинга инфраструктурных сетей беспилотных летательных аппаратов - дронов (БПЛА). Исходной сети ставится в соответствие более простая сеть облета и упрощается исходная задача многих коммивояжеров (Multiple Travelling Salesman Problem, mTSP). Современные информационные подходы приводят к новым постановкам задач многоагентной маршрутизации в социальных сетях [7].

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

Задача разработки алгоритмов иерархической маршрутизации многих агентов в инфраструктурных сетях связывается с:

1) описанием алгоритмов иерархической кластеризации и их применением к задачам маршрутизации,

2) согласованием иерархической кластеризации с задачей построения маршрутов на кластерах,

3) построением алгоритмов иерархической маршрутизации, сочетающий обход кластеров и построение маршрутов типа коммивояжеров на кластерах.

Дальнейшее изложение, в основном, является продолжением работ [1-6].

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

1. Иерархическая кластеризация в задачах маршрутизации

1.1. Задача коммивояжера. Задачи коммивояжера (Travelling Salesman Problem, TSP) и многоагентная TSP (mTSP) хорошо известны в литературе и являются NP-трудными [9]. Впервые для численного решения TSP был предложен алгоритм Данцига, Фалкерсона и Джонсона, где использовался метод ветвей и границ (МВГ), с помощью которого было обнаружено, что среднее время вычисления слишком велико, чтобы МВГ можно было применять в реальных задачах TSP. Поэтому TSP решалась с помощью различных метаэвристик, таких как колонии муравьев ACO, имитация отжига RS, генетические алгоритмы GA и другие. Новые алгоритмы продолжают появляться, и их интересно использовать в классических задачах и различных обобщениях mTSP.

Задача коммивояжера может быть формально определена следующим образом. Пусть заданы сеть S = (V,U,C), граф G = (V, U), где V — множество узлов, U — множество дуг, а C = [cij] — матрица затрат, где задана стоимость cij прохождения дуги (i,j) от узла i до узла j. Требуется найти гамильтоновый цикл в G минимальной стоимости, который проходит через каждый узел i ровно один раз.

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

Приведем формальную модель TSP. Обозначим: n — количество узлов в графе; ui — положение i-го города на пути решения; D — матрица расстояний; dij — вес ребра от i-го узла до j-го узла; значения расстояний являются неотрицательными значениями; X — матрица смежности цикла Гамильтона; xij = 1 при наличии направленного ребро на пути от i-го узла к j-му узлу; в противном случае xij = 0.

Целевой функцией оптимизации траектории является:

n n

dijXj ^ min,

i=1 j=1

каждый узел имеет только одно входящее ребро:

= 1, =

г=1

каждый узел имеет только одно исходящее ребро:

п

= 1, V« (« =

3=1

существует только один тур, охватывающий все города:

иг — п + пхгз ^ п — 1.

В случае задачи тТ8Р должно быть сгенерировано более одного цикла (каждый агент имеет отдельный цикл), и каждый узел посещается только одним агентом. Для тТ8Р формальная модель должна быть расширена следующими элементами: т — количество коммивояжеров; ограничения на узел (начало и конец):

пп

У^ хго = т, хоз = т. г=1 3=1

Известно, что задача Т8Р может быть решена с помощью целочисленного программирования (методом ветвей и границ, динамического программирования) для малых размерностей сети С. Для симметричной матрицы разработаны алгоритмы ветвления и разрезов. Поиск оптимальных решений задачи Т8Р большой размерности с симметричной матрицей с использованием метода ветвей и границ требует больших вычислительных затрат или вообще невозможен. Задача Т8Р является NP-полной и считается одной из самых серьезных, несмотря на множество различных методов решения.

Алгоритм Т8Р может быть применен для решения многих различных задач таких, как

• планирование оптимального маршрута транспортировки, как для доставки, так и для сбора;

• эвристическое решение задачи оптимизации рюкзака;

• планирование оптимальной последовательности работ и др.

В литературе выделяют следующие варианты задачи Т8Р:

• классическая задача TSP: одно депо и один агент-коммивояжер;

• многоагентная задача коммивояжера (mTSP): одно депо и много агентов;

• Multi Depot multiple Traveling Salesman Problem (MDmTSP): несколько складов (депо) и множество агентов; каждый агент приписан к одному складу (депо).

Задача коммивояжера — это NP-трудная задача, то есть она, по крайней мере, так же сложна, как и самые трудные задачи NP. Сложность алгоритма перебора является O(N!), где N = \V|. Поэтому для нахождения аппроксимации глобального оптимума используются некоторые эвристики. Из семейства популярных эволюционных алгоритмов выделяют следующие методы, которые наиболее широко используются для нахождения приближения к оптимальному маршруту:

• генетический алгоритм: набор векторов параметров оптимизируется с использованием операторы селекции, скрещивания и мутации;

• оптимизация роя частиц: генерируется много агентов нижнего уровня, которые перемещаются случайно, но найденный ими оптимум подкрепляется другими членами колонии;

• оптимизация муравьиной колонии: генерируется много агентов, которые сотрудничают друг с другом, общаются друг с другом и со своим окружением;

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

Рассматривая стандартные эвристические алгоритмы, можно выделить следующие алгоритмы:

• алгоритм ближайшего соседа: выбирается ближайший не посещаемый узел в качестве следующего узла маршрута (может быть далек от оптимального),

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

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

Все методы, используемые для решения TSP, имеют ограничения на время вычисления. В работе рассматриваются решения задач маршрутизации со многими различного уровня узлами (вершинами сети) и многими агентами. Многоагентные TSP

остаются предметом текущих исследований, на TSP можно пробовать проверять новые различные эвристические стратегии. Существуют различные приложения в задачах с большим количеством вершин (узлов). Например, задача доставки заказов, формулировка которой мотивирована проблемой комплектования заказов на складах, где продукты одного и того же типа хранятся на разных складах или в разных местах на одном и том же складе. Кроме того, различные постановки задачи могут быть преобразованы в TSP с большим количеством вершин (узлов), например, проблема маршрутизации транспортных средств или проблема составления расписания работы магазинов. В последнем случае проблема с n рабочими местами и m машинами — это TSP с n ■ m вершинами.

С другой стороны, для решения задач с большим числом вершин можно использовать различные методы кластеризации, основанные на прототипах, центрах, компонентах графа и плотностях. В некоторых источниках находится решение TSP с помощью кластеров, например, в [10] предложен подход названный Clustered Traveling Salesman Problem (CTSP, кластерная задача коммивояжера). Широко представлены исследования решения задачи TSP с использованием колонией муравьев, имитацией отжига и генетическими алгоритмами. Некоторые авторы считают, что наилучшие результаты были получены с помощью генетических алгоритмов, что верно только для выделенного класса задач.

Из-за высокой сложности TSP не существует алгоритма глобальной точной оптимизации с полиномиальной сложностью. Например, алгоритм Хельда-Карпа решает задачу с O(4n2) сложностью. Для того чтобы обеспечить приемлемое решение реальных задач TSP, обычно решаются с помощью некоторой близкой полиномиально разрешимой эвристической задачи оптимизации.

Представляет интерес решение CTSP, применяющее комбинацию эвристики в алгоритме NEH (предложен в [11]) и модификацию метаэвристического локального поиска с многократным перезапуском MRSILS [12].

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

Прежде чем решать задачу mTSP на сети S с различной иерархической структурой вершин, рассмотрим типичные ситуации. Часть вершин D С V С S являются складами (депо), а остальные — простыми вершинами.

Пусть заданы вершины верхнего уровня Dx С D и нижнего уровня D2 С D, DxUD2 = D, DxnD2 = 0. Например, из вершин Dx доставляется ресурс в вершины D2,

откуда он перераспределяется по остальным узлам VI С V, О!и и VI = V каким-то количеством агентов-коммивояжеров. При этом все узлы и их специфика могут быть заданы и требуется только распределить вершины V! между агентами для построения каждым из них замкнутых маршрутов ТБР так, чтобы общий вес маршрутов был минимальным. Возможна задача синтеза иерархической структуры сети с поиском иерархии вершин, обеспечивающей наилучшее решение шТБР. Представляет интерес вариант, который предполагает построение одного замкнутого маршрута по всем вершинам сети S (О = 0) с помощью т агентов-коммивояжеров.

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

Рис. 1. Иерархия маршрутов: обход кластеров и баз

Для снижения сложности решения шТБР рассмотренным вариантам маршрутизации соответствуют схемы включения этапа кластеризации с учетом специфики вершин (узлов). В целом соответствующие алгоритмы являются эвристическими и требуют анализа их эффективности для конкретного варианта иерархической кластеризации шТБР (ЫСшТБР).

A. Кластерное построение глобального маршрута TSP:

1. Кластеризация узлов на непересекающиеся группы.

2. Вычисление центров кластеров, уточнение кластера.

3. Переход на вершину локального кластера для определения маршрута TSP на локальном кластере.

4. Определение вершин ввода и вывода из кластеров.

5. Объединение маршрутов внутреннего уровня в глобальный маршрут на основе обхода кластеров.

B. Кластеризация с определением ближайшего соседа для каждого TSP:

1. Кластеризация узлов на непересекающиеся группы (нет ограничений на количество групп).

2. Вычисление центров кластеров и уточнение кластеров.

3. Определение ближайшего соседа TSP на множестве кластеров для построения межкластерных маршрутов.

4. Определение вершин ввода и вывода из кластеров.

5. Определение внутреннего уровня маршрутов TSP.

6. Объединение маршрутов внутреннего уровня в глобальный маршрут.

C. Кластерное построение иерархии TSP для mTSP:

1. Задание выделенной вершины (депо, склад).

2. Кластеризация узлов в непересекающиеся группы (m — количество агентов).

3. Расширение каждого кластера с помощью выделенного элемента (депо).

4. Переход на выделенные вершины для каждого кластера для определения локальных маршрутов для каждого агента.

5. Построение иерархических маршрутов.

D. Кластерная иерархическая маршрутизация для MDmTSP:

1. Задание выделенных вершин D (склады, депо).

2. Кластеризация узлов в непересекающиеся группы (m — количество агентов).

3. Расширение каждого кластера с помощью ближайшего элемента депо (из D).

4. Переход на вершины TSP для каждого кластера для определения локальных маршрутов для каждого агента.

5. Обход баз (складов, депо).

На рисунке 2 представлен возможный вариант для MDmTSP. В случае вариантов TSP со многими депо, депо может быть закреплено заранее или расположено на любых узлах.

Рис. 2. Иерархическая шТБР с т кластерами, d базами (складами перевалки) и базой высшего уровня (РЦ — распределительный центр, РРЦ — региональный РЦ)

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

1.2. Методы кластеризации. Как отмечалось выше, чтобы справиться со сложностью задачи ТБР, широко применяются метаэвристики: задача решается с помощью муравьиных колоний, метода Монте-Карло; различных версий генетического алгоритма (СЛ). Однако, нужно отметить, что до сих пор не найдены методы или техники, которые обеспечивали бы нахождение оптимального решения за полиномиальное время. Современные тенденции в решении проблем ТБР включают в себя методы кластеризации и решение ТБР отдельно на каждом кластере. Приведем характерные подходы.

Чтобы понизить сложность решения задачи ТБР в работе [13], обсуждаются методы, основанные на идеях и методах кластеризации, в них показаны этапы процесса кластеризации и обсуждаются некоторые важные концепции, связанные с данными о классе задач и характеристиками отбора и эволюции кластера. Результаты, полученные в работе [13], показывают, что методы кластеризации можно разделить на следующие группы: на основе расстояний, плотностей, моделей, на изображениях, спектрах, иерархиях и методах, используемых в интеллектуальном анализе данных. Для выбора решения авторы [14] провели исследование в области генетики, где изучался поиск из тысячи генов одновременно с использованием технологии микрочипов. Авторами [14] предложено использовать несколько алгоритмов кластеризации; в целом подход представляет собой автоматический алгоритм, обеспечивающий сильную глобальную сходимость к оптимальному решению. М. Н. Данильченко и А. Б. Муравник [15] предложили нейросетевой подход с использованием функционала Ляпунова.

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

Кластеризация приводит к разбиению элементов, где сходные объекты принадлежат одной и той же группе, в то время как несходные объекты должны быть отнесены к разным группам. Входные данные могут быть представлены различными способами. Один из вариантов — использовать векторы атрибутов для описания объектов, в которых сходство вычисляется по значениям атрибутов. Другой вариант — определить матрицу подобия объектов напрямую. Элементы с высоким сходством должны быть отнесены к одному и тому же кластеру. Самостоятельного решения требует задача выделения метрики для определения сходства (близости элементов). Существует несколько типов методов кластеризации: методы секционирования, иерархические методы, методы, основанные на плотности.

В случае методов секционирования (агломеративная кластеризация) на каждой итерации генерируется новое секционирование. При первоначальном разбиении качество улучшается за счет перераспределения элементов по разным кластерам. Повторная итерация завершается, если значение показателя улучшения становится ниже порогового значения. Алгоритм к-тваив является широко используемым методом кластеризации на основе секционирования.

В методах иерархической кластеризации применяется некоторое экстремальное разбиение (например, каждый элемент является отдельным кластером). На каждом шаге итерации текущее разбиение будет уточняться или будет более грубым. В [17] приведен пример такой группы алгоритмов. В случае кластеризации на основе плотности вычисляется значение плотности элементов выделенной группы вершин. Кластеры определяются как максимально связанные плотные области. Что касается качества, то выбранный алгоритм разбиения должен удовлетворять следующим свойствам [18]: масштабируемость, поддержка произвольной формы кластера, обнаружение посторонних (шумовых) элементов, эффективность для областей элементов высокой размерности.

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

- элементы назначаются ближайшему центру;

- для каждого кластера вычисляется новая центральная точка;

- если старый и новый центры находятся в пределах порогового расстояния, итерация завершается.

Существует два основных подхода к методам иерархической кластеризации. Первый подход использует агломеративную концепцию построения снизу вверх, в то время как второй подход основан на разделяющем алгоритме сверху вниз. В случае агломеративного метода каждый элемент изначально представляет собой отдельный кластер. В итерационных циклах два кластера, имеющие наибольшее сходство, объединяются в новый единый кластер. Метод HAC (Hierarhical Aglomerativ Claster) является наиболее широко используемым методом иерархической кластеризации [17], где кластеры объединяются жадным способом. Могут быть заданы два различных условия завершения: минимальное количество кластеров или минимальное сходство для слияния. Следующие методы являются основными методами измерения сходства двух кластеров.

Метод одиночной привязки: расстояние между двумя кластерами сг,с2 равно расстоянию между двумя ближайшими точками

Метод полного сцепления: расстояние между двумя кластерами равно расстоянию между двумя самыми дальними точками:

1 (сьс2) = тах 1(х,у).

хесьуес2

Метод центроидной связи: расстояние между двумя кластерами равно расстоянию между двумя центральными точками:

где хС1, хС2 — центры тяжести кластеров с\, с2.

Метод средней связи: расстояние между двумя кластерами равно среднему расстоянию, связанному с любыми возможными парами точек:

Расширение применения метаэвристик этапом кластеризации позволяет разложить проблемную область на множество областей меньшей размерности.

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

1 (сьс2) = тт 1(х,у).

хесьуес2

1 (с\,с2) = 1 (хс1 ,Хс2 ) ,

жес1, уес2

1.3. Кластеризация, согласованная с задачей коммивояжера. Для решения задачи Т8Р на кластере использовались различные методы и приемы, например, алгоритм Lin-Kernighan, предложенный в [19]. Кластерный генетический алгоритм CAG представлен в работе [9]. Авторы [20] отмечают, что с помощью CAG удается найти оптимальное решение за меньшее время, чем стандартным GA (алгоритм SGA). Также в [20] описан неконтролируемый механизм обучения, используемый для группировки похожих объектов в кластеры, гарантируя, что, несмотря на различные доступные методы кластеризации, существует общая стратегия, которая работает одинаково для разных задач. Однако напрашивается вывод, что лучше использовать простые механизмы. В работе [21] авторы предложили метод иерархической кластеризации, очень похожий на CTSP, в котором используется стратегия постепенного группирования объектов и построения структуры классификации, называемой дендрограммой. Тем не менее, качество получаемых кластеров ненадежно. Для преодоления этой проблемы применяется глобальная оптимальная стратегия построения дендрограммы, которая заключается в нахождении оптимального кругового маршрута, который минимизирует общее расстояние для посещения всех объектов вдоль ветвей дендрограммы. Построенный маршрут моделирует TSP и решает задачу с использованием метода переменной поиска в окрестности. Когда моделируется кластерная дендрограмма, она основана на информации, определяемой заявками. Эксперименты показывают, что качество такого метода кластеризации превосходит традиционные методы.

Авторы [22] привели обзор методов кластеризации, которые могут быть использованы для обработки пространственных и временных шаблонов в большом объеме данных. Они используют 55 городов для применения методов обнаружения. Этот подход позволяет наблюдать существование различных пространственных и временных кластеров. Авторы [23] реализовали алгоритмы кластеризации для методов, используемых в интеллектуальном анализе данных, что позволяет анализировать наборы данных, используя алгоритм к-тваив для вычисления значения стоимости на основе евклидова расстояния, подобного TSP.

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

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

Например, авторы [11] разработали эвристику NEH (первые буквы имен авторов), которая предназначена для решения проблемы планирования работы магазина. Авторы [25] улучшили этот алгоритм с помощью двух подходов. Во-первых, для сокращения времени вычисления разработаны и вводятся некоторые уточнения в алгоритм NEH. Во-вторых, правила тайм-брейка применяются для получения хороших решений. Представленные результаты моделирования показывают, что эти два подхода улучшают результаты, полученные в алгоритме NEH.

В [26] также предложен эвристический метод решения CTSP, который является обобщением TSP, где множество узлов делится на кластеры с целью нахождения минимальной стоимости гамильтонова цикла. Авторы [26] предложили алгоритм ILS решения CTSP, в котором генерируются случайные потомки итерационным локальным поиском. Полученное время вычисления подтверждает, что эвристические методы являются конкурентоспособными при параллельном использовании программного обеспечения.

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

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

Рассмотрим двухэтапный метод планирования маршрутов многих коммивояжеров с кластеризацией вершин. На первом этапе вершины разбиваются на непересекающиеся кластеры. Для каждого кластера генерируется локальный оптимальный маршрут. На втором этапе эти локальные маршруты объединяются в глобальный маршрут. Затем глобальный маршрут уточняется с использованием некоторых стандартных эвристических методов. Различные вершины группируются в непересекающиеся группы, где группа содержит похожие вершины (близкие) (см. рис. 1).

Сходство двух узлов измеряется значением расстояния между соответствующими позициями в евклидовом пространстве. Чтобы объединить локальные маршруты в

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

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

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

Операции переключения 2-opt и 3-opt являются наиболее широко используемыми методами генерации соседних позиций. Метод 2-opt выбирает два случайных ребра из помеченного маршрута и заменяет их двумя новыми соответствующими маршрутами. Например, имея маршрут А ^ а ^ В ^ Ь с двумя выбранными ребрами а и Ь, соседний маршрут задается с помощью А ^ а ^ В' ^ Ь, где В' обозначает обратный обход В. Переключатель 3-opt выбирает 3 ребра и заменяет их 3 новыми ребрами, чтобы получить соседний маршрут.

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

В случае mTSP вариант алгоритма ближайшего соседа разбивает узлы на непересекающиеся группы (кластеры), принадлежащие разным агентам. Самый простой способ выполнить разбиение — установить порог размера для отдельных маршрутов. В задаче с временными окнами порог задается с помощью ограничения времени агента на маршруте. Это ограничение означает, что жадный алгоритм, представленный ранее, завершается, если количество узлов или длины маршрутов равны. После

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

В следующем разделе для кластеризации, согласованной с иерархией шТ8Р, и реализации используются алгоритмы к-тваив и метод разделения вершин по кругу с выбором центра кластера (центр масс).

2. Описание, постановка проблемы и ее реализация

2.1. Выбор алгоритмов кластеризации для шТБР. Задача коммивояжера может быть определена как на неориентированном графе, если он симметричен, так и на ориентированном графе.

В сети 8 = (V, и, С) с графом О = (V, и) множество V = {1,..., и} представляет собой множество вершин или узлов, и = {(г,з) : гз € V, г = 3} — набор неориентированных или направленных дуг. С = {су} — матрица затрат, определенная на и. Предположим, что все су матрицы удовлетворяют неравенству треугольника: су ^ сгк + ску для всех г, з, к; где вершины являются точками в плоскости Рг = (хг,уг);

и су = ^ (хг — ху)2 + (уг — Уу)2 — евклидово расстояние.

Заметим, что сопоставление исходной сети более простой сети с графом, для которого элементы матрицы C удовлетворяют неравенству треугольника, является одним из способов упрощения задачи. С таким же успехом может использоваться сеть из кратчайших расстояний между всеми вершинами исходной сети (полиномиальный по сложности этап). Этап проекции на исходную сеть 8 полученных решений на приведенных сетях осуществляется достаточно просто.

Неравенство треугольника выполняется, если су — длина кратчайшего пути от г до з в 8.

Авторы [28] определяют СТ8Р с учетом упорядочения кластеров для Т8Р, где коммивояжер начинает и заканчивает свое путешествие в определенном городе, должен посетить набор из и точек, разделенных на к кластеров. Последовательно точки

к-го кластера посещаются до точек кластера k + 1 для k = 1, 2, ...,к — 1 ищет минимальное общее расстояние перемещения (схемы Л-Ю кластеризации раздела 1).

Пусть дан полный неориентированный граф О (и, У), где предварительно установлено k +1 кластеров, обозначенных Сг С У, для каждого г = 0,1, 2,..., к. Предполагается, что Сг П Cj = 0 для всех 1 ^ г, j ^ к, г = j, а С0 обозначается как один узел 0 € У и может быть депо С0 = 0. CTSP необходимо определить минимальное расстояние маршрута, начинающегося и заканчивающегося в одном и том же городе с посещение каждого узла, которые обозначаются как элементы из У. Для решения этой проблемы в [10] предложено использовать метод к-тваив для группировки в кластеры с помощью шагов, описанных ниже.

Алгоритм кластеризации

1. Выбрать целое значение для к.

2. Выбрать произвольно к объектов (начальный набор из к центроидов).

3. Назначить каждый из объектов кластеру, который находится ближе всего к центру тяжести.

4. Пересчитать центроид к кластеров.

5. Повторять шаги 3 и 4 до тех пор, пока центроиды больше не изменятся.

Далее, аналогично работам М. С. Германчук, М. Г. Козловой, В. А. Лукьяненко и О. О. Макарова [1-3], предлагается использовать алгоритм к-тваив и пересчитать центроиды путем вычитания среднего арифметического координат X и У, чтобы получить новый центроид и выполнять итерации до тех пор, пока центроиды больше не изменятся, что позволяет алгоритму быть более эффективным, используя среднее арифметическое вместо теста соответствия, который требует большего количества шагов.

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

- генерация тестовых данных;

- ввод/вывод тестовых данных на уровне файлов;

- выполнение указанных стандартных эвристических методов;

- решение задач TSP, mTSP и MDmTSP;

- добавление кластерной оптимизации;

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

Далее описана процедура реализации алгоритмов mTSP для части схемы иерархической маршрутизации.

2.2. Реализация алгоритмов mTSP с использованием кластеризации. В разработке алгоритмов кластеризации сети для решения задачи mTSP использована библиотека Scikit-learn для Python [29], что позволяет проводить эксперименты для тестовых примеров из библиотек TSPLIB и SOLOMON. В результате проведенных экспериментов можно сделать вывод о том, что в зависимости от структуры сети, иерархичности задачи mTSP, наличия одного или нескольких депо, необходимо выбирать подходящий алгоритм кластеризации, согласованной с mTSP. В работах [1-3] по нахождению многоагентных маршрутов в чрезвычайных ситуациях для реальных данных Большой Ялты исходной городской инфраструктурной сети ставится в соответствие сеть в виде полного графа, для которого расстояние между вершинами находится по прямой. Проводится согласованная с mTSP кластеризация, а затем осуществляется проекция найденных маршрутов сети облета на реальную городскую сеть.

Приведем результаты кластеризации и построения маршрутов для сети библиотеки TSPLIB. Проведена кластеризация для 2, 3, 4, 5 агентов различными методами. Базовыми являются k-means и геометрическое распределение вершин, расположенных в круге по углу.

Выбор маршрутов на каждом кластере каждым агентом осуществляется с помощью жадных алгоритмов и уточнения с помощью локальных преобразований. Кластеры уточняются по результатам сравнения найденных маршрутов с помощью процедуры перебрасывания вершин из одного в другой кластер. На рисунке 3 проведена кластеризация для 2, 3, 4 и 5 агентов для различных типов кластеризации.

На рисунке 4 приведены построенные маршруты коммивояжеров для кластеризации соответствующей k-means и круговой, в которой центр масс соответствует депо.

Вычислительный эксперимент подтверждает необходимость согласованной с иерархической структурой сети кластеризации с целью существенного снижения времени решения mTSP. Грубая оценка для разбиения вершин сети на m кластеров равным количеством вершин в кластере в случае полного перебора даст O(n) < O (mm!) < 0(n!). Например, для m = 10, n = 100 вершин 0(n!) = 100!, O (mm!) = 0(10!) ~ 10!. Понятно, что это некоторая идеализированная ситуация.

На рисунке 3 проведена кластеризация для 2, 3, 4 и 5 агентов для различных типов кластеризации.

На рисунке 4 приведены построенные маршруты коммивояжеров для кластеризации соответствующей k-means и круговой, в которой центр масс соответствует депо.

Рис. 3. Кластеризация для 2, 3, 4 и 5 агентов

grrE

^тллКi ь/ l ■ \

сУ_yV

Рис. 4. Маршруты коммивояжеров для различных кластеризаций

Вычислительный эксперимент подтверждает необходимость согласованной с иерархической структурой сети кластеризации с целью существенного снижения времени решения mTSP. Грубая оценка для разбиения вершин сети на т кластеров равным количеством вершин в кластере в случае полного перебора даст 0(и) < О (т) < 0(и!). Например, для т = 10, и = 100 вершин 0(и!) = 100!, О (т) = 0(10!) ~ 10!. Понятно, что это некоторая идеализированная ситуация.

На практике в рассмотренных примерах время решения задачи для двух агентов в несколько раз превосходит время для 4 агентов. Таким образом, построение маршрута коммивояжера для сети большой размерности разумно использовать mTSP и у каждого агента может быть своя стратегия поиска маршрута на локальном кластере (применение роевых, генетических алгоритмов и др.). Объединение локальных маршрутов в один общий является самостоятельной задачей, решаемой с помощью эвристик за разумное время.

Благодарности

Исследования В. А. Лукьяненко частично выполнены при поддержке гранта РФФИ № 20-58^52006.

Заключение

Для задач TSP с большим количеством узлов многоуровневая оптимизация превосходит одноуровневую оптимизацию. В рассмотренной многоуровневой оптимизации множество узлов разбивается на кластеры или на иерархию кластеров. Для каждого кластера выполняется отдельная локальная оптимизация TSP, а затем локальные маршруты объединяются в глобальный маршрут. Процесс иерархической кластеризации может быть совмещен с поиском маршрутов коммивояжеров, уточнение маршрута при добавлении вершины в кластер может не приводить к сильному изменению построенного ранее маршрута. В случае устойчивости эффективны методы реоптимизации (постоптимальный анализ). По результатам тестовых экспериментов предложенный метод превосходит метод одноуровневой оптимизации как для задач TSP, так и для задач mTSP. Можно сделать вывод, что в зависимости от наличия одного или многих депо, структуры сети необходимо выбирать соответствующую кластеризацию. Для реальных задач учет всей имеющейся информации позволит разработать эффективный алгоритм для конкретной задачи или класса задач.

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

1. Германчук, М. С., Козлова, М. Г., Лукьяненко, В. А., Макаров, О. О. Задачи типа многих коммивояжеров в изменяющихся условиях // Сборник материалов международной конференции КРОМШ-2020. — Симферополь: ПОЛИПРИНТ,

2020. — C. 241-245.

GERMANCHUK, M. S., KOZLOVA, M. G., LUKIANENKO, V. A. & MAKAROV, O. O. (2020) Multiple traveling salesman problems under changing conditionsy. KROMSH. P. 241-245.

2. Германчук, М. С., Козлова, М. Г., Лукьяненко, В. А. Задачи маршрутизации в чрезвычайных условиях // Анализ, моделирование, управление, развитие социально-экономических систем: сборник научных трудов XIV Всероссийской с международным участием школы-симпозиума АМУР-2020, Симферополь-Судак, 14-27 сентября 2020 / ред. совет: А. В. Сигал (предс.) и др. — Симферополь: ИП Корниенко А. А., 2020. — C. 98-107.

GERMANCHUK, M. S., KOZLOVA, M. G., LUKIANENKO, V. A. & MAKAROV, O. O. (2020) Multiple traveling salesman problems under changing conditionsy. AMUR. P. 98-107.

3. Лукьяненко, В. А., Германчук, М. С., Макаров, О. О. Специфика задач маршрутизации в условиях локальных преобразований сети // Математические методы распознавания образов: Тезисы докладов 20-й Всероссийской конференции с международным участием, г. Москва 2021 г. — М.: Российская академия наук,

2021. — C. 460-462.

LUKIANENKO, V. A., GERMANCHUK, M. S., MAKAROV, O. O. (2021) Specifics of Routing Problems in the Conditions of Local Network Transformations. MMRO. P. 460-462.

4. GERMANCHUK, M. S., KOZLOVA, M. G. & LUKIANENKO, V. A. (2021) Pseudo-Boolean Conditional Optimization Models for a Class of Multiple Traveling Salesmen Problems. Automation and Remote Control. 10 (82). p. 1651-1667. DOI: 10.1134/S0005117921100040

5. GERMANCHUK, M. S. & LEMTYUZHNIKOVA, D. V. & LUKIANENKO, V. A. (2021) Metaheuristic Algorithms for Multiagent Routing Problems. Automation and Remote Control. 10 (82). p. 1787-1801. DOI: 10.1134/S0005117921100155

6. Козлова, М. Г., Лукьяненко, В. А., Руденко, Л. И., Германчук, М. С. Использование технологий искусственного интеллекта в многоагентных задачах управления // Дистанционные образовательные технологии: сборник трудов VI Международной научно-практической конференции / отв. ред. В.Н. Таран. — Симферополь: ИТ «АРИАЛ», 2021. — C. 251-255.

KOZLOVA, M. G., LUKIANENKO, V. A., RUDENKO, L. I., &

GERMANCHUK, M. S. (2021) The Use of Artificial Intelligence Technologies in Multi-agent Control Promlems. DLT. P. 251-255.

7. GERMANCHUK, M. S., KOZLOVA, M. G. & LUKIANENKO, V. A. (2021) Some features of design of intelligent systems for processing the internet memes flow. CEUR Workshop Proceedings. Vol. 2834. p. 148-158.

8. Козлова, М. Г., Германчук, М. С., Куртнебиев, Э. Д. Приближенные решения задач о максимальном разрезе и ее применения // Шформатика та системш науки (ICH-2013): материалы IV Всеукр. науков.-практич. конф. (м. Полтава, 21-25 бе-резня, 2013 р.) / за ред. О. О. Емця. — Полтава: ПУЭТ, 2013. — C. 150-153.

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

KOZLOVA, M. G. & GERMANCHUK, M. S. & KURTNEBIEV, E. D. (2013) Approximate solutions of the maximum cut problem and its applications. ICH. P. 150-153.

9. CORMEN, T., LEISERSON, C. & RIVESR, R. (2009) Introduction to algorithms. The MIT Press. Cambridge, Massachusetts & London, England. p. 1292.

10. PHIENTHRAKUL, T. (2014) Clustering Evolutionary Computation for Solving Traveling Salesman Problem. International Journal of Advanced Computer Science and Information Technology. 3 (3). p. 243-262.

11. NAWAZ, M., ENSCORE, E. & HAM I. (1983) A heuristic algorithm for the m-Machine, n-Job flow-shop sequencing problem. Omega-International Journal of Management Science. 11. p. 91-95.

12. SECK, J. & GARCIA, L. & MEDINA, J. (2014) Improving a multi restart local search algorithm by permutation matrices and sorted work times for the flow shop scheduling problem. World Comp Proceedings. - URL: http://worldcomp-proceedings.com/proc/p2014/GEM2351.pdf

13. DUTTA, S. & BHATTACHARYA, S. (2015) A short review of clustering techniques. International Journal of Advanced Research in Management and Social Sciences. 4 (5). p. 132-139.

14. VIJAYALAKSHMI, S., JAYANAVITHRAA, C. & RAMYA, L. (2013) Gene Expression Data Analysis Using Automatic Spectral MEQPSO Clustering Algorithm. International Journal of Advanced Research in Computer and Communication Engineering. 2 (2). p. 1145-1148.

15. Данильченко, М. Н., Муравник, А. Б. Нейросетевой подход к построению маршрута в автоматизированной системе управления специального назначения // Наукоемкие технологии в космических исследованиях Земли. — 2021. — 13 (1). — C. 58-66. DOI: 10.36724/2409-5419-2021-13-1-58-66

DANILCHENKO, M. N. & MURAVNIK, A. B. (2021) Neural network approach to building a route in an automated control system for special purposes. H&ES Research. P. 58-66.

16. WEIYA, R., GUOHUI, L. & DAN, T. (2014) Graph clustering by congruency approximation. EIT Computer Vizion. 9 (6). p. 841-849. DOI: 10.1049/iet-cvi.2014.0131

17. BALCAN, M.-F., LIANG, Y. & GUPTA, P. (2013) Robust Hierarchical Clustering. COLT 2010 - The 23rd Conference on Learning Theory. 15 (1). p. 4011-4051. DOI: https://doi.org/10.48550/arXiv.1401.0247

18. SAITTA, S., RAPHAEL, B. & SMITH, I. F. C. (2007) Bounded Index for Cluster Validity. Machine Learning and Data Mining in Pattern Recognition, 5th International Conference. 4571. p. 174-187. DOI: 10.1007/978-3-540-73499-4_14

19. KARAPETYAN, D. & GUTIN, G. (2011) Lin-Kernighan Heuristic Adaptations for the Generalized Traveling Salesman Problem. European Journal of Operational Research. 208 (3). p. 221-232. DOI: 10.1016/j.ejor.2010.08.011

20. SIVARAJ, R. & RAVICHANDRAN, T. & DEVI PRIYA, R. (2012) Solving Traveling Salesman Problem using Clustering Genetic Algorithm. International Journal on Computer Science and Engineering. 4 (7). p. 1310-1317.

21. TSAI, C. & CHIU, C. (2006) A VNS based Hierarchical Clustering Method. CIMMACS'06: Proceedings of the 5th WSEAS International Conference on Computational Intelligence, Man-Machine Systems and Cybernetics. p. 268-275.

22. NAGY, M. & NEGRU, D. (2014) Using clustering software for exploring spatial and temporal patterns in non-communicable diseases. European Scientific Journal. 10 (33). p. 37-47.

23. VISHNUPRIYA, N. & SAGAYARAJ, F. (2015) Data Clustering using MapReduce for Multidimensional Datasets. International Advanced Research Journal in Science, Engineering and Technology. 2 (8). p. 39-42. DOI 10.17148/IARJSET.2015.2810

24. NIDHI, S. (2015) A modified Approach for Incremental k-Means Clustering Algorithm. International Journal of Engineering Development and Research. 3 (2). p. 1081-1084.

25. LIU, G., SONG, S. & WU, C. (2012) Two Techniques to Improve the NEH Algorithm for Flow-Shop Scheduling Problems: Lecture Notes in Computer Science. ICIC 2011, LNAI. 6839. p. 41-48. DOI: 10.1007/978-3-642-25944-9_6

26. MESTRIA, M. (2014) Heuristic methods using variable neighborhood random local search for the clustered traveling salesman problem. Revista Produgao Online. 14 (4). p. 1511-1536. D0I:10.14488/1676-1901.v14i4.1721

27. GRASAS, A., JUAN, A. & LORENZO, H. (2016) SimILS: a simulation-based extension of the iterated local search metaheuristic for stochastic combinatorial optimization. Journal of Simulation. 10 (1). p. 69-77. DOI: https://doi.org/10.1057/jos.2014.25

28. ANIL, S., BRAMEL, J. & HERTZ, A. (1999) A 5/3 approximation algorithm for the clustered traveling salesman tour and path problems. Operation Research. 24. p. 29-35. DOI:10.1016/S0167-6377(98)00046-7

29. Scikit-learn. (2022) Clustering. [Online] Available from: https://scikit-learn.org/stable/modules/clustering.html.

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