优化设计作业及程序
- 格式:doc
- 大小:382.00 KB
- 文档页数:9
优化设计程序及作业
1进退法求搜索区间程序:
(x1)
%定义函数为1为初始值,h为步长
(x)x^2-7*10;
f1(x1)21;
f2(x2);
f1 ; x313(x3); x121=(x1); x232(x2); x323(x3); f3 ; x121(x1); x232(x2); x323(x3); ('所求区间') 13 在命令窗口运行(0,0.1),得搜索区间[3.4,3.6] 2黄金分割法求极值 () 为搜索区间,j为精度 (x)x^2-7*10; 0.6180339887; x1(1)*(); x2*(); ()>j f1(x1); f2(x2); f1 x1(1)*(); 1; x12; x2*(); ('所求最优解') ()/2 ('所求函数') (x) 在命令窗口运行(3.4,3.6,0.01)得到 所求最优解: x =3.4798 所求函数值: y = -2.2496 黄金分割总程序 (q1) %定义黄金分割法为,x1为初始值,h为初始步长,j为初始精度(x)x^2-7*10; f1(q1)21; f2(q2); f1 ; q313(q3); q121=(q1); q232(q2); q323(q3); f3 ; q121(q1); q232(q2); q323(q3); 3; 0.6180339887; c1(1)*(); c2*(); ()>j f1(c1); f2(q2); f1 221; c1(1)*(); 1; c12; q2*(); ('所求x') ()/2 ('所求y') (x) 在命令窗口运行(0,0.1,0.01)得到 所求x: x =3.4798 所求y: y = -2.2496 3坐标轮换法求二元函数极值 () %定义坐标轮换法函数为,q为初始值,j为精度,h为初始步长(x)60-10*x(1)-4*x(2)(1)^2(2)^2(1)*x(2); p313+1; s1=[1 0]2=[0 1]; (p13)>j 1:2 1 22; %黄金分割法子程序 (x)(.*s); %进退法子程序 x1=0; x21; f2(x2)1(x1); f1 ; x313(x3); x121=(x1); x232(x2); x323(x3); f3 ; x121(x1); x232(x2); x323(x3); 13; 0.6180339887; c1(1)*()2*(); ()>0.1 f1(c1)2(c2); f1 2211(1)*(); 1122*(); ()/2; 1 p3.*s; ('极值点x:') 3 ('函数值y:') (p3) 输入初始点[0 0],精度0.05,初始步长0.05 得到 极值点x: x = 7.9854 5.9854 函数值y: y =8.0002 4外惩罚函数 () %定义外惩罚函数为,q为初始值,j为精度,r为惩罚因子,c为收缩系数,h为初始步长 (x)2*x(1)^2+2*x(2)^2-2*x(1)*x(2)-4*x(1)-6*x(2)*(-2(1)(2)(1)-5 *x(2)-5+1(1)+1(2))^2; p313+1; s1=[1 0]2=[0 1]; (p13)>j *c; 1:2 1 1131; 22; %黄金分割法子程序 (x)(.*s); %进退法 x1=0; x21; f2(x2)1(x1); f1 ; x313(x3); x121=(x1); x232(x2); x323(x3); f3 ; x121(x1); x232(x2); x323(x3); 13; 0.6180339887; %黄金分割部分 c1(1)*()2*(); ()>0.1 f1(c1)2(c2); f1 2211(1)*(); 1122*(); ()/2; 1 p2.*s; p3.*s; ('极值点x')