【话题作文】
第一篇:《无约束优化》
实验9 无约束优化
一、实验目的
1、了解无约束优化的基本算法;
2、掌握Matlab优化工具箱的基本用法; 3、掌握用Matlab求解无约束优化实际问题。
二、实验要求
能够掌握Matlab优化工具箱中fminunc,fminsearch,lsqnonlin,lsqcurvefit的基本用法,能够对控制参数进行设置,能够对不同算法进行选择和比较。
[x,fv,ef.out,grad,hess]=fminunc(@f,x0,opt,P1,P2,…) [x,fv,ef.out,]=fminsearch(@f,x0,opt,P1,P2,…)
[x,norm,res,ef,out,lam,jac]=lsqnonlin(@F,x0,v1,v2,opt,P1,P2,…) [x,norm,res,ef,out,lam,jac]=lsqcurvefit(@F,x0,t,y,opt,P1,P2,…)
fminunc为无约束优化提供了大型优化和中型优化算法.由options中的参数LargeScale控制:
LargeScale=’on’(默认值),使用大型算法 LargeScale=’off’,使用中型算法
fminunc为中型优化算法的搜索方向提供了3种算法,由options中的参数HessUpdate控制:
HessUpdate=’bfgs’(默认值),拟牛顿法的BFGS公式; HessUpdate=’dfp’,拟牛顿法的DFP公式; HessUpdate=’steepdesc’,最速下降法
fminunc为中型优化算法的步长一维搜索提供了两种算法,由options中参数LineSearchType控制:
LineSearchType=’quadcubic’(缺省值),混合的二次和三 次多项式插值;
LineSearchType=’cubicpoly’,三次多项式插{1.35812E,19}.
搜索步长的算法选择(lsqnonlin,lsqcurvefit) LevenbergMarquardt = ‘off’ (GN法)
LevenbergMarquardt = ‘on’ (LM法,缺省值)
22+2×2+4x1x2+2×2+1)ex1 例 minf(X)=(4×1{1.35812E,19}.
1、编写M-文件 fun1.m:
function f = fun1 (x){1.35812E,19}.
f = exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1);
2、输入M文件myprg3.m如下: x0 = [-1, 1];
x=fminunc('fun1',x0) y=fun1(x)
三、实验内容
1. 求下列函数的极小值点:
222
f(X)=x1+4×2+9×3-2×1+18×2
2g(X)=x1+
32
x2-2x1x2+x1-2×2 2
x2y2
2、求解min(+)对(a,b)的不同取值如(1,1)和(9,1),及不同算法(搜索方
ab
向、步长搜索、数值梯度与分析梯度等)的结果进行分析、比较。
3、有一组数据(ti,yi),i=1,2,,33, 其中ti=10(i-1),yi由下表给出。现要用这组数据拟合函数{1.35812E,19}.
f(x,t)=x1+x2e-x4t{1.35812E,19}.
+x3e-
x5t
中的参数x,初值可选为(0.5, 1.5, 1, 0.01, 0.02),用GN和LM两种方法求解。对yi作一扰动,即yi+ei,ei为(0.05, 0.05)内的随机数,观察并分析迭代收敛
安徽师范大学
数学计算机科学 学院实验报告
专业名称 实 验 室 实验课程 实验名称 姓 名 学 号 同组人员 实验日期
数学与应用数学 数学建模 无约束优化 王 强 100701134 2013-5-22