Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методическое пособие 484

.pdf
Скачиваний:
3
Добавлен:
30.04.2022
Размер:
1.81 Mб
Скачать

Наиболее тривиальный способ решения задач оптимального проектирования

любого сложного технического обьекта, в том числе и

Начало

Рис 3.1 Схема алгоритма метода поисковой оптимизации обобщенных критериев

оптимальности УЦОС Выбор обобщенного

критерия, параметрических ограничений и Qn(0)

Зондирование пространства параметров,

сортировка и оставление таблиц

испытаний

Пересчет порогового значения обобщенного критерия и параметрических ограничений

Критерий

останова выполнения?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оптимальное

 

Принятие решения о

 

 

продолжении

или

решение

 

 

прекращении

 

получено?

 

поиска

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выдача оптимального

решения

Конец

114

УЦОС, заключается в минимизации среднестепенных обобщенных критериев оптимальности типа (2.14), (2.15) или (2.22). На практике также распространен частный случай среднестепенного критерия (2.14) при q=2, получивщий название среднеквадратичного [47, 48].

Использование среднестепенных критериев оптимальности в задачах проектирования УЦОС, где, по существу, необходим минимаксный подход, оправдано,

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

для увеличения эффективности соответствующих вычислительных алгоритмов.

Задача оптимизации обобщенных критериев (2.14), (2.15) и (2.22)

формулируется как задача НЛП вида (3.1). Характерной особенностью этой задачи является "гладкость" целевых функций [3, 5, 13, 47, 48]. Подходы к решению этой задачи при наличии ограничений можно разбить на два класса [3, 5, 7, 11, 12 - 13, 18, 28, 93]. В методах первого класса ограничения учитываются непосредственно, с помощью стратегии активного набора ограничений (набора ограничений, равных нулю в данной точке) и необходимых условий оптимальности [11]. Ко второму классу относятся те методы, в которых осуществляется безусловная минимизация функции, получающаяся добавлением штрафа за нарушение ограничений либо к целевой функции, либо функции Лагранжа исходной задачи (3.1) [28].

В первом классе следует выделить метод проекции градиента [48], в котором задача НЛП решалась лишь для случая линейных ограничений. В последующих работах этого направления делались попытки учесть кривизну целевой функции и ограничений (алгоритм обобщенного приведенного градиента) [99], а также с использованием более эффективных способов корректировки матрицы вторых производных [18]. В целом же следует отметить,

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

115

Методы второго класса, среди которых большее внимание уделяется применению множителей Лагранжа, обычно применяют при наличии нелинейных ограничений. Оценки множителей Лагранжа [28, 93] вычисляются в большинстве современных алгоритмов.

Изначально для решения задачи НЛП с нелинейными ограничениями использовался метод штрафных функций. Позднее был разработан метод барьерных функций с включением в него процедуры экстраполяции. Этот метод, известный под названием SIMT, успешно применялся для решения практических задач [28]. Однако и он имеет ряд недостатков,

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

Эффективность этой процедуры существенно влияет на эффективность алгоритма оптимизации.

В работе [18] при сравнении этих двух подходов отмечалось, что второй "считается в настоящее время неэффективным с точки зрения объема вычислений". В работе [11] на основании большого опыта решения различных задач оптимизации (в том числе и вида (2.12)

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

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

X (k 1) X (k )

k

G(k ) ,

(3.7)

 

 

 

где X (k 1) , X (k ) - точки в пространстве варьируемых параметров, являющиеся приближением

оптимального решения X * ; G(k ) - вектор спуска (направления поиска); k - шаг вдоль

направления G(k ) .

Все методы безусловной минимизации отличаются друг от друга способом

определения вектора G(k ) и шага k . В КНМ направление поиска находится по формуле:

G (k ) H (k ) Q( X (k ) ) ,

(3.8)

116

где Q( X (k ) ) - градиент обобщенного критерия; H (k ) - матрица, аппроксимирующая

обратную матрицу Гессе целевой функции [3, 18].

Основные разработки в КНМ были связаны с поисками наиболее точных формул

корректировки матрицы H (k )

от

итерации к

итерации. При этом первоначально для

вычисления шага

k

применялась процедура точного одномерного поиска,

в результате

 

 

 

 

 

 

 

 

 

 

 

 

 

которой определялось такое значение

k

 

на каждой итерации, которое минимизировало

 

 

 

 

 

 

 

 

 

 

 

 

 

одномерную функцию

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Q(

)

Q(X (k )

 

 

k

G(k ) ) .

 

 

(3.9)

 

 

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим наиболее употребительные формулы коррекции, а также сравним их

относительные преимущества и недостатки.

 

 

 

 

 

 

 

Введем обозначения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(k )

k

G(k )

X (k 1)

X (k ) ;

(3.10)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(k )

g (k 1)

 

g (k ) ,

 

 

(3.11)

Тогда разложение в ряд Тейлора величины

k будет иметь вид [26]

 

 

 

 

 

(k )

B(k )

(k )

R( (k ) ) ,

 

 

где B (k ) B( X (k ) ) - матрица вторых производных (Гессиан) целевой функции [26].

Остаток R( ) ,

включающий

члены более высокого порядка, равен нулю для

квадратичной функции, поэтому им можно пренебречь.

Поскольку (k ) и

k определены

только после линейного поиска вдоль направления G(k ) ,

справедливо лишь приближенное

равенство H (k ) (k )

 

(k ) , так как

H

B 1 .

Поэтому

H (k 1) должно быть выбрано таким

образом, чтобы выполнялось строгое равенство

 

 

 

 

 

 

 

 

H (k

1) (k )

 

 

(k ) ,

 

 

(3.12)

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

Наиболее простой является формула коррекции единичного ранга (иногда ее

называют формулой Бройдена) [3, 18, 93]:

 

 

 

H k 1 H

(

H )(

H )T

,

(3.13)

 

(

H )T

 

 

 

 

117

где второе слагаемое представляет собой n n матрицу единичного ранга. Здесь и в дальнейшем для сокращения обозначений индекс k в правой части формулы коррекции будет опущен. Примечательной особенностью этой формулы является то, что для нее не требуется производить точный линейный поиск. Более того, для сходимости алгоритма не обязательно, чтобы направление поиска определялось по формуле G (k ) H (k ) g (k ) . Однако формула (3.13) имеет два существенных недостатка [93]:

-она не гарантирует положительную определенность матрицы H (k ) даже для квадратичных функций;

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

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

(ДФП) [93]:

k 1

 

 

T H

T H

 

H ДФП

H

 

 

 

 

 

(3.14)

T

 

 

 

T H

 

 

 

 

 

 

В первых программных реализациях метода ДФП применялся очень точный линейный поиск, что позволяло получить хорошие результаты, но требовало большого числа вычислений целевой функции. Дальнейшие исследования формулы (3.14) при менее точном линейном поиске показали, что в этом случае она уступает другим формулам коррекции [18, 93]. Поэтому в настоящее время метод ДФП признан не самым эффективным методом из класса КНМ [93].

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

T

0

(3.15)

 

выполнение которого обеспечивает положительную определенность матрицы

H (k 1) , если

матрица H (k ) также положительно определена. В случае невыполнения условия (3.15) на каком-либо шаге минимизации, матрица H (k 1) заменяется на единичную.

118

Кроме того в методе ДФП, матрица H (k ) может стать неопределенной или почти неопределенной. Это может произойти в том случае, если величина знаменателя T H будет

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

матрицу H (k 1) на единичную H 2 через каждые k итераций, что позволяет обеспечить

сходимость к стационарной точке. Но скорость сходимости метода при этом существенно замедляется.

При коррекции матрицы H (k ) ошибки округления часто приводят к тому, что направление поиска G(k ) будет почти перпендикулярно к градиенту целевой функции, т.е.

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

 

 

 

 

Hg T

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

0 ,

(3.16)

 

 

 

 

Hg

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

то есть косинус угла между g и Hg меньше некоторого малого

, а матрицу H (k 1) также

следует заменить на единичную или на другую, положительно определенную матрицу.

Улучшенными вычислительными возможностями обладает метод Бройдена-

Флетчера-Гольдфарба-Шанно

(БФГШ),

в

котором матрица H (k 1)

определяется из

выражения [48,93]:

 

 

 

 

 

 

 

 

 

 

 

k 1

 

 

T H

 

 

T

 

T HH

T

 

H ДФГШ

H

1

 

 

 

 

 

 

 

.

(3.17)

T

 

T

 

 

T

 

Его основным преимуществом является малая критичность к точности линейного поиска, что делает его весьма эффективным с точки зрения объема вычислений. Формула коррекции (3.15) сохраняет все важные теоретические свойства КНМ. Кроме того,

теоретически доказана глобальная сходимость метода БФГШ с приближенным линейным

поиском.

Соотношения (3.13) и (3.15) в своей линейной комбинации образуют однопараметрическое семейство формул коррекции второго ранга, получившее название

семейства Бройдена [18, 48, 93]:

k 1

k 1

k 1

 

HФ

(1 Ф)H ДФП

ФH ДФГШ .

(3.18)

Это семейство включает в себя и формулу ДФП (Ф=0), и формулу БФГШ (Ф=1), и ряд других формул. Важным является то, что многие свойства формул коррекции ДФП и БФГШ

119

являются общими для всего семейства формул (3.17) В несколько преобразованном виде с учетом выражений (3.14), (3.15) формулу (3.18) можно представить так:

k 1

k 1

ФVV

T

,

 

HФ

H ДФП

 

(3.19)

где

 

 

 

 

 

H

 

V

T H

 

 

.

 

 

 

 

 

T

 

T H

 

 

 

 

 

Анализ собственных чисел матрицы HФk 1 показывает, что ее положительная Ф

определенность будет обеспечена, если параметр будет удовлетворять условию [3, 12, 18, 93]:

 

 

Ф 1/[(1 T H T E1 ) / T 2 ]

 

(3.20)

где E1

H 1 .

 

 

 

Для

квадратичных функций Флетчер показал,

что собственные

числа матрицы

B1/ 2 H (k ) B1/ 2

монотонно стремятся к единице в том и только в том случае,

когда параметры

Ф(k )

[0,1].

Это означает, что стабильные формулы

коррекции ограничиваются лишь

выпуклым классом формул, принадлежащих семейству (3.19). Для выбора значения параметра Ф Флетчер предложил выполнять проверку следующего условия [93]:

T

T H .

(3.21)

При еѐ выполнении Ф 1, и

для коррекции используется

формула БФГШ. В

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

Впервых программах, использовавших целевую функцию вида (2.14),

предпринимались попытки решать задачу оптимизации как общую задачу НЛП с последовательным увеличением q от итерации к итерации [28]. Это приводило к потере точности и устойчивости вычислительного процесса вследствие оперирования с очень большими и очень малыми числами (т.е. задача была плохо обусловлена). Отметим, что целевая функция (2.15) свободна от этого недостатка и входящий в нее показатель степени принимает небольшие положительные целочисленные значения. Поэтому на практике при решении задачи оптимизации УЦОС чаще применяется целевая функция (2.15).

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

120

Шаг 1.

Установить k 0, X (0) D .

Шаг 2.

Определить направление поиска G(k ) .

Шаг 3.

Решить задачу одномерного поиска

min Q( X (k ) k G(k ) ).

k

Шаг 4. Установить k k 1; если не выполнено условие останова, то перейти к шагу

2.

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

уменьшения количества определений целевой функции на шаге 3.

В настоящей работе использован алгоритм одномерной минимизации, построенный на приближенном вычислении целевой функции, изложенном в п. 2.2. Его применение тем более целесообразно, чем сложнее математическая модель УЦОС, расчет которой необходим для вычисления значения целевой функции (обобщенного критерия). Здесь минимизация

целевой функции сведена к многошаговой процедуре, на каждом l -том шаге которой методом дихотомии [31] минимизируется не функция Q , а ее приближенное значение Qp и в точке минимума приближенной функции рассчитывается относительная погрешность Q

расчета функции. Особенность используемого алгоритма заключается в том, что каждая из

функций Qi ( X

G) заменяется параболой (см. п. 2.2).

В случае, если либо

Q

0 , где

0 - допустимая погрешность воспроизведения

целевой функции, либо k

kmax , где kmax

- допустимое количество шагов, одномерная

минимизация

заканчивается.

В противном случае производится переопределение точек

X (0) , X (1) , X (2)

интервала,

содержащего

минимум целевой функции, и переход к

следующему шагу.

Кроме того в реализованном алгоритме направление движения к оптимуму на шаге 2

определяется по формуле

G(k )

Z

k

G(k 1) ;

k 1

yT

1

Z

k

/(yT

G(k 1)

,

(3.22)

 

 

k 1

 

k

 

k

1

 

 

где

 

 

 

 

 

 

 

 

 

 

 

 

 

yk 1

Q(X (k ) )

Q(X (k 1) );Zk

 

 

 

Hk 1

Q(X (k ) ) .

 

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

121

3.3 Алгоритмы минимизации минимаксных критериев оптимальности

УЦОС

Обобщенный критерий вида (2.12) очень часто бывает наиболее предпочтительным,

поскольку в точке минимума функция максимума обладает альтернансными свойствами [21, 47, 48, 79], т.е. имеется несколько отклонений, равных максимальному. Это означает, что при решении минимаксных задач получают более качественные решения, обеспечивающие укладывание характеристик в зоны с максимальным запасом. Однако этот критерий не сохраняют свойства гладкости целевых функций, что требует привлечения специальных

методов оптимизации.

Зачастую задача векторной оптимизации УЦОС решается в случае, когда задача (2.12)

является линейной минимаксной задачей без ограничений. При скалярной оптимизации решение этой задачи обычно осуществляется методом последовательных чебышевских интерполяций Е. Я. Ремеза [21,79]. Для решения задач векторной оптимизации другого класса устройств этот метод впервые применен в работах [33, 38, 90]. Метод минимакса [21]

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

min max{

i Qi ( X )},

 

(3.23)

X i

 

 

 

в которой подбором компонент весового вектора

i

можно найти все множество Парето.

 

 

 

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

приходится решать многократно. В связи с этим в стандартный алгоритм Ремеза введены процедура вычисления «хороших» начальных значений точек альтернанса и процедура выравнивания максимумов. модифицирован путем введения следующим образом. Схема модифицированного алгоритма Ремеза приведена на рис. 3.2.

При формализации задачи векторной оптимизации УЦОС, например,

122

Начало

K=0

Определение направления поиска

Одномерный поиск

K=K+1

Нет

Сходимость

Да

 

 

 

достигнута

 

Конец

Рис. 3.2 Структурная схема алгоритма минимизации обобщенных критериев

123