Politechnika Warszawska Wydziaª Elektryczny Teoria optymalizacji POJEMNIK ZADANIE PROBLEMOWE Laboratorium metod optymalizacji Temat wiczenia: Zadanie problemowe - pojemnik Prowadz cy: doc. dr in». Krzysztof Amborski Wykonawca: Paweª No»ykowski, 207449
Spis tre±ci 1 Tre± zadania 2 2 Analiza zadania 2 3 Wykonanie zadania 3 4 Wnioski 4 1
1 Tre± zadania Blaszane pojemniki bez pokrywy w ksztaªcie prostopadªo±cianów o obj to±ci 0,25 m 3 maj by produkowane z dwóch rodzajów blachy. Dno pojemnika powinno by wykonane z blachy o grubo±ci 4 mm, ±ciany boczne za± z blachy o grubo±ci 2 mm. Blacha cienka pochodzi z odpadków i na jeden pojemnik nie wolno zu»y wi cej ni» 2,66 m 2. Odbiorca pojemników wymaga, aby ich szeroko± nie przekraczaªa 60 cm, wysoko± natomiast zawieraªa si w przedziale od 50 do 75 cm. Zakªadaj c,»e ci»ar 1 m 2 blachy jest proporcjonalny do jej grubo±ci, sformuªowa zadanie zaprojektowania pojemnika o minimalnym ci»arze. 2 Analiza zadania ±ciany y dno pojemnika z x 4mm 2mm Na podstawie tre±ci zadania mo»emy uªo»y nast puj ce ograniczenia: 1. Blaszane pojemniki bez pokrywy w ksztaªcie prostopadªo±cianów o obj to±ci 0,25 m 3 x y z = (1) 2. Blacha cienka pochodzi z odpadków i na jeden pojemnik nie wolno zu»y wi cej ni» 2,66 m 2. 2 x y + 2 y z 2, 66 (2) 3. Odbiorca pojemników wymaga, aby ich szeroko± nie przekraczaªa 60 cm x 0, 6 4. wysoko± natomiast zawieraªa si w przedziale od 50 do 75 cm. y 0, 5 y 0, 75 5. Dodatkowo musimy wprowadzi ograniczenia wynikaj ce z praw zyki: x > 0 z > 0 2
Funkcja celu, któr b dziemy minimalizowa wynika z ostaniego zdania: Zakªadaj c,»e ci»ar 1 m 2 blachy jest proporcjonalny do jej grubo±ci, sformuªowa zadanie zaprojektowania pojemnika o minimalnym ci»arze. f(x, y, z) = 0, 004 x z + 0, 002 (2 x y + 2 y z) (3) Przeksztaªcaj c równanie (1) do postaci: z = x y i wstawiaj c do funkcji celu (3) otrzymujemy now posta funkcji celu: f(x, y) = 0, 004 y + 0, 002 (2 x y + 2 x ) upraszczaj c: f(x, y) = 0, 001 (4 x y + 1 x + 1 y ) Poniewa» staªa 0, 001 przed nawiasem nie wpªynie na wynik optymalizacji mo»emy ja pomina i ostatecznie: f(x, y) = 4 x y + 1 x + 1 y Ograniczenie (2) przyjmie posta : 2 x y + 1 2, 66 2 x 3 Wykonanie zadania Zadanie zostaªo wykonane z u»yciem ±rodowiska Matlab i pakietu Optimalization Toolbox. ródªo 1 myfun.m f u n c t i o n [ f ] = myfun ( x ) f = 4 * x ( 1 ) * x ( 2 ) + 1/x ( 1 ) + 1/x ( 2 ) ; ródªo 2 mycon.m f u n c t i o n [ c, ceq ] = mycon ( x ) c = 2 * x ( 1 ) * x ( 2 ) + 0. 5 * (1/ x ( 1 ) ) 2. 6 6 ; ceq = [ ] ; ródªo 3 opt_zad.m f u n c t i o n opt_zad c l c ; o p t i o n s = optimset ( ' MaxIter ', 500, ' Display ', ' iter ', ' tolfun ', 1e 10, ' tolcon ', 1e 10, ' MaxFunEvals ', 500, ' TolX ', 1e 10); x0 = [ 0. 1 0. 1 ] l b = [ 0. 0 0. 5 ] ub = [ 0. 6 0. 7 5 ] [ x, f v a l ] = fmincon ( ' myfun ', x0, [ ], [ ], [ ], [ ], lb, ub, ' mycon ', o p t i o n s ) ; disp ( 'x = ' ) ; disp ( x ) ; disp ( 'f(x) = ' ) ; disp ( f v a l ) ; 3
Uzyskany wynik przedstawia poni»szy listing: Listing 1 Wynik oblicze«x0 = 0. 1 0 0 0 0. 1 0 0 0 l b = 0 0. 5 0 0 0 ub = 0. 6 0 0 0 0. 7 5 0 0 Max Line s e a r c h D i r e c t i o n a l F i r s t o r d e r I t e r F count f ( x ) c o n s t r a i n t s t e p l e n g t h d e r i v a t i v e o p t i m a l i t y 0 3 1 2. 1 9 9 6 2. 4 4 1 6 4. 8 0 1 0. 2 6 7 9 7. 7 2 10 4. 7 6 6 6 7 0 0. 5 0. 0 4 1. 4 7 3 13 4. 7 6 5 1 5 0 1 0.000953 0. 0 3 7 3 4 16 4. 7 6 5 0 5 0 1 8.64 e 06 0. 0 0 1 7 9 5 19 4. 7 6 5 0 5 0 1 5. 1 4 e 09 2. 1 1 e 05 6 22 4. 7 6 5 0 5 0 1 0 2. 8 e 08 Optimization terminated : f i r s t o r d e r o p t i m a l i t y measure l e s s than o p t i o n s. TolFun and maximum c o n s t r a i n t v i o l a t i o n i s l e s s than o p t i o n s. TolCon. Active i n e q u a l i t i e s ( to w i t h i n o p t i o n s. TolCon = 1e 10): lower upper i n e q l i n i n e q n o n l i n 1 x = 0. 6 0 0 0 0. 6 4 5 5 f ( x ) = 4. 7 6 5 1 Optymalnym rozwi zaniem jest zatem: x = 0, 600 y = 0, 645 z = 0, 646 f(x, y, z) = 4, 765 Wszystkie zmienne mieszcz si w przyj tych ograniczeniach. 4 Wnioski Udaªo si zaprojektowa pojemnik o minimalnym ci»arze. rodowisko Matlab okazaªo si bardzo przydatne i przyjazne. 4