Научная статья на тему 'Приближённые методы оптимизации в задачах поиска максимальной клики'

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

CC BY
277
43
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Символ науки
Область наук
Ключевые слова
МАКСИМАЛЬНАЯ КЛИКА / ПРОСТАЯ ИТЕРАЦИЯ / ЛОКАЛЬНЫЙ ПОИСК / ЭВРИСТИЧЕСКИЕ АЛГОРИТМЫ

Аннотация научной статьи по математике, автор научной работы — Ярутков А. В., Шабунин Л. В.

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

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

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

СИМВОЛ НАУКИ ISSN 2410-700X № 5/2019

знаменитая змейка Рубика.

Ромбо-усечённый кубооктаэдр

Усечённый кубооктаэдр, усечённый кубоктаэдр — это полуправильный многогранник (архимедово тело) с 12 квадратными гранями, 8 гранями в виде правильного шестиугольника, 6 гранями в виде правильного восьмиугольника, 48 вершинами и 72 рёбрами.

Икосо-додекаэдр

Икосододекаэдр (рис.2) — это полуправильный многогранник, состоящий из 32 граней (12 правильных пятиугольников и 20 правильных треугольников). В икосододекаэдре 30 равных вершин, в которых сходятся два треугольника и два пятиугольника, а также 60 одинаковых рёбер, каждое из которых разделяет треугольник и пятиугольник Многогранник получается при последовательном срезании каждой из вершин икосаэдра или додекаэдра.

Усечённый икосо-додекаэдр и ромбоусечённый икосододекаэдр

Ромбоусечённый икосододекаэдр или усечённый икосододекаэдр — это полуправильный многогранник (архимедово тело) с 62 гранями, составленный из 30 квадратов, 20 правильных шестиугольников и 12 правильных десятиугольников. В каждой из его 120 одинаковых вершин сходятся одна квадратная грань, одна шестиугольная и одна десятиугольная.

Рисунок 1 - Усеченный икосаэдр Рисунок 2 - Усеченный додекаэдр

Список использованной литературы:

1. https://multiurok.ru/index.php/files/pravil-nyie-i-polupravil-nyie-mnoghoghranniki.html

2. https://gigabaza.ru/doc/97738 .html

© Фишер А.С., Лупивок С.А., Новикова А.М., 2019

УДК 519.176

Ярутков А.В.

студент 2 курса магистратуры ЧГУ им. И.Н. Ульянова,

г. Чебоксары, РФ E-mail: [email protected] Шабунин Л.В.

док. физ.-мат. наук, доцент ЧГУ им. И.Н. Ульянова

г. Чебоксары, РФ

ПРИБЛИЖЁННЫЕ МЕТОДЫ ОПТИМИЗАЦИИ В ЗАДАЧАХ ПОИСКА

МАКСИМАЛЬНОЙ КЛИКИ

Аннотация

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

СИМВОЛ НАУКИ ISSN 2410-700X № 5/2019

приведены задачи, на которых данные алгоритмы не находят верного решения.

Ключевые слова

Максимальная клика, простая итерация, локальный поиск, эвристические алгоритмы.

Задачи, в которых требуется найти максимальную клику, относятся к NP-трудным и находят свои приложения в самых различных областях (см., например, [2,4]): биоинформатика, исследование операций, теория кодирования, автоматизация радиоаппаратуры.

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

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

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

- стабильное нахождение клики с наибольшей размерностью;

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

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

одной из классических эвристик, используемой для поиска максимальной клики [1]. Общая концепция данного алгоритма заключается в постепенном уменьшении мощности графа до тех пор, пока не будет достигнуто определённое условие его остановки. Алгоритм начинает свою работу с вычисления мощности искомого графа с последующим поиском вершины с наименьшим числом смежных рёбер. Затем происходит сравнение двух параметров: мощности графа, значение которого понижено на единицу, и степени рассматриваемой вершины. Удаление вершины происходит в том случае, если значение её степени меньше текущего числа вершин графа, уменьшенного на единицу. В процессе работы алгоритм будет удалять вершины до тех пор, пока оба параметра не будут равны друг другу. К существенному недостатку этого алгоритма относится наличие лишь одного условия при работе с вершинами графа. Например, если вершины, входящие в максимальную клику, имеют степень ниже, чем остальные вершины в графе, то алгоритм на первых же итерациях избавится от нужной клики и выдаст неверный результат.

Другой классической эвристикой для поиска максимальной клики в графе является метод локального поиска посредством постепенного добавления вершин в клику [5]. Данный алгоритм использует для своей работы два множества: множество вершин клики и множество связанных с кликой вершин. Основная его идея состоит в последовательном объединении вершин, связанных с наибольшим числом смежных рёбер. Работа алгоритма начинается с поиска такой вершины, степень которой является наибольшей в рассматриваемом графе, и добавляет её в множество вершин клики. После рассматривается множество вершин, связанных с найденной, и среди них выбирается такая, которая также имеет наибольшую степень. Вершина будет выбираться произвольно, если найдется больше одной такой вершины. Этот процесс будет повторяться до тех пор, пока множество связанных с кликой вершин не станет пустым. Однако, если вершина с максимальной степенью во всем графе или из множества связанных вершин не входит в максимальную клику, то алгоритм уже не сможет найти максимальную клику. Эти два возможных случая относятся к главному недостатку алгоритма.

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

{ " }

СИМВОЛ НАУКИ ISSN 2410-700X № 5/2019

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

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

1. Вычислительный подход к решению задачи о поиске максимальной клики / М.А. Грибков, А.В. Алексеевский, С.А. Спирин, М.А. Короткова // Труды ИСА РАН. 2006. №25. С. 185-192.

2. Груздева Т.В. Решение задачи о клике сведением к задаче с d.c. ограничением // Дискретный анализ и исследование операций. 2008. №15(6). С. 20-33.

3. Козин И.В., Полюга С.И. Фрагментарные модели для некоторых экстремальных задач на графах // Математические машины и системы. 2014. №1. С. 143-150.

4. Оре О. Теория графов. - М.: Мир, 1982. - 336 с.

5. Katayama K., Hamamoto A., Narihisa H. An effective local search for the maximum clique problem // Information Processing Letters. 2005. №95. P. 503-511.

© Ярутков А.В., Шабунин Л.В., 2019

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