欢迎来到天天文库
浏览记录
ID:40845400
大小:88.50 KB
页数:6页
时间:2019-08-08
《无约束多维优化坐标轮换法vb编程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、坐标轮换法程序框图Vb运行界面Vb编程程序PrivateSubCommand1_Click()Dims110AsDoubleDims100AsDoubleDims200AsDoubleDims210AsDoubleDimx100(10000000)AsDoubleDimx110(10000000)AsDoubleDimx200(10000000)AsDoubleDimx210(10000000)AsDoubleDimαα1AsDoubleDimαα2AsDoubleDimkAsLongDima1#,a2#,a3#,a4#,a5#,a6#Dimh#,e
2、1#,e#Dimα0#,α1#,α2#,α3#,a#,b#Dimxx1#,xx2#,yy1#,yy2#,yy3#Dimf2#,f1#,fxx#α0=Val(Text10.Text)h=Val(Text11.Text)e1=Val(Text12.Text)x100(0)=Val(Text7.Text)x110(0)=Val(Text8.Text)a1=Val(Text1.Text):a2=Val(Text2.Text):a3=Val(Text3.Text):a4=Val(Text4.Text):a5=Val(Text5.Text):a6=Val(Tex
3、t6.Text)e=Val(Text9.Text)k=0m1:s100=1:s110=0'一维搜索求最优解α1=α0xx1=x100(k)+s100*α1:xx2=x110(k)+s110*α1:yy1=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6α2=α0+hxx1=x100(k)+s100*α2:xx2=x110(k)+s110*α2:yy2=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6Ifyy1>yy2Thenh=2*hElseh=-0.25*hα3=α
4、1α1=α2α2=α3yy3=yy1yy1=yy2yy2=yy3EndIfα3=α0+hxx1=x100(k)+s100*α3:xx2=x110(k)+s110*α3:yy3=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6DoWhileyy2>yy3h=2*hα1=α2yy1=yy2α2=α3yy2=yy3α3=α0+hxx1=x100(k)+s100*α3:xx2=x110(k)+s110*α3:yy3=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6LoopIf
5、h>0Thena=α1ya=yy1b=α3yb=yy3Elsea=α3b=α1ya=yy3yb=yy1EndIfα1=a+0.382*(b-a)α2=a+0.618*(b-a)xx1=x100(k)+s100*α1:xx2=x110(k)+s110*α1:yy1=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6xx1=x100(k)+s100*α2:xx2=x110(k)+s110*α2:yy2=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6DoWhileAbs(b
6、-a)>e1Ifyy17、*xx1+a5*xx2+a6EndIfLoopαα1=(a+b)/2x200(k)=x100(k)+s100*αα1x210(k)=x110(k)+s110*αα1s200=0:s210=1'一维搜索求最优解α1=α0xx1=x200(k)+s200*α1:xx2=x210(k)+s210*α1:yy1=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6α2=α0+hxx1=x200(k)+s200*α2:xx2=x210(k)+s210*α2:yy2=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+8、a4*xx1+a5*xx2+a6Ifyy1>yy2Thenh=2*hElseh=-0.25*hα3=α1α1
7、*xx1+a5*xx2+a6EndIfLoopαα1=(a+b)/2x200(k)=x100(k)+s100*αα1x210(k)=x110(k)+s110*αα1s200=0:s210=1'一维搜索求最优解α1=α0xx1=x200(k)+s200*α1:xx2=x210(k)+s210*α1:yy1=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+a4*xx1+a5*xx2+a6α2=α0+hxx1=x200(k)+s200*α2:xx2=x210(k)+s210*α2:yy2=a1*xx1^2+a2*xx2^2+a3*xx1*xx2+
8、a4*xx1+a5*xx2+a6Ifyy1>yy2Thenh=2*hElseh=-0.25*hα3=α1α1
此文档下载收益归作者所有