原始问题(7)转换为对偶形式(8)的详细解释
1. 问题转换的动机
ADMM(交替方向乘子法)适用于可分解的优化问题,通过引入辅助变量将复杂约束拆解为多个简单子问题。原始问题(7)包含L1目标函数、线性等式约束和非负约束,直接求解可能困难。通过变量分裂和约束重写,将其转化为ADMM友好的形式(8)。
2. 变量分裂与约束引入
步骤1:分离L1目标函数
- 引入辅助变量 y \mathbf{y} y:将目标函数 ∥ x − x ~ ∥ 1 \parallel \mathbf{x} - \widetilde{\mathbf{x}} \parallel_1 ∥x−x ∥1拆分为 ∥ y ∥ 1 \parallel \mathbf{y} \parallel_1 ∥y∥1,并添加等式约束 y = x − x ~ \mathbf{y} = \mathbf{x} - \widetilde{\mathbf{x}} y=x−x 。
- 数学等价性:若 y = x − x ~ \mathbf{y} = \mathbf{x} - \widetilde{\mathbf{x}} y=x−x ,则 ∥ y ∥ 1 = ∥ x − x ~ ∥ 1 \parallel \mathbf{y} \parallel_1 = \parallel \mathbf{x} - \widetilde{\mathbf{x}} \parallel_1 ∥y∥1=∥x−x ∥1,二者目标值一致。
步骤2:处理非负约束
- 引入辅助变量 z \mathbf{z} z:将非负约束 x ≽ 0 \mathbf{x} \succcurlyeq 0 x≽0转换为 z ≽ 0 \mathbf{z} \succcurlyeq 0 z≽0,并添加等式约束 z = x \mathbf{z} = \mathbf{x} z=x。
- 数学等价性:若 z = x \mathbf{z} = \mathbf{x} z=x且 z ≽ 0 \mathbf{z} \succcurlyeq 0 z≽0,则 x ≽ 0 \mathbf{x} \succcurlyeq 0 x≽0,二者约束等价。
步骤3:保留原等式约束
- 原约束 A x = b \mathbf{Ax} = \mathbf{b} Ax=b直接保留为 A x − b = 0 \mathbf{Ax} - \mathbf{b} = 0 Ax−b=0。
3. 对偶形式的构建(增广拉格朗日方法)
通过拉格朗日乘数法,将等式约束合并到目标函数中,构造增广拉格朗日函数:
L ( x , y , z , μ , ν , η ) = ∥ y ∥ 1 + I C ( z ) + ρ 2 ∥ x − x ~ − y + μ ∥ 2 2 + ρ 2 ∥ x − z + ν ∥ 2 2 + ρ 2 ∥ A x − b + η ∥ 2 2 , \begin{aligned} L(\mathbf{x}, \mathbf{y}, \mathbf{z}, \mu, \nu, \eta) &= \parallel \mathbf{y} \parallel_1 + \mathbb{I}_{\mathcal{C}}(\mathbf{z}) \\ &+ \frac{\rho}{2} \parallel \mathbf{x} - \widetilde{\mathbf{x}} - \mathbf{y} + \mu \parallel_2^2 \\ &+ \frac{\rho}{2} \parallel \mathbf{x} - \mathbf{z} + \nu \parallel_2^2 \\ &+ \frac{\rho}{2} \parallel \mathbf{Ax} - \mathbf{b} + \eta \parallel_2^2, \end{aligned} L(x,y,z,μ,ν,η)=∥y∥1+IC(z)+2ρ∥x−x −y+μ∥22+2ρ∥x−z+ν∥22+2ρ∥Ax−b+η∥22,
其中:
- μ , ν , η \mu, \nu, \eta μ,ν,η是对偶变量(缩放后的拉格朗日乘子)。
- ρ > 0 \rho > 0 ρ>0是惩罚参数,控制约束违反的惩罚强度。
- I C ( z ) \mathbb{I}_{\mathcal{C}}(\mathbf{z}) IC(z)是指示函数,强制 z ≽ 0 \mathbf{z} \succcurlyeq 0 z≽0。
4. ADMM的交替优化步骤
通过交替优化原始变量和对偶变量,逐步逼近最优解:
优化 y \mathbf{y} y(子问题9):
y k + 1 = arg min y ( ∥ y ∥ 1 + ρ 2 ∥ x k − x ~ − y + μ k ∥ 2 2 ) . \mathbf{y}^{k+1} = \arg \min_{\mathbf{y}} \left( \parallel \mathbf{y} \parallel_1 + \frac{\rho}{2} \parallel \mathbf{x}^k - \widetilde{\mathbf{x}} - \mathbf{y} + \mu^k \parallel_2^2 \right). yk+1=argymin(∥y∥1+2ρ∥xk−x −y+μk∥22).- 闭合解:通过软阈值(soft-thresholding)求解,处理L1范数。
优化 z \mathbf{z} z(子问题10):
z k + 1 = arg min z ( I C ( z ) + ρ 2 ∥ x k − z + ν k ∥ 2 2 ) . \mathbf{z}^{k+1} = \arg \min_{\mathbf{z}} \left( \mathbb{I}_{\mathcal{C}}(\mathbf{z}) + \frac{\rho}{2} \parallel \mathbf{x}^k - \mathbf{z} + \nu^k \parallel_2^2 \right). zk+1=argzmin(IC(z)+2ρ∥xk−z+νk∥22).- 闭合解:将 x k + ν k \mathbf{x}^k + \nu^k xk+νk投影到非负象限,即 z k + 1 = max ( x k + ν k , 0 ) \mathbf{z}^{k+1} = \max(\mathbf{x}^k + \nu^k, 0) zk+1=max(xk+νk,0)。
优化 x \mathbf{x} x(子问题11):
x k + 1 = arg min x ( 1 2 ∥ x − x ~ − y k + 1 + μ k ∥ 2 2 + 1 2 ∥ x − z k + 1 + ν k ∥ 2 2 + 1 2 ∥ A x − b + η k ∥ 2 2 ) . \mathbf{x}^{k+1} = \arg \min_{\mathbf{x}} \left( \frac{1}{2} \parallel \mathbf{x} - \widetilde{\mathbf{x}} - \mathbf{y}^{k+1} + \mu^k \parallel_2^2 + \frac{1}{2} \parallel \mathbf{x} - \mathbf{z}^{k+1} + \nu^k \parallel_2^2 + \frac{1}{2} \parallel \mathbf{Ax} - \mathbf{b} + \eta^k \parallel_2^2 \right). xk+1=argxmin(21∥x−x −yk+1+μk∥22+21∥x−zk+1+νk∥22+21∥Ax−b+ηk∥22).- 闭合解:通过解线性方程组(例如最小二乘)更新 x \mathbf{x} x。
更新对偶变量:
μ k + 1 = μ k + x k + 1 − x ~ − y k + 1 , ν k + 1 = ν k + x k + 1 − z k + 1 , η k + 1 = η k + A x k + 1 − b . \begin{aligned} \mu^{k+1} &= \mu^k + \mathbf{x}^{k+1} - \widetilde{\mathbf{x}} - \mathbf{y}^{k+1}, \\ \nu^{k+1} &= \nu^k + \mathbf{x}^{k+1} - \mathbf{z}^{k+1}, \\ \eta^{k+1} &= \eta^k + \mathbf{Ax}^{k+1} - \mathbf{b}. \end{aligned} μk+1νk+1ηk+1=μk+xk+1−x −yk+1,=νk+xk+1−zk+1,=ηk+Axk+1−b.
5. 转换的数学等价性
- 必要性:通过变量分裂,确保问题(8)与(7)的解集一致。若 y = x − x ~ \mathbf{y} = \mathbf{x} - \widetilde{\mathbf{x}} y=x−x 且 z = x \mathbf{z} = \mathbf{x} z=x,则目标函数和约束条件等价。
- 充分性:任何满足问题(8)的解必然满足原问题(7)的约束,反之亦然。
6. 示例说明
场景:设 x ∈ R 2 \mathbf{x} \in \mathbb{R}^2 x∈R2, A = [ 1 1 ] \mathbf{A} = [1 \ 1] A=[1 1], b = 300 \mathbf{b} = 300 b=300, x ~ = [ 101 , 202 ] \widetilde{\mathbf{x}} = [101, 202] x =[101,202],需满足 x ≥ 0 \mathbf{x} \geq 0 x≥0且 A x = 300 \mathbf{Ax} = 300 Ax=300。
转换后的形式:
- y = x − x ~ \mathbf{y} = \mathbf{x} - \widetilde{\mathbf{x}} y=x−x ,目标为 ∥ y ∥ 1 \parallel \mathbf{y} \parallel_1 ∥y∥1。
- z = x \mathbf{z} = \mathbf{x} z=x,约束 z ≥ 0 \mathbf{z} \geq 0 z≥0。
- 等式约束 A x = 300 \mathbf{Ax} = 300 Ax=300。
ADMM迭代:
- 初始化 x 0 = x ~ \mathbf{x}^0 = \widetilde{\mathbf{x}} x0=x , μ 0 = ν 0 = η 0 = 0 \mu^0 = \nu^0 = \eta^0 = 0 μ0=ν0=η0=0。
- 更新 y \mathbf{y} y:软阈值处理 y 1 = sign ( x 0 − x ~ + μ 0 ) ⋅ max ( ∣ x 0 − x ~ + μ 0 ∣ − 1 ρ , 0 ) \mathbf{y}^{1} = \text{sign}(\mathbf{x}^0 - \widetilde{\mathbf{x}} + \mu^0) \cdot \max(|\mathbf{x}^0 - \widetilde{\mathbf{x}} + \mu^0| - \frac{1}{\rho}, 0) y1=sign(x0−x +μ0)⋅max(∣x0−x +μ0∣−ρ1,0)。
- 更新 z \mathbf{z} z:投影到非负象限 z 1 = max ( x 0 + ν 0 , 0 ) \mathbf{z}^{1} = \max(\mathbf{x}^0 + \nu^0, 0) z1=max(x0+ν0,0)。
- 更新 x \mathbf{x} x:解线性方程组满足所有约束。
- 更新对偶变量,重复直至收敛。
总结
- 转换逻辑:通过变量分裂将原问题分解为多个简单子问题,利用ADMM交替优化。
- 等价性保证:引入的辅助变量和等式约束确保解的一致性。
- 计算优势:每个子问题可高效求解(如软阈值、投影、线性最小二乘),适合大规模优化。