Гладков Леонид Анатольевич
Технологический институт федерального государственного автономного образовательного учреждения высшего профессионального образования «Южный федеральный университет» в г. Таганроге.
E-mail: [email protected].
347928, г. Таганрог, пер. Некрасовский, 44.
Тел.: 88634371625.
Кафедра системного анализа и телекоммуникаций; доцент.
Gladkov Leonid Anatol’evich
Taganrog Institute of Technology - Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”.
E-mail: [email protected].
44, Nekrasovsky, Taganrog, 347928, Russia.
Phone: +78634371743.
The Department of System Analysis and Telecommunications; Associate Professor.
УДК 681.3
B.M. Курейчик, АЛ. Кажаров
ИСПОЛЬЗОВАНИЕ РОЕВОГО ИНТЕЛЛЕКТА В РЕШЕНИИ NP-ТРУДНЫХ ЗАДАЧ*
Роевой интеллект описывает коллективное поведение децентрализованной самоор-. -тод оптимизации. Термин был введен Херардо Бени и Ван Цзином в 1989 году. Системы , , -вующих между собой и с окружающей средой. Сами агенты обычно довольно просты, но все вместе, локально взаимодействуя, создают, так называемый, роевой интеллект. Ста-
NP- -
дач. Основная идея этих алгоритмов - моделирование поведения роя. В ходе данной работы были исследованы муравьиный, пчелиный и метод роя частиц. С использованием этих алгоритмов решены следующие задачи: задача коммивояжера, маршрутизации авто, , . -либо изменений в ее интерпретации решаются для проектирования СБИС, логистических расчетов. В ходе проделанной работы была разработана программа на ЭВМ, реализующая . -
ре параметров алгоритмов. Экспериментальные исследования доказали эффективность роевых алгоритмов по сравнению со стандартными итерационными, эвристическими и
.
Роевой интеллект; муравьиные алгоритмы; МА; пчелиные алгоритмы; роевой алгоритм; задача о коммивояжере; ЗК; NP-задача; СБИС; генетические алгоритмы.
V.M. Kureichik, A.A. Kazharov SWARM INTELLIGENCE USING FOR NP-TASKS SOLVING
Swarm intelligence (SI) is the collective behaviour of decentralized, self-organized systems, natural or artificial. The concept is employed in work on artificial intelligence. The expression was introduced by Gerardo Beni and Jing Wang in 1989. SI systems are typically made up of a
population of simple agents or boids interacting locally with one another and with their environ-
ment. The agents follow very simple rules, and although there is no centralized control structure dictating how individual agents should behave, local, and to a certain degree random, interactions
*
Работа выполнена при частичной поддержке РФФИ (проекты: № 10-01-90017, № 09-01-00492). 30
between such agents lead to the emergence of "intelligent" global behavior, unknown to the individual agents. This paper is dedicated to the developing of swarm intelligence algorithms for the solving of NP-complete tasks. Modeling of behavior of swarm is the main idea of these algorithms. Ant colony optimization, bee algorithms and particle swarm optimization was searched and developed during this work. Traveling salesman problem, vehicle routing problem, graph partition task, placement for the very-large-scale-integration (VLSI) was solved by using these algorithms. These tasks without any modifications in its interpretation is solved for designing VLSI and some logistic calculations. A computer program was created during this work. This program realizes the model of swarm's behavior with modifications. Results of the investigations allow to judge about optimum choice of. Experimental researches have proved efficiency of the ACO, BCO, PSO in comparison with standard iteration algorithms, simple heuristic and genetic algorithms.
Swarm Intelligence; Ant colony optimization; ACO; Bee colony algorithms; particle swarm optimization; traveling salesman problem; TSP; NP task; VLSI; genetic algorithms.
Введение. В данной статье представлены результаты исследования и разработок различных роевых алгоритмов для решения NP-полных графовых задач. Понятие роевого интеллекта (Swarm intelligence) введен Херардо Бени и Ван Цзи-ном в 1989 году [1]. Под роевым интеллектом понимают самоорганизующуюся систему, состоящую из множества агентов. Агенты подчиняются простым правилам поведения в окружающей среде. Их простое взаимодействие определяет кол. , -ся роевой интеллект. Примерами таких систем могут быть муравьиная колония, пчелиный рой, стая птиц, рыб и т.д.
В работе рассмотрены следующие алгоритмы роевого интеллекта: муравьи, , .
NP- , -
периментальные исследования и сравнения.
.
научного направления, которое можно назвать «природные вычисления» [2]. Исследования в этой области начались в середине 90-х гг. XX в. Автором идеи является Марко Дориго [3-5]. В основе этой идеи лежит моделирование поведения . -стыми правилами автономного поведения особей. Однако, несмотря на примитивность поведения каждого отдельного муравья, поведение всей колонии оказывается достаточно разумным [6]. Основой поведения муравьиной колонии служит низкоуровневое взаимодействие, благодаря которому, в целом, колония представляет собой разумную многоагентную систему. Взаимодействие определяется через специальное химическое вещество - феромон, откладываемого муравьями на прой-.
желания пройти кратчайший путь, но и из опыта других муравьев, информацию о котором получаем непосредственно через уровень феромона на каждом пути. Концентрация феромона определяет желание особи выбрать тот или иной путь [6]. В работах [6-9] подробно описаны применения муравьиного алгоритма, его модификации и результаты экспериментальных исследований.
. -. , каждом шаге будут выбирать как элитные участки для исследования, так и участки в окрестности элитных, что позволит, во-первых, разнообразить популяцию решений на последующих итерациях, во-вторых, увеличить вероятность обнаружения решений близких к оптимальным [10]. Приведем основные понятия пчелиного :
1) источник нектара (цветок, участок);
2) фуражиры (рабочие пчелы);
3) - .
Источник нектара характеризуется значимостью, определяемой различными параметрами. Фуражиры закреплены за источниками нектара. Количество всех пчел в этих участках больше, чем на остальных. Среднее количество разведчиков в рое составляет 5-10 %. Вернувшись в улей, пчелы «обмениваются информацией» посредством танцев на, так называемой, закрытой площадке для танцев [10]. Если разведчики нашли лучшие источники нектара, то за ними могут быть закреплены .
Рассмотрим все эти определения на примере задачи поиска глобального минимума функции:
f(x, y) = x2 +y2, (1)
модель которого приведена на рис. 1.
источники
Рис. 1. Модель участка в пространстве поиска для функции f(x, y) = X +y2
При решении задач нахождения глобальных экстремумов сложных многомерных функций границы участка определяются как [х1-г; х]+г][л2-г; х2+г]...[хп-г; хп+г], где х, - координата пчелы (параметр функции), г - радиус (р^мер) участка, п - количество параметров функции, в данном случае - 2 (^ у).
Пусть пространство поиска представляет собой двумерное пространство. Как видно из рисунка (см. рис. 1) и ограничений, пчела может перемещаться в другие источники нектара только в рамках одного участка, ограниченного радиусом. Количество нектара обратно пропорционально значению функции в координатах ^ у.
, -ся от предыдущего.
Пусть решение представляет собой вектор H. Областью поиска нектара для
, п! (
всех возможных перестановок вектора H). Расположение источника нектара характеризуется конкретной перестановкой H, решением. Таким образом, координатами источника является решение H. Количество нектара на источнике обратно пропорционально ЦФ. Участок имеет размеры, где размер - количество решений «близких» к H. Близость между векторами определяется значением расстояния Хемминга между ними. К примеру, решения {5,2,7,3,4,1,6} и {5,4,7,3,2,1,6} являются «близкими», т.е. в пространстве поиска они располагаются рядом, находятся на одном «участке». Рассмотрим пример перемещения пчелы для данной задачи на рис. 2.
Пространство поиска
А} 4 2 5 6 3 1
В, 4 6 5 2 3 1
1 2 3 4 & 6
. 2.
Приведём словесное описание алгоритма пчёл:
1. .
2. Оценка полезности участков.
3. Выбор участков для поиска в их окрестности.
4. Отправка фуражиров.
5. .
6. Отправка пчёл-р^ведчиков.
7. Случайный поиск.
8. Оценка полезности новых участков.
9. Если условие останова не выполняется, то переход к п. 2.
10. .
,
исследование перспективных областей и их окрестностей. В конце работы алгоритма популяция решений будет состоять из двух частей: пчёлы с лучшими значениями ЦФ элитных участков, а также группы рабочих пчёл со случайными .
числа вершин - O(n2).
Метод роя частиц. Метод роя частиц (МРЧ, Particle Swarm Optimization -
PSO) - метод численной оптимизации, для использования которого не требуется знать точного градиента оптимизируемой функции. МРЧ был доказан Кеннеди, Эберхартом и Ши [11,12] и изначально предназначался для имитации социального поведения. Обширное исследование приложений МРЧ сделано Поли [15,16]. МРЧ оптимизирует функцию, поддерживая популяцию возможных решений, называе-, -
.
этом пространстве положения, которое постоянно изменяется при нахождении частицами более выгодных положений.
В основу метода положен тот факт, что при формировании стаи птиц (насе-) « », -рость полета [17]. В методе оптимизации роем частиц агентами являются частицы в пространстве параметров задачи оптимизации. В каждый момент времени частицы имеют в этом пространстве некоторое положение и вектор скорости. Для каждого положения частицы вычисляется соответствующее значение целевой функ,
и скорость в пространстве поиска [18].
На каждой итерации в классическом методе роя частиц выполняются сле-:
(2)
.
V = V +
y i ,t+l y i ,t ~
и [о,P}*(x‘1 -Xi,t),
(3)
где г - момент времени, номер итерации; хг - вектор координаты г-й частицы;
X - вектор координаты лучшей частицы;
и[0,р] - вектор псевдослучайных чисел в интервале и[О,0];
- , ;
У - скорость г-й частицы.
Условием останова алгоритма является либо ограничение по количеству ите-, .
Представленный алгоритм был реализован для решения задачи планирования СБИС [19]. На рис. 3 показан пример работы метода роя частиц.
Рис. З.Пргшер планирования СБИС на основе метода роя частиц
Проведены экспериментальные сравнения с генетическим алгоритмом. Решения, полученные с помощью PSO на 5-10 % ближе к глобальному оптимуму, чем с помощью генетического алгоритма.
Заключение. Вышеописанные алгоритмы были разработаны и реализованы в среде разработки Code Gear C++ Builder, Microsoft Visual Studio для решения следующих задач:
1) разбиение графа;
2) раскраска графа;
3) задача коммивояжера;
4) маршрутизация автотранспорта;
5) ;
6) задача о назначениях.
Экспериментальные исследования показали эффективность алгоритмов роевого интеллекта по сравнению с генетическими и эволюционными алгоритмами [20]. На рис. 4 приведен пример решения классической задачи разбиения графа на
подграфы с заданными мощностями. Для решения задачи были реализованы следующие алгоритмы: итерационный, эволюционный, генетический, муравьиный, .
Рис. 4. Разбиение графа, графики зависимости целевых функций от времени для итерационного, эволюционного, генетического, муравьиного и пчелиного
алгоритмов
- 100, - 5,
подграфа - 20, время работы для всех алгоритмов - 10 секунд. Критерий оптими-- . - . -ным алгоритмом получено решение с целевой функцией равной 822, для эволюционного - 804, генетического - 765, муравьиного - 694, пчелиного - 690. Как видно . 4,
с помощью муравьиного и пчелиного алгоритмов.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Beni G., Wang J. Swarm Intelligence in Cellular Robotic Systems, Proceed. NATO Advanced Workshop on Robots and Biological Systems, Tuscany, Italy, June 26-30 (1989).
2. Штовба С.Д. Муравьиные алгоритмы // Exponenta Pro. Математика в приложениях.
- 2003. - № 4. - С. 70-75.
3. Bonavear F., Dorigo M. Swarm Intelligence: from Natural to Artificial Systems. Oxford university Press. 1999.
4. Corne D., Dorigo M., Glover F. New Ideas in Optimization. McGrav-Hill. 1999.
5. . Web- ,
http://iridia.ulb.ac.be/dorigo/ACO/AcO.html.
6. . ., . .
// . - .: , 2010. - 1.
7. . . //
-2010.
Труды конференции. Т. 2. - М.: Физматлит, 2010. - С. 423-431.
8. . .
// V -
практической конференции “Интегрированные модели и мягкие вычисления в искусственном интеллекте”. Т.2. - М.: Физматлит, 2009. - C. 620-627.
9. . . // .
Технические науки. - 2009. - № 4 (93). - С. 46-52.
10. Олейник АЛ., Олейник АЛ., Субботин СЛ. Ч. III. Интеллектуальные мультиагентные
.
11. . ., . . -нии пчёл. - 2009.
12. . ., . . //
ЮФУ. Технические науки. - 2010. - № 12 (113). - С. 12-19.
13. Particle Swarm Optimization. Proceedings of IEEE International Conference on Neural Networks IV. - 1995. - P. 1942-1948.
14. A modified particle swarm optimizer. Proceedings of IEEE International Conference on Evolutionary Computation. - 1998. - P. 69-73.
15. Poli R. (2007). "An analysis of publications on particle swarm optimisation applications". Department of Computer Science, University of Essex, UK.
16. Poli R. (2008). «Analysis of the publications on the applications of particle swarm optimisation» // Journal of Artificial Evolution and Applications: 1-10. DOI: 10.1155/2008/685175.
17. Mendes R, Kennedy J., Neves J. Watch thy neighbor or how the swarm can learn from its environment // Proceedings of Swarm Intelligence Symposium 2003. - IEEE, 2003. - P. 88-94.
18. Kennedy J., Mendes R. Population structure and particle swarm performance // Proceedings of the 2002 Evolutionary Computation Congress. - Washington, IEEE Computer Society.
- P. 1671-1676.
19. . ., . .
// . . - 2009. - 4 (93) . - . 25-33.
20. . ., . ., . . . - - - :
« », 2004.
. . ., . . .
Курейчик Виктор Михайлович
Технологический институт федерального государственного автономного образовательного учреждения высшего профессионального образования «Южный федеральный университет» в г. Таганроге.
347928, г. Таганрог, пер. Некрасовский, 44.
E-mail: [email protected].
.: 88634393260.
Заместитель руководителя по научной и инновационной деятельности; профессор.
Кажаров Аскер Артурович
E-mail: [email protected].
.: +79064233689.
Кафедра систем автоматизированного проектирования; студент.
Kureichik Victor Michylovich
Taganrog Institute of Technology - Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”.
E-mail: [email protected].
44, Nekrasovskiy, Taganrog, 347928, Russia.
Phone: +78634393260.
The Deputy the Head on Scientific Work and Innovations; Professor.
Kazharov Asker Arturovich
E-mail: [email protected].
Phone: +79064233689.
Department of Computer Aided Design; Student.
З6