第六章 非线性规划(管理运筹学,李军)
精心整理的运筹学重点6.非线性规划N L P
∂f 2 ( x) ∂f ( x ) ∂x 2 ∂x x 2,0 1 / 2 , 0 0 1 1 2 0 −1 H (X ) = = ,[ H ( X )] = 0,1/50 ∂f ( x) ∂f 2 (x ) 0,50 2 ∂ x x ∂ x 2 1 2
2 r1* (5 − x12 − x2 )=0
r2* (6 − 3 x1 − x2 ) = 0 r1* ≥ 0 r2* ≥ 0
情况 1:假设两约束完全不起作用,此时 r1* = r2* = 0 情况 2:第一个约束起作用,第二个不起作用, r2* = 0 ,检验知是一个 K-T 点。 情况 3:第二个约束起作用,第一个不起作用, r1* = 0 情况 4:两个约束完全起作用, r1* > 0, r2* > 0 2)带约束问题最优化方法-----制约函数法(外点法、内点法) 外点法:将有约束问题转成无约束极值问题,分两种情况 1. 等式约束
∂f ( x) ∂x 2 x 4 ∇f ( x ) = 1 = 1 , ∇ f ( x0 ) = ∂f ( x) 50 x2 100 ∂x 2
0 0 0 0
则 X + λ d = X − λ∇f ( X ) = [ 2 − 4 λ , 2 − 100λ ]
4.带约束问题的最优化方法
min f ( x) s.t g i ( x) ≥ 0
1)最优性条件 K-T 条件(判断最优的条件)
∇f ( x* ) − ∑ rj*∇g j ( x * ) = 0
* r* j g j(x ) = 0
r* j ≥0
2 2 min f ( x) = 2 x1 + 2 x1x2 + x2 −10x1 − 10x 2 2 例求 5 − x12 − x2 ≥0
运筹学资料5非线性规划
解无约束问题的算法: 解无约束问题的算法: 求f(X)的驻点X*,若是凸函数, f(X)的驻点 ,若是凸函数, 的驻点X* 得到最优解.否则,转下一步. 得到最优解.否则,转下一步. 在驻点X*处 计算H(x). 在驻点X*处,计算H(x). 根据H(x)来判断该驻点 是否是 根据H(x)来判断该驻点X*是否是 来判断该驻点X* 极值点. 极值点.
X ∈ E1
解:利用一阶必要条 件求出有可能成为最 优解的那些点: 优解的那些点: f(X) = 6x(x2-1)2 =0 得到: f(X 得到: x1=0,x2=1,x3= -1 进一步考虑二阶必要条件,缩小范围: 进一步考虑二阶必要条件,缩小范围: 二阶必要条件
H(X) =xxf(X) = 6(x2-1)2+24 x2(x2-1) = H(x1) =xxf(x1) = xxf(0) =6>0 = H(x2) =xxf(x2) = xxf(1) = 0 = H(x3) =xxf(x3) = xxf(-1) =0 = f(f(X)在 =0点正定 依二阶必要条件, f(X)在x1=0点正定,依二阶必要条件, 点正定, x1=0为(P1)的局部最优解.而x2=1, =0为 的局部最优解. =1, x3= -1满足二阶必要条件和一阶必要条 但它们显然都不是最优解. 件,但它们显然都不是最优解.
例6-3 Min f(X)= 2x12+5x22+x32+ 2x2x3 2x + 2x1x3 - 6x2+3 X ∈ E3 f(X 解:f(X) = (4x1+ 2x3, 10x2+ 2x3 – 6, 2x1+ 2x2 + 2x3 )=0 驻点x*=(1,1,驻点x*=(1,1,-2)
运筹学中的非线性规划问题-教案
教案运筹学中的非线性规划问题-教案一、引言1.1非线性规划的基本概念1.1.1定义:非线性规划是运筹学的一个分支,研究在一组约束条件下,寻找某个非线性函数的最优解。
1.1.2应用领域:广泛应用于经济学、工程学、管理学等,如资源分配、生产计划、投资组合等。
1.1.3发展历程:从20世纪40年代开始发展,经历了从理论到应用的转变,现在已成为解决实际问题的有效工具。
1.1.4教学目标:使学生理解非线性规划的基本理论和方法,能够解决简单的非线性规划问题。
1.2非线性规划的重要性1.2.1解决实际问题:非线性规划能够处理现实中存在的非线性关系,更贴近实际问题的本质。
1.2.2提高决策效率:通过优化算法,非线性规划可以在较短的时间内找到最优解,提高决策效率。
1.2.3促进学科交叉:非线性规划涉及到数学、计算机科学、经济学等多个学科,促进了学科之间的交叉和融合。
1.2.4教学目标:使学生认识到非线性规划在实际应用中的重要性,激发学生的学习兴趣。
1.3教学方法和手段1.3.1理论教学:通过讲解非线性规划的基本理论和方法,使学生掌握非线性规划的基本概念和解题思路。
1.3.2实践教学:通过案例分析、上机实验等方式,让学生动手解决实际问题,提高学生的实践能力。
1.3.3讨论式教学:鼓励学生提问、发表观点,培养学生的批判性思维和创新能力。
1.3.4教学目标:通过多种教学方法和手段,使学生全面掌握非线性规划的理论和实践,提高学生的综合素质。
二、知识点讲解2.1非线性规划的基本理论2.1.1最优性条件:介绍非线性规划的最优性条件,如一阶必要条件、二阶必要条件等。
2.1.2凸函数和凸集:讲解凸函数和凸集的定义及其在非线性规划中的应用。
2.1.3拉格朗日乘子法:介绍拉格朗日乘子法的原理和步骤,以及其在解决约束非线性规划问题中的应用。
2.1.4教学目标:使学生掌握非线性规划的基本理论,为后续的学习打下坚实的基础。
2.2非线性规划的求解方法2.2.1梯度法:讲解梯度法的原理和步骤,以及其在求解无约束非线性规划问题中的应用。
第六章 非线性规划
第六章 非线性规划由前几章知道,线性规划的目标函数和约束条件都是其自变量的线性函数,如果目标函数或约束条件中包含有自变量的非线性函数,则这样的规划问题就属于非线性规划。
第一节 基本概念一、 非线性规划的数学模型非线性规划数学模型的一般形式是⎪⎩⎪⎨⎧=≥==),,2,1(0)(),,2,1(0)()(min l j x g m i x h x f ji (6.1)其中,X=(n χχχ,,,21 )T 是n 维欧氏空间E n 中的点(向量),目标函数)(X f 和约束函数)()(X j X i g h 、为X 的实函数。
有时,也将非线性规划的数学模型写成 ⎩⎨⎧=≥),,2,1(0)()(min l j X g X f j (6.2)即约束条件中不出现等式,如果有某一约束条件为等式0)(=X g j ,则可用如下两个不等式约束替代它: ⎩⎨⎧≥-≥0)(0)(X g X g jj模型(6.2)也常表示成另一种形式:{}⎩⎨⎧=≥=⊂∈),,2,1(,0)(|),(min l j X g X R E R X X f j n (6.3)上式中R 为问题的可行域。
若某个约束条件氏“≤”不等式的形式,只需用“-1”乘这个约束的两端,即可将其变成“≥”的形式。
此外,由于[])(m in )(m ax x f X f --=,且这两种情况下求出的最优解相同(如有最优解存在),故当需使目标函数极大化时,只需求其负函数极小化即可。
二、二维问题的图解当只有两个自变量时,求解非线性规划也可像对线性规划那样借助于图解法。
考虑非线性规划问题⎪⎪⎪⎩⎪⎪⎪⎨⎧≥≥≥-+=-+-+-=000505)1()2()(min 212122212221x x x x x x x x x X f (6.4)如对线性规划所作的那样,在21Ox x 坐标平面画出目标函数的等值线,它是以点(2.1)为圆心的同心圆,再根据约束条件画出可行域,它是抛物线段ABCD (图6-1)。
第6讲 非线性规划
1 gi X
其中称r lng i X 或 r
i 1 i 1
m
m
1 为障碍项,r为障碍因子 gi X
X D
这样问题()就转化为求一系列极 1 值问题: k min I X , rk 得 X (rk) 0
10
内点法的迭代步骤
(1) 给定允许误差 0 ,取r1 0,0
k1
5) 判断精度: j 1,, n , 若 则点 X 为近似最优解;
k j
否则,令 k 1 k j 1,, n ,k=k+1,返回步骤(2). j j
14 返回
1、二次规划
标准型为: Min Z= 1 XTHX+cTX
2
s.t. AX<=b
m k
m
返回(3) .
11
近似规划法
近似规划法的基本思想:将问题(3)中的目标函数 f X
和约束条件 g i X 0 (i 1,..., m); h j X 0 ( j 1,, l )
近似为线性函数,并对变量的取值范围加以限制,从
而得到一个近似线性规划问题,再用单纯形法求解之,
i 1 j 1
(2)
将问题( )转化为无约束问题: minn T X , M 1
X E
(3)
其中T(X,M)称为罚函数,M称为罚因子,带M的项称为罚项,这 里的罚函数只对不满足约束条件的点实行惩罚:当 D 时,满 X 足各 i X 0, hi X 0 ,故罚项=0,不受惩罚.当 D 时, g X 必有 0或hi X 0 的约束条件,故罚项>0,要受惩罚. gi X
管理运筹学判断题背诵讲义
管理运筹学判断题背诵讲义第一章 线性规划与单纯形表a)图解法同单纯形法虽然求解的形式不同,但从几何上理解,两者是一致的; b) 线性规划模型中增加一个约束条件,可行域的范围般将缩小,减少一个约束条件,可行域的范围一般将扩大;c) 线性规划问题的每一个基解对应可行域的一个顶点; d)如线性规划问题存在可行域,则可行域定包含坐标的原点;e)对取值无约束的变量j x ,通常令'''j j j x x x =-其中'j x ≥0,''j x ≥0,在用单纯形法求得的最优解中有可能同时出现'j x >0,''j x >0;f)用单纯形法求解标准型的线性规划问题时,与j σ>0对应的变量都可以被选作换人变量;g)单纯形法计算中,如不按最小比值原则选取换出变量,则在下一个解中至少有一个基变量的值为负;h) 单纯形法计算中,选取最大正检验数k σ对应的变量k x 作为换入变量,将使目标函数值得到最快的增长;i)一旦一个人工变量在迭代中变为非基变量后,则该变量及相应列的数字可以从 单纯形表中删除,而不影响计算结果;j)线性规划问题的任-可行解都可以用全部基可行解的线性组合表示;k)若X 1,X 2分别是某一线性规划问题的最优解则X=1λX 1 +2λX 2也是该线性规划问题的最优解,其中1λ,2λ可以为任意正的实数;1)线性规划用两阶段法求解时,第一阶段的目标函数通常写为 minz=ai ix ∑(ai x 为人工变量),但也可写为minz=i ai ik x ,只要所有k i ,均为大于零的常数; m)对一个有n 个变量、m 个约束的标准型的线性规划问题,其可行域的顶点恰好为m n c 个;n) 单纯形法的迭代计算过 程是从一个可行解转换到目标函数值更大的另一个可行解;o)线性规划问题的可行解如为最优解,则该可行解定是基可行解;p)若线性规划问题具有可行解,且其可行域有界,则该线性规划问题最多具有有限个数的最优解;q)线性规划可行域的某一顶点若其目标函数值优于相邻的所有顶点的目标函数值,则该顶点处的目标函数值达到最优;r) 将线性规划约束条件的“≤”号及“≥”号变换成“一”号,将使问题的最优目标函数值得到改善;s)线性规划目标函数中系数最大的变量在最优解中总是取正的值:t)一个企业利用3种资源生产4种产品建立线性规划模型求解得到的最优解中最多只含有3种产品的组合;u)若线性规划问题的可行域可以伸展到无限,则该问题一定具有无界解; v)一个线性规划问题求解时的选代工作量主要取决于变量数的多少,与约束条件的数量关系相对较小。
非线性规划
·16·第2章 非线性规划在许多实际问题中,所建立的优化模型的目标函数或约束条件(或二者)是非线性的,所以非线性规划也是运筹学中最常用的方法之一,在生产管理和过程控制中有广泛的应用。
2.1 非线性规划问题举例【例2-1】钢铁厂自备发电厂负荷的最优分配问题。
设自备发电厂有3台蒸汽透平发电机,输入燃料,内部有高炉煤气和焦炉煤气,外购的有液化石油气。
设内部煤气不足,需用外购的液化石油气。
由于机组对输入各种燃料的输出特性不同,应如何分配燃料,使自备电厂效益最好?为了确定各种燃料的分配,设y i ,i =1,2,3为各机组的有效电力(MW ),x 1i ,i =1,2,3为各机组输入高炉煤气;x 2i ,i =1,2,3为各机组输入焦炉煤气;x 3i ,i =1,2,3为各机组输入液化石油气。
设电力单价为e c ,液化石油气单价为l c ,则可写出如下模型NP :目标函数 max f(x )=e c (1y +2y +3y )-l c (31x +32x +33x ) 约束条件1)高炉煤气使用量上限B F11x +12x +13x ≤B F2)焦炉煤气使用量上限C F21x +22x +32x ≤C F3)各机组电力上、下限max ,i y 和min ,i ymax ,i y ≤i y ≤min ,i y i =1,2,3其中各机组电力与输入燃料关系如下:i y =a 0i +a 1i 2i p +a 2i i p +a 3i F s i i =1,2,3式中 a ——系数;si F ——抽气流量(t/h);i p ——中间变量。
且 i p =i b 1b q i x 1+i b 2c q i x 2+i b 3l q i x 3式中b 为系数,q 为各燃料热值(103Kcal/Nm 3)。
这一数学模型的约束是线性的,而目标函数是非线性的,构成一个非线性规划问题。
第2章 非线性规划·17·2.2 基础知识非线性规划问题的一般形式是(NP ) min f (x 1,x 2,…,x n )(2-1a ) s.t. i g (1x ,2x ,…n x ) ≤0,i =1,2,…,m (2-1b )j h (1x ,2x ,…n x )≤0,i =1,2,…,s(2-1c ) 写成向量形式,为 (NP ) min ()f x(2-2a ) s.t. i g (x )≤0,i =1,2,…,m(2-2b )j h (x )≤0,i =1,2,…,s(2-2c )定义2-1(全局最优解) 一个定义在X ∈x 上的函数()f x ,如果对X ∈x 的每一点 都有f (x ) ≥f (xˆ) 则称ˆx为全局极小解,ˆ()f x 为全局极小值。
管理运筹学 (李军 杨纬隆 著) 华南理工大学出版社 答案
6、某农场有 100 公顷土地及 25 万元资金可用于发展生产。农场劳动力情况为秋冬季 4500
人日,春夏季 6000 人日,如劳动力本身过剩可外出打工,春夏季收入为 20 元/人日,秋冬
季 12 元/人日。该农场种植三种作物:大豆、玉米和小麦,并饲养奶牛和鸡。种作物不需
<= 0
17 , - 3 乙A +乙B +乙C
<= 0
课 -乙A -乙B
+
2 3
乙C
<=
0
,
-丙A -丙B
+
丙C
<=
0
原材料的限制,有以下不等式成立:
甲A +乙A + 丙A <= 2000 ,甲B +乙B + 丙B <= 2500 ,甲C +乙C + 丙C <= 1200
在约束条件中共有 9 个变量,为方便计算,分别用 x1 , x2 ... x9 表示,即令 x1 =甲A ,
(3) max z = 2x1 + 3x2 x1 − x2 ≤ 2
− 3x1 + x2 ≤ 4 x1, x2 ≥ 0
m (4) max z = x1 + x2 co x1 − x2 ≥ 0 w. 3x1 − x2 ≤ −3
www.khda x1,x2 ≥ 0
网
解:
案
(1)
答
后
课 8
4
Q*(9 ,1) 4
7、用图解法求解下列线性规划问题
(1) max z = 2x1 + x2
非线性规划
非线性规划(nonlinear programming)1.非线性规划概念非线性规划是具有非线性约束条件或目标函数的数学规划,是运筹学的一个重要分支。
非线性规划研究一个n元实函数在一组等式或不等式的约束条件下的极值问题,且目标函数和约束条件至少有一个是未知量的非线性函数。
目标函数和约束条件都是线性函数的情形则属于线性规划。
2.非线性规划发展史公元前500年古希腊在讨论建筑美学中就已发现了长方形长与宽的最佳比例为0.618,称为黄金分割比。
其倒数至今在优选法中仍得到广泛应用。
在微积分出现以前,已有许多学者开始研究用数学方法解决最优化问题。
例如阿基米德证明:给定周长,圆所包围的面积为最大。
这就是欧洲古代城堡几乎都建成圆形的原因。
但是最优化方法真正形成为科学方法则在17世纪以后。
17世纪,I.牛顿和G.W.莱布尼茨在他们所创建的微积分中,提出求解具有多个自变量的实值函数的最大值和最小值的方法。
以后又进一步讨论具有未知函数的函数极值,从而形成变分法。
这一时期的最优化方法可以称为古典最优化方法。
最优化方法不同类型的最优化问题可以有不同的最优化方法,即使同一类型的问题也可有多种最优化方法。
反之,某些最优化方法可适用于不同类型的模型。
最优化问题的求解方法一般可以分成解析法、直接法、数值计算法和其他方法。
(1)解析法:这种方法只适用于目标函数和约束条件有明显的解析表达式的情况。
求解方法是:先求出最优的必要条件,得到一组方程或不等式,再求解这组方程或不等式,一般是用求导数的方法或变分法求出必要条件,通过必要条件将问题简化,因此也称间接法。
(2)直接法:当目标函数较为复杂或者不能用变量显函数描述时,无法用解析法求必要条件。
此时可采用直接搜索的方法经过若干次迭代搜索到最优点。
这种方法常常根据经验或通过试验得到所需结果。
对于一维搜索(单变量极值问题),主要用消去法或多项式插值法;对于多维搜索问题(多变量极值问题)主要应用爬山法。
第六章非线性规划(管理运筹学,李军)
2020/7/30
10
1.3 非线性规划问题的图示
x2 6
3 2
0
23
f(X)=4 f(X)=2
x1 6
由左图可见,等值线 f (X)=2和约束条件直 线6-6相切,切点D即
为此问题的最优解, X*=(3, 3),其目标函 数值 f (X*)=2。
2020/7/30
11
1.3 非线性规划问题的图示
在此例中,约束h(X ) x1 x2 6 0 对最优解发生 了影响,若以 h(X ) x1 x2 6 0 代替原约束, 则非线性规划的最优解是X (2,2) ,即图中的 C点,此时 f (X ) 0。由于最优点位于可行域 的内部,故事实上约束 h(X ) x1 x2 6 0 并未 发挥作用,问题相当一个无约束极值问题。
xn2
2020/7/30
22
充分条件
(充分条件)等价于: 如果函数f (X)在X*点的梯度为零且海赛矩 阵正定,则X*为函数f (X)的严格局部极小 点。
2020/7/30
23
2.3 凸函数和凹函数
设 f (X)为定义在En中某一凸集R上的函 数,若对于任何实数(0<<1)以及R中 的任意两点X(1)和X(2) ,恒有:
2020/7/30
38
3.2 下降迭代算法
确定搜索方向P (k)是关键的一步,各种算法的区 别主要在于确定搜索方向P (k)的方法不同。
步长 k 的选定一般都是以使目标函数在搜索方 向上下降最多为依据的,称为最佳步长,即沿 射线 X X (k) P(k) 求目标函数的极小值
k : min f ( X (k) P(k) )
2020/7/30
21
充分条件
非线性规划
非线性规划什么是非线性规划?非线性规划(Nonlinear Programming,简称NLP)是一种数学优化方法,用于求解包含非线性约束条件的优化问题。
与线性规划不同,非线性规划中的目标函数和约束条件都可以是非线性的。
非线性规划的数学表达式一般来说,非线性规划可以表示为以下数学模型:minimize f(x)subject to g_i(x) <= 0, i = 1, 2, ..., mh_j(x) = 0, j = 1, 2, ..., px ∈ R^n其中,f(x)是目标函数,g_i(x)和h_j(x)分别是m个不等式约束和p个等式约束,x是优化变量,属于n维实数空间。
非线性规划的解法由于非线性规划问题比线性规划问题更为复杂,因此解决非线性规划问题的方法也更多样。
以下列举了几种常用的非线性规划求解方法:1. 数值方法数值方法是最常用的非线性规划求解方法之一。
它基于迭代的思想,通过不断优化目标函数的近似解来逼近问题的最优解。
常见的数值方法有梯度下降法、牛顿法、拟牛顿法等。
2. 优化软件优化软件是一类针对非线性规划问题开发的专用软件,它集成了各种求解算法和优化工具,可以方便地求解各种类型的非线性规划问题。
常见的优化软件有MATLAB、GAMS、AMPL等。
3. 线性化方法线性化方法是一种将非线性规划问题转化为等价的线性规划问题的求解方法。
它通过线性化目标函数和约束条件,将非线性规划问题转化为线性规划问题,然后利用线性规划的求解方法求解得到最优解。
4. 分类方法分类方法是一种将非线性规划问题分解为若干个子问题求解的方法。
它将原始的非线性规划问题分解为多个子问题,然后将每个子问题分别求解,并逐步逼近原始问题的最优解。
以上仅是非线性规划求解方法的一小部分,实际上还有很多其他的方法和技巧可供选择。
在实际应用中,选择合适的方法和工具是非常重要的。
非线性规划的应用非线性规划在实际生活和工程中有着广泛的应用。
管理运筹学_第六章
δj δj Max a'kj 0 ΔC k Min a'kj 0 a'kj a'kj
管 理 运 筹 学
3
§1 单纯形表的灵敏度分析
例: 目标函数:Max z=50X1+100X2 约束条件:X1+X2≤300 2X1+X2≤400 X2≤250 X1,X2≥0 最优单纯形表如下 迭代次数 基变量 X1 S2 X2 ZJ CJ -ZJ
管
理
运
筹
学
8
§1 单纯形表的灵敏度分析
下表给出了一个由最终单纯形表对于不同约束类型的对偶价格的取值。
约束条件 ≤ ≥
影子价格的取值
等于这个约束条件对应的松弛变量的 等于这个约束条件对应的剩余变量的 等于这个约束条件对应的人工变量的
z j 值,即为 j 的相反数 z j 值,即为 j 的相反数 z j 值,即为 j 的相反数
2
CJ -ZJ
0
0
- C’1
0
C’1-100
从δ 3≤0,得到-c1’≤0,即c1’≥0,并且从δ 5≤0,得 到c1’≤100。 那么如果c1’取值超出这个范围,必然存在一个检验数 大于0,我们可以通过迭代来得到新的最优解。
管
理
运
筹
学
6
§1 单纯形表的灵敏度分析
二、约束方程中常数项的灵敏度分析
迭代次数 基变量 CB X1 50 X2 100 0 0 1 100 0 S1 0 1 -2 0 50 S2 0 0 1 0 0 S3 0 -1 1 1 50 -50 50 50 250 27500 b
品Ⅲ,已知生产产品Ⅲ,每件需要设备2台时,并消耗A原料0.5公斤。B原料 1.5公斤,获利150元,问该厂应该生产该产品多少? 解:这是一个增加新变量的问题。我们可以把它认为是一个改变变量X3在初始 表上的系数列的问题,
非线性规划(管理运筹学,李军)
6 非线性规划1、判断函数的凸凹性 (1)3)4()(x x f -=,4≤x (2)22212132)(x x x x X f ++= (3)21)(x x X f =(1)解:'2f (x)3(4)0x =--<=,Q x<=4,故f(x)在(-∞,4]上是不减函数,''f (x)6(4)0x =->=,故f(x)在(-∞,4]上是凸函数。
(2)解:f(x)的海赛矩阵22()26H x ⎡⎤=⎢⎥⎣⎦,因H (x )正定,故f (x )为严格的凸函数。
(3)解:取任意两点(1)11(,)Xa b =、),(22)2(b a X =,从而(1)11().f X a b =,(2)22().f X a b =,(1)11()(,)T f X b a ∇=看下式是否成立:(2)(1)(1)(2)(1)()()().()f X f X f X X X >+∇- 2211112121..(,)(,)T a b a b b a a a b b >+--2121().()0a a b b -->Q 1212,,,a a b b 是任意点,并不能保证上式恒成立,故所以12()f X x x =既非凸函数,也非凹函数。
2、分别用斐波那契法和黄金分割法求下述函数的极小值,初始的搜索区间为]15,1[∈x ,要求5.0|)()(|1≤--n n x f x f 。
x x x x X f 1357215)(234-+-=解:斐波那契法已知δ = 0.5/(15-1)=1/28、a = 1、b = 15,有128n F δ≥=,即8n =。
7821134()15(151) 6.3529FF a b b a =--=--≈ 7821134()1(151)9.6471F F b a b a =+-=+-≈ 11()168.876()592.4527f a f b =-<=故搜索区间可以从[1,15]缩减为[1,9.6471]。
非线性规划在运筹学中的应用
非线性规划在运筹学中的应用非线性规划是运筹学中的重要领域之一,广泛应用于各种实际问题的优化过程中。
本文将介绍非线性规划在运筹学中的应用,并探讨其在实际问题求解中所面临的挑战以及解决方案。
一、非线性规划的定义与特点非线性规划是指目标函数或约束条件中存在非线性项的优化问题。
与线性规划不同,非线性规划需要通过数值计算的方法来获取最优解。
非线性规划的特点在于问题的复杂性和多样性,涉及到的数学模型通常更加抽象和复杂,求解过程也更加困难。
二、非线性规划在生产调度中的应用生产调度是运筹学中的一个重要问题,旨在合理安排生产资源,提高生产效率。
非线性规划可以用于求解生产调度问题,通过优化生产资源的分配和利用,实现生产效益的最大化。
例如,在一家制造业企业中,存在多个订单需要完成。
每个订单的生产时间、生产成本、交货时间等因素都不同,而且相互之间存在约束条件。
通过建立一个非线性规划模型,可以考虑各种因素,如生产时间、物料需求、生产能力等,利用数学求解方法求得最佳生产调度方案。
三、非线性规划在物流配送中的应用物流配送是一个典型的优化问题,旨在合理安排货物的运输路线、运输方式,以降低物流成本,并保证货物按时到达目的地。
非线性规划可以用于解决物流配送中的路径规划、运输负荷、车辆调度等问题。
例如,在一家快递公司中,需要合理安排快递员的路线,使其能够尽可能地在规定时间内完成配送任务。
非线性规划可以考虑诸如快递员工作时间、路况、配送点的距离等因素,通过求解最优化问题,找到最佳的配送路线,提高配送效率,降低物流成本。
四、非线性规划在金融投资中的应用在金融投资领域,非线性规划也得到了广泛的应用。
通过构建非线性规划模型,可以考虑投资收益、风险、投资期限等多方面因素,以优化投资组合并降低风险。
例如,在一家投资公司中,需要选择一个最佳的投资组合,使得收益最大化的同时,风险最小化。
非线性规划可以考虑不同资产的收益率、投资额度限制等因素,通过求解最优化问题,找到最佳的投资配置方案。
非线性规划
非线性规划非线性规划(Nonlinear Programming ,简记为NP)研究的对象是非线性函数的数值最优化问题,是运筹学的最重要分支之一,20世纪50年代形成一门学科,其理论和应用发展十分迅猛,随着计算机的发展,非线性规划应用越来越广泛,针对不同的问题提出了特别的算法,到目前为止还没有适合于各种非线性规划问题的一般算法,有待人们进一步研究.§1 非线性规划基本概念一、引例例7.1 一容器由圆锥面和圆柱面围成. 表面积为S ,圆锥部分高为h ,h 和圆柱部分高2x 之比为a ,1x 为圆柱底圆半径.求21,x x 使面积最大.解: 由条件 a x h =2/22121231x x x ax V ππ+=21212222112221x x x x a x x S πππ+++⋅⋅=所以,数学模型为:212)311(max x x a V π+=s.t. S x x x x a x x =+++21212222112πππ0,21≥x x例7.2 某高校学生食堂用餐,拟购三种食品,馒头0.3元/个,肉丸子1元/个,青菜0.6/碗.该学生的一顿饭支出不能够超过5元.问如何花费达到最满意?解: 设该学生买入馒头,肉丸子,青菜的数量分别为321,,x x x ; 个人的满意度函数即为效用函数为321321321),,(aaax x Ax x x x u =.于是数学模型为321321321),,(max aaax x Ax x x x u =s.t.56.03.0321≤++x x x 321,,x x x 为非负整数二、数学模型称如下形式的数学模型为数学规划(Mathematical Programming 简称MP ) )(min x f z = (7.1) (MP ) t s . 0)(≥x g i m i ,,1 = (7.2) 0)(=x h j l j ,,1 = (7.3)其中Tn x x x x ),,,(21 =是n 维欧几里得空间nR 中的向量(点),)(x f 为目标函数,0)(,0)(=≥x h x g j i 为约束条件.称满足约束条件的向量x 为(MP )问题的一个可行解,全体可行点组成的集合称为可行域.K ={}l j x h mi x g R x j i n,,2,10)(,,2,10)( ===≤∈如果)(),(),(x h x g x f j i 均为线性函数,就是前面所学的线性规划问题(LP).如果至少有一个为非线性函数称为非线性规划问题.由于等式约束0)(=x h j 等价于下列两个不等式约束 0)(,0)(≥-≥x h x h j j 所以(MP)问题又可表示为 )(min x f z =s.t. 0)(≥x g i m i ,,1 = (7.4) 三、数学基础 1、线性代数知识考虑二次型Az z T ,z 为n 维向量正定的二次型:若对于任意0≠z ,有0>Az z T; 半正定的二次型:若对于任意0≠z ,有0≥Az z T ; 负定的二次型:若对于任意0≠z ,有0<Az z T ; 半负定的二次型:若对于任意0≠z ,有0≤Az z T ;不定二次型:0≠∃z ,有0>Az z T,又0≠∃z ,有0<Az z T.二次型Az z T 为正定的充要条件是它的矩阵A 的左上角各阶主子式都大于零. 二次型Az z T 为负定的充要条件是它的矩阵A 的左上角各阶主子式负正相间.2、分析数学知识(1)方向导数和梯度(二维为例)考虑函数),(21x x f Z =,及方向j i lϕϕsin cos +=梯度:Tx f x f j x f i x f x x f ),(),(212121∂∂∂∂=∂∂+∂∂=∇ ; 方向导数:⎪⎪⎭⎫⎝⎛∂∂∂∂=∂∂+∂∂=∂∂ϕϕϕϕsin cos ),(sin cos 2121x f x f x f x f l f )),,(cos(||),(||),(),(21212121l x x gardf x x gardf lx x gardf lx x f T=⋅=⋅∇=考虑等值线00201),(c x x f =上一点),(0201x x 梯度方向 ),(0201x x gardf 即为法线方向n.如果)(x f 二次可微,称⎪⎪⎪⎪⎪⎭⎫⎝⎛=)()()()()()()()()()(212222111211x h x h x h x h x h x h x h x h x h x H nn n n n n为)(x f 在点 x 处的Hesse 矩阵.(2)多元函数泰勒公式:若)(,),(0x f R S x x f u n⊆∈=在点0x 处的某个领域具有二阶连续偏导数,则有x x x f x x x f x f x x f T T∆∆+∇∆+∆∇+=∆+)(21)()()(02000θ 10≤≤θ )||(||)(21)()(||)(||)()(2020000x x x f x x x f x f x x x f x f T TT ∆+∆∇∆+∆∇+=∆+∆∇+=οο 四、最优解的类型定义7.1 (MP)问题的一个可行点*x 被称为整体极小点,如果对于任意的可行点K x ∈,都有不等式)()(*x f x f ≥成立.如果对于任意可行点*,x x K x ≠∈均有)()(*x f x f >,称点*x 是)(x f 的可行解集K上的严格整体极小点.定义7.2 问题(MP)的一个可行点*x 被称为一个局部极小点,如果存在一个正数ε使得对于所有满足关系式ε<-*x x 的可行点x 都有)()(*≥x f x f 成立.如果对任意的可行点K x ∈,*≠x x ,存在一个正数ε使得对于所有满足关系式ε<-*x x 的可行点x 都有)()(*>x f x f 成立.则称*x 是)(x f 在K 上的一个局部严格极小点.显然整体极小点一定是局部极小点,反之不然. 五、凸规划定义7.3 集合K 被称为nR 中的一个凸集,如果对于K 中任意两点21,x x 和任一实数]1,0[∈λ,点K x x ∈-+21)1(λλ.几何解释:当一个集合是凸集时,连接此集合中任意两点的线段也一定包含在此集合内,规定φ空集是凸集.定义7.4 凸函数:)(x f 是凸集K 上的实值函数,如果对于K 中任意两点21,x x 和任意实数]1,0[∈λ有不等式)()1()())1((2121x f x f x x f λλλλ-+≤-+成立.严格凸函数:)(x f 是凸集K 上的实值函数,如果对于K 中任意两点21,x x ,21x x ≠和任意实数)1,0(∈λ,有不等式)()1()())1((2121x f x f x x f λλλλ-+<-+成立.定义7.5 )(x f 是定义在凸集K 上的实值函数,如果)(x f -是K 上凸函数,称)(x f 是凹函数.定理7.1 设)(x f 是凸集K 上的凸函数,则)(x f 在K 中的任一局部极小点都是它的整体极小点.证明: 设*x 是一局部极小点而非整体极小点,则必存在可行点K x ∈(可行域))()(*x f x f <∍.对任一]1,0[∈λ,由于)(x f 的凸性,有 )()()1()())1((***x f x f x f x x f ≤-+≤-+λλλλ当0→λ时,*)1(x x λλ-+与*x 充分接近,与*x 是局部极小矛盾. 证毕. 定义7.6 设有(MP)问题)(min x f kx ∈,若可行域K 是凸集,)(x f 是K 上的凸函数,则称此规划问题为凸规划.定理7.2 凸规划的任一局部极小解为整体极小解. 六、非线性规划问题的求解方法 考虑(MP)问题:lj x h m i x g t s x f j i ,,10)(,,10)(.)(min ===≥ (7.5) 一般来说,MP 问题难以求得整体极小点,只能求得局部极小点.以后我们说求(MP)问题,指的是求局部极小点.1、无约束极小化问题(UMP ) )(min x f nRx ∈ (7.6) 这里)(x f 是定义在n R 上的一个实值函数定理7.3(一阶必要条件)如果)(x f 是可微函数.*x 是上述无约束问题(UMP )的一个局部极小点或局部极大点的必要条件是:0)(*=∇x f .满足0)(=∇x f 的点称为平稳点或驻点.定理7.4 设)(x f 为定义在n R 上的二阶连续可微函数,如果*x 是)(x f 的一个局部极小点,必有nT Ry y x H y x f ∈∀≥=∇0)(0)(**这里)(*x H 表示)(x f 在*x 处的Hesse 矩阵.证明:nE y ∈∀,根据)(x f 在点*x 处的展开式有)()(21)()(2*2**λολλ++=+y x H y x f y x f T)0)((*=∇x f若0)(,*<∍∈∃y x H y R y T n ,当λ充分小时,有 )()(21|2*2λολ>y x H y T∴有)()(**x f y x f <+λ.这和*x 是)(x f 的极小矛盾.定理7.5 设)(x f 是定义在nR 上的二阶连续可微函数,如果点*x 满足0)(*=∇x f ,而且存在*x 的一个邻域0)(),(,),(*≥∈∀∈∀∍*y x H y x x R y x T n 有 ,则*x 是)(x f 的一个局部极小点.在高等数学中求解极值点方法先求出满足0)(=∇x f 的点及不可导点.在这些点判断)(x f 是否取得极小值.2、等式约束的极小化问题考虑 )(min x fl j x h t s j ,,10)(. == (7.7)定义7.7 如果)(,),(),(21x h x h x h l ∇∇∇ 在点x 处线性无关,则称点x 是此约束条件的一个正则点.Langrange 乘子法:引进拉格朗日函数 ∑=-=lj jj x h u x f u x L 1)()(),(其中Tl u u u u ),,,(21 =被称为拉格朗日乘子向量.定理7.6 设l j x h x f j ,,1),(),( =是连续可微函数,*x 是)(x f 在可行集中的一个局 部极小点.在*x 是正则点的假定下必存在一个拉格朗日乘子向量u ,使得),(*u x 满足方程组)(0)()(*1**==∇-∇∑=x h x h u x f lj j j对等式约束,用拉格朗日乘子法求解出平稳点,判断是否极值点.用上述解析法求解无约束和等式约束极值问题的平稳点,再判断是否为极值点.该方法有一定的局限性:(1)它们要求函数是连续的,可微的,实际问题中不一定满足这一条件; (2)上述求平稳点的方程组求解比较困难,有些解不出来; (3)实际问题中有大量的不等式约束.因此求解非线性规划应有更好的新方法.实际应用中一般用迭代法来求解非线性规划问题,即求近似最优解的方法.3、非线性规划问题的求解方法—迭代法迭代法一般过程为:在(MP)问题的可行域K 内选择初始点0:,0=k x ,确定某一方向k p ,使目标函数)(x f 从k x 出发,沿k p 方向使目标函数值下降,即)0(,>∈+=λλK p x x k ,有)()(0x f x f <,进一步确定kλ,使)(m i n )(0k k k k k p x f p x f λλλ+=+>,令k k k k p x x λ+=+1.如果1+k x 已满足某终止条件,1+k x 为近似最优解.否则,从1+k x 出发找一个方向1+k p ,确定步长1+k λ,使K p x x k k k k ∈+=++++1112λ,有)(min )(1102++>++=k k k p x f x f λλ.如此继续,将得到点列{}kx .显然有 >>>>)()()(1kx f x f x f ,即点列{}kx 相对应的目标函数是一个单调下降的数列.当{}kx 是有穷点列时,希望最后一个点是(MP)问题的某种意义下的最优解.当{}kx 为无穷点列时,它有极限点,其极限点是(MP)的某种意义下的最优解(此时称该方法是收敛的).迭代法求解(MP)的注意点:该方法构造的点列{}kx ,其极限点应是近似最优解,即该算法必须是收敛的.迭代法一般步骤:①. 选取初始点0x ,0:=k ②. 构造搜索方向kp ③. 根据kp 方向确定k λ ④. 令k k k k p x xλ+=+1⑤. 若1+k x已满足某终止条件,停止迭代,输出近似最优解1+k x.否则令1:+=k k ,转向第②步.计算终止条件在上述迭代中有:若1+k x满足某终止条件则停止计算,输出近似最优解1+k x.这里满足某终止条件即到达某精确度要求.常用的计算终止条件有以下几个:(1)自变量的改变量充分小时,11||||ε<-+k k x x,或21||||||||ε<-+kk k x x x ,停止计算. (2)当函数值的下降量充分小时,31)()(ε<-+k kx f x f ,或41|)(|)()(ε<-+k k k x f x f x f , 停止计算.(3)在无约束最优化中,当函数梯度的模充分小时51||)(||ε<∇+k x f ,停止计算.迭代法的关键:① 如何构造每一轮的搜索方向kp ② 确定步长k λ关于k λ,前面是以)(min kk p x f λλ+产生的,也有些算法k λ取为一个固定值,这要根据具体问题来确定.关于kp 的选择,在无约束极值问题中只要是使目标函数值下降的方向就可以了,对于约束极值问题则必需为可行下降方向.定义7.8 设0,,:1≠∈→p R x R R f nn,若存在0>δ使),0(δλ∈∀,)()(x f p x f <+λ则称向量p 是函数)(x f 在点x 处的下降方向.定义7.9 设0,,,≠∈∈∈p R p K x R K nn,若存在0>λ使得K p x ∈+λ,称向量p 是点x 处关于K 的可行方向. 若一个向量p 既是目标函数f 在点x 处的下降方向,又是该点处关于可行域K 的可行方向,则称p 为函数f 在点x 处关于区域K 的可行下降方向.根据不同原理产生了不同的kp 和k λ的选择方法,就产生了各种算法. 在以后的讨论中,一维极值的优化问题是讨论求解步长k λ.无约束极值中讨论的最速下降法,共轭方向法,坐标轮换法,牛顿法,变尺度法及有约束极值中讨论的可行方向法都是根据不同的原理选择kp 得到的迭代算法.七、迭代算法的收敛性定义7.10 设有一算法A ,若对任一初始点(可行点),通过A 进行迭代时,或在有限步后停止得到满足要求的点;或得到一个无穷点列,它的任何一个聚点均是满足要求的点,则称此算法A 具有全局收敛性.定义7.11 设(UMP )问题的目标函数Px Qx x x f T+=21)(,Q 为对称半正定矩阵, 若由算法A 进行迭代时,不论初始点0x 如何选择,必能在有限步后停止迭代,得到所要求的点,则称此算法A 有二次有限终止性.定义7.12 设序列{}kr收敛于*r,定义满足∞<=--≤**+∞−→−βhkk k rr r r 1______lim0的非负数h 的上确界为{}k r 的收敛级.若序列的收敛级为h ,就称序列是h 级收敛的.若1=h 且1<β就称序列是以收敛比β线性收敛的. 若1>h 或1=h 且0=β就称序列是超线性收敛的. 如何判别算法的收敛性和收敛速度问题本书不讨论.本书给出的算法中,最速下降法具有全局收敛性、是线性收敛的;改进牛顿法具有全局收敛性、二次有限终止性、是二阶线性收敛的;变尺度法和共轭方向法具有全局收敛性和二次有限终止性、是超线性收敛的;Zoutenddijk 法不具有全局收敛性、改进的T-V 法具有全局收敛性;制约函数法具有全局收敛性.关于这些算法的收敛性的讨论和证明有兴趣的读者可参考其他文献.§2 一维极值问题的优化方法前面讨论迭代算法时,从kx 出发确定沿k p 方向的步长k λ是这样求解的),(min 0k k p x f λλ+>这里k x ,k p 已知.所以,若记)()(λλg p x f k k =+,则为求解)(min 0λλg >的过程.于是我们考虑如下形式的极值问题.)(min x f bx a ≤≤ (7.8)b a R x ,,1∈为任意实数很显然可应用高等数学中学过的解析法,即令0)('=x f 求出平稳点,但如前面所述如果该方程解不出来,怎么办?可用下述迭代算法—0.618法.定义7.13 )(x f 定义在],[b a 上,若存在点∍∈],[*b a x 当*x y x ≤<,有)()(y f x f >,当*x y x ≥>时,)()(y f x f >,称)(x f 在],[b a 中为单峰函数(单谷函数).显然满足定义要求的点*x 是)(x f 在],[b a 中的极小点.在],[b a 中任选两点21,x x ,且b x x a <<<21,根据)(x f 的单峰性,若)()(21x f x f <,则*x 必然位于],[2x a 内,如果)()(21x f x f >,则*x 必然位于],[1b x 内.如果)()(21x f x f =,则*x 必然位于],[21x x ,记此区间为],[11b a .如此继续,得闭区间套⊃⊃⊃⊃],[],[],[11n n b a b a b a .显然 ,1,0],,[*=∈i b a x i i ,又0→-i i a b .由闭区间套性质, *x 为极小值点.闭区间套的选择方法不同,求得的*x 的快慢及求解过程的计算量是不一样的,有一个常用的方法是0.618法.0.618法: 取],[],[b a =βα① 在],[βα中选取1λ和2λ,)(618.0),(382.021αβαλαβαλ-+=-+=,求出)(1λf 和)(2λf 进入②.② 若)()(21λλf f <,取],[],[2λαβα=,若αλ-2已足够小,停止,否则进入③.若)()(21λλf f >,取],[],[1βλβα=,若1λβ-已足够小,停止,否则进入④. 若)()(21λλf f =,取],[],[21λλβα=,若12λλ-已足够小,停止,否则进入①. ③ 取上一步中的1λ为2λ,显然有)(618.02αβαλ-+=,令)(382.01αβαλ-+=,求出)(1λf ,返回②.④ 取上一步的2λ为1λ,则有)(382.01αβαλ-+=,令)(618.02αβαλ-+=,求出)(2λf 返回②.设初始区间为],[b a ,用0.618法,经过k 次迭代后],[βα的长度ka b 618.1)(-=-αβ,只要k 充分大αβ-可以小于任何给定的正数.例7.3 用0.618法求解λλλ2)(min 2+=f单峰区间为[-3,5],2.0=ε解:[α,β]=[-3,5]1λ=-3+0.382×8=0.056 )(1λf =0.1152λ=-3+0.618×8=1.944 )(2λf =7.667由于)(1λf <)(2λf 所以新的不定区间为[α,β] =[-3,1.944] 由于β-α=4.944>0.22λ:=1λ=0.056 )(2λf :=)(1λf =0.115 1λ=-3+0.382×4.944=-1.112 )(1λf =-0.987如此反复得下表7-1:在进行8次迭代后,2.0112.1936.0<+-=-αβ取中间值024.1*-=λ或032.12-=λ作为近似最优解.显然真正极小点是-1.0.一维收索方法很多,如函数逼近法、牛顿法等可参考其他文献.§3 无约束极值的优化方法考虑无约束最优化问题(UMP ))(min x f nR x ∈ (7.9) 前面已经讨论过,求解此无约束优化问题,可以求出平稳点及不可导点的方法.令0)(*=∇x f ,求出平稳点.如果)(*2x f ∇是正定的,则*x 是UMP 的严格局部最优解.若)(x f 在n R 上是凸函数,则是整体最优解.在求解0)(*=∇x f 这n 维方程组比较困难时,就用最优化算法——迭代法.本节将介绍最速下降法,牛顿法,共轭方向法,坐标轮换法,变尺度法.这些算法就是用不同的方法来选择搜索方向k p 而得到的.当然kp 必须是下降方向.定理7.7 设R R f n→:,在点x 处可微,若存在nR p ∈,使0)(<∇p x f T,则向量p是f 在x 处的下降方向.证明:)(x f 可微(在x 处),由泰勒展开式,有 ||)(||)()()(p p x f x f p x f Tλολλ+∇+=+ ,0,0)(><∇λp x f T0)(<∇∴p x f Tλ),(当δλδ0∈∃∴时,有0||)(||)(<+∇p p x f Tλολ),0()()(δλλ∈∀<+∴x f p x fp ∴是)(x f 在点x 的下降方向. 证毕.一、最速下降法最速下降法又称梯度法,选择负梯度方向作为目标函数值下降的方向,是比较古老的一种算法,其它的方法是它的变形或受它的启发而得到的,因此它是最优化方法的基础. 基本思想:迭代法求解无约束最优化(5.9)问题的关键是求下降方向kp .显然最容易想到的是使目标函数值下降速度最快的方向.从当前点kx 出发,什么方向是使)(x f 下降速度最快呢? 由泰勒展开知:||)(||)()()(k k T k k k k p p x f p x f x f λολλ+∇-=+-略去λ的高阶无穷小项,取)(kkx f p -∇=时,函数值下降最多.而)(kx f ∇为)(x f 在kx 处的梯度,所以下降方向kp 取为负梯度方向时,目标函数值下降最快.最速下降法:①. 取初始点0x ,允许误差0>ε,令0:=k ②. 计算)(kkx f p -∇=③. 若ε<||||k p ,停止,点k x 为近似最优解.否则进入④.④. 求 k λ,使)(min )(0kk k k k p x f p x f λλλ+=+≥ ⑤. 令kk k k p x xλ+=+1,1:+=k k ,返回②例7.4 用最速下降法求解下列无约束优化问题1222121225),(m in x x x x x f -+=取初始点Tx )2,2(0= 终止误差 610-=ε解:很显然,该问题的整体最优解为Tx )0,1(*=⎪⎪⎭⎫⎝⎛-=∇215022)(x x x f ,令0,10)(21==⇒=∇x x x f易验证)(*2x f ∇是正定的, ∴是整体最优解. 下面用最速下降法求解T T x x x f x f x f )50,22(),()(2121-=∂∂∂∂=∇ T x )2,2(0=T x f )100,2()(0=∇∴取Tp )100,2(0-=由⎪⎪⎭⎫⎝⎛--=⎪⎪⎭⎫ ⎝⎛--+⎪⎪⎭⎫ ⎝⎛=+λλλλ10022210022200p x4)22(2)1002(25)22()(2200+---+-=+λλλλp x f得0)1002(5000)22(4=----=λλλd df020007679.0500008100080==⇒λ⎪⎪⎭⎫⎝⎛-=⎪⎪⎭⎫ ⎝⎛--+⎪⎪⎭⎫ ⎝⎛=+=0007679.0959984642.11002020007679.0220001p x x λ重复上述过程得 Tx )01824717.0,009122542.1(2=789850288.0)(,078282.0)(,100)(21-=-==x f x f x f图7-1从图7-1可知,{}kx 随着迭代次数的增加,越来越接近与最优解)0,1(,同时也看到,随着迭代次数的增加,收敛速度越来越慢.极小点附近沿着一种锯齿形前进,即产生“拉锯”现象:{}kx沿相互正交的方向小步拐进,趋于最优解的过程非常缓慢.这种现象怎样解释?如何克服?在求k λ时,由于)()(kkp x f λλϕ+=,求导得0)('=λϕ,k λ是)(λϕ的极小点.故有0)()('=⋅+∇=k T k k k k p p x f λλϕ,即0)(=⋅+∇kk k k p p x f λ,又)(11++-∇=k k x f p,即0)(1=⋅+k T k p p 或0)()(1=∇⋅∇+k T k x f x f .也就是最速下降法相邻两个搜索方向是彼此正交的.因此最速下降法是局部下降最快,但不一定是整体下降最快的.在实际应用中一般开始几步用最速下降法,后来用下面介绍的牛顿法.这样两个算法结合起来,求解速度较快.二、牛顿法 基本思想:考虑无约束优化问题(5.9))(min x f nRx ∈ 由前面的讨论知,若能解出方程组0)(=∇x f ,求出平稳点*x ,则可验证*x 是否为极值点.由于0)(=∇x f 难以求解.如果)(x f 具有连续的二阶偏导数,则考虑用)(x f 在点*x 二阶泰勒展开式条件替代)(x f ∇,即由22||)(||))(()(21)()()()(k k k T k k T k k x x x x x f x x x x x f x f x f -+-∇-+-∇+=ο))(()(21)()()()()(2kk T k k T k k x x x f x x x x x f x f x g x f -∇-+-∇+=≈⇒令0))(()()()(2=-∇+∇=∇≈∇kk k x x x f x f x g x f)())((121k k k k x f x f x x ∇∇-=⇒-+即从kx 出发,搜索方向为)())((12kkkx f x f p ∇∇-=-,步长恒为1,得到下一个迭代点1+k x.牛顿法:①. 选取初始点0,0=:k x ,精度0>ε ②. 计算)(kx f ∇,如果ε≤∇||)(||kx f ,计算终止.否则计算)(2kx f ∇,求出搜索方向)())((12kk k x f x f p ∇∇-=-. ③. 令1:,1+=+=+k k p x x k k k ,返回②.例7.5 考虑无约束问题22122214)(m in x x x x x f -+=试分别取初始点(1)T x )1,1(0=,(2)T x )4,3(0=(3)Tx )0,2(0=,取精度要求310-=ε,用牛顿法求解.解:⎪⎪⎭⎫ ⎝⎛--=∇212211228)(x x x x x x f ⎪⎪⎭⎫⎝⎛---=∇22228)(1122x x x x f (1) 取Tx )1,1(0=有Tx f )1,6()(0=∇ ε>=∇0828.6||)(||0x f⎪⎪⎭⎫⎝⎛--=∇2226)(02x fT x f x f p )2500.2,7500.1()())((01020--=∇⋅∇-=-Tp x x )2500.1,7500.0(01--=+= 重复计算结果得表7-2.ε<=0||)(||4x f T x )0,0(4=∴为近似最优解.实际上,该问题最优解为**)0,0(=x(2) 取Tx )4,3(0=,同上计算,得TT x x x )4,8284.2(,)4,8333.2(),4,3(21===有ε<=∇=∇=∇0||)(||,1667.0||)(||,1||)(||210x f x f x f ,这一迭代结果收敛到)(x f 的鞍点T)4,22(.(3) 取Tx )0,2(0=T x f )4,16()(0-=∇ ⎪⎪⎭⎫⎝⎛--=∇2448)(02x f0)(02=∇x f , 即)(02x f ∇不可逆,所以无法求得点1x .牛顿法的主要缺点:(1) 该法的某次迭代反而使目标函数值增大(见上例).(2) 初始点0x 距极小点*x 较远时,产生的点列{}kx可能不收敛,还会出现)(*2x f ∇的奇异情况.(3) )(*2x f ∇的逆矩阵计算量大. 牛顿迭代法的主要优点:当目标函数)(x f 满足一定条件,初始点0x 充分接近极小点*x 时,由牛顿法产生的点列{}kx 不仅能够收敛到*x,而且收敛速度非常快.实际应用中常将最速下降法和牛顿法结合起来使用.牛顿法的改进:上面介绍的牛顿法中,kx 处的搜索方向为)())((12kkkx f x f p ∇∇-=-,步长恒为 1.若通过一维搜索来取最优步长k λ,可防止在迭代中步长恒为1时标目标函数值增大的可能. 改进的牛顿法:①. 取初始点nR x ∈0,允许误差0:,0=>k ε.②. 检验是否满足ε<∇||)(||kx f ,若是,迭代停止,得到k x 为近似最优解.否则进入③.③. 令)())((12kk k x f x f p ∇∇-=-.④. 求k λ,使)()(min kk k k k p x f p x f λλλ+=+. ⑤. 令k k k k p x x λ+=+1,令1+=k k :转②.三、坐标轮换法既然求解非线性规划问题的迭代法是给出初始点0x ,求出一个方向kp ,根据kp 确定步长k λ,使k k k k p x xλ+=+1,如果1+k x 满足某精度要求则停止,否则继续找方向1+k p .显然构造出搜索方向有一定的困难,能否按既定的搜索方向寻找最优解,省去找搜索方向kp 呢?在最速下降法中我们看到相邻两个搜索方向kp 和1+k p是正交的.我们知道在n 维欧氏空间中坐标轴向量n εεε,,,21 是正交的,可否选坐标轴向量为搜索方向kp 为呢?回答是肯定的,这样我们得到了坐标轮换法.基本思想:从1x 出发,取11ε=p ,沿1p 进行一维搜索得到1112p x x λ+=.若2x 满足精度要求,则停止.否则取22ε=p ,2223p x x λ+=.如此继续,, 取n n n n n n p x x p λε+==+1,,若1+n x 满足精度要求,则停止.否则令11ε=+n p ,1112+++++=n n n n p x x λ,如此反复连续,可以求出近似最优解.坐标轮换法的缺点是收敛速度较慢,搜索效率较低,但基本思想简单,沿坐标轴的方向进行搜索.四、共轭方向法和共轭梯度法共轭方向法是一类方法的总称,它原来是为求解目标函数为二次函数的问题而设计的.这类方法的特点是:方法中的搜索方向是与二次函数的系数矩阵Q 有关的所谓共轭方向,用这类方法求解n 元二次函数的极小化问题最多进行n 次一维搜索便可以得到极小点.由于可微的非二次函数在极小点附近的性态近似于二次函数,因此这类方法也用于求可微的非二次函数的UMP 问题.定义7.14 设Q 为n n ⨯对称正定矩阵,如果0=Qy x T称n 维向量x 和y 关于Q 共轭.定义7.15 设k p p p ,,,21 为nR 中一组向量, Q 是一个n n ⨯对称正定矩阵.如果k j i j i Qp p Qp p i T i j T i ,,2,1,,,0,0 =≠≠=,称k p p p ,,,21 为Q 共轭向量组,也称它们为一组Q 共轭方向.当E Q =(单位矩阵)时,为正交方向.定理7.8 若k p p p ,,,21 为矩阵Q 共轭向量组,则它们必线性无关. 证明: 若存在k l l l ,,,21 ,使011=++k k p l p l ,则对任一k j ,,2,1 =,由 0)(11===∑∑==j T j j ki j T j iki iiT jQp p l Qp pl p l Q p又0>j Tj Qp p , 0=∴j l∴ k p p p ,,,21 线性无关. 证毕.由高等代数知识可知, Q 共轭向量组中最多包含n 个向量, n 是向量的维数.反之,可以证明,由n 维空间的任一组基出发可以构造出一组Q 共轭方向11,,,-n pp p .前面我们已经讲述了坐标轮换法,在n 维欧几里德空间中, n εεε,,,21 是一组线性无关的正交向量.从0x 出发,依次使用n εεε,,,21 作为下降方向进行一维精确搜索来确定n x x x ,,,21 ,重复进行得点列{}k x ,最终求得满足精度要求的最优解.刚才我们引进了共轭向量组11,,,-n p p p ,又证明了它们的线性无关性,那么是否可以用这共轭向量组像坐标轮换法一样,从0x 出发依次用11,,,-n pp p 作为下降方向来确定{}kx,最终求得近似最优解?回答是肯定的.这个方法称为共轭方向法.共轭方向法适合任何可微凸函数,且对于二次函数极值)(min x f x p Qx x T T+=21特 别有效.下面的定理告诉我们用共轭方向法求解二次函数的极值,经过n 次迭代就能求得最优解.定理7.9 设Q 为n n ⨯对称正定矩阵,函数x p Qx x x f T T+=21)(,又设 110,,,-n p p p 为一组Q 共轭向量组,且每个i p 是(下面形成的)i x 点处的下降方向.则由任一点0x 出发,按如下迭代至多n 步后收敛,k k k k p x xλ+=+1,这里k λ满足)(m i n )(0k k k k k p x f p x f λλλ+=+>.证明: 欲证至多n 步收敛,即证0)(=∇nx f .下证)(nx f ∇和11,,,-n pp p 正交.p Qx x f +=∇)( p Qx x f kk+=∇∴)( p p x Q p Qx xf k k k k k ++=+=∇++)()(11λkk k k k k Qp x f p Qp Qx λλ+∇=++=)( =+∇=∇---111)()(n n n n Qpx f x f λ 11111)(--++++++∇=n n k k k Qp Qp xf λλQ p Q p x f x f Tn n T k k T k T n )()()()(11111--++++++∇=∇λλkT n n k T k k k T k k T n Qp p Qp p p x f p x f )()()()(11111--++++++∇=∇λλ000+++= )2,,2,1,0(-=n k 又0)(1=∇-n Tn px f0)(=∇∴kT n p x f )1,,1,0(-=n k)(nx f ∇∴和11,,,-n pp p 正交, 又110,,,-n pp p 线性无关.0)(=∇∴nx fnx ∴是问题的最优解. 证毕. 共轭方向法具有二次有限终止性. 由于共轭方向组11,,,-n p p p 的取法有很大的随意性,用不同方式产生一组共轭方向就得到不同的共轭方向法.如果利用迭代点处的负梯度向量为基础产生一组共轭方向,这样的方法叫共轭梯度法.下面对二次函数讨论形成Q 共轭梯度方向的一般方法,然后引到求解无约束化问题上.任取初始点n R x ∈0,若0)(0≠∇x f ,取)(0x f p -∇=,从0x 点沿方向0p 进行一维搜索 ,求得0λ.令0001p x x λ+=,若0)(1=∇x f ,则已获得最优解1*x x =.否则,取0011)(p x f p υ+-∇=,其中0υ的选择要使1p 和0p 关于Q 共轭,由0)(01=Qp p T ,得0100)()()(Qp p x f Q p T T ∇=υ一般地,若已获得Q 共轭方向kp p p ,,,1和依次沿它们进行一维搜索的得到的点列110,,,+k x x x ,若0)(1=∇+k x f ,则最优解为1*+=k x x ,否则∑=+++-∇=ki i i k k p xf p011)(α为使1+k p 和11,,,-k pp p 是共轭,可证0110====-k ααα所以有 k k k k p x f pυ+-∇=++)(11又1+k p和kp 是Q 共轭的.有0)(1=+k Tk Qp p,得kT k k T k k Qpp x f Q p )()()(1+∇=υ 2,,2,1,0-=n k 进一步可得k υ221||)(||||)(||k k x f x f ∇∇=+ 2,,1,0-=n k综合起来得 Fletcher-Reeves 公式2)21110||(||||)(||)()(k k k k k k k x f x f p x f px f p ∇∇=+-∇=-∇=+++υυ 2,,2,1,0-=n k (7.10)共轭梯度法: ①. 选取初始点0x ,给定终止误差0>ε. ②. 计算)(0x f ∇,若ε≤∇||)(||0x f ,停止迭代,输出0x .否则进行③.③. 取)(0x f p -∇=,令0:=k④. 求k λ,)(min )(0kkkk kp x f p x f λλλ+=+≥,令k k k k p x xλ+=+1⑤. 计算)(1+∇k xf ,若ε≤∇+||)(||1k x f ,停止迭代,1*+=k x x 为最优解.否则转⑥.⑥. 若n k =+1,令nx x =:0,转③(已经完成一组共轭方向的迭代,进入下一轮)否则转⑦ ⑦. 取kk k k p xf pυ+-∇=++)(11,其中221||)(||||)(||k k k x f x f ∇∇=+υ,令1:+=k k ,转④当)(x f 是二次函数时上述共轭梯度法至多进行n 步可求得最优解.当)(x f 不是二次函数,共轭梯度法也可以构造11,,,-n p p p ,但已不具有有限步收敛的性质,于是和坐标轮换法一样经过一轮迭代后,采用重新开始的技巧.上述共轭梯度法就是带有再开始技巧的F-R 法.例7.6 用F-R 法求下面问题 2212121252),(m in x x x x x f +-=取初始点T x )2,2(0=,终止误差为610-=ε解:在例7.4中已得Tx f p )100,2()(0-=-∇= Tx )0007679.0,959984642.1(1-= Tx f )038395.0,919969284.1()(1-=∇000368628.010004687756228.3||)(||||)(||20210==∇∇=x f x f υ ⎪⎪⎭⎫ ⎝⎛-=⎪⎪⎭⎫ ⎝⎛--+⎪⎪⎭⎫ ⎝⎛-=+-∇=0015322.092070654.11002000368628.0038395.0919969284.1)(0011p x f p υ⎪⎪⎭⎫ ⎝⎛+--=+0015322.00007679.092070654.1959984642.111λλλp x0378228399.7687703443.3)(11=+-=+λλλd p x df499808794.01=∴λ⎪⎪⎭⎫ ⎝⎛≈⎪⎪⎭⎫ ⎝⎛-=⎪⎪⎭⎫⎝⎛⨯+--⨯+=+=010********.0999998622.00015322.0499808794.00007679.0)92070654.1(499808794.0959984642.11112p x x λε<=∇0||)(||2x f , ∴最优解⎪⎪⎭⎫⎝⎛==012*x x .五、变尺度法当初始点为)(x f 的其极值点附近时牛顿法收敛速度很快,但缺点是需计算)(2kx f ∇的逆矩阵,在实际问题中目标函数往往相当复杂,计算二阶导数的工作量或者太大或者不可能,在x 的维数很高时,计算逆矩阵也相当费事.如果能设法构造另一个矩阵kH ,用它来逼近二阶导数矩阵的逆矩阵12))((-∇kx f 则可避免上述问题.下面就来研究如何构造12))((-∇kx f 的近似矩阵kH .我们希望:每一步都能以现有的信息来确定下一个搜索方向,每做一次迭代,目标函数值均有所下降,这些近似矩阵最后应收敛于最优解处的海赛矩阵的逆矩阵12))((-∇kx f .p Qx x f xp Qx x x f T T+=∇+=)(21)(考虑于是 )]()([)()()(11111k k k k k k k k x f x f Q x x x x Q x f xf ∇-∇=-⇒-=∇-∇+-+++当)(x f 是非二次函数时,令)]()([111k k k k k x f x f H x x ∇-∇=-+++ (7.11)称为拟牛顿条件.显然,我们构造出来的近似矩阵k H 必须满足上述拟牛顿条件及递推性:k k k H H H ∆+=+1,这里k H ∆称为矫正矩阵.记 k k k kk k x x x x f x f G -=∆∇-∇=∆++11)()( 有 kk k k k k G H H G H x ∆∆+=∆=∆+)(1 .变尺度法即DEP 法是由Davidon 首先提出,后来又被Fletcher 和Powell 改进的算法.记kk T k kT k k k k T k T k k k k kk T k kT k k k k T k T k k kG H G HG G H x G x x H H G H G H G G H x G x x H ∆∆∆∆-∆∆∆∆+=∆∆∆∆-∆∆∆∆=∆+)()()()()()()()(1 (7.12)容易验证1+k H 满足拟牛顿条件,称上式为DEP 公式.变尺度方法计算步骤:(1) 给出初始点nR x ∈0,允许误差0>ε.(2) 若ε<∇||)(||0x f ,停止,0x 为近似最优解;否则转下一步.(3) 取I H =0(单位矩阵),0=:k . (4) )(kk k x f H p ∇-=(5) 求k λ,使)(min )(0kk k k k p x f p x f λλλ+=+≥. (6) 令kk k k p x xλ+=+1(7) 若ε<∇+||)(||1k xf ,1+k x 为最优解,停止;否则当1-=n k 时,令n x x =:0转(3).(即迭代一轮n 次仍没求得最优解,以新的0x 为起点重新开始一轮新的迭代).k k k k k kx x x x f xf G n k -=∆∇-∇=∆-<++11),()(1时,令当.计算kk T k kT k k k k T k T k k kk G H G H G G H x G x x H H∆∆∆∆-∆∆∆∆+=+)()()()(1,令1+=k k :,转(4). §4 约束极值的最优化方法考虑(MP)问题:0)(0)(..)(min =≥x H x g t s x f (7.13)其中Tl T m x h x h x h x g x g x g ))(,),(()(,))(,),(()(11 ==是向量函数.显然 0)(0)(0)(≥-≥⇔=x h x h x h , 于是(MP )问题可以写为:Tm x g x g x g x g t s x f ))(,),(()(0)(..)(min 1 =≥ (7.14)一、积极约束设0x 是(MP )问题(5.14)的一个可行解.对0)(0≥x g i 来说,在点0x 有两种情况:或者0)(0>x g i ,或者0)(0=x g i .0)(0>x g i 时,则0x 不在0)(0=x g i 形成的边界上,称这一约束为0x 的非积极约束;0)(0=x g i 时,0x 处于由0)(0≥x g i 这个约束条件形成的可行域边界上,当0x 有变化时就不满足0)(0=x g i 的条件,所以称为积极约束,记为:{}()|()0,1i I x i g x i m ==≤≤.定义7.16 设x 满足约束条件0)(0≥x g i ),,1(m i =,0)(|{)(==x g i x I i ,}m i ≤≤1,如果)(x g i ∇,)(x I i ∈线性无关,则称点x 是约束条件的一个正则点.二、可行方向、下降方向的代数条件前面我们已经给出可行方向和下降方向的定义,下面给出其代数条件.可行方向:设K 是(MP )问题(5.14)的可行域,K x ∈,0,≠∈p R p n.若存在00>λ使得],0[0λλ∈时有K p x ∈+λ,称p 为x 点处的一个可行方向.由泰勒公式:||)(||)()()(p p x g x g p x g T i i i λολλ+∇+=+当x 为)(x g i 的积极约束时,有0)(=x g i .只要0>λ足够小,)(p x g i λ+和p x g T i )(∇λ同号,于是当0)(>∇p x g T i 时有0)(≥+p x g i λ )(x I i ∈.当x 为)(x g i 的非积极约束时,有0)(>x g i .由)(x g i 的连续性,当0>λ足够小时,由保号性知 0)(≥+p x g i λ )(x I i ∉.所以只要 0)(>∇p x g T i ,)(x I i ∈就可保证0)(≥+p x g i λ,于是p 为x 点处的一个可行方向.称0)(>∇p x g T i ,)(x I i ∈ 为p 在点x 处是可行方向的代数条件.下降方向:设K 是(MP )问题的可行域,K x ∈,0,≠∈p R p n.若存在00>λ使得],0[0λλ∈时,有)()(x f p x f <+λ,称p 为x 点处的一个下降方向.由泰勒公式:||)(||)()()(p p x f x f p x f Tλολλ+∇+=+.当λ足够小时,只要0)(<∇p x f T,有)()(x f p x f <+λ. 称0)(<∇p x f T为p 在x 点处的一个下降方向的代数条件.三、可行下降方向设K 为(MP )问题(5.14)的可行域,K x ∈,若存在0,≠∈p R p n,p 既是x 点处的下降方向又是可行方向,则称p 为点x 处的可行下降方向.定理7.10 考虑非线性规划问题(5.14),K x ∈,),,1)()(m i x g x f i =(和在x点处可微,若*x 是局部极小点,则x 点处必不存在可行下降方向,即不存在p 同时满足:⎪⎩⎪⎨⎧∈>∇<∇)(0)(0)(x I i p x g p x f Ti T证明:反证法,设局部极小点x 处存在可行下降方向p ,于是1λ∃,当],0[1λλ∈时有)()(x f p x f <+λ,又p 为可行方向.2λ∃∴当],0[2λλ∈时K p x ∈+λ,这与x 是。
管理运筹学06非线性规划
对于大规模问题,梯度法可能会收敛到局部最优解而非全局 最优解。
牛顿法
优点
牛顿法具有二次收敛速度,即随着迭 代次数的增加,收敛速度会加快。
缺点
牛顿法需要计算目标函数的Hessian矩 阵,计算量大,且对于非凸问题,可 能陷入局部最优解。
拟牛顿法
优点
拟牛顿法具有类似于牛顿法的收敛速 度,但计算量较小。
解器。
SciPy的非线性规划求解器基于 优化算法,如梯度下降法和牛 顿法等,可以求解无约束和有
约束的非线性规划问题。
SciPy的接口简洁明了,易于使 用,适合Python程序员使用。
SciPy还提供了大量的示例和文 档,可以帮助用户更好地理解 和使用非线性规划求解器。
R语言
01 02 03 04
R语言是一种开源的统计计算语言,广泛应用于数据分析和统计建模 等领域。
THANKS FOR WATCHING
感谢您的观看
它通过迭代算法寻找使目标函数取得 极值的解,广泛应用于各种实际问题 的优化,如金融、物流、生产计划等 。
非线性规划的分类
约束优化问题
在给定的约束条件下最小化或最大化目标函数。
无约束优化问题
在无任何约束条件下最小化或最大化目标函数。
混合整数非线性规划问题
目标函数和约束条件中包含整数变量,且为非线性。
03
MATLAB的非线性规划求解器支持多种算法,包括内点法、梯度法、 牛顿法等,可以根据问题的规模和特性选择合适的算法。
04
MATLAB的用户界面友好,易于学习和使用,适合初学者和专家使用。
Python的SciPy库
SciPy是一个开源的Python数 学库,提供了大量的数学函数 和算法,包括非线性规划的求
线性规划及非线性规划
例 求解线性规划
m a xz 2 0 x 1 3 0 x 2 4 7 x 3 ,
s.t.x1 x3 60,
x2
50,
x1
2x2
3x3
120,
x1,x2,x3 0.
35
解 启动Lingo,
在主窗口中输入
主窗口
model :
m a x 2 0 * x 1 3 0 * x 2 4 7 * x 3 ; x1x360; x250; x 1 2 * x 2 3 * x 3 1 2 0 ;
此时
c
8 10
,
2
A
1
1
2
,
b
11
1
0
.
25
输入语句
结果为
不能省略!!
即原问题的最优解为
x
4 3
,
f
62.
26
例 求解线性规划
m ax f 2 x1 3 x2 5 x3
s
.t
.
2
x1 x1
x2 5x
x3 2x
3
7 1
0
xi 0, i 1, 2, 3
a
2
1
x
1
a22 x2
b2 ,
a
m
1
x
1
am 2 x2
运筹学课件第六章 非线性规划
或 x
k 1
x tk p , tk 0
k k
称p k 为 第k轮 搜 索 方 向 , 为 第k轮 沿 搜 索 方 向 tk p k的 步 长 。
第11页
n n n 定义3 设f : R R, x R , p R , p 0, 0,使得 若
f ( x tp) f ( x ), t (0, )
2 1
令 0 得: f ( x1 )T ( x 2 x1 ) f ( x 2 ) f ( x1 )
f ( x 2 ) f ( x1 )
第23页
x1 , x 2 S f ( x ) ( x x ) f ( x ) f ( x )
1 T 2 1 2 1
1 T 2 1 2 1
证 (1) 必要性.设f是S上的凸函数,则对 (0,1), 有
f ( x 2 (1 ) x1 ) f ( x 2 ) (1 ) f ( x1 )
x1 , x 2 S
f ( x 1 ( x 2 x 1 )) f ( x1 )
第14页
全局优化算法概述
全局优化方法可分为随机性方法和确定性方法. 确定性方法充分利用了问题的解析性质, 如函数的 凸性、单调性、稠密性等, 产生一个确定性的有限 或无限点序列, 使得该点序列收敛于全局最优解. 包 括分枝定界算法、区间算法、填充函数法、割平面 法、顶点枚举法等,这类算法在理论上有较强的可行 性, 但对较为复杂的大型优化问题却难于应用.
如果有 f ( x* ) f ( x), x D, x x* 则称 x * 是(P)的严格全局最优解或严格全局极小点, 称 f ( x * ) 是(P)的严格全局最优值或严格全局极小值。
运筹学-非线性规划
OOppeerraattiioonnss RReesseeaarrcchh
凸规划定义:
已知非线性规划 min f (x)
s.t. gi (x) 0, i 1, 2, , m hj (x) 0, j 1, 2, , p
若可行域D是凸集,且f(x)是定义在D上的凸函数,则该非 线性规划称为凸规划。
page 4 1 September 2019
School of Management & Economics of UESTC
OOppeerraattiioonnss RReesseeaarrcchh
例:投资决策问题 某企业有n个项目可供选择投资, 并且至少要对其中一个项目投资.
已知该企业拥有总资金A元, 投资于第i(i=1,2,…,n)个项目需要花 资金ai 元, 并预计收益为bi元, 试选择最佳投资方案使得总收益和 总投资之比最大.
f (z) f (x) f (x)T (z x)
如果上式严格成立,则是严格凸函数的充要条件。
几何意义:凸函数 f(x) 在曲 线上任何一点做曲线的切线, 那么f(x)都在切线上方。
page 14 1 September 2019
School of Management & Economics of UESTC
由于max f (x)可转化为等价模型min f (x),故仅考虑极小化问题.
xX
xX
page 6 1 September 2019
School of Management & Economics of UESTC
OOppeerraattiioonnss RReesseeaarrcchh
为统一起见,称以下模型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6 非线性规划1、判断函数的凸凹性 (1)3)4()(x x f -=,4≤x (2)22212132)(x x x x X f ++= (3)21)(x x X f =(1)解:'2f (x)3(4)0x =--<=, x<=4,故f(x)在(-∞,4]上是不减函数,''f (x)6(4)0x =->=,故f(x)在(-∞,4]上是凸函数。
(2)解:f(x)的海赛矩阵22()26H x ⎡⎤=⎢⎥⎣⎦,因H (x )正定,故f (x )为严格的凸函数。
(3)解:取任意两点(1)11(,)Xa b =、),(22)2(b a X =,从而(1)11().f X a b =,(2)22().f X a b =,(1)11()(,)T f X b a ∇=看下式是否成立:(2)(1)(1)(2)(1)()()().()f X f X f X X X >+∇- 2211112121..(,)(,)T a b a b b a a a b b >+--2121().()0a a b b -->1212,,,a a b b 是任意点,并不能保证上式恒成立,故所以12()f X x x =既非凸函数,也非凹函数。
2、分别用斐波那契法和黄金分割法求下述函数的极小值,初始的搜索区间为]15,1[∈x ,要求5.0|)()(|1≤--n n x f x f 。
x x x x X f 1357215)(234-+-=解:斐波那契法已知δ = 0.5/(15-1)=1/28、a = 1、b = 15,有128n F δ≥=,即8n =。
7821134()15(151) 6.3529FF a b b a =--=--≈ 7821134()1(151)9.6471F F b a b a =+-=+-≈11()168.876()592.4527f a f b =-<=故搜索区间可以从[1,15]缩减为[1,9.6471]。
已经存在一个已知的试点1 6.3529a =及其函数值1()168.876f a =-,将原试点1 6.3529a =改为1 6.3529b =,1()168.876f b =-。
计算一个新试点131219.6471(9.64711) 4.2941a =--≈,11()99.7703()168.876f a f b =->=-,故搜索区间缩减为[4.2941,9.6471]。
将原有点1 6.3529a =视为1a ,新的试点81134.2941(9.6471 4.2941)7.5883b =+-≈ 故搜索区间缩减为[4.2941,7.5883]。
继续选取对称点比较函数值,以使区间进一步缩短,直到区间长度不大于0.5,因此符合精度要求的点为6.35295 6.764726.5588+≈,近似极小值为-169.799。
黄金分割法1a =,15b =,10.382()10.382(151) 6.348a a b a =+-=+-= 10.618()00.618(151)9.652b a b a =+-=+-=,11( 6.348)168.822(9.652)595.7061f a f b ==-<==,故搜索区间缩减为[1,9.6527]。
令1b =6.348,寻找新点1a =4.3051,11( 4.348)100.096( 6.348)168.822f a f b ==->==-,故搜索区间缩减为[4.3051,9.6527]。
1( 5.5674)147.644f a ==-,1(7.6095)114.599f b ==-(6.0495)163.291f =-, (6.8294)166.403f =- (6.348)168.822f =-, (6.8294)166.403f =-因6.8295-6.348=0.4815<0.5,因此符合精度要求的近似极小点为6.8295 6.3482 6.58875+≈,近似极小值为-169.7。
3、试计算出下述函数的梯度和海赛矩阵(1)232221)(x x x X f ++= (2))ln()(222121x x x x X f ++= (3)2143)(221x x e x x X f += (4))ln()(2112x x x X f x+=(1)解:123()(2,2,2)Tf X x x x ∇=,200()020002H X ⎛⎫ ⎪= ⎪ ⎪⎝⎭(2)解:121222221122112222()(,)Tx x x x f X x x x x x x x x ++∇=++++22221122112222222221122112211222241()()422x x x x x x x x H X x x x x x x x x x x x x ⎡⎤--+---=⎢⎥++-----⎣⎦(3)解:1212212121()(34,64)x xx xTf X x x e x x x e ∇=++121212122222122212114464(1)()64(1)64x x x x x x x x x x e x x x e H X x x x ex x e ⎡⎤+++=⎢⎥+++⎣⎦(4)解:22121111211()(,ln )x x T f X x x x x x x -∇=++ 222222221221211121112211111221(1)ln ()1ln (ln )x x x x x x x x x x x x x x H X x x x x x x x -----⎡⎤--+⎢⎥⎢⎥=⎢⎥+-⎢⎥⎣⎦4、用梯度法(最速下降法)求函数22212121244)(x x x x x x X f ---+=的极大点,初始点T X )1,1()0(=。
解:初始近似点(0)(1,1)T X=,1212()(44,42)T f X x x x x ∇=----(0)()(1,1)T f X ∇=-,2(0)2()2f X ∇==又因为41()12H X --⎡⎤=⎢⎥--⎣⎦,λ0 =(0)(0)(0)(0)(0)()()12()()()T T f X f X f X H X f X ∇∇∇∇-=下一迭代点 )1(X =-)0(X λ0)()0(X f ∇=1211121132⎛⎫⎪-⎛⎫⎛⎫+= ⎪ ⎪ ⎪⎝⎭⎝⎭ ⎪⎪⎝⎭,(1)13()(,)22T f X ∇=λ1 =(1)(1)(1)(1)(1)1()()2()()()124T T f X f X f X H X f X ∇∇∇∇-=-=-(2)X =(1)X -λ1(1)()f X ∇=145118223113228⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪+= ⎪ ⎪ ⎪ ⎪⎪ ⎪ ⎪ ⎪ ⎪⎝⎭⎝⎭⎝⎭,(2)11()(,)88T f X ∇=-,λ2 =12(3)(0.5625,1.6875)T X =,(3)11()(,)88T f X ∇=-,λ2 =12(4)(0.5781,1.7031)T X =,(4)()(0.0625,0.0625)T f X ∇=,λ3 =14(5)(0.5703,1.7109)T X =,(5)()(0.01563,0.015625)T f X ∇=-,λ4 =12(6)(0.5723,1.7129)T X =,(6)()(0.00781,0.00781)T f X ∇=,λ5 =14(7)(0.5713,1.7139)T X =,(7)()(0.00196,0.001952)T f X ∇=-因为2(7)()0.002763f X ∇=已经很小,所以过程可以结束。
此时所得的近似极大点是(7)(0.5713,1.7139)T X =。
5、用牛顿法求解2121)(max ++=x x X f ,初始点T X)0,4()0(=,分别用最佳步长和固定步长0.1=λ进行计算。
6、用变尺度法求解22131)2()2()(min x x x X f -+-=,初始点T X )3,0()0(=,要求近似极小点梯度的模不大于5.0。
解:⎥⎦⎤⎢⎣⎡=1001)()0(XH ,(0)03X ⎡⎤=⎢⎥⎣⎦T x x x x X f ),23()(1221---=∇于是(0)()(0,24)T f X ∇=(0)(0)(0)1000()()012424PH Xf X⎡⎤⎡⎤⎡⎤=-∇=-=⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦利用一维搜索 λ0:+)0((min Xf λ))0(P ,可得 λ018=,于是:(1)(0)(0)10800(0,0)324T X X P λ⎡⎤⎡⎤=+=+=⎢⎥⎢⎥-⎣⎦⎣⎦(1)()(12,0)T f X ∇= (0)(1)(0)(0,3)T X X X ∆=-=- (0)(1)(0)()()(12,24)T G f X f X ∆=∇-∇=-利用式(6-17)有:)0()0()0()0()0()0()0()0()0()0()0()()()()()()()()0()1()()(G X H G X H G G X H X G X X T T T T X H X H ∆∆∆∆∆∆∆∆-+=11872010001442880101288576-⎡⎤⎡⎤⎡⎤=+-⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦14032161613⎡⎤=⎢⎥⎣⎦485(1)(1)(1)140245321612()()16130PH X f X ⎡⎤⎡⎤⎡⎤=-∇=-=-⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦再利用一维搜索 λ1:+)1((min Xf λ))1(P ,可得 λ1524=-,于是:(2)(1)(1)121X X P λ⎡⎤=+=⎢⎥⎣⎦T X f )0,0()()2(=∇于是(2)(2,1)T X =即为极小点,函数)(X f 的极小为0。
7、写出下述非线性规划问题的K-T 条件(1) 1)(min x X f = (2) 2221)3()3()(min -+-=x x X f0)1(231≥--x x 0421≥--x x0,21≥x x 0,21≥x x(1)解:()(1,0)Tf X ∇=,211()[3(1),1]Tg X x ∇=---,2()[1,0]Tg X ∇=,3()[0,1]T g X ∇=。
对三个约束条件分别引入拉格朗日乘子*1γ、*2γ和3γ*,则有如下K -T条件:*211231103(1)00011x γγγ***⎛⎫--⎛⎫⎛⎫⎛⎫---=⎪ ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭⎝⎭3112[(1)]0x x γ***--=210x γ**= 320x γ**= *1γ,2γ*,30γ*≥即:*211213(1)0x γγ**+--= 130γγ**-=3112[(1)]0x x γ***--=210x γ**= 320x γ**= *1γ,2γ*,30γ*≥(2)解:12()(26,26)Tf X x x ∇=--,1()[1,1]Tg X ∇=--,2()[1,0]Tg X ∇=,3()[0,1]T g X ∇=。