最优化理论与算法(第十章)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十章 罚函数法
罚函数是利用目标函数与约束函数一起构成的具有惩罚性质的函数。当约束条件被破坏时,施以惩罚,可以想象,当这种惩罚很大时,将迫使迭代点趋于可行点。
§10.1 外罚函数法
对一般非线性规划问题:
1min ()()01,
,. ()0
,
,i e
i e f x c x i m s t c x i m m
+==⎧⎨
≥=⎩ (10.1)
定义违反约束度函数:
()()()1,
i i e c x c x i m -== (10.2)
()1()min{0,()} ,
m i i e c x c x i m -+==。 (10.3)
罚函数一般表示为: ()
()()(())P x f x h c x -=+ (10.4)
其中()
(())h c
x -是惩罚项,这个函数一般具有
(0)0h =,lim ()c h c →+∞
=+∞。
较常用的形式为: ()
()()()P x f x c x α
σ-=+ (0σ>称为罚因子) (10.5)
注:1) 在上式中,范数常取为
2
,若取为
∞
或
1
会导致()P x 不光滑。
2) 当取
2
和1α>时,()P x 的光滑性可由
()22(())(min{0,()})i c x c x -=
直接验证。事实上,在“转折点”处,可证得左、右导数均为0,由此可得()
2(())c
x -光滑性,从而
()P x 光滑。
Courant 函数是最早使用的罚函数,也是最方便最重要的一种罚函数。其形式为
2
()
2
(,)()()p x f x c x σσ-=+
1
2
21`
()()(min{0,()})e e m m
i i i m f x c x c x σσ+==++∑∑ (10.6)
以下考虑一般的罚函数问题
()
(,)()()p x f x c x α
σσ-=+ (10.7)
并且以后总用()x σ表示罚问题
()min n
x R
P x σ∈ 的解。
引理1 设210σσ>>,则必有
21(())(())f x f x σσ≥
()()21(())(())c x c x σσ--≤。
注:随着罚因子的增大,惩罚的力度加大,()x σ将越来越靠近可行域(相当于取点范围不断减小),自然(())f x σ会不断增加。
引理2 令()(())c x δσ-=,则()x σ是约束问题
()
min ().. ()n
x R
f x s t c x δ
∈-≤ (10.8)
的最优解。
证明:用反证法证明。若不然,容易构造出一个关于罚函数问题更好的解,导致矛盾。
由于原问题等价于
()
min ().. ()0
n
x R
f x s t c x ∈-= (10.9)
而当δ很小时,(10.8)是(10.9)的近似,从而()x σ可看成是原问题的近似解。特别地,当
()(())0c x σ-=时,()x σ是原问题的精确解。
罚函数法的基本思想是:每次迭代增大罚因子σ,直到()
()c
x -缩小到给定的范围内。由于
要求解一系列无约束问题,故也称为SUMT 外点法(Sequential Unconstrained Minimization Technique)。
外罚函数算法
1) 给出1n
x R ∈,10σ>,0ε≥,1k =。
2) 利用初始值k x ,求解无约束问题(罚函数问题)min ()n
k x R
P x σ∈得到()k x σ。
3) 若()(())k c x σε-≤,停止,得近似解()k x x σ*
=;否则 1()k k x x σ+=;110k k σσ+=;
1k k =+;转2)
关于此算法有如下收敛性结果: 定理10.1 若算法中允许误差ε满足
()min ()n
x R c x ε-∈>
则算法必有限终止。
证明:若定理不成立,则必有k σ→+∞,且对一切k 都有
()()()k c x σε-> (10.10)
而由定理条件,存在ˆn
x
R ∈,使得
()ˆ()c x
ε-< (10.11) 由于 ()()ˆˆ()()(())(())
k k k k f x c x
f x c x α
α
σσσσ--+≥+
()1(())(())
k k f x c x α
σσσ-≥+
[]()()11
ˆˆ0()(())
(())()0k k
c x
c x f x f x
α
α
σσσ--≥-≥
-→ 这与(10.10),(10.11)两式矛盾,原定理得证。
注:由此定理知,若问题有可行点,则对任给的0ε>,算法都必有限终止于问题的解,且
()(())k c x σδε-=≤。
定理10.2 如果算法不有限终止,则必有()
min ()n
x R
c x ε-∈≥,且
()
()
lim (())min ()n
k k x R
c
x c x σ--→∞∈= 而{}()k x σ的任何聚点x *
都是问题
()()
min ().. ()min ()n
n
x R
y R
f x s t c x c y ∈--∈= (10.12)
的解。
由上述两定理直接得到如下推论:
推论 设原问题有可行解,则算法或有限终止于一个近似解,或产生的点列{}k x 其任何聚点都是原