Optimization: Dual Problem and Karush-Kuhn-Tucker Conditions

主要介绍一下 Dual Problem 和 KKT Conditions。Dual Problem 参考该课件,KKT Conditions 参考该课件


Lagrangian Function

我们考虑如下最优化问题:

minxRnf(x)s.t.hi(x)0i[m]li(x)=0i[r]
记该问题的最优值为 f

本文中会称上述问题为 Primal Problem。首先求得它的 Lagrangian Function:
L(x,μ,ν)=f(x)+μh(x)+νl(x)=L(x,λ)=f(x)+λ(h(x)l(x))
其中,h(x)=(h1(x),h2(x),,hm(x))l(x)=(l1(x),l2(x),,lr(x))

Remark 1: 对任意 feasible xf(x)=supμ0,vL(x,μ,ν),并且 supremum 当且仅当 μh(x)=0

Remark 2: 对任意 non-feasible xsupμ0,vL(x,μ,ν)=+。(考虑 non-feasible 的两种情况即可)

Remark 3: f=infxRnsupμ0,νL(x,μ,ν)


Lagrange Dual Problem

定义 Lagrange Dual Function: g(μ,ν)=infxL(x,μ,ν)
注意到这里取的 xRn 并不要求满足 g(x)0h(x)=0

定义 Lagrange Dual Problem

maxμRm,νRrg(μ,ν)s.t.μ0
记该问题的最优值为 g

Remark 4:g=supμ0,νinfxL(x,μ,ν)

Remark 5:无论 Primal Problem 是否为 Convex Problem,Dual Problem 都是 Convex Problem。(考虑 g 的 concavity (最大化问题),需要补充证明)


Weak and Strong Duality

Weak Duality: gf (Always hold)
Strong Duality: g=f

Lemma 6. Weak Duality always hold, i.e.
g=supμ0,νinfxL(x,μ,ν)infxsupμ0,νL(x,μ,ν)=f

这个也叫 Max-min Inequality ,证明可见 Wikipedia。
一个比较形象的证明:假设 Alice 和 Bob 在玩游戏,Alice 决定 x 的取值,Bob 决定 (μ,ν) 的取值,在两个人选定取值后,要求 Alice 给予 Bob L(x,μ,ν) 的金币。假设两个人都 act optimal ,现在考虑先后手:假设 Alice 先手,那么显然Alice 需要付出 g 的金币;而假若 Bob 先手,那么 Bob 会得到 f 的金币,然后我们同时也容易想到这个游戏先手优势很大,同时该游戏对 Alice 不公平,那么就可以得到 gf

Strong Duality 并不是一直成立,有不少关于 Strong Duality 成立的充分条件,比较有名的就是 Slater’s Conditions:

Theorem 7 (Slater’s Theorem). 若 Primal Problem 是 convex problem,并且在 feasible set 中存在 x0 满足 Slater’s Condition,i.e.
x0:hi(x)<0,lj(x)=0,lj is linear operator,i[m],j[r]
那么有 Strong Duality 成立。

(需要补充证明)


Karush-Kuhn-Tucker Conditions

KKT Conditions:
Primal Feasibility: h(x)0,l(x)=0Dual Feasibility: μ0Complementary Slackness: μh(x)=0Stationarity: 0f(x)+i=1mμihi(x)+j=1rνjlj(x)

为什么总要考虑 (x,μ,ν) 是否满足 KKT Conditions?
1. KKT Conditions 总是 optimal 的充分条件
2. 如果 strong duality holds,那么 KKT Conditions 也是 optimal 的必要条件

(需要补充证明)


Posted

in

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *