京都大学 情報学研究科 数理工学専攻 2023年8月実施 凸最適化
Author
Casablanca
Description
日本語版
English Version
Let c = ( c 1 , c 2 , … , c n ) c=(c_1,c_2, \ldots , c_n) c = ( c 1 , c 2 , … , c n ) , where the superscript ⊤ \top ⊤ denotes transposition.
Consider the following linear programming problem P:
P : Minimize c ⊤ y subject to ∑ i = 1 n y i ≤ 1 y ≥ 0 \begin{aligned}
\text{P} : &\text{Minimize} &\boldsymbol{c}^{\top} \boldsymbol{y}\\
&\text{subject to} &\sum_{i=1}^{n} y_{i} \leq 1 \\
&\text{ } &\boldsymbol{y} \geq 0
\end{aligned} P : Minimize subject to c ⊤ y i = 1 ∑ n y i ≤ 1 y ≥ 0
where the decision variable of problem P is the vector y = ( y 1 , y 2 , … y n ) ⊤ ∈ R ⊤ \boldsymbol{y} = (y_1, y_2, \ldots y_n)^\top \in \mathbb{R}^\top y = ( y 1 , y 2 , … y n ) ⊤ ∈ R ⊤ .
Answer the following questions (i) and (ii)
(i) write out a dual problem of problem P.
(ii) Show that problem P has an optimal solution.
Let Y Y Y be the set of optimal solutions of problem P.
Answer the following quetions (iii) and (iv).
(iii) Show that Y Y Y is a convex set.
(iv) Suppose that c 1 = c 2 = ⋯ = c n c_{1} = c_2 = \cdots = c_n c 1 = c 2 = ⋯ = c n and c 1 < 0 c_1 < 0 c 1 < 0 .
Consider the following optimization problem Q:
Q : Minimize 1 2 x ⊤ x − c ⊤ x subject to x ∈ Y \begin{aligned}
\text{Q} : &\text{Minimize} &\frac{1}{2} {\boldsymbol{x}^{\top} \boldsymbol{x} - \boldsymbol{c}^{\top} \boldsymbol{x}}\\
&\text{subject to} &\boldsymbol{x} \in Y
\end{aligned} Q : Minimize subject to 2 1 x ⊤ x − c ⊤ x x ∈ Y
where the decision variable of problem Q is the vector x ∈ R n \boldsymbol{x} \in \mathbb{R}^n x ∈ R n .
Obtain an optimal solution of problem Q by using Karush-Kuhn-Tucker conditions.
题目描述
设 c = ( c 1 , c 2 , … , c n ) ⊤ \boldsymbol c=(c_1,c_2,\ldots,c_n)^\top c = ( c 1 , c 2 , … , c n ) ⊤ ,其中 ⊤ \top ⊤ 表示转置。考虑以
y = ( y 1 , … , y n ) ⊤ \boldsymbol y=(y_1,\ldots,y_n)^\top y = ( y 1 , … , y n ) ⊤ 为变量的线性规划
P : 最小化 c ⊤ y 满足 ∑ i = 1 n y i ≤ 1 , y ≥ 0. \begin{aligned}
\mathrm P:\quad
&\text{最小化}\quad \boldsymbol c^\top\boldsymbol y\\
&\text{满足}\quad\sum_{i=1}^n y_i\le1,\qquad
\boldsymbol y\ge0.
\end{aligned} P : 最小化 c ⊤ y 满足 i = 1 ∑ n y i ≤ 1 , y ≥ 0.
回答:
写出 P 的对偶问题。
证明 P 有最优解。
令 Y Y Y 为 P 的最优解集合,继续回答:
证明 Y Y Y 是凸集。
假设 c 1 = c 2 = ⋯ = c n c_1=c_2=\cdots=c_n c 1 = c 2 = ⋯ = c n 且 c 1 < 0 c_1<0 c 1 < 0 。考虑
Q : 最小化 1 2 ( x ⊤ x − c ⊤ x ) 满足 x ∈ Y , \begin{aligned}
\mathrm Q:\quad
&\text{最小化}\quad
\frac12\bigl(\boldsymbol x^\top\boldsymbol x-
\boldsymbol c^\top\boldsymbol x\bigr)\\
&\text{满足}\quad\boldsymbol x\in Y,
\end{aligned} Q : 最小化 2 1 ( x ⊤ x − c ⊤ x ) 满足 x ∈ Y ,
其中 x ∈ R n \boldsymbol x\in\mathbb R^n x ∈ R n 。利用 KKT 条件求 Q 的一个最优解。
线性规划对偶与解的存在性 :为单个资源不等式和非负变量构造对偶,并证明紧致可行域上的线性目标可达最优值。
最优解集合的凸性 :利用线性目标与凸可行域证明任意两个最优解的凸组合仍最优。
KKT 条件 :在对称目标系数下先刻画最优面 Y Y Y ,再求其上的严格凸二次函数最优解。
Kai
(i)
We have Lagrangian: L ( y , λ , ν ) = c ⊤ y + λ ( 1 ⊤ y − 1 ) − ν ⊤ y L(y,\lambda,\nu) = c^\top y + \lambda (\mathbf{1}^\top y - \mathbf{1} ) - \nu^\top y L ( y , λ , ν ) = c ⊤ y + λ ( 1 ⊤ y − 1 ) − ν ⊤ y .
Obtain Lagrange dual function: d ( λ , ν ) = inf y ( ( c ⊤ + λ 1 ⊤ − ν ⊤ ) y − λ ) = − λ d(\lambda, \nu) = \inf_{y} ((c^\top + \lambda \mathbf{1}^\top - \nu^\top)y - \lambda) = - \lambda d ( λ , ν ) = inf y (( c ⊤ + λ 1 ⊤ − ν ⊤ ) y − λ ) = − λ .
Then we write the dual problem D:
D : Maximize − λ subject to c + λ 1 − ν = 0 ≥ 0 , ν ⪰ 0 \begin{aligned}
\text{D} : &\text{Maximize} &-\lambda\\
&\text{subject to} &c + \lambda \mathbf{1} - \nu = 0\\
&\text{ } &\geq 0, \nu \succeq 0
\end{aligned} D : Maximize subject to − λ c + λ 1 − ν = 0 ≥ 0 , ν ⪰ 0
(ii)
Since − λ 1 ⪯ c -\lambda \mathbf{1} \preceq c − λ 1 ⪯ c , the optimal value v v v of dual problem D satisfies: v ≤ min { c 1 , c 2 , … c n } v \leq \min \{ c_1, c_2, \ldots c_n \} v ≤ min { c 1 , c 2 , … c n }
then the linear programming P P P is bounded, thus has an optimal solution.
(iii)
For any y 1 , y 2 ∈ Y y_1,y_2 \in Y y 1 , y 2 ∈ Y , we know that for any y ~ \widetilde{y} y which satisfies the constraints of P,
c ⊤ y 1 ≤ c ⊤ y ~ , c ⊤ y 2 ≤ c ⊤ y ~ c^\top y_1 \leq c^\top \widetilde{y}, \quad c^\top y_2 \leq c^\top \widetilde{y} c ⊤ y 1 ≤ c ⊤ y , c ⊤ y 2 ≤ c ⊤ y
for θ ∈ [ 0 , 1 ] \theta \in [0,1] θ ∈ [ 0 , 1 ] ,
θ y 1 + ( 1 − θ ) y 2 ⪰ 0 , \theta y_1 + (1 - \theta) y_2 \succeq \mathbf{0}, \quad θ y 1 + ( 1 − θ ) y 2 ⪰ 0 ,
1 ⊤ ( θ y 1 + ( 1 − θ ) y 2 ) ≤ 1 \mathbf{1}^\top (\theta y_1 + (1-\theta) y_2) \leq 1 1 ⊤ ( θ y 1 + ( 1 − θ ) y 2 ) ≤ 1
c ⊤ ( θ y 1 + ( 1 − θ ) y 2 ) = θ c ⊤ y 1 + ( 1 − θ ) c ⊤ y 2 ≤ c ⊤ y ~ c^\top (\theta y_1 + (1-\theta)y_2) = \theta c^\top y_1 + (1-\theta)c^\top y_2 \leq c^\top \widetilde{y} c ⊤ ( θ y 1 + ( 1 − θ ) y 2 ) = θ c ⊤ y 1 + ( 1 − θ ) c ⊤ y 2 ≤ c ⊤ y
then θ y 1 + ( 1 − θ ) y 2 ∈ Y \theta y_1 + (1-\theta)y_2 \in Y θ y 1 + ( 1 − θ ) y 2 ∈ Y , Y Y Y is a convex set.
(iv)
Since c 1 = c 2 = … c n < 0 c_1 = c_2 = \ldots c_n < 0 c 1 = c 2 = … c n < 0 , Y = { y ∣ y ⪰ 0 , 1 ⊤ y = 1 } Y = \{ y | y \succeq \mathbf{0}, \mathbf{1}^\top y = 1 \} Y = { y ∣ y ⪰ 0 , 1 ⊤ y = 1 } , we can rewrite Q as
Q : Minimize 1 2 x ⊤ x − c ⊤ x subject to x ⪰ 0 , 1 ⊤ x = 1 \begin{aligned}
Q:&\text{Minimize} &\frac{1}{2} x^\top x - c^\top x \\
&\text{subject to} &x \succeq \mathbf{0}, \mathbf{1}^\top x = 1 \\
\end{aligned} Q : Minimize subject to 2 1 x ⊤ x − c ⊤ x x ⪰ 0 , 1 ⊤ x = 1
thus we get the Lagrangian: L ( x , λ , μ ) = 1 2 x ⊤ x − c ⊤ x − λ ⊤ x + μ ( 1 − 1 ⊤ x ) L(x,\lambda, \mu) = \frac{1}{2} x^\top x - c^\top x - \lambda^\top x + \mu(1-\mathbf{1}^\top x) L ( x , λ , μ ) = 2 1 x ⊤ x − c ⊤ x − λ ⊤ x + μ ( 1 − 1 ⊤ x ) .
Then the KKT-condition:
KKT-conditions: { x − c − λ − μ 1 = 0 λ ⪰ 0 , − λ ⊤ x = 0 x ⪰ 0 1 ⊤ x = 1 \text{KKT-conditions: } \left\{
\begin{aligned}
x - c - \lambda - \mu \mathbf{1} &= 0 \\
\lambda \succeq 0, -\lambda^\top x &=0 \\
x &\succeq 0\\
\mathbf{1}^\top x &= 1
\end{aligned}
\right. KKT-conditions: ⎩ ⎨ ⎧ x − c − λ − μ 1 λ ⪰ 0 , − λ ⊤ x x 1 ⊤ x = 0 = 0 ⪰ 0 = 1
it is obviously that
x ∗ = [ 1 n , 1 n , … , 1 n ] ⊤ , λ = 0 , μ = [ 1 n − c 1 , 1 n − c 1 , … , 1 n − c 1 ] ⊤ x^* = [\frac{1}{n} , \frac{1}{n}, \ldots , \frac{1}{n}]^\top , \lambda = \mathbf{0}, \mu = [\frac{1}{n} - c_1, \frac{1}{n} - c_1, \ldots, \frac{1}{n} - c_1]^\top x ∗ = [ n 1 , n 1 , … , n 1 ] ⊤ , λ = 0 , μ = [ n 1 − c 1 , n 1 − c 1 , … , n 1 − c 1 ] ⊤
satiesfies the KKT-condtions.
Hence x ∗ x^* x ∗ is an optimal solution.