一维优化方法

最优化设计数学模型中的基本概念:

1、设计变量

在机械设计中,区别不同的设计方案,通常是以一组取值不同的参数来表示。这些参数可以是表示构件形状、大小、位置等的几何量,也可以是表示构件质量、速度、加速度、力、力矩等的物理量。在构成一项设计方案的全部参数中,可能有一部分参数根据实际情况预先确定了数值,它们在优化设计过程中始终保持不变,这样的参数称为给定参数(或叫预定参数)或设计常数。另一部分参数则是需要优选的参数,它们的数值在优化设计过程中则是需要优选的参数,它们的数值在优化计算过程中是变化的,这类参数称为设计变量,它相当于数学上的独立自变量。一个优化问题如果有n个设计变量,而每个设计变量用xi(i=1,2, ,n)表示,则可以把n个设计变量按一定的次序排列起来组成一个列阵或行阵的转置,即写成

⎡⎢x1⎤

x=⎢x⎥

2⎥=[x1,x2, ,xT

⎢⎢ ⎥n]

⎣x⎥

n⎦

我们把x定义为n维欧式空间的一个列向量,设计变量x1,x2, ,xn为向量x的n个分量。以设计变量x1,x2, ,xn为坐标轴展成的空间称为n维欧式空间,用Rn表示。该空间包含了该项设计所有可能的设计方案,且每一个设计方案就对应着设计空间上的一个设计向量或者说一个设计点x。

2、目标函数

优化设计是在多种因素下欲寻求使设计者员满意、且适宜的一组参数。“最满意”、“最适宜”是针对某具体的设计问题,人们所追求的某一特定目标而言。在机械设计中,人们总希望所设计的产品具有最好的使用性能、体积小、结构紧凑、重量最轻和最少的制造成本以及最多的经济效益,即有关性能指标和经济指标方面最好。

在优化设计中,一般将所追求的目标(最优指标)用设计变量的函数形式表达,称该函数为优化设计的目标函数。目标函数的值是评价设计方案优劣程度的标准,也可称为准则函数。建立这个函数的过程称为建立目标函数。一般的表达式为

F(x)=F(x1,x2, ,xn)

它代表着某项重要的特征,例如机器的某种性能、体积、质量、成本、误差、效率等等。

目标函数是设计变量的标量函数。优化设计的过程就是通过优选设计变量使目标函数达到最优值,最优值的数学表征为最小值minF(x)或最大值maxF(x)。按一般的规范做法,把优化问题归结为求目标函数值的最小值居多。在求解过程中,目标函数值越小,设计方案越优。对于某些追求目标函数最大值的问题,例如前述求月生产利润最大的问题或谋求设计的效率最高、寿命最长等等,可转化(8-1) (8-2)

为求目标函数负值的最小值问题,即

maxF(x)⇒min[-F(x)] (8-3) 因此,本章在后面的叙述中,一律把优化问题规范为求目标函数的最小值,表达式见式(8-2)。在优化设计中,仅根据一项准则建立的一个目标函数,称为单目标函数。如前面举例中的生产调度问题中,为了实现单月生产利润最大化而建立的目标函数即属于单目标优化设计问题。若在设计中需要同时兼顾多个设计准则,则需要建立多个目标函数,这种问题即为多目标优化问题。

在解决优化设计问题时,正确选择目标函数是非常重要的,它不仅直接影响优化设计的结果,而且对整个优化计算的繁简难易也会有一定的影响。

3、约束条件与可行域

优化设计不仅要使所选择方案的设计指标达到最佳值,同时还必须满足一些附加的设计条件,这些附加的设计条件都是对设计变量取值的限制,在优化设计中叫做设计约束或约束条件。它的表现形式有两种,一种是不等式约束,即

另一种是等式约束,即

gu(x)≤0 或 gu(x)≥0hv(x)=0u=1,2, ,m v=1,2, ,p

式中gu(x)和hv(x)分别为设计变量的函数;m和p分别表示不等式约束和等式约束的个数,而且等式约束的个数p必须小于设计变量的个数n。因为从理论上讲,存在一个等式约束就得以用它消去一个设计变量,这样便可降低优化设计问题的维数。所以,当p=n时,即可由p个方程组中解得唯一的一组x1,x2, ,xn值。这样,方案的选择就成为唯一的或确定的了。

在解决工程问题时,约束条件是优化设计获得工程可接受设计方案的重要条件。不等式约束及其有关概念,在优化设计中是相当重要的。每一个不等式约束(如g(x)≤0)都把设计空间划分成两部分,一部分是满足该不等式约束条件的,即g(x)

)>0。两部分的分界面叫做约束面,即

由g(x)=0的点集构成。在二维设计空间中约束面是一条曲线或直线,在三维以上的设计空间中则是一个曲面或超曲面。一个优化设计问题的所有不等式约束的边界将组成一个复合约束边界,如图8-3表示了一个二维问题的情况。其约束边界所包围的区域(图中阴影线内)是设计空间中满足所有不等式约束条件的部分,在这个区域中所选择的设计变量是允许采用的,我们称这个区域为设计可行域或简称为可行域,记作 D={xgu(x)≤0u=1,2, ,m}

若某项设计中除了具有m个不等式约束条件外,还应满足p个等式约束条件时,即对设计变量的选择又增加了限制。如图8-3所示,当有一个等式约束条件h(x1,x2)=0时,其可行设计方案只允许在D域内的等式函数曲线的AB段上选择。因此,在一般的情形下,优化问题的设计可行域可表示为

⎧g(x)≤0 u=1,2, ,m ⎫D=⎨u⎬ ⎩hv(x)=0 v=1,2, ,p

与此相反,除去可行域以外的设计空间称为非可行域。据此,在可行域内的任一设计点都代表了一个可接受的设计方案,这样的点叫可行设计点或内点,如图所示的x(1)点;在约束边界上的点叫极限设计点或边界点,如点x(3),此时这个边界所代表的约束叫作起作用约束。x(2)点则称为外点,即非可行点,该点为不可接受的设计方案,因为该点违反了约束条件2,即g2(x(2))>0。

二、优化计算的数值解法及收敛条件

最优化技术总体包含两个方面,首先是根据实际的生产或科技问题构造出优化的数学模型,再采取恰当的优化方法对数学模型进行求解。无论是无约束优化问题还是约束优化问题,其本质上都是求极值的数学问题。从理论上,其求解可用解析法,即微积分学和变分法中的极值理论,但由于实际中的优化数学模型多种多样,往往目标函数及约束函数都是非线性的,采用解析法求解变得非常复杂和困难,甚至在有些时候无法求解数学模型。因此,随着优化技术和电子计算机技术的不断发展,逐渐产生了以计算机程序计算为主的一种更为实用的求优方法—数值计算法,通常也称为求解非线性规划的最优化方法。

1、数值计算法的迭代过程

最优化方法是与电子计算机及计算技术的发展紧密相联系的,数值计算法的迭代过程也是依赖于计算机的运算特点而形成的。所以,计算过程完全有别于解析法的求解过程。优化方法的迭代特点是:按照某种人为规定的逻辑结构,以一定的格式反复的数值计算,寻求函数值逐次下降的设计点,直到满足规定的精度时才终止迭代计算,最后的设计点即为欲求的最优点,所得到的解是满足规定精度的近似解。

图8-9 二维优化问题的迭代过程

总体做法如图8-9所示,由选定的初始点x(0)出发,沿着某种优化方法所规定的搜寻方向s(0),以一定的步长α(0),按迭代格式产生第一个新的设计点x(1),x(1)=x(0)+α(0)s(0),且同时满足F(x(1))

x(k+1)=x(k)+α(k)s(k)

式(8-4)称为优化计算的基本迭代公式。其中的第k次搜寻方向s(k)及步长α(k)是根据x(k)点目标函数值和约束函数值等信息依据某种算法而确定的,其最终目的是使F(x(k))

F(x(1))>F(x(2))>(x(3))> >F(x(k))> 很显然,迭代点必将不断向理论最优点逼近,最后必将达到满足预定精度要求的近似最优点,记作x*。

由迭代算法的基本迭代公式可见,优化方法的主要问题乃是解决迭代方向s(k)(k=1,2, )和迭代步长α(k)(k=1,2, )的问题,由于s(k)与α(k)的确定方法及特性的不同而构成了不同的优化方法,即最优化方法。已有的各种优化方法尽管在选取方向和步长的原则上各有不同,但有一点是共同的,就是各种方法都是以保证目标函数值稳定的下降为前提,按照基本迭代公式通过计算机进行迭代计算并最终获得理论最优点的近似解。

(8-4)

2、迭代计算的终止准则

数值计算采用迭代法产生设计点的点列x(1),x(2),x(3), ,x(k),x(k+1), 是无穷的,但在解决实际问题的时候必须在适当的时候结束这种迭代计算,这就是迭代终止准则问题。

优化设计是要求出设计问题的最优解,从理论上,人们当然希望最终迭代点到达理论的极小点,或者使最终迭代点与理论极小点之间的距离足够小时即可终止迭代。但这在实际计算中是办不到的,因为对于一个待求的优化问题,其理论极小点在哪里是未知的。因此,只能通过迭代计算获得的点列所提供的各种信息来判断是否应该结束迭代计算,不同的判断依据就构成了不同的终止准则。

由于实际问题具有多样性,且迭代过程与目标函数的性质密切相关,所以很难建立一个统一的迭代终止准则,往往还需要根据实际计算的具体情况进行判断和选择。经常被采用的终止准则如下:

3、点距准则

若相邻的两个迭代点x(k)、x(k-1)之间的距离已达到充分小,即满足 x(k)-x(k-1)≤ε1

式中ε(k)

1是给定的收敛精度,取x为最优点,即x(k)=x*。

4、函数下降量准则

由于最优点的很小邻域里函数值的变化很小,所以当相邻两次迭代点的函数值下下降量已达到充分小时,预示着已很接近最优点了 当F(x(k))

当F(x(k))≥1时,采用函数相对下降量准则 F(x(k))-F(x(k-1))

F(x(k))≤ε2

其中εk)

1,ε2为收敛精度,取x(k)为最优点,即x(=x*。

5、梯度准则

按函数极值理论,在极值点处函数的梯度为零。当目标函数在x(k)点处的梯度的模已达到充分小时,即 ∇F(x(k))≤ε1

可以认为x*≈x(k),ε1是收敛精度。这一准则对凸集凸函数是完全正确的,若为非凸函数,有可能会误把鞍点当作最优点。

上述准则是无约束优化问题迭代收敛准则。由于约束优化问题与无约束优化(8-5) (8-6) (8-7) (8-8)

问题的最优解的条件不同,所以迭代终止准则也不一样,但以上各终止准则对约束优化问题的求解仍然有着重要的意义。

一维优化方法

求解以为目标函数f(x)最优解的过程,称为一维优化,所使用的方法称为一维优化方法。一维优化方法是优化方法中最简单、最基本的优化方法。他不仅用来解决一维目标函数的求最优问题,而且常用于多维优化问题在既定方向上寻求最优步长的一维搜索。

对于任一次迭代计算,总是希望从已知的点x(k)出发,沿给定的方向s(k)搜索该方向上到目标函数值最小的点x(k+1),即求步长因子α(k)的最优值,使

f(x(k+1))=minf(x(k)+α(k)s(k)) α

这种在确定的搜索方向s(k)上求步长因子α(k)的最优取值使得目标函数在该方向上达到极小值的过程称为一维搜索优化计算方法或称为单变量优化计算方法。

一维搜索最优化方法一般需要分两步进行:第一步是在s(k)方向上确定使得目标函数值取得最小值的步长因子α(k)所在的区间;第二步是求出该区间内的最优步长因子α(k)。

1、搜索区间的确定

所谓搜索区间就是沿给定的搜索方向s(k)上找出一个单峰区间[α1,α2],即在该区间内目标函数值的变化只有一个峰值,如图8-10所示。

单峰区间

对于简单的优化问题,一般其搜索区间可以根据实际情况给定。但对于多维优化问题每次一维搜索之前都人为的给定搜索区间是不现实的,因此必须建立一定的方法,使计算机在优化的过程中自动地确定搜索区间。

搜索区间的确定主要有进退法与外推法,本节介绍确定搜索区间的进退法。 为了使该算法的叙述更加简洁明了,这里直接以一维函数为例。设函数为y=f(x),给定初始点x1,选定恰当的步长为h0,求其最小点x*。

进退法确定搜索区间

用进退法对搜索区间确定主要分为三步:

1、试探搜索

由于最小点x*的位置是未知的,所以首先要试探最小点x*位于初始点x1的左方还是右方,然后再确定包含x*在内的搜索区间[a,b]。

x2=x1+h0,由初始点x1沿Ox轴正向到x2点,分别计算两点的函数值y1=f(x1),

y2=f(x2)并 比较y1和y2值的大小,可分为两种情况,如图所示:

(1) 若y2

(2) 若y2>y1,则极小点必在x1点左方,应反向,即作后退搜索,以图8-11

中虚线所示。

2、前进搜索

由探索后的x2点,沿Ox正向继续前进搜索,见图。令h=2h0,取得前进方向

的第三个点x3=x2+h,对应的函数值y3=f(x3),比较后两个点的函数值,有如下

两种情况:

(1)若y2y2

曲线呈高—低—高的形态,如图中虚线II所示。此时函数f(x)在[x1,x3]区间内必有极小点,于是令a=x1,b=x3从而构成了搜索区间[a,b]。

(2)若y2>y3,如图中实线I所示,则应该继续向前搜索,令

x1=x2,y1=y2,x2=x3,y2=y3,再将步长倍增,即h=2h,构成新点并计算其函数值x3=x2+h,y3=x3。比较y2和y3的值,若有y2>y3则转(2),直到出现y2

y3成立,

转(1),确定搜索区间。

3、后退搜索

此时,需沿Ox负方向搜索,因此令h0=-h0,并将x1和x2点的位置调换,即

x3=x1,y3=y1

x1=x2,y1=y2

x2=x3,y2=y3

进行这样的处理以后,后面的步骤和前进搜索的处理完全相同,只是最后确定搜索区间时,令a=x3,b=x1。图所示为进退法确定搜索区间的程序流程图。

进退法确定搜索区间流程图

在确定了搜索区间[a,b]以后,一维优化的任务就在于采用某种方法将此区间逐步缩小,使其达到包含极小点x*在内的很小的邻域,这个邻域的大小由设计者根据实际问题而定,一般规定为一个足够小的正数ε,称ε为收敛精度或迭代精度。

主要有格点法与黄金分割法

2、格点法

格点法是一种思路极为简单的一维求优法,设函数f(x)的初始搜索区间[a , b],在此区间内取n个内等分点x 1,x 2…… x n ,并计算函数值y 1,y 2…… y n ,并比较取出最小y m=min(y i) ,i=1,2…n,并取x m左右两相邻点xm-1 ,xm+1 为新区间。判断xm+1-xm-1

若不成立则将(xm-1 ,x m+1 )作为新的初始区间继续进行。直到xm+1-xm-1

3、黄金分割法

黄金分割法也称0.618法。本方法是通过对分割点函数值进行比较来逐次缩短区间的,属于应用序列消去原理的直接探索法。

设有目标函数f(x),给定初始搜索区间[a,b],收敛精度为ε。

黄金分割法区间缩短

首先,在初始搜索区间内取两个点x1与x2,如图所示,x1

称位置,两点对应的函数值分别为y1=f(x1)和y2=f(x2),比较y1与y2的大小,有

下面两种情况:

(1)若有y1

(2)若有y1≥y2,如图所示,极小点必在区间[x1,b]内,此时可令a=x1,缩短后的新区间为[x1,b

]。

黄金分割法流程图

经过对两内点函数值的比较,区间缩短一次。缩短后的新区间是原区间的一部分,即舍去阴影线部分,留下其左面或右面部分,其间保留着原两内点x1与x2当中的一个,则新的区间中只有一个内点。为了进行下一次的缩短区间,则在新区间中再以对称原则增补一个内点,重复上述函数值的比较,如此反复分割,使区间逐次地加以缩短。

黄金分割法内分点选取的原则是对称的选取,并采取每次区间缩短率都是相等的。按以上原则,其区间缩短率应该为λ=0.618,即其内分点的取点规则为:

x1=a+0.382(b-a)

x2=a+0.618(b-a)

用黄金分割法进行一维优化搜索,当满足迭代精度时即可停止计算,取最终收缩区间的中点为近似最优点,最优解为

⎧x*=0.5(a(k)+b(k)) ⎨f*=f(x*) ⎩

图所示为黄金分割法的程序流程图。

最优化设计数学模型中的基本概念:

1、设计变量

在机械设计中,区别不同的设计方案,通常是以一组取值不同的参数来表示。这些参数可以是表示构件形状、大小、位置等的几何量,也可以是表示构件质量、速度、加速度、力、力矩等的物理量。在构成一项设计方案的全部参数中,可能有一部分参数根据实际情况预先确定了数值,它们在优化设计过程中始终保持不变,这样的参数称为给定参数(或叫预定参数)或设计常数。另一部分参数则是需要优选的参数,它们的数值在优化设计过程中则是需要优选的参数,它们的数值在优化计算过程中是变化的,这类参数称为设计变量,它相当于数学上的独立自变量。一个优化问题如果有n个设计变量,而每个设计变量用xi(i=1,2, ,n)表示,则可以把n个设计变量按一定的次序排列起来组成一个列阵或行阵的转置,即写成

⎡⎢x1⎤

x=⎢x⎥

2⎥=[x1,x2, ,xT

⎢⎢ ⎥n]

⎣x⎥

n⎦

我们把x定义为n维欧式空间的一个列向量,设计变量x1,x2, ,xn为向量x的n个分量。以设计变量x1,x2, ,xn为坐标轴展成的空间称为n维欧式空间,用Rn表示。该空间包含了该项设计所有可能的设计方案,且每一个设计方案就对应着设计空间上的一个设计向量或者说一个设计点x。

2、目标函数

优化设计是在多种因素下欲寻求使设计者员满意、且适宜的一组参数。“最满意”、“最适宜”是针对某具体的设计问题,人们所追求的某一特定目标而言。在机械设计中,人们总希望所设计的产品具有最好的使用性能、体积小、结构紧凑、重量最轻和最少的制造成本以及最多的经济效益,即有关性能指标和经济指标方面最好。

在优化设计中,一般将所追求的目标(最优指标)用设计变量的函数形式表达,称该函数为优化设计的目标函数。目标函数的值是评价设计方案优劣程度的标准,也可称为准则函数。建立这个函数的过程称为建立目标函数。一般的表达式为

F(x)=F(x1,x2, ,xn)

它代表着某项重要的特征,例如机器的某种性能、体积、质量、成本、误差、效率等等。

目标函数是设计变量的标量函数。优化设计的过程就是通过优选设计变量使目标函数达到最优值,最优值的数学表征为最小值minF(x)或最大值maxF(x)。按一般的规范做法,把优化问题归结为求目标函数值的最小值居多。在求解过程中,目标函数值越小,设计方案越优。对于某些追求目标函数最大值的问题,例如前述求月生产利润最大的问题或谋求设计的效率最高、寿命最长等等,可转化(8-1) (8-2)

为求目标函数负值的最小值问题,即

maxF(x)⇒min[-F(x)] (8-3) 因此,本章在后面的叙述中,一律把优化问题规范为求目标函数的最小值,表达式见式(8-2)。在优化设计中,仅根据一项准则建立的一个目标函数,称为单目标函数。如前面举例中的生产调度问题中,为了实现单月生产利润最大化而建立的目标函数即属于单目标优化设计问题。若在设计中需要同时兼顾多个设计准则,则需要建立多个目标函数,这种问题即为多目标优化问题。

在解决优化设计问题时,正确选择目标函数是非常重要的,它不仅直接影响优化设计的结果,而且对整个优化计算的繁简难易也会有一定的影响。

3、约束条件与可行域

优化设计不仅要使所选择方案的设计指标达到最佳值,同时还必须满足一些附加的设计条件,这些附加的设计条件都是对设计变量取值的限制,在优化设计中叫做设计约束或约束条件。它的表现形式有两种,一种是不等式约束,即

另一种是等式约束,即

gu(x)≤0 或 gu(x)≥0hv(x)=0u=1,2, ,m v=1,2, ,p

式中gu(x)和hv(x)分别为设计变量的函数;m和p分别表示不等式约束和等式约束的个数,而且等式约束的个数p必须小于设计变量的个数n。因为从理论上讲,存在一个等式约束就得以用它消去一个设计变量,这样便可降低优化设计问题的维数。所以,当p=n时,即可由p个方程组中解得唯一的一组x1,x2, ,xn值。这样,方案的选择就成为唯一的或确定的了。

在解决工程问题时,约束条件是优化设计获得工程可接受设计方案的重要条件。不等式约束及其有关概念,在优化设计中是相当重要的。每一个不等式约束(如g(x)≤0)都把设计空间划分成两部分,一部分是满足该不等式约束条件的,即g(x)

)>0。两部分的分界面叫做约束面,即

由g(x)=0的点集构成。在二维设计空间中约束面是一条曲线或直线,在三维以上的设计空间中则是一个曲面或超曲面。一个优化设计问题的所有不等式约束的边界将组成一个复合约束边界,如图8-3表示了一个二维问题的情况。其约束边界所包围的区域(图中阴影线内)是设计空间中满足所有不等式约束条件的部分,在这个区域中所选择的设计变量是允许采用的,我们称这个区域为设计可行域或简称为可行域,记作 D={xgu(x)≤0u=1,2, ,m}

若某项设计中除了具有m个不等式约束条件外,还应满足p个等式约束条件时,即对设计变量的选择又增加了限制。如图8-3所示,当有一个等式约束条件h(x1,x2)=0时,其可行设计方案只允许在D域内的等式函数曲线的AB段上选择。因此,在一般的情形下,优化问题的设计可行域可表示为

⎧g(x)≤0 u=1,2, ,m ⎫D=⎨u⎬ ⎩hv(x)=0 v=1,2, ,p

与此相反,除去可行域以外的设计空间称为非可行域。据此,在可行域内的任一设计点都代表了一个可接受的设计方案,这样的点叫可行设计点或内点,如图所示的x(1)点;在约束边界上的点叫极限设计点或边界点,如点x(3),此时这个边界所代表的约束叫作起作用约束。x(2)点则称为外点,即非可行点,该点为不可接受的设计方案,因为该点违反了约束条件2,即g2(x(2))>0。

二、优化计算的数值解法及收敛条件

最优化技术总体包含两个方面,首先是根据实际的生产或科技问题构造出优化的数学模型,再采取恰当的优化方法对数学模型进行求解。无论是无约束优化问题还是约束优化问题,其本质上都是求极值的数学问题。从理论上,其求解可用解析法,即微积分学和变分法中的极值理论,但由于实际中的优化数学模型多种多样,往往目标函数及约束函数都是非线性的,采用解析法求解变得非常复杂和困难,甚至在有些时候无法求解数学模型。因此,随着优化技术和电子计算机技术的不断发展,逐渐产生了以计算机程序计算为主的一种更为实用的求优方法—数值计算法,通常也称为求解非线性规划的最优化方法。

1、数值计算法的迭代过程

最优化方法是与电子计算机及计算技术的发展紧密相联系的,数值计算法的迭代过程也是依赖于计算机的运算特点而形成的。所以,计算过程完全有别于解析法的求解过程。优化方法的迭代特点是:按照某种人为规定的逻辑结构,以一定的格式反复的数值计算,寻求函数值逐次下降的设计点,直到满足规定的精度时才终止迭代计算,最后的设计点即为欲求的最优点,所得到的解是满足规定精度的近似解。

图8-9 二维优化问题的迭代过程

总体做法如图8-9所示,由选定的初始点x(0)出发,沿着某种优化方法所规定的搜寻方向s(0),以一定的步长α(0),按迭代格式产生第一个新的设计点x(1),x(1)=x(0)+α(0)s(0),且同时满足F(x(1))

x(k+1)=x(k)+α(k)s(k)

式(8-4)称为优化计算的基本迭代公式。其中的第k次搜寻方向s(k)及步长α(k)是根据x(k)点目标函数值和约束函数值等信息依据某种算法而确定的,其最终目的是使F(x(k))

F(x(1))>F(x(2))>(x(3))> >F(x(k))> 很显然,迭代点必将不断向理论最优点逼近,最后必将达到满足预定精度要求的近似最优点,记作x*。

由迭代算法的基本迭代公式可见,优化方法的主要问题乃是解决迭代方向s(k)(k=1,2, )和迭代步长α(k)(k=1,2, )的问题,由于s(k)与α(k)的确定方法及特性的不同而构成了不同的优化方法,即最优化方法。已有的各种优化方法尽管在选取方向和步长的原则上各有不同,但有一点是共同的,就是各种方法都是以保证目标函数值稳定的下降为前提,按照基本迭代公式通过计算机进行迭代计算并最终获得理论最优点的近似解。

(8-4)

2、迭代计算的终止准则

数值计算采用迭代法产生设计点的点列x(1),x(2),x(3), ,x(k),x(k+1), 是无穷的,但在解决实际问题的时候必须在适当的时候结束这种迭代计算,这就是迭代终止准则问题。

优化设计是要求出设计问题的最优解,从理论上,人们当然希望最终迭代点到达理论的极小点,或者使最终迭代点与理论极小点之间的距离足够小时即可终止迭代。但这在实际计算中是办不到的,因为对于一个待求的优化问题,其理论极小点在哪里是未知的。因此,只能通过迭代计算获得的点列所提供的各种信息来判断是否应该结束迭代计算,不同的判断依据就构成了不同的终止准则。

由于实际问题具有多样性,且迭代过程与目标函数的性质密切相关,所以很难建立一个统一的迭代终止准则,往往还需要根据实际计算的具体情况进行判断和选择。经常被采用的终止准则如下:

3、点距准则

若相邻的两个迭代点x(k)、x(k-1)之间的距离已达到充分小,即满足 x(k)-x(k-1)≤ε1

式中ε(k)

1是给定的收敛精度,取x为最优点,即x(k)=x*。

4、函数下降量准则

由于最优点的很小邻域里函数值的变化很小,所以当相邻两次迭代点的函数值下下降量已达到充分小时,预示着已很接近最优点了 当F(x(k))

当F(x(k))≥1时,采用函数相对下降量准则 F(x(k))-F(x(k-1))

F(x(k))≤ε2

其中εk)

1,ε2为收敛精度,取x(k)为最优点,即x(=x*。

5、梯度准则

按函数极值理论,在极值点处函数的梯度为零。当目标函数在x(k)点处的梯度的模已达到充分小时,即 ∇F(x(k))≤ε1

可以认为x*≈x(k),ε1是收敛精度。这一准则对凸集凸函数是完全正确的,若为非凸函数,有可能会误把鞍点当作最优点。

上述准则是无约束优化问题迭代收敛准则。由于约束优化问题与无约束优化(8-5) (8-6) (8-7) (8-8)

问题的最优解的条件不同,所以迭代终止准则也不一样,但以上各终止准则对约束优化问题的求解仍然有着重要的意义。

一维优化方法

求解以为目标函数f(x)最优解的过程,称为一维优化,所使用的方法称为一维优化方法。一维优化方法是优化方法中最简单、最基本的优化方法。他不仅用来解决一维目标函数的求最优问题,而且常用于多维优化问题在既定方向上寻求最优步长的一维搜索。

对于任一次迭代计算,总是希望从已知的点x(k)出发,沿给定的方向s(k)搜索该方向上到目标函数值最小的点x(k+1),即求步长因子α(k)的最优值,使

f(x(k+1))=minf(x(k)+α(k)s(k)) α

这种在确定的搜索方向s(k)上求步长因子α(k)的最优取值使得目标函数在该方向上达到极小值的过程称为一维搜索优化计算方法或称为单变量优化计算方法。

一维搜索最优化方法一般需要分两步进行:第一步是在s(k)方向上确定使得目标函数值取得最小值的步长因子α(k)所在的区间;第二步是求出该区间内的最优步长因子α(k)。

1、搜索区间的确定

所谓搜索区间就是沿给定的搜索方向s(k)上找出一个单峰区间[α1,α2],即在该区间内目标函数值的变化只有一个峰值,如图8-10所示。

单峰区间

对于简单的优化问题,一般其搜索区间可以根据实际情况给定。但对于多维优化问题每次一维搜索之前都人为的给定搜索区间是不现实的,因此必须建立一定的方法,使计算机在优化的过程中自动地确定搜索区间。

搜索区间的确定主要有进退法与外推法,本节介绍确定搜索区间的进退法。 为了使该算法的叙述更加简洁明了,这里直接以一维函数为例。设函数为y=f(x),给定初始点x1,选定恰当的步长为h0,求其最小点x*。

进退法确定搜索区间

用进退法对搜索区间确定主要分为三步:

1、试探搜索

由于最小点x*的位置是未知的,所以首先要试探最小点x*位于初始点x1的左方还是右方,然后再确定包含x*在内的搜索区间[a,b]。

x2=x1+h0,由初始点x1沿Ox轴正向到x2点,分别计算两点的函数值y1=f(x1),

y2=f(x2)并 比较y1和y2值的大小,可分为两种情况,如图所示:

(1) 若y2

(2) 若y2>y1,则极小点必在x1点左方,应反向,即作后退搜索,以图8-11

中虚线所示。

2、前进搜索

由探索后的x2点,沿Ox正向继续前进搜索,见图。令h=2h0,取得前进方向

的第三个点x3=x2+h,对应的函数值y3=f(x3),比较后两个点的函数值,有如下

两种情况:

(1)若y2y2

曲线呈高—低—高的形态,如图中虚线II所示。此时函数f(x)在[x1,x3]区间内必有极小点,于是令a=x1,b=x3从而构成了搜索区间[a,b]。

(2)若y2>y3,如图中实线I所示,则应该继续向前搜索,令

x1=x2,y1=y2,x2=x3,y2=y3,再将步长倍增,即h=2h,构成新点并计算其函数值x3=x2+h,y3=x3。比较y2和y3的值,若有y2>y3则转(2),直到出现y2

y3成立,

转(1),确定搜索区间。

3、后退搜索

此时,需沿Ox负方向搜索,因此令h0=-h0,并将x1和x2点的位置调换,即

x3=x1,y3=y1

x1=x2,y1=y2

x2=x3,y2=y3

进行这样的处理以后,后面的步骤和前进搜索的处理完全相同,只是最后确定搜索区间时,令a=x3,b=x1。图所示为进退法确定搜索区间的程序流程图。

进退法确定搜索区间流程图

在确定了搜索区间[a,b]以后,一维优化的任务就在于采用某种方法将此区间逐步缩小,使其达到包含极小点x*在内的很小的邻域,这个邻域的大小由设计者根据实际问题而定,一般规定为一个足够小的正数ε,称ε为收敛精度或迭代精度。

主要有格点法与黄金分割法

2、格点法

格点法是一种思路极为简单的一维求优法,设函数f(x)的初始搜索区间[a , b],在此区间内取n个内等分点x 1,x 2…… x n ,并计算函数值y 1,y 2…… y n ,并比较取出最小y m=min(y i) ,i=1,2…n,并取x m左右两相邻点xm-1 ,xm+1 为新区间。判断xm+1-xm-1

若不成立则将(xm-1 ,x m+1 )作为新的初始区间继续进行。直到xm+1-xm-1

3、黄金分割法

黄金分割法也称0.618法。本方法是通过对分割点函数值进行比较来逐次缩短区间的,属于应用序列消去原理的直接探索法。

设有目标函数f(x),给定初始搜索区间[a,b],收敛精度为ε。

黄金分割法区间缩短

首先,在初始搜索区间内取两个点x1与x2,如图所示,x1

称位置,两点对应的函数值分别为y1=f(x1)和y2=f(x2),比较y1与y2的大小,有

下面两种情况:

(1)若有y1

(2)若有y1≥y2,如图所示,极小点必在区间[x1,b]内,此时可令a=x1,缩短后的新区间为[x1,b

]。

黄金分割法流程图

经过对两内点函数值的比较,区间缩短一次。缩短后的新区间是原区间的一部分,即舍去阴影线部分,留下其左面或右面部分,其间保留着原两内点x1与x2当中的一个,则新的区间中只有一个内点。为了进行下一次的缩短区间,则在新区间中再以对称原则增补一个内点,重复上述函数值的比较,如此反复分割,使区间逐次地加以缩短。

黄金分割法内分点选取的原则是对称的选取,并采取每次区间缩短率都是相等的。按以上原则,其区间缩短率应该为λ=0.618,即其内分点的取点规则为:

x1=a+0.382(b-a)

x2=a+0.618(b-a)

用黄金分割法进行一维优化搜索,当满足迭代精度时即可停止计算,取最终收缩区间的中点为近似最优点,最优解为

⎧x*=0.5(a(k)+b(k)) ⎨f*=f(x*) ⎩

图所示为黄金分割法的程序流程图。


    相关文章

    [机械优化设计]-课程教学大纲

    <机械优化设计>-课程教学大纲修订 -.课程名称 机械优化设计 Mechanical Optimize Design 二.学分.学时 2学分,32学时 三.预修课程 高等数学.理论力学.数值分析.机械学.计算机科学等. 四.适用 ...

    优化设计黄金分割法实验报告

    机械优化设计黄金分割法实验报告 1.黄金分割法基本思路: 黄金分割法适用于[a,b]区间上的任何单股函数求极小值问题,对函数除要求"单谷"外不做其他要求,甚至可以不连续.因此,这种方法的适应面非常广.黄金分割法也是建立在 ...

    81010218[最优化算法]教学大纲

    <最优化算法>课程教学大纲 课程编号: 81010218 课程名称:最优化算法 英文名称:Optimization Algorithm 总 学 时:32 学 分:2 适用对象: 信息与计算科学本科专业 先修课程:数学分析(1-3 ...

    用Powell法优化设计程序与一维搜索黄金分割法组合

    用Powell 法优化设计程序与一维搜索黄金分割法组合 编程求解函数 2 f (x ) =x 12+2x 2-4x 1-2x 1x 2 的极小点x ,初始点x 0=[1,1]T ,迭代精度ε=0.001. 2 解:已知f (x ) =x 1 ...

    优化设计试卷练习及答案

    一.填空题 1.组成优化设计数学模型的三要素是 . . . 2.函数f(x2 +x2 ⎡2⎤⎡-12⎤ 1,x2)=x1 2-4x1x2+5在X0=⎢⎣4⎥点处的梯度为⎢⎥,海赛矩阵 ⎦⎣0⎦ 为⎡⎢2-4⎤⎣-42⎥⎦ 3.目标函数是一项 ...

    大口径线视场菲涅尔准直透镜设计

    大口径线视场菲涅尔准直透镜设计 李湘宁 C上海理工大学光学与电子信息工程学院,上海200093) Liydangnmg (CollegeofOpticaZandElectronicInformationEngineering,Univers ...

    麦立强AM最新综述:多孔一维纳米材料的设计.制备及电化学储能应用

    [引语] 电化学储能(energy storage)技术对便携式电子器件.交通输运以及大型储能系统都是至关重要的.而多孔一维纳米材料(porous one-dimensional nanomaterials)结合了一维纳米结构和多孔构造的优 ...

    用最速下降法求解无约束非线性规划问题

    运 筹 学 实 习 报 告 姓 名: xxxxxxxxxx 学 号: xxxxxxxxxxx 专业班级: xxxxxxxxxxxx 2 0 1 3年 7 月 0 4 日 题目:用最速下降法求解无约束非线性规划问题 摘要: 无约束最优化问题的 ...

    12411[传热学]教学大纲(热工)(1)

    <传热学>教学大纲 英文名称:Heat transfer 课程编码:12411 学分:3.5 参考学时:56 实验学时:4 上机学时: 适用专业:热能与动力工程 大纲执笔人: 梁金国 系(教研室)主任:黄善波 一.课程目标 传热 ...