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

книги / Математические методы в системах поддержки принятия решений

..pdf
Скачиваний:
6
Добавлен:
12.11.2023
Размер:
16.41 Mб
Скачать

Отсюда следует, что рекуррентное уравнение записывается в виде

/»(**)= mta.|с*х*+/4 ■ Ш

1где-R* = Rk-t (Хк-1)•••Ля (х п)

 

Д>

Случай противоречивости частных критериев. Требуется найти опти­ мальное решение х * = (x *,X j,...,x *), при котором достигается

т т т а х { /Д х у), j = hn,

х у = (x',x*,...,x'j)}

(Xj) [ f j ) J J

J

J J

J

с учетом условия

 

 

 

n

 

 

__

j(X j)£ b, Xj> 0, Xj —

целое, j =

1 ,n.

y-l

 

 

 

Рекуррентное уравнение для такой задачи распределения ресурсов записывается в виде

 

Л*(© = тт[ш ах{Л 4_, (£-,?*(**)>/*(**))}]>

(*)

где

\хк )

 

 

 

 

 

 

к

 

 

 

0 < $ = ' £ g j ( x J)<b, к

- 1,2, ,Л .

 

 

7*1

 

 

А л г о р и т м

 

 

 

1. Записать исходные данные в виде таблицы.

 

 

 

 

 

Т а б л и ц а 1

J

хз

«/*;>

1

л\

/i(*J)

*i(*,‘)

А ( ф

*t(4>

 

х2

/.(*,')

*i(*,')

 

*\

 

х1

 

 

 

J

/2(4)

*2(4)

2

х2

х2

Л(4)

*2(4)

 

Y 2

 

 

 

х2

Л Ю

*2(4)

201

 

 

_--- tfelt_ _ _

Продолжение табл.

1

j

* j

*<*;)

 

 

xh

/*(**)

gh(x'h)

 

 

r 2

/*(**)

gh(*h)

 

h

xh

 

 

/*(**)

«*(**)

 

 

X P

 

 

 

 

 

2. Пользуясь табл.

1, вычислить Л ^ ) = f\(xi) Для всех Х| и заполнить табл. 2.

 

 

 

 

Т а б л и ц а

2

A, =/,<*2)

«l(*2>

U x \)

g2(*[)

...

fl(x [ )

gi(x[)

/ i ( 4 )

£l(*2 >

тах{Л,

))

S = S i( 4 ) + g i(x J)

...

...

...

тах{Л, (§ - £2(*i )) ,/2(x l)}

$ = gt(*2)+ g2(x[)

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

&(*■)+£|(*2>-

Первый элемент этой последовательности содержится в левой верхней клетке, послед­ ний - в клетке последнего столбца с максимальным значением суммы g2(xj) +gi(x2). По­ следовательность значений этой суммы возрастает.

4. Заполнить табл. 3. В верхней строке таблицы разместить элементы убываю­ щей последовательности, выделенной по операции 3, и соответствующие им значения сумм

S2(*I) + £I(*2)-

В клетках левого столбца разместить пары из значений

{/з(*2>> £з(*2)>-

5. Выполнить оп. 3 по табл. 3.

6. Заполнить табл. 4 согласно оп. 4.

202

7. Продолжить выполнение операций 5, 6 до заполнения таблицы, в левом столбце которой должны быть элементы

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

6.8.Методы выбора решений

вдинамических условных задачах оптимизации

Численные методы решения динамических условных задач оптими­ зации принято [51] разделять на два класса: прямые и непрямые. Класс прямых методов основывается на итерационном процессе в направле­ нии минимизации критериального функционала без использования не­ обходимых (согласно принципу максимума) или достаточных условий; класс непрямых методов основан на использовании необходимых или достаточных условий, и итерационный процесс распространяется на ре­ шение краевой задачи для системы обыкновенных дифференциальных уравнений.

6.8.1. Прямые методы итерационного решения

Метод градиента для простой вариационной задачи Майера. Пусть требуется найти решение u(t), t0 £ t < T , обеспечивающее на отрезке

времени [Г0, 7]

m in/(x,«) = ттФ(Т,х(Т)), Т = const,

«<•) ■<•>

при условии, что x(t) и u(t) (векторные функции в общем случае) связа­

ны дифференциальным уравнением

Щ= /(/,*(/),и(/))

сграничным условием x(t0) = х„ и неограниченным вектором u(t).

Ал г о р и т м

1.Задать исходное приближение u°(t) для функции u(t).

2.При управлении w* и начальном условии х0 проинтегрировать дифференциальное уравнение

 

*(0 =/(',*( 0 ,«(0 ),

Т,

пользуясь численными методами.

 

3.

Проинтегрировать в обратном времени от Т к f0 сопряженное дифференциальное

уравнение

 

 

^= ЭЯ(*(О,1/0(О ,У )(0,О

дх

203

с граничным условием

от _ д Ф (Т М Т )) ах(Т)

где H(x(t),

у°(/), /) =(V ° (О ,/(М '),и 0<О,О) - Функция Гамильтона.

4.Вычислить градиент функции Щх(Г), u°(t), у°(/), /) по и°(/).

5.Задать шаг а<) > 0.

6. Задать (7-матрицу весов компонент вектора Au°(t) приращений (изменений) управ­

ления u°(t).

 

 

ЭН

7. Вычислить вектор приращений Au°(t)

= <х0G~]

— -.

8о«. Вычислить А/дг= -чхо I гГэ— г р

- dt

 

Эи

 

 

Я Ь

ЭЯ

 

 

П д и ° ]

Эи°

 

 

и проверить условие |ДУ| < е, е > 0.

Если это условие выполняется, то и°(г) = u*(t) = «*(•), в противном случае перейти к оп. 9.

9.Вычислить управление

u'(t) = и°(Г) + Аи°(0 .

10.Перейти к оп. 2 с управлением и'(Г), и вычисления продолжать до тех пор, пока не

будет выполнено условие |Д^ < е, где j — индекс операции вычислительного процесса

У= 0, 1, 2,...

Метод градиента в задаче оптимального управления [93].Требуется найти решение u ( t ), обеспечивающее на отрезке времени [/0 7] минимум функционала интегрального вида

т

J(x,u) = J F(x(}),u(t),t)dt

*0

при условии, что векторные функции x(t), u{t) связаны дифференциаль­

ным уравнением

x(t) = f(t,x(t),u(t))

с фиксированным левым концом х(/0) = х0; и в U, где U — заданное

множество.

Преобразуем эту задачу к конечно-разностному виду. Для этого дис­ кретизируем отрезок [С0, 71 с шагом численного интегрирования т. В ре­ зультате дифференциальное уравнение и критериальный функционал заменим выражениями

хт = х, + хДх„ и,), i = 0, 1 ,..., N - 1,

ЛМ /(х,и) = т £ /■(*,,и,).

/=0

204

На интервале (ix, (/ + 1)т) управление и, примет постоянное значение. С учетом того, что х0 известно, конечно-разностную аппроксимацию за­

дачи можно переписать в виде

X= *0 + V(*0, «о) = Ф.(«о),

х2 = х , + тДх,, и,) = Ф(и0) + тЛФ|Ю . И|) = Фг(«о, «■),

................................................................ <*)

Хк = ф к(и0, и„

XJV= Ф*(«0» «1. •••» «лг-i).

JV-1

 

1=0

 

J, = хР(Ф,(и0, и„ ...,

и,).

Потребуется вычисление

производных от преобразованной ска-

 

dUj

 

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

Э/,. Э/,

Э/,

Эи}’ Эи} ’

’ Эи^

Для их вычисления представим функцию J в линеаризованном виде в окрестности некоторого текущего и(7), 70< t < Т, с учетом приращения ■&,

т. е. в виде

 

/(и + д ) = /(и )+ 5 /+ о (д 2),

Л - 1

Л - 1 -ч J

где&/ = Х « ? / . * / ) . ^ = Х | ^ - /«О l“J^Uj

В уравнениях

*,+1 = X + тЛх„ и,), / = 0, N - 1,

положим х, =Х/ + у ,, и, =и, + 6 ,., а затем выпишем уравнения для при­

ращений

Уж — Д+1У1 + Д+1Д4

.

Э/(х.,и,) „

Э/(хГ( ,и,)

где Л(+| = Е + х

— — Д

. = т———— — Д — единичная матрица.

 

 

Эх

Эи

205

Далее по аналогии вывода выражений (*) получим выражение для

 

 

Л» s = О

1,2,..., N - 1 ,

т. е.

 

 

ys = А хАг- А ^ + АгАз-АД, + А3А4- А А + -

+ ^A-i-

Теперь выпишем уравнение для 8/(у, ■&):

 

 

 

 

N-1

ЛГ-1

 

 

 

 

Щ у , $) =

)

+

•*»)»

 

 

 

 

/—1

/*0

 

 

,

ЭF(xi9ut )

дF (xi ,ui)

и подставим

в выражение для

где */, = т — — —

gf = х— ^ — —

 

Эх

 

ди

 

 

 

8/(у, д)

выражение для уя. После несложных преобразований получим

искомое выражение

 

 

 

 

 

 

 

8/ = x < G/> < u

 

 

 

 

 

/=0

 

 

 

где <?0 =

+ £ о> С, = Х Д У ,

+ * ,>

 

 

 

5 =1 ___________

5 =2

 

 

 

/),* ,,

/ = 1, N —1 — транспонированная матрица.

 

fy = -vG,

jV-l

и в методе градиентного спуска 8J = - Р Х « 7 ,А ) ,

/-о

где шаг р выбирается из решения задачи min/ф ).

Вектор управления и; на каждом шаге вычисляется по предыдущему приближению ffj, т.е. и ; - и j - р

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

Ал г о р и т м

1.Задать начальный вектор управления

й= (П0,щ....UNA )т.

2.Вычислить Gj или, что то же,

3. Задать Ф.

N_{

4. Вычислить 5J = У (Gh bj).

/-о

5. Задать шаг градиентного спуска f) или вычислить этот шаг из решения задачи

m in/(p). р>о

206

6. Вычислить новое приближение управления ин - и - р5/.

7. Повторить операции 2—7 до выполнения условия |&/| й е, е > 0 или до условия вы­ хода управления на границу множества U.

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

т

«*(/) = argmin/(x,«), J(x,u) = f / 0(/,x(0 ,«(/))<*

ueU

J

при условии x(t) = f(t,x(t),u(t))> t0< t £ T , x(t0) = x0, x(T) = x T,

x € RP, и 6 U <zR", т й п ,

сводится к задаче вида: найти u ’(t) = argminF(x,M,X), uzU

F(x,u,X) = Jjf 0 (t,x,u)+ jr X , ( x 1- f 1(t,x,u))2 dt.

/0L <=|

Оптимальное управление и для такой задачи, очевидно, должно

отыскиваться из решения системы уравнений Эйлера

2 ]ГХ,(х' - f ' ( t , x , u ) ) ^ - j = 0, у = ~\jn,

duJ

tX

 

Эи'

т

? £ >

- 2 ± к <*'-/'<<, * » > , £ ♦

 

Эх1

Тл

Эх*

+2XS ^ - ( x s -

f s (t,x,u)) = 0, s = 1 , n.

 

dt

 

 

Структура алгоритма решения этой системы строится [51] согласно итерационной процедуре Кононенко

х м = x i ~ a iXs (t)

М

^

-

2 ± х , ( * ‘

о х

 

 

 

OX

 

/=i

 

- 2 ^ - j 4 < * '

- / ' ( / Л

И

) ) ! , X Sj( t)

= ( t - t 0)(.T-t),

(*)

dt

 

 

 

],

 

 

uL = « / - « /

 

 

 

 

, / =

0, 1 , 2 , ...

 

 

 

 

Эи'

 

buJ

 

 

 

 

 

207

Ал г о р и т м

1.Задать начальные приближения х0(0, и0(г), (XQ.

2. Согласно (*) вычислить новые приближения х,(0, Щ(1), Д хь и,). 3. Определить а, и вычислить очередные приближения

*2(0 , «2<0 , Дх2, и2).

4. Повторить выполнение оп. 3 для 1 = 3 ,4 ,... до тех пор, пока не будет выполнено условие останова алгоритма, например вида,

У(х/,«/)<удоп.

Имеют место задачи оптимального управления

г

Л «0) = \fo(x(i)M t),t)dt+ 0(x(T),T)-> min

J

*(•)

Л)

 

x(t) =flx(t), u(t), t), x(Q =

X 0

с фазовыми h(x(t), f) < 0 и смешанными g(x(t), u(t), t)< 0, t0£ t £ T огра­ ничениями и e I /c E r, x E ”, n> r.

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

Ал г о р и т м

1.Составить штрафную функцию

Vт

Ш- ) # 1 ) = А «О) + C,lj £ ( т а х { * , ( * ( /),«(/),г),О})2

ta к.

^(тах{А у(х(О,О,0})2 Л + Ф {ДТ),Т),

где С/ > 0 — коэффициент штрафа. Эта функция подлежит минимизации при дифферен­ циальном ограничении

Mt) =Л*(0> u(t), 0, *('о)

ипри каждом значении С,.

2.Задать С,-, / = 0.

3.Задать начальное приближение и<°>.

4.Вычислить х(() как решение уравнения движения

х ( < ) = / W 0 , «(0)( 0 , 0 , *('о) “ *0-

5. Вычислить начальное приближение критериального функционала

/°) = /(„(°), х(|/°)(г))).

5. Вычислить С| = рС0, р > 1 или, в общем случае, Сж = рС,.

208

6. Вычислить y(f) как решение сопряженной системы уравнений

с условиями трансверсальности у(7 ) = <Рх(х(Т), 7) на правом конце траектории

t0 < t£ T .

 

 

7. Вычислить управление

=

учитывая крите-

и

риальный функционал в виде /Ди( ), Q .

8.Вычислить для «<<+|>(0 траекторию х<'+1)(г), t0< t< T .

9.Вычислить значение критериального функционала

/'+ ') = x(u<l+l>(t))).

10. Проверить выполнение условий

//+ 1 ) < / О , I//+ D _ / 0| < е> ш а х И +1)( 0 - х » ( 0 | < 5 , t 0 Z t£ T ,

если они выполняются, то искомое решение задачи (x(t), u(t))opl получено, иначе - перей­ ти к оп. 5.

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

х(/), t0Z t< T .

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

Пусть задача выбора оптимального решения-управления записыва­ ется так же, как и в предыдущем методе, но при этом подчеркнем, что функция Д/, x(t), u(t)) — нелинейная.

Теперь запишем более о б щ у ю за да ч у : найти и*(0, обеспечиваю­ щее достижение

min/, (х,м,е)

ueU 1

критериального функционала вида

/, (х,и,е) = J(x,u) + е^[х,. (Г) - х п ]2, е > О i=i

при условии, что введенная переменная е - » 0 (е определяет точность

решения задачи минимизации) и что выполняются ограничения

х (0 =А*>*(0 >«(0 ), t0< t< T , x(t0) = х0.

1 4 - 5 3 9 6

209

Эта задача не содержит граничных условий, но ее размерность уве­ личена по отношению к исходной; последняя погружена в нее и являет­

ся следствием предельного перехода при е - » 0.

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

переменной е (при различных значениях е, > е2 > е3 > ••• > в* > ••• > 0,

начиная с некоторого достаточно большого). В этой задаче крите­ риальный функционал /|(х, и, е) преобразуем к функционалу вида J2(x, и, е) = Ф(х(Т), £*). Для этого введем переменную x„+l(t) и преобра­ зуем выражение для J(x, и) к виду дифференциального уравнения

* я+, (0 =А*> *(0> Xa+l(t), u(t)), х„+1(/„) = *«+1,0 =

П

затем введем обозначение x„+2(t) = £ £ [* / (О- * ? ) ] 2 и выпишем диффе­

ренциальное уравнение

*„+2(0 = 2 z £ ( x l ( t ) - x 11)f(t,x(t)Mt)), *„+2(°) = eX [*((^o)-*n]2-

/=i /=i

Тогда Ф(х(Т), ек) = х„+1(Т) + х„+г(Т) и минимизация этого функцио­

нала должна осуществляться с учетом дифференциальных уравнений для фазовых переменных x(t), хя+1(/), *„+2(0 с соответствующими им на­

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

Метод динамического программирования. Сущность метода заключа­ ется в сведении задачи оптимального управления к задаче динамическо­ го программирования.

Проиллюстрируем это на конкретной за д а ч е . Пусть требуется найти оптимальное управление и°(/)> при котором обеспечивается

j г

min—JK2(t)dt, t0, T — константы, u(t) е U,

2

при условии, что движение управляемой системы описывается урав­ нением

*(0 = -*Ч 0 + «(0 . *(*<>) = *о» *(7) = х Г.

Схема операций:

1 . Дискретизация отрезка времени [/„, 7] на травных подотрезков Ат.

2. Преобразование критериального функционала и уравнения двидх №~1

жения в дискретную форму — JV (A ;) и х(к + 1 ) = -у?(к) + Ахи(к) соот-

2 к-0

ветственно.

210

Соседние файлы в папке книги