第十一章 番外 对偶问题

对偶问题(Dual Problem)是优化理论中的一个重要概念,它与原问题(Primal Problem)相对应。在数学优化中,对偶问题是从原问题出发构造出来的一个新的优化问题。对偶问题的主要目的是简化原问题的求解,并且在某些情况下,对偶问题的解可以直接给出原问题的解。下面我们详细解释对偶问题的概念。

原问题

假设我们有一个标准形式的最优化问题(原问题),它可以表示为:
minimize f 0 ( x )   subject to f i ( x ) ≤ 0 , i = 1 , … , m   h i ( x ) = 0 , i = 1 , … , p , \begin{aligned} & \text{minimize} & & f_0(\mathbf{x}) \ & \text{subject to} & & f_i(\mathbf{x}) \leq 0, \quad i = 1, \ldots, m \ &&& h_i(\mathbf{x}) = 0, \quad i = 1, \ldots, p, \end{aligned} minimizef0(x) subject tofi(x)0,i=1,,m hi(x)=0,i=1,,p,
其中 f 0 ( x ) f_0(\mathbf{x}) f0(x) 是目标函数, f i ( x ) f_i(\mathbf{x}) fi(x) 是不等式约束函数, h i ( x ) h_i(\mathbf{x}) hi(x) 是等式约束函数, x \mathbf{x} x 是决策变量。

拉格朗日函数

为了构造对偶问题,我们首先定义拉格朗日函数(Lagrangian function):
L ( x , λ , ν ) = f 0 ( x ) + ∑ i = 1 m λ i f i ( x ) + ∑ i = 1 p ν i h i ( x ) , \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}, \boldsymbol{\nu}) = f_0(\mathbf{x}) + \sum_{i=1}{m} \lambda_i f_i(\mathbf{x}) + \sum_{i=1}{p} \nu_i h_i(\mathbf{x}), L(x,λ,ν)=f0(x)+i=1mλifi(x)+i=1pνihi(x),
其中 λ = ( λ 1 , … , λ m ) \boldsymbol{\lambda} = (\lambda_1, \ldots, \lambda_m) λ=(λ1,,λm) ν = ( ν 1 , … , ν p ) \boldsymbol{\nu} = (\nu_1, \ldots, \nu_p) ν=(ν1,,νp) 分别是不等式约束和等式约束的拉格朗日乘子向量。

对偶函数

接下来,我们定义对偶函数(Dual Function):
g ( λ , ν ) = inf ⁡ x L ( x , λ , ν ) , g(\boldsymbol{\lambda}, \boldsymbol{\nu}) = \inf_{\mathbf{x}} \mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}, \boldsymbol{\nu}), g(λ,ν)=infxL(x,λ,ν),
其中 inf ⁡ x \inf_{\mathbf{x}} infx 表示在所有可行的 x \mathbf{x} x 中取最小值。

对偶问题

最终,我们得到的对偶问题(Dual Problem)可以表示为:
maximize g ( λ , ν )   subject to λ i ≥ 0 , i = 1 , … , m . \begin{aligned} & \text{maximize} & & g(\boldsymbol{\lambda}, \boldsymbol{\nu}) \ & \text{subject to} & & \lambda_i \geq 0, \quad i = 1, \ldots, m. \end{aligned} maximizeg(λ,ν) subject toλi0,i=1,,m.

弱对偶性

弱对偶性(Weak Duality)指的是原问题的最优值总是大于等于对偶问题的最优值:
f ∗ ≥ g , f* \geq g, fg,_
其中 (f^_) 是原问题的最优值, g ∗ g^* g 是对偶问题的最优值。

强对偶性

强对偶性(Strong Duality)指的是在一定条件下,原问题和对偶问题的最优值相等:
f ∗ = g ∗ , f* = g*, f=g,
这种情况下,求解对偶问题可以直接给出原问题的解。

应用示例

让我们来看一个具体的例子,假设我们有以下原问题:
minimize x 1 − 4 x 2   subject to − x 1 + 3 x 2 ≤ 3   x 1 + x 2 ≤ 3   x 1 , x 2 ≥ 0. \begin{aligned} & \text{minimize} & & x_1 - 4x_2 \ & \text{subject to} & & -x_1 + 3x_2 \leq 3 \ &&& x_1 + x_2 \leq 3 \ &&& x_1, x_2 \geq 0. \end{aligned} minimizex14x2 subject tox1+3x23 x1+x23 x1,x20.
构造拉格朗日函数:
L ( x 1 , x 2 , λ 1 , λ 2 ) = x 1 − 4 x 2 + λ 1 ( − x 1 + 3 x 2 − 3 ) + λ 2 ( x 1 + x 2 − 3 ) . \mathcal{L}(x_1, x_2, \lambda_1, \lambda_2) = x_1 - 4x_2 + \lambda_1 (-x_1 + 3x_2 - 3) + \lambda_2 (x_1 + x_2 - 3). L(x1,x2,λ1,λ2)=x14x2+λ1(x1+3x23)+λ2(x1+x23).
对偶函数为:
g ( λ 1 , λ 2 ) = inf ⁡ x 1 , x 2 L ( x 1 , x 2 , λ 1 , λ 2 ) . g(\lambda_1, \lambda_2) = \inf_{x_1, x_2} \mathcal{L}(x_1, x_2, \lambda_1, \lambda_2). g(λ1,λ2)=infx1,x2L(x1,x2,λ1,λ2).
求解对偶问题:
maximize g ( λ 1 , λ 2 )   subject to λ 1 ≥ 0   λ 2 ≥ 0. \begin{aligned} & \text{maximize} & & g(\lambda_1, \lambda_2) \ & \text{subject to} & & \lambda_1 \geq 0 \ &&& \lambda_2 \geq 0. \end{aligned} maximizeg(λ1,λ2) subject toλ10 λ20.

在支持向量机中的应用

在支持向量机(SVM)中,我们通过构造拉格朗日函数来找到最大间隔超平面。原问题可以表示为:
minimize 1 2 ∣ w ∣ 2   subject to y i ( w ⊤ x i + b ) ≥ 1 , i = 1 , … , n . \begin{aligned} & \text{minimize} & & \frac{1}{2} |\mathbf{w}|^2 \ & \text{subject to} & & y_i (\mathbf{w}^\top \mathbf{x}_i + b) \geq 1, \quad i = 1, \ldots, n. \end{aligned} minimize21w2 subject toyi(wxi+b)1,i=1,,n.
通过引入拉格朗日乘子 (\boldsymbol{\alpha}),构造拉格朗日函数,并求解对偶问题:
maximize W ( α ) = ∑ i = 1 n α i − 1 2 ∑ i , j = 1 n α i α j y i y j x i ⊤ x j   subject to 0 ≤ α i ≤ C , i = 1 , … , n   ∑ i = 1 n α i y i = 0. \begin{aligned} & \text{maximize} & & W(\boldsymbol{\alpha}) = \sum_{i=1}{n} \alpha_i - \frac{1}{2} \sum_{i,j=1}{n} \alpha_i \alpha_j y_i y_j \mathbf{x}_i^\top \mathbf{x}j \ & \text{subject to} & & 0 \leq \alpha_i \leq C, \quad i = 1, \ldots, n \ &&& \sum{i=1}^{n} \alpha_i y_i = 0. \end{aligned} maximizeW(α)=i=1nαi21i,j=1nαiαjyiyjxixj subject to0αiC,i=1,,n i=1nαiyi=0.
对偶问题的解 α \boldsymbol{\alpha} α 可以用来计算 w \mathbf{w} w 和 b,进而得到最大间隔超平面。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值