308 309

308 309



308 Programowanie wypukłe i kwadratowe

tarnej x?2 i niemożność jej wymiany ze zmienną y2 (wartość odpowiadającego wymianie współczynnika macierzy wynosi -0,25), zmiennej y2 nie możemy wprowadzić do bazy. Do bazy możemy wprowadzić dopiero trzecią kandydującą zmienną, czyli yf, gdyż komplementarna do niej zmienna x, nie jest zmienną bazową. Wyniki obliczeń przedstawiono w tablicy 6.4.

Tablica 6.4

cx —

min

0

0

0

0

0

0

0

0

1

1

b

Baza

cn

-Ti

*2

./

4

y2

yl

>2

«’l

w2

yl

0

-18

0

2

0

-i

-i

i

0

-1

0

10

4

0

0,5

0

-0,5

i

0

0

0

0

0

0

4

x2

0

0,5

1

0,5

0

0

0

0

0

0

0

5

w2

1

3

0

-1

0

2

i

0

-1

0

1

15

cr

-z,

-3

0

1

0

-2

-i

0

1

1

0

X

Iteracja 4

Występowanie ujemnych wartości wskaźników optymalności w tablicy 6.4 wskazuje na to, że należy w dalszym ciągu kontynuować procedurę. Pierwszą zmienną kandydującą do bazy jest jt,, jednak ze względu na obecność w bazie zmiennej komplementarnej yf oraz niemożność jej wyprowadzenia z bazy przechodzimy do rozpatrywania kolejnej zmiennej kandydującej, czyli y,. Zmienną tę możemy wprowadzić do bazy, gdyż zmienna komplementarna x‘( nie występuje w dotychczasowej bazie. Tablica 6.5 zawiera wyniki uzyskane po wykonaniu czwartej iteracji.

Tablica 6.5

cx —

min

0

0

0

0

0

0

0

0

1

1

Baza

Cu

*2

4

4

y<

y2

yl

yi

w,

w2

yl

0

-16,5

0

1,5

0

0

-0,5

i

-0,5

-1

0,5

17,5

xi

0

0,5

0

-0,5

i

0

0

0

0

0

0

4

*7

0

0,5

1

0,5

0

0

0

0

0

0

0

5

y>

0

1,5

0

-0,5

0

i

0,5

0

-0.5

0

0,5

7,5

Cj-

~Zj

0

0

0

0

0

0

0

0

1

1

X

W tablicy 6.5 wszystkie wartości współczynników optymalności są nieujemne, co wskazuje na to, że otrzymaliśmy rozwiązanie optymalne zadania zastępczego.

Zgodnie z twierdzeniem Kuhna-Tuckera z tablicy 6.5 możemy odczytać rozwiązanie optymalne interesującego nas zadania programowania kwadratowego, które jest następujące: x, =0, x2 = 5. Podstawiając te wartości do wzoru określającego funkcję celu, otrzymujemy jej optymalną wartość, równą 100.

6.3.4. Przypadek ogólny

W poprzedniej części podrozdziału 6.4 zajmowaliśmy się konstrukcją zadania zastępczego do zadania programowania kwadratowego i jego rozwiązaniem w przypadku, gdy w zadaniu (6.4) mieliśmy b>0 i p>0. Uchylimy obecnie te warunki.

Przykład 6.3

Rozpatrujemy zadanie:

/(x,, x2)~ 10jc, + 25x2- 10x?~x2-4x,x2 —» max,

Xi + 2x2 ^ 10,

-x,-x2s$-9, x, 3>0, x2^0.

Powyższe zadanie różni się od przykładu 6.2 postacią drugiego warunku ograniczającego, mamy bowiem b2 < 0. Zapisujemy funkcję Lagrange’a, a następnie warunki Kuhna-Tuckera i zadanie zastępcze. Chcąc w zadaniu zastępczym uzyskać pierwszą postać bazową dopuszczalną, do drugiego warunku ograniczającego zadania wyjściowego dołączamy zmienną sztuczną. Zmienne sztuczne wprowadzane do warunków ograniczających zadania wyjściowego w przypadku, gdy niektóre (lub wszystkie) współrzędne wektora b są ujemne nazwiemy zmiennymi sztucznymi typu v. W rozpatrywanym przez nas zadaniu wystarczy wprowadzić jedną taką zmienną. Zmienne typu v wprowadzamy również do funkcji celu. Zadanie zastępcze przyjmuje postać:

yi + wą + Wj —> min, x, +2x2 + x/= 10,

x,+x2—x2+V]=9,

20x, + 4x2+y, — y2y‘l + w, = 10,

4x, +2x2 + 2yi —y2—y2 + w2 = 25,

X|, x2, x|, x2, yi, y2, yf, y2, rą, W|, w2 ^ 0.

Zapisujemy je w postaci tablicy simpleksowej i rozwiązujemy za pomocą algorytmu Wolfe’a. Po wykonaniu czterech iteracji otrzymujemy (tablica 6.6):


Wyszukiwarka

Podobne podstrony:
312 313 312 Programowanie wypukłe i kwadratowe 8 n
292 293 Programowanie wypukłe i kwadratowe292 Scharakteryzujemy wykorzystywane dalej funkcje wypukłe
290 291 290 Programowanie wypukłe i kwadratowe Rysunek 6.3 290 Programowanie wypukłe i kwadratowe W
294 295 294 Programowanie wypukłe i kwadratowe Rysunek 6.5 kierunku wzrostu funkcji celu określamy p
296 297 296 Programowanie wypukłe i kwadratowe Ponadto mówimy, że spełniony jest warunek Slatera, je
298 299 Programowanie wypukłe i kwadratowe298 Podzbiór 2 Pierwszy warunek jest spełniony jako równoś
300 301 300 Programowanie wypukłe i kwadratowe Rysunek 6.12 A W t Podzbiór 1 Jeżeli gi>0, g2>
302 303 302 Programowanie wypukłe i kwadratowe Sprowadzimy zadanie do ogólnej postaci programowania
304 305 304 Programowanie wypukłe i kwadratowe Warunek 3 Warunek ten stanowi powtórzenie warunków
306 307 306 Programowanie wypukłe i kwadratowe • i 306 Programowanie wypukłe i kwadratowe 
310 311 310 Programowanie wypukłe i kwadratowe Tablica 6.6 cx
314 315 314 Programowanie wypukłe i kwadratowi Oznaczmy symbolem /?,(/■) cenę / -tej akcji osiągnięt
316 317 316 Programowanie wypukłe i kwadratowe Tablica 6.9 Notowania spółka 1 spółka 2 spółka
318 319 318 Programowanie wypukłe i kwadratoweFunkcja celu min, f(xj, Aj, Aj, A.j, A5) = [A
320 321 320 Programowanie wypukłe i kwadratowe Funkcje celu: • minimalizacja ryzyka
322 323 322 Programowanie wypukłe i kwadratowe Rozpatrywane zadanie nie jest zadaniem wektorowej mak
ANSI C 2 4 FUNKCJE I STRUKTURA PROGRAMU Deklaracja double sum, atof(char[ ]); mówi, że zmienna sum
SESJA POKAZOWA MON/ES PROGRAM Organizacja: Kwadrat o wymiarach 20x20m. Zawodnicy ustawieni wg

więcej podobnych podstron