第三章 非线性规划[001]
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/25bd7ac1f605cc1755270722192e453610665bfb.png)
非线性规划非线性规划是一种涉及非线性目标函数和/或非线性约束条件的优化问题。
与线性规划不同,非线性规划可能存在多个局部最优解,而不是全局最优解。
非线性规划在许多领域都有广泛的应用,如经济学、工程学和管理学等。
非线性规划的一般形式可以表示为:最小化或最大化 f(x),其中 f(x) 是一个非线性函数,x 是决策变量向量。
满足一组约束条件g(x) ≤ 0 和 h(x) = 0,其中 g(x) 和 h(x) 是非线性函数。
为了求解非线性规划问题,可以使用不同的优化算法,如梯度下降法、牛顿法和拟牛顿法等。
这些算法的目标是找到目标函数的最小值或最大值,并满足约束条件。
非线性规划的难点在于寻找全局最优解。
由于非线性函数的复杂性,这些问题通常很难解析地求解。
因此,常常使用迭代算法来逼近最优解。
非线性规划的一个重要应用是在经济学中的生产计划问题。
生产活动通常受到多个因素的限制,如生产能力、原材料和劳动力等。
非线性规划可以帮助确定最佳的生产数量,以最大化利润或最小化成本。
另一个应用是在工程学中的优化设计问题。
例如,优化某个结构的形状、尺寸和材料以满足一组要求。
非线性规划可以帮助找到最佳设计方案,以最大程度地提高性能。
在管理学中,非线性规划可以用于资源分配和风险管理问题。
例如,优化一个公司的广告预算,以最大程度地提高销售额。
非线性规划可以考虑多种因素,如广告投入和市场需求,以找到最佳的广告投放策略。
总之,非线性规划是一种重要的优化方法,用于解决涉及非线性目标函数和约束条件的问题。
它在经济学、工程学和管理学等领域有广泛的应用。
尽管非线性规划的求解难度较大,但通过合适的优化算法,可以找到最佳的解决方案。
非线性规划知识点讲解总结
![非线性规划知识点讲解总结](https://img.taocdn.com/s3/m/7b61155311a6f524ccbff121dd36a32d7375c787.png)
非线性规划知识点讲解总结1. 非线性规划的基本概念非线性规划是指目标函数和/或约束条件包含非线性项的优化问题。
一般来说,非线性规划问题可以表示为如下形式:\[\min f(x)\]\[s.t. \ g_i(x) \leq 0, \ i=1,2,...,m\]\[h_j(x)=0, \ j=1,2,...,p\]其中,\(x \in R^n\)是优化变量,\(f(x)\)是目标函数,\(g_i(x)\)和\(h_j(x)\)分别表示不等式约束和等式约束。
目标是找到使目标函数取得最小值的\(x\)。
2. 非线性规划的解决方法非线性规划问题的求解是一个复杂的过程,通常需要使用数值优化方法来解决。
目前,常用的非线性规划求解方法主要包括梯度方法、牛顿方法和拟牛顿方法。
(1)梯度方法梯度方法是一种基于目标函数梯度信息的优化方法。
该方法的基本思想是在迭代过程中不断沿着梯度下降的方向更新优化变量,以期望找到最小值点。
梯度方法的优点是简单易实现,但缺点是可能陷入局部最优解,收敛速度慢。
(2)牛顿方法牛顿方法是一种基于目标函数的二阶导数信息的优化方法。
该方法通过构造目标函数的泰勒展开式,并利用二阶导数信息来迭代更新优化变量,以期望找到最小值点。
牛顿方法的优点是收敛速度快,但缺点是计算复杂度高,需要计算目标函数的二阶导数。
(3)拟牛顿方法拟牛顿方法是一种通过近似求解目标函数的Hessian矩阵来更新优化变量的优化方法。
该方法能够克服牛顿方法的计算复杂度高的问题,同时又能保持相对快速的收敛速度。
拟牛顿方法的典型代表包括DFP方法和BFGS方法。
3. 非线性规划的应用非线性规划方法在实际生活和工程问题中都有着广泛的应用。
以下将介绍非线性规划在生产优化、资源分配和风险管理等领域的应用。
(1)生产优化在制造业中,生产线的优化调度问题通常是一个非线性规划问题。
通过对生产线的机器设备、生产工艺和生产速度等因素进行建模,并设置相应的目标函数和约束条件,可以使用非线性规划方法来求解最优的生产调度方案,以最大程度地提高生产效率和减少成本。
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/36d0410cf78a6529647d5337.png)
S X gi X 0, i 1, 2, , m; h j X 0, j 1, 2, , p; X En
[例题 2.5] 求解无约束极值问题 min f X x1 5 x2
解:任取 X
0
2, 1 , f X 0
T
1 0 2 0 T 2 1 4, 10 , A , , A 0 10 0 1 10
0
f X 1 , f X f X f X 2 f X 0
0
T
0
T
2
0
0
X 1 X 0 0f X 0 2, 1 ,
T
f X 1 0, 0 ,
0 , f x 半正定;反之,如果在 x 点有 f x 0 , f x 正定,
2
2
则 x 为严格局部最小解。 定理 2.3 设 f x 是 n 元可微凸函数,如果 f x
0 ,则 x 是上述问题的最小解。
2
[例题 2.3] 试求二次函数 f x1 , x2 2 x1 8 x1 2 x2 4 x2 20 的极小点。
2 f X 都是半正定的;如果对所有的 X S , 2 f X 都是正定的,则 f X 在 S 上
第三章非线性规划
![第三章非线性规划](https://img.taocdn.com/s3/m/7c938fcaaef8941ea76e05cd.png)
第三章 非线性规划§1 非线性规划1.1 非线性规划的实例与定义如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。
一般说来,解非线性规划要比解线性规划问题困难得多。
而且,也不象线性规划有单纯形法这一通用方法,非线性规划目前还没有适于各种问题的一般算法,各个方法都有自己特定的适用范围。
下面通过实例归纳出非线性规划数学模型的一般形式,介绍有关非线性规划的基本概念。
例1 (投资决策问题)某企业有n 个项目可供选择投资,并且至少要对其中一个项目投资。
已知该企业拥有总资金A 元,投资于第),,1(n i i =个项目需花资金i a 元,并预计可收益i b 元。
试选择最佳投资方案。
解 设投资决策变量为 ⎩⎨⎧=个项目决定不投资第,个项目决定投资第i i x i 0,1,n i ,,1 =,则投资总额为∑=ni ii xa 1,投资总收益为∑=ni ii xb 1。
因为该公司至少要对一个项目投资,并且总的投资金额不能超过总资金A ,故有限制条件 ∑=≤<ni ii A xa 1另外,由于),,1(n i x i =只取值0或1,所以还有 .,,1,0)1(n i x x i i ==-最佳投资方案应是投资额最小而总收益最大的方案,所以这个最佳投资决策问题归结为总资金以及决策变量(取0或1)的限制条件下,极大化总收益和总投资之比。
因此,其数学模型为:∑∑===ni ii ni ii xa xb Q 11maxs.t. ∑=≤<ni ii A xa 1.,,1,0)1(n i x x i i ==-上面例题是在一组等式或不等式的约束下,求一个函数的最大值(或最小值)问题,其中目标函数或约束条件中至少有一个非线性函数,这类问题称之为非线性规划问题,简记为(NP )。
可概括为一般形式)(min x fq j x h j ,,1,0)(s.t. =≤ (NP) p i x g i ,,1,0)( ==其中T n x x x ][1=称为模型(NP )的决策变量,f 称为目标函数,i g ),,1(p i =和),,1(q j h j =称为约束函数。
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/d744f323ed630b1c59eeb5bb.png)
非线性规划
组长:马文海 成员:黄羽兰、吴春安、林志铖、汤嘉晨
非线性函数概述:
具有非线性约束条件或目标函数的数学规划,是 运筹学的一个重要分支。非线性规划研究一个n元实函 数在一组等式或不等式的约束条件下的极值问题,且 目标函数和约束条件至少有一个是未知量的非线性函 数。目标函数和约束条件都是线性函数的情形则属于 线性规划。
f ( x) f1 ( x) f 2 ( x)
2 2 2
数学模型: max f ( x) 20x1 16x2 [2 x1 x2 ( x1 x2 ) ]
max f ( x) 20x1 16x2 [2x x ( x1 x2 ) ]
2 1 2 2 2
x* a b
最优解:
最优值:
z * ab
例2 投资决策问题
某钢铁厂准备用 5000 万用于 A、 B 两个项目技术改造投资,设 x1,x2分别表示分配给项目 A、B的投资。据专家预估投资项目 A、B 的年收益分别为20%和16%,同时投资后的风险损失将随着总投资 2 和单项投资的增长而增加。已知总的风险损失为2x12 x2 ( x1 x2 )2 。问如何分配资金才能使期望的收益最大,同时风险损失为最小。 解 这个问题有两个指标函数: 收益函数和风险损失函数
非线性规划简史:
非线性规划是20世纪50年代才开始形成的一门新兴学 科。1951年H.W.库恩和A.W.塔克发表的关于最优性条件 (后来称为库恩-塔克条件)的论文是非线性规划正式诞 生的一个重要标志。在50年代还得出了可分离规划和二次 规划的n种解法,它们大都是以G.B.丹齐克提出的解线性规 划的单纯形法为基础的。50年代末到60年代末出现了许多 解非线性规划问题的有效的算法,70年代又得到进一步的 发展。非线性规划在工程、管理、经济、科研、军事等方 面都有广泛的应用,为最优设计提供了有力的工具。20世 纪80年代以来,随着计算机技术的快速发展,非线性规划 方法取得了长足进步,在信赖域法、稀疏拟牛顿法、并行 计算、内点法和有限存储法等领域取得了丰硕的成果。
非线性规划的基本概念及问题概述
![非线性规划的基本概念及问题概述](https://img.taocdn.com/s3/m/c800c9a9afaad1f34693daef5ef7ba0d4b736d4b.png)
牛顿法在凸优化问题上表现较好,但在非凸问题 上可能陷入局部最优解。
拟牛顿法
01
拟牛顿法是一种改进的牛顿法,通过构造海森矩阵 的近似来降低计算成本。
02
拟牛顿法在每一步迭代中更新搜索方向,并逐渐逼 近最优解。
03
拟牛顿法在处理大规模非线性规划问题时表现较好 ,但仍然需要计算目标函数的二阶导数。
共轭梯度法
共轭梯度法结合了梯度法和牛 顿法的思想,通过迭代更新搜 索方向来寻找最优解。
共轭梯度法的迭代方向是梯度 方向和上一次迭代方向的线性 组合,可以加快收敛速度。
共轭梯度法适用于大规模优化 问题,尤其在约束条件较多或 非凸函数情况下表现较好。
05
非线性规划的挑战与解决方 案
局部最优解问题
局部最优解问题
案例二:生产计划优化问题
总结词
生产计划优化问题旨在通过合理安排生 产计划,降低生产成本并满足市场需求 。
VS
详细描述
生产计划优化问题需要考虑生产过程中的 各种因素,如原材料需求、设备能力、劳 动力成本等。目标函数通常是非线性的, 因为生产成本和产量之间的关系是非线性 的。约束条件可能包括资源限制、交货期 限制等。
例子
最小化成本函数,其中成本是生产量 的函数,生产量受到资源、生产能力 等约束。
最大化问题
最大化目标函数
在给定的约束条件下,找到一组变量 ,使得目标函数达到最大值。
例子
最大化收益函数,其中收益是销售量 的函数,销售量受到市场需求、价格 等约束。
约束条件下的优化问题
01
在满足一系列约束条件下,寻找最优解,使得目标函数达到最 优值。
梯度法适用于目标函数和约束条件比较简单的情况,但对于非凸函数或约束条件复 杂的情况可能不收敛或收敛到局部最优解。
非线性规划的相关概念
![非线性规划的相关概念](https://img.taocdn.com/s3/m/38069ebc7d1cfad6195f312b3169a4517623e569.png)
非线性规划的相关概念引言非线性规划是数学规划领域中的一个重要研究方向,它是线性规划的推广和扩展。
在许多实际问题中,约束条件和目标函数往往是非线性的,因此需要非线性规划方法来解决这些问题。
本文将介绍非线性规划的基本概念和相关理论。
基本概念1. 可行解在非线性规划中,可行解指的是满足约束条件的解。
具体地,给定约束条件和目标函数,如果存在一组解使得所有约束条件都得到满足,那么这组解就是可行解。
非线性规划的目标是找到一个可行解,使得目标函数值最小或最大。
2. 局部极小解和全局极小解在非线性规划中,局部极小解指的是在某个局部范围内,目标函数值最小的可行解。
全局极小解指的是在整个可行域内,目标函数值最小的可行解。
在非线性规划中,寻找全局极小解往往非常困难,因为非线性规划问题一般没有全局最优解的性质。
因此,通常采用近似算法来寻找接近全局极小解的解。
3. 无约束问题和约束问题非线性规划可以分为无约束问题和约束问题。
无约束问题是指在没有约束条件的情况下,找到目标函数的最小值或最大值。
约束问题是指在满足一组约束条件的情况下,找到目标函数的最小值或最大值。
约束问题通常比无约束问题更加复杂,因为需要考虑约束条件的影响。
相关理论1. 梯度下降法梯度下降法是非线性规划中常用的优化方法之一。
基本思想是通过迭代更新解,使得目标函数值逐渐降低。
具体地,梯度下降法使用目标函数的梯度信息来指导搜索方向,并选择适当的步长来更新解。
该方法通常在局部范围内找到局部极小解,并且易于实现。
2. 牛顿法牛顿法是一种经典的非线性优化方法,广泛应用于非线性规划问题的求解。
它利用目标函数和约束条件的一阶和二阶导数信息来更新解。
具体地,牛顿法通过计算目标函数的海森矩阵来确定搜索方向,并选择适当的步长来更新解。
该方法在局部范围内通常能够快速收敛到极小解。
3. 二次规划二次规划是非线性规划中的一种特殊形式,目标函数是二次函数,约束条件是线性条件。
它可以通过求解一组二次方程组来得到最优解。
非线性规划的基本概念
![非线性规划的基本概念](https://img.taocdn.com/s3/m/1ba87b31c1c708a1294a44b1.png)
新点的目标函数值。
解: 由于
f x1 6 x1 4 x2 ,
f x2 4x1 2x2
则函数在 x =[0,1]T 处的最速下降方向是
P
f
x
f
x1 f
x2 x1 0
6 x1 4 x2
4 x1 2 x2
x1 0
4 2
(2)若f1, f2是S上的凸函数, f1 f2是S上的凸函数。 性质2: 设S Rn是非空凸集, f是凸函数,cR1,则集合
HS ( f ,c)xS| f ( x) c 是凸集。
证明:略.
➢ (3) 凸函数的判定 定理1:(一阶条件)
m in f ( x)
s.t. gi ( x) 0, i 1,, p
hi ( x) 0, j 1,, q
➢(4)可行域和可行解:
称
X
x
Rn
gi ( x) hi ( x)
0, i 1,, p 0, j 1,, q
为MP问题的约束集或可行域。
若x在X内,称x为MP的可行解或者可行点。
则称f是S上的凸函数,或f在S上是凸的。 若 f (x1 (1 )x2 ) f ( x1 ) (1 ) f ( x2 ),x1, x2 S
则称f是S上的严格凸函数,或f在S上是严格凸的。
若 f 是S上的(严格)凸函数,称f是S上的(严格) 凹函数, 或f在S上是(严格)凹的。
例 f ( x)|| x||其中xRn是凸函数
4 2
42 22
2
5 1
5
5
5
新点是: x1
x
e
0 1
2
5 1
5
非线性规划算法介绍
![非线性规划算法介绍](https://img.taocdn.com/s3/m/6f021f311611cc7931b765ce050876323112740d.png)
非线性规划算法介绍在优化问题中,线性规划被广泛应用,但是有时候我们需要解决一些非线性问题。
非线性规划问题是指目标函数或约束条件至少有一个是非线性的优化问题,求解非线性规划问题是在一些工程和科学领域中很重要的任务。
这篇文章将会介绍非线性规划算法的一些概念和原理。
1. 概述非线性规划(Non-linear programming,简称NLP)是指存在非线性的目标函数和约束的最优化问题。
相对于线性规划问题,非线性规划问题的求解要困难得多,因此需要更复杂的算法来解决。
然而,在实际应用中非线性规划问题比比皆是,如金融风险管理、科学研究、交通规划等,因此非线性规划算法的研究意义非常重大。
2. 常见算法(a) 梯度下降法梯度下降法(Gradient descent algorithm)是求解最小化目标函数的一种方式。
在非线性规划问题中,该方法利用目标函数的梯度方向来确定下降的方向,迭代调整参数,直到梯度为零或达到可接受的误差范围。
梯度下降法有多种变形,包括共轭梯度法、牛顿法等。
(b) 拟牛顿法拟牛顿法(Quasi-Newton methods)是用来求解非线性约束优化问题的经典算法之一。
拟牛顿法利用牛顿法的思想,但不需要求解目标函数的二阶导数,转而用近似的Hessian矩阵来取代二阶导数,并用更新步长向量的方式近似求解目标函数的最小值。
(c) 启发式算法启发式算法(Heuristic algorithms)是一种不确定性的、基于经验的求解方法,因此不保证能找到全局最优解。
虽然有缺点,但启发式算法具有较强的鲁棒性和适应性,可用于非线性规划问题的求解。
常见的启发式算法包括模拟退火、遗传算法、蚁群算法、粒子群算法等。
3. 应用案例非线性规划算法在实际应用中发挥着不可或缺的作用。
这里介绍两个基于非线性规划算法的应用案例。
(a) 水利工程在水利工程中,常常需要寻找最优的方案来解决水库调度、灌溉、排洪等问题。
非线性规划算法能够通过寻找水资源的最优利用方法,保证水利工程的经济和社会效益。
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/79e3d40f866fb84ae45c8dab.png)
非线性规划(nonlinear programming)1.非线性规划概念非线性规划是具有非线性约束条件或目标函数的数学规划,是运筹学的一个重要分支。
非线性规划研究一个n元实函数在一组等式或不等式的约束条件下的极值问题,且目标函数和约束条件至少有一个是未知量的非线性函数。
目标函数和约束条件都是线性函数的情形则属于线性规划。
2.非线性规划发展史公元前500年古希腊在讨论建筑美学中就已发现了长方形长与宽的最佳比例为0.618,称为黄金分割比。
其倒数至今在优选法中仍得到广泛应用。
在微积分出现以前,已有许多学者开始研究用数学方法解决最优化问题。
例如阿基米德证明:给定周长,圆所包围的面积为最大。
这就是欧洲古代城堡几乎都建成圆形的原因。
但是最优化方法真正形成为科学方法则在17世纪以后。
17世纪,I.牛顿和G.W.莱布尼茨在他们所创建的微积分中,提出求解具有多个自变量的实值函数的最大值和最小值的方法。
以后又进一步讨论具有未知函数的函数极值,从而形成变分法。
这一时期的最优化方法可以称为古典最优化方法。
最优化方法不同类型的最优化问题可以有不同的最优化方法,即使同一类型的问题也可有多种最优化方法。
反之,某些最优化方法可适用于不同类型的模型。
最优化问题的求解方法一般可以分成解析法、直接法、数值计算法和其他方法。
(1)解析法:这种方法只适用于目标函数和约束条件有明显的解析表达式的情况。
求解方法是:先求出最优的必要条件,得到一组方程或不等式,再求解这组方程或不等式,一般是用求导数的方法或变分法求出必要条件,通过必要条件将问题简化,因此也称间接法。
(2)直接法:当目标函数较为复杂或者不能用变量显函数描述时,无法用解析法求必要条件。
此时可采用直接搜索的方法经过若干次迭代搜索到最优点。
这种方法常常根据经验或通过试验得到所需结果。
对于一维搜索(单变量极值问题),主要用消去法或多项式插值法;对于多维搜索问题(多变量极值问题)主要应用爬山法。
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/40b761e419e8b8f67c1cb944.png)
非线性规划如果目标函数或约束条件中含有一个或多个是变量的非线性函数,我们称这类规划问题为非线性规划(nonlinear programming ,可简记为NP )。
一般地,解非线性规划问题要比解线性规划问题困难的多,因为它不像解线性规划问题有单纯形法这一通用的方法,非线性规划目前还没有适合于各种问题的一般算法,各个方法都有自己特定的应用范围。
非线性规划的基本概念和基本原理第一节 非线性规划的数学模型例:某金属制品厂要加工一批容积为1米3的长方形容器,按规格要求,上下底的材料为25元/m2,侧面的材料为40元/m2,试确定长、宽、高的尺寸,使这个容器的成本最低。
设容器的长为1x ,宽为2x ,则高为211x x 。
根据题意得:⎪⎩⎪⎨⎧≥++=0,)](1[8050),(min 2121212121x x x x x x x x x x f 例:某公司经营两种设备,第一种设备每件售价30元,第二种设备每件售价为450元,根据统计,售出一件第一种设备所需营业时间平均为0.5小时,第二种设备为()225.02x +时,其中2x 是第二种设备的售出数量,已知该公司在这段时间内的总营业时间为800小时,试决定使其营业额最大的营业计划。
解:设该公司计划经营第一种设备为错误!未找到引用源。
件,第二种设备为错误!未找到引用源。
件,根据题意得:⎪⎩⎪⎨⎧≥≤+++=0,800)25.02(5.045030),(max 212212121x x x x x x x x x f 由这两个例子可以看出,这两个例子在高等数学中代表了两类不同类型的极值问题。
例1是无条件极值;例2是有条件极值。
如果令),,,(21n x x x X =是n 维空间)(n E上的点,则一般非线性的数学模型为:⎪⎩⎪⎨⎧=≥==l j X g m i X h X f ji ,,2,1 ,0)(,,2,1 ,0)()(min)(X f 为目标函数,)()(X g X h j i ,为约束条件,X 为自变量。
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/4d15d52bcbaedd3383c4bb4cf7ec4afe04a1b18c.png)
非线性规划什么是非线性规划?非线性规划(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. 分类方法分类方法是一种将非线性规划问题分解为若干个子问题求解的方法。
它将原始的非线性规划问题分解为多个子问题,然后将每个子问题分别求解,并逐步逼近原始问题的最优解。
以上仅是非线性规划求解方法的一小部分,实际上还有很多其他的方法和技巧可供选择。
在实际应用中,选择合适的方法和工具是非常重要的。
非线性规划的应用非线性规划在实际生活和工程中有着广泛的应用。
《非线性规划》课件
![《非线性规划》课件](https://img.taocdn.com/s3/m/fb432d7a590216fc700abb68a98271fe900eaf52.png)
非线性规划的约束条件
非线性规划的约束条件是指限制问题解的一组方程或不等式。这些约束条件可以包括物理限制、资源约 束和行为限制等。
非线性规划的求解方法
线性化方法
将非线性问题转化为等价的 线性问题,然后使用线性规 划方法求解。
牛顿法
使用牛顿迭代法逐步逼近最 优解。
拟牛顿法
使用近似Hessian矩阵的方法 优化牛顿法。
变尺度法、全局优化方法
1
变尺度法
通过改变尺度,将问题转化为更易求解的形式。
2
全局优化方法
使用启发式算法寻找全局最优解。
非线性规划的应用领域
生产计划问题
优化生产计划,提高效率和利润。
交通运输问题
优化交通网络和运输流程。
优化电力系统
使电力系统运行更加高效和可靠。
决策支持系统
为决策者提供优化建议和决策支持。
医资源分配和治疗方案。
非线性规划的挑战
复杂的问题结构和求解困难。
未来的研究方向
未来的研究方向包括改进算法性能、适用于大规模问题的方法和考虑不确定性的优化模型等。
《非线性规划》PPT课件
在这个《非线性规划》PPT课件中,我们将深入探讨非线性规划的各个方面, 并介绍其在不同领域的应用。让我们一起开启这个激动人心的学习之旅!
什么是非线性规划?
非线性规划是一种在优化问题中寻找最优解的数学方法。它处理的是有非线 性约束条件和目标函数的优化问题。
非线性规划的优化目标
非线性规划基本概念
![非线性规划基本概念](https://img.taocdn.com/s3/m/77154524a88271fe910ef12d2af90242a895ab3d.png)
序列二次规划法原理及步骤
• 原理:序列二次规划法是一种迭代求解非线性规划问题的方法。它在每次迭代中构造一个二次规划子问题,通 过求解该子问题得到原问题的一个近似解,然后利用该近似解的信息构造下一个二次规划子问题,如此循环直 至收敛到最优解。
序列二次规划法原理及步骤
2. 求解二次规划子问题,得到近 似解。
与线性规划不同,非线性规划中的目标函数或约 束条件至少有一个是非线性的。
非线性规划问题通常更加复杂,需要采用特定的 算法和工具进行求解。
非线性规划重要性
01
广泛适用性
非线性规划在各个领域都有广泛 应用,如经济、金融、工程、管 理等。
02
解决复杂问题
03
推动技术进步
非线性规划能够处理涉及复杂非 线性关系的问题,提供更精确的 解决方案。
THANKS
感谢观看
REPORTING
https://
VS
5. 判断终止条件
若满足终止条件,则停止迭代,输出当前 迭代点作为近似最小值点;否则,返回步 骤2继续迭代。
拟牛顿法原理及步骤
原理
1. 初始化
拟牛顿法是一种改进牛顿法的方法, 其基本思想是通过构造一个近似海森 矩阵的逆矩阵来避免直接计算海森矩 阵及其逆矩阵。拟牛顿法利用目标函 数的一阶导数信息来构造一个满足拟 牛顿条件的矩阵来逼近海森矩阵的逆 矩阵,从而在保证收敛速度的同时降 低了计算复杂度。
选择初始点 x0,设置迭代终止条件。 初始化拟牛顿矩阵 B0(或其逆矩阵 H0)。
2. 计算梯度
计算函数在 x0 处的梯度 g0 和 g1。
拟牛顿法原理及步骤
3. 求解搜索方向 通过解线性方程组 Bdp = -gp 或 Hdp = -gp 得到搜索方向 dp。
非线性规划课件
![非线性规划课件](https://img.taocdn.com/s3/m/3ef3b479366baf1ffc4ffe4733687e21af45ffd0.png)
②再固定x₂=x₂ (1): 求以x₁为单变量的目标函数的极值点,
得 X(2)=(x,(2),x₂ (1))T ,S(2)=f(X(2))
此时S(2)优于S(1), 且搜索区间缩短为x₁*∈[x,(2),b,],x₂*∈[x₂ (1),b₂] 第二步:如此交替搜索,直至满足给定精度ε为止
否则,继续缩短区间,
直至满足给定的精度为
①f(x₂)≥f(xq), 取[aq=ao,b,=x,]
X₁ =X2
x'2=b₁-λ(b₁-aq) ②f(x₂)<f(x₁), 取[a=x2,b,=b,]
x=aq+λ(b₁-aq)
10
x₂ =x₁
例 求 解 f(x)=-18x²+72x+28 的极大值点,δ≤0.1,起始搜索区间为[0,3] 解:①用间接法:令 f'(x)=-36x+72=0, 得驻点 x=2
xq*∈[aq,b,],x²*∈[a₂ ,b₂ ],.,x*∈[an,b,]
1、原理: ①从起点 X(0) 出发,沿平行于 x, 轴的方向P(1)进行一维搜索,
求得 f(X) 在该方向P(1)上近似极值点 X(1);
②从点 X(1) 出发,沿平行于 x₂ 轴的方向P(2)进行一维搜索,
求得 f(X) 在该方向P(2)上近似极值点 X(2); ③从点 X(2) 出发,照此交替进行下去,直至满足给定的精度ε为止
六、 寻优方法概述:
1、N.L.P.问题分类
① 无约束条件的NLP问题。 ② 有约束条件的NLP问题。 2、寻优方法
① 间接法(解析法):适应于目标函数有简单明确的数学表达式。
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/878766d2aef8941ea76e05a9.png)
非线性规划非线性规划(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 是。
第3-5章 非线性规划
![第3-5章 非线性规划](https://img.taocdn.com/s3/m/18f04b38af45b307e87197b4.png)
第3章 非线性规划基本知识3.1 非线性规划分类及举例前面两章,我们论述了线性规划及其扩展问题,这些问题的约束条件和目标函数都是关于决策变量的线性函数。
虽然大量的实际问题可以简化为线性规划及其扩展问题来求解,但是还有相当多的问题很难用线性函数加以描述。
如果目标函数或约束条件中包含有非线性函数,称为非线性规划问题。
非线性规划自20世纪70年代以来飞速发展;目前,已成为运筹学的一个重要分支,在管理科学、最优设计、系统控制等许多领域得到了广泛的应用。
非线性规划问题的求解要比线性规划问题的求解困难得多;而且也不象线性规划问题那样具有一种通用的求解方法(单纯形法)。
非线性规划没有能够适应所有问题的一般求解方法,各种方法都只能在其特定的范围内发挥作用。
本章主要内容:非线性规划基本概念,一维搜索。
3.1.1 非线性规划模型例3-1 (投资决策问题)某企业有n 个项目可供选择投资,并且至少要对其中一个项目投资。
已知该企业拥有总资金A 元,投资于第),,1(n i i =个项目需花资金i a 元,并预计可收益i b 元。
试选择最佳投资方案。
解 设投资决策变量为 ⎩⎨⎧=个项目不投资第,个项目投资第i 0i ,1x i ,n i ,,1 =,则投资总额为∑=ni ii xa 1,投资总收益为∑=ni ii xb 1。
因为该公司至少要对一个项目投资,并且总的投资金额不能超过总资金A ,故有限制条件 ∑=≤<ni ii A xa 1另外,由于),,1(n i x i =只取值0或1,所以还有 .,,1,0)1(n i x x i i ==-最佳投资方案应是投资额最小而总收益最大的方案,所以这个最佳投资决策问题归结为总资金以及决策变量(取0或1)的限制条件下,极大化总收益和总投资之比。
因此,其数学模型为:∑∑===ni ii ni ii xa xb Q 11maxs.t. ∑=≤<ni ii A xa 1.,,1,0)1(n i x x i i ==-例3-2 在层次分析(Analytic Hierarchy Process , 简记为 AHP )中,为了进行多属性的综合评价,需要确定每个属性的相对重要性,即它们各自的权重。
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/e434253083c4bb4cf7ecd19b.png)
返回
结束
非线性规划
解:确定决策变量
设 x i 表示第 i个季度的产量 ( i = 1,2,3 )。 约束条件: 1 ()每季度的最大生产能 力为100:x i ≤ 100( i = 1,2,3)
限制: (2 每季度的交货数量的 限制: ) 第一季度: 第一季度: x1 ≥ 40 第二季度: 第二季度:( x 1 − 40 ) + x 2 ≥ 60
料场位置为 ( h j , g j ),日储量为 e j , j = 1, 2 .
决策变量:
设 x ij 为从料场 j向工地 i的运送量 , j = 1, 2 .i = 1, 2 ,L ,6
返回 结束
非线性规划
在问题 ( 2)中, 两个新建料场的位置 ( h j , g j )也是决策变量 .
约束条件: (1 )各工地的日用量必须满 足 : ∑ x ij = d i ( i = 1, 2 ,L ,6 ).
一、模型的建立
返回
结束
非线性规划
[实例 某工厂向用户提供发动机,按合同规定,其交货 实例] 某工厂向用户提供发动机,按合同规定, 实例 数量和日期是:第一季度末交40台 第二季末交60台 数量和日期是:第一季度末交 台,第二季末交 台,第 三季末交80台 工厂的最大生产能力为每季100台,每季 三季末交 台。工厂的最大生产能力为每季 台 ),其中 的生产费用是 f ( x ) = 50 x + 0 .2 x 2 ( 元),其中 x 为该季生
返回
结束
非线性规划
练习题 飞行管理问题 在约10,000m高空的某边长160km的正方形区域内,经 常有若干架飞机作水平飞行。区域内每架飞机的位置和速 度向量均由计算机记录其数据,以便进行飞行管理。当一 架欲进入该区域的飞机到达区域边缘时,记录其数据后, 要立即计算并判断是否会与区域内的飞机发生碰撞。如果 会碰撞,则应计算如何调整各架(包括新进入的)飞机飞 行的方向角,以避免碰撞。现假定条件如下: 1)不碰撞的标准为任意两架飞机的距离大于8km; 2)飞机飞行方向角调整的幅度不应超过30度; 3)所有飞机飞行速度均为每小时800km;
非线性规划
![非线性规划](https://img.taocdn.com/s3/m/2971eb1d4b35eefdc8d333dd.png)
多项式 p(x) ax2 bx c 的插值结点。 这里a b c为待定系数.可用下述线形方程组确定.
p(x1 ) ax12 bx1 c f1
p(x2 )
axBiblioteka 2 2 bx2c
f2
p(x3 ) ax32 bx3 c f3
x1 a
计算函数值
x3 x3 b
x2
1 2
( x1
x3 )
f1 f (x1) f2 f (x2 ) f3 f (x3 )
ⅲ插值计算
x
* p
(a)若分母为零即 (x2 x3 ) f1 (x3 x1) f2 (x1 x2 ) f3 0 即
f2 f1 f3 f1 则说明三个插值点(x1, f1) (x2, f2 ) (x3, f3)在同一
向量化表示
令
g( x) ( g1 ( x),..., g p ( x))T
h( x) (h1 ( x),..., hp ( x))T ,
其中, g : R n R p , h : R n Rq ,那么(MP)可简记为
min f ( x)
s.t .
g(x) 0 或者min f ( x) x X
x b 2a
x*p
1 2
(x22 x32 ) f1 (x32 x12 ) f2 (x12 x22 ) f3 (x2 x3 ) f1 (x3 x1 ) f2 (x1 x2 ) f3
c1
f3 x3
f1 x1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章 非线性规划§1 非线性规划1.1 非线性规划的实例与定义如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。
一般说来,解非线性规划要比解线性规划问题困难得多。
而且,也不象线性规划有单纯形法这一通用方法,非线性规划目前还没有适于各种问题的一般算法,各个方法都有自己特定的适用范围。
下面通过实例归纳出非线性规划数学模型的一般形式,介绍有关非线性规划的基本概念。
例 1 (投资决策问题)某企业有n 个项目可供选择投资,并且至少要对其中一个项目投资。
已知该企业拥有总资金A 元,投资于第),,1(n i i 个项目需花资金i a 元,并预计可收益i b 元。
试选择最佳投资方案。
解 设投资决策变量为个项目决定不投资第,个项目决定投资第i i x i 0,1,n i ,,1 ,则投资总额为ni ii xa 1,投资总收益为ni ii xb 1。
因为该公司至少要对一个项目投资,并且总的投资金额不能超过总资金A ,故有限制条件ni iiA xa 1另外,由于),,1(n i x i 只取值0或1,所以还有 .,,1,0)1(n i x x i i最佳投资方案应是投资额最小而总收益最大的方案,所以这个最佳投资决策问题归结为总资金以及决策变量(取0或1)的限制条件下,极大化总收益和总投资之比。
因此,其数学模型为:ni iini iix a xb Q 11maxs.t.ni iiA xa 1.,,1,0)1(n i x x i i上面例题是在一组等式或不等式的约束下,求一个函数的最大值(或最小值)问题,其中至少有一个非线性函数,这类问题称之为非线性规划问题。
可概括为一般形式)(min x fq j x h j ,,1,0)(s.t.(NP)p i x g i ,,1,0)(其中T n x x x ][1称为模型(NP )的决策变量,f 称为目标函数,i g ),,1(p i 和),,1(q j h j 称为约束函数。
另外,0)( x g i ),,1(p i 称为等式约束,0)( x h j ),,1(q j 称为不等式的约束。
对于一个实际问题,在把它归结成非线性规划问题时,一般要注意如下几点: (i )确定供选方案:首先要收集同问题有关的资料和数据,在全面熟悉问题的基础上,确认什么是问题的可供选择的方案,并用一组变量来表示它们。
(ii )提出追求目标:经过资料分析,根据实际需要和可能,提出要追求极小化或极大化的目标。
并且,运用各种科学和技术原理,把它表示成数学关系式。
(iii )给出价值标准:在提出要追求的目标之后,要确立所考虑目标的“好”或“坏”的价值标准,并用某种数量形式来描述它。
(iv )寻求限制条件:由于所追求的目标一般都要在一定的条件下取得极小化或极大化效果,因此还需要寻找出问题的所有限制条件,这些条件通常用变量之间的一些不等式或等式来表示。
1.2 线性规划与非线性规划的区别如果线性规划的最优解存在,其最优解只能在其可行域的边界上达到(特别是可行域的顶点上达到);而非线性规划的最优解(如果最优解存在)则可能在其可行域的任意一点达到。
1.3 非线性规划的Matlab 解法Matlab 中非线性规划的数学模型写成以下形式 )(min x f)(0)(x Ceq x C Beq x Aeq BAx ,其中)(x f 是标量函数,Beq Aeq B A ,,,是相应维数的矩阵和向量,)(),(x Ceq x C 是非线性向量函数。
Matlab 中的命令是X=FMINCON(FUN,X0,A,B,Aeq,Beq,LB,UB,NONLCON,OPTIONS)它的返回值是向量x ,其中FUN 是用M 文件定义的函数)(x f ;X0是x 的初始值;A,B,Aeq,Beq 定义了线性约束Beq X Aeq B X A *,*,如果没有线性约束,则A=[],B=[],Aeq=[],Beq=[];LB 和UB 是变量x 的下界和上界,如果上界和下界没有约束,则LB=[],UB=[],如果x 无下界,则LB=-inf ,如果x 无上界,则UB=inf ;NONLCON 是用M 文件定义的非线性向量函数)(),(x Ceq x C ;OPTIONS 定义了优化参数,可以使用Matlab 缺省的参数设置。
例2 求下列非线性规划.0,0208)( min 212212212221x x x x x x x x x f(i )编写M 文件fun1.m function f=fun1(x); f=x(1)^2+x(2)^2+8; 和M 文件fun2.mfunction [g,h]=fun2(x); g=-x(1)^2+x(2);h=-x(1)-x(2)^2+2; %等式约束(ii )在Matlab 的命令窗口依次输入options=optimset('largescale','off');[x,y]=fmincon('fun1',rand(2,1),[],[],[],[],zeros(2,1),[], ... 'fun2', options)就可以求得当1,121 x x 时,最小值10 y 。
1.4 求解非线性规划的基本迭代格式 记(NP )的可行域为K 。
若K x *,并且 K x x f x f ),()(*则称*x 是(NP )的整体最优解,)(*x f 是(NP)的整体最优值。
如果有**,),()(x x K x x f x f则称*x 是(NP )的严格整体最优解,)(*x f 是(NP)的严格整体最优值。
若K x *,并且存在*x 的邻域)(*x N ,使 K x N x x f x f )(),()(**,则称*x 是(NP )的局部最优解,)(*x f 是(NP)的局部最优值。
如果有K x N x x f x f )(),()(**则称*x 是(NP )的严格局部最优解,)(*x f 是(NP)的严格局部最优值。
由于线性规划的目标函数为线性函数,可行域为凸集,因而求出的最优解就是整个可行域上的全局最优解。
非线性规划却不然,有时求出的某个解虽是一部分可行域上的极值点,但却并不一定是整个可行域上的全局最优解。
对于非线性规划模型(NP),可以采用迭代方法求它的最优解。
迭代方法的基本思想是:从一个选定的初始点nR x出发,按照某一特定的迭代规则产生一个点列}{k x ,使得当}{k x 是有穷点列时,其最后一个点是(NP)的最优解;当}{k x 是无穷点列时,它有极限点,并且其极限点是(NP)的最优解。
设nk R x 是某迭代方法的第k 轮迭代点,n k R x 1是第1 k 轮迭代点,记k k k k p t x x1(1)这里1,,1knkk pR p R t ,并且k p 的方向是从点k x 向着点1 k x 的方向。
式(1)就是求解非线性规划模型(NP)的基本迭代格式。
通常,我们把基本迭代格式(1)中的kp 称为第k 轮搜索方向,k t 为沿kp 方向的步长,使用迭代方法求解(NP)的关键在于,如何构造每一轮的搜索方向和确定适当的步长。
设0, p R x n,若存在0 ,使),0(),()( t x f tp x f , 称向量p 是f 在点x 处的下降方向。
设0, p R x n,若存在0 t ,使K tp x ,称向量p 是点x 处关于K 的可行方向。
一个向量p ,若既是函数f 在点x 处的下降方向,又是该点关于区域K 的可行方向,称之为函数f 在点x 处关于K 的可行下降方向。
现在,我们给出用基本迭代格式(1)求解(NP)的一般步骤如下:0° 选取初始点0x ,令0: k 。
1° 构造搜索方向,依照一定规划,构造f 在点kx 处关于K 的可行下降方向作为搜索方向kp 。
2° 寻求搜索步长。
以k x 为起点沿搜索方向kp 寻求适当的步长k t ,使目标函数值有某种意义的下降。
3° 求出下一个迭代点。
按迭代格式(1)求出k k k k p t x x 1。
若1k x已满足某种终止条件,停止迭代。
4° 以1k x 代替kx ,回到1°步。
1.5 凸函数、凸规划设)(x f 为定义在n 维欧氏空间)(n E 中某个凸集R 上的函数,若对任何实数)10( 以及R 中的任意两点)1(x 和)2(x ,恒有)()1()())1(()2()1()2()1(x f x f x x f 则称)(x f 为定义在R 上的凸函数。
若对每一个)10( 和R x x )2()1(恒有)()1()())1(()2()1()2()1(x f x f x x f 则称)(x f 为定义在R 上的严格凸函数。
考虑非线性规划},,2,1,0)(|{)( min l j x g x R x f j Rx 假定其中)(x f 为凸函数,),,2,1)((l j x g j 为凸函数,这样的非线性规划称为凸规划。
可以证明,凸规划的可行域为凸集,其局部最优解即为全局最优解,而且其最优解的集合形成一个凸集。
当凸规划的目标函数)(x f 为严格凸函数时,其最优解必定唯一(假定最优解存在)。
由此可见,凸规划是一类比较简单而又具有重要理论意义的非线性规划。
§2 无约束问题2.1 一维搜索方法当用迭代法求函数的极小点时,常常用到一维搜索,即沿某一已知方向求目标函数的极小点。
一维搜索的方法很多,常用的有:(1)试探法(“成功—失败”,斐波那契法,0.618法等);(2)插值法(抛物线插值法,三次插值法等);(3)微积分中的求根法(切线法,二分法等)。
考虑一维极小化问题)(min t f bt a (2)若)(t f 是],[b a 区间上的下单峰函数,我们介绍通过不断地缩短],[b a 的长度,来搜索得(2)的近似最优解的两个方法。
为了缩短区间],[b a ,逐步搜索得(2)的最优解*t 的近似值,我们可以采用以下途径:在],[b a 中任取两个关于],[b a 是对称的点1t 和2t (不妨设12t t ,并把它们叫做搜索点),计算)(1t f 和)(2t f 并比较它们的大小。
对于单峰函数,若)()(12t f t f ,则必有],[1*t a t ,因而],[1t a 是缩短了的单峰区间;若)()(21t f t f ,则有],[2*b t t ,故],[2b t 是缩短了的单峰区间;若)()(12t f t f ,则],[1t a 和],[2b t 都是缩短了的单峰。
因此通过两个搜索点处目标函数值大小的比较,总可以获得缩短了的单峰区间。