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

книги из ГПНТБ / Егоров С.В. Элементы идентификации и оптимизации управляемых систем учеб. пособие

.pdf
Скачиваний:
5
Добавлен:
24.10.2023
Размер:
9.47 Mб
Скачать

Во многих задачах НП успех решения существенно за­ висит .от выбора начального значения Uq. Величина шага AU

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

M J[t+l]=AU(U[t], U [t - 1],

U [t-r)).

В настоящее время нашли широкое применение схемы с

г 1, 2, причем для последнего случая

(г = 2) имеется инте­

ресная аналогия с движением шарика конечной массы: фор­ мула вычислительной схемы

Ht/+vt/=<p([/, t)

(4-31)

аналогична уравнению движения под действием силы <р не­ которого тела массы р, обладающего коэффициентом вязко­ го трения v (метод «тяжелого шарика»). Эта схема может быть применена в многоэкстремальных задачах для нахожде­ ния абсолютного экстремума: придавая «шарику» достаточ­ но большую массу, можно заставить его проскакивать ло­ кальные минимумы.

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

Всвою очередь каждая из них делится на две группы:

1)градиентные методы, в которых при решении задачи

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

VG;

2) прямые методы, в которых используется информация непосредственно о величине целевой функции G.

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

Прямые методы (сканирования, Гаусса—Зайделя, симп­ лексный, «золотого сечения» и др.) имеют тот же недоста­ ток. Однако среди них есть один универсальный метод ре­ шения любых задач НП — метод сканирования (просмотра) всей допустимой области изменения переменных. Естествен­ но, такой просмотр может быть осуществлен в конечном числе точек множества fiu, с шагом дискретности Д. Скани­ рование может осуществляться по сетке переменных или по спирали. Недостатком метода является большой объем вычислений, пропорциональный величине Д-п, где п—число

переменных.

151

Для решения задач высокой размерности (п> 3) или многоэкстремальных иногда целесообразно применять мето­ ды случайного поиска [4-5].

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

§ 4-7. Выпуклое программирование

Если функция G (U) является выпуклой, а также выпукло

множество Q„ допустимых решений, то задача (4-27) — (4-29) относится к выпуклому программированию (ВП).

Функция G(U) называется выпуклой, если

для

любых

двух точек U' и U" и любой точки

лежащей на отрезке,

соединяющем эти точки (U^==xU' + (1 —т) U", O ^ T ^ l),

вы­

полняется условие

 

 

 

 

 

G(t/T) ^ t G(U') + (l-x )G (U ").

 

.(4-32)

Множество называется выпуклым, если вместе с любыми

двумя точками содержит весь

отрезок,

соединяющий

эти

точки. Можно показать, что при выпуклости

ограничений

(функций) (4-28) и линейности ограничений

(4-29) мно­

жество допустимых решений

является выпуклым.

Поэто­

му задача ЛП является частным случаем ВП.

Другим

важ­

ным случаем ВП является квадратичное программирование,

когда ограничения линейны '(как и в ЛП), а целевая функ­ ция является суммой линейной и квадратичной форм: G(U) = C'rU+ UTDU (условие выпуклости £>^0).

Существенно, что локальный минимум в задачах ВП сов­ падает с абсолютным. В самом деле, пусть целевая функция достигает в точке U' локального минимума, т. е. для всех V из некоторой е-окрестности V справедливо G(U') ^G (U ). Допустим, что имеется точка U", отличная от U', в которой достигается абсолютный минимум: G(U") <iG{U'). На от­ резке, соединяющем точки V и и", возьмем точку Ut==eU' + + (1 — e)U", 0 < е < 1, принадлежащую e-окрестности точки U'. Тогда в силу выпуклости функции на основании (4-32)

можно записать

G(U.) sSeG,( [/')+'(1 - е) G(G") <eG (U') +

+ (1 — e)G(t/') = G(G'),

152

где G(U") заменена на большее (по допущению) значение G((/'), или G(Ut) <.G(U'). Полученное противоречие дока­

зывает наше утверждение.

Указанная особенность приводит к широкому примене­ нию в ВП всевозможных локальных методов поиска экстре­ мума, рассмотренных частично в § 1-3.

Центральное место в НП занимает теорема Куна—Тан­ кера, дающая необходимые условия экстремума и являю­ щаяся обобщением метода множителей Лагранжа на случай ограничений — неравенств. При этом строится аналогично (1-33) функция Лагранжа

т

G*(Ц,Л) == G(Ц) + 2 М,(Ц) = G(Ц) + ЛТЛ(^) i = 1

и предполагается, что существует такая точка U, для кото­ рой hi(U)^>0 при 1 = 1, ..., Ш\ (условие Слейтера, малосу­

щественное на практике, поскольку его всегда можно удов­ летворить за счет малых изменений ограничений). Если nv=m\ (ограничений—равенств нет), то (имеет место теоре­

ма Куна —Таккера о седловой точке.

 

собою

Вектор U *^ 0 тогда и только тогда представляет

решение задачи ВП, если существует вектор

Л * ^ 0

такой,

что

 

 

G„(U*, A)^G y(U *, A*)^Gx(G,.\

*)

 

для всех U^O, A$sO. Кроме того, ^ М ^ * )—0 для i —1,

.., m.

 

 

 

в точке

Другими словами, функция Лагранжа достигает

(U*, Л*)

абсолютного

минимума по U и максимума по Л

(экстремум типа седла):

 

 

G\{U*, Л*) = min max GX(G,

Л) = max min GX(G,

Л).

 

U

x>o

x>e и :о

 

В самом деле (4-6],

если (U*, Л*) является седловой точ­

кой функции GX(G, Л)

в области

О, Л^О, то

 

G(U*)

A ^G (U *) +hr (U*) -A*^G{U) +hr (U) -A*

для всех

О, Л^О.

Поскольку левое неравенство

имеет

место для любого Л^О, то все компоненты вектора h(U*) долкны быть неположительны, причем hT(U*)-A* должно

равняться нулю. Вследствие этого правое неравенство можно записать в виде

G(U)+h4U)>A*^G .{U*) для всех U^O.

153

Поскольку для любого возможного вектора U имеем hT(U) -Л *^0, то

G(U)'^sG(U) + hTA *^G (U *),

что доказывает оптимальность вектора U*. Доказательство

того, что для задачи ВП при выполнении условий Слейтера существует седловая точка, имеется, например, в работе {4-6].

Если имеются ограничения—равенства (4-29) (т^>т\), то

теорема о седловой точке несколько видоизменяется, по­ скольку условия X,> 0 необходимы лишь Для 1 = 1, ..., ТП\.

,Для задач ВП теорема Куна—Таккера дает необходимые

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

60,

1)duj =0,

дахдХг •= М */)<о,

да.

d%t • = А|(^)=0.

2) Щ>0,

3) Х[ > 0,

4) ( U ) = 0 ,

/= 1, .

 

. ,

 

я,

^

1=1, . .

 

. .

Я»1.

 

 

>

 

 

 

 

(4-33)

i = т 1+1,

 

 

. , т ,

 

 

 

7 = 1,

,

п,

 

*‘ =1.

,

т и

 

*= 1,

-

.

,

т .

 

Условия (4-33), таким образом, являются критерием решения задачи ВП. Условия 4) в (4-33) очевидны для i= m i + l, ..., m, а при t= l, ..., >т\ имеют простой физичес­

кий смысл: если в точке минимума щелевой функции i-e ог­

раничение себя не проявляет (/и-СО) и таким Образом

не

препятствует свободной вариации вектора U, то это ограни­

чение несущественно, и соответствующее Я(= 0, если

же

минимум достигается на границе (Н{= 0), то такое ограниче­

ние существенно, и соответствующее А(>0. Таким образом, множители Лагранжа показывают вес ограничений: для не­ существенных он равен нулю.

Для решения уравнений и неравенств (4-33) применяют итеративный алгоритм, в котором изменение U и Л осущест­

вляется по информации о градиенте функции G*; п,ри этом ограничения на знак переменных и}, Я(, ;i= l, ..., mt учтем

«детектированием» получаемых приближений (с помощью

151

■операции выбора максимального мея£ду нулем и получаемым итеративным значением):

ui\t + \\= max1 0;

ut \t]— \ J r ,* K 4 - l] X

X

*7 (*/[<])

m

<>K(VV\)

У

K\t\-

duk

duk

 

Щ[0] >0,

j = 1.............n\

\t +1] = max {0;

 

"h

(4-34)

A,v[7] -j-

Tt*^ V 4*1] 'hk (^ КШ

 

A,v[0]>0,

v =1, .

. . , my,

x,[t+i} = K[t]-

m

 

2

тЦ>1#+1]-А*(г/[ф,

 

 

fc-mt+1

 

! v = m,. + 1, . . . ,

m.

 

 

Обратим внимание,

что знаки при у,* и yi*\ v= l, .... т.\

противоположны, так как в соответствии с теоремой о сед­ ловой точке функция G* минимизируется по U, но максими­

зируется по Л.

 

записывается сле­

В непрерывной форме алгоритм (4-34)

дующим образом:

П

 

 

\

'о, если щ 0

и V,„ -

4*.

«/ =

m

> 0.

 

 

V=1

Ху =

Ху

1

- V, /, если и, > 0 ,

7 —1.............

 

0,

если Xv=0 и V x v -^ jT ^ -A *

 

 

 

*?i

.

V Xv ,

если A.v>0,

v = l .............

*■

пх

 

 

Е

Т$ - h k(U)t

v = W j+1, .

-

 

 

n,

(4-35)

c:

A

 

c

mu

■ ■, m,

155

при этом щ (0)^0, kv(О)]>0, v = l, гп\. Схема решения по

(4-35) показана на рис. 4-7 (сравни со схемой рис. 1-8), где «диоды» Д\, Дг в интеграторах обеспечивают неотрицатель­ ность переменных щ Верхняя часть схемы является фор-

Рис. 4-7. Схема аналогового решения задач выпуклого программирования

мирователем сил, возвращающих изображающую точку U на

допустимое множество Qu.

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

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

§ 4-8. Градиентные методы оптимизации

Алгоритмы (4-34), (4-35) обладают существенно различ­ ными характеристиками при различных матрицах Г, IV при удачном выборе таких матриц решение сходится быстро, при неудачном — может расходиться. Чтобы исследовать влияние матрицы Г на процесс оптимизации, рассмотрим

156

простейший алгоритм (1-32) для задачи минимизации без ограничений:

U[t + \]=U[t]-T^G(U{t]), t = О, 1, 2, ....

(4-36)

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

1, По зависимости от номера итерации — на стационар­ ные (Г не зависитот?), нестационарные (Г=Г[?]), цикличес­

кие (r[t]=T[t + N], где N — цикл итерации).

 

2.

По зависимости от итерируемой

переменной

U —на

линейные (Г .не зависит от U), нелинейные (Г=Г(£/)).

Среди нелинейных градиентных алгоритмов широко из­

вестны:

 

 

 

 

а)

алгоритм Ньютона,

когда Г(£/) =

 

 

 

т х

=

ди,дик

 

 

 

 

L

 

 

б)

алгоритм наискорейшего

спуска

(предложен

Коши),

относящийся к релаксационным алгоритмам, в

котором

r=vj7]-/, причем величина у[<]

выбирается из условия

 

AG*=\G(U[t+\])-G(U[t])\-+max.

(4-37)

 

 

 

 

т(<- *)

 

Ввиду большого разнообразия градиентных алгоритмов возникает проблема выбора наилучших алгоритмов, т. е. по существу возникает два вопроса: какова должна быть струк­ тура матрицы Г и как .выбирать ее элементы у1к1 Ранее мы

молчаливо предполагали, что все элементы матрицы Г от­ личны от нуля. Реализация градиентного алгоритма с такой матрицей Г приводит к многосвязной системе оптимизации,

в которой изменение одной переменной существенно зави­ сит от остальных переменных (рис. 4-8,а). Насколько хоро­ ша такая система? Чтобы ответить на этот вопрос, рассмотаим разложение в ряд Тейлора целевой функции, при этом ограничимся двумя первыми членами:

G(U[t+1]) = G(U[t} + AU{t + l}) = G(U[t]) +

+V^G(U[t))-AU[t + l] + ....

167

Таким образом, в линейном приближении уменьшение функции G за один шаг равно

AG= G ((/{/+l])-G (tM )s -v„TG (^ -A t/U + l].

Это уменьшение будет максимальным, если скалярное произведение в правой части максимально, что возможно, когда векторы V„G и AG коллинеарны. Последнее условие можно записать в виде

йц/I' -*-4 _ соп5^_ |— у (для стационарных алгоритмов), у/0(ЩЦ) i</<n I — у{Н-1] (для нестационарных

алгоритмов),

MJlt + l]= —yVuG(U[t]).

(4-38)

Сравнивая (4-36) и (4-38), замечаем, что в первом (ли­ нейном) приближении наилучшим является алгоритм со скалярной матрицей Г=у/.

Такому алгоритму соответствует система оптимизации с

автономным регулированием переменных {tlj} (рис. 4-8,6),

когда Uj зависит только от величины VjG.

Рис. 4-8. Структуры градиентных схем оптимизации: многосвяз­ ная (а) и автономная (б)

Надо отметить, что, хотя такая схема более проста, чем многосвязная, она .имеет ряд недостатков:

1. Она обычно обеспечивает весьма слабую сходимость процесса оптимизации, особенно при наличии «оврагов» у функции G.

158

*1. Она имеет относительную ценность, если размерность переменных щ различна, что обычно бывает при оптимиза­ ции реальных объектов, где щ соответствуют различным фи­

зическим величинам. Переход в этом случае к относитель­ ным величинам приводит к некоторому произволу в масшта­ бах переменных.

Рассмотрим проблему выбора величины у.

Если у мало, то движение изображающей точки из на­ чального состояния Uо происходит по ломаной (рис. 4-9),

весьма близкой к траектории стекания» (на рисунке показа-

Рис. 4-9. Траектории решения при различных Т для дискретных (1, 2, 3) и непрерывных (4, 5)

алгоритмов

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

условию (4-37) получаем алгоритм .наискорейшего спуска (ломаная 2), а при достаточно большом у — траекторию 3,

соответствующую расходящемуся процессу. Таким образом, существует некоторое предельное значение уПр, зависящее,

159

вообще говоря, от выбора (Начальной точки Vo, превышение

которого приводит к потере устойчивости процесса оптими­ зации.

Для непрерывного градиентного алгоритма

U = -yV uG (U ),

(4-39)

изменение у, казалось бы, должно привести лишь к измене­

нию скорости движения к экстремуму, а траектория движе­ ния должна остаться неизменной, совпадающей с траекто­ рией «отекания» при любом 0«CY< (пунктир на рис. 4-9). Это, однако, справедливо лишь для безынерционных схем оптимизации, в которых градиент определяется синхронно с движением изображающей точки. Реальные же объекты оптимизации обладают инерционностью и запаздыванием по каналам {ut}—>-G, кроме того, градиент на практике опреде­

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

теря устойчивости. Типичный вид траекторий изображаю­ щей точки при непрерывной оптимизации по схеме рис. 4-8,6 и при наличии инерционности в замкнутом контуре

«Mj—►G->-VJG-»-wj->-uJ» показан на рис. 4-9, где траектория 4 соответствует сходящемуся, а траектория 5 — расходящему­

ся процессу оптимизации.

Найдем условия сходимости алгоритма (4-36) или, дру­ гими словами, условия устойчивости замкнутой системы оп­ тимизации (рис. 4-8). Ввиду нелинейности последней, вос­ пользуемся методом, аналогичным прямому методу Ляпунова анализа устойчивости нелинейных систем [4-7]. Обозначим отклонение от оптимального решения r\[t]= U[t]—U*. Тогда

процесс (4-36) можно переписать в виде уравнения для от­ клонений

Ф + 1 ] = ф ] - Т ч и0 ( и * + ф ] ) ,

т|{0] — -по,

t — 0, 1,

2, ...,

которое имеет тривиальное

решение ц= 0, поскольку

V„G(G*) = 0. Поэтому точка V*

является

точкой

равнове­

сия. Чтобы выявить условия устойчивости относительно U*

для любых т) (устойчивость в малом, т. е. при малых ц прак­ тически ^неинтересна), рассмотрим норму отклонения

t W + i] ) = № + i]ll^ o,

160

Соседние файлы в папке книги из ГПНТБ