优化设计自编习题参考答案1-1.简述优化设计问题数学模型的表达形式。答:优化问题的数学模型是实际优化设计问题的数学抽象。在明确设计变量、约束条件、目标函数之后,优化设计问题就可以表示成一般数学形式。求设计变量向量12TnxxxxL使()minfx且满足约束条件()0(1,2,)khxklL()0(1,2,)jgxjmL利用可行域概念,可将数学模型的表达进一步简练。设同时满足()0(1,2,)jgxjmL和()0(1,2,)khxklL的设计点集合为R,即R为优化问题的可行域,则优化问题的数学模型可简练地写成求x使min()xRfx符号“”表示“从属于”。在实际优化问题中,对目标函数一般有两种要求形式:目标函数极小化()minfx或目标函数极大化()maxfx。由于求()fx的极大化与求()fx的极小化等价,所以今后优化问题的数学表达一律采用目标函数极小化形式。1-2.简述优化设计问题的基本解法。(不要抄书,要归纳)答:求解优化问题可以用解析解法,也可以用数值的近似解法。解析解法就是把所研究的对象用数学方程(数学模型)描述出来,然后再用数学解析方法(如微分、变分方法等)求出有化解。但是,在很多情况下,优化设计的数学描述比较复杂,因而不便于甚至不可能用解析方法求解;另外,有时对象本身的机理无法用数学方程描述,而只能通过大量试验数据用插值或拟合方法构造一个近似函数式,再来求其优化解,并通过试验来验证;或直接以数学原理为指导,从任取一点出发通过少量试验(探索性的计算),并根据试验计算结果的比较,逐步改进而求得优化解。这种方法是属于近似的、迭代性质的数值解法。数值解法不仅可用于求复杂函数的优化解,也可以用于处理没有数学解析表达式的优化问题。因此,它是实际问题中常用的方法,很受重视。其中具体方法较多,并且目前还在发展。但是,应当指出,对于复杂问题,由于不能把所有参数都完全考虑并表达出来,只能是一个近似的最后的数学描述。由于它本来就是一种近似,那么,采用近似性质的数值方法对它们进行解算,也就谈不到对问题的精确性有什么影响了。不管是解析解法,还是数值解法,都分别具有针对无约束条件和有约束条件的具体方法。可以按照对函数倒数计算的要求,把数值方法分为需要计算函数的二阶导数、一阶导数和零阶导数(即只要计算函数值而不需计算其导数)的方法。2-1.何谓函数的梯度?梯度对优化设计有何意义?答:二元函数f(x1,x2)在x0点处的方向导数的表达式可以改写成下面的形式2cos1cos212cos21cos1xoxfxfxoxfxoxfxodf令xoTxfxfxfxfxf21]21[)0(并称它为函数f(x1,x2)在x0点处的梯度。假设2cos1cosd为D方向上的单位向量,则有dTxfxodf)0(即函数f(x1,x2)在x0点处沿某一方向d的方向导数xodf等于函数在该点处的梯度)0(xf与d方向单位向量的内积。梯度方向是函数值变化最快的方向,而梯度的模就是函数变化率的最大值。梯度与切线方向d垂直,从而推得梯度方向为等值面的法线方向。梯度)0(xf方向为函数变化率最大方向,也就是最速上升方向。负梯度-)0(xf方向为函数变化率最小方向,即最速下降方向。2-2.求二元函数2122212122),(xxxxxxf在Tx]0,0[0处函数变化率最大的方向和数值。解;由于函数变化率最大的方向就是梯度的方向,这里用单位向量p表示,函数变化率最大和数值时梯度的模)0(xf。求f(x1,x2)在x0点处的梯度方向和数值,计算如下:120122214210xxxxfxfxf2221)0(xfxfxf=55152512)0()0(xfxfp2-3.试求目标函数2221212143,xxxxxxf在点X0=[1,0]T处的最速下降方向,并求沿着该方向移动一个单位长度后新点的目标函数值。解:求目标函数的偏导数21221124,46xxxfxxxf则函数在X0=[1,0]T处的最速下降方向是462446)(012121012102121xxxxxxxxxfxfXfP这个方向上的单位向量是:13]2,3[4)6(]4,6[T22TPPe新点是132133101eXX新点的目标函数值1321394)(1Xf2-4.何谓凸集、凸函数、凸规划?(要求配图)一个点集(或区域),如果连接其中任意两点x1、x2的线段都全部包含在该集合内,就称该点集为凸集,否则为非凸集。函数f(x)为凸集定义域内的函数,若对任何的01及凸集域内的任意两点x1、x2,存在如下不等式:称f(x)是定义在图集上的一个凸函数。对于约束优化问题min()s.t.()0(1,2,,)jfxgxjm若()j=jfxgx、()1,2,...,m都是凸函数,则称此问题为凸规划。3-1.简述一维搜索区间消去法原理。(要配图)答:搜索区间(a,b)确定之后,采用区间逐步缩短搜索区间,从而找到极小点的数值近似解。假设搜索区间(a,b)内任取两点a1,b1,a1《b1,并计算函数值f(a1),f(b1)。将有下列三种可能情形;1)f(a1)《f(b1)由于函数为单谷,所以极小点必在区间(a,b1)内2)f(a1)》f(b1),同理,极小点应在区间(a1,b)内3)f(a1)=f(b1),这是极小点应在(a1,b1)内121211fxxfxx3-2.简述黄金分割法中0.618的来由,搜索过程及程序框图。黄金分割法适用于,ab区间上的任何单谷函数求极小值问题。对函数除要求“单谷”外不作其他要求,甚至可以不连续。因此,这种方法的适应面相当广。黄金分割法也是建立在区间消去法原理基础上的试探方法,即在搜索区间,ab内适当插入两点1、2,并计算其函数值。1、2将区间分成三段。应用函数的单谷性质,通过函数值大小的比较,删去其中一段,使搜索区间得以缩短。然后再在保留下来的区间上作同样的处置,如此迭代下去,使搜索区间无限缩小,从而得到极小点的数值近似解。黄金分割法要求插入点1、2的位置相对于区间,ab两端点具有对称性,即1()bba2()aba其中,为待定常数。图a除对称要求外,黄金分割法还要求在保留下来的区间内再插入一点所形成的区间新三段,与原来区间的三段具有相同的比例分布。设原区间,ab长度为1,如图a所示,保留下来的区间2,a长度为,区间缩短率为。为了保持相同的比例分布,新插入点3应在(1)位置上,1在原区间的1位置应相当于在保留区间的2位置。故有21210取方程正数解,得510.6182若保留下来的区间为1,b,根据插入点的对称性,也能推得同样的值。所谓“黄金分割”是指将一线段分成两段的方法,使整段长与较长段的长度比值等于较长段与较短段长度的比值,即1::(1)同样算得0.618。可见黄金分割法能使相邻两次搜索区间都具有相同的缩短率0.618,所以黄金分割法又被称作0.618法。图b黄金分割法的搜索过程是:(1)给出初始搜索区间,ab及收敛精度,将赋以0.618。(2)按坐标点计算公式1()bba、2()aba计算1和2,并计算其对应的函数值1()f,2()f。(3)根据区间消去法原理缩短搜索区间。为了能用原来的坐标点计算公式,需进行区间名称的代换,并在保留区间中计算一个新的试验点及其函数值。(4)检查区间是否缩短到足够小和函数值收敛到足够近,如果条件不满足则返回到步骤(2)。(5)如果条件满足,则取最后两试验点的平均值作为极小点的数值近似解。(6)黄金分割法的程序框图如图b所示。3-3.对函数2)(2f,当给定搜索区间55时,写出用黄金分割法求极小点的前三次搜索过程。(要列表)解;此时的a=-5,b=5。首先插入两点a1和a2。可得a1=b-)(ab=-1.18,a2=a+)(ab=1.18再计算相应插入点的函数值,得y1=f(a1)=-0.9676,y2=f(a2)=3.7524因为y2y1,所以消去区间[a2,b],则新的搜索区间[a,b]的端点a=-5不变,而端点b=a2=1.18第一次迭代;此时插入点a1=b-)(ab=-2.639,a2=-1.181。相应插入点的函数值y1=f(a1)=1.686,y2=f(a2)=-0.967,由于y1y2,故消去区间[a,a1],新的搜索区间为[-2.639,1.18],如此继续迭代下去列出前三次迭代结果黄金分割法的搜索过程迭代序号aa1a2bY1比较Y20-5-1.181.185-0.96763.75241-5-2.639-1.1811.181.686-0.9672-2.639-1.18-0.2791.18-0.9676-0.483-2.639-1.737-1.181-0.279-0.457-0.4823-4.使用二次插值法求f(x)=sin(x)在区间[2,6]的极小点,写出计算步骤和迭代公式,给定初始点x1=2,x2=4,x3=6,ε=10-4。解:1234x1244.554574.55457x244.554574.736564.72125x36664.73656y10.909297-0.756802-0.987572-0.987572y2-0.756802-0.987572-0.999708-0.999961y3-0.279415-0.279415-0.279415-0.999708xp4.554574.736564.721254.71236yp-0.987572-0.999708-0.999961-1迭代次数K=4,极小点为4.71236,最小值为-113131xxyyc,12122xxyyc,32123xxccc)(213131ccxxxp收敛的条件:22yyyp4-1.简述无约束优化方法中梯度法、共轭梯度法、鲍威尔法的主要区别。答:梯度法是以负梯度方向作为搜索方向,使函数值下降最快,相邻两个迭代点上的函数相互垂直即是相邻两个搜索方向相互垂直。这就是说在梯度法中,迭代点向函数极小点靠近的过程,走的是曲折的路线。这一次的搜索方向与前一次的搜索过程互相垂直,形成“之”字形的锯齿现象。从直观上可以看到,在远离极小点的位置,每次迭代可使函数值有较多的下降。可是在接近极小点的位置,由于锯齿现象使每次迭代行进的距离缩短,因而收敛速度减慢。这种情况似乎与“最速下降”的名称矛盾,其实不然,这是因为梯度是函数的局部性质。从局部上看,在一点附近函数的下降是最快的,但从整体上看则走了许多弯路,因此函数的下降并不算快。共轭梯度法是共轭方向法中的一种,因为在该方法中每一个共轭的量都是依赖于迭代点处的负梯度而构造出来的,所以称作共轭梯度法。该方法的第一个搜索方向取作负梯度方向,这就是最速下降法。其余各步的搜索方向是将负梯度偏转一个角度,也就是对负梯度进行修正。所以共轭梯度法实质上是对最速下降法进行的一种改进,故它又被称作旋转梯度法。鲍威尔法是直接利用函数值来构造共轭方向的一种共轭方向法,这种方法是在研究其有正定矩阵G的二次函数1()2TTfxxGxbxc的极小化问题时形成的。其基本思想是在不用导数的前提下,在迭代中逐次构造G的共轭方向。在该算法中,每一轮迭代都用连结始点和终点所产生出的搜索方向去替换原向量组中的