一、惩罚函数法(SUMT)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(4)应注意的问题
(a) 在step2中,可用无约束优化问题的算法求解
min
x R n
k
(
x
)
f ( x ) k p( x )
(b) 在实际计算中,判断x* (k ) D 用 g j ( x* (k )) ( j 1,2,, m)或 k p( x) .
(c)
k 1 k
x
)
算法步骤相同
(8) 算法收敛性:
f(x ) f(x )
k 1
k
p(x ) p(x )
k 1
k
k(1 x ) (k x )
k 1
k
结论 1. 若点列{ x } 是由外点法产生的,则有 k
列 { x }的任何极限点一定是所求问题的极小点。 k
都是 R 上的连续函数,则由外点法产生的点 n
解:构造增广函数k ( x)如下: k ( x) (x 1)2 k min2{ x 2,0}
( x 1)2
(x 1)2 k ( x 2)2
if x 2 if x 2
dk (
dx
x)
(2 x 1)
(2 x 1)
2k
(
x
因子的缩小系数), k : k 1,转 step 2。
(4) 例子:试用内点法(内部惩罚函数法)求解如下优化问题 min f ( x) 1 x3 3 s.t. x 1 0
解:构造增广函数 k ( x)如下:
k(x)
x3
k
1 x1
由
d k ( x)
dx
x2
k
(2)q( x) if x D
例如:q( x)
m
1
或
q( x)
m
1
等;
j1 g j ( x)
j1 g2 ( x)
j
m
q( x) ln
1
j1 g j ( x)
或
q(
x)
m
j 1
ln
g
j
(
x)
等。
通常称:
k ( x):增广函数, q( x): 障碍函数, k: 惩罚因子, kq( x):惩罚项。
g
1 j ( x)
得到其最优解x* (k ),记为 x k1。
step 3 . 如果 kq( x k1 ) , 则 x k1 就是问题
(A):min f ( x)的最优解,stop;否则转 step 4。 xD
step 4 . 给定 k1 k(可取 k1 k 这里 1 为惩罚
m in f ( x ) g( x ) 0
s.t . h( x ) 0
我们不难想到构造如下的惩罚函数
m
l
p( x ) (min{ g j ( x ),0 } )2 ( hk ( x ) )2
j 1
k 1
m
l
min2{
j 1
gj(
x
),0 }
h2 (
(2)算法思想
内点法(障碍函数法)的迭代点是在可行域 点集内部移动的,对接近可行域边界上的点施加 越来越大的惩罚,对可行域边界上的点施加无限 大的惩罚,这好比边界是一道障碍物,阻碍迭代 点穿越边界。
内点法要求可行点集的内点集合非空,否则 算法无法运行。这样一来内点法只对不等式约束 的优化问题才可能有效。
所以可设
m
m
p( x) (min{g j ( x),0})2 min2{g j ( x),0}
j 1
j1
显然 p( x) 满足恰前面的条件(1)和(2)。
结论 1:如果 gj ( x)(j 1,2,, m)连续,那么p( x) 也连续。
事实上,只须注意:
min{ f1( x),
f2 ( x)}
f1(x)
f2(x) 2
f1(x)
f2(x)
结
论
2
:如
果
(1
)
问
题
(B):
min
xR n
k
(
x
)
有
最
优
解
x
*
(
k
)
;
(2) x* (k ) D ,即g j ( x* (k )) 0(j 1,2,, m)。
则
x
*
(k)也
是问题
(A):min xD
结论 2. 设 f ( x)、g(j x)( j 1,, m) 都是 R 上的 n
练 习:
1、复习外点法和内点法,掌握外点法
的算法思想和其特点。
2、要求能用外点法去解决实际问题。
3、对于一个简单的实例,能够用外点法 进行手工计算。
所以x D,有 f ( x*(k )) f ( x*(k )) k p( x*(k ))
(x*( ))
k
k
(x) k
f (x) p(x) k
f (x)
所以 x* ( )是问题max f ( x) 的最优解。
k
xD
(3)算法步骤(外点法):
step 3 :如果 x* (k ) D ,即 g j ( x* (k )) (j 1,2,, m),
则
x
*
(k)就
是问题
(A):min xD
f
( x)的最优解,stop;
否则转 step 4.
step
4
:给
定
k
1
(可取
k
k 1
k
这里
1 为惩罚
因子的放大系数), k : k 1, 转 step 2.
(3) 算法分析
考虑如下优化问题:
min f ( x) s.t. gi ( x) 0 , i 1,,m
转化为无约束优化问题:
min
xR n
k
(
x
)
f ( x) kq( x)
1 2 k 0
构造函数 k(x) f ( x) kq( x),
其中q( x) 满足 : (1)q( x) 0 if x int D
在算法中,一开始
不宜取的过大。否则会造成
k
无约束优化问题min x R n
k
(
x
)求解困难(
k
越大,
k ( x )的Hesse矩阵的条件数越坏)。
(d ) 通常称:
k ( x):增广函数, p( x): 惩罚函数 k: 惩罚因子, k p( x):惩罚项
(6) 例:试用外点法(外部惩罚函数法)求解如下优化问题 min f ( x) ( x 1)2 s.t. x 2 0
由此可以得到:
x* lim xk1 lim 1 (1
k
2 k
1 4
k ) 1
(5) 算法收敛性:
k(1 x ) (k x )。
k 1
k
结论 1. 若点列{ x } 是由内点法产生的,则有
k
的任何极限点一定是所求问题的极小点。
连续函数,则由内点法产生的点列{ x } k
step1. 给定初始点x0,初始惩罚因子1 (0 可取 1 1), 精度 0, k : 0。
step2.以 xk 为初始点,求解无约束优化问题
m
mi n xRn
k
(
x)
f
(
x
)
k
p(
x
)
f ( x) k min2 ( g j ( x),0) j 1
得到极小点为x* (k ),记为 xk1 .
f(x)
(2)算法分析
min
xD
f
(
x
)
min
x R n
1 (
x
2(
x
)
min
x R n
k
(
x
)
1 2 k
如何构造 (x)? k
( x)满足: ( x) f ( x) x D
k
k
( x) f ( x) x D且 ( x) (k )
结论 2. 设 f ( x)、g(j x)( j 1,, m)和h(k x)(k 1,, l)
5、内点法(障碍函数法) (1)集合结构
D
int D
D D int D 边界点集内点集
D { x | 至少存在一个 j , 使得 g j ( x) 0}; int D {x | g j ( x) 0 , j }。
k
k
则可取:k ( x) f ( x) k p( x) ,
其中 p( x) 满足 (1)p( x) 0 x D ; (2)p( x) 0 x D。
这样一来,我们只需构造 p(x),事实上,
因为 g j (x) 0 min{g j ( x),0} 0 min2{g j ( x),0} 0
2)
由 dk ( x) 0 可得:
dx
(2 x 1) 2k ( x 2) 0
if x 2 if x 2
所以
xk
x*
(k
)
1 2k 1 k
D
这
就
是
对
于
固
定
的
,
k
问
题
min
xR n
k
(
x
)的
最
优
解
。
lim xk
k
lim
k
x*
(k
)
lim
约束极值问题的算法
一、惩罚函数法(SUMT) 1. 问题:min f ( x)
s.t. gi ( x) 0 i 1,,m
min f ( x) s.t. g( x) 0 这里 g( x) (g1( x),,gm ( x))T
min f ( x)
s.t. x D D { x | g( x) 0} : 可行点集或可行解集
k
1 2k 1 k
2
x* ,
x*就是所求原问题的最优解。
k 0 0
1 1
2 10
f (x)
x*
x
O
1
2
(7)一般模型的外点法
min f ( x )
s.t .
gi ( x ) 0 hj ( x ) 0
i 1,,m j 1,,p
( x 1)2
0 可得:
x( x 1) k
因为 x 1 所以 x( x 1) k 。
因此 x 1 (1 2
1 4
k )
因为负根不满足条件,所以
x k1 1 (1 2
1 4
k )
o
1
2
3
f ( x ) 1 x3 3
x* x
1 x3 x2 x1
f
( x) 的最优解。
证
明:因
为
x
*
(
k
)
是
(B):
min
xR n
k
(
x
)
的
最
优
解。
所以k ( x* (k )) k ( x), x Rn 。
又 x* (k ) D, 即g j ( x* (k )) 0(j 1,2,, m), 所以 p( x* (k ) ) 0。
2、算法思想:
将有约束优化问题转化为一系列无约束优化问题进 行求解。(Sequential Unconstrained Minimization Technique - SUMT)
3、算法类型:
外点法(外惩法) 内点法(内惩法)
4、外点法(外部惩罚函数法) (1)几何解释
x
D x*
k( x ) 2( x ) 1( x )
(3)算法步骤(内点法):
step1. 给定初始点 x0 int D,初始惩罚因子1 0, (可取 1 1), 精度 0, k : 0。
step2.以 xk 为初始点,求解无约束优化问题
min
xR n
k
(
x
)
f ( x) kq( x)
f
(
x)
k
m
j 1