无约束优化模型数学建模实验内容1.无约束优化基本思想及基本算法.4.实验作业.3.用MATLAB求解无约束优化问题.2.MATLAB优化工具箱简介.无约束最优化问题求解无约束最优化问题的的基本思想*无约束最优化问题的基本算法返回RminnXfX其中1:RRnf标准形式:求解无约束最优化问题的基本思想求解的基本思想(以二元函数为例)1x2x12(,)fxxO1x2xO5310X1X2X)(0Xf)(1Xf)(2Xf连续可微RmaxnXfX=Rmin[]nXfX多局部极小298.0f0f298.0f唯一极小(全局极小)2212112212(,)223fxxxxxxxx搜索过程22212211min(,)100()(1)fxxxxx最优点(11)初始点(-11)1x2xf-114.00-0.790.583.39-0.530.232.60-0.180.001.500.09-0.030.980.370.110.470.590.330.200.800.630.050.950.900.0030.990.991E-40.9990.9981E-50.99970.99981E-8返回⑴给定初始点0RnX,允许误差0,令k=0;⑵计算kXf;⑶检验是否满足收敛性的判别准则:kXf,若满足,则停止迭代,得点kXX*,否则进行⑷;⑷令kkXfS,从kX出发,沿kS进行一维搜索,即求k,使得:kkkkkSXfSXf0min;⑸令kkkkSXX1,k=k+1返回⑵.无约束优化问题的基本算法最速下降法是一种最基本的算法,它在最优化方法中占有重要地位.最速下降法的优点是工作量小,存储变量较少,初始点要求不高;缺点是收敛慢,最速下降法适用于寻优过程的前期迭代或作为间插步骤,当接近极值点时,宜选用别种收敛快的算法.1.最速下降法(共轭梯度法)算法步骤:2.牛顿法算法步骤:(1)选定初始点0RnX,给定允许误差0,令k=0;(2)求kXf,12kXf.检验:若kXf,则停止迭代,*kXX令.否则,转(3);(3)令kkkXfXfS12][(牛顿方向);(4)kkkSXX1,1kk,转回(2).如果f是对称正定矩阵A的二次函数,则用牛顿法,经过一次迭代就可达到最优点,如不是二次函数,则牛顿法不能一步达到极值点,但由于这种函数在极值点附近和二次函数很近似,因此牛顿法的收敛速度还是很快的.牛顿法的收敛速度虽然较快,但要求黑塞矩阵可逆,要计算二阶导数和逆矩阵,就加大了计算机的计算量和存储量.3.拟牛顿法为克服牛顿法的缺点,同时保持较快收敛速度的优点,利用第k步和第k+1步得到的kX,1kX,)(kXf,)(1kXf,构造一个正定矩阵1kG近似代替)(2kXf,或用1kH近似代替12))((kXf,将牛顿方向改为:1kG1kS=-)(1kXf,1kS=-1kH)(1kXf从而得到下降方向.通常采用迭代法计算1kG,1kH,迭代公式为:BFGS(Boryden-Fletcher-Goldfarb-Shanno)公式TT1TT()()()()kkkkkkkkkkkkkffGxxGGGfxxGxTT1TT()()1()()kkkkkkkkkkkfHfxxHHfxfxTTT()()()kkkkkkkkxfHHfxfxDFP(Davidon-Fletcher-Powell)公式:TT1TT()()1()()kkkkkkkkkkkXGXffGGXffXTTT()()()kkkkkkkkfXGGXfXfTT1TT()()()()kkkkkkkkkkkkkXXHffHHHfXfHf计算时可置IH1(单位矩阵),对于给出的1X利用上面的公式进行递推.这种方法称为拟牛顿法.返回MATLAB优化工具箱简介1.MATLAB求解优化问题的主要函数类型模型基本函数名一元函数极小minF(x)s.t.x1