Научная статья на тему 'Решение задачи глобальной оптимизации модифицированным алгоритмом летучих мышей'

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

CC BY
868
161
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
алгоритм летучих мышей / популяционный алгоритм / роевой интеллект / глобальная оптимизация / bat algorithm / population algorithm / swarm intelligence / global optimization

Аннотация научной статьи по математике, автор научной работы — Красношлык Н. А.

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

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

Похожие темы научных работ по математике , автор научной работы — Красношлык Н. А.

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

A MODIFIED BAT ALGORITHM FOR SOLVING GLOBAL OPTIMIZATION PROBLEM

In this paper we consider a bat algorithm for solving the problem of global optimization. This metaheuristic algorithm applies to swarm intelligence algorithms, which are developing rapidly in recent years. The aim of the work is to improve the bat algorithm, study its efficiency and application for solving optimization problems. A modified version of the algorithm in which to calculate speed of the bats used the technique of particle swarm optimization is proposed. The computational experiments have been conducted to compare the accuracy and the speed of convergence of the canonical and the modified algorithms. It was found that the proposed version of the algorithm is more effective in finding the global minimum of unimodal and multimodal test functions. The dependence of the efficiency of modified bat algorithm from the set parameters is investigated. As variable parameters chosen initial values of the loudness and pulse emission rate emitted by bats. The modified algorithm is applied to solve practical problem of minimize the cost of pressure vessel design. The comparison of the solution of the optimization problem with the results of other authors who used both classical and population algorithms was conducted.

Текст научной работы на тему «Решение задачи глобальной оптимизации модифицированным алгоритмом летучих мышей»

УДК 519.6:004.8

Красношлык Н. А.

Канд. техн. наук, доцент кафедры прикладной математики и информатики Черкасского национального университета

имени Богдана Хмельницкого, Черкассы, Украина

РЕШЕНИЕ ЗАДАЧИ ГЛОБАЛЬНОЙ ОПТИМИЗАЦИИ МОДИФИЦИРОВАННЫМ АЛГОРИТМОМ ЛЕТУЧИХ МЫШЕЙ

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

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

НОМЕНКЛАТУРА

А{ - громкость звукового сигнала;

A(t+1) - громкость сигнала i -ой летучей мыши на (/+1) итерации;

A(t) - среднее значение громкости звуковых сигналов всех летучих мышей;

Ci, c'2 - заданные константы; f (x) - целевая функция; F (x) - вспомогательная целевая функция; gj (x) - ограничения-неравенства; i - номер летучей мыши;

L - длина цилиндрической части сосуда высокого давления;

m - размерность пространства; N - количество летучих мышей в популяции; Г - интенсивность звукового сигнала;

r(t+1) - интенсивность сигнала i -ой летучей на (/+1) итерации;

rand - случайное число из интервала [0, 1]; R - внутренний радиус цилиндрической оболочки сосуда высокого давления;

t - номер итерации алгоритма; /Max - максимальное число итераций алгоритма; Ts - толщина стенки цилиндра сосуда высокого давления;

Th - толщина сферической головки сосуда высокого давления;

Vi - скорость летучей мыши;

(t) . й й V ' - скорость перемещения i -ой летучей мыши на

итерации t ;

Xi - текущее положение летучей мыши;

(t) ■ - -xi > - положение i-ой летучей мыши на итерации t;

хтт - минимальное значение координаты летучей мыши;

хтах - максимальное значение координаты летучей мыши;

х - точка глобального минимума; х - положение летучей мыши, в котором найдено лучшее глобальное решение;

х^ - положение летучей мыши, в котором найдено ее лучшее решение;

X - множество допустимых решений; а - заданный коэффициент из интервала [0,1]; в - случайное число из интервала [0,1]; У - заданный коэффициент; е - случайное число из интервала [-1,1]; М-j - константы штрафа; ^1, - случайные числа из интервала [0,1]; X - коэффициент сжатия; юг- - частота звукового сигнала; ютт - минимальное значение частоты звукового сигнала;

ютах - максимальное значение частоты звукового сигнала.

ВВЕДЕНИЕ

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

© Красношлык Н. А., 2015

DOI 10.15588/1607-3274-2015-4-14

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

Стохастические поисковые алгоритмы начали интенсивно развиваться в 1980-х гг, в литературе их также называют метаэврестическими, популяционными, много-агентными и алгоритмами роевого интеллекта (Swarm intelligence) [1]. Данные алгоритмы предполагают одновременную обработку нескольких возможных вариантов решения оптимизационной задачи. Еще одной особенностью подобных алгоритмов является их бионическая природа. Многоагентные алгоритмы описывают динамику поведения групп различных социальных животных, птиц, насекомых и прочих агентов некоторой биологической системы, которые локально взаимодействуют между собой и с окружающей средой. Коллективное поведение группы агентов позволяет им решать различные сложные практические задачи в природе, что свидетельствует про эффективность алгоритмов роевого интеллекта, моделирующих их поведение. Поэтому актуальной является задача построения и исследования популяционных алгоритмов, а также расширение области их применения [2].

Среди многообразия популяционных алгоритмов можно выделить следующие группы: алгоритмы, инспирированные живой природой (nature-inspired algorithms); алгоритмы, инспирированные неживой природой; алгоритмы, инспирированные человеческим обществом и другие [3]. К наиболее известным алгоритмам, вдохновленным живой природой, относятся: муравьиный алгоритм (Ant Colony Optimization, 1992), метод роя частиц (Particle Swarm Optimization, 1995), бактериальная оптимизация (Bacterial Optimisation, 2002), алгоритм пчелиного роя (Bees Algorithm, 2005), алгоритм светлячков (Firefly Algorithm, 2007), поиск косяком рыб (Fish School Searh, 2008), алгоритм кукушки (Cuckoo Search, 2009), алгоритм летучих мышей (Bat Algorithm, 2010) и др. Алгоритмы, инспирированные неживой природой, имитируют процессы, происходящие в физике, химии и др., в частности это: стохастический диффузионный поиск (Stochastic Diffusion Search, 1989), дифференциальная эволюция (Differential Evolution, 1997), электромагнитный алгоритм (ElectroMagnetism-like Algorithm, 2003), гармонический поиск (Harmony Search, 2008), алгоритм гравитационного поиска (Gravitational Search, 2009) и др. К алгоритмам, инспирированные человеческим обществом, принадлежат: алгоритм эволюции разума (Mind Evolutionary Computation, 1998), культурный алгоритм (Cultural Algorithm, 1994) и др.

Объектом данного исследования является процесс решения задачи глобальной оптимизации при помощи алгоритмов роевого интеллекта. Одним из новых алгоритмов данного типа является алгоритм, инспирированный поведением летучих мышей (алгоритм летучих мышей), предложенный Xin-She Yang в 2010 г [4]. Этот алгоритм является потенциально более мощным, чем алгоритм роя частиц, генетический алгоритм, а так же гармонический поиск. Более того, гармонический поиск и алгоритм роя частиц являются особыми случаями алгоритма летучих мышей при соответствующих упрощениях [5].

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

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

1 ПОСТАНОВКА ЗАДАЧИ

Дана целевая функция f (x), определенная на множестве допустимых решений X ç Rm.

Требуется найти глобальный условный минимум функции f (x) на множестве X:

f ( x*) = min f ( x), (i)

xeX ç Rm

где x = (x1,x2,..., xm)T, X = {x | xt 6 [xmin, xmax], ' 6 1,m}.

Задача поиска максимума функции f ( x) сводится к задаче поиска минимума:

f (x* ) = max f (x) = - min (- f (x)).

x6XçRm x6XçRm

2 ОБЗОР ЛИТЕРАТУРЫ

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

Рассматриваемый алгоритм летучих мышей в целом является достаточно эффективным, однако, как и любой другой популяционный алгоритм, он не является универсальным методом решения всех оптимизационных задач. Для усовершенствования и расширения области применения алгоритма на данный момент предложено немало его модификаций. Так, автор алгоритма в 2011 г. обобщил его для многоэкстремальных оптимизационных задач, и получил многокритериальный алгоритм летучих мышей (Multi-objective Bat Algorithm) [6]. Nakamura R. и др. в 2012 г разработали бинарный алгоритм летучих мышей (Binary Bat Algorithm) для решения задач комбинаторной оптимизации [7]. Многие модификации алгоритма летучих мышей, получают путем гибридизации как с различными популяционными алгоритмами, так и с абсолютно другими методами. Среди таких алгоритмов, например: гибридный алгоритм летучих мышей (Hybrid Bat Algorithm), который получен Fister I. J. и др. в 2013 г [8] в результате гибридизации с алгоритмом дифференциальной эволюции; комбинированный алгоритм летучих мышей и гармонического поиска, предложили G. Wang и L. Guo [9] и т. д.

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

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

3 МАТЕРИАЛЫ И МЕТОДЫ

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

Работа алгоритма основывается на следующей модели поведения летучих мышей [4]:

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

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

и громкость Л1. При этом они могут изменять как частоту, так и интенсивность испускаемых импульсов Г е [0,1], в зависимости от близости к цели.

3. Громкость звукового сигнала изменяется от большего начального значения А до меньшего заданного Л.

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

= romin + (®max - romin ) ' Р

(f+1) (t ) , (t ) v) '= v) ' + (x) '- x ) •rai,

+1)= xf )+ v(+1),

(2)

(3)

(4)

где Юг е [ютт,Ютах].

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

x(new)= x)old )+ s • A(t ).

(5)

Эволюция параметров, характеризующих испускаемые звуковые сигналы, осуществляется по формулам:

A(+1) =a.A,(t),

r(t+1) = г(0).(1 -e~Jt),

(6)

(7)

здесь рекомендуемые значения констант а и у равны 0,9.

Согласно (6)-(7), с увеличением числа итераций громкость испускаемых звуковых сигналов будет уменьшать-

ся, а их интенсивность увеличиваться, моделируя этим приближение летучей мыши к цели:

A(t) ^ 0, r/t} ^ r/0) при t ^œ.

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

1. Инициализация популяции: задать начальное положение xi и скорость vi каждой i -ой летучей мыши,

i=1N.

2. Инициализация характеристик звуковых импульсов: задать частоту юг-, интенсивность r\ и громкость Ai для

каждой i-ой летучей мыши, i = 1, N.

3. Пока t < tMax

4. Для i = 1, N

5. Перемещение каждой i-ой летучей мыши по формулам (2)-(4).

6. Если rand > ri

7. Выполнение локального поиска в окрестности текущего положения путем случайного блуждания по формуле (5).

8. Конец если.

9. Если rand < Ai и f ( xi1™) ) < f ( x)

m TT (t+1) y (new)

10. Новое положение принято x) ^ x) '.

11. Уменьшить Ai и увеличить r согласно (6)-(7).

12. Конец если

13. Обновить x.

14. Конец для.

15. Увеличить счетчик числа итераций t ^ t + 1.

16. Конец пока.

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

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

для j = 1,m

если rand > ri

jew)= xjld )+s. A(t )

конец если

конец для

Также в процессе миграции летучих мышей целесообразно использовать информацию не только о глобальном лучшем решении, выбранном среди всех, но и о лучшем решении, найденном каждой летучей мышью. Модифицируем способ вычисления скорости перемещения летучих мышей, используя подход, предложенный M. Clerc и J. Kennedy для алгоритма роя частиц [11]. Результирующая скорость каждой летучей мыши определяется следующими формулами:

X =

2-ф-\/ф2 -4ф

ф = <4 + C2,

^^+1) = С1Е1(х^- - х( )) + С282(X - ))),

(+1) -(г) , (г) v} ' = ;+ (х) '- х) -юг-,

где С1 = с2 = 2,05.

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

4 ЭКСПЕРИМЕНТЫ

Для проведения вычислительных экспериментов выбрали ряд тестовых функций:

1. Функция де Джонга:

т

Жх) = Хх), -10 < х < 10. )=1

Глобальный минимум функции Л(х*) = 0 при

*

х = (0,0,...,0).

2. Функция Розенброка:

т-11 \

/2(х) = X ((х -1)2 +100(хг+1 - х2)2 ), -5 < х < 5.

г=1

Глобальный минимум функции /¿(л"*) = 0 при

*

х = (1,1,...,1).

3. Функция Растригина:

m , .

f3 (x) = Z( - 10cos(2nXj)) + 10m, i=1

-5 < x < 5.

Глобальный минимум функции f3(x ) = 0 при

*

x = (0,0,...,0). 4. Функция Экли:

f1( x) = 20 + e - 20exp

5 \| m

(

-exp

—Z cos(2nx)

-20 < хг < 20.

Глобальный минимум функции /4(х*) = 0 при

*

х = (0,0,...,0).

Среди представленных функций выбраны как унимодальные функции У1( х) и У2( х), так и мультимодаль-ные функции /з (х) и /4 (х).

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

ческой головки ТН (х2), внутренний радиус цилиндрической оболочки R (хз), длина цилиндрической части L(х4) (см. рис. 1) [12].

В результате получаем задачу нелинейной оптимизации:

f (x) = 0,6224x1x3x4 + 1,7781x2xf + 3,1661x2x4 + 19,84x2x3 ■

g1(x) = -x1 + 0,0193x3 < 0, g2(x) = -x2 + 0,00954x3 < 0,

g3 (x) = -nx32x4 -4nx3 +12960000 < 0,

ь (8)

(9) (10)

(11)

(12)

g4(x) = x4 -240 < 0, x1 > 1x 0,0625, x2 < 99x 0,0625, x3 > 10, x4 < 200. (13)

В задаче (8)-(13) переменные x1 и x2 являются дискретными величинами, которые должны быть кратны 0,0625 в соответствии имеющейся толщиной листового проката стали.

Для решения представленной задачи используем метод штрафов и перейдем к следующей задаче:

4

F(x) = f (x) + Z H-j • max(0, g2 (x)) ^ min.

j=1

5 РЕЗУЛЬТАТЫ

Канонический и модифицированный алгоритмы реализованы в среде MATLAB R2012b. При сравнении результатов решения задачи (1) каноническим алгоритмом летучих мышей (BA) и модифицированным (MdBA), каждый алгоритм применялся для каждой функции 50 раз. Использованы следующие значения констант и параметров:

tMax = 1000, N = 30, romin = 0, ramax = 2, A(0) = 0,8,

= rand, a = 0,9, Y = 0,9. Полученные результаты для набора тестовых функций приведены в табл. 1.

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

A,(0)

(0)

и интенсивности ri звукового сигнала.

громкости

В первой серии экспериментов зафиксировали Г(0) = 0,5, а значение громкости изменяли в диапазоне от 0,1 до 1 при m = 10. В следующих экспериментах полагали A)^0) = 0,5, а интенсивность сигнала изменяли также от 0,1 до 1. Результаты вычислительных экспериментов представлены в табл. 2-3.

Рисунок 1 - Конструкция сосуда высокого давления

2

Таблица 1 - Результаты вычислительных экспериментов для тестовых функций

Функция Размерность пространства, т Алгоритм Лучшее полученное значение целевой функции Среднее среди полученных значений целевой функции Худшее полученное значение целевой функции

Ж х) 5 ВА 7,5366е-03 3,9121е-01 1,3720е+00

мавА 1,7115е-10 4,7063е-09 3,6887е-08

10 ВА 4,3757е-01 1,8943е+00 4,0154е+00

мавА 1,0420е-07 5,1940е-07 1,7923е-06

20 ВА 2,2767е+00 5,6863е+00 9,1286е+00

мавА 1,5330е-06 7,8947е-06 2,5199е-05

/2( х) 5 ВА 2,8084е+00 3,2013е+01 1,0299е+02

мавА 2,5161е-06 2,3596е-01 3,9309е+00

10 ВА 5,8462е+01 2,2555е+02 5,6098е+02

мавА 3,4659е-03 8,7276е-01 9,6060е+00

20 ВА 1,6786е+02 8,7887е+02 1,7818е+03

мавА 7,0456е+00 1,1763е+01 1,9499е+01

/3( х) 5 ВА 6,0018е+00 1,6457е+01 2,7852е+01

мавА 3,8424е-01 2,3481е+00 6,9647е+00

10 ВА 3,3129е+01 5,3871е+01 7,2348е+01

мавА 1,9900е+00 6,765 8е+00 1,5919е+01

20 ВА 1,0428е+02 1,4207е+02 1,6817е+02

мавА 5,9703е+00 1,7632е+01 3,6819е+01

/4( х) 5 ВА 5,7667е-01 2,3916е+00 3,8869е+00

мавА 1,8981е-05 3,3047е-02 1,6462е+00

10 ВА 2,0987е+00 3,2280е+00 4,0536е+00

мавА 3,7299е-04 2,4011е-02 1,1552е+00

20 ВА 2,6300е+00 4,2518е+00 3,5454е+00

мавА 1,5550е-03 2,1306е-01 2,1712е+00

Таблица 2 - Зависимость решения от начального значения громкости сигнала

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

А(0)

0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

/1(х) 7,96е-08 8,45е-08 1,10е-07 1,26е-07 1,57е-07 1,58е-07 1,69е-07 2,18е-07 2,09е-07 2,51е-07

/2( х) 1,21е+01 6,28е+00 9,73е+00 8,11е+00 6,97е+00 4,85е+00 3,97е+00 3,71е+00 5,35е+00 4,95е+00

/3( х) 6,94е+00 9,35е+00 9,55е+00 1,01е+01 1,23е+01 1,29е+01 1,53е+01 1,54е+01 1,47е+01 1,70е+01

/4 (х) 3,48е-04 3,76е-04 4,2 0е-04 4,45е-04 4,63е-04 4,78е-04 5,16е-04 5,63е-04 2,36е-02 9,68е-02

Таблица 3 - Зависимость решения от начального значения интенсивности сигнала

г (0) г

0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

/1( х) 2,18е-07 1,97е-07 1,75е-07 1,57е-07 1,41е-07 5,41е-07 5,06е-04 8,84е-02 1,36е+00 1,19е+01

/2( х) 8,77е-01 9,63е-01 7,90е-01 1,56е+00 5,84е+00 1,67е+01 2,65е+01 1,47е+02 3,89е+02 4,27е+03

/3( х) 1,74е+01 1,29е+01 1, 19е+01 1,18е+01 1,47е+01 1,33е+01 1,21е+01 2,80е+01 4,98е+01 6,74е+01

/4( х) 1,20е+00 2,22е-01 1,70е-01 6,38е-02 5,11е-04 3,38е-02 9,47е-02 1,65е+00 3,77е+00 5,19е+00

Рассмотрим изменение значения целевой функции в процессе поиска экстремума для функций Растригина и Экли, соответствующие графии приведены на рис. 2. В каноническом и модифицированном алгоритмах полагали т = 10, и с учетом результатов табл. 2-3

Л(0) = 0,35, г/0) = 0,4.

Модифицированный алгоритм летучих мышей применен для решения задачи о дизайне сосуда высокого давления (8)—(13) и получено следующее лучшее решение:

/ (х*) = 6059,1316103768,

х = (0,8125, 0,4375, 42,0984440172, 176,6366206192).

0 20 40 60 80 100 I

а б

Рисунок 2 - Графики изменения значений функции: а - Растригина, б - Экли

6 ОБСУЖДЕНИЕ

Результаты вычислительных экспериментов показали, что модифицированный алгоритм летучих мышей является более эффективным по сравнению с каноническим вариантом для решения задачи глобальной оптимизации. Графики изменения значений целевой функции показали, что модифицированный алгоритм характеризуется более высокой скоростью сходимости и точностью нахождения оптимального значения. Недостатком модифицированного алгоритма является время его выполнения, которое больше времени выполнения канонического алгоритма. Исследована зависимость эффективности модифицированного алгоритма от таких параметров алгоритма как громкость и интенсивность звукового сигнала. Можно сделать вывод, что влияние данных параметров сильно зависит от вида целевой функции. Поэтому оптимальные значения громкости и интенсивности сигнала должны выбираться в каждом конкретном случае индивидуально, при этом отправными могут быть такие значения: A¡0) = 0,25...0,35, г/0) = 0,3...0,4.

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

Из данных, представленных в табл. 4 видно, что лучшие результаты при решении задачи (8)-(13) получены с использованием популяционных алгоритмов. Значение целевой функции, полученное модифицированным алгоритмом летучих мышей меньше значений, полученных многими другими алгоритмами, использующими принципы роевого интеллекта. Это свидетельствует об эффективности предложенного алгоритма. Однако, на сегодняшний день известны новые результаты с лучшим решением, например, найденное алгоритмом серых волков [20]. Тем не менее, модифицированный алгоритм летучих мышей является достаточно конкурентоспособным для решения практических задач и предполагает дальнейшее развитие.

ВЫВОДЫ

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

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

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

Авторы Метод * f( x )

E. Sandgren (1988) [13] Метод ветвей и границ 8129,1036

B. Kannan, S. Kramer (1994) [14] Метод множителей Лагранжа 7198,0428

Q. He, L. Wang (2007) [15] Алгоритм роя частиц 6061,0777

E. Mezura-Montes и др. (2007) [16] Модифицированный метод дифференциальной эволюции 6059,701660

L. Cagnina и др. (2008) [12] Алгоритм роя частиц 6059,714335

H. Bernardino и др. (2008) [17] Генетический алгоритм, скрещенный с алгоритмом искусственной иммунной системы (ОА-АК) 6059,85

A. Kaveh, S. Talatahari (2010) [18] Муравьиный алгоритм 6059,7258

B. Akay, D. Karaboga (2012) [19] Алгоритм искусственной пчелиной колонии 6059,714339

S. Mirjalili и др. (2014) [20] Алгоритм серых волков 6051,5639

Данная работа Модифицированный алгоритм летучих мышей 6059,131610

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

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

СПИСОК ЛИТЕРАТУРЫ

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

2. Субботш С. О. Негтеративш, еволюцшш та мультиагентш ме-тоди синтезу нечiткологiчних i нейромережних моделей : монография / С. О. Субботш, А. О. Олшник, О. О. Олшник ; шд заг. ред. С. О. Субботша. - Запорiжжя : ЗНТУ 2009. - 375 с.

3. Карпенко А. П. Популяционные алгоритмы глобальной поисковой оптимизации. Обзор новых и малоизвестных алгоритмов / А. П. Карпенко // Приложение к журналу «Информационные технологии». - 2012. - № 7. - C. 1-32.

4. Yang X. S. A new metaheuristic bat-inspired algorithm / X. S. Yang // Nature Inspired Cooperative Strategies for Optimization (NICSO 2010). - 2010. - Vol. 284. - P. 65-74.

5. Частикова В. А. Алгоритм летучих мышей для решения задачи глобальной оптимизации / В. А. Частикова, Е. Ф. Новикова // Научные труды КубГТУ (электронный сетевой политематический журнал) [Электронный ресурс]. - № 2. - 2015. - Режим доступа : http://ntk.kubstu.ru/file/348. Yang X. S. Bat algorithm for multi-objective optimization / X. S. Yang // International Journal of Bio-Inspired Computation. -2011. - Vol. 3, № 5. - P. 267-274. D0I:10.1504/ IJBIC.2011.042259.

M BBA: a binary bat algorithm for feature selection / [Nakamura R., Pereira L., Costa K. and other] // inference on graphics, patterns and images (25th SIBGRAPI), August 22-25, 2012 : IEEE Publication. - Р. 291-297. D0I:10.1109/ SIBGRAPI.2012.47.

Fister I. J. A hybrid bat algorithm / I. J. Fister, D. Fister, X. S. Yang // Electrotechnical Review. - 2013. - Vol. 80, № 1-2. - P. 1-7.

9. Wang G. A Novel hybrid bat algorithm with harmony search for global numerical optimization / Gaige Wang, Lihong Guo // Journal of Applied Mathematics : Hindawi Publishing Corporation [Электронный ресурс]. - Vol. 2013. DOI: 0.1155/2013/696491.

10. Yang X. S. Bat algorithm: literature review and applications / Xin-She Yang, Xingshi He // International Journal of Bio-Inspired Computation. - 2013. - Vol. 5. - № 3. - Р. 141-149. D0I:10.1504/ IJBIC.2013.055093.

11. Clerc M. The particle swarm - explosion, stability, and convergence in a multidimensional complex space / M. Clerc, J. Kennedy // IEEE Transactions on Evolutionary Computation. -2002. - Vol. 6. - № 1. - P. 58-73. D0I:10.1109/4235.985692.

12. Cagnina L. C. Solving engineering optimization problems with the simple constrained particle swarm optimizer / L. C. Cagnina, S. C. Esquivel, C. A. C. Coello // Informatica. - 2008. - Vol. 32, № 3. - P. 319-326.

13. Sandgren E. Nonlinear integer and discrete programming in mechanical design / E. Sandgren // Proceedings of the ASME Design Technology Conference : Kissimine. - 1988. - P. 95105.

14. Kannan B. An augmented Lagrange multiplier based method for mixed integer discrete continuous optimization and its applications to mechanical design / B. Kannan, S. N. Kramer // Journal of mechanical design. - 1994. - Vol. 116, № 2. - P. 405-411. D0I:10.1115/1.2919393.

15.He Q. An effective co-evolutionary particle swarm optimization for constrained engineering design problems / Qie He, Ling Wang // Engineering applications of artificial intelligence. - 2007. -Vol. 20, № 1. - P. 89-99.

16. Multiple trial vectors in differential evolution for engineering design / Mezura-Montes E., Coello Coello C. A., Vela zquez-Reyes J., Munoz-Davila L. // Engineering Optimization. - 2007. -Vol. 39, № 5. - P. 567-589.

17. Bernardino H. S. Anew hybrid AIS-GAfor constrained optimization problems in mechanical engineering / H. S. Bernardino, H. J. C. Barbosa, A. C. C. Lemonge, L. G. Fonseca // Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence), 1-6 June 2008. - P. 1455-1462. D0I:10.1109/CEC.2008.4630985.

18. Kaveh A. An improved ant colony optimization for constrained engineering design problems / A. Kaveh, S. Talatahari // Engineering Computations. - 2010. - Vol. 27, № 1. - P. 155-182.

19. Akay B. Artificial bee colony algorithm for large-scale problems and engineering design optimization / Bahriye Akay, Dervis Karaboga // Journal of intelligent manufacturing. - 2012. - Vol. 23, № 4. - P. 1001-1014.

20. Mirjalili S. Grey wolf optimizer / S. Mirjalili, S. M. Mirjalili, A. Lewis // Advances in engineering software. - 2014. - Vol. 69. -P. 46-61.

Статья поступила в редакцию 03.09.2015.

После доработки 11.10.2015.

Красношлик Н. О.

Канд. техн. наук, доцент кафедри прикладно! математики та шформатики Черкаського нацюнального ушверситету iменi Богдана Хмельницького, Черкаси, Укра!на

РОЗВ'ЯЗУВАННЯ ЗАДАЧ1 ГЛОБАЛЬНО! ОПТИМ1ЗАЦП МОДИФ1КОВАНИМ АЛГОРИТМОМ КАЖАН1В

У робот розглянуто алгоритм кажашв для розв'язування задачi глобально! оптимiзацii. Даний метаевристичний алгоритм вщно-ситься до алгоритшв ройового штелекту, яга штенсивно розвиваються в останш роки. Метою роботи е удосконалення алгоритму кажашв, дослщження ефективност його роботи i застосування для розв'язування оптимiзацiйних задач. Запропоновано модифжований варiант каношчного алгоритму, в якому для обчислення швидкост руху кажашв застосована методика алгоритму рою часток. Проведено обчислювальш експерименти з порiвняння точност i швидкост збiжностi каношчного та модифжованого алгоритшв. Встановле-но, що запропонований варiант алгоритму е бшьш ефективним при знаходженш глобального мтмуму ушмодальних i мультимодаль-них тестових функцш. Дослщжено залежшсть ефективносп роботи модифжованого алгоритму кажашв вщ заданих параметрiв. В якост варшованих параметрiв обраш початага значення гучност та штенсивност звукового сигналу, що випускаеться кажанами. Модиф> кований алгоритм застосований для розв'язання практично! задачi мiнiмiзацii вартост витратних матерiалiв, необхщних для виготов-лення посудини високого тиску. Проведено сшвставлення отриманого розв'язку дано! оптимiзацiйноi задачi з результатами шших автс^в, яга використовувати як класичш, так i популяцшш алгоритми.

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

6.

Krasnoshlyk N. O.

PhD, Associate professor of department of informatics and applied mathematics, Bohdan Khmelnytsky National University of Cherkasy, Cherkasy, Ukraine

A MODIFIED BAT ALGORITHM FOR SOLVING GLOBAL OPTIMIZATION PROBLEM

In this paper we consider a bat algorithm for solving the problem of global optimization. This metaheuristic algorithm applies to swarm intelligence algorithms, which are developing rapidly in recent years. The aim of the work is to improve the bat algorithm, study its efficiency and application for solving optimization problems. A modified version of the algorithm in which to calculate speed of the bats used the technique of particle swarm optimization is proposed. The computational experiments have been conducted to compare the accuracy and the speed of convergence of the canonical and the modified algorithms. It was found that the proposed version of the algorithm is more effective in finding the global minimum of unimodal and multimodal test functions. The dependence of the efficiency of modified bat algorithm from the set parameters is investigated. As variable parameters chosen initial values of the loudness and pulse emission rate emitted by bats. The modified algorithm is applied to solve practical problem of minimize the cost of pressure vessel design. The comparison of the solution of the optimization problem with the results of other authors who used both classical and population algorithms was conducted.

Keywords: bat algorithm, population algorithm, swarm intelligence, global optimization.

REFERENCES

1. Karpenko A. P. Sovremennye algoritmy poiskovoj optimizacii. Algoritmy, vdohnovlennye prirodoj : uchebnoe posobie. Moscow, Izdatel'stvo MGTU im. N. Je. Baumana, 2014, 448 p.

2. Subbotin S. O., Olijnyk A. O., Olijnyk O. O. Neiteratyvni, evoljucijni ta mul'tyagentni metody syntezu nechitkologichnyh i nejromerezhnyh modelej : monografija ; pid zag. red. S. O. Subbotina, Zaporizhzhja, ZNTU, 2009, 375 p.

3. Karpenko A. P. Populjacionnye algoritmy global'noj poiskovoj optimizacii. Obzor novyh i maloizvestnyh algoritmov, Prilozhenie k zhurnalu «Informacionnye tehnologii», 2012, No. 7, pp. 1-32.

4. Yang X. S. A new metaheuristic bat-inspired algorithm, Nature Inspired Cooperative Strategies for Optimization (NICSO 2010), 2010, Vol. 284, pp. 65-74.

5. Chastikova V. A., Novikova E. F. Algoritm letuchih myshej dlja reshenija zadachi global'noj optimizacii, Nauchnye trudy KubGTU (jelektronnyj setevoj politematicheskij zhurnal), No. 2, 2015, http ://ntk.kubstu.ru/file/34 8.

6. Yang X. S. Bat algorithm for multi-objective optimization, International Journal of Bio-Inspired Computation, 2011, Vol. 3, No. 5, pp. 267-274. DOI:10.1504/IJBIC.2011.042259.

7. Nakamura R., Pereira L., Costa K., Rodrigues D., Papa J., Yang X. BBA: a binary bat algorithm for feature selection, Conference on graphics, patterns and images (25th SIBGRAPI), August 22-25, 2012, IEEE Publication, pp. 291-297. DOI:10.1109/ SIBGRAPI.2012.47.

8. Fister I. J., Fister D., Yang X. S. A hybrid bat algorithm, Electrotechnical Review, 2013, Vol. 80, No. 1-2, pp. 1-7.

9. Wang G., Guo L. A Novel hybrid bat algorithm with harmony search for global numerical optimization, Journal of Applied Mathematics, Hindawi Publishing Corporation [Электронный ресурс], Vol. 2013, http://dx.doi.org/10.1155/2013/696491.

10. Yang X. S., He X. Bat algorithm: literature review and applications, International Journal of Bio-Inspired Computation, 2013, Vol. 5, No. 3, pp. 141-149. DOI:10.1504/IJBIC.2013.055093.

11. Clerc M., Kennedy J. The particle swarm - explosion, stability, and convergence in a multidimensional complex space, IEEE Transactions on Evolutionary Computation, 2002, Vol. 6, No. 1, pp. 58-73. DOI: 10.1109/4235.985692.

12. Cagnina L. C., Esquivel S. C., Coello C. A. C. Solving engineering optimization problems with the simple constrained particle swarm optimizer, Informatica, 2008, Vol. 32, No. 3, pp. 319-326.

13. Sandgren E. Nonlinear integer and discrete programming in mechanical design, Proceedings of the ASME Design Technology Conference, Kissimine, 1988, pp. 95-105.

14. Kannan B., Kramer S. N. An augmented Lagrange multiplier based method for mixed integer discrete continuous optimization and its applications to mechanical design, Journal of mechanical design, 1994, Vol. 116, No. 2, pp. 405-411. D0I:10.1115/ 1.2919393.

15. He Q., Wang L. An effective co-evolutionary particle swarm optimization for constrained engineering design problems, Engineering applications of artificial intelligence, 2007, Vol. 20, No. 1, pp. 89-99.

16. Mezura-Montes E., Coello Coello C. A., Vela zquez-Reyes J., Munoz-Davila L. Multiple trial vectors in differential evolution for engineering design, Engineering Optimization, 2007, Vol. 39, No. 5, pp. 567-589.

17. Bernardino H. S., Barbosa H. J. C., Lemonge A. C. C, Fonseca L. G. A new hybrid AIS-GA for constrained optimization problems in mechanical engineering, Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence), 1-6 June 2008, pp. 1455-1462. D0I:10.1109/ CEC.2008.4630985.

18. Kaveh A., Talatahari S. An improved ant colony optimization for constrained engineering design problems, Engineering Computations, 2010, Vol. 27, No. 1, pp. 155-182.

19. Akay B., Karaboga D. Artificial bee colony algorithm for large-scale problems and engineering design optimization, Journal of intelligent manufacturing, 2012, Vol. 23, No. 4, pp. 1001-1014.

20. Mirjalili S., Mirjalili S. M., Lewis A. Grey wolf optimizer, Advances in engineering software, 2014, Vol. 69, pp. 46-61.

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