SVEUČILIŠTE U MOSTARU FAKULTET STROJARSTVA I RAČUNARSTVA
OPTIMIRANJE KONSTRUKCIJA
Optimizacijske metode u konstruiranju
Profesor: Prof.dr.sc. Milenko Obad
Studenti: Ivan Radak Hrvoje Lakić
Mostar, veljača, 2016.
1. Što je optimizacija? Strojarstvo je profesija u kojoj se primjenjuju načela iz prirode pri stvaranju korisnih naprava. Inžinjer strojarstva konstruira novi motor, ovjes automobila ili pak robot. Građevinski inžinjer konstruira most ili zgradu, inžinjer elektrotehnike konstruira računalo ili integrirani krug. Iz više razloga a najviše zbog konkurentnog tržišta, inžinjer neće biti samo zainteresiran za dizajn koji zadovoljava na nekoj nominalnoj razini, nego je najbolji u nekom pogledu. Proces određivanja najboljeg dizajna (konstrukcije) se naziva optimizacija. Prema tome možemo željeti konstruirati najmanji izmjenjivač topline koji ostvaruje ciljani prijenos topline, ili konstruirati najjeftiniji mogući most za autocestu, ili pak maksimalno povećati težinu koju pojedini robot može podignuti. Često se inžinjerska optimizacija radi implicitno. Koristeći kombinaciju prosuđivanja, iskustva, modeliranja, drugih mišljenja itd.. Inžinjer donosi odluke o konstrukciji za koje on ili ona smatraju da vode optimalnom dizajnu. Neki inžinjeri su jako dobri u ovome. Međutim, ako postoji više varijabli koje treba korigirati sa nekoliko proturječnih ciljeva i/ili ograničenja, ova vrsta optimizacije temeljene na iskustvu može podbaciti u vidu identificiranja optimalne konstrukcije. Interakcije su previše složene i previše je varijabli da bi intuitivno odlučili o optimalnoj konstrukciji. Tu na scenu stupa računalno podržana optimizacija konstrukcija. Ovim pristupom, koristimo računala u potrazi za najboljom konstrukcijom prema kriterijima koje mi odredimo. Ogromna moć procesuiranja računala nam omogućava evaluiranje i ocjenu mnogo više varijanti konstrukcija nego što bi ikad mogli „pješke“. Nadalje, koristimo sofisticirane algoritme koji omogućuju računalu da učinkovito traži optimum. Često započinjemo algoritme iz najboljih konstrukcija koje smo bazirali na osnovu iskustva i inžinjerske intuicije. Tada možemo vidjeti jeli moguće išta poboljšati. Kako bi se iskoristio ovaj tip optimizacije, nekoliko uvjeta mora biti ispunjeno. Prvo, moramo imati kvantitativan model za izračun područja interesa. Ako želimo povećati prijenos topline, moramo biti u mogućnosti izračunati prijenos topline za različite tipove izmjenjivača. Ako želimo smanjiti troškove, moramo znati izračunati troškove. Ponekad dobivanje takvih kvantitativnih modela nije baš tako lako. Dobivanje valjanog i točnog modela problema u dizajnu konstrukcije je najvažniji korak u optimizaciji. Nije neuobičajeno da se 90% napora u optimizaciji konstrukcije provede na razvijanju i vrednovanju kvantitativnog modela. Jednom kada se dobije dobar model, rezultati optimizacije se mogu brzo realizirati. Srećom, u strojarstvu često imamo dobre, predvidive modele (ili bar djelomične modele) za rješavanje problema. Na primjer imamo modele za predviđanje prijenosa topline ili pada tlaka u izmjenjivaču topline. Imamo modele koji predviđaju naprezanja i progibe na mostu. Iako su inžinjerski modeli obično fizičke prirode (bazirani na
fizikalnim zakonitostima), možemo često koristiti i empirijske modele (bazirane na rezultatima eksperimenata). Također je savršeno prihvatljivo za modele da budu rješeni numerički (korišteći npr. metodu konačnih elemenata). Pored modela, moramo imati neke slobodne varijable – čije vrijednosti mogu biti zadane, razumno, od strane inžinjera. Ove varijable ćemo nazvati konstrukcijske varijable. U slučaju izmjenjivača topline, konstrukcijske varijable mogu biti broj cijevi, promjer cijevi, dužina cijevi, itd.. Ponekad se odnosimo prema broju konstrukcijskih varijabli kao broju stupnjeva slobode računalnog modela. Sloboda koju imamo da mijenjamo konstrukcijske varijable vodi konceptu dizajnerskog prostora. Ako imamo četiri varijable, onda imamo četverodimenzionalni prostor dizajniranja kojeg možemo pretraživati da nađemo najbolji dizajn (konstrukciju). Iako ljudi često imaju poteškoća u shvaćanju prostora koji ima više od tri dimanzije, računala nemaju takvih probelma. U nekim slučajevima, problemi sa tisućama varijabli mogu biti rješeni. Osim konstrukcijskih varijabli, moramo također imati i kriterije koje želimo optimizirati. Ti kriteriji mogu imati dva oblika : ciljevi i ograničenja. Ciljevi predstavljaju osobine koje želimo povećati ili smanjiti. Ograničenja predstavljaju limite unutar koji moramo ostati, ako nejednakost je ograničenja, ili, u slučaju jednakosti ograničenja, ciljane vrijednosti koje moramo zadovoljiti. Kolektivno ciljeve i ograničenja nazivamo konstrukcijske funkcije. Nakon što smo razvili dobar računalni model analize modela, moramo povezati model sa optimizacijskim software-om. Nakon što je napravljena veza da optimizacijski software može „razgovarati“ za inžinjerskim modelom, specificiramo set konstrukcijskih varijabli i ciljeve i ograničenja. Optimizacija tada može početi; software za optimizaciju će pozvati model mnogo puta (ponekad tisuće puta) dok traži optimalni dizajn. Obično nismo zadovoljni sa samo jednim optimumom – nego želimo istražiti koliko prostora imamo za konstruiranje. Često to radimo na način da mijenjamo set varijabli i funkcija i re-optimiziramo ih da vidimo kako se konstrukcija mijenja. Umijesto smanjenja mase, na primjer, sa ograničenjem naprezanja, želimo smanjiti naprezanja sa ograničenjem težine. Istražujući na ovaj način, možemo dobiti uvid u kompromise i interakcije koji određuju problem konstrukcije. Ukratko, računalno podržana optimizacija odnosi se na korištenje računalnih algoritama u potrazi za konstruktorskim prostorom (slobodom u konstruiranju) računalnog modela. Konstrukcijske varijable su prilagođene algoritmom kako bi se postigli ciljevi i zadovoljila ograničenja.
2. Inžinjerski modeli u optimizaciji 2.1. Analiza varijabli i funkcija Kao što je spomenuto, inžinjerski modeli imaju ključnu ulogu u optimizaciji. Inžinjerske modele nazivamo i modeli za analizu. U vrlo općenitom smislu, modeli za analizu mogu se vidjeti na slici 1. Model zahtijeva ulaze (inpute) da bi obavio proračun. Ovi ulazi se nazivaju varijable za analizu. Varijable za analizu uključuju konstrukcijske varijavle (varijable koje možemo mijenjati) plus ostale kvantitete, kao što su svojstva materijala, granični uvjeti, itd., koji obično nebi bile konstrukcijske varijable. Kada su postavljene sve vrijednosti za analizu varijabli, model za analizu se može procijeniti. Model za analizu izračunava izlaze (output-e) zvane funkcije analize. Ove funkcije predstavljaju ono što nam je potrebno kako bi se utvrdila kvaliteta dizajna (konstrukcije). Na primjer, funkcije analize mogu biti naprezanja, progibi, cijena, efikasnost, prijenos topline, pad tlaka, itd.. Tek iz funkcija analize odabiremo konstrukcijske funkcije, tj. ciljeve i ograničenja.
Slika (1) – modeli za analizu
Modeli za analizu zahtijevaju ulaze – varijable za nalizu i izračunavaju izlaze – funkcije analize. U biti svi modeli analize mogu se prikazati na ovaj način.2.2 Primjer – rešetka Razmislite o konstrukciji jednostavne cijevne simetrične rešetke kao što je prikazano na slici 2 u nastavku. Konstrukcija rešetke je određena jedinstvenim skupom vrijednosti za analizu varijabli: visina (H), promjer (d), debljina (t), udaljenost (B), modul elastičnosti (E), i gustoća materijala ( ρ )
Slika (2) – rešetka U ovom slučaju možemo napraviti model rešetke koristeći matematičke jednadžbe: Težina =
ρ ∙2 ∙ π ∙ d ∙ t
Naprezanje =
√(
√(
B 2 +H2 2
)
B 2 +H2 2 2∙ t ∙ π ∙ d ∙ H
P∙
)
2 2 2 π ∙ E ( d +t )
Naprezanje na izvijanje =
[( ) ] 2
8
B 2 +H 2
[( ) ] 2
Progib =
B P∙ + H2 2
3 2
2
2∙t∙π ∙d∙ H ∙ E
Varijable za analizu i funkcije za analizu grede su sažete u tablici 1. Varijable za analizu predstavljaju sve količine na desnoj strani jednadžbe napisane gore. Kada se svi ti varijabla daju specifične vrijednosti, možemo procijeniti model, što se odnosi na izračunavanje funkcija. Varijable za analizu
Funkcije za analizu
Težina, naprezanje, B, H, t, d, P, E,
ρ
naprezanje na izvijanje, progib
Tablica (1) – varijable i funkcije za analizu rešetke Varijable za analizu
Vrijednost
Visina, H (cm)
76,2
Promjer, d (cm)
7,62
Debljina stijenke cijevi, t (cm)
0,38
Udaljenost između oslonaca, B (cm)
152,4
Modul elastičnosti, E (GPa)
210
Gustoća,
3
ρ(kg / m )
8300
Oterećenje (kg)
30000
Funkcije za analizu
Vrijednost
Težina (kg)
16,32
Naprezanje (MPa)
227,6
Naprezanje na izvijanje (MPa)
1279
Progib (mm)
1,676
Možemo dobiti novi dizajn rešetke promjenom jednog ili svih vrijednosti varijabli za analizu. Na primjer, ako promjenimo debljinu stijenke cijevi sa 0,38 cm sa 0,254cm vidjeti ćemo da se težina smanjila, ali su se naprezanje i progib povećali. Varijable za analizu
Vrijednost
Visina, H (cm)
76,2
Promjer, d (cm)
7,62
Debljina stijenke cijevi, t (cm)
0,254
Udaljenost između oslonaca, B (cm)
152,4
Modul elastičnosti, E (GPa)
210
Gustoća,
3
ρ(kg / m )
8300
Oterećenje (kg)
30000
Funkcije za analizu
Vrijednost
Težina (kg)
10.9
Naprezanje (MPa)
341,4
Naprezanje na izvijanje (MPa)
1279
Progib (mm)
2,5
3. Modeli i optimizacija pomoću metode pokušaja i pogrešaka Kao što je viđeno u prethodnom odlomku, „posao“, da tako kažemo, modela za analizu je izračunavanje vrijednosti funkcija za analizu. Konstruktor određuje vrijednosti varijabli za analizu, a model izračunava odgovarajuće funkcije. Treba imati na umu da software za analizu ne donosi nikakve odluke što se tiče kvalitete (dobrote) konstrukcije. Ako inžinjer konstruira most, na primjer, i ima software da može predvidjeti naprezanja i progibe, software samo izbaciva te vrijednosti – ne predlaže kako izmjeniti konstrukciju da se smanje naprezanja na pojedinim mjestima. Odlučivanje kako poboljšati svoju konstrukciju je posao konstruktora. Da popravi dizajn, konstruktor će često koristiti model na iterativan način, kako je prikazano na slici 3. Konstruktor specificira skup ulaza, ocjenjuje model, ispitiva izlaze. Pretpostavimo, u nekom smislu, da izlazi (output-i) nisu zadovoljavajući. Koristeći intuiciju i iskustvo, konstruktor predlaže novi skup ulaza (input-a) za koje ona ili on misle da će rezultirati boljim skupom izlaza (output-a). Model se opet evaluira. Ovaj proces ponekad se ponavlja mnogo puta. Nazivamo ga „optimizacija konstrukcije metodom pokušaja i pogrešaka“. Na ovaj način radi većina software-a za analizu. Obično proces kontruiranja završava kada nestane vremena i/ili novca. Obratimo pozornost na neusklađenost tehnologije na slici (3). Na desnoj strani slike, model je evaluiran sofisticiranim software-om i suvremenim računalima. Sa lijeve strane, odluke o konstrukciji se donose na osnovu pokušaja i pogrešaka. Analiza je hi tech; donošenje odluka je low tech.
Slika (3) – uobičajena metoda „pokušaja i pogrešaka“ u procesu konstruiranja
4. Optimizacija pomoću računalnih algoritama Ručunalom podržana optimizacija je proces da se uvođenja visoke tehnologije u proces donošenja odluka. Sa ovim pristupom, konstruktor je oslobođen iz petlje metode „pokušaja i pogrešaka“. Računalo se danas koristi i za evaluaciju modela i potragu za boljim dizajnom. Ovaj proces je prikazan na slici (4). Dizajner sad funkcionira na višem nivou. Umjesto podešavanja varijabli i interpretacija funkcijskih vrijednosti, dizajner specificira ciljeve za probleme dizajna i interpretira rezultate optimizacije. Prostor za konstruiranje može biti puno detaljnije istražen. Obično se može doći do boljeg dizajna za mnogo manje vremena.
Slika (4) – Izostavljanje inženjera iz petlje „pokušaja i pogrešaka“ sa računalno podržanim optimizacijskim software-om 5. Specificiranje optimizacijskog problema 5.1. Varijable, ciljevi, ograničenja Problemi optimizacije su često opisani koristeći određenu formu. Ta forma je prikazana na ispod. Prvo su navedene konstrukcijske varijable. Tada su zadani ciljevi, i na kraju dana su ograničenja. Kratica „s.t. znači „subject to (pod uvjetom da)“.
Find
visinu i promjer da: smanjimo težinu s.t. naprezanje
≤ 690 MPa
naprezanje minus naprezanje na izvijanje ≤0
progib
≤ 6,35mm
Primjetimo da definiramo uvjete izvijanja, moramo kombinirati dvije funkcije za analizu zajedno. Tako smo mapirali dvije funkcije za analizu i pretvorili ih u jednu. Možemo navesti nekoliko problema optimizacije koristeći isti model za analizu. Na primjer, možemo definirati drukčiji problem optimizacije za rešetku od dvije cijevi :
Find
debljinu i promjer da: Smanjimo naprezanje
s.t. težina ≤11,4 kg progib ≤ 6,35mm
Navođenje problema optimizacije, tj. izbor varijabli i konstrukcijskih funkcija, naziva se mapiranje između prostora analize i prostora konstruiranja. Za gore definirani problem, mapiranje bi izgledalo ovako:
Slika (5) – Mapiranje prostora za analizu u konstrukcijski prostor za rešetku za dvije cijevi
Vidimo iz slike (5) da su konstrukcijske varijable podskup varijabli za analizu. To je uvijek slučaj, U primjeru rešetke, nebi imalo smisla staviti opterećenje kao konstrukcijsku varijablu – inače bi software za optimizaicju pokazao opterećenje nula, u kojem slučaju potreba za rešetkom nestaje! Također, gustoća i modul elastičnosti neće biti konstrukcijske varijable osim ako nismo u mogućnosti mijenjati materijal korišten za konstrukciju rešetke. U tom slučaju, vrijednosti ovih varijabli biti će povezane (modul elastičnosti materijala A može se upariti jedino sa gustoćom za materijal A) i također će biti diskretne. Rješenje problema optimizacije diskretnih varijabli je opisano u poglavlju 4 i 5. U ovom trenutku. Pretpostavit ćemo da su sve konstrukcijske varijable kontinuirane. Na sličan način, konstrukcijske funkcije su podskup funkcija za analizu. U ovom primjeru, sve se funkcije za analizu pojavljuju u konstrukcijskim funkcijama. Međutim, ponekad se funkcije za analizu izračunavaju koje su korisne u razumijevanju problema dizajna ali koje ne postaju ciljevi ili ograničenja. Treba imati na umu da se funkcija za analizu „naprezanje“ pojavljuje u dvije konstrukcijske funkcije. Tako je moguće za jednu funkciju za analizu da se pojavljuje u dvije konstrukcijske funkcije. U primjeru koji je dan poviše, imamo samo jedan cilj. To je najčešći oblik optimizacijskog problema. Moguće je imati više ciljeva. Međutim, obično smo ograničeni na najviše dva ili tri cilja. To je zato što se ciljevi obično u sukobu jedan s drugim (jedan postaje gori dok drugi postaje bolji) i ako definiramo previše ciljeva, algoritam se nemože pokrenuti. Također, treba primjetiti da su sva ograničenja u primjeru „manje nego“ nejednakost ograničenja. Granice ograničenja se još nazivaju dopuštene vrijednosti ili desne strane. Da bi optimalno rješenje bilo valjano, sva ograničenja moraju biti zadovoljena. U ovom slučaju, naprezanje mora biti manje ili jednako od 690 MPa; naprezanje minu naprezanje na izvijanje mora biti manje ili jednako nula, i progib mora biti manji ili jednak od 6,35 mm. Većina inžinjerskih ograničenja su ograničenja nejednakosti. Osim manje ili jednako ( ≤ ) ograničenja, možemo imati i veće ili jednako ( ≥ ) ograničenja. Bilo koje manje od ograničenje može se pretvoriti u veće od ograničenje ili obrnuto množeći obe strane sa -1. Moguće je da imamo u problemu desetke, stotine ili čak tisuće ograničenja nejednakosti. Kad je ograničenje nejednakosti jednako vrijednosti na svojoj desnoj strani, znači da bude aktivan ili vezivajuće. Osim ograničenja nejednakosti, možemo također imati i ograničenja jednakosti. Ograničenje jednakosti govore da bi vrijednosti funkcije trebale biti jednake vrijednostima s
desne strane. Zbog toga što ograničenja jednakosti strogo ograničavaju konstruktorski prostor (svako ograničenje jednakosti oduzima jedan stupanj slobode) moraju se koristiti pažljivo.