1. 首页
  2. 行业
  3. 教育
  4. 非线性规划matlab

非线性规划matlab

上传者: 2020-07-29 05:40:30上传 PDF文件 279.62KB 热度 29次
如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。一般说来,解非线性规划要比解线性规划问题困难得多。而且,也不象线性规划有单纯形法这一通用方法,非线性规划目前还没有适于各种问题的一般算法,各个方法都有自己特定的适用范围解(i)编写M文件fun1.m定义目标函数()编写文件定义非线性约束条件非线性不等式约束非线性等式约束)编写主程序文件如下:就可以求得当时,最小值求解非线性规划的基本迭代格式记()的可行域为若∈,并且则称是()的整体最优解,是的整体最优值。如果有则称是()的严柊整体最优解,是的严格整体最优值若∈,并且存在的邻域使则称是()的局部最优解,是的局部最优值。如果有则称是()的严格局部最优解,是的严格局部最优值。由于线性规划的目标函数为线性函数,可行域为凸集,因而求出的最优解就是整个可行域上的全局最优解。非线性规划却不然,有时求出的某个解虽是一部分可行域上的极值点,但却并不一定是整个可行域上的全局最优解。对于非线性规划模型,可以采用迭代方法求它的最优解。达代方法的基本思想是:从一个选定的初始点∈出发,按照某一特定的迭代规则产生一个点列使得当是有穷点列时,其最后一个点是的最优解;当是无穷点列时,它有极限点,并且其极限点是的最优解设∈是某迭代方法的第轮达代点,∈是第+轮达代点,记这甲∈并且的方向是从点向着点+的方向。式(就是求解非线性规划模型的基本迭代格式通常,我们把基本迭代格式()中的称为第轮搜索方向,为沿方向的步长,使用迭代方法求解的关键在于,如何构造每一轮的搜索方向和确定适当的步设∈,若存在δ>,使十<称向量是在点一处的下降方向设≠,若存在>,使称向量是点一处关于的可行方向。个向量,若既是函数在点处的下降方向,又是该点关于区域的可行方向,称之为函数在点一处关于的可行下降方向现在,我们给出用基本达代格式()求解的般步骤如下:选取初始点,令构造搜索方向,依照一定规划,构造在点处关于的可行下降方向作为搜索方向寻求搜索步长。以为起点沿搜索方向寻求适当的步长,使目标函数值有某种意义的下降。求出下·个达代点。按迭代格式()求出十若己满足某种终止条件,停止迭代以代替,回到步。函数、凸规划设定义在维欧氏空间中某个凸集上的函数,若对任何实数,这就要求最后区间的长度不超过δ,即据此,我们应按照预先给定的精度δ,确定使()成立的最小整数作为搜索次数,直到进行到第个探索点时停止。用上述不断缩短函数的单峰区间的办法,来求得问题()的近似解是年提出的,叫做法,具体步骤如下选取初始数据,确定单峰区间,给出拽索精度δ>,由()确定擭索次数。计算最初两个搜索点,按()计算和当进行至时这就无法借比较函数值和的大小确定最终区间,为此,取—+E其中E为仟意小的数。在和这两点中,以函数值较小者为近似极小点,相应的函数佶为近似极小值。并得最终区间由上述分析可知,斐波那契法使用对称搜索的方法,逐步缩短所考察的区间,它能以尽量少的函数求值次数,达到预定的某一缩短率例试用斐波那契法求函数的近似极小点,要求缩短后的区间不大于区间的倍程序留作习题。法若>,满足比例关系称之为黄命分割数,其值8、2个黄金分割数a和分数之间有着重要的关系现用不变的区间缩短率,代替斐波那契法每次不同的缩短率,就得到了黄金分割法(法)。这个方法可以看成是斐波那契法的近似,实现起来比较容易,效果也相当好,因而易」为人们所接受。用法求解,从第个探索点开始每增加一个探索点作一轮迭代以后,原单峰区间要缩短倍。计算个探索点的函数值可以把原区间连续缩短次,因为每次的缩短率均为∥,故最后的区间长度为这就是说,当已知缩短的相对精度为δ时,可用下式计算探索点个数:当然,也可以不预先计算探索点的数目,而在计算过程中逐次加以判断,看是否已满足了提出的精度要求。法是一和等速对称进行试探的方法,每次的探索点均取在区间长度的倍和倍处次插值法对极小化问题(),当在上连续时,可以考虑用多项式插值来进行维搜索。亡的基本思想是:在搜索区间中,不断用低次(通常不超过三次)多项式米近似目标函数,并逐步用插值多项式的极小点来逼近()的最优解。无约束板值问题的解法无约束极值问题可表述为求解问题()的迭代法大体上分为两点:一是用到函数的一阶导数或二阶导数,称为解析法。另一是仅用到函数值,称为直接法解析法梯度法(最速下降法)对基本迭代格式我们总是考虑从点出发沿哪一个方向,使目标函数卜降得最快。微积分的知识告诉我们,点的负梯度方向是从点出发使下降最快的方向。为此,称负梯度方向一V为在点处的最速下降方向按基本迭代格式(),每一轮从点出发沿最速下降方向一V作一维搜索,米建立求解无约束极值问题的方法,称之为最遮下降法。这个方法的特点是,每轮的搜索方向都是目标函数在当前点下降最快的方向。同时,用V或|V≤E作为停止条件。其具体步骤如下°选取初始数据。选取初始点,给定终止误差,令°求梯度向量。计算V若V≤E,停止迭代,输出。否则进行构造负梯度方向。取进行一维搜索。求,使得令+转例用最速下降法求解无约束非线性规划问题其中,要求选取初始点解()V编写文件,定义函数及其梯度列向量如下(i1)编写主程序文件 Zul su.m如下法考虑目标函数在点处的二次逼近式+v假定阵正定由于V正定,函数的驻点+是的极小点。为求此极小点,令即可解得对照基本迭代格式(),可知从点出发沿搜索方向并取步长≡即可得的最小点。通常,把方向叫做从点出发的方向。从一初始点廾始,每一轮从当前迭代点出发,沿方向并取步长为的求解方法,称之为法。其具体步骤如下选取初始数据。选取初始点,给定终止误差E>,令°求梯度向量。计算V≤£,停止迭代,输出。否则,进行°。°构造方向。计算V取求下一迭代点。令+=++,转例用法求解选取解:十(i)编写文件如下:(II〕编写主程序文件 example5.m如下:如果目标函数是非二次函数,一般地说,用法通过有限轮迭代并不能保证可求得其最优解。为了提高计算精度,我们在迭代时可以采用变步长计算上述问题,编写上程序文件如下:法的优点是收敛速度快;缺点是有吋不好用而需采取收进措施,此外,当维数较高时,计算一V的工作量很大变尺度法变尺度法()是近多年来发展起来的,它不仅是求解无约束极值问题非常有效的算法,而且也已被推广用来求解约束极值问题。由于它既避免了计算二阶导数矩阵及其求逆过程,又比梯度法的收敛速度快,特别是对扃维问题具有显著的优越性,因而使变尺度法获得了很高的声誉。下面我们就来简要地介绍一种变尺度法法的基本原理及其计算过程。这一方法首先由在年提出,后经和加以改进我们已经知道,牛顿的搜索方向是-V,为了不计算二阶导数矩阵Ⅴ及其逆阵,我们设法构造另一个矩阵,用它来逼近二阶导数矩阵的逆阵V,这一类方法也称拟牛顿法(卜面研究如何构造这样的近似矩阵,并将它记为。我们要求:每一步都能以现有的信息米确定下一个搜索方向;每做一次选代,目标函数值均有所下降;这些近似矩阵最后应收敛于解点处的阵的逆阵。当是二次函数时,其阵为常数阵,任两点和处的梯度之差为或对于非二次函数,仿照二次函数的情形,要求其阵的逆阵的第+次近似矩阵满足关系式
用户评论
码姐姐匿名网友 2020-07-29 05:40:31

很棒的教材,太需要了!