PhUcrng phap gradient tmh toi Uu kich thUorc dan suTdung phan mem Matlab
Gradient method for size optimization of truss using matlab
Ngay nhan bai: 12/01/2017 Ngay sCra bai: 18/02/2017 Ngay chap nhan dang: 3/03/2017
T O M TAT
PhUdng phap gradient la phuong phap lap theo hudng di nhanh va CO ldi nhat trong qua trinh giai bai toan toi Uu, Trong bai bao gidi thieu each giai bai toan toi Uu kich thUdc dan bang phdong phap quy hoach toan hoc gradient, sit dung ham fmincon trong phan mem Matlab.
Td khoa: Toi Uu kich thudc dan, phiiong phap gradient
ABSTRACT
Gradient method is the iterative method to gel optimum results This paper presents the procedure to solve truss sizing optimization by gradient method, using fmincon function m Matlab,
Key words Truss sizing optimization, gradient method.
T S . V u Thi Bich Quyen
Giang vien, KJioa Xay dUng, TrUang DH Kien triic Ha Noi KS. Cao Qudc Khanh
Can bd l<;v thuat
V u Thj Bich Quyen, Cao Qudc Khanh
1 . Dat van de
Tdi Uu hda ket cau la bai toan t i m kiem mot giai phap cd lgi nhat trong qua trinh tinh toan thiet ke Tif nhieu t h a p ky, tdi Uu hda da t r d thanh mdt ph^n khdng the thieu trong qua trinh thtet ke so bd he ket cau. NgUdi thiet kecan t i m ra mot phuong an v^ kich thUdc, hinh dang, vat lieu {dUoc goi la bien thiet ke) de dat dugc muc tieu nhd nhat ve t r o n g lugng hoac gia thanh ma van dam bao cac yeu cau ve do ben, cdng va dn dinh. Phy thudc vao bien thiet ke bai toan tdt Uu dan duoc duOc chia thanh ba loai;
tdi uu kfch thudc; tdi Uu hinh dang, tdi Uu cau triic. Trong thiet ke dan, tdi uu kich thudc la bai toan thudng gap trong qua trinh thiet ke so bg, vdi bien thiet ke dUoc chon la kich thudc mat cat ngang, toa dd cua cac nut va lien ket la cd dinh.
Ly thuyet thiet ke tdi du la mdt trong nhUng hudng nghien cdu phSt trien nhanh tronglinh vUc ca hoc vat ran bien dang va co ket cau, la sU ket hgp giCra ly thuyet co hoc va ly thuyet tdi Uu. Viec giai cac bai toan tdi Uu dUOc thuc hien tren co sd dng dung cac phUOng phap toan hoc. C6 hai ddng phdong phap chinh giai bai toan tdi Uu la quy hoach toan hoc va phuong phap toi uu, Trong do, phuang phap quy hoach toan hoc la mdt cdng cu kinh dien, tong quat va cd hieu lUc giai bai toan tdi Uu
PhUOng phap gradient la mdt phUOng phap quy hoach toan hoc hieu qua giai bai toan quy hoach phi tuyen (trong dd co bai toan tdi Uu dan).
Tuy nhien viec ap dung phuong phap theo d u o n g ldi giai tich gap nhieu kho khan va chi cd the giai cho nhUng trudng hop don gian. Ngay nay, vdi suphat tnen ciJa cong nghe thdng tin, cac phan mem toan hoc la mot cong cu hieu qua hd trO cho viec giai cac bai toan toi Uu ket cau, 1^61 dung sau day ciia bai bao se gidi thieu viec giai bai toan tdi Uu kich thudc dan phang bang phuong phap quy hoach toan hoc gradient sd dung phan mem toan hoc Matlab.
2. PhUOng phap quy hoach toan hgc gradient 2 . 1 . Phuong phap quy hoach toan hoc [1]
Bai toan tdi Uu ket cau c6 dang chung bao g d m : cac bien thiet ke, ham muc tieu va dieu kien rang buoc.
Ham muc tieu z = F(X| -^ mm (2,1)
(max)
VOI cac bien thiet ke X :- ! N , x A X ' rang bu< g,(X)|< =
(2,2) 2,3) Trong bai toan quy hoach toan hoc, he rang budc md ta vec t o bien X nam trong mien rang budc D thudc khong gian thuc n chieu
g(X)(< = > ) b : i = l - m |
XeD,c-_r [ '^•'"
PhUdng phap quy hoach toan hoc la phuong phap tim nghiem toi Uu trong mien thiet ke D bang cach xuat phat t u mdt diem Xoban dau
n hudng den diem Xi, X.,,X„ bang each lap den X^
120 S0»**'*^' 03.2017
x„-jx;»',xf.,.,x;'" x;:^} {2.6)
khi ham muc tieu khdng the nhd hoac Idn h o n duoc nifa ma van thda man cac dieu kien rang budc.
2.2. PhUOng phap gradient
De Ida chon hudng di cd loi nhat de dat den phuong an t o i Uu nhanh nhat, trong qua trinh lap ngUdi ta da de xucit phuong phap gradient.
Hintil Viduhuonglapgradiert
Ndi dung cua phuong phap la qua trinh lap xuat phat tU m d t diem trong (hoac ngoai) mien nghiem D d i t h e o h u d n g v e c t o vudng goc (hinh 1), nen duoc ggi la phuong phap gradient, Trong d o gradient cua ham muc tieu va dieu kien rang buoc the hien trong cdng thUc sau
cT cF
^g,(><; ^ \c_g^ f g ^ rgJX) 5g,(X)]"
(2.7)
(2.8)
f £ T , L A ,
Gradient ciia mot ham bieu dien mdt vecto vudng gdc vdi sieu mat tao bdi ham tuong Ung. HUdng V dugc goi la chap nhan dUOc tai diem X neu thda man dieu kien;
V ' . y g , ( X ' } > 0 (2.9) 3. Thiet lap bai t o a n t d i Uu dan phdng
3.1. Ham muc tieu
Trong bai toan toi Uu kich thudc dan ham muc tieu duoc chon la cUc tieu hda trong luong G ciia toan bd he dan,
(3.1) Trong dd
- N la so nhdm bien thiet ke. Bien thiet ke la dien tich mat cat ngang, de thuan tien trong che tao, ket cau dan duoc chia thanh mdt sd nhom cau kien CO dien tich mat cat ngang nhu nhau, chieu dai cd the khac nhau, - Ll, Al la tdng chieu dai va dien tich mat cat ngang ciia cac phan t d n h d m i ;
- y, la trong luong neng ciia vat lieu nhdm i
- Trong trUdng hop ket cau ddng chat thi ham muc tieu co dang the tich ket cau
V = J L A (3 2)
3.2. Dieu kien rang buoc
Trong bai toan toi Uu trong luong dan cd hai loai dieu kien rang budc cac rang buoc ve dieu kien dam bao ben va cUng duoc viet dudi dang bat dang thilc. cac rang buoc ve dieu kien can bang he duoc viet dudi dang dang thUc Do dd, trang thai Ung suat bien dang cua dan duoc the hien trong cac dieu kien rang buoc Viec lUa chon phuong phap giai bai toan xac dmh ndi luc va chuyen vi ciia ket cau se quyet dmh bieu thifc toan hoc cua dieu kien rang buoc Trong bai bao sd dung dudng ldi thiet lap cac dieu kien rang buoc bang phuong phap gtai tich (phuong phap luc) va phuong phap sd (phuong phap phan t d hilu han)
3.2.1. Xay dUng dieu kien rang buoc theo p h u o n g p h a p lUc Sir dung phuong phap lUc giai bai loan dan sieu tinh bac n
Vec t o ndi lUc S cOa he d o tdi trpng P va phin life X trong cac lien ket thda gay ra dUdc xac d m h theo cdng thdc:
S = S o + S ^ (3.3) So vaSJa cac vec t o ndi luc d o tai trgng vaphSniUc tai lien ket thira
gay ra.
S o = B ( , P ; S , = B , X (3.4) Bo va B. la cac ma tran ndi lUc trong he co bit] tuong dng vdi P va R
b S n g d o n v i .
Vec tcJ bien dang U ddoc xac ^ n h theo cong thdc:
U - F S - F ( B o P + B j . X ) " (3.5) Vdi F la ma tran d o m e m ciia he
Sddung nguyen ly cdng kha d l xac dinh dugc vec t o c h u y e n vi dn nut tuong dng vdi vi t r i va phUOng ciia tai trong P, vec t o chuyen vi fix tUOng Ung v6i vi t r i va phuong cua phSn Idc X trong lien ket thiia n h u sau:
A p = B l F B ^ P + B j F B ^ X (3.6) Ajj-BjFBoP + BjFB^X
Cdc dieu kien rdng bupc c Rang budc ve dd ben
(3,7)
n^i^M
T r o n g d o i f a l , [ 0 ] la dng suat cho phep khi keo va khi nen ddi vdi phan t d i
Rang budc ve d o cdng Zip ^ A ^ (3.9) Trong do [A] la chuyen vi cho phep vdr cac diem dat tai trong
Rang buoc ve can bang thda man dieu kien bien dang tai cac lien ket
thC/a A;^ = 0 (3.10) Odi vdi thanh chiu nen can xet den dieu kien dn dmh trong (3 8)
3.2.2. Xay dUng dieu kien rang buoc t h e o p h u o t i g p h a p p h a n t d h i i i u h a n [ 3 |
Vec to chuyen vi tai cac niit dan dUOc xac dmh tU phUOng trinh co ban cLia phuong phap phan t d hUu han
A = K'.P (3.11) Trong db:
- K la ma tran do cUng ciia dan , - fl la vec to chuyen vi tai nut dan;
- P la vec t o tai trong tai nut dan
Ndi luc N» trong phan t i i thanh duoc xac dmh theo cong thirc
N ^ ^ K ^ (3.12) Trong dd
- IC, la ma tran do cUng ciia phan t u trong he toa do neng, - 5fla vec to chuyen VI nut phan t d trong he toa do rieng Cdc dieu kien rang budc
Cac rang buoc ve do ben va cung cho he dan tinh theo phuong phap phan t d hUu han cung giong nhu tmh theo phuong phap lUc trong (3 8) va (3-9)
Rang budc ve can bang thda man dieu kien phuong trinh co ban cua phuong phap phan t d huu han
P - K q ( 3 , 3 ) Nhan xet Cac dieu kien rang buoc xay dung theo phuong phap luc
va chuyen vi deu la phi tuyen, bai toan toi Uu dan la bai toan quy hoach phi tuyen
03.2017 PiBflfilfflW i ;
4 . Tfnh t o i lAi b^ng p h u o n g p h i p g r a d i e n t t r o n g p h a n m e m M a t l a b [41
4 . 1 . T h u a t tocin t o i Uu s i ^ d u n g phiTOng p h a p g r a d i e n t t r o n g M a t l a b
Phan mem Matlab cung cap cSc ham cd the sd dung trong t i m kiem gia tri cue dai, cUc tieu, t i n h tdi Uu cac ham muc tieu trong trUdng hop cd va khdng cd di^u k i f n rang budc (trong Optimization Toolbox), Cac cdng cu nay cd the dung de gial quyet nhieu loai bai toan quy hoach toan t u y e n t i n h , phi tuyen vdi cac bien lien tuc va rdi rac,
Cac phuong phap dua tren cO sd gradient trong Matlab sd dung dao ham bac nhat (gradient) va bac hai (hessian) t i m kiem cac diem cd gia tri cUc tieu cyc bd Hai phuong ph^p dda tren co sd gradient giai bai toan quy hoach phi tuyen c d d i ^ u kien la Lap rrirj/ibdc2 theo cdu true f u d n t u - Sequential quadratic programming (SOP) va Phuong phdp diem trong - Interiorpoint methods (IP).
Trong Matlab cd hai ldi giai tdng quat trong thuat toan toi Uu tren ca sd phuong phap gradient la Multistart va GlobalSearch. Ca hai phUOng phap nay deu sd dung trong mdt ham ciia Matlab la fmincon. dting tim gia t n cue ti^u cue bd. Cac thuat toan nay sddung nhieu diem bat dau va d i i n g ham fmincon de tim nhUng diem cue tieu dia phuong. Gia tri cue tieu tong the duge chon bang each lay gia tri thap nhat va kha thi trong cac gia tn cUc tieu dia phuang ma ham fmincon da tim dugc.
Multistart la mdt thuat toan rd rang va don gian, thuat toan lap thuc hien theo ca budc:
• Tao cac diem bat dau
• Dung fmincon tinh toan cUe tieu dia phuong tU nhCrng diem bat dau dd,
• Tao vector chUa ket qua cac gia tri cue tieu dia phuong va chon gia tri tdt nhat trong v e c t o r t r d t h a n h gia tri cue tieu loan cue,
GolbalSearch la thuat toan phdc tap hon Multistart, cac diem khdi dau duoc tao ra bang "scatter-search mechanism" (mdt co che phan tan tim kiem). Golbaisearch se cd gang phan tich cac d i ^ m khdi dau nay va loai bd cac diem khdng kha thi, Cac budc sau 36 ciing giong nhu Multistart:
4.2. Ham f m i n c o n
Ham fmincon [5] la ham toi Uu dUoc xay dung tren co sd phuong phap gradient dimg de tim cue tieu ciia bai toan phi tuyen cd cac dieu kien rang budc nhu sau
Z = r ( x ) ^ m i n
- LargeScale sd dung trong c^c bai t o ^ n cd kich thudc Idn, dae biet hieu q u ^ trong b&i toan can t i n h den ma tran dao ham bSc 2 (hessian).
' - MediumScale s d d u n g trong cac bai l o a n e d kfch thdde t r u n g binh, Noi dung cii phap vi cic t h d n g s6 Ida ehon t r ^ n dUde s d d y n g trong bai toan t i n h tdi uu trong lUOng dSn. Ham fmincon cdn ed the sddung vdi nhieu eij phap va eae thdng gidi nhieu loai bai toin khac nhau.
5. V ( d u ti'nh t o a n
Dan sieu t m h bac mdt ddi xdng chju tdi t r o n g P=10kN (hinh 2). Cac thanh 1, 2, 3, 4, 5 cd dien tich mat c3t ngang b^ng A l . thanh 6 ed dien tich mat cat ngang la A2, Cho bi&t CD=2a=2xO 5m; AB=2b=2x0.866rti.
Tim A l , A 2 de the tich Veda cac thanh la n h d nhat thoa man dieu kien ben vi chuyen vi diing tai D khdng vUot qua 1,3mm. D^n duoc lam tif eCing mdt loai vat lieu c 6 [ a ] = 0 . l ( k N / m m - ) ; E = 2 0 7 ( k N / m m ' ) .
c ( \ ) S ceq(\
A \ <
Acq>
1) ) = 0 Ll , = beq
\h<' VOr
<ub
-X, b, beq, lb va ub la cac vec to;
-A va Aeq la cac ma tran;
-c(x) va ceq(x) la cac ham, -f(x) la ham can t i m cue tieu,
-f(x), c(x) va ceq(x) cd the la cac ham phi tuyen.
Ham f m i n c o n c d t h e s d d u n g vdi nhieu loai cil phap Degiai bai toan tdi Uu dan p h i n g lUa chon cu phap
x = fmincon(fun,xO,A,b,Aeq,beq,lb,ub)
Cu phap tren dung de xae dmh tap hop can dudi va can tren doi voi bien thiet ke x sao cho ldi giai ludn nam trong lb <= x <= ub, Thiet lap Aeq=n va beq=[] trong truong hop khdng tdn tai dang thUc
Ngoai cac chuc nang mac dmh, co the thiet lap va thay ddi cac thong so lua ehon (option) trong optimset,
Phu thudc quy mo ciia mdi bai toan ham fmincon cd cac thdng sd lua I lion kich thuoc nhu sau
't>v!30'
—^ ^•
fiinh2Sod6vidijdJnp))arg H a m m u c t i ^ u - V = 5(KI0A, + 1732A, -^ \
r - ^
... 1
D i 1732
3 0 ' J ^ '
Oieu kien rang bude: Tren eO sd ly thuyet tat 3.2 thiet lap eac diSu kien rang budc g(x) theo phuong phap iuc va phan t d hUu han, dUoc trinh bay chl tiet trong 12).
Diing ham fmincon trong Matlab viet hai chuong trinh giai bai toan tdi Uu dudi day
Chuong trinh giai bdi todn toi Uu bdng phuang phdp lUc function ToiUuPPL
options = optimset ( f m i n c o n ) ; options = optimset (options,'LaigeScar,'ofr);
x O - [ 1 , 1 ] ; A - [ | ; b = [ ] ; A e q = [];beq = [ ] ; i b = [ ] ; u b = [ ] ;
d i s p ( V a l u e o f x i s )
[x,fval] ^ fmincon(@f,xO,A,b,Aeq,beq,lb,ub,@g) dispCValue mm of funtion is:')
mmf = fval function [f,G]=f(x) f=5000*x(1)+1732"x(2);
G = [ ] , function [c,ceq] = g(x)
c ( l ) = ( 2 5 98Tx(l)+20-x(2))/(x(1)-(5-l962'x(1) +5-x(2)))-0 1;
c(2)=-(2S98l"x(l)+20"x(2))/(x(l)"(5-1962"x(1) +5'x(2)))-0 1,
c{3) =-((25 981 "xd )+20-x(2))/[5 1962-x(1) -i-5"x(2))-10)/x[1)-0.1;
c(4)=-((25 981-x(l)+20-x(2))/{5l962-x(1) +5*x(2))-10)/x(l)-0 1,
e(5) =-(25.981'x(1)+20'x(2))/(x(l)*(5.1962-x(1) +5'x(2)))-0.1,
c(6)=((l 732r(25,98rx(1)-i-20-x(2)))/(5 1962'-x(1) +5*x(2))-8 6603)/x(2)-0,1;
c(7)=g6 618/x(1)+62.755/x(2)-l 0*(9.6618/x(1) +12,551/x(2))'(25 981 •x(1)+20-x(2)))
/(5.1962*x(l)+5*x(2))-1.3;
c(8)=-x{l); .. ^ ^ j . "r c(9)=-x(2);
c e q = n ; KetquS:
» ToiUuPPL Value of X is:
X= 50 '1.39B8e-08 hral = 2.56+05
Value min of funtion is: m i n f = 2 ^ e + 0 5
Chuong trinh giai bai toan tdi uu bang phuong ph6p phSn tCr hull han
function ToiUuPTHH options = optimset {'fmincon');
options = optimset {options.'LargeScal'/off');
xO=[l,1];A=[];b=[];Aeq=[];beq=[];[b-[];ub=[];
disp(Valueofxls:')
[x,lval] = f m i n c o n ( @ f ^ , A , b ^ e q ^ q , l b , u b , @ g ) dispCValue min of ftjntion is:') m i n f = f v a l
%Objective Funtion function [f,G] = f{x) f = 5 0 0 0 ' x ( l ) + 1 7 3 2 ' x ( 2 ) ; G = l ] ;
%Boundary Conditions function [c^eq] = g(x]
c(l)=(9.0175*(8.3167e32'x(1)+7.6828e32'x(2))) /(x(1)'(1.242e32'x(1)+1.1952e32*x{2)))-13;
C(2)=1.553e32/(1.242e32"x{l)+1.195e32*x(2))
^0.9334*(8.317e32*x(l )+7.683e32*x(2))) /(X{l)"{1.242e32*'x(l)+1.195e32*x(2)))-0.1;
c(3)=l .553e32/(1.242e32*x(1)+ 1.195e32*x(2)) -(0.9334»(8.317e32*x(l)+7.683e32'x(2)))/(x(l)
•(1.242e32*x[1) + 1.195e32*x(2)))-0 1;
c(4)=1.553e32/(1.242e32*x(1 ) + l .195e32*x(2)) +(7.2*(6.469e31 "x{l )+6.64e31 *x(2))) /(x(1 )*(1.242e32*x(1 ) + l .195e32»x(2)))-0.1;
C(5)=1.553e32/(1.242e32"x(l)+l-195e32*x(2)) +(7.2*(6.469e31 -xil )+6.64e31 *x(2))}
/(x(1)*{1.242e32*x(1) + 1.195e32^{2)))-0.1;
c(6)=(14.4*{6.469e31*x{l)+6.64e3rx(2)))/(x(1)
•(1,242e32'x(1 ) + l .195e32*x{2)))-(1.867
•{8317e32-x(1)+7.683e32*x(2)))/(x(1)
•(1.242e32*x(1) + 1.19Se32*x{2)))-0.1;
C(7)=2.07e32/{1.242e32»x(1)+1.195e32*x[2))-0 1, c{8)=-x(l);
e(9)=-x(2);
e e q = ( ] ; Ket qud:
» T o i U u P T H H Value o f x i s : X = 50.0050 fval = 2.5003e+05
Value min of funtion Is: minf = 2 5003e+05
Ket qua tinh tdi uu dan sd dung ham fmincon gan n h u khdng cd sai I6ch gida trudng hgp t h i ^ t lap dieu kien rang budc bSng phUdng phap lUcvaphantdhCruhan, C^c ket qu3 tinh nay cung hoan toan trung khdp vdi ket qua t i n h tay (hinh 3) bSng phuong phap do thi [2]. Olem tdi uu M cd toa d d \i A,=50, Ai=0, do d d V,„in= 250.000mml
Boundary CofKJtiwTS
Hinh 3, So Ihj xac M gia tri tiet den toi uu dan piling
S d d u n g hdm fmincon thUc hien viec khao sdt giSi b^l toan t o i uu cho cac cac toai dan vdi sd n h d m tiet dien khac nhau. Cac ket qui t i n h toi Uu bang ham fmincon theo hai d u d n g Idi t h i ^ lap dieu k i f n rang buoc g ^ n n h u t r u n g khdp, vi deu nhd hdn so vdi kgt q u i t i n h bang phUcfng phdp nhan tOr Lagrange [2], dieu nay the hien su uu vigt cda t h u a t todn ldp gradient s d d u n g t r o n g chuong tr'mh.
6. Nhan x ^
T d ndi dung trinh bay tren nhan th^y, sd dung ham fmincon rat d o n gian va h i f u q u ^ trong viec giai cac bai todn tdi uu k^t cau. Cac ket qud t i n h todn chinh xdc the hien u u diem cua t h u ^ t todn lap gradient. Han che cda p h u o n g phdp d cho chi cd the dp dung ddi vdi bai t o a n c d ham muc t i ^ u , dieu kien rang budc, dao ham ci^a cac ham Id lien tuc. Trong bai todn dan cd kich thudc ldn vdi nhieu rang budc, s d d y n g phUdng phap phan t d h d u han gap phdi khd khan t r o n g v i f c t h i ^ t l e i p cdc h^m dieu kien rang bu6c.De giai quyet van de nay, cdc tdc gid da d ^ xucit m d t each gidi mdi, se dugc trinh bay t r o n g cac nghidn cdu tiep theo.
TAlUeUTHAMttHilO
l\]leX\anH\s^\i,Tinhtodnlcetcautiieolyttiuyett&uu,W3xaitbii\iiiiat\KVikitt\uii.
2006.
|2] Cao Quae Khanli, Nghien cdu cdc phuang ph^ tinh tdi uu dan phmg, Luan van t l u c si ky thuat xay dung cong trinh dan dung va cong ngitiep.Tmdng Dai hoc Kien tnjc Ha N6i, 2017.
[3] Nguyen Manh Yen, fVii/imgf)/)!^ 50 trani^ciT/iocA^rii/, NXB khoa hoc vaky t h u a t Ha Noi, 2000.
[4] JoaWm Agnarsson, Mikael Sunde, Inna Emiilova, Parallel Optimization in Matlab - ProJeU report, Uppsala Universitet, 1/2013.
[5] https://www.m athworlu.com/help/aptim/ug/fnimcan.htnil