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

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

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

 

min F (u°(t),$l (t),f>2(t),...,$„(t))>

>

min

F (K (0 ,d .(0 A (0 > -A (0 ).

 

M t)eR(u(t))

, w

2 W

Я У , /

в котором

 

 

 

 

Л(и) = argmaxF, («(ОА

(0), ' =

1 ,п,

rnzV =f[ V „ т е

К ,

 

 

 

/=i

Установленное таким образом u \t) является оптимальным иерархи­

ческим решением первой стороны, а ситуация

(и0( 0 , < ( О А ( ' ) , г д е W® е Л,(« “(/)),

называется ситуацией равновесия по Штакедьбергу в иерархической ди­ намической операции; R,(u(t)) — множество оптимальных реакций п сторон второго уровня на управление u(t); это множество при каждом u(t) интерпретируется как множество ситуаций равновесия в бескоали­

ционном (стороны второго уровня действуют в конфликте независимо друг от друга) динамическом конфликте. Ситуация

где и°(0 = aig max F(u(t),6,(t)e R,(u(t))),

R, («(0) = arg max F, (w(0A (0). v/ (0«7

является ситуацией равновесия по Штакельбергу и совпадает с ситуаци­ ей равновесия по Нэшу. __

Для нахождения управлений и°(0 и £®(0> i — \,n необходимо решить

п + 1 задач оптимального управления.

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

Ситуация равновесия (и0, R,(u), R2(u)) определяется выражениями

F (t,x,u \R ^(u °),R 2(u0)) = max F(t, x,u,R^ (u),R2(и)),

u&U

Fx(t,x ,zx ,u,R{ (u),R2(u)) = max Ft (t,x,zx,u,R2(и)||fl,),

«,еК|

F2(t,x,z2 (U),R2(и)) = maxF2(t,x,z2 ,u,R, (ы)||б2).

<»2e^2

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

151

д® е Л, (и), в® € R2(и)) составляла ситуацию равновесия в двухуровневом

иерархическом динамическом конфликте, необходимо и достаточно, чтобы во всех точках фазовых пространств сторон, за исключением осо­ бых множеств, соответствующих конечному числу гиперплоскостей tk, t= 1, 2,..., (к — индекс множеств времени переключения управлений),

существовали непрерывно дифференцируемые функции сторон верхне­ го ф(t, х) и нижнего <р1и(/, х, z), ф2и(/, х, z) уровней и такие, чтобы удовле­

творялось уравнение Веллмана, а именно (см.п.3.2)

И Ч /.х .и ® ,^ ® ),^ ® )) Эф(/,х) | Эф(Л*) f(t,x ,u °) +

Э/

Эх

+fo(t, х, Zu Z2, Л,(и®), Л2(и®)) = 0, ф(7’

х(7)) = О

W(t, х, и, Л,(и), R2(U)) < 0, и

U;

Wlu{t,x,Zl ,Ц,Лу(ц)||д,) =

+ f o * * > > /(/, ху )+

dt

дх

+ ^ - 8 / (t’Z, > u\R j(“))+ fi (it>x,Zj ,u ®,Rj(u)) = 0, j = 1,2, j * /,

dZi

 

 

tyiuiT, x(7), Z/(D) = 0;

 

Wiu(t, x, г„ и, Л2(и)||б,) ^ 0,

e

K„

*, z2, «, Л,(и)||б2) < 0,

d2 €

V2.

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

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

Пусть система управления имеет п > 2 уровней. На каждом уровне i е [2, й] должен быть выбран вектор переменных х е R m' так, чтобы

обеспечивался максимум его критериальной функции в виде скалярно­ го произведения (а", х*), / = 2,3,...,л, а 11 е R m‘ , при условии принадлеж­ ности вектора х = (х1 х2 ..., хО заданному множеству X

х е Х 1 ={хеЛ "|/?,1х 1+Вп х 2 +...+В"х1 <Ь‘, / = 1,2,...,/»}, й = ^ /и ,,

/-1

b‘ R k‘ .

152

В целом же задача выбора решений в рассматриваемой системе фор­ мулируется следующим образом: найти вектор х’ е А1 при котором дос­ тигается

m axT (fl,',x /), X х ={х€Л "|Д 1,х' £*'},

‘ • * 'м

где при заданном х1 вектор х2 является решением задачи

т а х(а22,х 2), X 2 = {х е R"\B2' Xх +В22х 2 й Ь 2},

хе Х 2

апри заданных х1 и х2 вектор х3 является решением задачи

тах(а33,х 3), А 3 = {х е Ля|Я31х ‘ + В32х 2 +В33х 3 й Ь 3};

х е Х 3

далее, при заданных х1 х2, ...,х'-1 вектор х7 является решением задачи

m ax(e",x'), А ' = { х е R"\Bn x l +Bi2x 2+...+Buх ‘ й Ь 1};

х1 е Х 1

инаконец, при заданных х1 х2 ..., х< ..., х"-1 вектор х* является решени­ ем задачи

max (аяя,х"), А" = {хе Ля|Яя,х' +Яя2х 2+...+Яяях я <АЯ};

где — матрицы размера к ,х т ,, j = 1,2,...,/, b‘ е Rkl, х' е Л"',

e ' e J T .

п

Оптимальным решением будет то х € А = П, которое удовлетворяет

п

максимальному значению функции ^ ( а '',х ') на замкнутом выпуклом /=|

множестве А. Тогда для каждого / = 2,3,...,я при заданных х1 х2 .... Xм задача /-го уровня имеет допустимое решение и для х' существует при ограниченной критериальной функции оптимальное решение, которое для линейных и вогнутых функций единственно. Принципиальная схе­ ма отыскания решения заключается в следующем: верхний уровень — лидер, располагая полной информацией о задачах и возможностях всех нижестоящих уровней, сообщает им свою стратегию как функцию от параметров управлений, находящихся в распоряжении соответствую­ щих нижних уровней; получив такую функцию, второй уровень опреде­ ляет с использованием метода линейного программирования свою оп­ тимальную стратегию как функцию от стратегии верхнего уровня (так как х2 зависит от х1) и выдает ее верхнему уровню и ближайшему ниж-

153

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

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

Г ла ва ш е с т а я

Методы выбора решений при определенности

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

1. Найти min f(x ), — статическая задача безусловной оптимизации в xeR”

евклидовом пространстве.

2. Найти m jn/(x), где A' = j x e Л" g, (*)=0,

/ = 1 Л

g ,(x )£ О

i = к+1,т

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

Задачи 1 и 2 в зависимости от свойств функции могут представлять задачи гладкой и негладкой - недифференцируемой выпуклой и невы­ пуклой оптимизации.

3. Найти min /(х ),

x s X c R "

__

_____

где X = {х е D\g,(х) = 0, / = 1,к, g, (х) <0, / = к+1,т),

D = Y [ D t , Djс

{0,±1,±2,...}, j

/ с { 1, 2, ...я},

Dj = R, если j е J.

Это статическая задача условной дискретной оптимизации — задача дискретного программирования.

4. Найти min F(x(t)), где F(x(t)) пусть имеет простую структуру, на­

пример, вида

155

F(x(t)) = { toT jf(t,x(t))d t,

Jo

когда t0£ t< T , x(f0) = a, x(T) = b — закрепленные концы либо они могут перемещаться по заданным кривым, где /(/,*(/), *(/)), Л (М 0 ) — непре­ рывные определенные в области t0< t^ T , -oo< x(t),x(t)< 00 и обладаю­

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

5. Найти min/'XxW) при ограничении G(x(/)) - С, где С — заданная (*<0)

постоянная. Функционал F(x(t)) записывается, как и в предыдущей за­

даче, а функционал С(х(/)) — в интегральной и дифференциальной фор­ мах, пусть

т

G(x(t)) = jg ( t,x ( t) ,m d t,

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

6. Задачи 4 и 5 сформулированы при введении критериального функционала Лагранжа, они могут быть сформулированы и для случаев, когда функционалы F(x(t)), G(x(f)) зависят от нескольких неизвестных

независимых функций и от их высших производных или когда критери­ альный функционал принимает вид функционала Больца

т

,x(t),x(t))dt+Ф (Т,х(Т))

to

или функционала Майера

F(x(t)) = Ф (7>(7)),

где Ф(Т,х(Т)) является терминальным функционалом; фазовая перемен­ ная х(Т) не должна быть закреплена. При этом моменты времени f0 Т

могут быть неизвестными и подлежат определению как дополнительные переменные при ограничениях x(t) =Д/,х(/),ы(/)), ta< t< ,T , x{Q , х(Т)

начальное и конечное состояния, они могут быть свободными либо за­ крепленными, U e Л" — некоторая область возможных значений управ­

ления; получена динамическая задача оптимального управления при критериальном функционале F(u(t)):

156

т

F(u(t)) = Jf(t,x (t),x(t))d t+Ф (Т,х(Т)) критерий Бояща,

Т

F(u(t)) = jf(t,x(t),x(t))d t критерий Лагранжа,

F(u(t)) = Ф (Т,х(Т)) — критерий Майера.

Задачи 4—6 могут записываться и при дискретном времени, тогда они преобразуются к динамическим многошаговым безусловным или условным экстремальным задачам.

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

производных

Метод наискорейшего спуска. Пусть Дх), х е R" — выпуклая непре­

рывно дифференцируемая критериальная функция. Ее приращение

 

АДх) = (f(x), Ах) + о(Дх, х),

 

где lim

о(Ах,х)

 

= 0,

 

Дх-»0

Ах

 

f i x )

= ( / ' (х ),/'2 ( х ) , (х)), / ; (х) = Э/(х)

 

дх1 а->0

е, = (0, 0,..., 0, 1, 0,..., 0„) — единичный вектор /-й координаты. При f'{x ) = 0 направление наискорейшего уменьшения функции Дх)

в точке х совпадает с направлением антиградиента (—/'(х)).

Переход из точки хк в точку х*+1 осуществляется по следующему пра­

вилу:

х *+ , = * * “ р * е * = х * " р * й Я ^ ’

где В* — шаг в направлении —/f '( x ) .

И/'(**)Н

Приведем схему алгоритма отыскания минимума данной функции Дх), х € R”.

Ал г о р и т м

1.Задать начальную точку *0 е R".

2.Вычислить производную /( х 0) и единичный вектор

Л**) к о,1,....

iim )ir

157

3. Проверить неравенство/'(**) ^ У, * = 0,1,- либо Цх* - х*+1|| £ е, либо ||/(х*) - Л ^ +i)! ^ < 5, где у, е, 5 — заданные числа согласно требуемой точности вычисления искомого реше­ ния х*. При выполнении неравенства имеем или X0 =XQ — искомое решение, или надо пе­ рейти к операции 4.

4. Вычислить величину шага p j из решения задачи

Ро = arg min f( x 0 - Р0/'(*о ))•

Ро>°

Заметим, что для выбора величины шага существуют и другие способы [19; 20; 22; 24; 86].

5. Определить точку = х0 -pQ — ^ --. Н/'(*о)Н

6. Перейти к оп.2 для JC = JCJ, а при необходимости (при невыполнении неравенств оп.З) переход осуществить для х = хк, к - 2, 3,..., и до того значения к = к\ на котором в первый раз будет выполнено условие окончания поиска искомого решения.

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

„)

пусть при линейных ограничениях

п

< b ,,i= 1 , 2 , п, х9 SO, j = 1, 2,..., n.

7=1

Рассмотрим метод Ф р е н к а Вулфа . Сущность метода заключает­ ся в следующем. Поиск искомого решения начинается с задания на­ чального приближения принадлежащего допустимому множеству. Затем в этой точке вычисляют градиент критериальной функции и вместо по­ следней вводят линейную критериальную функцию

F(xit х 2 ..., х„) = (grad^ x^ x),

которую максимизируют при заданных ограничениях. Обозначим най­ денное решение задачи линейного программирования через £(0). По вы­ численным х<#> £(0) и gradTfa^) находят очередное приближение х0* для исходной задачи выбора решения по следующему выражению

х<|) = х(0) + а0(С<#,- х <0 ),

где Оо, будем считать, определяется исследователем (0 < а<) < 1). Аналогичным образом выполняются последующие итерации по вы­

бору оптимального решения.

158

Ал г о р и т м

1.Задать начальное приближение дс<°>. Выполнить названные выше вычислительные действия. Проверить необходимость перехода к очередной итерации: если

||grad%x<0>)|| < 5 >0,

то х<0) принимается за искомое оптимальное решение, в противном случае - перейти к оп. 2.

2.Пусть имеет место + 1)-я итерация. Установить значение а*. Вычислить исход­ ное допустимое решение д^+1) = х№ + сик(С,№ - х№).

3.Вычислить градиент исходной критериальной функции в точке ^ +1).

 

4. Восстановить линейную функцию Р(хь х2,

= (%radTflx(k+V), х).

 

5. Найти решение

задачи линейного программирования:

 

 

 

Д х 1, х2, х „ ) = (grad%x<*+l>), х) -> max

 

 

 

 

<*»)

при

ограничениях у

ауХу<Ь^ / = 1,2,...»л, Ху > 0, у =

1,2,...»л. Для этого воспользо-

 

 

У=1

 

 

ваться симплекс-методом п. 6.4.

 

 

6.

Проверить необходимость перехода к очередной итерации, как это определено в

оп.

1.

 

 

 

Метод Ньютона (Ньютона—Рафсона) с регулировкой шага. ПустьД х), х с К 1— выпуклая и дважды непрерывно дифференцируема. Эта функ­

ция может быть аппроксимирована в точке квадратичной функцией

/*(*) = Л хк) + (f(xk), Ах) + |(/"(**)Ах,Дх),

где Ах = х - хк определяет направление поиска минимума функции / к(х).

На направлении Ах очередную точку х*+, выбираем согласно операции вида хж = aig min/*(x), х е R", или из решения задачи /*(х) = 0. Отсюда получим Ах* = - ( f'( x k))~'f(xk), и формулу для вычисления хж по извест­ ному хк запишем в виде

х = * _R (Г \ х к) У 'Г ( х к)

Ш* ^ к Ш " (х к) Г 'Г ( х к)\\

Для реализации этой формулы следует организовать итерационный вычислительный процесс до той итерации, на которой будет выпол­ няться критерий окончания поиска искомого решения. В результате применяется следующая схема алгоритма поиска х* = arg min/(x), х е R”.

Ал г о р и т м

1.Задать начальную точку х е Rn.

2.Вычислить производную /'( * о).

3.Проверить неравенство/'( * 0) ^ Y, Y > 0, если оно выполняется, то х0 — решение за­ дачи, иначе — перейти к операции 4.

159

4. Определить направление ех перехода к точке jct из точки х0

е, = Дх, - - < -^ * о » ~ 'Л * Ь )

IK /'^ o )) '1/'<JCo)H

5. Вычислить величину шага (3JJ из решения задачи

pj=argrain/(x0-p0«i)

Ро>°

или другими способами выбора шага [19; 20; 22; 24; 86].

6.Определить точку х х = х0 -

7.Перейти к операции 2 для х = х х и далее (см. предыдущий алгоритм).

Заметим, что для уменьшения трудоемкости алгоритма допустимо вычислять (А*))-1 не на каждой итерации, а один раз через каждые s шагов, при этом 5 подбирается эмпири­ чески в процесс вычислений.

Квазиньютоновский метод — метод переменной метрики. Пусть для метода Ньютона найдена аппроксимация невырожденной матрицы (ГЧ**))-1; обозначим эту аппроксимацию через Нк тогда

**+l ~ Хк ~ $kHkf"(xk)-

Воспользуемся выражением

/'(**) - / ' C W =/"(**+1)(** - **+■) + о(||Дх*||), Ахк = хк - хк+1,

откуда хк - xk+l = <f"(xk+l))-'<f'(xk) - f ' ( x k+i)) и представим Дх) квадра­

тичной функцией, получим точное выражение

-X* = (Г(**+,))-'(Г(**+1) - Г ( х к)).

Теперь потребуем, чтобы имело место так называемое квазиньютоновское условие Hk+l(f'(xk+l) - f ' ( x k)) = х*+, — хк, в котором

Нк+\ = (о(Нк + ДНк),

где со — масштабный множитель; ДНк — некоторая поправочная матри­ ца; # 0 и Нк+1 при любом к являются положительно определенными мат­ рицами. Выбор ДНк определяет метод переменной метрики.

Установлено [20; 87; 88], что

 

Д //

—^ (**♦! ~ Xk)Y

H kbgkZ T

 

*

со

ДgTk Y

bgkZ

где Agk =/'(**+,) -/'(* * ),

 

 

Y, Z

произвольные векторы размерности n x l .

Если

Y = Z = (x*+1 -

xk) — HiAgk, со =

1, то имеет место алгоритм

Бройдена, а при Y= хк+] хк9 Z — НкAgk — алгоритм Девидона—Флетче­ ра—Пауэла (ДФП).

160

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