对偶函数求解实例

一、写在前面

关于对偶函数的思想以及定义,网上有很多内容,这里不再细说,但是个人还是觉得有实例看起来比较容易理解,本篇博文主要提供一个对偶的小例子。刚入门优化知识,理解尚浅!

二、题目叙述

考虑等式约束的最小二乘问题
m i n i m i z e x T x s u b j e c t   t o A x = b minimize \quad x^Tx \\ subject \ to \quad Ax=b minimizexTxsubject toAx=b
其中, A ∈ R m ∗ n , r a n k ( A ) = m A \in \mathbb{R}^{m*n},rank(A)=m ARmn,rank(A)=m。给出KKT条件,推导原问题最优解 x ∗ x^* x 以及对偶问题最优解 v ∗ v^* v 的表达式。

三、解题步骤

1、原问题求解

(1)Lagrarian函数为:
L ( x , v ) = x T x + v T ( A x − b ) = x T x + v T A x − v T b \begin{array}{lcl} L(x,v) &=& x^Tx+v^T(Ax-b) \\ &=& x^Tx+v^TAx-v^Tb \end{array} L(x,v)==xTx+vT(Axb)xTx+vTAxvTb
其对应的KKT条件如下:
∂ L ( x , v ) ∂ x = 0 / / 导 数 为 0 v T ≠ 0 / / L a g r a n g e 乘 子 不 为 0 A x = b / / 等 式 约 束 条 件 \begin{array}{lcl} \frac{\partial L(x,v)}{\partial x} = 0 \quad \quad //导数为0\\ v^T \neq 0 \quad \quad //Lagrange乘子不为0 \\ Ax = b \quad \quad //等式约束条件 \end{array} xL(x,v)=0//0vT̸=0//Lagrange0Ax=b//
(2)求 L ( x , v ) L(x,v) L(x,v) 对应的导数,计算过程如下:
∂ L ( x , v ) ∂ x = x + ( x T ) T + ( v T A ) T = 2 x + A T v \begin{array}{lcl} \frac{\partial L(x,v)}{\partial x} &=& x+(x^T)^T+(v^TA)^T \\ &=& 2x + A^Tv \end{array} xL(x,v)==x+(xT)T+(vTA)T2x+ATv
∂ L ( x , v ) ∂ x = 0 \frac{\partial L(x,v)}{\partial x} = 0 xL(x,v)=0,则解得 x = − 1 2 A T v x=-\frac{1}{2} A^Tv x=21ATv,因此原问题的最优解为 x ∗ = − 1 2 A T v x^*=-\frac{1}{2} A^Tv x=21ATv

2、对偶问题求解

x ∗ x^* x 代入 L ( x , v ) L(x,v) L(x,v) 得到对偶函数 g ( v ) g(v) g(v)
g ( v ) = ( x ∗ ) T x ∗ + v T ( A x ∗ − b ) = ( x ∗ ) T x ∗ + v T A x ∗ − v T b = ( − 1 2 A T v ) T ( − 1 2 A T v ) + v T A ( − 1 2 A T v ) − v T b = 1 4 v T A A T v − 1 2 v T A A T v − v T b = − 1 4 v T A A T v − v T b \begin{array}{lcl} g(v) &=& (x^*)^Tx^*+v^T(Ax^*-b) \\ &=& (x^*)^Tx^*+v^TAx^*-v^Tb \\ &=& (-\frac{1}{2} A^Tv)^T(-\frac{1}{2} A^Tv)+v^TA(-\frac{1}{2} A^Tv) -v^Tb \\ &=& \frac{1}{4}v^TAA^Tv-\frac{1}{2}v^TAA^Tv-v^Tb \\ &=& -\frac{1}{4}v^TAA^Tv-v^Tb \end{array} g(v)=====(x)Tx+vT(Axb)(x)Tx+vTAxvTb(21ATv)T(21ATv)+vTA(21ATv)vTb41vTAATv21vTAATvvTb41vTAATvvTb
满足的最优性条件如下:
∂ L ( x , v ) ∂ x = 0 ① / / 导 数 为 0 A x = b ② / / 等 式 约 束 条 件 \begin{array}{lcl} \frac{\partial L(x,v)}{\partial x} = 0 \quad ① \quad \quad //导数为0\\ Ax = b \quad ② \quad \quad //等式约束条件 \end{array} xL(x,v)=0//0Ax=b//
在求对偶问题的时候,应该首先求解出 v ∗ v^* v,①等价于 2 x + A T v = 0 2x + A^Tv=0 2x+ATv=0,①式左乘A,将②式代入可得, 2 b + A A T v = 0 2b+AA^Tv=0 2b+AATv=0,解得: v ∗ = − 2 ( A A T ) − 1 b v^*=-2(AA^T)^{-1}b v=2(AAT)1b,将 v ∗ v^* v 代入①得, x ∗ = − 1 2 A T v ∗ = A − 1 b x^*=-\frac{1}{2}A^Tv^*=A^{-1}b x=21ATv=A1b,因此:

v ∗ = − 2 ( A A T ) − 1 b x ∗ = − 1 2 A T v ∗ = A − 1 b \begin{array}{lcl} v^* &=& -2(AA^T)^{-1}b \\ x^* &=& -\frac{1}{2}A^Tv^*=A^{-1}b \end{array} vx==2(AAT)1b21ATv=A1b

  • 8
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值