Научная статья на тему 'Поиск главных минимумов многоэкстремальных функций при активном учёте ограничений неравенств'

Поиск главных минимумов многоэкстремальных функций при активном учёте ограничений неравенств Текст научной статьи по специальности «Математика»

CC BY
77
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЛОБАЛЬНАЯ ОПТИМИЗАЦИЯ / ГЛАВНЫЕ МИНИМУМЫ / GLOBAL OPTIMIZATION / MAIN MINIMA

Аннотация научной статьи по математике, автор научной работы — Кузнецов А. В., Рубан А. И.

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

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

Search of the Main Minima of Multiextreme Functions with Active Account of Inequalities

Three algorithms for searching main minima proposed. These algorithms are based on the splitting of search region into subregions around demanded main minima, with the subsequent search in each subregion. On numerical examples the overall effectiveness of algorithms is shown.

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

Journal of Siberian Federal University. Engineering & Technologies 3 (2010 3) 335-346

УДК 681.513.5; 517.977

Поиск главных минимумов

многоэкстремальных функций

при активном учёте ограничений неравенств

А.В. Кузнецов*, А.И. Рубан

Сибирский федеральный университет, 660041 Россия, Красноярск, Свободный, 79 1

Received 3.09.2010, received in revised form 10.09.2010, accepted 17.09.2010

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

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

Введение

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

В работе [1] предложен алгоритм поиска главных минимумов при изменении независимых переменных в гиперпрямоугольной области. Фрагменты решения на основе его простейших численных примеров приведены в [2, с. 139-143]. Примеры демонстрируют хорошее качество работы алгоритма - высокое быстродействие и точность.

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

* Corresponding author E-mail address: kuaw26@mail.ru

1 © Siberian Federal University. All rights reserved

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

Постановка задачи

Необходимо отыскать заданное количество главных экстремумов функции многих переменных

I(x) = гл min, x = (x1,...,xm). (1)

xeX

Допустимая область X определяется системой ограничений неравенств

<Pj (x)< О, j = rm. (2)

Ограничения сужают область поиска экстремума. Функция качества I(x) может быть многоэкстремальной, разрывной, недифференцируемой, а также может быть искажена помехой. Функции о граничений тоже могут (быть не выпуклыми и недифференцируемыми. Поиск экстремумов осуществляется только на основе измерений или вычислений указанных функций: I(x); Pj (x), j = 1, ml •

Алгоритмы

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

Исследователь задает: 1) исходную гиперпрямоугольную область П0 (с центром в x0 и интервалами Ах0), которая должна содержать в себе искомые главные экстремумы; 2) количество исходных пробных точек n0, равномерно распределённых внутри этой области; 3) количество главнтх минимумов nrjI мин; 4) количество пробных точек n, вид ядра и степень s его селективно сти, используемые при поиске глобального минимума в каждой подобласти.

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

Первыш способ самый простой в вычислительном отношении, но он самый затратный -последовательно генерируются пробные точки (в П0 или в подобластях, на которые она разбита) и из них оставляются только те точки, которые удовлетворяют исходным ограничениям неравенств. Чем мен ьше объём допустимой области, тем больше число безрезультатных проб. В этом основной недостаток данного способа учёта ограничений неравенств и соответственно первого алгоритма поиска главных минимумов.

Второй способ базируется на изменении минимизируемой функции в пробных точках. Во-первых, она берётся в относительных величинах, а во-вторых, к ней добавляется штрафная компонента (тоже в относительных, величинах), построенная по функциям ф/x), входящим в левую часть ограничений неравенств, в тех точках, где ограничения нарушены. При этом в расчётах участвуют только исходные пробные точки фи ксированного объёма (n0 или n). Более

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

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

Первый алгоритм (с использованием пробных точек внутри допустимой области)

В заданной прямоугольной области поиска П0 последовательно равномерно размещаются пробные точки, и из них формируется п0 точек, попадающих 15 допустимую область (2!). I3азбиение пробьых точек о1*'-', , = 1, п0 на группы точек тяготеющих к главным минимумам, производится следующим образом. В пробных точках вычисляется функция кпчества I(о(,>) = 1('о, ' = 1,110 и отыскбвается такая точка ош;п, котбрая соответствует наименьшей величине 1ш1п = гшг^/1-'-1,' = 1, п0}. Затем просматриваются все остальные пробные точки (кроме ош1п) и из них отбираютсяте точки о®, которые расположены в окрестности ош1п, например, в соответствии с условием: -оутп| < До°/е, у = 1, т. Найденные точки образуют первую группу точек, множество номе ров которых обозначим через М„и где п г - мощность множества Ып1. Если мощность множества меньше, чем некоторое пш1п (в представленном далее примере 11 шш=5), то это м ножест во удаляется как малозначимое. О ставшиеся пробные точки по той же) схеме разбиваем на группы точек, пока общее количество групп не станет равным заданному количеству ^„„щ главных минимумов или в исходной выборке не останется пробных точек.

Параметр с>1 определяет размеры подобластей и задается исследователем пока интуитивно на основе априорной информации о функции качества, требуемого количества п^^ главных минимумов и объема начальной выборки.

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

оподобли АоНздобл при поиске главного минимума в наждой подоаласти, например в первой из них, рассчитывают по формулам

а» = уо(О)р(» =1 тН1() = р. (атш) (') = 1 ~ 1т

•^у полобп / , -^у г э,шт> -т^тт , (з) \ ' ®т1П 9 9

/ > р (атт) тах \

о

( „ с (') и т;О

тт

1сй:

001П

т = Ь, т, [ = 1,22,

Здесь: 1тт = тт^0, О еМ{ }, = твх{1(0,0 еМП( }};м>э({) -ядра; и*Д - равномерно распределённые в интервапе [-1; 1] числа.

При поиске главных м аксимумов расчёт х°подобл и Ах°подобл ведётся аналогично вышепри-

й ((Г1'-1 ) Т — Т )

й« Заменяют на P« =—F"y&max) J-') _ -'шах 1

Inf i=1 >Р(0 г s,nnin'

7о- )-I.

mis

."max "^min

ведённому, только яДра ps.mm заменяют на ps.max = "у-, gШх =

L Ps (^max> 1щш ах ~ Тшт

На этом первый этап (разбиение исходной области 'на подобласти) считается завершенным.

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

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

п _

х'+1 =xfv+ Ах'йтт, nmmm = У п^Чй';0,,, v = \m. f (0 \

Х) = ps (gmP) (О

.rs,min щ ? о min

У й (gü))

¿^t 0 s п£> min /

np v)

ЛД+1 = • п. • ^¿1{vт Vpnj ,n = C^; 1=0,2,...;

*°=х°одобл, Ar° s= Дх°одобл; [0<;Vqe{l,2,..•}, 0 <m],

Здесь: 7mm = min{7i = 1, п} , 7max = max{T(!i = 1, п}; s - коэффициент селективности ядра ps(); в переменных , для упрощения записи опдщен номер итерации '; всегда

0 < gXXin1 • -Ядра pS^n нормированы на системе п пробных точек: ^ pSjam = 1-

Перед совершением (/+1)-го рабочего шага при получении пробных точек х®, i = 1, п, последовательно генерируются точки (равномерно распределённые) в прямоугольной области П' с центром в точке х':

х® =х[ +Дх' О0, п„ е [-1; 1], v= \т, / =1, 2,..,

и из них оставляется п точек, попадающих в допустимую оП^^^^^ X. Пробные точки лежат в области X1 = П' f]X. 13 пробных точках вычисляется минимизируемая функция T(i), i = 1, п, и на основе этих экспериментальных данных [х^0, v = 1, m, Т®, i = 1,п] совершается вышеприведённо е рабочее движение и пе ресчитываются размеры области поиска.

Критерием останова процесса поиска обычно служит условие уменьшения размера обла( сти варьирования Ах' до заданной величины: max{| Ах' \,v = 1,m} < е.

ps(g) на интервале изменения 0<g<l являются неотрицательными, у бывающими ядрами. Выбор) формы и коэффициента s селективности ядра существенно влияет на характеристики поиска глобального минимума. Чаще всего используется степенное ядро

ps(g) = (1 - = 1,2,3,.... Коэффициент s для степенных ядер лежит в широком диапазоне

целых положительных чисел и подбирается сравнительнопросто.

Второй апгоритм (с переходом к штрафной функции)

В области П0 равномерно размещаются n0 пробных точеп. ТВ них вычисляется штрафная функ ци я:

~ (0\ I) _ Imm Iе) j(Х;()) jmm . тО) 1-1

I(x ) = --m5- + oc • max<! —-1-, j <=J el, (4)

1max Imin I Ф j max Ф/ min I

i = 1, n0, a>0.

Здесь множество J(i) включает только номера тех функций ограничений, для которых ограничения нарушены: при jeJ(,)e1, о1 всегда Q<<Pj(x(,)); П—т = min{/(n, i = 1, n}, Imax = max{I0), /' = 1, n}; для каждого фиксированного}: у. mm = min {р, (х(,)), i :0 <ср{{х<л)}, CP' mn = min {ср. (x(% i :0 «p. (xw)};

Еслипри некотором j=l множество {i :0jqal(jf-®-1 пустос^, то этот номер / не входит во множество j(i) (для каждого фиксированного i). Для пробн ых точе1с, в которых ни одно неравенство не нарушено (т.е. множество j(i) пустое), штрафная добавка берётся равной нулю.

Если при некотором j=l множество {i :0 (x(i)}} состоит из одного элемента, то соотве т ствующ ий эле мент в (4), входящий под оператор max{}, полагаем равны м 1:

~(Р, (j" ) -Vj ]/[<Р, max " Р/ mm ] =1-

Дтле{, отыскивается точка xmin, которая соответствует наименьшей величине /min = min{/(i), i = 1, n0} штрафной функции. Дальнейший отбор точек, находящихся в окрестности jmin, и разбиение на группы точек проводится так же, как и в первом алгоритме.

После разбиения П0 на подоблаути поиск минимума в каждой из подобластей ведется так же, как и is первом алгоритме, но пробные точки размещаются равномерно по всей подобласти (а не в её части, как в предыдущем алгоритме), и вместо исходной функции I® используется штрафная фу нкция 1(,) (4)).

Третий алгори т м (с переход ом к мног омер ным ядртм)

В области П" равномерно размещаются n0 пробных точео и в них вычисляются много экстремальная функция! и функции ограничений: IПхы) = рД j1^), j = 1, о, i = 1, n°. Дплее формируются нормированные ядра p^:

Pi,2PrW) ПР^ПФ pg? =-J--(5)

¿Pi,s(PTC/iTlPiAgf )

Il jeJ(-T

I(i/ -1 I —I

Здесь при минимизации g(I = Tii^n = m-;min-, при максимизации gj = g^. = —-— ^

Imag Imm ^max Imin

(p j "1/-ф, . _

а та кже gjx = —i-, j = 1, Ol; pmm - ядро по оптимизируемой функ ции; pn2,s - ядро по

tfjjmax min

ограничениям; /тах, /тт, ф)Шах, для каждого фиксированного у, а также множество № те же, что и во втор о м алгоритме.

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

Если при некотором ]=1 множество {': 0 (а1-1-1)} состоит из одного элемента, то аргумент ядра р2,Б полагаем равным 0,775. Это значение было получено экспертным путем. Если во всех пробных точках неравенства не нарушены, то ядра втановятся одномерными и зависят

только от оптимизируемой функции: р^ = р(1П(е('))/

' / /"=1

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

После разбиения П0 на подобласти поиск минимума в каждой из них ведется так же, как и для первого алгоритма, но вместо размеще ния точек только в допустимой области точки размещаются равномерно по всей подобласти поиска, и расчет нормированных ядер р^'Шь производится по формуле (5).

Численный пример

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

Н(а) = тт{- 3ехр2-3[| аз - 3 |3 5 + | а2 |з'5]},

-5етр{-2.5[| аз +{ |23 + |а2 |25]1, (6)

-5ехр{-[| 5[ |(3 +1 (2 -3 |32]^, -10ехр{-2[| (3 |2 + | (2 + 3 |2]}}

Допустимая область имеет вид кольца шириной Д:

а32 + а2 < (3 +у) и а32 + а22 > (3 —2). (7)

На рис. 1 представлен пространственный вид функции (6). Она имеет минимумы в точках (-3; -0), (0; 3( (3; 0), (0; -3) и принимает в них соответственно значения (-3), (-5), (-7), (-10). На рис. В приведены линии равных уровней функции (6) и допустимая область (7) при Д=0,4.

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

На рис. 3-5 отражено изменение по итерациям минимизируемой функции и координат при поиске двух главных минимумов функции (6) при ограничениях (7) и Д=1,01.

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

Как видно из рис. 4, второй алгоритм достаточно быстро отыскивает главные экстремумы, совершая при этом на два-три шага больше чем первый алгоритм. Это обусловлено тем, что

Рис. 1. Потенциальная функция (6)

4-3210 1 23 X, 4

Рис. 2. Равные уровни функции (6) и допустимая область (7) при Д=0,4

Рис. 3. Процесс поиска двух главных минимумов первым алгоритмом

Рис. 4. Процесс поиска двух главных минимумов вторым алгоритмом

Рис. 5. Процесс поиска двух главных минимумов третьим алгоритмом

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

Как видно из рис. 5, третий алгоритм ведет себя примерно так же, как и вто рой.

Проведем исследование поведения алгоритмов для узкой допустимой области. Для этого будем менять ширину допустимой области Д от 0,001 до 0,01 с шагом 0,001 и усреднять полученные значения на каждом шаге по 101 запуску. Используем следующие показатели качества работы алгоритмов: N - количество попыток размещения пробных точек и оценки вероятности

*

X - X

<В).

отыскания «истинных» главных экстремумов - Р(;

Первый алгоритм. Считаем, что п0=500, область поиска с центром х0=(0; 0) и размером Дх0= (4; 4), q=2, уд=1,2, ядро по функции качества параболическое с коэффициентом селективности 5=100, размер выборки при поиске экстремума в подобласти п=150. На рис. 6 представлены графики описывающие поведение алгоритма. Первый график показывает усредненное значение N для каждого Д, второй - оценку вероятности отыскания истинного экстремума.

Как и ожидалось, в первом алгоритме уменьшение ширины допустимой области Д приводит к резкому увеличению количества попыток генерации пробных точек. Как видно из рис. 6, для отыскания экстремумов при ширине Д=0,001 было предпринято 2,2106 попыток размещения пробных точек. Оценка вероятности отыскания истинного экстремума очень высока и равна единице, это объясняется тем, что узкая допустимая область практически не оставляет «свободы» поиска для алгоритма. С ростом Д уменьшается количество попыток размещения пробных точек, так как допустимая область становится шире и в нее легче попасть. Следует отметить, что такое большое число попыток размещения пробных точек при наличии узкой допустимой области делает этот алгоритм практически непригодным для использования при решении практических задач, так как в практических задачах размещение пробной точки эквивалентно проведению дорогостоящего эксперимента.

Второй алгоритм. Зададим следующие параметры алгоритма: размер выборки для выделения подобластей п0=500, область поиска с центром х0=(0; 0) и размером Дх0= (4; 4), q=2, уд=1,2, ядро по функции качества параболическое с коэффициентом селективности 5=200, размер выборки при поиске экстремума в подобласти п=150, штрафной коэффициент а=1. На рис. 7 представлены графики, описывающие поведение алгоритма. Первый график показывает коли-

Рис. 6. Зависимость показателей качества работы первого алгоритма от Д

N

О 001 0.002 0 003 0 004 О OOS 0 006 0 007 0 008 0 009 0 01 0001 0.007 0 003 0 004 0 005 0 006 0.007 О OOS 0009 О О Г

Рис. 7. Зависимость показателей качества работы второго алгоритма от Д

N

0.001 0.002 О.ООЗ 0.004 0.00& 0.000 0.00/ 0.008 0.009 0.01 0.001 0.002 0.003 0.004 0.001 0.000 0.007 0.008 0.009 0.01

Рис. 8. Зависимость показателей качества работы третьего алгоритма от Д

чество попыток генерации пробных точек, второй - оценку вероятности отыскания истинного экстремума.

Из графиков наглядно видно, что количество попыток размещения пробных точек в четыреста раз меньше, чем для первого алгоритма (для Д =0,001). Оценка вероятности отыскания истинного решения достаточно высока и в среднем равна 0,95. Качество работы алгоритма не зависит от ширины допустимой области. Этот алгоритм более прост в настройке, чем третий алгоритм, так как необходимо настроить одно ядро, а у третьего алгоритма - два.

Третий алгоритм. Зададим следующие параметры алгоритма: размер выборки для выделения подобластей п°=400, область поиска с центром х°=(0; 0) и размером Дх°= (4; 4), q=2, уд=1,2, ядро по функции качества параболическое с коэффициентом селективности 5=50, ядро по ограничениям параболическое с коэффициентом селективности 5=100, размер выборки при поиске экстремума в подобласти п=100. На рис. 8 представлены графики, описывающие поведение алгоритма. Первый график показывает количество попыток генерации пробных точек, второй - оценку вероятности отыскания истинного экстремума.

Из графиков видно, что так же, как и для второго алгоритма, количество попыток и оценки вероятности отыскания истинного решения не зависит от ширины допустимой области. При этом количество попыток в шестьсот раз меньше, чем для первого алгоритма (для Д=0,001). Оценка вероятности отыскания истинного решения достаточно высока и в

среднем равна 0,95. Третий алгоритм работает немного лучше второго, но он более сложен в настройке.

Программная реализация алгоритмов

Продемонстрированные алгоритмы входят в состав пакета глобальной оптимизации Global Optimizer v2.0, в котором также представлены основные алгоритмы глобальной оптимизации, базирующиеся на методе усреднения координат. Пакет реализован на языке Delphi с использованием среды визуального программирования Delphi 2010 фирмы Embarcadero Technologies и функционирует в операционной системе из семейства Windows 2000/XP/Vista/7.

При проектировании программных алгоритмов поиска главных минимумов был использован объектно-ориентированный подход. Алгоритмы реализованы как надстройка над алгоритмами поиска глобального экстремума, описанными в монографии [2]. Этот подход позволяет распараллелить поиск главных экстремумов и тем самым значительно повысить скорость работы алгоритма. Этот вариант требует специальных исследований.

Заключение

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

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

Статья публикуется при поддержке Программы развития Сибирского федерального университета

Список литературы

1. Рубан А.И. Метод непараметрической поисковой оптимизации // Изв. вузов. Физика. 1995. Т. 38. № 9. С. 65-73.

2. Рубан А.И. Глобальная оптимизация методом усреднения координат: Монография. Красноярск: ИПЦ КГТУ, 2004. 302 с.

Search of the Main Minima of Multiextreme Functions with Active Account of Inequalities

Alexey V. Kuznetsov and Anatoly I. Rouban

Siberian Federal University 79 Svobodny, Krasnoyarsk, 660041 Russia

Three algorithms for searching main minima proposed. These algorithms are based on the splitting of search region into subregions around demanded main minima, with the subsequent search in each subregion. On numerical examples the overall effectiveness of algorithms is shown.

Keywords: global optimization, main minima.

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