11二次规划与割平面法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十一章 二次规划与割平面法
本章主要内容:等式约束二次规划问题的起作用集方法 Wolfe 算法 Lemke 算
法 割平面法
教学目的及要求:了解等式约束二次规划问题的起作用集方法、Wolfe 算法、
Lemke 算法、割平面法。
教学重点:等式约束二次规划问题的起作用集方法. 教学难点:等式约束二次规划问题的起作用集方法. 教学方法:启发式.
教学手段:多媒体演示、演讲与板书相结合. 教学时间:2学时. 教学内容:
§11.1 等式约束二次规划问题
等式约束二次规划问题可表为
1min ();
2,
T T
f x x Qx c x Ax b ⎧=+⎪⎨
⎪=⎩s.t. (11.1.1) 其中n n Q R ⨯∈且对称,,,n m m n c R b R A R ⨯∈∈∈且不妨设rank A m n =<.下面介绍求解问题(11.1.1)的两种方法. 一、直接消去法
求解问题(11.1.1)最简单又最直接的方法就是利用约束来消去部分变量,从而把问题转化成无约束问题,这一方法称为直接消去法.
将A 分解为(,)A B N =,其中B 为基矩阵,相应地,将,,x c Q 作如下分块
11122122,,B B N N x c Q Q x c Q x c Q Q ⎛⎫⎛⎫⎛⎫=== ⎪ ⎪ ⎪⎝⎭⎝⎭⎝⎭
,
其中11m m Q R ⨯∈.这样,问题(11.1.1)的约束条件变成
B N Bx Nx b +=,
即得
11B N x B b B Nx --=-,
代入()f x 中就得到与问题(11.1.1)等价的无约束问题
21ˆ
ˆmin ()2
T T N N N N N x x Q x c x ϕ=
+,
(11.1.2) 其中
1111222211211
ˆ()()T T T T Q Q Q B N N B Q N B Q B N ----=--+, 1112111ˆ()(())T T T T N N B c
c N B c Q N B Q B b ---=-+-. 如果2ˆQ 正定,则问题(11.1.1)的最优解显然为12ˆˆN N x Q c -=-,这时,问题(11.1.1)的最优解为
111
2ˆˆ0B N N x B b B N x Q c
x I ---⎛⎫⎛⎫⎛⎫==+ ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭
, 记点x 处的Lagrange 乘子为v ,则有()T A v f x Qx c =∇=+,故知
11112()()T
B N
B v B Q x
Q x c
-=++. 如果2ˆQ 半正定且问题(11.1.2)无下界,或2
ˆQ 有负特征值,则不难证明问题(11.1.1)不存在有限解.
例1 求解二次规划问题
222
123123123min ();24,
2.f x x x x x x x x x x ⎧=++⎪
+-=⎨⎪-+=-⎩
s.t. (11.1.3) 解 将约束写成
12312
324,
2.x x x x x x +=+⎧⎨
-=--⎩ 用高斯消元法求得
132312
,233
x x x x =-=+, (11.1.4)
代入()f x 中可得等价的无约束问题233
3148
min ()493
x x x ϕ=++, 其中228ˆ9Q ⎛⎫= ⎪⎝⎭显然正定,故令3()0x ϕ∇=,求得367x =-,代入(11.1.4)式中得12210
,77
x x ==.因此,问题(11.1.3)有唯一的最优解
1232106
(,,)(,,)777
T T x x x x ==-.
再利用T A v Qx c =+即
12112002/72102010/7110026/7v v ⎛⎫⎛⎫⎛⎫⎛⎫ ⎪ ⎪⎪-= ⎪ ⎪ ⎪⎪⎝⎭ ⎪ ⎪⎪--⎝⎭⎝⎭⎝⎭
, 可求得1284
,77
v v ==-.
直接消去法思想简单明了,使用方便.不足之处是B 可能接近一个奇异方阵,从而引起最优解x 的数值不稳定. 二、Lagrange 乘子法
求解问题(11.1.1)的另一种方法是Lagrange 乘子法.问题(11.1.1)的Lagrange 函数为
1(,)()2
T
T T L x v x Qx c x v Ax b =
+--. 令
(,)0,(,)0x v L x v L x v ∇=∇=,
得到K-T 条件
0,0T Qx c A v Ax b +-=-=,
写成矩阵形式,有
0T x c Q A v b A ⎛⎫-⎛⎫⎛⎫
=- ⎪ ⎪ ⎪-⎝⎭
⎝⎭⎝⎭, (11.1.5)
其系数矩阵称为Lagrange 矩阵,它是对称的但不一定正定. 若上述Lagrange 矩阵可逆,则可表为
1
0T T
H R Q A R G A --⎛⎫-⎛⎫
= ⎪ ⎪--⎝⎭
⎝⎭
, (11.1.6) 从而,由(11.1.5)式可得问题(11.1.1)的最优解
,
.T
x Hc Rb v R c Gb =-+⎧⎨=-⎩
(11.1.7) 当1Q -存在时,由(11.1.6)式可得H 、R 、G 的表达式为
11111()T T H Q Q A AQ A AQ -----=-,
111()T T R Q A AQ A ---=,
11()T G AQ A --=-.
下面给出x 和v 的另一种表达式.
设0x 是问题(11.1.1)的任一可行解,即0Ax b =,在点0x 处目标函数的梯度
00()f x Qx c ∇=+,
则(11.1.7)式可改写为
000(),
().T
x x H f x v R f x =-∇⎧⎪⎨=∇⎪⎩
(11.1.8) 例2 用Lagrange 乘子法求解问题
222123312123123min 22;4,
2 2.x x x x x x x x x x x x ⎧+++-⎪
++=⎨⎪-+=⎩
s.t. (11.1.9) 解 易知
22001114240,0,,21120021Q c A b -⎛⎫⎛⎫
⎛⎫⎛⎫ ⎪ ⎪
=-=== ⎪ ⎪ ⎪ ⎪-⎝⎭⎝⎭ ⎪ ⎪
⎝⎭⎝⎭
.
显然,Q 可逆且
111/201/21/20001/2Q -⎛⎫
⎪= ⎪ ⎪⎝⎭
,
因此按上述,,H R G 的表达式可得
51/21/43/43/43/43
44421/41/83/8,7/41,511111133/43/89/81/41/42
H R G ⎛⎫
-⎛⎫⎛⎫- ⎪ ⎪ ⎪=-=-=-
⎪ ⎪ ⎪ ⎪ ⎪ ⎪--- ⎪⎝⎭⎝⎭⎝⎭
, 从而,问题(11.1.9)的最优解为
21433(
,,)112222
T
x Hc Rb =-+=.
§11.2 起作用集方法
考虑具有不等式约束的二次凸规划问题
1min ();2,
T T f x x Qx c x Ax b ⎧
=+⎪
⎨
⎪≥⎩s.t. (11.2.1) 其中n n Q R ⨯∈且对称正定,,,n m m n c R b R A R ⨯∈∈∈且不妨设rank A m =.
运用起作用集方法的关键是,在每次迭代中,都以已知的可行点为起点,把在该点起作用的约束作为等式约束,而把在该点不起作用的约束暂时去掉不考虑,在新的约束条件下极小化目标函数,求得新的比较好的可行点后,再重复以上步骤.这样,可把问题转化为有限个仅带等式约束的二次凸规划来求解.具体分析如下:
设在第k 次迭代中,已知可行点k x ,在该点起作用的约束指标集用k I 表示.这时需要求解等式约束问题
min ();
,,T
i i k f x a x b i I ⎧⎨=∈⎩
s.t. (11.2.2) 其中i a 是矩阵T A 的第i 列元素构成的n 维向量.
为方便起见,现将坐标原点移至k x 处,令k k d x x =-,则
1
()()()()2T T k k k k k k f x d x Q d x c d x =
++++ 1122T T T T T k k k k k k k k d Qd d Qx x Qx c d c x =++++ 1()()2
T T k k k k k d Qd f x d f x =+∇+. 于是,问题(11.2.2)转化为求校正量k d 的问题
1min ();20,,
T T k k k k T i k k d Qd f x d a d i I ⎧+∇⎪
⎨
⎪=∈⎩
s.t. (11.2.3) 用11.1节解等式约束的二次规划问题的方法求解问题(11.2.3),其最优解仍记为k d .根据不同情形,采用下列相应的步骤:
(1)若k k x d +是可行点且0k d ≠,则在第1k +次迭代中,取迭代点为
1k k k x x d +=+.
(2)若k k x d +不是可行点,则取搜索方向为k d ,并令1k k k k x x d λ+=+,其中k λ为步长.按保持可行性的要求,步长k λ的取值应使得对于任意k i I ∉都有
()T i k k k i a x d b λ+≥. (11.2.4)
由于k x 是可行点,T i k i a x b ≥,因此当0T i k a d ≥时,对任意的非负数k λ,(11.2.4)式总成立;
在第1k +次迭代中,取迭代点为1k k k x x d +=+.当0T i k a d <时,只要取正数
min ,0T
T
i i k k k i k T i k b a x i I a d a d λ⎧⎫-⎪⎪≤∉<⎨⎬⎪⎪⎩⎭
,
则对于每个k i I ∉,(11.2.4)式总成立.为了在第k 次迭代中得到较好的可行点,应进一步取min{1,}k k λλ=,其中k λ为上式的右端项.若存在k p I ∉使得
1T p p k
k T p k
b a x a d λ-=
<,则在点1k x +处有
1()T T p k p k k k p a x a x d b λ+=+=.
这说明,在点1k x +处,T p p a d b ≥为起作用约束.因此,应把指标
p 加入点1k x +处的有效约束指标集1k I +中,即令{}1k k I I p += .
(3)若0k d =,则k x 为问题(11.2.2)的最优解.下面,进一步判断k x 是否为问题(11.2.1)的最优解.为此,需用公式(11.1.8)计算出所有起作用约束的Lagrange 乘子(),k i k v i I ∈.
若()0,k i k v i I ≥∈,则k x 是问题(11.2.1)的K-T 点,又由于问题(121.2.1)是凸规划,因此k x 就是其最优解;
若存在k q I ∈,使得()
0k q v <,则k x 不可能是问题(11.2.1)的最优解.因为可以验证,当()
0k q v <时,在点k x 处存在可行下降方向.因此,取
()()min{|}k k r i k v v i I =∈,并令{}1\k k I I r +=,再解问题(11.2.3)
. 算法11-1(起作用集法)
Step1 选取初始数据.给定初始可行点1x ,相应的起作用约束指标集为1I ,令1k =.
Step2 求解等式约束问题.求解问题(11.2.3),设其最优解为k d .若0k d =,则转Step4 ;否则,令1min{1,},k k k k k k x x d λλλ+==+,计算1()k f x +∇,转Step3.
Step3 修改起作用约束指标集.若1k λ<,则令{}1,:1k k I I p k k +==+ ,返回Step2;若1k λ=,则令:1k k =+,转Step4.
Step4 检查是否满足终止准则.用公式(11.1.8)计算出所有起作用约束对
应的Lagrange 乘子(),k i k v i I ∈,记()()m in {|}k k r i k v v i I =∈.若()
0k r
v ≥,则迭代终止,k x 为约束问题(11.2.1)的最优解;否则,从k I 中删除指标r ,返回Step2.
§11.3 Wolfe 算法
考虑二次凸规划问题
1min ();2,
0,T T
f x x Qx c x Ax b x ⎧=+⎪⎪
=⎨⎪≥⎪⎩
s.t. (11.3.1) 其中Q 为n 阶半正定矩阵,,,n m m n c R b R A R ⨯∈∈∈且不妨设rank A m =.易知,问题(11.3.1)的形式并不失一般性.
首先研究一下问题(11.3.1)的最优性条件.问题(11.3.1)的最优解x 为K-T 点,即存在,v u 使得
,,
0,0,0.T T
Qx A v u c Ax b u x u x ⎧--=-⎪
=⎪⎨=⎪⎪≥≥⎩
(11.3.2) 若把(11.3.2)式中的非线性部分T u x 作为目标函数,(11.3.2)式中的线性部分作为约束条件,则可得到具有线性约束的非线性最优化问题
min ;,
,0,0.T T u x Qx A v u c Ax b u x ⎧⎪
--=-⎪⎨
=⎪⎪≥≥⎩
s.t. (11.3.3) 设x y v u ⎛⎫ ⎪
= ⎪ ⎪⎝⎭
是问题(11.3.3)的最优解,若满足0T u x =,则其中的x 必为问
题(11.3.1)的最优解.因此,问题归结为求问题(11.3.3)的最优解.
为了使所有变量都具有非负限制,令v v v +-=-,则问题(11.3.3)中的前两个约束条件成为
000T T
n x A v b I Q v c A
A u +-⎛⎫ ⎪⎛⎫⎛⎫ ⎪= ⎪ ⎪ ⎪---⎝⎭
⎝⎭ ⎪⎝⎭
, (11.3.4) 后两个约束条件成为
0,0,0,0x v v u +-≥≥≥≥. (11.3.5)
要求问题(11.3.3)的最优解,我们将先求(11.3.4)满足式(11.3.5)的基本解,为此特引入人工变量y .具体步骤如下:
(1)先用单纯形法的第一阶段法求得满足,0Ax b x =≥的解,记所得解的基变量为B x ,非基变量为0N x =.
(2)确定对角阵()j ij E δ=∆,其中j ∆为1或1-,ij δ满足
1,,
0,.ij i j i j δ=⎧=⎨≠⎩
其意义是:在(11.3.4)式中引入人工变量y 后得到
0000T T
n x v
A b v I Q E c A
A u y +-⎛⎫
⎪ ⎪⎛⎫⎛⎫
⎪= ⎪ ⎪--- ⎪⎝⎭
⎝⎭ ⎪ ⎪⎝⎭
, (11.3.6)
且当x 用(1)中求得的解代入时,若0v v u +-===,则必有0y ≥.
记(1)中A 的分解为(,)A B N =,其中B 为可行基.相应地,将Q 分解为
(,)B N Q Q Q =,则E 应满足
B B Q x Ey c +=-, (11.3.7)
且其中的人工变量12(,,,)T n y y y y = 非负.
记B Q 中的列向量依次为12,,,m q q q ,则(11.3.7)式等价于
(),1
,2,,T j j j j B y c q x j n ∆=-+= . 因此,E 中j ∆的选取规则为
1,0,1,0.
T
j j B j T
j j B c q x c q x ⎧-+>⎪
∆=⎨+≤⎪⎩ (3)在约束(11.3.6)式和约束
0,0,0,0,0,0T x v v u y u x +-≥≥≥≥≥= (11.3.8)
下极小化线性目标函数1n
i i y =∑.
对于上述线性规划问题,可采用单纯形法求解.但必须注意,进行旋转变换时,要求0T u x =,即当某个0j x >时,j u 不允许进入基变量.旋转变换直到
1
0n
i
i y
==∑时结束,此时得到的x 即为二次凸规划问题(11.3.1)的最优解.
例3 用Wolfe 算法求解二次凸规划问题
21211231241234min ()2;
236,
24,,,,0.f x x x x x x x x x x x x x x ⎧=--+⎪
++=⎪⎨
++=⎪⎪≥⎩
s.t. (11.3.9) 解 易知2
00020
000123106,,,00000222040
00
00Q c A b -⎛⎫⎛⎫ ⎪ ⎪-⎛⎫⎛⎫
⎪ ⎪==== ⎪ ⎪ ⎪ ⎪⎝⎭⎝⎭ ⎪ ⎪⎝⎭⎝⎭
. 首先确定满足,0Ax b x =≥的一个解,显然可取(3/2,1,0,0)T x =,确定
()j ij E δ=∆.由于
220110
03/2100010
00
00B B c Q x -⎛⎫⎛⎫⎛⎫ ⎪ ⎪ ⎪--⎡⎤ ⎪
⎪ ⎪
+=+=⎢⎥ ⎪ ⎪ ⎪⎣⎦ ⎪ ⎪ ⎪⎝⎭⎝⎭⎝⎭
, 故12341,1∆=-∆=∆=∆=,因此
1
000010000100
00
1E -⎡⎤⎢⎥⎢
⎥=⎢⎥⎢⎥⎣⎦
. 下面,要利用单纯形法在约束(11.3.6)和(11.3.8)下极小化目标函数
4
1i i z y ==∑.表11.3.1中给出了初始数据,为了得到初始单纯形表,表11.3.1的最
后一行对应于目标函数z 中变量系数的反号.
表11.3.1 例3的初始数据表
经过初等行变换,得到以121234,,,,,x x y y y y 为基变量的初始单纯形表11.3.2.
表11.3.2 例3的第一轮迭代后的初始单纯形表
由于1v -对应的检验数2最大,故以1v -为进基变量,显然,3y 为离基变量,进行{5,7}旋转变换,得单纯形表11.3.3.
表11.3.3 例3的第二轮迭代后的单纯形表
现在是4x 对应的检验数最大,故以4x 进入基变量取代1y ,进行{3,4}旋转变换,得单纯形表11.3.4.
表11.3.4 例3的第三轮迭代后的单纯形表
在表11.3.4中,按Dantzig 规则(见算法4-1),下一步应让3u 进入基变量取代2y ,由于30x =,不违反约束330T u x u x ==,故可以进基.进行相应的旋转变换后,得单纯形表11.3.5.
表11.3.5 例3的第三轮迭代后的单纯形表
从表11.3.5右下角的数值知,此时目标函数4
1
0i i z y ===∑,因此,所求的二
次凸规划问题(11.3.9)的最优解为(2/3,14/9,0,10/9)T x =.
定理11.3.1 若问题(11.3.1)中二次目标函数的Hesse 阵Q 是正定的,则用Wolfe 算法必可求得其最优解,即在条件0T u x =下用单纯形法求解问题
1min (11.3.6),(11.3.8)n i i y =⎧⎫
⎨⎬⎩⎭
∑式式时,必能使1n
i i y =∑达到零值.
一般来说,当Q 是半正定阵时,Wolfe 算法有失败的可能.这时,可将主对角线上的元素作微小扰动,以Q I ε+(0ε>很小)取代Q 后,再利用Wolfe 算法.
§11.4 Lemke 算法
考虑二次规划问题
1min ();2,
0,T T
f x x Qx c x Ax b x ⎧=+⎪⎪
≥⎨⎪≥⎪⎩
s.t. (11.4.1) 其中n n Q R ⨯∈且对称,,,n m m n c R b R A R ⨯∈∈∈,不妨设rank A m =.
引入乘子u 和v ,定义Lagrange 函数
(,,)()()T T L x u v f x u Ax b v x =---.
再引入松弛变量(向量)0y ≥,使Ax y b -=.这样,问题(11.4.1)的K-T 条件为
,,0,
0,0,0,0,0,
T T
T Qx A u v c y Ax b v x y u u v x y ⎧--=-⎪
-=-⎪⎪=⎨⎪=⎪⎪≥≥≥≥⎩ (11.4.2) 用矩阵形式表为
ˆ,0,0,
w Mz b
w z ⎧-=⎪⎨
≥≥⎪⎩ (11.4.3) 及
0T w z =, (11.4.4)
其中ˆ,,,0T v x c Q A w z M b y u b A
⎛⎫-⎛⎫⎛⎫
⎛⎫==== ⎪ ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭⎝⎭.
,w z 和ˆb
均为m n +维向量,M 为m n +阶矩阵.求满足(11.4.3)式和(11.4.4)式的解w z ⎛⎫
⎪⎝⎭的问题称为线性互补问题,(11.4.4)式称为互补条件.显然,(11.4.4)
式等价于
0,1,2,,j j w z j m n ==+ . (11.4.4a )
设w z ⎛⎫
⎪⎝⎭是线性互补问题的一个解,则由(11.4.4a )式知,其2()m n +个分量中至少有m n +个分量等于0,而且每个互补变量对(,)j j w z 中至少有一个变量取零值.因此,下面给出互补基本可行解的概念.
定义 设w z ⎛⎫
⎪⎝⎭是问题(11.4.3)的一个基本可行解,且每个互补变量对
(,)(1,2,,)j j w z j m n =+ 中只有一个变量是基变量,则称w z ⎛⎫
⎪⎝⎭是线性互补问题
(11.4.3)和(11.4.4a )的一个互补基本可行解,简称CBF 解.
这样,求二次规划K-T 点的问题就转化为求线性互补问题的CBF 解.下面,介绍求CBF 解的Lemke 算法.分两种情况讨论:
(1)若ˆ0b ≥,则ˆ0w b z ⎛⎫⎛⎫= ⎪ ⎪ ⎪⎝⎭⎝⎭
就是一个CBF 解; (2)若ˆ0b ≥/,则引入人工变量0z ,使(11.4.3)式变成
00ˆ,0,0,0,1,2,,,
j j w Mz z e b
z w z j m n ⎧--=⎪⎨
≥≥≥=+⎪⎩ (11.4.5)
其中(1,1,,1)T m n e R +=∈ .显然,若0w z z ⎛⎫ ⎪
⎪ ⎪⎝⎭
是线性互补问题(11.4.4a )和(11.4.5)
的可行解且00z =,则w z ⎛⎫
⎪⎝⎭
就是所求的CBF 解.
为叙述方便起见,我们先引入准互补基本可行解的概念.
定义 设0w z z ⎛⎫ ⎪
⎪ ⎪⎝⎭是线性互补问题(11.4.4a )和(11.4.5)的可行解且满足:
(1)0w z z ⎛⎫ ⎪
⎪ ⎪⎝⎭
是(11.4.5)的基本可行解;
(2)存在{1,2,,}s m n ∈+ ,使得s w 和s z 都不是基变量;
(3)每个互补变量对(,)(1,2,,,)j j w z j m n j s =+≠ 中恰有一个变量是基变量且0z 是基变量.
则称0w z z ⎛⎫ ⎪
⎪ ⎪⎝⎭
是线性互补问题(11.4.4a )和(11.4.5)的准互补基本可行解,简称ACBF
解.
下面,用单纯形法求ACBF 解. 首先,若令
0ˆˆmax{|1,2,,}0j s z b j m n b =-=+=-> , ˆˆ0,0s
z w b b e ==-≥, 则0w z z ⎛⎫
⎪
⎪ ⎪⎝⎭
是一个ACBF 解,其中()j w j s ≠和0z 是基变量,其余变量为非基变量. 以上述0w z z ⎛⎫ ⎪
⎪ ⎪⎝⎭
为初始解,用单纯形法求新的ACBF 解,力图通过这种方法迫
使0z 变成非基变量.为保证可行性,选择主元时要求遵守下面两条规则:
(1)按照单纯形法中的Dantzig 规则确定离基变量(见算法4-1); (2)若j w (或j z )离基,则j z (或j w )进基.
这样将实现从一个ACBF 解到另一个ACBF 解的转换,直至得到一个CBF 解即0z 变成非基变量,或者得出由约束(11.4.4a )和(11.4.5)所定义的可行域无界的结论.
下面,给出求CBF 解的Lemke 算法的具体步骤. 算法11-2(Lemke 算法)
Step1 若ˆ0b ≥,则停止计算,ˆ0w b z ⎛⎫⎛⎫= ⎪ ⎪ ⎪⎝⎭⎝⎭
是CBF 解;否则,用表格形式表示出(11.4.5)式中的第一个约束.记
ˆˆmax{|1,2,,}s j
b b j m n -=-=+ , 取第s 行为主行,0z 对应的列为主列,将0z 换入基变量取代s w ,对初始表进行旋转变换后得新表,并令s s y z =,转Step2.
Step2 设现行表中变量s y 即变量s z 下面的列为s d ,若0s d ≤,则停止计算,得到问题(11.4.5)的可行域的极方向;否则,按Dantzig 规则确定指标r ,使
()()()
min 0,1,2,,j s r j s s r j p p d j m n d d ⎧⎫⎪⎪
=>=+⎨⎬⎪⎪⎩⎭
, 其中j p 为当前表格中右端第j 个元素,即第j 个基变量的当前值,()s j d 为向量s d 的第j 个分量.若第r 行对应的基变量为0z ,则转Step4;否则,转Step3.
Step3 这时第r 行的基变量为l w 或()l z l s ≠,将该基变量作为离基变量,s
y 作为进基变量,进行旋转变换后得新表。
若离基变量是l w ,则令s l y z =;若离基变量是l z ,则令s l y w =,返回Step2.
Step4 这时,变量s y 进基,变量0z 出基,进行旋转变换后,所得新表中0z 为非基变量,故停止计算,得到一个CBF 解.
§11.5 割平面法
考虑二次规划问题
min ();()0,1,2,,,
0,
T i f x c x g x i m x ⎧=⎨
≥=≥⎩ s.t. (11.5.1)
其中,()(1,2,,n
i c R g x i m ∈= 是可微的凹函数.问题的可行域记作
{|()0,1,2,,}i S x g x i m =≥= ,显然,S 为凸集.
算法11-3(割平面法)
Step1 选取初始数据.给定初始多胞形1{|0}S x Ax b =-≥,使得1S S ⊆且目标函数T c x 在1S 上有界,设允许误差0ε>,令1k =.
Step2 求解线性规划问题.求解问题min ;
.
T k c x x S ⎧⎨∈⎩s.t.设其最优解为k x .
Step3 寻找k x 处的最小约束函数.确定一个下标(1)k k i i m ≤≤,使得
1()mi n ()k i k i k i m
g x g x ≤≤=,若存在多个,任选其一.
Step4 检查是否满足终止准则.若()k i k g x ε>-,则停止计算,k x 即为原凸规
划
问
题
的
近
似
最
优
解
;
否
则
,
令
1{|()()()0},:1k k T k k i k i k k S S x g x g x x x k k +=+∇-≥=+ ,返回Step2.
值得注意的是,算法的Step1中要选取包含S 在内的初始多胞形1S ,一般可采用以下两种方法:
(1)选取较简单的多胞形1S (比如充分大的正方体)包含S ,使所得的线性规划问题有解且易求解;
(2)若对可行域S 的大小难以估计,可先在S 中任选一点0x ,在0x 处对所有()i g x 利用Taylor 展开式可得000()()()(),1,2,,T i i i g x g x g x x x i m ≈+∇-= . 再取1000{|()()()0,1,2,,}T i i S x g x g x x x i m =+∇-≥= ,易证1S S ⊆.
定理11.5.1 设凸规划问题(11.5.1)满足 (1)()(1,2,,)i g x i m = 是连续可微的凹函数;
(2)在迭代步骤中,确定的一系列线性规划问题min ;
.
T k c x x S ⎧⎨∈⎩s.t.的最优解k x 均
存在, 则有
(1)若存在某个k 使k x S ∈,则k x 即为问题(11.5.1)的最优解;
(2)若情形(1)总不发生,则得到点列{}k x ,其任意极限点都是问题(11.5.1)的最优解.。