Научная статья на тему 'Коооперативный бионический алгоритм безусловной оптимизации'

Коооперативный бионический алгоритм безусловной оптимизации Текст научной статьи по специальности «Математика»

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

Текст научной работы на тему «Коооперативный бионический алгоритм безусловной оптимизации»

с использованием систем поддержки истинности // Изв. ЮФУ (Технические науки: Интеллектуальные САПР). Таганрог: Изд-во ТТИ ЮФУ, 2010. № 12 (113). С. 63-71.

7. Ngair Teow-Hin, Provan G. Focusing ATMS Problemsolving: a formal approach. Computer and Information Sc. Department Univ. of Pennsylvania Philadelphia, 1992.

8. Kenneth D. Forbus, de Kleer J. Problem Solvers. MIT Press, 1993.

References

1. De Kleer J. An Assumption-based TMS. Artificial Intelligence. 1986, vol. 28, pp. 127-162.

2. Vagin V.N., Golovina E.Yu., Zagoryanskaya A.A., Fomi-na M.V. Dostoverny i pravdopodobny vyvod v intellektualnykh sistemakh [Reliable and reasonable output in intelligent systems]. Moscow, Fizmatlit Publ., 2008, 714 p.

3. De Kleer J. Problem Solving with the ATMS. Artificial Intelligence. 1986, vol. 28, pp. 197-224.

4. Vagin V.N., Zaretskiy D.S. Assumption-based truth maintenance system in model-based diagnostics. Trudy kongressa po intellektualnym sistemam i informatsionnym tekhnologiyam "AIS-IT'10" [Proc. of congress on intelligent systems and IT "AIS-IT'lO"]. Moscow, Fizmatlit Publ., 2010, pp. 351-362 (in Russ.).

5. De Kleer J., Mackworth A.K., Reiter R. Characterizing diagnoses and systems. Artificial Intelligence. 1992, vol. 56, pp. 197-222.

6. Vagin V.N., Zaretskiy D.S. Solving diagnostics problems using truth maintenance system. IZVESTIYA SFedU. ENGINEERING SCIENCES. Tematicheskiy vypusk "Intellektualnye SAPR" [News]. Taganrog, TTI Sib. Fed. Univ. Publ., 2010, no. 12 (113), pp. 63-71 (in Russ.).

7. Ngair T.-H., Provan G. Focusing ATMS Problem-solving: a formal approach. Computer and Information Science Dep., Univ. of Pennsylvania Publ., Philadelphia, 1992.

8. Forbus K.D., de Kleer J. Problem Solvers, MIT Press, 1993.

УДК 519.6

КОООПЕРАТИВНЫЙ БИОНИЧЕСКИЙ АЛГОРИТМ БЕЗУСЛОВНОЙ ОПТИМИЗАЦИИ

Ш.А. Ахмедова, младший научный сотрудник; Е.С. Семенкин, д.т.н., профессор (Сибирский государственный аэрокосмический университет им. академика М.Ф. Решетнева, просп.. им. газ. «Красноярский рабочий», 31, г. Красноярск, 660014, Россия, в ЬаЪпа2@пЪох. ги, еидепеветепкт@уапйех. ги)

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

Ключевые слова: оптимизация, стайный алгоритм, алгоритм стай волков, алгоритм светлячков, алгоритм поиска кукушек, алгоритм летучих мышей, кооперация.

COOPERATIVE BIOLOGICALLY INSPIRED ALGORITHM FOR UNCONSTRAINED OPTIMIZATION

Akhmedova Sh.A., junior research; Semenkin E.S., Dr. Tech. Sc., professor (Academician M.F. Reshetnev Siberian State Aerospace University, Krasnoyarskiy Rabochy Av., 31, Krasnoyarsk, 660014, Russian Federation, shahnaz@inbox.ru,

eugenesemenkin@yandex.ru)

Abstract. Heuristic biologically inspired stochastic algorithms of real-parameter multiextremal functions optimization are called "swarm algorithms" and based on an imitation of a collective behavior of different kind of animals. They have demonstrated their effectiveness in many tests and are regularly used in practice. The main problem in these algorithms' application is the necessity of many parameters fine tuning that predetermines performance effectiveness. Moreover, it is impossible to know in advance which algorithm is better fitted to the problem in hand. This article suggests an approach that simplifies making a decision of the fittest algorithm choice. The approach is based on a competition and cooperation of biologically inspired algorithms when they compete for a common resource and at the same time cooperate sharing useful information. The suggested cooperative approach is described in the article, performance comparison results on a representative set of test functions are presented and results of the approach application in weight coefficients adjustment for artificial neural networks based classifiers are given.

Keywords: optimization, Particle Swarm Optimization, Wolf Pack Search, Firefly Algorithm, Cuckoo Search Algorithm, Bat Algorithm, co-operation.

Среди множества различных многоагентных стохастических алгоритмов оптимизации одним

из наиболее изученных является стайный алгоритм, или Particle Swarm Optimization (PSO) [1].

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

Помимо PSO, существуют и другие алгоритмы, использующие социальные и биологические идеи, имитирующие поведение определенных видов животных. Наибольший интерес из последних разработок представляют следующие бионические алгоритмы: алгоритм стай волков (Wolf Pack Search, WPS) [2], алгоритм светлячков (Firefly Algorithm, FFA) [3], алгоритм поиска кукушек (Cuckoo Search Algorithm, CSA) [4] и алгоритм летучих мышей (Bat Algorithm, BA) [5]. Перечисленные метаэвристики, как и PSO, изначально были разработаны для решения вещественных оптимизационных задач и наиболее близки к PSO, что отличает их от других аналогичных подходов (пчелиные алгоритмы, алгоритм умных капель и т.п.). Как уже было сказано, каждый из упомянутых алгоритмов имитирует некоторую характеристику определенного вида животных: CSA - способ откладывания яиц кукушками, BA - эхолокацию летучих мышей, FFA - излучение, исходящее от светлячков, WPS - процесс охоты стаи волков.

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

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

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

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

Таблица 1

Результаты сравнения составляющих алгоритмов

Тестовая функция Количест- Минимальное Мини-

во переменных число вычислений мальная ошибка

Сфера 2 CSA CSA

3 FFA BA

4 FFA BA

Гриванка 2 CSA PSO

3 WPS BA

4 CSA BA

Акли 2 FFA PSO

3 WPS CSA

4 CSA CSA

Гипер- 2 CSA CSA

эллипсоид 3 FFA WPS

4 CSA BA

Розенброка 2 FFA BA

3 FFA FFA

4 CSA BA

Растригина 2 BA WPS

3 CSA FFA

4 WPS FFA

Кооперативный бионический алгоритм (Co-Operation of Biology Related Algorithms, COBRA)

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

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

ляции. Таким образом, определяется лучший алгоритм для задачи на каждой итерации.

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

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

Разработанный коллективный метод оптимизации на основе стайных бионических алгоритмов был реализован в виде единой программной системы и назван COBRA (Co-Operation of Biology Related Algorithms) [6].

Тестирование разработанного алгоритма

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

Далее все пять составляющих алгоритмов и COBRA были исследованы на 28 тестовых функциях из CEC 2013 Special Session on Real-Parameter Optimization [7], среди которых пять унимодальных функций, 15 базовых многоэкстремальных функций и 8 составных функций, являющихся специальными комбинациями базовых. Размерность задач - 2, 3, 5, 10 и 30. В соответствии с методикой проведения экспериментов [7] для каждой задачи программа запускалась 51 раз. В итоге сравнение проводилось по двум критериям: самый лучший результат, полученный алгоритмом для данной задачи, и лучший средний результат.

В процессе исследований было установлено, что СOBRA показывала все более и более лучшие результаты по обоим критериям с увеличением размерности задач. По первому критерию коллективный алгоритм выигрывал у остальных 2 раза при размерности 2, 11 раз при размерности 3 и столько же раз при размерности 5. По второму критерию были следующие результаты: 19 побед, 22 победы, 24 победы при размерностях 2, 3 и 5 соответственно. При размерности 10 по первому критерию коллективный алгоритм выигрывал у остальных 18 раз, PSO - 5 раз, WPS - 4 раза, FFA - 1 раз. При размерности 30 по первому кри-

терию только у PSO и WPS было по одной победе, во всех остальных случаях выигрывал коллективный алгоритм. По второму критерию при размерности 10 у PSO было 2 победы, в то время как COBRA выиграла 26 раз, а при размерности 30 по всем функциям «победителем» оказалась COBRA.

Применение разработанного алгоритма для настройки нейронных сетей

Разработанный кооперативный алгоритм был использован для настройки весовых коэффициентов искусственных нейронных сетей (ИНС), структура которых была определена заранее: полносвязные перцептроны с 3 и 5 нейронами на одном скрытом слое, биполярные функции активации.

С помощью этих ИНС решались две практические задачи анализа данных: банковский скоринг по БД из Австралии и Германии. Исходные данные для этих задач были взяты из репозитория автоматического обучения Калифорнийского университета [8]. Для задачи банковского скоринга в Австралии число входов равно 14 (6 категориальных, 8 вещественных), 1 выход, 2 класса, размер выборки равен 690. Для задачи банковского ско-ринга в Германии число входов равно 20, 1 выход, 2 класса, размер выборки равен 1 000. На выходе получается положительное или отрицательное решение о выдаче кредита, то есть определение кредитоспособности клиента по его анкетным данным и предыстории.

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

Таблица 2

Результаты решения задач банковского скоринга

Алгоритм Ско ринг

в Австралии в Германии

2SGP 0,9027 0,8015

GP 0,8889 0,7834

Fuzzy classifier 0,8910 0,7940

C4.5 0,8986 0,7773

LR 0,8696 0,7837

Byesian 0,8470 0,6790

MLP 0,7600 0,7000

Boosting 0,8470 0,6840

Bagging 0,8520 0,6770

RSM 0,8660 0,7460

CCEL 0,7150 0,7151

k-NN 0,8744 0,7565

CART 0,8986 0,7618

ИНС (3) 0,8898 0,7809

ИНС (5) 0,8907 0,7829

В последних двух строках таблицы приведены средние значения оценки эффективности нейросе-тевых классификаторов с тремя и пятью нейронами соответственно, настроенных предложенным алгоритмом. Среднеквадратическое отклонение для этих результатов равно 0,005974 и 0,01792 для австралийской задачи и 0,007524 и 0,016866 для германской.

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

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

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

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

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

Литература

1. Kennedy J., Eberhart R. Particle Swarm Optimization. Proc. of IEEE Intern. Conf. on Neural Networks, 1995, vol. IV, pp. 1942-1948.

2. Yang Ch., Tu X., Chen J. Algorithm of Marriage in Honey Bees Optimization Based on the Wolf Pack Search. Intern. Conf. on Intelligent Pervasive Computing «IPC2007», 2007, pp. 462-467.

3. Yang X.S. Firefly algorithms for multimodal optimization. Lecture Notes in Computer Sc., 2009, no. 5792, pp. 169-178.

4. Yang X.S., Deb S. Cuckoo search via L'evy flights. Proc. of World Congress on Nature & Biologically Inspired Computing «NaBic 2009», IEEE Publications, USA, 2009, pp. 210-214.

5. Yang X.S. A new metaheuristic bat-inspired algorithm. Nature Inspired Cooperative Strategies for Optimization «NICSO 2010», Springer, SCI 284, 2010, pp. 65-74.

6. Akhmedova Sh., Semenkin E. Co-Operation of Biology Related Algorithms. Proc. of the 2013 IEEE Congress on Evolutionary Computation, Cancún, México, 2013, pp. 2207-2214.

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

7. Liang J.J., Qu B.Y., Suganthan P.N., Hernández-Díaz A.G. Problem Definitions and Evaluation Criteria for the CEC 2013 Special Session on Real-Parameter Optimization. Technical Report 2012, Computational Intelligence Laboratory, Zhengzhou Univ., Zhengzhou China, and Technical Report, Nanyang Technological Univ., Singapore.

8. Frank A., Asuncion A. UCI Machine Learning Repository. URL: http://archive.ics. uci.edu/ml (дата обращения: 01.07.2013).

References

1. Kennedy J., Eberhart R. Proc. of IEEE Int. Conf. on Neural Networks. IV. 1995, pp. 1942-1948.

2. Yang Ch., Tu X., Chen J. Int. Conf. on Intelligent Pervasive Computing - IPC2007. 2007, pp. 462-467.

3. Yang X.S. Lecture Notes in Computer Science. 2009, no. 5792, pp. 169-178.

4. Yang X.S., Deb S. Proc. of World Congress on Nature & Biologically Inspired Computing (NaBic 2009). IEEE Publ., USA, 2009, pp. 210-214.

5. Yang X.S., Nature Inspired Cooperative Strategies for Optimization (NICSO 2010). Springer, 2010, vol. 284, pp. 65-74.

6. Akhmedova Sh., Semenkin E. Proc. of the 2013 IEEE Congress on Evolutionary Computation. Cancún, México, 2013, pp. 2207-2214.

7. Liang J.J., Qu B.Y., Suganthan P.N., Hernández-Díaz A.G.

Problem Definitions and Evaluation Criteria for the CEC 2013 Special Session on Real-Parameter Optimization. Tech. Report, Zhengzhou Univ., Zhengzhou, China, Nanyang Technological Univ., Singapore, 2013.

8. Frank A., Asuncion A. UCI Machine Learning Repository. Available at: http://archive.ics. uci.edu/ml (accessed 01 July 2013).

Уважаемые читатели!

С 20 по 22 февраля 2014 г. в Минске (Республика Беларусь) состоится IV Международная научно-техническая конференция «Открытые семантические технологии проектирования интеллектуальных систем» (Open Semantic Technologies for Intelligent Systems - OSTIS-2014).

Конференция открывает цикл научных мероприятий, приуроченных к 50-летию основания Белорусского государственного университета информатики и радиоэлектроники.

Информация о конференциях OSTIS размещена на сайте http://conf.ostis.net/.

Материалы для участия в конференции представляются в оргкомитет по электронной почте ostisconf@gmail.com.

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