26
1 Univerza v Ljubljani - Fakulteta za strojništvo KKTS - LASOK Optimiranje nosilnih konstrukcij doc.dr. Boris Jerman, univ.dipl.inž.str. Govorilne ure: pisarna: FS - 414 telefon: 01/4771-414 [email protected] (Tema/Subject: ONK - ...) Soavtor gradiva: i.prof.dr. Janez Kramar, univ.dipl.inž.str. 2 Metode linearnega programiranja za optimalno konstruiranje Če so linearne: cenilna funkcija in vse pogojne in vse omejitvene funkcije, je optimizacijska naloga naloga linearnega programiranja (LP). Take naloge se pojavljajo tudi na mnogih inženirskih področjih: vodni viri, upravljanje virov, nadzor prometnih tokov, inženirstvo prometa, sistemsko inženirstvo, elektrotehnika, ....

Metode linearnega programiranja za optimalno …lab.fs.uni-lj.si/lasok//index.html/gradivo_jerman_LASOK/ONK_11__P.pdfSimpleks metoda je razširitev standardnega Gauss-Jordanovega eliminacijskega

  • Upload
    vantram

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

1

Univerza v Ljubljani - Fakulteta za strojništvoKKTS - LASOK

Optimiranje nosilnih konstrukcij

doc.dr. Boris Jerman, univ.dipl.inž.str.Govorilne ure: • pisarna: FS - 414• telefon: 01/4771-414• [email protected]

(Tema/Subject: ONK - ...)

Soavtor gradiva: i.prof.dr. Janez Kramar, univ.dipl.inž.str.

2

Metode linearnega programiranja zaoptimalno konstruiranjeČe so linearne:• cenilna funkcija in • vse pogojne in • vse omejitvene funkcije, je optimizacijska naloga naloga linearnega programiranja (LP).

Take naloge se pojavljajo tudi na mnogih inženirskih področjih: • vodni viri, • upravljanje virov, • nadzor prometnih tokov, • inženirstvo prometa, • sistemsko inženirstvo, • elektrotehnika, ....

2

3

• Konstrukcijske naloge niso linearne, • za njihovo iterativno numerično reševanje se vseeno lahko

uporabi zaporedje linearnega programiranja.

Vsakršna linearna funkcija se v splošni obliki zapiše kot:

ci... konstante, i = 1 do n.

Met

ode

LP

4

Splošen zapis linearne naloge optimiranja:

Konstrukcijske spremenljivke so povezane v vektor ��:

Išče se konstrukcijsko rešitev ��, da bo vrednost CF (skalar):

minimalna, à

Met

ode

LP

3

5

ob upoštevanju p enakostnih pogojev:

in m neenakostnih omejitev:

kjer so:

Met

ode

LP

6

• vse nastopajoče funkcije so linearne, à• možno območje (feasible reagion) je vedno konveksno,• tudi CF je linearna in torej konveksna.

• Če torej optimalna rešitev obstaja, je ta globalna. • Naloga LP ima optimum vedno na meji dopustnega

območja, četudi ima taka naloga neenakostne omejitve. • Vsaj ena taka omejitev je vedno aktivna.

• V kolikor bi iskali optimum samo iz odvodov CF:

se dobi nesmiselna (trivialna) situacija – CF je ukinjena.

Met

ode

LP

4

7

Met

ode

LP

Teorem 4.1: Oglišča in osnovne možne rešitve

Množica vseh možnih rešitev naloge LP tvori konveksno množico, katere oglišča ustrezajo osnovnim možnim rešitvam.

Teorem 4.2: Osnovni teorem LP

Naj ima m x n dimenzionalna matrika A, koeficientov omejitvenih enačb aji poln vrstični rang: rang(A) = m àtedaj veljata izjavi:1) če obstaja možna rešitev, tedaj obstaja osnovna možna rešitev;2) če obstaja optimalna možna rešitev, tedaj obstaja optimalna osnovna možna rešitev.

8

Met

ode

LP

Prvi del 1) govori o dejstvu: če obstaja kakršnakoli možna rešitev, tedaj mora biti vsaj eno oglišče (vrh) konveksnega možnega območja.Drugi del 2) govori o dejstvu: če ima naloga optimalno rešitev, tedaj je ta najmanj na enem od vrhov (oglišč) konveksnega poliedra možnih rešitev.Naloga LP ima pri n spremenljivkah in m pogojnih enačbah naslednje število osnovnih rešitev:

• Izmed osnovnih reš. se poišče tiste, ki so hkrati tudi možne -izpolnijo pogoje nenegativnosti.

• Med osnovnimi mož. reš. je vsaj ena optimalna. • Kadar je CF vzporedna eni od pogojnih funkcij, lahko

obstaja mnogo enakovrednih optimalnih rešitev.

5

9

Met

ode

LP

Simpleks metoda

je razširitev standardnega Gauss-Jordanovega eliminacijskegapostopka za reševanje sistema linearnih enačb Ax� = b, kjer je: A ... matrika dimenzij m x n (m < n),

x�... vektor dimenzije nb ≥ 0 ... vektor dimenzije m.

Simpleks ali n-simpleks je v geometriji n-razsežen analogen trikotnik:- v 1D prostoru 2 točki, ki tvorita daljico;- v 2D prostoru 3 točke, ki tvorijo trikotnik;- v 3D prostoru 4 točke, ki tvorijo tetraeder;- v splošnem nD prostoru tvori simpleks konveksna jata n+1

točke, ki ne leži v isti hiperravnini.

10

Met

ode

LP

Kanonična oblika- splošna rešitev enačbe Ax = b

Sistem m linearnih enačb z n spremenljivkami, kjer ima matrika A, rang m, je v kanonični obliki, če ima vsaka od enačb eno spremenljivko, ki je ni v nobeni drugi enačbi:

Za dosego kanonične oblike je uporabna Gauss-Jordanova eliminacijska metoda.

Rang matrike je število linearno neodvisnih vrstic oziroma stolpcev. Rang matrike jedoločen z najvišjim redom poddeterminante, ki je še različna od 0.

6

11

Posredne numerične metode reševanja nalog brez omejitev• Realne naloge na področju tehnike ßà lahko zelo veliko KS. • CF je skoraj vedno nelinearna funkcija teh KS.

Splošen koncept numeričnega reševanja• Skupen matematičen zapis:

naslednja rešitev:

vsebuje prejšnjo vrednost KS in spremembo KS

12Posr

edne

num

erič

ne m

etod

e(n

alog

e br

ez o

mej

itev)

Spremembo KS ∆�����se prikaže kot zmnožek dveh faktorjev:

kjer sta:

s čimer se dobi dve lažje obvladlivi podnalogi pri iskanju optimuma: smerni vektor in velikost koraka.

Ker je CF v splošnem nelinearna, sta obe nalogi še vedno zelo kompleksni.

Razvitih je mnogo metod, ki so prilagojene naravi posameznih optimizacijskih problemov.

Ob koncu vsake izboljšave naj se preverja ali nova rešitev že izpolnjuje pogoje optimalnosti.

7

13

Posr

edne

num

erič

ne m

etod

e

l. korak: Ocena razumne začetne konstrukcije �����.2. korak: Izračun željenega smer. vektorja �����v konstr.

prostoru. Ta izračun pri nalogah brez omejitev v splošnem zahteva vrednost CF in njenega gradienta.

3. korak: Kontrola konvergentnosti postopka. Če je konvergenca dosežena, se iterativni proces zaustavi.

4. korak: Izračun pozitivne velikosti koraka ��.5. korak: Izračun nove konstr. rešitve:

Števec se tako dvigne (k à k + 1) in na vrsti je nova iteracija.

14

Posr

edne

num

erič

ne m

etod

e

Ideja korakov spuščanja• Minimum CF je njena najmanjša vrednost. • Predpostavimo, da smo trenutno v točki �����, ki ni minimum à

• obstaja točka �������, za katero velja:

• Na levi strani neenačbe se zamenja ������� z izrazom:

• in dobimo:

• Dobljen izraz se razvije v Taylorjevo vrsto okrog trenutne konstrukcijske točke ����� do vključno linearnega člena:

8

15

Posr

edne

num

erič

ne m

etod

e

• kar je v približku:

• Vrednost CFe je skalar. • Tudi skalami produkt dveh vektorjev je skalar. • Leva stran neenačbe mora biti manjša od desne à• Drugi člen leve strani mora biti negativen:

• Ker mora biti skalar �� pozitiven in je gradient CFizračunljiv,

• mora smerni vektor ����� tvoriti z gradientom CF kot, ki je večji od 90° in manjši od 270°, da bo neenačba izpolnjena.

16

Posr

edne

num

erič

ne m

etod

e • Zaželena smer izboljšave konstrukcije je torej vsaka smer, ki izpolni predstavljeno neenačbo.

• Taka smer se imenuje smer spuščanja po strmini CF,• pogojno neenačbo pa pogoj spuščanja po strmini.

• Numerične metode, ki slone na tej ideji, so 'metode spuščanja'.

• Če je analitično odvajanje sicer zvezne in odvedljive CF prezamudno, se pogosto uporabi numeričn izvrednotenjeposameznih komponent gradienta.

9

17

Posr

edne

num

erič

ne m

etod

e Lastnosti gradientnega vektorja

a) Gradientni vektor CF v točki ��je pravokoten na tangentno ravnino izoploskve skozi isto točko.

Gradientni vektor cenilne funkcije �� se zapiše poenostavljeno:

18

Posr

edne

num

erič

ne m

etod

e

Tangentni vektor je tangenten na določeno krivuljo (s) v izoploskvi:

Pogoj ortogonalnosti gradient. in tangent. vektorja:

b) Smer gradientnega vektorja v dani točki je smer največjega naraščanja CF v tej točki.

c) Vrednost največjega naraščanja CF v dani točki je vrednost gradienta v tej točki.

10

19

Posr

edne

num

erič

ne m

etod

eAlgoritem najstrmejšega spuščanja

Smerni vektor spuščanja:

Koraki algoritma:

l. korak: Ocenitev razumne začetne konstrukcije �����. Postavitev konvergenčnega parametra e > O.

2. korak: Izračun gradientnega vektorja CF �����v točki �����:

20

Posr

edne

num

erič

ne m

etod

e

3. korak: Izračun absolutne vrednosti gradienta ����� in presoja konvergenčnega kriterija:

Če velja: ����� � �à ustavitev iterativnega procesa in:

��∗ � �����

V nasprotnem primeru: nadaljevanje s 4. korakom.

4. korak: Postavitev smeri premika v točki �����: Pri tem je očitno:

5. korak: Izračun velikosti koraka �� tako, da bo vrednost CF v novi točki najmanjša, kot sledi.

11

21

Posr

edne

num

erič

ne m

etod

ePotreben pogoj za to je:

Parcialni odvod prvega faktorja je očitno:

drugi, pa je viden iz kratkega računa:

Ob upoštevanju , dobi potreben pogoj obliko:

22

Posr

edne

num

erič

ne m

etod

e

6. korak: Izračun nove konstrukcijske rešitve:

Vstop v novo iteracijo:Povečanje števca za ena: k => k+ l. Vrnitev na 2. korak.

Zanimivost:Če se uporabi optimalne dolžine korakov, sta smeri dveh zaporednih korakov med seboj vedno ortogonalni:

V praksi je ta ortogonalnost zaradi različnih zaokrožitev le približna.

12

23

Posredne numerične metode reševanja nalog z omejitvamiObičajno imajo optimizacijske naloge s področja tehnike omejitve. V realnih optimizacijskih nalogah je veliko KS. CF ter enakostni pogoji in neenakostne omejitve so skoraj vedno nelineame funkcije omenjenih KS.

Kljub temu, da običajno ni težko napisati Lagrange-ove funkcije in potrebnih pogojev za iskanje kandidatnih optimalnih točk, pa zelo redko uspe določevanje teh točk po analitični poti.

24Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Normalizacija omejitevNumerični izračuni - zelo zaželena uporaba iste tolerance e za vse neenakostne pogoje. Dva zelo pogosta pogoja v konstrukterstvu sta:

Številčne vrednosti dopustne napetosti in upogibkov so večinoma zelo različne in različnih enot à take omejitve praviloma normaliziramo z delitvijo z dopustno vrednostjo:

Omejitve se zapiše:

13

25Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Funkcija spuščanja• Pri optim. problemih brez omejitev se zahteva zmanjševanje

vrednosti CF pri vsakem koraku. • Funkcija, ki vodi napredovanje proti minimumu, se imenuje

funkcija spuščanja.

• Funkcija spuščanja je zelo pomembna tudi pri optimizacijskih nalogah z omejitvami.

• Uporaba CF kot funkcije spuščanja je tu omejena oz. celo nezadostna.

• Uporablja se številne druge funkcije spuščanja. • Osnovna ideja je izračunati dober smerni vektor ��(�) in

dolžino koraka.• Funkcija spuščanja mora imeti lastnost, da je vrednost

njenega minimuma enaka kot pri prvotni CF znotraj dovoljenega območja.

26Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Konvergentni algoritem izpolnjuje naslednji zahtevi:

1) Za algoritem obstaja funkcija spuščanja, katere vrednost se bo manjšala v vsakem koraku;

2) Smer konstrukcijskih sprememb ��(�) je zvezna funkcija KS!

V konstrukcijskem prostoru je s takim algoritmom torej možno najti • primerno smer spusta v vsakem koraku in • za končni spust proti točki minimuma.

14

27Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Lokalna linearizacija problemov z omejitvami

Za iskanja optimalnosti z omejitvami večina iterativnih postopkovv vsakem koraku rešuje linearizirano podnalogo.

V ta namen se razvrsti CF in enakostne pogoje ter neenakostneomejitve v Taylorjevo vrsto okrog trenutne konstrukcijske točke ��(�) do vključno linearnega člena:

28Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Razvoj cenilne funkcije v Taylorjevo vrsto:

Razvoj enakostnih pogojev in neenakostnih omejitev v Taylorjevo vrsto:

15

29Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

30Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

16

31Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Dobljene okrajšave se vstavi v prej razvite izraze:

Minimizirati je potrebno drugi sumand v razviti CF. (Prvi sumand se opusti, ker je tedaj že znan in konstanten.)

Linearizirani enakostni pogoji in neenakostne omejitve:

32Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

N je pravokotna matrika n vrstic in p stolpcev (n x p), v kateri so stolpci gradienti p enakostnih pogojev.

A je pravokotna matrika (n x m), v kateri so stolpci gradienti m neenakostnih omejitev.

Pri tem so ���� in ����� posamezni stolpci v omenjenih matrikah.

17

33Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Algoritem zaporednega linearnega programiranja (ZLP)Sequential linear programming algorithm (SLP)

Prej linearizirani izrazi:

so po spremenljivkah di linearni, à za njihovo določitev seuporabi metode linearnega programiranja.

Pri vsakem koraku se za določitev konstrukcijskih sprememb uporabi linearno programiranje à metode zaporednega linearnega programiranja.

34Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Koraki algoritma ZLP (steps of SLP):

1. korak:

2. korak:

z uvedenimi okrajšavami na predhodnih prosojnicah.

18

35Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Koraki algoritma ZLP (steps of SLP):

3. korak:

36Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Koraki algoritma ZLP (steps of SLP):

4. korak:

5. korak:- lineariziranih izrazih za CF ter pogoje in omejitve.

6. korak:

19

37Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Koraki algoritma ZLP (steps of SLP):

7. korak:

8. korak:

38Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Zaključki o algoritmu ZLP:

• metoda ZLP: konceptualno in numerično je preprosta (tudi za naloge z omejitvami);

• uporabna pri številnih inženirskih nalogah, še posebej, kjer je veliko število KS;

• metoda naj se ne uporablja kot 'črna škatla' za vse probleme. Izbira mej pri premikih je navadno poskušanje in daje najboljši rezultat ob interaktivnem načinu dela. Meje premikov so lahko preveč restriktivne, kar ima za posledico, da ne pridemo do rešitve;

• ...

20

39Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Zaključki o algoritmu ZLP:

• ...• možno je, da metoda ne konvergira do natančnega minimuma,

ker funkcija spuščanja ni opredeljena. Tudi če se ne dosežemo natančnega min., je metoda za prakso uporabna;

• metoda lahko ciklira med dvema točkama, če optimum ni vrh možnega območja;

• metoda ni robustna. To pomanjkljivost je možno odpraviti z uporabo metode kvadratičnega programiranja.

40Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Metoda najstrmejšega spuščanja pri nalogah z omejitvami

Funkcija spuščanja

Pri neomejitvenih optimizacijskih nalogah je bila za funkcijo spuščanja uporabljena kar CF, ki je nadzorovala napredovanje proti optimalni točki.

Pri omejitvenih optimizacijskih nalogah se funkcija spuščanja običajno zgradi z dodatkom kaznovalnega člena za kršenje omejitev pri tekoči vrednosti konstrukcijske rešitve.

21

41Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Metoda najstrmejšega spuščanja pri nalogah z omejitvami

Pšenični-jeva funkcija spuščanjaje ena od zelo uspešnih FS:

42

Posr

edne

num

eričn

e m

etod

e(n

alog

e z

omej

itvam

i)

Metoda najstrmejšega spuščanja pri nalogah z omejitvami

Kot primer: funkcija spuščanja pri k-ti iteraciji konstrukcijske rešitve je:

R se lahko menja tekom iteracij. Zagotoviti je potrebno, da je ta parameter večji ali enak vsoti vseh L multiplikatorjev v k-ti iteraciji.

Velja tudi:

22

43Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)Določitev dolžine korakaPotrebuje se primerno dolžino koraka �� , ki jo lahko dobimo s poskušanjem v smeri smernega vektorja �����:

Preskusimo toliko podkorakov l, ki se razpolavljajo, da se doseže spustni pogoj:

Kjer je g izbrana konstanta med 0 in l.

44

Posr

edne

num

erič

ne m

etod

e(n

alog

e z

omej

itvam

i)

Postopek najstrmejšega spuščanja

Koraki algoritma:

23

45

Posr

edne

num

erič

ne

met

ode

(nal

oge

z om

ejitv

ami)

Postopek najstrmejšega spuščanja

Koraki algoritma:

46

Neposredne numerične metodePri reševanju optimizacijskih nalog uporabljajo samo CF ter pogojne enačbe in omejilne neenačbe:

Genetski algoritmi• izhajajo iz ideje naravne selekcije v evolucijskem procesu. • Na začetku je potrebno najti primerno št. konstrukcijskih rešitev

(lahko jih imenujemo tudi začetna jata), ki izpolnijo vse pogojne enačbe in vse omejitvene neenačbe.

• po določenem postopku odpadajo najslabše rešitve ob hkratnem iskanju boljših rešitev.

24

47

Genetski algoritmi• začetna jata rešitev (začetno generacijo konstrukcijskih rešitev

znotraj dovoljenega področja):

• poiščemo jo lahko naključno ali • sistematično (dobi se bolj enakomerno razporeditev možnih

rešitev). Ta nabor začetnih konstrukcijskih točk je v literaturi imenovan complex (sestav, zložek), za kar bi lahko uporabili tudi besedo jata. To zadnje poimenovanje je še toliko bolj upravičeno, ker se znotraj numeričnega postopka ta sestav točk premika in zgoščuje okrog točke optimuma.

• Število članov jate je poljubno (najmanjše število naj bo vsaj za ena večje od števila vseh KS, bolje pa je izbrati še večje število.

Nep

osre

dne

num

erič

ne m

etod

e

48

• Pri inženirskih opt. nalogah lahko dovoljeno območje konstrukcijskih rešitev sega vsaj proti pozitivni neskončnosti,

• je smotrno konstrukcijske spremenljivke z eksplicitnimi pogoji omejiti navzdol in navzgor:

• Sistematično iskanje možnih začetnih rešitev: vrednosti KS se postavlja v postavljene meje po pravilu:

kjer so ri,j številski faktorji, ki pri sistematičnemu iskanju dobivajo vrednosti med 0 in 1.• Vsako sistemat. ali naključno dobljena konstr. rešitev se sproti

preverja, če izpolnjuje vse enakostne pogoje in neenakostneomejitve.

Nep

osre

dne

num

erič

ne m

etod

e

25

49

• Vse konstr. rešitve, ki izpolnjujejo pogoje, se oštevilči in zbere v jato z NC člani.

• Po končani generaciji začetne jate, se prične numerični postopek iskanja minimuma CF �����znotraj dovoljenega prostora.

• V saki konstr. rešitvi se izračuna vrednost CF, da se jo primerja z vrednostmi CF pri ostalih rešitvah.

• Poišče se točko, ki ima najslabšo vrednost CF in jo označimo z ��� .

• Izračuna se tudi središče vseh konstr. rešitev jate po klasičnem pravilu:

Nep

osre

dne

num

erič

ne m

etod

e

50

• konstrukcijsko rešitev, ki ima najslabšo vrednost CF se zamenja z novo po pravilu:

• Indeks W označuje najslabšo konstrukcijsko rešitev v posamezni iteraciji, ki jo zamenja nova rešitev.

• Indeks N označuje novo izboljšano rešitev.

Nep

osre

dne n

umer

ične

met

ode

26

51

Neposredne numerične metode

52

Neposredne numerične metode