11-3 Lagrange dual problem

다음과 같이 문제가 주어졌다고 하자.

minxf(x)s.t.hi(x)0,i=1,,mlj(x)=0,j=1,,r

Dual function g(u,v)는 모든 u0v에 대해 fg(u,v)를 만족한다. 따라서, 모든 feasible한 u, v에 대해서 g(u,v)를 최대화함으로써 가장 좋은 lower bound를 구할 수 있다. 이를 Lagrange dual problem 이라 한다.

maxu,vg(u,v)s.t.u0

여기서, dual 최적값을 g라고 하면 fg이다. 이를 weak duality라 한다. 이 성질은 primal 문제가 convex가 아니어도 항상 성립한다. 또한, dual problem은 primal problem이 convex가 아니더라도 항상 convex optimization problem이 된다.

정의에 의해 g(u,v)에 대해 concave 하고, u>0는 convex 제약조건이다. 따라서, dual 문제는 concave maximization 문제에 해당된다.

g(u,v)=minx{f(x)+i=1muihi(x)+j=1rvjlj(x)}=maxx{f(x)i=1muihi(x)j=1rvjlj(x)}pointwise maximum of convex functions in (u,v)

Example: nonconvex quartic minimization

다음 함수 f(x)=x450x2+100xx4.5에 대해 최소화 해 보자.

[Fig 4] Example of nonconvex quadratic minimization

이 때, Dual 함수 g는 아래와 같다.

g(u)=mini=1,2,3{Fi4(u)50Fi2(u)+100Fi(u)}

여기서, i=1,2,3에 대해,

Fi(u)=ai1221/3(432(100u)(4322(100u)2412003)1/2)1/310021/31(432(100u)(4322(100u)2412003)1/2)1/3

그리고, a1=1,a2=(1+i3)/2,a3=(1i3)/2이다.

함수만 보면 g가 concave인지 알기어렵지만, duality의 convexity 하에 g가 concave라는 것을 알 수 있다.