WYKŁAD 14
1. Programowanie dynamiczne ( optymalizacja wieloetapowa )
Optymalizacja wieloetapowa jest nazywana w literaturze programowaniem dynamicznym . Nazwa ta wywodzi się stąd, że pierwsze zastosowania optymalizacji wieloetapowej miały miejsce w automatyce do optymalizacji układów dynamicznych .
Optymalizację wieloetapową można stosować tylko w tych zadaniach w których proces rozwiązania można sprowadzić do procesu markowskiego. Proces markowski ma tę właściwość , że po podjęciu określonej liczby decyzji np. , w wyniku podjęcia -tej decyzji , (przy czym ) stan procesu zależy tylko od stanu bezpośrednio po podjęciu -tej decyzji oraz ciągu decyzji podjętych później .
k
n n>k
k
Systemy pracujące sekwencyjnie , procesy wieloetapowe układy i systemy dynamiczne na ogół łatwo dają się optymalizować wieloetapowo , ponieważ wieloetapowość jest cechą ich sposobu działania .
2. Zasada optymalności
U podstaw algorytmów wg których przeprowadzana jest optymalizacja wieloetapowa leży zasada optymalności .
Zasadę optymalności można sformułować następująco : dowolny fragment optymalnego łańcucha stanów , jest łańcuchem optymalnym łączącym stany początkowy i końcowy tego fragmentu.
>
< N Łˆ 0,
) 0
ˆs( ˆs(1)
) ( ) ˆ(i s i
s = ×
) 1 ( ˆi+ s
) 1 ˆ(k− s
) ( ) ( ˆk s k
s = × sˆ N( )
) 1 ( +
× i
s s×(k−1)
Rys. 1 Optymalny łańcuch stanów Łˆ
[
sˆ(0),sˆ(N)]
Weźmiemy pod uwagę łańcuch stanów Łˆ
[
sˆ(0),sˆ(N)]
przedstawiony na rysunku 1 Wyróżnimy następnie dwa etapy pośrednie „ i ” oraz „ k ” ( przy czy k>i).Przyjmiemy założenie ze fragmenty łańcucha Łˆ
[
sˆ(0),sˆ(i)]
oraz Łˆ[
sˆ(k),sˆ(N)]
sąoptymalne oraz że między stanami sˆ(i), sˆ(k) można znaleźć łańcuch
[
s (i),s (k)]
Ł× × × lepszy od dotychczasowego (zaznaczony na rysunku linią przerywaną ). Jeżeli tak to można znaleźć lepszy łańcuch Ł×
[
s×(0),s×(N)]
wprzypadku zastąpienia dotychczasowego fragmentu Łˆ
[
sˆ(i),sˆ(k)]
fragmentem[
s (i),s (k)]
Ł× × × . Takie zastąpienie przeczy jednak założeniu ,że łańcuch jest optymalny . Wynika z tego że fragment
[
ˆ(0),ˆ( )ˆ s s N
Ł
]
Łˆ[
sˆ(i),sˆ(k)]
łańcuchajest fragmentem optymalnym .
[
ˆ(0),ˆ( )ˆ s s N
Ł
]
3. Algorytm optymalizacji wieloetapowej
Konstrukcję algorytmu optymalizacji wieloetapowej przedstawimy na przykładzie problemu optymalizacji pracy zbiornika retencyjnego w interwale czasu
.Posłużymy się problemem , którego główne założenia sprowadzają się do :
[
t T]
t∈ 0,
• uzyskanie w chwili końcowej horyzontu optymalizacji T , maksymalnie zbliżonego wypełnienia zbiornika xˆ T( ) do żądanego wypełnienia xW(T)
• zapewnienie odpływu ze zbiornika uˆ(t),∀t∈
[ ]
0,T , który w minimalny sposób odbiegać będzie od określonego funkcją zapotrzebowania pożądanego odpływu ze zbiornika w całym horyzoncie optymalizacji,
) (t Y
[ ]
Tt∈ 0,
• określenie trajektorii stanu zbiornika w całym horyzoncie optymalizacji tj.
) ˆ t(
[
T x t∈ 0,]
∀ , zapewniającej minimalne odchylenia od żądanej (określonej wcześniej w oparciu o inne kryteria ) trajektorii
[ ]
T . t txW(),∀ ∈ 0,
Wzajemne relacje między składnikami wskaźnika kształtują współczynniki wag
3.
2 1,a ,a a
a.) analityczna postać wskaźnika jakości uwzględniająca powyższe wymagania jest następująca :
[ ]
( )[ ] [ ]
( ){ }
⎪⎪
⎭
⎪⎪⎬
⎫
⎪⎪
⎩
⎪⎪⎨
⎧
−
⋅ +
−
⋅ +
+
−
⋅
⋅
=
∫
++ T
W W
W
dt t u t u a t x t x a
T x T x a F
0
3 2 2 2
1 2
) ( ) ( )
( ) (
) ( ) ( 5
. 0
(1) w której :
) ˆ t(
x trajektoria stanu zbiornika w okresie optymalizacji ∀t∈
[ ]
0,T) (t
xW wymagana trajektoria stanu zbiornika w okresie optymalizacji
[ ]
Tt∈ 0,
∀
) (T
x wypełnienie zbiornika na koniec rozpatrywanego interwału czasu ( horyzontu optymalizacji T ),
) (T
xW żądane wypełnienie zbiornika na koniec rozpatrywanego interwału czasu ( horyzoncie optymalizacji T ),
) ˆ t(
u odpływ ze zbiornika w okresie optymalizacji ∀t∈
[ ]
0,T) (t
uW pożądany odpływ ze zbiornika w całym horyzoncie optymalizacji
[ ]
Tt∈ 0, , ( funkcja zapotrzebowania )
3 2 1,a ,a
a współczynnik wag powiązany ze składnikami wskaźnika jakości.
b.) równanie stanu zbiornika sprowadza się do zależności między prognozowanym dopływem do zbiornika a sterowanym odpływem
) (2)
( ) ( )
(t Q t u t x& = P −
) 0
0 ( ,
0 x x
t
dla = =
gdzie : prognozowany QP(t) dopływ do zbiornika ∀t∈
[ ]
0,Twypełnienie zbiornika w chwili
x0 t=0
c.) ograniczenia sterowania
umin(t)≤u(t)≤umax(t) (3)
gdzie: umin(t) - dolne ograniczenie sterowania (odpływu) umax(t) - górne ograniczenie sterowania (odpływu) d.) ograniczenia stanu zbiornika
(4) )
( ) ( )
(t x t x t
xd ≤ ≤ g
gdzie : xd(t) dolne ograniczenie stanu zbiornika , górne ograniczenie stanu zbiornika )
(t xg
Celem uproszczenia opisu algorytmu przyjęto stałe w czasie dolne i górne ograniczenia stanu
e.) Do określenia dalszych zależności konieczne jest przeprowadzenie dyskretyzacji przedziału czasu
[
t0,T]
na etapów o stałym interwale ,(
T t)
N N t= − 0 /∆ (5)
co odpowiada wprowadzeniu indeksu dyskretyzacji czasu:
: 1 ,...,
1 +
= N
i
f.) Należy również przeprowadzić dyskretyzację pojemności zbiornika na pewna określoną ilość stanów
) (t x M , różniących się o stałą wartość ∆x
∆x=
(
xg −xd)
/M (6)Dyskretyzacja odpowiada przyjęciu indeksu dyskretyzacji stanu .
1 ,...,
1 +
= M
j
W wyniku przeprowadzonej dyskretyzacji otrzymamy siatkę ,której punkty odpowiadają -temu stanowi zbiornika w -tej chwili czasu . Korzystając z siatki zaznaczyć należy tj. wymaganą trajektorie stanu zbiornika w okresie optymalizacji
j i
) (i xW
1 ,...,
1 +
= N
i oraz warunek
początkowego wypełnienia zbiornika odpowiadający węzłowi np.
i warunek końcowy wypełnienia zbiornika w cyklu obliczeniowym np.
(
(i=1),(j=4))
(
(i=N+1),(j=4))
( rysunek 7.2).1 , 1 +
= N i )
, ( , ) , (i j x i j
x W
1 ,...,
1 +
= M
j
=1
i i=2 i=4 i= N+1
=1 j
=2 j
=6 j
) 7 , 4
W(
x xW(N+1,6)
((i=1),(j=4))
x x((i=N+1),(j=4))
Rys. 2 Dyskretyzacja pojemności zbiornika i horyzontu optymalizacji g.) W analogiczny sposób należy określić dyskretny zakres zmienności funkcji
, , .
) (t
QP uˆ t( ) )
1 (t
uW
h.) Obecnie dyskretne równanie trajektorii stanu zbiornika można zapisać w następującej formie :
, 1 ))
( , ( ) ( ( ) , 1 ( ) ,
(i k =x i− j + Q i −u i j k ⋅∆t k= M +
x a (7)
w której :
(
x i k x i j)
ti Q k j i
u( ,( a ))= ()− ( , )− ( −1, ) ∆ (8)
)) (
, (i j k
u a
i-ta chwila czasowa ze stanu o
numerze j
na stan o numerze k
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
(
Q u)
tx x
t u
Q x
x
t u
Q x
x
t u
Q x
x
t u
Q x
x
t u
Q x
x
t u
Q x
x
t u
Q x
x
∆
⋅
− +
=
∆
⋅
− +
=
∆
⋅
− +
=
∆
⋅
− +
=
∆
⋅
− +
=
∆
⋅
− +
=
∆
⋅
− +
=
∆
⋅
− +
=
) 7 8 ( , 4 ) 4 ( ) 8 , 3 ( ) 7 , 4 (
) 7 7 ( , 4 ) 4 ( ) 7 , 3 ( ) 7 , 4 (
) 7 6 ( , 4 ) 4 ( ) 6 , 3 ( ) 7 , 4 (
) 7 5 ( , 4 ) 4 ( ) 5 , 3 ( ) 7 , 4 (
) 7 4 ( , 4 ) 4 ( ) 4 , 3 ( ) 7 , 4 (
) 7 3 ( , 4 ) 4 ( ) 3 , 3 ( ) 7 , 4 (
) 7 2 ( , 4 ) 4 ( ) 2 , 3 ( ) 7 , 4 (
) 7 1 ( , 4 ) 4 ( ) 1 , 3 ( ) 7 , 4 (
a a a a a a a a
Rys 3 Zapis dyskretnego punktu trajektorii stanu
Dla każdego węzła siatki stanu (rysunek 2) można wg wzorów (7) i (8) określić wartość trajektorii stanu , sterowanie konieczne do osiągnięcia tego stanu , oraz ze stanu na stan . j k
wartość wskaźnika jakości która dla ustalonej chwili odpowiada przejściu trajektorii Dyskretna postać wskaźnika jakości dla każdego węzła siatki przedstawia się następująco :
i
( ) [ ]
3[ ( ) ]
22
2 ( ) ( , ) () ,( )
) ( ,
1 j k a x i x i k a u i ui j k
i
F − a = ⋅ W − + ⋅ W − a (9)
Dla wybranych węzłów siatki obliczenia przedstawione są poniżej
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ]
3[ ( ) ]
22 2
2 3
2 2
2 3
2 2
2 3
2 2
2 3
2 2
2 3
2 2
2 3
2 2
) 8 3 ( , 3 ) 3 ( 8
, 3 ) 3 ( )
8 3 ( , 2
) 7 3 ( , 3 ) 3 ( 7
, 3 ) 3 ( )
7 3 ( , 2
) 6 3 ( , 3 ) 3 ( 6
, 3 ) 3 ( )
6 3 ( , 2
) 5 3 ( , 3 ) 3 ( 5
, 3 ) 3 ( )
5 3 ( , 2
) 4 3 ( , 3 ) 3 ( 4
, 3 ) 3 ( )
4 3 ( , 2
) 3 3 ( , 3 ) 3 ( 3
, 3 ) 3 ( )
3 3 ( , 2
) 2 3 ( , 3 ) 3 ( 2
, 3 ) 3 ( )
2 3 ( , 2
a a
a a
a a
a a
a a
a a
a a
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
W W
W W
W W
W W
W W
W W
W W
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ] [ ( ) ]
( ) [ ( ) ]
3[ ( ) ]
22 2
2 3
2 2
2 3
2 2
2 3
2 2
2 3
2 2
) 7 5 ( , 8 ) 8 ( 7
, 8 ) 8 ( )
7 5 ( , 7
) 6 5 ( , 8 ) 8 ( 6
, 8 ) 8 ( )
6 5 ( , 7
) 5 5 ( , 8 ) 8 ( 5
, 8 ) 8 ( )
5 5 ( , 7
) 4 5 ( , 8 ) 8 ( 4
, 8 ) 8 ( )
4 5 ( , 7
) 3 5 ( , 8 ) 8 ( 3
, 8 ) 8 ( )
3 5 ( , 7
a a
a a
a a
a a
a a
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
u u
a x
x a F
W W
W W
W W
W W
W W
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
−
⋅ +
−
⋅
=
i )
, ( , ) (i x i j
x W
+1
= M j
=1
i i=2 i=4 i= N+1
=1 j
=2 j
=6 j
Góne ograniczenie stanu zbiornika
Dolne ograniczenie stanu zbiornika
Wymagana trajektoria stanu zbiornika
=7 i
=3 j
=4 j
=5
j j=5
Rys 4 Wartości wskaźnika jakości dla wybranych węzłów
Jeżeli przyjmiemy że znane są optymalne wartości wskaźnika jakości w węzłach , wskazujące optymalny łańcuch od tego węzła aż do węzła kończącego optymalizacje
1 ,.., 1 , ) ,
(i k k= M +
(
M +1,J)
, wówczas poszukiwanie najlepszego połączenia (w sensie minimum wskaźnika jakości dla węzła(
(i−1),j)
) między węzłami , sprowadza się do wyboru minimalnej wartości ze zbioru określonego wgi i 1)a ( −
( )
( ) { ( ) ( ) }
{
F i−1,j =min F (i−1),(jak +F i,k , k=1,..,M +1}
,j=1,..,M +1 (10) Ilustracja postępowania wg wzoru (10) obserwujemy na rysunku 5i )
, ( , ) (i x i j
x W
+1
= M j
=1
i i=2 i=4 i= N+1
=1 j
=2 j
=6 j
=7 i
=3 j
=4 j
=5
j j=5
=8 i
=3 i
( )3,8
Fˆ
( )3,2
Fˆ
( )8,7 Fˆ
( )8,3 Fˆ
( )3,4 Fˆ
( )8,5
Fˆ
J j=6=
Rys. 5. Poszukiwanie minimalnej wartości przypisanej do węzła
np. wartość wskaźnika jakości jaka należy przypisać węzłowi
(
i=2, j=3)
ma być minimalną wartością ze zbioru utworzonego z sumy wskaźnika lokalnego dotyczącego przejścia między węzłem(
i=2, j=3)
a węzłem(
i=2, j=2,...,8)
i wartości optymalnej wskaźnika w węźle(
i=3, j=2,...,8)
( )
( ) ( )
[ ] [ ( ) ( ) ] [ ( ) ( ) ]
( ) ( )
[ ] [ ( ) ( ) ] [ ( ) ( ]
( )
[ ]
⎪⎪⎭
⎪⎪⎬
⎫
⎪⎪
⎩
⎪⎪⎨
⎧
+
+ +
+
+ +
+
=
8 , 3 ˆ( ) 8 3 ( , 2
, 7 , ˆ 3 ) 7 3 ( , 2 , 6 , ˆ 3 ) 6 3 ( , 2 , 5 , ˆ 3 ) 5 3 ( , 2
, 4 , ˆ 3 ) 4 3 ( , 2 , 3 , ˆ 3 ) 3 3 ( , 2 , 2 , ˆ 3 ) 2 3 ( , 2 min 3 , ˆ 2
F F
F F
F F
F F
F F
F F
F F
F
a
a a
a
a a
a
)
Analizując w opisany sposób wszystkie węzły siatki cofamy się do węzła
)
, który zamyka obliczenia .W następstwie przedstawionego schematu postępowania uzyskujemy łańcuch decyzji optymalnych między węzłem siatki przyjętym jako wypełnienie początkowe zbiornika
(
(i=1),(j=4)(
(i=1),(j=4))
x a
węzłem siatki przyjętym w danym cyklu obliczeniowym jako wypełnienie końcowe zbiornika x
(
(i=N+1),(j=4))
.Odczytując łańcuch odtworzymy optymalną (z uwagi na przyjęty wskaźnik jakości wypełnienie początkowe i końcowe zbiornika ) trajektorię stanu zbiornika oraz trajektorię sterowania (odpływu ze zbiornika )
Analizując w analogiczny sposób wszystkie możliwe stany końcowe zbiornika wybieramy tę trajektorie stanu i sterowania dla której wartość wskaźnika jakości będzie minimalna .
(
(i=N+1),(j=1,...,M+1)x
)
Optymalizacja wieloetapowa ma istotną zaletę . Wszelkie ograniczenia zawężają jedynie zbiór ewentualnych decyzji co zasadniczo upraszcza obliczenia .Wadą natomiast jest fakt , iż uzyskane rozwiązanie optymalne jest na tyle dokładne na ile zezwala wprowadzona dyskretyzacja (siatka ) obowiązująca dla poszczególnych
zmiennych .Łatwo zauważyć ,że ze wzrostem dokładności siatki otrzymane rozwiązanie zbliża się do rozwiązania będącego wynikiem analitycznego rozwiązania problemu .
Przykład
Opisana metodę optymalizacji wieloetapowej prześledzimy na prostym przykładzie liczbowym .
Przyjmiemy :
• dyskretyzację horyzontu optymalizacji T na 3 etapy i=1,..,4 ,
• dyskretyzację pojemności stanu zbiornika x na 5 stanów j=1,..,5,
( )
1,1 =0,...,x( )
1,5 =4 x• dyskretyzację dopływów QP i sterowań również na 5 stanów , u
( ) ( )
1,1 =u1,1 =0,...,Q (1,5)=u(1,5)=4QP P
• warunek początkowego wypełnienia zbiornika x
( )
1,3 =2,• warunek końcowego wypełnienia zbiornika x(4,4)=3,
• ograniczenia na trajektorie stanu :
(
(i=1,..,4),(j=2))
=1 , x(
(i=1,..,4),(j=5))
=4xd g ,
• ograniczenia na sterowanie :
(
( 1,..,4),( 1))
0 , max(
( 1,..,4),( 4))
4min i= j= = u i= j= =
u ,
• wymaganą trajektorie stanu zbiornika xW
(
(i=1,..,4),(j=5))
=4,• wymaganą trajektorie sterowania
(
(i=1,..,3),(j=4))
=3,u(
(i=3,4),(j=5))
=4uW W ,
• prognozowany dopływ do zbiornika
( ) ( )
(
( 3,4),( 2))
1, 3 ) 4 ( ), 3 , 2 ( , 2 ) 3 ( ), 2 , 1 (
=
=
=
=
=
=
=
=
= j i
Q
j i
Q j
i Q
P
P P
Na rys 6 przedstawione są wymienione wyżej założenia .
) , ( , ) , ( ), , ( , )
(i x i j x i j x i j
x W d g
=1
i i=2 i=4
=1 j
=2 j
=3 j
=4 j
=4 j
=3 i
=5 j
) , ( ) ,
(i j x i j
xg = W
) , ( ji xd
przyjęte końcowe wypełnienie zbiornika
przyjęte początkowe wypełnienie zbiornika
=1
i i=2 i=4
=1 j
=2 j
=3 j
=4 j
=3 i
=5 j
) ,
max(i j u
) ,
min(i j u )
, ( ji uW
) , ( ji QP
(3,(2a4))
u
(3,(3a4))
u
(3,(4a4))
u
(3,(5a4))
u
Rys 7.6 Dane wejściowe przyjęte do zadania optymalizacji
Wykorzystując równanie (7) , (8) , (9) wyliczamy wartości sterowań odpowiadające przejściu między kolejnymi stanami zbiornika i odpowiadające im wartości wskaźnika jakości dla każdego węzła siatki.
Etap i=4 a3
(
4,(2 4))
=Q (4)−[
x(4,4)−x(3,2)]
/∆t=1−(3−1)/1=−1u a P odpada ze względu
na ograniczenie sterowania ,
( ) [ ]
( ) [ ]
(
4,(5 4))
(4)[
(4,4) (3,5)]
/ 1 (3 4)/1 21 1 / ) 3 3 ( 1 / ) 4 , 3 ( ) 4 , 4 ( ) 4 ( ) 4 4 ( , 4
0 1 / ) 2 3 ( 1 / ) 3 , 3 ( ) 4 , 4 ( ) 4 ( ) 4 3 ( , 4
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
t x
x Q
u
t x
x Q
u
t x
x Q
u
P P P
a a a
( ) [ ]
3[ ( ) ]
22
2 ( ) ( , ) () ,( )
) ( ,
1 j k a x i x i k a u i ui j k
i
F − a = ⋅ W − + ⋅ W − a
( ) [ ] [ ( ) ]
( ) [ ] [ ( ) ]
(
33,,((54 44)))
11[
((44)) ((44,,44))]
11[
((44))(
44,,54 44) ]
((44 33)) ((44 12)) 10517 ) 0 4 ( ) 3 4 ( 4 3 , 4 ) 4 ( 1 ) 4 , 4 ( ) 4 ( 1 ) 4 3 ( , 3
2 2 2
2
2 2 2
2
2 2 2
2
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
a a
a a
a a
u u
x x
F
u u
x x
F
u u
x x
F
W W
W W
W W
Etap i=3 a2 węzeł
(
i=2,j=2)
( ) [ ]
( ) [ ]
(
3,(1 3))
(3)[
(3,3) (2,2)]
/ 3 (2 1)/1 21 1 / ) 1 3 ( 3 / ) 2 , 2 ( ) 4 , 3 ( ) 3 ( ) 4 2 ( , 3
0 1 / ) 1 4 ( 3 / ) 2 , 2 ( ) 5 , 3 ( ) 3 ( ) 5 2 ( , 3
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
t x
x Q
u
t x
x Q
u
t x
x Q
u
P P P
a a a
( ) [ ] [ ( ) ]
( ) [ ] [ ( ) ]
(
22,,((22 34)))
11[
((33)) ((33,,34))]
11[
((33))(
33,,22 34) ]
((44 23)) ((33 12)) 559 ) 0 3 ( ) 4 4 ( 5 2 , 3 ) 3 ( 1 ) 5 , 3 ( ) 3 ( 1 ) 5 2 ( , 2
2 2 2
2
2 2 2
2
2 2 2
2
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
a a
a a
a a
u u
x x
F
u u
x x
F
u u
x x
F
W W
W W
W W
dla węzła
(
i=2,j=2)
wartość minimalna wskaźnika jakości =]
( ) ( ) ( )
[
9 5, 5 10 , 5 17 14min + + + = co odpowiada łańcuchowi
(
i=2,j=2) (
⇒ i=3, j=5) (
⇒ i=4, j=4)
) , ( , ) , ( ), , ( , )
(i x i j x i j x i j
x W d g
=1
i i=2 i=4
=1 j
=2 j
=3 j
=4 j
=4 j
=3 i
=5 j
(
i=2,j=2)
(
i=3,j=5)
(
i=4,j=4)
,F=14 95 5
17 10
5
ograniczenia sterowania
ograniczenia stanu
Rys 7 Optymalny łańcuch decyzji z węzła
(
i=2, j=2)
węzeł
(
i=2,j=3)
( ) [ ]
( ) [ ]
(
3,(3 3))
(3)[
(3,3) (2,3)]
/ 3 (2 2)/1 3 2 1 / ) 2 3 ( 3 / ) 3 , 2 ( ) 4 , 3 ( ) 3 ( ) 4 3 ( , 31 1 / ) 2 4 ( 3 / ) 3 , 2 ( ) 5 , 3 ( ) 3 ( ) 5 3 ( , 3
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
t x
x Q
u
t x
x Q
u
t x
x Q
u
P P P
a a a
( ) [ ] [ ( ) ]
( ) [ ] [ ( ) ]
(
22,,((33 34)))
11[
((33)) ((33,,34))]
11[
((33))(
33,,33 34) ]
((44 23)) ((33 32)) 424 ) 1 3 ( ) 4 4 ( 5 3 , 3 ) 3 ( 1 ) 5 , 3 ( ) 3 ( 1 ) 5 3 ( , 2
2 2 2
2
2 2 2
2
2 2 2
2
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
a a
a a
a a
u u
x x
F
u u
x x
F
u u
x x
F
W W
W W
W W
dla węzła
(
i=2,j=3)
wartość minimalna wskaźnika jakości =]
( ) ( ) ( )
[
4 5, 2 10 , 4 17 9min + + + = co odpowiada łańcuchowi
(
i=2,j=3) (
⇒ i=3, j=5) (
⇒ i=4, j=4)
) , ( , ) , ( ), , ( , )
(i x i j x i j x i j
x W d g
=1
i i=2 i=4
=1 j
=2 j
=3 j
=4 j
=4 j
=3 i
=5 j
(
i=2,j=3)
(
i=3,j=5)
(
i=4,j=4)
,F=94 2
4 17
10 5
ograniczenie sterowania
ograniczenie stanu
Rys 8 Optymalny łańcuch decyzji z węzła
(
i=2, j=3)
węzeł
(
i=2,j=4)
( ) [ ]
( ) [ ]
(
3,(4 3))
(3)[
(3,3) (2,4)]
/ 3 (2 3)/1 43 1 / ) 3 3 ( 3 / ) 4 , 2 ( ) 4 , 3 ( ) 3 ( ) 4 4 ( , 3
2 1 / ) 3 4 ( 3 / ) 4 , 2 ( ) 5 , 3 ( ) 3 ( ) 5 4 ( , 3
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
t x
x Q
u
t x
x Q
u
t x
x Q
u
P P P
a a a
( ) [ ] [ ( ) ]
( ) [ ] [ ( ) ]
(
22,,((44 43)))
11[
((33)) ((33,,34))]
11[
((33))(
33,,44 34) ]
((44 23)) ((33 43)) 151 ) 2 3 ( ) 4 4 ( 5 4 , 3 ) 3 ( 1 ) 5 , 3 ( ) 3 ( 1 ) 5 4 ( , 2
2 2 2
2
2 2 2
2
2 2 2
2
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
a a
a a
a a
u u
x x
F
u u
x x
F
u u
x x
F
W W
W W
W W
dla węzła wartość minimalna wskaźnika jakości =
co odpowiada łańcuchowi
(
i=2,j=4) ]
( ) ( ) ( )
[
1 5,1 10 , 5 17 6min + + + =
(
i=2,j=4) (
⇒ i=3,j=5) (
⇒ i=4,j=4)
) , ( , ) , ( ), , ( , )
(i x i j x i j x i j
x W d g
=1
i i=2 i=4
=1 j
=2 j
=3 j
=4 j
=4 j
=3 i
=5 j
(
i=2,j=4)
(
i=3,j=5)
(
i=4,j=4)
,F=6 11
5 17
10 5
ograniczenia sterowania
ograniczenia stanu
Rys 9 Optymalny łańcuch decyzji z węzła
(
i=2, j=4)
węzeł
(
i=2,j=5)
( ) [ ]
( ) [ ]
(
3,(5 3))
(3)[
(3,3) (2,5)]
/ 3 (2 4)/1 5 4 1 / ) 4 3 ( 3 / ) 5 , 2 ( ) 4 , 3 ( ) 3 ( ) 4 5 ( , 33 1 / ) 4 4 ( 3 / ) 5 , 2 ( ) 5 , 3 ( ) 3 ( ) 5 5 ( , 3
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
t x
x Q
u
t x
x Q
u
t x
x Q
u
P P P
a a a
( ) [ ] [ ( ) ]
( ) [ ] [ ( ) ]
(
22,,((55 34)))
11[
((33)) ((33,,34))]
11[
((33))(
33,,55 34) ]
((44 23)) ((33 54)) 820 ) 3 3 ( ) 4 4 ( 5 5 , 3 ) 3 ( 1 ) 5 , 3 ( ) 3 ( 1 ) 5 5 ( , 2
2 2 2
2
2 2 2
2
2 2 2
2
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
a a
a a
a a
u u
x x
F
u u
x x
F
u u
x x
F
W W
W W
W W
dla węzła
(
i=2,j=5)
wartość minimalna wskaźnika jakości =]
( ) ( ) ( )
[
0 5, 2 10 , 8 17 5min + + + = co odpowiada łańcuchowi
(
i=2,j=5) (
⇒ i=3,j=5) (
⇒ i=4,j=4)
) , ( , ) , ( ), , ( , )
(i x i j x i j x i j
x W d g
=1
i i=2 i=4
=1 j
=2 j
=3 j
=4 j
=4 j
=3 i
=5
j
(
i=2,j=5) (
i=3,j=5)
(
i=4,j=4)
,F=5 02 8
17 10
5
ograniczenia sterowania
ograniczenia stanu
Rys 10 Optymalny łańcuch decyzji z węzła
(
i=2, j=5)
Zestawienie optymalnych łańcuchów decyzji dla etapów i=4a3a2 przedstawia rysunek 7.11 .
) , ( , ) , ( ), , ( , )
(i x i j x i j x i j
x W d g
=1
i i=2 i=4
=1 j
=2 j
=3 j
=4 j
=3 i
=5
j
(
i=2,j=5) (
i=3,j=5)
( )
( )
( )
(
2,3,4, 2,5,4)
, 14 9 , 4 , 5 , 3 , 4 , 3 , 26 , 4 , 5 , 4 , 4 , 3 , 2
5 , 4 , 5 , 5 , 4 , 3 , 2
=
=
=
=
=
=
=
=
=
=
=
=
F j
i
F j
i
F j
i
F j
i 0
1 5 4 9
(
i=2,j=4) (
i=2,j=3) (
i=2,j=2)
Rys 11 Optymalnych łańcuchy decyzji na etapach i=4a3a2
Interpretacja pokazanych łańcuchów jest następująca :
• jeżeli trajektoria stanu znajdzie się w węźle
(
i=2, j=5)
, łańcuch optymalny od tego węzła do węzła(
i=4, j=4)
kończącego obliczenie , przebiegać będzie przez węzeł(
i=3,j=5)
a wówczas wskaźnik jakości osiągnie wartość F =5.• jeżeli trajektoria stanu znajdzie się w węźle
(
i=2, j=4)
, łańcuch optymalny od tego węzła do węzła(
i=4, j=4)
kończącego obliczenie , przebiegać będzie przez węzeł(
i=3,j=5)
, wskaźnik jakości osiągnie wartość F=6,• itp. dla pozostałych węzłów z ustalonym indeksem i=3. Etap i=2 a1
węzeł
(
i= j1, =3)
( ) [ ]
( ) [ ]
( ) [ ]
(
2,(3 2))
(2)[
(2,2) (1,3)]
/ 2 (1 2)/1 32 1 / ) 2 2 ( 2 / ) 3 , 1 ( ) 3 , 2 ( ) 2 ( ) 3 3 ( , 2
1 1 / ) 2 3 ( 2 / ) 3 , 1 ( ) 4 , 2 ( ) 2 ( ) 4 3 ( , 2
0 1 / ) 2 4 ( 2 / ) 3 , 1 ( ) 5 , 2 ( ) 2 ( ) 5 3 ( , 2
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
=
−
−
=
∆
−
−
=
t x
x Q
u
t x
x Q
u
t x
x Q
u
t x
x Q
u
P P P P
a a a a
( ) [ ] [ ( ) ]
( ) [ ] [ ( ) ]
( ) [ ] [ ( ) ]
(
11,,((33 33)))
11[
((22)) ((22,,32))]
11[
((22))(
22,,33 32) ]
((44 21)) ((33 32)) 955 ) 1 3 ( ) 3 4 ( 4 3 , 2 ) 2 ( 1 ) 4 , 2 ( ) 2 ( 1 ) 4 3 ( , 1
9 ) 0 3 ( ) 4 4 ( 5 3 , 2 ) 2 ( 1 ) 5 , 2 ( ) 2 ( 1 ) 5 3 ( , 1
2 2 2
2
2 2 2
2
2 2 2
2
2 2 2
2
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
=
− +
−
=
−
⋅ +
−
⋅
=
a a
a a
a a
a a
u u
x x
F
u u
x x
F
u u
x x
F
u u
x x
F
W W
W W
W W
W W
Węzeł
(
i=1, j=3)
jest węzłem rozpoczynającym obliczenia ( warunek początkowego wypełnienia zbiornika) . Połączenie tego węzła z węzłami o ustalonym indeksie , tworzy cztery alternatywne łańcuchy połączeń z węzłemkończącym obliczenia .
=3
i
(
i=4,j=4)
Łańcuchem optymalnym będzie oczywiście ten łańcuch dla którego wskaźnik jakości przyjmie minimalną wartość (rysunek 12) .
Znając łańcuch decyzji optymalnych łatwo odtworzyć łańcuch optymalnych sterowań (odpływów ze zbiornika ) przy których zapewniona zostanie minimalna wartość wskaźnika jakości .
Dla łańcucha decyzji