Научная статья на тему 'МЕТОД СВЕТЛЯЧКОВОЙ ОПТИМИЗАЦИИ ДЛЯ РЕШЕНИЯ КОМБИНАТОРНО-ЛОГИЧЕСКИХ ЗАДАЧ НА ГРАФАХ'

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

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Курейчик Владимир Викторович, Бова Виктория Викторовна, Курейчик Владимир Владимирович

В статье рассмотрено решение NP-сложных комбинаторно-логических задач на графах. Для ее решения предлагается использовать биоинспирированный подход, основанный на модифицированном методе светлячковой оптимизации. В качестве модификации предложенного подхода в работе введены процедуры динамического изменения области поиска, что позволяет избегать локальных оптимумов . Проведенные серии тестов и экспериментов показали перспективность применения данного метода. Временная сложность разработанного алгоритма в лучшем случае »O(nlogn), в худшем случае - О(n2).

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Курейчик Владимир Викторович, Бова Виктория Викторовна, Курейчик Владимир Владимирович

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

FIRELY OPTIMIZATION METHOD FOR SOLVING COMBINATORIAL LOGIC PROBLEMS ON GRAPHS

The article describes the solution of NP-complex combinatorial-logical problems on graphs. The authors propose to use a bioinspired approach based on a modified firefly optimization method. As a modification of the proposed approach, the work introduces procedures for dynamically changing the search area, which allows avoiding local optima. A series of tests and experiments have shown that this method is promising. The time complexity of the developed algorithm in the best case » O(nlogn), in the worst case - О(n2).

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

УДК 004.81 ГРНТИ 28.23.19

В.В. Курейчик, В.В. Бова, В.В. Курейчик

Южный федеральный университет

DOI: Ш.47501ЛTNOU.202LL 20-24

МЕТОД СВЕТЛЯЧКОВОЙ ОПТИМИЗАЦИИ ДЛЯ РЕШЕНИЯ КОМБИНАТОРНО-ЛОГИЧЕСКИХ ЗАДАЧ НА ГРАФАХ

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

FIRELY OPTIMIZATION METHOD FOR SOLVING COMBINATORIAL LOGIC PROBLEMS ON GRAPHS

The article describes the solution of NP-complex combinatorial-logical problems on graphs. The authors propose to use a bioinspired approach based on a modified firefly optimization method. As a modification of the proposed approach, the work introduces procedures for dynamically changing the search area, which allows avoiding local optima. A series of tests and experiments have shown that this method is promising. The time complexity of the developed algorithm in the best case &O(nlogn), in the worst case - О(п2). Keywords: discrete optimization, bioinspired search, firefly algorithm.

1. Введение

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

2. Описание задачи

Под оптимизационной задачей (ОЗ) на графах или гиперграфах понимается задача, в которой необходимо найти решение, в некотором смысле наилучшее или, как говорят, оптимальное. Оно может быть принято оптимальным на основе критерия (меры оценки исследуемого явления) или целевой функции (ЦФ) [2]. На практике существует большое количество ОЗ и они могут иметь различную природу. Однако их постановка имеет много аналогий. Во-первых, при постановки ОЗ часто указывается

V. Kureichik, V. Bova, V. Kureichik Jr

Южный федеральный университет

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

Итак, ОЗ на графах и гиперграфах записывается в виде кортежа длины три: < M, D, F >. Следовательно, математическая модель оптимизационной задачи состоит из трех составляющих: целевой функции, ограничений, граничных условий.

3. Описание метода свелячковой оптимизации

Светлячковый метод, предложенный Янгом в 2009 году, моделирует поведение светлячков в процессе поиска партнеров [3-8].

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

Рассмотрим модель поведения светлячков. От интенсивности свечения светлячков зависит их привлекательность вне зависимости от пола. Заметим, что интенсивность свечения увеличивается с уменьшением расстояния между соседними светлячками. При отсутствии видимого свечения светлячки двигаются в случайном направлении.

На основе описанной модели поведения светлячков в живой природе в статье предлагается модифицированная модель светлячковой оптимизации, несколько отличающаяся от природной [3,7]. Опишем ее более детально. В этой модели на предварительном этапе производится создание популяции агентов и их распределение в пространстве поиска. Далее каждому агенту присваивается определенное количество лю-циферина для принятия решения в своей области поиска. От количества люциферина зависит уровень интенсивности свечения агентов. Для каждого агента введено понятие радиуса окрестности поиска^-, который является динамически изменяющийся величиной и зависит от числа агентов, находящихся в одной области поиска. Если агентов в одной области поиска много, ее радиус уменьшается и наоборот, если мало - увеличивается. Причем каждый ьй агент рассматривает j-го агента как соседа, только если он сам расположен в пределах радиуса окрестности поиска, а второй j-й агент сосед имеет большее количество люциферина, т.е. обладает большей интенсивностью свечения ^ > Далее этот ьй агент движется в сторону ]-го агента, так как у ]-го агента уровень свечения выше. В данном процессе используется вероятностный механизм поведения. Отметим, что целевой функцией в методе светлячковой оптимизации является уровень интенсивности свечения каждого агента в текущем положении. Причем, чем выше этот уровень интенсивности свечения, тем значит больше значение целевой функции. Авторы предлагают использовать следующие механизмы поведения колонии светлячков. Это начальное распределение светлячков в пространстве поиска, генерация нового положения светлячков в более перспективную область поиска, обновление уровня люциферина и обновление радиуса окрестности поиска каждого светлячка.

3. Разработка светлячкового алгоритма

На основе рассмотренной модели поведения роя святлячков и выделенных ключевых операций, авторы предлагают модифицированный светлячковый алгоритм, ориентированный на решение комбинаторно-логических задач на графах. Укрупненная структурная схема данного алгоритма приведена на рис.1 [6,7].

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

Далее на основе заданного rt-(радиуса окрестности поиска) определяется множество соседей NL(t) для i-х агентов. Причем каждый i-й агент, на основе вероятностного механизма, выбирает то направление движения в сторону того j-го агента, входящего в окрестности радиуса поиска, у которого интенсивность свечения выше, чем его собственная.

Затем производится генерация нового положения агента. Здесь i-й агент на основе известных методов селекции [2] выбирает j-го агента и движется в его направлении.

Рис.1. Укрупненная схема алгоритма светлячковой оптимизации

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

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

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

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

Экспериментальные исследования проводились на случайных графах, сгенерированных на основе модели Эрдеша - Реньи. Для проведения экспериментальных исследований были выбраны простой генетический алгоритм (ГА)[2], светлячковый алгоритм [6,7], а также разработанный модифицированный алгоритм светлячковой оптимизации (МОА).

Приведем и проанализируем зависимости качества и времени работы данных алгоритмов от количества вершин и ребер графовой модели.

Качество работы алгоритма рассчитывалось по следующей формуле:

Рн-П(

А =■

Ра

где Fh- начальное значение целевой функции, Fk- конечное значение целевой функции, А- оценочная функция изменения суммарной длины соединений в графовой модели выраженная в процентах.

Приведем результаты вычислительного эксперимента в виде гистограмм рис. 2 и 3.

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

60D 500

200 100

Тестовый граф

Рис.2. Гистограмма сравнения времени работы алгоритмов размещения от тестовых графов

12

а? . 1П

< в

1 г

а.

$ s а а í - о X 3- г о к ГА ■ СА ■ COA

0

2 4 5 7

Тестовый граф

Рис.3. Гистограмма сравнения значений оценочной функции алгоритмов размещения от тестовых графов

Заключение

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

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

Исследование осуществлено при поддержке гранта РФФИ № 19-01-00059-а.

Литература

1. Кормен Т., Лейзерсон И., Ривест Р. Алгоритмы. Построение и анализ. - М.: МЦМО, 2000. 1300 с.

2. Курейчик В.В., Курейчик В.М., Гладков Л.А., Сороколетов П.В. Бионспириро-ванные методы в оптимизации: монография. - М.: Физмалит, 2009. 384 с.

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

4. Yang, X.S. Firefly algorithms for multimodal optimization // In proceedings of the 5th Symposium on Stochastic Algorithms, Foundations and Applications. 2009. P. 169-178.

5. Ghose D., Krishnand K. N. Glowworm swarm optimization: A new method for optimizing multimodal functions / // Int. Computational Intelligence Studies. 2009. № 1 (1). P. 93-119.

6. Kureichik Vl., Kureichik V., Kureichik L., Zaruba D. Bioinspired algorithm for 2D packing problem // Advances in Intelligent Systems and Computing. 2019. P. 39-46.

7. Курейчик В.В., Заруба Д.В., Запорожец Д.Ю. Алгоритм параметрической оптимизации на основе модели поведения роя светлячков // Известия ЮФУ. Технические науки. 2015. № 6 (167). С. 6-15.

8. Oramus, Piotr Improvements to glowworm swarm optimization algorithm // Computer Science. 2010. № 11. Р. 7-20.

Сведения об авторах Владимир Викторович Курейчик

д.т.н., профессор

зав.кафедрой САПР ЮФУ

Южный федеральный университет

Таганрог, Россия

Эл. почта: vkur@sfedu.ru

Виктория Викторовна Бова

доцент каф. САПР ЮФУ

Южный федеральный университет

Таганрог, Россия

Эл. почта: vvbova@yandex.ru

Владимир Владимирович Курейчик

к.т.н., ООО «Газпром подземремонт Уренгой»

Южный федеральный университет

Таганрог, Россия

Эл. почта: kureichik@yandex.ru

Information about authors Vladimir Kureichik

Head of the Department of Computer-Aided Design Systems, SFU Southern Federal University Taganrog, Russian Federation E-mail: vkur@sfedu.ru Victoria Bova teacher, SFU

Southern Federal University Taganrog, Russian Federation E-mail: vvbova@yyandex. ru Vladimir Kureichik Jr.

PhD, LTD "Gazprom podzemremont Urengoy" Southern Federal University Таганрог, Russian Federation E-mail: kureichik@yandex.ru

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