Научная статья на тему 'Гибридный подход для решения задачи коммивояжёра с помощью облачных вычислений в сети Интернет'

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

CC BY
180
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕМЕТИЧЕСКИЙ АЛГОРИТМ / ЗАДАЧА КОММИВОЯЖЁРА / ОБЛАЧНЫЕ ВЫЧИСЛЕНИЯ / МУТАЦИЯ / РЕПЛИКАЦИЯ / ИНВЕРСИЯ / ПРОЦЕДУРА ЛОКАЛЬНОГО ПОИСКА / THE MEMETIC ALGORITHM / THE TRAVELING SALESMAN PROBLEM / CLOUD COMPUTING / MUTATION / REPLICATION / INVERSION / THE LOCAL SEARCH PROCEDURE

Аннотация научной статьи по математике, автор научной работы — Курейчик Виктор Михайлович, Логунова Юлия Андреевна

Данная работа относится к области искусственного интеллекта. В ней рассматривается задача коммивояжёра, которая активно используется на практике в логистике, социологии, интеллектуальном проектировании, робототехнике, для решения задач поисковой оптимизации и во многих многих других областях научной деятельности. Задача коммивояжёра (ЗК) является фундаментальной, ввиду её теоретической и практической важности. Поскольку она является NP-полной, поиск решения ведется в пространстве, растущем от n экспоненциально. Разработка новых методов её решения и модификация существующих по-прежнему остается актуальной задачей для исследователей. При решении ЗК большой размерности целесообразно использовать различные приближенные методы поиска её решения. Целью данного исследования является разработка гибридного меметического алгоритма решения ЗК и проверка его эффективности на современных бенчмарках. Меметические алгоритмы относятся к классу эволюционных методов решения, которые в общем случае доказывают свою эффективность при решении сложных оптимизационных задач. Основной методологической базой для проведения исследования является общая теория эволюционных вычислений. Особенностью данной работы является то, что проверка гибридного меметического алгоритма проводилась с использованием облачных вычислений в сети Интернет, что позволило увеличить вычислительную мощность и сократить время обработки данных. Время работы алгоритма составило O (n 2 ) , где n количество городов (вершин графа). Была разработана специальная программа и проведен вычислительный эксперимент на современных бенчмарках: Pr76, kroD100, Pr152, Pr439, Pr1002. Для задачи Pr 76 и Pr152 результаты решения совпали с лучшими известными решениями. Разработанный алгоритм показал свою эффективность для решения задачи коммивояжёра до 1000 вершин. Результаты исследования практически совпали с теоретическими предпосылками.This work relates to the field of artificial intelligence solving problems. It considers the traveling salesman problem, which is actively used in practice in logistics, sociology, intellectual design, robotics, to solve search engine optimization problems and many other areas of engineering activity. The traveling salesman problem is fundamental, in view of its theoretical and practical importance. Since it is NP-complete, a solution is sought in a space growing exponentially from n. The development of new methods for its solution and modification of existing ones remains an urgent task for researchers. When solving the traveling salesman problem of large dimension, it is advisable to use various approximate methods for finding its solution. The purpose of this study is to develop a hybrid memetic algorithm for solving the traveling salesman problem and test its effectiveness on modern benchmarks. The memetic algorithms belong to the class of evolutionary solution methods, which in the general case prove their effectiveness in solving complex optimization problems. The main methodological basis for the study is the general theory of evolutionary computing. The peculiarity of this work is that its verification was carried out using cloud computing on the Internet, which significantly increased computing power and reduced data processing time. The running time of the algorithm was O(n 2 ) , where n is the number of cities (vertices of the graph). A special program was developed, and a computational experiment was conducted on the following benchmarks: Pr76, kroD100, Pr152, Pr439, Pr1002, опубликованных в современной зарубежной литературе. For the problem Pr 76 and Pr152, the results of the solution coincided with the best-known solutions. The developed algorithm has shown its effectiveness for solving the traveling salesman problem with up to 5000 vertices. The results of the study almost coincided with theoretical assumptions.

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

Похожие темы научных работ по математике , автор научной работы — Курейчик Виктор Михайлович, Логунова Юлия Андреевна

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

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

Ibadov Ragim Raufevich - Southern Federal University; e-mail: [email protected]; 44, Nekrasovskiy, Taganrog, 347928, Russia; phone: +79298184480; graduate student.

Fedosov Valentin Petrovich - email: [email protected]; phone: +79525601246; dr. of eng. sc.; professor.

Voronin Viacheslav Vladimirovich - Don State Technical University; e-mail: [email protected]; 1, Gagarina sq., Rostov-on-Don, Russia; phone: +79885343459; cand. of eng. sc.; head of laboratory.

Ibadov Samir Raufevich - Institute of Service and Entrepreneurship (branch) Don State Technical University; e-mail: [email protected]; 147, Shevchenko street, Shakhty, Russia; phone: +79518463738; graduate student.

УДК 004.023 DOI 10.23683/2311-3103-2019-5-25-33

В.М. Курейчик, Ю.А. Логунова

ГИБРИДНЫЙ ПОДХОД ДЛЯ РЕШЕНИЯ ЗАДАЧИ КОММИВОЯЖЁРА С ПОМОЩЬЮ ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ В СЕТИ ИНТЕРНЕТ*

Данная работа относится к области искусственного интеллекта. В ней рассматривается задача коммивояжёра, которая активно используется на практике в логистике, социологии, интеллектуальном проектировании, робототехнике, для решения задач поисковой оптимизации и во многих многих других областях научной деятельности. Задача коммивояжёра (ЗК) является фундаментальной, ввиду её теоретической и практической важности. Поскольку она является NP-полной, поиск решения ведется в пространстве, растущем от n экспоненциально. Разработка новых методов её решения и модификация существующих по-прежнему остается актуальной задачей для исследователей. При решении ЗК большой размерности целесообразно использовать различные приближенные методы поиска её решения. Целью данного исследования является разработка гибридного меметического алгоритма решения ЗК и проверка его эффективности на современных бенчмарках. Меметические алгоритмы относятся к классу эволюционных методов решения, которые в общем случае доказывают свою эффективность при решении сложных оптимизационных задач. Основной методологической базой для проведения исследования является общая теория эволюционных вычислений. Особенностью данной работы является то, что проверка гибридного меметического алгоритма проводилась с использованием облачных вычислений в сети Интернет, что позволило увеличить вычислительную мощность и сократить время обработки данных. Время работы алгоритма составило 0(п2), где п - количество городов (вершин графа). Была разработана специальная программа и проведен вычислительный эксперимент на современных бенчмарках: Pr76, kroD100, Pr152, Pr439, Pr1002. Для задачи Pr 76 и Pr152 результаты решения совпали с лучшими известными решениями. Разработанный алгоритм показал свою эффективность для решения задачи коммивояжёра до 1000 вершин. Результаты исследования практически совпали с теоретическими предпосылками.

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

V.M. Kureichik, Y.A. Logunova

THE HYBRID APPROACH FOR THE TRAVELLING SALESMAN PROBLEM SOLVING USING CLOUD COMPUTING IN THE INTERNET

This work relates to the field of artificial intelligence solving problems. It considers the traveling salesman problem, which is actively used in practice in logistics, sociology, intellectual design, robotics, to solve search engine optimization problems and many other areas of engineering activity. The traveling salesman problem is fundamental, in view of its theoretical and practi-

* Работа выполнена за счет частичного финансирования по гранту РФФИ №18-29-22019/18.

cal importance. Since it is NP-complete, a solution is sought in a space growing exponentially from n. The development of new methods for its solution and modification of existing ones remains an urgent task for researchers. When solving the traveling salesman problem of large dimension, it is advisable to use various approximate methods for finding its solution. The purpose of this study is to develop a hybrid memetic algorithm for solving the traveling salesman problem and test its effectiveness on modern benchmarks. The memetic algorithms belong to the class of evolutionary solution methods, which in the general case prove their effectiveness in solving complex optimization problems. The main methodological basis for the study is the general theory of evolutionary computing. The peculiarity of this work is that its verification was carried out using cloud computing on the Internet, which significantly increased computing power and reduced data processing time. The running time of the algorithm was 0(п2), where n is the number of cities (vertices of the graph). A special program was developed, and a computational experiment was conducted on the following benchmarks: Pr76, kroD100, Pr152, Pr439, Pr1002, опубликованных в современной зарубежной литературе. For the problem Pr 76 and Pr152, the results of the solution coincided with the best-known solutions. The developed algorithm has shown its effectiveness for solving the traveling salesman problem with up to 5000 vertices. The results of the study almost coincided with theoretical assumptions.

The memetic algorithm; the traveling salesman problem; cloud computing; mutation; replication; inversion; the local search procedure.

Введение. Задача коммивояжёра (ЗК или на английском TSP - Travelling Salesman Problem), а иногда её называют просто задача поиска минимальной длины ребер в графе, заключается в отыскании кратчайшего Гамильтонова цикла в графе. Актуальность задачи не вызывает сомнений, ввиду её теоретической и практической значимости. Она является NP-трудной, а значит не существует точного полиномиального алгоритма её решения. В классическом виде она применяется при проектировании разводки коммуникаций и архитектуры вычислительных сетей кольцевой топологии [1]. Кроме того, в психологии и педагогике [2]. В связи с этим, разработка эффективных алгоритмов и методов её решения по-прежнему является актуальной задачей. Существует множество точных и эвристических методов решения ЗК. Одними из приближенных популяционных алгоритмов решения ЗК, которые были инспирированы человеческим обществом, являются так называемые меметические алгоритмы (МА). С позиции таксономии моделей эволюционных вычислений МА являются разновидностью эволюционных алгоритмов. В данном случае мемы это единицы информации, распространяющиеся посредством обучения и имитации между людьми. В работе [3] мем определяется, как устойчивая структура информации, способная к репликации. Это означает, что мем в некотором смысле аналог гена в генетических алгоритмах и рассматривается как информация, копируемая вариационно и селективно. Основы меметики и само понятие мем впервые были рассмотрены в работах Докинза в 1976 году [3]. Данные алгоритмы проявили себя как эффективный эвристический метод решения ЗК. В связи с этим основной целью данного исследования является разработка гибридного МА решения ЗК, а также проверка его на конкретных примерах - бенч марках. Новизна подхода заключается в использовании модифицированных операторов рекомбинации, инверсии и селекции, а также гибридизации с методом локального поиска.

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

В ходе исследовательской работы была разработана специальная программа и проведена серия вычислительных экспериментов на известных мировых бенчмарках: Pr76, kroD100, Pr152, Pr439, Pr1002 [4]. Вычислительная сложность разработанного алгоритма составила примерно 0(п2), где п - число городов (вершин графа).

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

которые должен посетить коммивояжёр. И даны расстояния между каждой парой городов: . Необходимо найти минимальное значение:

HfJl1 dp +X) + dp („)^( X) среди всех перестановок <p. Так же в задаче накладываются определенные условия: н , симметрич-

ности , запрет на петли , и удовлетворения неравенству

треугольника: d у + dJp > d ip, i,j р = 1 , n | i Ф j i Ф pJ /с [5].

ЗК может быть легко описана в теории графов: пусть нам дан реберно-взвешенный граф , в котором необходимо найти гамильтонов цикл

(замкнутый маршрут, который проходит все вершины графа по одному разу) минимальным значением суммарного числа расстояний. При этом вершины графа это города, которые необходимо посетить коммивояжеру, а ребра ty, i = 1 ,. . ., V, i ^ j - расстояния между городами [6].

Фиксация начальной вершины старта коммивояжёра позволяет сузить пространство поиска до (п — 1 ) ! [1]. Поскольку время работы алгоритмов, основанных на полном переборе или построение дерева решений в зависимости от числа городов, растет экспоненциально (например, в задаче коммивояжёра всего с 20ю городами пространство потенциальных решений при полном переборе будет равно 20!=2 432 902 008 176 640 000) для решения ЗК с числом городов более 100 часто используют различные эвристические методы решения, которые дают оптимальные или близкие к ним решения. В связи с этим, на основе разработанной общей теории эволюционных вычислений в работе предлагается гибридный меметиче-ский алгоритм с использованием локального поиска.

Меметический алгоритм решения ЗК. В общем виде МА включает в себя следующий набор шагов:

1. /с = 0. Формируем начальную популяцию М = {ш ¿, i 6 [ 1 : | М | ] }

2. Для текущего положения каждого из агентов вычисляем соответствующее значение фитнес функции .

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

4. Применяем ко всем агентам популяции миграционные операторы рассматриваемого популяционного алгоритма.

5. Исходя из новых текущих положений каждого из агентов ш', i 6 [1: | М ' | ] , выполняем локальный поиск.

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

7. На основе популяций формируем новую популяцию .

8. и если условие окончания итерации не выполнено, то переходим к шагу 2, в противном случае заканчиваем вычисления, принимая в качестве решения задачи лучшее положение агента текущей популяции [5].

В каждой точке принятия решения мем в данном исследовании выбирается случайным образом (simple random choice) из роя мемов S и выбор каждого из ме-мов не меняется в процессе итераций.

В модифицированный алгоритм представлен на рис. 1.

Сформировать начальную популяцию

Рис. 1 Модифицированный меметический алгоритм решения ЗК

Для ЗК произвольный допустимый маршрут коммивояжёра (альтернативное решение) будем называть хромосомой. Каждый отдельный город в данном маршруте - это ген в хромосоме. Множество альтернативных решений ЗК - это популяция. Размер популяции - т (задаваемый параметр). Две родительские хромосомы - это две произвольно выбранные хромосомы из популяции. Хромосома потомка -это новое альтернативное решение ЗК, получаемое в результате применения определенных генетических операторов на две родительские хромосомы.

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

В каждое альтернативное решение ЗК итерационно вставляем п/2 ребер, ребра выбираются следующим образом:

Равномерно произвольным образом выбираем вершину , которая еще не входит в маршрут, из графа С = (Х,Т) . Далее выбирается с вероятностью 0,75 ребро инцидентное вершине с наименьшей стоимостью. В противном случае 2-е наименьшее по стоимости ребро инцидентное вершине [7]. Так же должно выполняться условие, что выбираемое ребро соединяет вершину с вершиной х^, которая не входила ранее в маршрут. Остальные ребра добавляются в маршрут, используя стандартную жадную стратегию.

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

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

В качестве процедуры инверсии была выбрана парацентрическая инверсия с вероятностью 0,17 и задаваемой длиной участка инвертированной хромосомы. Пример для ЗК с 9ю городами парацентрической инверсии представлен на рис. 2.

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

вг 42 54 45 87

В[ 77 55 44 22

Рис. 2. Пример парацентрической инверсии

В данном примере длина участка инвентирования равна L(£?1) = 4 .

Оператор селекции выбирает т лучших особей из (т + в) , где т — размер первоначальной популяции, в - количество новых особей, полученных в результате рекомбинации и инверсии.

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

Облачные технологии в сети Интернет. В настоящее время работа исследователей в отношении ЗК развивается в двух направления: первое связано с расширением пространства входных данных ЗК, а второе с приближением ЗК к реальности, путем добавления объектов и отношений и разработка методов решения таких задач. Напомним, что последняя максимальная ЗК, решенная точным методом, состояла из 24978 городов, а длина пути коммивояжёра при этом составила 72,500 км [8]. ЗК так же тесно связана с вычислительной мощностью компьютера, это объясняет почему является целесообразным и экономически выгодным применение облачных технологий для решения ЗК с большим количеством входных данных. При использовании облачных вычислений снижаются требования к вычислительной мощности компьютера и затраты на программное и аппаратное обеспечение, обслуживание и электроэнергию. Стоит так же отметить высокую скорость обработки данных и экономию дискового пространства [9].

Измерение услуг, которые предоставляются облачными системами, осуществляется с помощью специальных абстрактных параметров, изменяющихся в зависимости от категории и вида услуги. Например, количественно может быть оценена вычислительная мощность, пропускная способность, размер хранилища данных [10].

В настоящее время выделяют три модели облачных вычислений [9]:

1. Программное обеспечение как услуга (SaaS).

2. Платформа как услуга (PaaS).

3. Инфраструктура как услуга (IaaS).

Вычисления были поведены на инфраструктуре IaaS сервиса облачных вычислений Amazon Web Services. Для этого была арендована виртуальная машина (EC2 instance) t3.2xlarge (CPU: 8 и RAM: 32 Gb). Мы выбрали данную модель, по-

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

Экспериментальная часть. В результате исследовательской работы был разработан специальный программный модуль с модифицированным МА и проведен его анализ на современных бенчмарках [4].

Настройки алгоритма:

Количество особей в начальной популяции т = 1 00, 1000;

Количество итераций - 1000, 2000;

Длина участка инвентирования альтернативного решения (хромосомы) - 10, 20;

Вероятность мутации - 0,17;

Результаты исследований представлены в табл. 1.

Таблица 1

Результаты работы модифицированного МА

Бенч марка Известное лучшее Лучшее значение ЦФ из серии

решение экспериментов предложенным методом (МА)

Pr76 108159 108159

kroD100 21294 21349

Pr152 73682 73682

Pr439 107217 107335

Pr1002 259045 259010

Зависимость времени работы МА от количества вершин ЗК показана на рис. 3.

Зависимость времени работы МА от количества вершин

100

Q. 0>

| u Количество вершин ЗК

0J Q-

9 Зависимость времени работы МА от количества вершин

Рис. 3. Зависимость времени работы МА от количества вершин ЗК

Для ЗК размера до 1000 вершин МА находит близкое к оптимальному (1 % отклонение) решение за время примерно 3 сек. CPU (central processing unit). Для ЗК размерности больше 3000 вершин МА дает близкое к оптимальному (1 % отклонение) решение за время примерно 1 CPU час. Среднее отклонение всех полученных результатов от известных бенч марок составило не более 6,69. Рассмотренный алгоритм сильно зависит от выбора параметров и показал свою эффективность для ЗК не выше 5000 городов.

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

[10-13]. Примерами интерпретации ЗК для конкретных прикладных задач могут служить: задача обслуживания таксофонов [14], задача построения изображения непрерывной линией [15], задача моделирования функций белков [16], задача поиска оптимального маршрута бензовоза [17], задача проектирования архитектуры сетей [18] и многие другие.

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

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

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Курейчик В.В., Курейчик В.М., Родзин С.И. Теория эволюционных вычислений. - М.: Физматлит, 2012. - 260 с.

2. Scoti'm Graham, Anupam Joshi, Zygmunt Pizlo. The traveling salesman problem: A hierarchical model // Memory & Cognition. - October 2000. - Vol. 28, Issue 7. - P. 1191-1204.

3. Blackmore S. The Meme Machine. - Oxford: University Press, 1999.

4. University of Heidelberg. TSPLIB95, from http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/ tsp95.pdf, last modified on 06-08-2008, accessed on 10-11-2019.

5. Карпенко А.П. Современные алгоритмы поисковой оптимизации. Алгоритмы, вдохновленные природой: учеб. пособие. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2014. - 446 с.

6. Колесников А. В., Кириков И.А., Листопад С.В., Румовская С.Б., Доманицкий А.А. Решение сложных задач коммивояжёра методом функциональных гибридных интеллектуальных систем / под ред. А.В. Колесникова. - М.: ИПИ РАН, 2011. - 295 с.

7. Емеличев В.А., Мельников О.И., Сарванов В.И., Тышкевич Р.И. Лекции по теории графов: учеб. пособие. - 2-е изд., испр. - М.: Книжный дом «ЛИБРОКОМ», 2009. - 392 с.

8. http://www.math.uwaterloo.ca/tsp/history/milestone.html (дата обращения: 11.11.2019).

9. Паюсова Т.И. Анализ защищенности облачных систем с помощью генетического алгоритма // Безопасность информационного пространства: Матер. XII Всероссийской научно-практической конференции студентов, аспирантов и молодых ученых, Екатеринбург, 2-4 декабря 2013 г. - Екатеринбург: Изд-во Урал. ун-та, 2014. - С. 183-190.

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

10. От хранения данных к управлению информацией / пер. Н. Вильчинский. - СПБ.: Питер, 2016. - 544 с.

11. Applegate D.L., Bixby R.E., Chvatal V., Cook W.J. The travelling salesman problem: a computational study. - Princeton: Princeton University Press, 2007. - 593 p. - http://www.twirpx.com/ file/1479670/ (дата обращения: 11.11.2019).

12. Gutin G., Punnen A. The travelling salesman problem and its variations. - Nowell: Kluwer, 2002.

13. Kureichik V.M., Logunova J.A. Some of the new indicators in genetic algorithms for the traveling salesman problem // Proceedings of 2018 IEEE East-West Design and Test Symposium, EWDTS 2018, Kazan, Russia, September 14-17.

14. Lenstra J., Kan A.R. Some simple applications of the traveling salesman problem // Operational Research Quarterly. - 1975. - Vol. 26, No. 4, part 1. - P. 717-733.

15. Boch R., Herman A. Continuous Line Drawing via the Traveling Salesman Problem // Operations Research Letters. - 2004. - Vol. 32. - P. 302-303.

16. Johnson O., Liu J. A traveling salesman approach for predicting protein functions // Source Code for Biology and Medicine. - 2006. - Vol. 1, No. 3. - P. 1-7.

17. Ismail Z., Ibrahim W.R. W. Traveling Salesman Approach for Solving Petrol Distribution Using Simulated Annealing // American Journal of Applied Sciences. - 2008. - Vol. 5, Issue. 11.

- P. 1543-1546.

18. Goldschmidt O., Laugier A., Olinick E.V. SONET/SDH ring assignment with capacity constraints // Discrete Applied Mathematics. - 2003. - Vol. 129. - P. 99-128.

19. Курейчик В.М., Логунова Ю.А. Анализ перспективности применения генетического алгоритма при решении задачи коммивояжера // Информационные технологии. - 2018.

- Т. 24, № 11. - С. 691-697.

20. Сахаров М.К., Карпенко А.П. Меметические алгоритмы для решения задачи глобальной нелинейной оптимизации. Обзор // Наука и образование МГТУ им. Н.Э. Баумана. - 2015.

- № 12. - С. 119-142.

REFERENCES

1. Kureychik V.V., Kureychik V.M., Rodzin S.I. Teoriya evolyutsionnykh vychisleniy [Theory of evolutionary computation]. Moscow: Fizmatlit, 2012, 260 p.

2. Scoti'm Graham, Anupam Joshi, Zygmunt Pizlo. The traveling salesman problem: A hierarchical model, Memory & Cognition, October 2000, Vol. 28, Issue 7, pp. 1191-1204.

3. Blackmore S. The Meme Machine. Oxford: University Press, 1999.

4. University of Heidelberg. TSPLIB95, from http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/tsp95.pdf, last modified on 06-08-2008, accessed on 10-11-2019.

5. Karpenko A.P. Sovremennye algoritmy ois ovoy o timizatsii. Algoritmy, vdo hnovlennye

rirodo : ucheb. posobie [Modern search engine optimization algorithms. Nature-inspired algorithms: textbook]. Moscow: Izd-vo MGTU im. N.E. Baumana, 2014, 446 p.

6. Kolesnikov A.V., Kirikov I.A., Listopad S.V., Rumovskaya S.B., Domanitskiy A.A. Reshenie slozhnykh zadach kommivoyazhera metodom funktsional'nykh gibridnykh intellektual'nykh sistem [Solution of complex problems of a salesman by the method of functional hybrid intelligent systems], ed. by A.V. Kolesnikova. Moscow: IPI RAN, 2011, 295 p.

7. Emelichev V.A., Mel'nikov O.I., Sarvanov V.I., Tyshkevich R.I. Lektsii po teorii grafov: ucheb. posobie [Lectures on graph theory: a textbook]. 2nd ed. Moscow: Knizhnyy dom «LIBROKOM», 2009, 392 p.

8. Available at: http://www.math.uwaterloo.ca/tsp/history/milestone.html (accessed 11 November 2019).

9. Payusova T.I. Analiz zashchishchennosti oblachnykh sistem s pomoshch'yu geneticheskogo algoritma [Security analysis of cloud systems using genetic algorithm], Bezopasnost' informatsionnogo prostranstva: Mater. XII Vserossiyskoy nauchno-prakticheskoy konferentsii studentov, aspirantov i molodykh uchenykh, Ekaterinburg, 2-4 dekabrya 2013 g. [Information space security: Proceedings of the XII all-Russian scientific and practical conference of students, postgraduates and young scientists, Yekaterinburg, 2-4 December 2013]. Ekaterinburg: Izd-vo Ural. un-ta, 2014, pp. 183-190.

10. Ot khraneniya dannykh k upravleniyu informatsiey [From data storage to information management], translation from N. Vil'chinskiy. Saint Petersburg: Piter, 2016, 544 p.

11. Applegate D.L., Bixby R.E., Chvatal V., Cook W.J. The travelling salesman problem: a computational study. Princeton: Princeton University Press, 2007, 593 p. Available at: http://www.twirpx.com/file/1479670/ (дата обращения: 11.11.2019).

12. Gutin G., Punnen A. The travelling salesman problem and its variations. Nowell: Kluwer, 2002.

13. Kureichik V.M., Logunova J.A. Some of the new indicators in genetic algorithms for the traveling salesman problem, Proceedings of 2018 IEEE East-West Design and Test Symposium, EWDTS 2018, Kazan, Russia, September 14-17.

14. Lenstra J., Kan A.R. Some simple applications of the traveling salesman problem, Operational Research Quarterly, 1975, Vol. 26, No. 4, part 1, pp. 717-733.

15. Boch R., Herman A. Continuous Line Drawing via the Traveling Salesman Problem, Operations Research Letters, 2004, Vol. 32, pp. 302-303.

16. Johnson O., Liu J. A traveling salesman approach for predicting protein functions, Source Codefor Biology and Medicine, 2006, Vol. 1, No. 3, pp. 1-7.

17. Ismail Z., Ibrahim W.R. W. Traveling Salesman Approach for Solving Petrol Distribution Using Simulated Annealing, American Journal of Applied Sciences, 2008, Vol. 5, Issue. 11, pp. 1543-1546.

18. Goldschmidt O., Laugier A., Olinick E.V. SONET/SDH ring assignment with capacity constraints, Discrete Applied Mathematics, 2003, Vol. 129, pp. 99-128.

19. Kureychik V.M., Logunova Yu.A. Analiz perspektivnosti primeneniya geneticheskogo algoritma pri reshenii zadachi kommivoyazhera [Analysis of the prospects for the use of genetic algorithm in solving the traveling salesman problem], Informatsionnye tekhnologii [Information technology], 2018, Vol. 24, No. 11, pp. 691-697.

20. Sakharov M.K., Karpenko A.P. Memeticheskie algoritmy dlya resheniya zadachi global'noy nelineynoy optimizatsii. Obzor [Memetic algorithms for solving the global nonlinear optimization problem. Review], Nauka i obrazovanie MGTU im. N.E. Baumana [Science and education of Moscow state technical University. N.E. Bauman], 2015, No. 12, pp. 119-142.

Статью рекомендовал к опубликованию д.т.н., профессор Н.И. Витиска.

Курейчик Виктор Михайлович - Южный федеральный университет; e-mail: [email protected]; г. Таганрог, пер. Некрасовский, 44; тел.: +79282132730; кафедра САПР; д.т.н.; профессор.

Логунова Юлия Андреевна - e-mail: [email protected]; тел.: +79054519198, кафедра САПР; аспирант.

Kureichik Victor Mikhailovich - Southern Federal University; e-mail: [email protected]; 44, Nekrasovsky, Taganrog, 347928, Russia; phone: +79282132730, the department of CAD; dr. of eng. sc.; professor.

Logunova Julia Andreevna - e-mail: [email protected]; phone: +79054519198; the department of CAD; graduate student.

УДК 681.03.245 DOI 10.23683/2311-3103-2019-5-33-45

Е.А. Маро

ИССЛЕДОВАНИЕ НАДЕЖНОСТИ БЛОЧНЫХ КРИПТОГРАФИЧЕСКИХ АЛГОРИТМОВ С ПОМОЩЬЮ МЕТОДОЛОГИИ SAT*

В вопросах обеспечения информационной безопасности важной задачей является исследование методов оценки защищенности конфиденциальной информации. Для многих систем защиты информации оценка защищенности информации может быть сведена к поиску решений систем булевых нелинейных уравнений и анализу трудоемкости различных методов решения подобных систем (алгебраическому методу анализа). Алгебраические методы анализа применяются, например, к следующим задачам, возникающим в сфере обеспечения информационной безопасности: - аудит состояния защищаемого объекта; - проверка корректности функционирования программ; - анализ надежности систем защиты конфиденциальной информации (в том числе при использовании криптографических преобразований). В данной статье представлен предлагаемый подход к применению поиска задачи выполнимости булевых формул (satisfiability problem, SAT) для анализа надежности блочных алгоритмов шифрования, на примере стандарта легковесного шифрования - шифра PRESENT (ISO/IEC 29192-2:2019). Исследование надежности криптографических алгоритмов к алгебраическим методам анализа заключается в представлении алгоритма шифрования в виде системы нелинейных уравнений, связывающей секретный ключ шифрования с открытым и зашифрованным текстом. В качестве метода решения нелинейной системы уравнений в работе рассматривается метод сведения к поиску выполняющих наборов

* Работа выполнена при поддержке стипендии Президента РФ СП-1907.2019.5.

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