第四章 典型优化问题
4.1 线性规划
4.1.1 基本形式和应用背景
再次说明一下,其实这本书很多的内容之前肯定大家都学过,但是我觉得这本书和我们之前学的东西的出发角度不一样,他更偏向数学,也多一个角度让我们去理解
线性规划问题的一般形式如下:
min
x
∈
R
n
c
T
x
s
.
t
.
A
x
=
b
G
x
≤
e
(4.1.1)
\min_{x{\in}R^n}c^Tx \\ s.t. {\quad}Ax=b \\ Gx{\le}e\tag{4.1.1}
x∈RnmincTxs.t.Ax=bGx≤e(4.1.1)
其中
c
∈
R
n
,
A
∈
R
m
×
n
,
b
∈
R
m
,
G
∈
R
p
×
n
,
e
∈
R
p
c{\in}R^n,A{\in}R^{m \times n},b{\in}R^m,G{\in}R^{p \times n},e{\in}R^p
c∈Rn,A∈Rm×n,b∈Rm,G∈Rp×n,e∈Rp是给定的矩阵和向量,
x
∈
R
n
x{\in}R^n
x∈Rn是决策变量,在实际中,我们考虑问题(4.1.1)的两种特殊形式(其他形式都可以转化为这两种形式),标准型(等式约束和决策变量非负):
min
x
∈
R
n
c
T
x
,
s
.
t
.
A
x
=
b
,
x
≥
0
,
(4.1.2)
\min_{x{\in}R^n}c^Tx, \\ s.t.{\quad}Ax=b, \\ x{\ge}0,\tag{4.1.2}
x∈RnmincTx,s.t.Ax=b,x≥0,(4.1.2)
以及不等式型(没有等式约束):
min
x
∈
R
n
c
T
x
s
.
t
.
A
x
≤
b
(4.1.3)
\min_{x{\in}R^n}c^Tx \\ s.t. {\quad}Ax{\le}b\tag{4.1.3}
x∈RnmincTxs.t.Ax≤b(4.1.3)
线性规划最先在第二次世界大战时被提出(了解一下也蛮有意思的哈哈)
4.1.2 应用举例
1.运输问题
有
I
I
I个港口
P
1
,
P
2
,
⋯
,
P
I
P_1,P_2,\cdots,P_I
P1,P2,⋯,PI提供某种商品,有
J
J
J个市场
M
1
,
M
2
,
⋯
,
M
J
M_1,M_2,\cdots,M_J
M1,M2,⋯,MJ需要这种商品,假设港口
P
i
P_i
Pi有
s
i
s_i
si单位的这种商品,市场
M
j
M_j
Mj需要
r
j
r_j
rj单位的这种商品,且总供应和总需求相等,即
∑
i
=
1
I
s
i
=
∑
j
=
1
J
r
j
\sum_{i=1}^Is_i=\sum_{j=1}^Jr_j
∑i=1Isi=∑j=1Jrj,令
b
i
j
b_{ij}
bij为从港口
P
i
P_i
Pi运输单位数量商品到市场
M
j
M_j
Mj的成本,运输问题是在满足市场需求下使得运输成本最低
令
x
i
j
x_ij
xij为从港口
P
i
P_i
Pi运输到市场
M
j
M_j
Mj的商品数量,总运输代价为
∑
i
=
1
I
∑
j
=
1
J
x
i
j
b
i
j
(4.1.4)
\sum_{i=1}^I\sum_{j=1}^Jx_{ij}b_{ij}\tag{4.1.4}
i=1∑Ij=1∑Jxijbij(4.1.4)
港口
P
i
P_i
Pi总输出量为
∑
j
=
1
J
x
i
j
\sum_{j=1}^Jx_{ij}
∑j=1Jxij,因为港口
P
i
P_i
Pi存有的商品总量为
s
i
s_i
si,所以
∑
j
=
1
J
x
i
j
=
s
i
,
i
=
1
,
2
,
⋯
,
I
(4.1.5)
\sum_{j=1}^Jx_{ij}=s_i,i=1,2,\cdots,I\tag{4.1.5}
j=1∑Jxij=si,i=1,2,⋯,I(4.1.5)
市场
M
j
M_j
Mj总输入量为
∑
i
=
1
I
x
i
j
\sum_{i=1}^Ix_{ij}
∑i=1Ixij,因为市场
M
j
M_j
Mj的需求量为
r
j
r_j
rj,所以
∑
i
=
1
I
x
i
j
=
r
j
,
j
=
1
,
2
,
⋯
,
J
(4.1.6)
\sum_{i=1}^Ix_{ij}=r_j,j=1,2,\cdots,J\tag{4.1.6}
i=1∑Ixij=rj,j=1,2,⋯,J(4.1.6)
因为运输是非负的,所以
x
i
j
≥
0
,
i
=
1
,
2
,
⋯
,
I
,
j
=
1
,
2
,
⋯
,
J
(4.1.7)
x_{ij}{\ge}0,i=1,2,\cdots,I,j=1,2,\cdots,J{\tag{4.1.7}}
xij≥0,i=1,2,⋯,I,j=1,2,⋯,J(4.1.7)
所以我们只需要极小化总运输代价和满足约束条件就好了,整理一下就是
min
x
∑
i
=
1
I
∑
j
=
1
J
x
i
j
b
i
j
s
.
t
.
∑
j
=
1
J
x
i
j
=
s
i
,
i
=
1
,
2
,
⋯
,
I
∑
i
=
1
I
x
i
j
=
r
j
,
j
=
1
,
2
,
⋯
,
J
x
i
j
≥
0
,
i
=
1
,
2
,
⋯
,
I
,
j
=
1
,
2
,
⋯
,
J
\min_x\sum_{i=1}^I\sum_{j=1}^Jx_{ij}b_{ij} \\ s.t.{\quad}\sum_{j=1}^Jx_{ij}=s_i,i=1,2,\cdots,I \\ \sum_{i=1}^Ix_{ij}=r_j,j=1,2,\cdots,J \\ x_{ij}{\ge}0,i=1,2,\cdots,I,j=1,2,\cdots,J
xmini=1∑Ij=1∑Jxijbijs.t.j=1∑Jxij=si,i=1,2,⋯,Ii=1∑Ixij=rj,j=1,2,⋯,Jxij≥0,i=1,2,⋯,I,j=1,2,⋯,J
这个问题还有更一般的版本,即最优运输问题,它是关心两个(离散、连续)测度的对应关系,也就是距离嘛,这个具体问题具体分析把,大差不差的
2.马尔可夫决策过程
在马尔可夫决策过程中,考虑终止时间
T
=
∞
T=\infty
T=∞的情形,因为折现因子
0
<
γ
<
1
0<\gamma<1
0<γ<1,所以如果单步奖励是有界的,则策略对应的奖励和是有界的,否则,如果奖励和无界,任何一个策略的奖励和都可以是无限的,就失去了研究价值。
B
e
l
l
m
a
n
Bellman
Bellman方程(3.13.2)可以转化为如下线性规划模型
max
V
∈
R
∣
S
∣
∑
i
V
(
i
)
s
.
t
.
V
(
i
)
≥
∑
j
P
a
(
i
,
j
)
(
r
(
i
,
a
)
+
γ
V
(
j
)
)
,
∀
i
∈
S
,
∀
a
∈
A
\max_{V{\in}R^{|S|}} \sum_iV(i) \\ s.t.{\quad}V(i){\ge}\sum_{j}P_a(i,j)(r(i,a)+{\gamma}V(j)),\forall{i}{\in}S,{\forall}a{\in}A
V∈R∣S∣maxi∑V(i)s.t.V(i)≥j∑Pa(i,j)(r(i,a)+γV(j)),∀i∈S,∀a∈A
其中
V
(
i
)
V(i)
V(i)是向量
V
V
V的第
i
i
i个向量,表示从状态
i
i
i出发得到的累计奖励。这个意思我看的就是,从i出发,选择一个策略,让从
i
i
i出来到所有的
j
j
j的奖励和最大(为什么不是到奖励最大的
j
j
j最大我到现在也没有想明白)
3.基追踪问题
基追踪问题是压缩感知的一个基本问题,可以为写
min
x
∈
R
n
∣
∣
x
∣
∣
1
,
s
.
t
.
A
x
=
b
(4.1.8)
\min_{x{\in}R^n}||x||_1, \\ s.t.{\quad}Ax=b\tag{4.1.8}
x∈Rnmin∣∣x∣∣1,s.t.Ax=b(4.1.8)
对每个
∣
x
i
∣
|x_i|
∣xi∣引入一个新的变量
z
i
z_i
zi,可以将问题(4.1.8)转化为
min
z
∈
R
n
∑
i
=
1
n
z
i
,
s
.
t
.
A
x
=
b
,
−
z
i
≤
x
i
≤
z
i
,
i
=
1
,
2
,
⋯
,
n
\min_{z{\in}R^n}{\sum_{i=1}^n}z_i, \\ s.t. {\quad}Ax=b, \\ -z_i{\le}x_i{\le}z_i,i=1,2,\cdots,n
z∈Rnmini=1∑nzi,s.t.Ax=b,−zi≤xi≤zi,i=1,2,⋯,n
这是一个线性规划问题,另外,我们也可以引入
x
i
x_i
xi的正部和负部
x
i
+
,
x
i
−
≥
0
x_i^+,x_i^-{\ge}0
xi+,xi−≥0,利用
x
i
=
x
i
+
−
x
i
−
,
∣
x
i
∣
=
x
i
+
+
x
i
−
x_i=x_i^+-x_i^-,|x_i|=x_i^++x_i^-
xi=xi+−xi−,∣xi∣=xi++xi−,(这里我搜了一下不知道实数的正部负部什么意思,我觉得是不是如果
x
i
x_i
xi为正,
x
i
+
=
x
i
,
x
i
−
=
0
x_i^+=x_i,x_i^-=0
xi+=xi,xi−=0,反之亦然)问题(4.1.8)的另外一种等价的线性规划形式可以写成
min
x
+
,
x
−
∈
R
n
∑
i
=
1
n
(
x
i
+
+
x
i
−
)
,
s
.
t
.
A
x
+
−
A
x
−
=
b
,
x
+
,
x
−
≥
0
\min_{x^+,x^-{\in}R^n}\sum_{i=1}^n(x_i^++x_i^-), \\ s.t.{\quad}Ax^+-Ax^-=b, \\ x_+,x_-{\ge}0
x+,x−∈Rnmini=1∑n(xi++xi−),s.t.Ax+−Ax−=b,x+,x−≥0
4.数据拟合
在数据拟合中,除了常用的最小二乘模型外,还有最小
l
1
l_1
l1范数模型
min
x
∈
R
n
∣
∣
A
x
−
b
∣
∣
1
(4.1.9)
\min_{x{\in}R^n}||Ax-b||_1\tag{4.1.9}
x∈Rnmin∣∣Ax−b∣∣1(4.1.9)
和最小
l
∞
l_{\infty}
l∞范数模型
min
x
∈
R
n
∣
∣
A
x
−
b
∣
∣
∞
(4.1.10)
\min_{x{\in}R^n}||Ax-b||_{\infty}\tag{4.1.10}
x∈Rnmin∣∣Ax−b∣∣∞(4.1.10)
这两个问题都可以转化为线性规划的形式,通过引入变量
y
=
A
x
−
b
y=Ax-b
y=Ax−b,可以得到如下等价问题
min
x
,
y
∈
R
n
∣
∣
y
∣
∣
1
,
s
.
t
.
y
=
A
x
−
b
\min_{x,y{\in}R^n}||y||_1, \\ s.t. {\quad}y=Ax-b
x,y∈Rnmin∣∣y∣∣1,s.t.y=Ax−b
利用基追踪的类似的技巧,可以转化为线性规划问题。
对于问题4.1.10,令
t
=
∣
∣
A
x
−
b
∣
∣
∞
t=||Ax-b||_{\infty}
t=∣∣Ax−b∣∣∞,则得到等价问题
min
x
∈
R
n
,
t
∈
R
t
,
s
.
t
.
∣
∣
A
x
−
b
∣
∣
≤
t
\min_{x{\in}R^n,t{\in}R}t, \\ s.t.{\quad}||Ax-b||{\le}t
x∈Rn,t∈Rmint,s.t.∣∣Ax−b∣∣≤t
4.2 最小二乘问题
4.2.1 基本形式和应用背景
最小二乘问题的一般形式如下
min
x
∈
R
n
∑
i
=
1
m
r
i
2
(
x
)
,
(4.2.1)
\min_{x{\in}R^n}\sum_{i=1}^mr_i^2(x),\tag{4.2.1}
x∈Rnmini=1∑mri2(x),(4.2.1)
其中
r
i
:
R
n
→
R
r_i:R^n{\rightarrow}R
ri:Rn→R为实值函数,如果所有的
r
i
r_i
ri都是线性函数,我们称问题(4.2.1)为线性最小二乘为,否则称其为非线性最小二乘问题,最小二乘问题是线性回归和非线性回归的基础
最小二乘问题也常用于线性(非线性)方程组问题中(见第三章最小二乘建模),当线性(非线性)观测带有噪声时,我们一般会基于该线性(非线性)系统建议最小二乘模型,特别的,如果噪声服从高斯分布,最小二乘问题的解对应原问题的极大似然解
4.2.2 应用举例
1.线性最小二乘问题
线性最小二乘问题是回归分析中的一个基本模型,它可以表示为
min
x
∈
R
n
∑
i
=
1
m
(
a
i
T
x
−
b
)
\min_{x{\in}R^n}{\sum_{i=1}^m}(a_i^Tx-b)
x∈Rnmini=1∑m(aiTx−b)
记
A
=
[
a
1
,
a
2
,
⋯
,
a
m
]
T
A=[a_1,a_2,\cdots,a_m]^T
A=[a1,a2,⋯,am]T,那么线性最小二乘问题可以等价于如下形式:
min
x
∈
R
n
f
(
x
)
=
1
2
∣
∣
A
x
−
b
∣
∣
2
2
\min_{x{\in}R^n}f(x)=\frac{1}{2}||Ax-b||_2^2
x∈Rnminf(x)=21∣∣Ax−b∣∣22
这是一个无约束二次目标函数的优化问题,因为二次函数是凸的,所以
x
∈
R
n
x{\in}R^n
x∈Rn为其全局最小解当且仅当
x
x
x满足方程
∇
f
(
x
)
=
A
T
(
A
x
−
b
)
=
0
\nabla{f(x)}=A^T(Ax-b)=0
∇f(x)=AT(Ax−b)=0
因为
f
f
f是二次的,我们有
f
(
y
)
=
f
(
x
)
+
∇
f
(
x
)
T
(
y
−
x
)
+
1
2
(
y
−
x
)
T
∇
2
f
(
x
)
(
y
−
x
)
=
f
(
y
)
=
f
(
x
)
+
∇
f
(
x
)
T
(
y
−
x
)
+
1
2
(
y
−
x
)
T
A
T
A
(
y
−
x
)
f(y)=f(x)+\nabla{f(x)^T}(y-x)+\frac{1}{2}(y-x)^T{\nabla}^2{f(x)}(y-x) \\ =f(y)=f(x)+\nabla{f(x)^T}(y-x)+\frac{1}{2}(y-x)^TA^TA(y-x)
f(y)=f(x)+∇f(x)T(y−x)+21(y−x)T∇2f(x)(y−x)=f(y)=f(x)+∇f(x)T(y−x)+21(y−x)TATA(y−x)
因此,如果
∇
f
(
x
)
=
0
\nabla{f(x)}=0
∇f(x)=0根据
A
T
A
A^TA
ATA的正定性
f
(
y
)
≥
f
(
x
)
,
∀
y
∈
R
n
f(y){\ge}f(x),\forall{y}{\in}R^n
f(y)≥f(x),∀y∈Rn
即
x
x
x为
f
(
x
)
f(x)
f(x)的全局最小解
反之,如果 ∇ f ( x ) ≠ 0 \nabla{f(x)}{\not=}0 ∇f(x)=0,此时我们说明沿着负梯度方向目标函数将减小。
具体的,取
y
=
x
−
t
∇
f
(
x
)
y=x-t{\nabla}f(x)
y=x−t∇f(x),且
t
=
1
λ
m
a
x
(
A
T
A
)
t=\frac{1}{\lambda_{max}(A^TA)}
t=λmax(ATA)1,其中
λ
m
a
x
A
T
A
\lambda_{max}A^TA
λmaxATA表示
A
T
A
A^TA
ATA的最大特征值
PS:这里有些奇怪的是
A
T
A
A^TA
ATA明明是一个实数,那他的最大特征就是他自己了?感觉有点多此一举
将
y
y
y代入那么
f
(
x
−
t
∇
f
(
x
)
)
=
f
(
x
)
−
t
∣
∣
∇
f
(
x
)
∣
∣
2
2
+
1
2
t
2
λ
m
a
x
(
A
T
A
)
∣
∣
∇
f
(
x
)
∣
∣
2
2
=
f
(
x
)
+
(
−
t
+
1
2
t
2
λ
m
a
x
(
A
T
A
)
)
∣
∣
∇
f
(
x
)
∣
∣
2
2
=
f
(
x
)
−
1
2
λ
m
a
x
(
A
T
A
)
∣
∣
∇
f
(
x
)
∣
∣
2
2
<
f
(
x
)
f(x-t{\nabla}f(x))=f(x)-t||{\nabla}f(x)||_2^2+\frac{1}{2}t^2{\lambda}_{max}(A^TA)||\nabla{f(x)||^2_2} \\ =f(x)+(-t+\frac{1}{2}t^2{\lambda}_{max}(A^TA))||{\nabla}f(x)||_2^2 \\ =f(x)-\frac{1}{2{\lambda_{max}(A^TA)}}||{\nabla}f(x)||_2^2<f(x)
f(x−t∇f(x))=f(x)−t∣∣∇f(x)∣∣22+21t2λmax(ATA)∣∣∇f(x)∣∣22=f(x)+(−t+21t2λmax(ATA))∣∣∇f(x)∣∣22=f(x)−2λmax(ATA)1∣∣∇f(x)∣∣22<f(x)
因此在全局最小解
x
x
x处必有
∇
f
(
x
)
=
0
\nabla{f(x)}=0
∇f(x)=0
2.数据插值
数据插值是数值分析的一个基本问题,给定数据集
{
a
i
∈
R
p
,
b
i
∈
R
q
}
,
i
=
1
,
2
,
⋯
,
m
\{a_i{\in}R^p,b_i{\in}R^q\},i=1,2,\cdots,m
{ai∈Rp,bi∈Rq},i=1,2,⋯,m插值是求一个映射
f
f
f,使得
b
i
=
f
(
a
i
)
,
i
=
1
,
2
,
⋯
,
m
b_i=f(a_i),i=1,2,\cdots,m
bi=f(ai),i=1,2,⋯,m
(怎么感觉有点像拟合)
在实际中,出于计算上的可行性,我们一般会限制在一个特定函数空间上来求
f
f
f的一个近似解,如果利用线性函数逼近,则
f
(
a
)
=
X
a
+
y
f(a)=Xa+y
f(a)=Xa+y,其中
X
∈
R
q
×
p
,
y
∈
R
q
X{\in}R^{q \times p},y{\in}R^q
X∈Rq×p,y∈Rq,为了求解
X
,
y
X,y
X,y,可以建立如下最小二乘问题
min
X
∈
R
q
×
p
∑
i
=
1
m
∣
∣
X
a
i
+
y
−
b
i
∣
∣
2
\min_{X{\in}R^{q \times p}}\sum_{i=1}^m||Xa_i+y-b_i||^2
X∈Rq×pmini=1∑m∣∣Xai+y−bi∣∣2
一般的,假设
{
ϕ
i
(
a
)
}
i
=
1
n
(
n
≤
m
)
\{{\phi}_i(a)\}_{i=1}^n(n{\le}m)
{ϕi(a)}i=1n(n≤m)的为插值空间的一组基,数据插值问题可以写成
b
j
=
f
(
a
j
)
=
∑
i
=
1
n
x
i
ϕ
i
(
a
j
)
,
j
=
1
,
2
,
⋯
,
m
b_j=f(a_j)=\sum_{i=1}^nx_i{\phi}_i(a_j),j=1,2,\cdots,m
bj=f(aj)=i=1∑nxiϕi(aj),j=1,2,⋯,m
其中
x
i
x_i
xi为待定系数,这是关于
x
x
x的线性方程组,在实际中,我们考虑其替代的最小二乘模型
min
x
∈
R
∑
j
=
1
m
∣
∣
∑
i
=
1
n
x
i
ϕ
i
(
a
j
)
−
b
j
∣
∣
2
\min_{x{\in}R}{\sum_{j=1}^m}||{\sum_{i=1}^n}x_i{\phi_i(a_j)}-b_j||^2
x∈Rminj=1∑m∣∣i=1∑nxiϕi(aj)−bj∣∣2
对于基
ϕ
i
(
a
)
\phi_i(a)
ϕi(a)的选取,一般要求其反应数据的物理性质或者内在性质以及计算比较方便
除了这种基函数的和的方式,深度学习也通过一些简单函数的复合来逼近原未知函数,具体地,假设有一些简单的非线性向量函数
ϕ
i
(
θ
)
:
R
q
→
R
q
\phi_i(\theta):R^q{\rightarrow}R^q
ϕi(θ):Rq→Rq,并构造如下复合函数
f
(
θ
)
=
ϕ
n
(
X
n
ϕ
n
−
1
(
X
n
−
1
⋯
ϕ
1
(
X
1
θ
+
y
1
)
⋯
+
y
n
−
1
)
+
y
n
)
f(\theta)=\phi_n(X_n\phi_{n-1}(X_{n-1}\cdots\phi_1(X_1\theta+y_1)\cdots+y_{n-1})+y_n)
f(θ)=ϕn(Xnϕn−1(Xn−1⋯ϕ1(X1θ+y1)⋯+yn−1)+yn)
在实际中常用的简单非线性函数有
R
e
L
U
ReLU
ReLU,即
ϕ
i
(
θ
)
=
(
R
e
L
U
(
θ
1
)
,
R
e
L
U
(
θ
2
)
,
⋯
,
R
e
L
U
(
θ
q
)
)
T
,
i
=
1
,
2
,
⋯
,
n
\phi_i({\theta})=(ReLU(\theta_1),ReLU(\theta_2),\cdots,ReLU(\theta_q))^T,i=1,2,\cdots,n
ϕi(θ)=(ReLU(θ1),ReLU(θ2),⋯,ReLU(θq))T,i=1,2,⋯,n
这样的做法往往会带来更多未知的非线性,因而可能在更大的函数空间中得到未知函数的一个很好的逼近,将点
a
i
a_i
ai处的取值代入,我们得到如下非线性方程组
f
(
a
i
)
−
b
i
=
ϕ
n
(
X
n
ϕ
n
−
1
(
X
n
−
1
⋯
ϕ
1
(
X
1
a
i
+
y
1
)
⋯
+
y
n
−
1
)
+
y
n
)
−
b
i
=
0
f(a_i)-b_i=\phi_n(X_n\phi_{n-1}(X_{n-1}\cdots\phi_1(X_1a_i+y_1)\cdots+y_{n-1})+y_n)-b_i=0
f(ai)−bi=ϕn(Xnϕn−1(Xn−1⋯ϕ1(X1ai+y1)⋯+yn−1)+yn)−bi=0
这里需要求得的是关于
X
1
∈
R
q
×
p
,
X
i
∈
R
q
×
q
,
i
=
2
,
3
,
⋯
,
n
,
y
i
∈
R
q
,
i
=
1
,
2
,
⋯
,
n
X_1{\in}R^{q \times p},X_i{\in}R^{q \times q},i=2,3,\cdots,n,y_i{\in}R^q,i=1,2,\cdots,n
X1∈Rq×p,Xi∈Rq×q,i=2,3,⋯,n,yi∈Rq,i=1,2,⋯,n的非线性方程组,我们一般考虑替代的最小二乘问题
min
{
X
i
,
y
i
}
∑
i
=
1
m
∣
∣
f
(
a
i
)
−
b
i
∣
∣
2
\min_{\{X_i,y_i\}}\sum_{i=1}^m||f(a_i)-b_i||^2
{Xi,yi}mini=1∑m∣∣f(ai)−bi∣∣2
3.深度Q学习
在强化学习中,为了求解出最优策略及相应的期望奖励,往往需要考虑动作价值函数(action-value function)
Q
:
S
×
A
→
R
Q:{S \times A{\rightarrow}R}
Q:S×A→R,注意,我们一般称
V
V
V为价值函数即value function,其表示从状态
s
s
s出发,采取动作
a
a
a可以获得的最大期望奖励,根据最优性,其
B
e
l
l
m
a
n
Bellman
Bellman方程为
Q
(
s
,
a
)
=
r
(
s
,
a
)
+
γ
∑
s
′
P
a
(
s
,
s
′
)
max
a
′
Q
(
s
′
,
a
′
)
(4.2.2)
Q(s,a)=r(s,a)+{\gamma}{\sum_{s'}}P_a(s,s')\max_{a'}Q(s',a')\tag{4.2.2}
Q(s,a)=r(s,a)+γs′∑Pa(s,s′)a′maxQ(s′,a′)(4.2.2)
这个应该很好懂把,就是在状态
s
s
s下做
a
a
a得到的最大期望奖励等于直接得到的reward再加上做了
a
a
a,到达环境
s
′
s'
s′后,在
s
′
s'
s′处做最优的
a
′
a'
a′得到的奖励
对于求解方程(4.2.2),一个常用的迭代算法的格式为
Q
k
+
1
(
s
,
a
)
=
r
(
s
,
a
)
+
γ
∑
s
′
P
a
(
s
,
s
′
)
max
a
′
Q
k
(
s
′
,
a
′
)
(4.2.3)
Q_{k+1}(s,a)=r(s,a)+{\gamma}{\sum_{s'}}P_a(s,s')\max_{a'}Q_k(s',a')\tag{4.2.3}
Qk+1(s,a)=r(s,a)+γs′∑Pa(s,s′)a′maxQk(s′,a′)(4.2.3)
同样的,每一轮更新都需要对所有状态动作对
(
s
,
a
)
(s,a)
(s,a)做一次迭代
然而在实际问题中,我们通常没有模型信息,也就是说,上次涉及的奖励和状态转移都是未知的,为此,我们必须与环境不断进行交互,获取经验来估计这些项的大小,在与环境的交互中,我们可以得到很多形如
(
s
t
,
a
t
,
r
t
,
s
t
+
1
)
(s_t,a_t,r_t,s_{t+1})
(st,at,rt,st+1)的四元组,它记录了智能体在时刻
t
t
t处于状态
s
t
s_t
st时,选择某个动作
a
t
a_t
at转移至状态
s
t
+
1
s_{t+1}
st+1,同时获得奖励
r
t
r_t
rt,算法可以根据这一的小段进行迭代更新
Q
k
+
1
(
s
t
,
a
t
)
=
(
1
−
α
)
Q
k
(
s
t
,
a
t
)
+
α
(
r
t
+
γ
max
a
′
Q
k
(
s
t
+
1
,
a
′
)
)
Q_{k+1}(s_t,a_t)=(1-\alpha)Q_k(s_t,a_t)+\alpha(r_t+\gamma\max_{a'}Q_k(s_{t+1},a'))
Qk+1(st,at)=(1−α)Qk(st,at)+α(rt+γa′maxQk(st+1,a′))
每次迭代更新呢,加法左边是表示上一次的Q表信息,我们迭代更新是一点点迭代的,不能丢掉上次的Q表信息,右边是对(4.2.3)式右端期望值的一个采样,就是通过我们的采样信息,得到
(
r
t
+
γ
max
a
′
Q
k
(
s
t
+
1
,
a
′
)
)
(r_t+\gamma\max_{a'}Q_k(s_{t+1},a'))
(rt+γmaxa′Qk(st+1,a′)),然后通过这个跟上一次的Q表一起来更新我们的Q表。为什么要有上次的信息呢?直接用第二项更新不行吗?不行的,因为你智能体每次可能做相同的动作,但到达的
s
′
s'
s′和
r
t
r_t
rt都有可能不一样,所以需要这样迭代更新,才能运用到所有的数据。
为了方便计算,我们不会等到所有数据生成后再计算平均值,而是利用凸组合的方式持续不断的将新的计算结果按一定权重加到原有数据上。这是强化学习中的一种常用均值计算技巧。
在实际应用场景中,状态空间非常大,甚至是连续的,当计算所有状态和动作对应的动作价值函数时,会非常难,无论从存储量还是计算量来说。为了解决这个问题,我们引入“归纳”的概念,简单来说,我们只需要学习状态集合中的一部分状态动作的价值函数,然后通过这些动作价值函数去归纳附近其他类似状态的动作价值函数。
这样,只需要学习一部分状态上的动作价值函数,就可以得到整个空间中动作价值函数的估计。
实现归纳这一想法的基本途径是函数近似,我们用
Q
θ
(
s
,
a
)
Q_{\theta}(s,a)
Qθ(s,a)来近似动作价值函数,它带有参数
θ
∈
R
d
\theta{\in}R^d
θ∈Rd。当参数
θ
\theta
θ固定时,它就是一个关于状态
s
s
s和动作
a
a
a的二元函数。
Q
θ
(
s
,
a
)
Q_{\theta}(s,a)
Qθ(s,a)有很多不同的形式,它可以是最简单的线性函数,也可以是复杂的神经网络(深度Q学习)。其权重矩阵和偏差项作为这里的参数
θ
\theta
θ。在带函数近似的Q学习方法中,我们不再对动作价值函数列表进行学习,而是学习参数
θ
\theta
θ,使得近似函数
Q
θ
(
s
,
a
)
Q_{\theta}(s,a)
Qθ(s,a)尽可能满足最优
B
e
l
l
m
a
n
Bellman
Bellman方程,参数
θ
\theta
θ的维数通常要比状态的个数小得多,改变参数中的一个维度,会对动作价值函数估计产生大范围的影响,会做动作价值函数估计产生大范围的影响,由于引入了近似处理,
Q
θ
(
s
,
a
)
Q_{\theta}(s,a)
Qθ(s,a)通常不会和真实动作价值函数完全相等,严格来讲,我们希望最小化平方损失,即
min
θ
L
(
θ
)
=
E
(
s
,
a
)
∼
p
(
s
,
a
)
[
(
y
θ
(
s
,
a
)
−
Q
θ
(
s
,
a
)
)
2
]
(4.2.4)
\min_{\theta}L(\theta)=E_{(s,a){\sim}p(s,a)}[(y_{\theta}(s,a)-Q_{\theta}(s,a))^2]\tag{4.2.4}
θminL(θ)=E(s,a)∼p(s,a)[(yθ(s,a)−Qθ(s,a))2](4.2.4)
其中
p
(
s
,
a
)
p(s,a)
p(s,a)是状态动作对
(
s
,
a
)
(s,a)
(s,a)出现的概率分布
y
θ
(
s
,
a
)
=
r
(
s
,
a
)
+
γ
∑
s
′
P
a
(
s
,
s
′
)
max
a
′
Q
θ
(
s
′
,
a
′
)
y_{\theta}(s,a)=r(s,a)+{\gamma}{\sum_{s'}}P_a(s,s')\max_{a'}Q_{\theta}(s',a')
yθ(s,a)=r(s,a)+γs′∑Pa(s,s′)a′maxQθ(s′,a′)
是近似函数希望逼近的目标,问题4.2.4实际上就是在极小化方程4.2.2的残差。但在实际应用中,由于4.2.4比较复杂,深度Q学习采用迭代方式求解,在迭代的第
i
i
i步近似求解如下优化问题
min
θ
L
i
(
θ
)
=
E
(
s
,
a
)
∼
p
(
s
,
a
)
[
(
y
i
(
s
,
a
)
−
Q
θ
(
s
,
a
)
)
2
]
(4.2.5)
\min_{\theta}L_i(\theta)=E_{(s,a){\sim}p(s,a)}[(y_{i}(s,a)-Q_{\theta}(s,a))^2]\tag{4.2.5}
θminLi(θ)=E(s,a)∼p(s,a)[(yi(s,a)−Qθ(s,a))2](4.2.5)
其中
y
i
=
r
(
s
,
a
)
+
γ
∑
s
′
P
a
(
s
,
s
′
)
max
a
′
Q
θ
i
−
1
(
s
′
,
a
′
)
y_{i}=r(s,a)+{\gamma}{\sum_{s'}}P_a(s,s')\max_{a'}Q_{\theta_{i-1}}(s',a')
yi=r(s,a)+γs′∑Pa(s,s′)a′maxQθi−1(s′,a′)
参数
θ
i
−
1
\theta_{i-1}
θi−1来自上一步迭代的估计,和问题(4.2.4)不同,
y
i
y_i
yi与待优化的变量
θ
\theta
θ无关,因此可以认为问题(4.2.5)是随机版本的最小二乘问题。
4.带有微分方程约束优化问题
当约束中含有微分方程时,我们称相应的优化问题为带微分方程约束的优化问题,它在最优控制、形状优化等各种领域中有着广泛应用。这里,我们以瓦斯油催化裂解为例。这个问题求解瓦斯油催化裂解生成气体和其他副产物的反应系数,反应可以由如下非线性常微分方程组表示:
{
y
1
˙
=
−
(
θ
1
+
θ
3
)
y
1
2
y
˙
2
=
θ
1
y
1
2
−
θ
2
y
2
,
(4.2.6)
\left\{ \begin{matrix} \dot{y_1}=-(\theta_1+\theta_3)y_1^2 \\ \dot{y}_2=\theta_1y_1^2-\theta_2y_2,\tag{4.2.6} \end{matrix} \right.
{y1˙=−(θ1+θ3)y12y˙2=θ1y12−θ2y2,(4.2.6)
其中系数
θ
i
≥
0
,
i
=
1
,
2
,
3
\theta_i{\ge}0,i=1,2,3
θi≥0,i=1,2,3,且
y
1
,
y
2
y_1,y_2
y1,y2的初始条件的已知的,我们考虑的问题是
min
θ
∈
R
3
∑
j
=
1
n
∣
∣
y
(
τ
j
,
θ
)
−
z
j
∣
∣
2
s
.
t
.
y
(
τ
;
θ
)
满足方程组(
4.2.6
)
\min_{\theta{\in}R^3}\sum_{j=1}^n||y(\tau_j,\theta)-z_j||^2 \\ s.t.{\quad}y(\tau;\theta)满足方程组(4.2.6)
θ∈R3minj=1∑n∣∣y(τj,θ)−zj∣∣2s.t.y(τ;θ)满足方程组(4.2.6)
这里
z
j
z_j
zj是时刻
τ
j
\tau_j
τj的
y
y
y的测量值,
n
n
n为测量的时刻数量
(什么玩意,没看懂
4.3 复合优化问题
4.3.1 基本形式和应用背景
复合优化问题一般可以表示为如下形式:
min
x
∈
R
n
ψ
(
x
)
=
f
(
x
)
+
h
(
x
)
\min_{x{\in}R^n}\psi(x)=f(x)+h(x)
x∈Rnminψ(x)=f(x)+h(x)
其中
f
(
x
)
f(x)
f(x)是光滑函数(比如数据拟合项),
h
(
x
)
h(x)
h(x)可能是非光滑的(比如
l
1
l_1
l1正则项,约束集合的示性函数,或他们的线性组合),复合优化问题在实际走有着十分重要的应用,并且其中的函数
h
(
x
)
h(x)
h(x)一般是凸的,由于应用问题的驱动,复合优化问题的算法近年来得到了大量的研究,比如次梯度法,近似点梯度法,
N
e
s
t
e
r
o
v
Nesterov
Nesterov加速算法和交替方向乘子法等等,后续会详细介绍。
在下表中,我们总结了实际中常用的复合优化问题的可能形式
1.图像去噪
图像去噪问题是指从一个带噪声的图像中恢复出不带噪声的原图,记带噪声的图像为
y
y
y,噪声为
ϵ
\epsilon
ϵ,那么
y
=
x
+
ϵ
y=x+\epsilon
y=x+ϵ
其中
x
x
x为要恢复的真实图像,利用全变差模型(3.11.5),去噪问题可以表示为
min
x
∈
R
n
×
n
∣
∣
x
−
y
∣
∣
F
2
+
λ
∣
∣
x
∣
∣
T
V
\min_{x{\in}R^{n \times n}}||x-y||_F^2+\lambda||x||_{TV}
x∈Rn×nmin∣∣x−y∣∣F2+λ∣∣x∣∣TV
这里,离散的线性算子为单位矩阵,我们也可以利用小波框架,小波变换可以很好的保护信号尖峰和突变信号,并且噪声对应的小波系数往往很小,因此,去噪问题的小波分解模型可以写为
min
x
∣
∣
λ
⊙
W
(
x
)
∣
∣
1
+
1
2
∣
∣
x
−
y
∣
∣
F
2
\min_{x}||\lambda{\odot}W(x)||_1+\frac{1}{2}||x-y||_F^2
xmin∣∣λ⊙W(x)∣∣1+21∣∣x−y∣∣F2
其中
λ
=
(
λ
1
,
λ
2
,
⋯
,
λ
m
)
T
\lambda=(\lambda_1,\lambda_2,\cdots,\lambda_m)^T
λ=(λ1,λ2,⋯,λm)T是给定的
2.盲反卷积
盲反卷积(也叫去模糊)是图像处理中的一个基本问题,其目的是从一个模糊的图像恢复出原来清晰的图像, 导致图像模糊的原因有很多种,比如相机抖动、聚焦不良、相机和拍摄物体所在的非静止环境以及成像设备的内在 缺陷等等,因此一般来说盲反卷积是不容易做到的。
为了让这个复杂的困难变得简单一些,我们做如下假设:模糊是线性的(不做图像变化)以及空间不变的(即与像素位置无关),线性且空间不变的模糊可以表示成一个卷积,令
x
x
x为原始的清晰图像,
a
a
a为未知的卷积核对应的矩阵,
y
y
y为观测到的模糊图像以及
ϵ
\epsilon
ϵ为观测噪声,盲反卷积问题可以表示成
y
=
a
∗
x
+
ϵ
y=a*x+\epsilon
y=a∗x+ϵ
其中*为卷积算子,假设噪声为高斯噪声,则转化为求解优化问题(前面提到过)
min
a
,
x
∣
∣
y
−
a
∗
x
∣
∣
2
2
\min_{a,x}||y-a*x||_2^2
a,xmin∣∣y−a∗x∣∣22
再假设原始图像信号在小波变换下是稀疏的,我们进一步得到如下复合优化问题
min
a
,
x
∣
∣
y
−
a
∗
x
∣
∣
2
2
+
∣
∣
λ
⊙
W
x
∣
∣
1
\min_{a,x}||y-a*x||_2^2+||\lambda{\odot}Wx||_1
a,xmin∣∣y−a∗x∣∣22+∣∣λ⊙Wx∣∣1
其中
W
W
W是小波框架,
λ
=
(
λ
1
,
λ
2
,
⋯
,
λ
m
)
T
\lambda=(\lambda_1,\lambda_2,\cdots,\lambda_m)^T
λ=(λ1,λ2,⋯,λm)T用来控制稀疏度
2023-09-15还不懂小波变换T T
4.4 随机优化问题
4.4.1 基本形式和应用背景
随机优化问题可以表示成以下形式
min
x
∈
χ
E
ξ
[
F
(
x
,
ξ
)
]
+
h
(
x
)
\min_{x{\in}\chi}E_{\xi}[F(x,\xi)]+h(x)
x∈χminEξ[F(x,ξ)]+h(x)
其中
χ
⊆
R
n
\chi{\sube}R^n
χ⊆Rn表示决策变量
x
x
x的可行域,
ξ
\xi
ξ是一个随机变量(分布一般是未知的)。对于每个固定的
ξ
\xi
ξ,
F
(
x
,
ξ
)
F(x,\xi)
F(x,ξ)表示样本
ξ
\xi
ξ上的损失或者奖励。正则项
h
(
x
)
h(x)
h(x)来保证解的某种性质,由于变量
ξ
\xi
ξ分布的未知性,其数学期望
E
ξ
[
F
(
x
,
ξ
)
]
E_{\xi}[F(x,\xi)]
Eξ[F(x,ξ)]一般是不可计算的,为了得到目标函数值的一个比较好的估计,其实际问题中往往利用
ξ
\xi
ξ的经验分布来代替其真实分布,具体地,假设有
N
N
N个样本
ξ
1
,
ξ
2
,
⋯
,
ξ
N
\xi_1,\xi_2,\cdots,\xi_N
ξ1,ξ2,⋯,ξN,令
f
i
(
x
)
=
F
(
x
,
ξ
i
)
f_i(x)=F(x,\xi_i)
fi(x)=F(x,ξi),我们得到优化问题
min
x
∈
χ
f
(
x
)
=
1
N
∑
i
=
1
N
f
i
(
x
)
+
h
(
x
)
(4.4.1)
\min_{x\in{\chi}}f(x)=\frac{1}{N}\sum_{i=1}^Nf_i(x)+h(x)\tag{4.4.1}
x∈χminf(x)=N1i=1∑Nfi(x)+h(x)(4.4.1)
称其为经验风险极小化问题或者采样平均极小化问题,这个问题通常是难以求解的,一方面是因为样本数
N
N
N比较多(因此函数值、梯度计算代价比较高),另一方面是因为优化问题的可行域空间维数
n
n
n比较大
这个问题在统计学、机器学习、计算机科学中有着重要的应用,对于该问题的求解,我们需要在传统的方法上引入随机性以减少算法中目标函数值和梯度等的计算代价。
4.4.2 应用举例
第一、三章中有很多例子都可以写成随机优化的形式,我们这里还将介绍随机优化在随机主成分分析最和分布式鲁棒优化问题中的应用
1.随机主成分分析
在主成分分析中,如果样本点
ξ
\xi
ξ服从某个零均值分布
D
D
D,那么找方差最大的
d
d
d维子空间的优化问题可以写成
max
X
∈
R
p
×
d
T
r
(
X
T
E
ξ
∼
D
[
ξ
ξ
T
]
X
)
s
.
t
.
X
T
X
=
I
(4.4.2)
\max_{X{\in}R^{p \times d}}Tr(X^TE_{\xi\sim{D}}[\xi\xi^T]X){\quad}s.t.X^TX=I\tag{4.4.2}
X∈Rp×dmaxTr(XTEξ∼D[ξξT]X)s.t.XTX=I(4.4.2)
其中
E
ξ
∼
D
[
ξ
ξ
T
]
E_{\xi{\sim}D}[\xi\xi^T]
Eξ∼D[ξξT]为
ξ
\xi
ξ的协方差矩阵,在实际中,分布
D
D
D是未知的,已知的只是关于分布
D
D
D的采样。(其实就是换了种说法我感觉)大差不差的。
随机主成分分析关心的问题是在求得问题(4.4.2)的高逼近解过程中需要的样本数量以及消耗的时间。受制于计算机内存的限制,我们还需要考虑在有限内存情况下的逼近解的计算与分析。
2.分布式鲁棒优化
为了提高预测期的泛化能力,一种常用的方法是考虑分布式鲁棒优化问题
min
h
max
z
∈
I
E
z
[
F
(
h
,
z
)
]
\min_h{\quad}\max_{z{\in}I}E_z[F(h,z)]
hminz∈ImaxEz[F(h,z)]
在这里集合
I
I
I中的随机变量的分布与真实数据的分布在一定意义下非常接近。
Wasserstein 距离
wasserstein 距离常常可以被用来计算两个分布之间的差异,相比于 KL,JS散度,它可以计算两个完全不重合的分布之间的差异,并且提供有效的梯度信息。具体的定理推到我们不在这里写了。两个分布间的 wasserstein 距离越大,说明分布的差异越大。
以现有的样本集合构成的分布作为中心,考虑一个 wasserstein 空间球体内的所有分布,这个空间球体的半径为
ϵ
\epsilon
ϵ ,真实分布理论上应该不会偏离训练样本集合的分布很远,那么只要
ϵ
\epsilon
ϵ合理,就可以认为真实分布应该包含在 wasserstein 球中,那么我们只要能保证模型在整个球体内效果最差的分布下得到最好的结果,就可以保证这个结果是真实样本分布下的性能的下界。
4.5 半定规划
半定规划(SDP)是线性规划在矩阵空间中的一种推广,它的目标函数和等式约束均为关于等式的线性函数,而它与线性规划不同的地方是其自变量取值于半正定矩阵空间。作为一种特殊的矩阵优化问题(见4.6节),半定规划在某些结构上和线性规划非常相似,很多研究线性规划的方法都可以作为研究半定规划的基础。
由于半定规划地位的特殊性,我们在本节中单独讨论半定规划的形式和应用,而一般的矩阵优化问题在4.6节讨论
4.5.1 基本形式和应用背景
半定规划问题的一般形式如下
min
c
T
x
,
s
.
t
.
x
1
A
1
+
x
2
A
2
+
⋯
+
x
n
A
n
+
B
⪯
0
,
G
x
=
h
(4.5.1)
\min c^Tx, \\ s.t.{\quad}x_1A_1+x_2A_2+\cdots+x_nA_n+B\preceq0,\\ Gx=h\tag{4.5.1}
mincTx,s.t.x1A1+x2A2+⋯+xnAn+B⪯0,Gx=h(4.5.1)
其中
c
∈
R
n
,
A
i
∈
S
m
,
i
=
1
,
2
,
⋯
,
m
,
B
∈
S
m
,
G
∈
R
p
×
n
,
h
∈
R
p
c{\in}R^n,A_i{\in}S^m,i=1,2,\cdots,m,B{\in}S^m,G{\in}R^{p \times n},h{\in}R^p
c∈Rn,Ai∈Sm,i=1,2,⋯,m,B∈Sm,G∈Rp×n,h∈Rp为已知的向量和矩阵,
x
=
(
x
1
,
x
2
,
⋯
,
x
n
)
∈
R
n
x=(x_1,x_2,\cdots,x_n){\in}R^n
x=(x1,x2,⋯,xn)∈Rn是自变量,这里,如果矩阵
A
,
B
A,B
A,B是对角的,那么问题(4.5.1)退化为线性规划问题。类似于线性规划问题,我们考虑半定规划的标准形式
min
<
C
,
X
>
,
s
.
t
.
<
A
1
,
X
>
=
b
1
,
⋯
,
<
A
m
,
X
>
=
b
m
,
X
⪰
0
(4.5.2)
\min<C,X>, \\ s.t.<A_1,X>=b_1,\\ \cdots,\\ <A_m,X>=b_m,\\ X\succeq0 \tag{4.5.2}
min<C,X>,s.t.<A1,X>=b1,⋯,<Am,X>=bm,X⪰0(4.5.2)
和不等式形式
min
c
T
x
s
.
t
.
x
1
A
1
+
x
2
A
2
+
⋯
+
x
n
A
n
+
B
⪯
0
(4.5.3)
\min c^Tx \\ s.t.{\quad}x_1A_1+x_2A_2+\cdots+x_nA_n+B{\preceq}0\tag{4.5.3}
mincTxs.t.x1A1+x2A2+⋯+xnAn+B⪯0(4.5.3)
任何(4.5.1)式都可以转化为(4.5.2)式或者(4.5.3)式的形式
4.5.2 应用举例
1.二次约束二次规划问题的半定规划松弛
考虑二次约束二次规划问题
min
x
∈
R
n
x
T
A
0
x
+
2
b
0
T
x
+
c
0
,
s
.
t
.
x
T
A
i
x
+
2
b
i
T
x
+
c
i
≤
0
,
i
=
1
,
2
,
⋯
,
m
(4.5.4)
\min_{x{\in}R^n}x^TA_0x+2b_0^Tx+c_0,\\ s.t.{\quad}x^TA_ix+2b_i^Tx+c_i{\le}0,i=1,2,\cdots,m\tag{4.5.4}
x∈RnminxTA0x+2b0Tx+c0,s.t.xTAix+2biTx+ci≤0,i=1,2,⋯,m(4.5.4)
其中
A
i
A_i
Ai为
n
×
n
n \times n
n×n对称矩阵,当部分
A
i
A_i
Ai为对称不定矩阵时,问题(4.5.4)是NP难的非凸优化问题
(不定矩阵:既不是半正定也不是半负定and,这里的x应该默认都是n行1列的)
现在我们写出问题4.5.4的半定规划松弛问题,对任意
x
∈
R
n
x{\in}R^n
x∈Rn以及
A
∈
S
n
A{\in}S^n
A∈Sn,有恒等式
x
T
A
x
=
T
r
(
x
T
A
x
)
=
T
r
(
A
x
x
T
)
=
<
A
,
x
x
T
>
x^TAx=Tr(x^TAx)=Tr(Axx^T)=<A,xx^T>
xTAx=Tr(xTAx)=Tr(AxxT)=<A,xxT>
第三个等号可以看一下这个,但是他这个有点小问题,主要用到最后那个
T
r
(
x
i
x
j
T
)
=
x
i
T
x
j
Tr(x_ix_j^T)=x_i^Tx_j
Tr(xixjT)=xiTxj就很好证了,可以自己推一下
因此原始问题等价于
min
x
∈
R
n
<
A
0
,
X
>
+
2
b
0
T
x
+
c
0
s
.
t
.
<
A
i
,
X
>
+
2
b
i
T
x
+
c
i
≤
0
,
i
=
1
,
2
,
⋯
,
m
X
=
x
x
T
(4.5.5)
\min_{x{\in}R^n}<A_0,X>+2b_0^Tx+c_0 \\ s.t.{\quad}<A_i,X>+2b_i^Tx+c_i{\le}0,i=1,2,\cdots,m\\ X=xx^T\tag{4.5.5}
x∈Rnmin<A0,X>+2b0Tx+c0s.t.<Ai,X>+2biTx+ci≤0,i=1,2,⋯,mX=xxT(4.5.5)
进一步的
x
T
A
i
x
+
2
b
i
T
x
+
c
i
=
<
(
A
i
b
i
b
i
T
1
)
,
(
X
x
T
x
1
)
>
=
(
d
e
f
)
<
A
i
ˉ
,
X
ˉ
>
,
i
=
1
,
2
,
⋯
,
m
x^TA_ix+2b_i^Tx+c_i=<\begin{pmatrix} A_i&b_i\\ b_i^T&1\\ \end{pmatrix},\begin{pmatrix} X&x^T\\ x&1\\ \end{pmatrix}>=(def)<\bar{A_i},\bar{X}>,i=1,2,\cdots,m
xTAix+2biTx+ci=<(AibiTbi1),(XxxT1)>=(def)<Aiˉ,Xˉ>,i=1,2,⋯,m
接下来将4.5.5松弛为半定规划问题,在问题(4.5.5)中,唯一的非线性部分是约束
X
=
x
x
T
X=xx^T
X=xxT,我们将其松弛为半正定约束
X
⪰
x
x
T
X{\succeq}xx^T
X⪰xxT,可以证明,
X
ˉ
⪰
0
\bar{X}{\succeq}0
Xˉ⪰0与
X
⪰
x
x
T
X{\succeq}xx^T
X⪰xxT是等价的,因此这个额问题的半定规划松弛可以写为
min
<
A
0
ˉ
,
X
ˉ
>
s
.
t
.
<
A
i
,
X
ˉ
ˉ
>
≤
0
,
i
=
1
,
2
,
⋯
,
m
,
X
⪰
0
,
X
ˉ
n
+
1
,
n
+
1
=
1
\min{\quad}<\bar{A_0},\bar{X}> \\ s.t.{\quad}<\bar{A_i,\bar{X}}>{\le}0,i=1,2,\cdots,m,\\ X{\succeq}0,\\ \bar{X}_{n+1,n+1}=1
min<A0ˉ,Xˉ>s.t.<Ai,Xˉˉ>≤0,i=1,2,⋯,m,X⪰0,Xˉn+1,n+1=1
最后一个等式啥意思我也不知道,前面倒是都可以理解
2.最大割问题的半定规划松弛
令
G
G
G为一个无向图,其节点集合为
V
=
{
1
,
2
,
⋯
,
n
}
V=\{1,2,\cdots,n\}
V={1,2,⋯,n}的边的集合为
E
E
E.令
w
i
j
=
w
j
i
w_{ij}=w_{ji}
wij=wji为边
i
,
j
∈
E
{i,j}{\in}E
i,j∈E上的权重,并假设
w
i
j
≥
0
w_{ij}{\ge}0
wij≥0。最大割问题是找到节点集合
V
V
V的一个子集
S
S
S,使得
S
S
S和他的补集
S
ˉ
\bar{S}
Sˉ之间相连边的权重之和最大化,我们可以将最大割问题写成如下整数规划的形式:令
x
j
=
1
,
j
∈
S
x_j=1,j{\in}S
xj=1,j∈S和
x
j
=
−
1
,
j
∈
S
ˉ
x_j=-1,j{\in}\bar{S}
xj=−1,j∈Sˉ,则
max
1
2
∑
i
<
j
(
1
−
x
i
x
j
)
w
i
j
s
.
t
.
x
j
∈
{
−
1
,
1
}
,
j
=
1
,
2
,
⋯
,
n
(4.5.6)
\max{\quad}\frac{1}{2}{\sum_{i<j}}(1-x_ix_j)w_{ij}\\ s.t.{\quad}x_j{\in}\{-1,1\},j=1,2,\cdots,n\tag{4.5.6}
max21i<j∑(1−xixj)wijs.t.xj∈{−1,1},j=1,2,⋯,n(4.5.6)
在问题4.5.6中,只有
x
i
x_i
xi和
x
j
x_j
xj不同时,
w
i
j
w_{ij}
wij非0,上面的
i
<
j
i<j
i<j是为了不重复。最大割问题是一个离散优化问题,很难再多项式时间内找到他的最优解,接下来介绍如何将4.5.6松弛成一个半定规划问题
令
W
=
(
w
i
j
)
∈
S
n
W=(w_{ij}){\in}S^n
W=(wij)∈Sn,并定义
C
=
−
1
4
(
D
i
a
g
(
W
1
)
−
W
)
C=-\frac{1}{4}(Diag(W1)-W)
C=−41(Diag(W1)−W)为图
G
G
G的拉普拉斯矩阵的
−
1
4
-\frac{1}{4}
−41倍,则问题4.5.6可以等价写为
min
x
T
C
x
s
.
t
.
x
i
2
=
1
,
i
=
1
,
2
,
⋯
,
n
\min{\quad}x^TCx \\ s.t.{\quad}x_i^2=1,i=1,2,\cdots,n
minxTCxs.t.xi2=1,i=1,2,⋯,n
其中
W
1
W1
W1是加权度矩阵,拉普拉斯矩阵有很多很好的性质,大家可以自行搜索(我不懂他如何变成这种
x
T
C
x
x^TCx
xTCx)想不太到,本质上还是让
x
=
1
和
x
=
−
1
x=1和x=-1
x=1和x=−1的权重之和尽可能的大,并且让
S
S
S或
S
ˉ
\bar{S}
Sˉ之间的权重之和尽可能小,这样去优化问题我不知道是否可以得到最优解,因为原始的问题是不需要考虑
S
S
S和
S
ˉ
\bar{S}
Sˉ内部的。但是不得不承认的是拉普拉斯矩阵是有很好的性质的。
由于目标函数是关于
x
x
x的二次函数,利用前面的技巧可将其等价代换为
<
C
,
x
x
T
>
<C,xx^T>
<C,xxT>,接下来令
X
=
x
x
T
X=xx^T
X=xxT,注意到约束
x
i
2
=
1
x_i^2=1
xi2=1,这意味着矩阵
X
X
X的对角线元素
X
i
i
=
1
X_{ii}=1
Xii=1(矩阵
X
i
i
=
1
X_{ii}=1
Xii=1就能代表其他位置都会等于1或者-1了),因此我们将最大割问题转化为
m
i
n
<
C
,
X
>
s
.
t
.
X
i
i
=
1
,
i
=
1
,
2
,
⋯
,
n
X
⪰
0
,
r
a
n
k
(
X
)
=
1
(4.5.7)
min <C,X> \\ s.t.{\quad}X_{ii}=1,i=1,2,\cdots,n \\ X{\succeq}0,rank(X)=1\tag{4.5.7}
min<C,X>s.t.Xii=1,i=1,2,⋯,nX⪰0,rank(X)=1(4.5.7)
问题4.5.6和问题4.5.7是等价的,因为
X
=
x
x
T
X=xx^T
X=xxT可以用约束
X
⪰
0
X{\succeq}0
X⪰0和
r
a
n
k
(
X
)
=
1
rank(X)=1
rank(X)=1等价刻画(自己推一下就知道了)若在问题4.5.7中将秩一约束去掉,我们就可以得到最大割问题的半定规划松弛形式
min
<
C
,
X
>
s
.
t
.
X
i
i
=
1.
i
=
1
,
2
,
⋯
,
n
X
⪰
0
(4.5.8)
\min<C,X>\\ s.t.{\quad}X_{ii}=1.i=1,2,\cdots,n \\ X{\succeq}0\tag{4.5.8}
min<C,X>s.t.Xii=1.i=1,2,⋯,nX⪰0(4.5.8)
问题4.5.8是原最大问题的一个松弛,因此他们并不等价,文献指出求解问题4.5.8可以给出原最大割问题的一个0.8786-近似解
3.极小化最大特征值
设
M
(
z
)
M(z)
M(z)为一个以
z
z
z为参数的对称矩阵,极小化最大特征值问题的最终目标是选取一个
z
z
z使得
M
(
z
)
M(z)
M(z)的最大特征值最小,即我们要求解问题
min
z
∈
R
n
λ
m
a
x
(
M
(
z
)
)
(4.5.9)
\min_{z{\in}R^n}\lambda_{max}(M(z))\tag{4.5.9}
z∈Rnminλmax(M(z))(4.5.9)
利用上方图的等价转换技巧容易将问题4.5.9转化成上方图的形式
min
t
s
.
t
.
t
≥
λ
m
a
x
(
M
(
z
)
)
(4.5.10)
\min t \\ s.t.{\quad}t {\ge}\lambda_{max}(M(z))\tag{4.5.10}
mints.t.t≥λmax(M(z))(4.5.10)
问题4.5.10中
t
t
t和
z
z
z都是自变量,在实际应用中,
M
(
z
)
M(z)
M(z)线性依赖于
z
z
z的情形比较常见,即
M
(
z
)
=
A
0
+
∑
i
=
1
m
z
i
A
i
M(z)=A_0+{\sum_{i=1}^m}z_iA_i
M(z)=A0+i=1∑mziAi
其中
A
0
,
A
1
,
⋯
,
A
m
A_0,A_1,\cdots,A_m
A0,A1,⋯,Am为对称矩阵,我们指出,当
M
(
z
)
M(z)
M(z)为
z
z
z的上述线性映射时,问题4.5.10实际上是一个半定规划问题。实际上,可证明
λ
m
a
x
(
M
(
z
)
)
≤
t
{\lambda_{max}(M(z))}{\le}t
λmax(M(z))≤t当且仅当
t
I
−
(
M
(
z
)
)
≥
0
tI-(M(z)){\ge}0
tI−(M(z))≥0,因此我们得到半定规划问题
min
t
s
.
t
.
t
I
−
A
0
−
∑
i
=
1
m
z
i
A
i
⪰
0
\min{t} \\ s.t.{\quad}tI-A_0-{\sum_{i=1}^mz_iA_i{\succeq}0}
mints.t.tI−A0−i=1∑mziAi⪰0
4.6 矩阵优化
4.6.1 基本形式和应用背景
矩阵优化问题具有如下形式:
min
X
∈
χ
ψ
(
X
)
\min_{X{\in}\chi}{\psi(X)}
X∈χminψ(X)
其中
χ
\chi
χ为特定的矩阵空间,
ψ
(
X
)
:
χ
→
R
\psi(X):\chi{\rightarrow}R
ψ(X):χ→R为给定的函数,可能是非光滑的。对于矩阵优化问题,如果决策变量为一个
n
×
n
n \times n
n×n的矩阵,那么我们可能需要确定
n
2
n^2
n2个元素,因此,决策变量的维数过大往往是矩阵优化问题难以快速求解的一个重要因素。
矩阵优化是在近十年来发展起来的一类变量含有矩阵的优化问题。由于矩阵变量函数的导数计算的复杂性,对于某些问题我们也给出其涉及的导数
(1)半定规划问题(4.5.2):半定规划是一类特殊的矩阵优化问题,它的目标函数和约束均为线性函数,自变量 X X X取值于半正定矩阵空间中,在4.5已经讨论了半定规划的具体形式和应用
(2)低秩矩阵恢复问题(1.3.2):
min
x
∈
R
m
×
n
μ
∣
∣
X
∣
∣
∗
+
1
2
∑
(
i
,
j
)
∈
Ω
(
X
i
j
−
M
i
j
)
2
\min_{x{\in}R^{m \times n}}\mu||X||_*+\frac{1}{2}\sum_{(i,j){\in}\Omega}(X_{ij}-M_{ij})^2
x∈Rm×nminμ∣∣X∣∣∗+21(i,j)∈Ω∑(Xij−Mij)2
考虑函数
h
(
X
)
=
∣
∣
X
∣
∣
∗
h(X)=||X||_*
h(X)=∣∣X∣∣∗,其次微分为
∂
h
(
X
)
=
{
U
V
T
+
W
∣
∣
∣
W
∣
∣
2
≤
1
,
U
T
W
=
0
,
W
V
=
0
}
\partial{h(X)}=\{UV^T+W|{\quad}||W||_2{\le}1,U^TW=0,WV=0\}
∂h(X)={UVT+W∣∣∣W∣∣2≤1,UTW=0,WV=0}
其中
X
=
U
∑
V
T
X=U{\sum}V^T
X=U∑VT为
X
X
X的约化奇异值分解,对于函数
f
(
X
)
=
1
2
∑
(
i
,
j
)
∈
Ω
(
X
i
j
−
M
i
j
)
2
f(X)=\frac{1}{2}{\sum_{(i,j){\in}\Omega}(X_{ij}-M_{ij})}^2
f(X)=21(i,j)∈Ω∑(Xij−Mij)2
令矩阵
P
∈
R
m
×
n
P{\in}R^{m \times n}
P∈Rm×n为
P
i
j
=
{
1
,
(
i
,
j
)
∈
Ω
0
,
其他
P_{ij}=\left\{ \begin{matrix} 1,(i,j){\in}\Omega \\ 0,其他 \end{matrix} \right.
Pij={1,(i,j)∈Ω0,其他
那么,
f
(
X
)
=
1
2
∣
∣
P
⊙
(
X
−
M
)
∣
∣
F
2
f(X)=\frac{1}{2}||P{\odot}(X-M)||^2_F
f(X)=21∣∣P⊙(X−M)∣∣F2,易知其梯度为
∇
f
(
X
)
=
P
⊙
(
X
−
M
)
\nabla{f(X)}=P{\odot}(X-M)
∇f(X)=P⊙(X−M)
(3)主成分分析问题(3.7.1):
min
X
∈
R
p
×
d
ψ
(
X
)
=
−
T
r
(
X
T
A
A
T
X
)
,
s
.
t
.
X
T
X
=
I
d
\min_{X{\in}R^{p \times d}}\psi(X)=-Tr(X^TAA^TX),s.t.{\quad}X^TX=I_d
X∈Rp×dminψ(X)=−Tr(XTAATX),s.t.XTX=Id
通过简单计算,我们有
∇
ψ
(
X
)
=
−
2
A
A
T
X
\nabla{\psi(X)}=-2AA^TX
∇ψ(X)=−2AATX
(4)矩阵分离问题(3.8.2)
min
X
,
S
∈
R
m
×
n
ψ
(
X
,
S
)
=
∣
∣
X
∣
∣
∗
+
λ
∣
∣
S
∣
∣
1
s
.
t
.
X
+
S
=
M
\min_{X,S{\in}R^{m \times n}}\psi(X,S)=||X||_*+{\lambda}||S||_1 \\ s.t.{\quad}X+S=M
X,S∈Rm×nminψ(X,S)=∣∣X∣∣∗+λ∣∣S∣∣1s.t.X+S=M
在这里自变量
X
X
X与
S
S
S均为矩阵,
ψ
(
X
,
S
)
\psi(X,S)
ψ(X,S)关于
X
X
X和
S
S
S均为不可微函数
(5)字典学习问题(3.9.1)
min
D
,
X
1
2
n
∣
∣
D
X
−
A
∣
∣
F
2
+
λ
∣
∣
X
∣
∣
1
,
s
.
t
.
∣
∣
D
∣
∣
F
≤
1
\min_{D,X}\frac{1}{2n}||DX-A||^2_F+{\lambda}||X||_1,\\ s.t.{\quad}||D||_F{\le}1
D,Xmin2n1∣∣DX−A∣∣F2+λ∣∣X∣∣1,s.t.∣∣D∣∣F≤1
设
f
(
X
,
D
)
=
1
2
n
∣
∣
D
X
−
A
∣
∣
F
2
f(X,D)=\frac{1}{2n}||DX-A||_F^2
f(X,D)=2n1∣∣DX−A∣∣F2我们有
∇
X
f
=
1
n
D
T
(
D
X
−
A
)
,
∇
D
f
=
1
n
(
D
X
−
A
)
X
T
\nabla_Xf=\frac{1}{n}D^T(DX-A),\\ \nabla_Df=\frac{1}{n}(DX-A)X^T
∇Xf=n1DT(DX−A),∇Df=n1(DX−A)XT
这里要注意
f
(
X
,
D
)
f(X,D)
f(X,D)关于两个变量分别求梯度的形式的区别
4.6.2 应用举例
1. 非负矩阵分解
假设
a
a
a为
d
d
d维空间中的非负随机向量,其
n
n
n个观测值为
{
a
i
}
i
=
1
n
\{a_i\}_{i=1}^n
{ai}i=1n。记矩阵
A
=
[
a
1
,
a
2
,
⋯
,
a
n
]
∈
R
d
×
n
A=[a_1,a_2,\cdots,a_n]{\in}R^{d \times n}
A=[a1,a2,⋯,an]∈Rd×n,非负矩阵分解问题是将
A
A
A分解成非负
d
×
p
d \times p
d×p基矩阵
X
=
[
x
1
,
x
2
,
⋯
,
x
p
]
X=[x_1,x_2,\cdots,x_p]
X=[x1,x2,⋯,xp]和非负系数矩阵
Y
=
[
y
1
,
y
2
,
⋯
,
y
n
]
Y=[y_1,y_2,\cdots,y_n]
Y=[y1,y2,⋯,yn]的乘积,即
A
=
X
Y
A=XY
A=XY
可以看出,
y
j
y_j
yj为观测点
a
j
a_j
aj在基矩阵
X
X
X上的权重系数,也就是说,非负矩阵分解把数据分成基向量的线性组合。通常选取
∗
∗
p
<
<
d
∗
∗
**p<<d**
∗∗p<<d∗∗,那么得到的基矩阵
X
X
X的列张成了原数据空间的一个子空间。 这本质上是将高维空间中的数据在一个低维空间中表示。当数据点的内蕴结构完全被基矩阵
X
X
X包含时,我们就得到了一个很好的低维表示。
一般情况下,由于观测含有噪声,原始数据矩阵
A
A
A和分解
X
Y
XY
XY不会完全吻合,在这种情况下我们应当寻找误差最小的解。利用矩阵的
F
F
F范数可以定义相似性度量
∣
∣
A
−
X
Y
∣
∣
F
2
||A-XY||_F^2
∣∣A−XY∣∣F2
我们考虑如下优化问题
min
X
∈
R
d
×
p
,
Y
∈
R
p
×
n
∣
∣
A
−
X
Y
∣
∣
F
2
,
s
.
t
.
X
≥
0
,
Y
≥
0
(4.6.1)
\min_{X{\in}R^{d \times p},Y{\in}R^{p \times n}}||A-XY||_F^2,{\quad}s.t.{\quad}X{\ge}0,Y{\ge}0\tag{4.6.1}
X∈Rd×p,Y∈Rp×nmin∣∣A−XY∣∣F2,s.t.X≥0,Y≥0(4.6.1)
其中
≥
0
{\ge}0
≥0表示矩阵的每个元素是非负的
从低维空间逼近的角度来看,非负矩阵分解模型和主成分分析模型类似。但在实际问题中,非负矩阵分解模型会比主成分分析模型更有实际意义的解。
比如,给定很多幅人脸图片(都可以用元素值为0~255的矩阵来表示其灰度值),我们想要提取脸部的特征,利用主成分分析得到的主成分可能包含负数像素值,这是不合理的,但如果使用非负矩阵分解,则可以有效避免这类情形的发生。
我们称问题(4.6.1)为基本的非负矩阵分解模型,根据具体应用的不同,有时候还考虑带正则项的非负矩阵模型
min
X
∈
R
d
×
p
,
Y
∈
R
p
×
n
∣
∣
A
−
X
Y
∣
∣
F
2
+
α
r
1
(
X
)
+
β
r
2
(
Y
)
,
s
.
t
.
X
≥
0
,
Y
≥
0
\min_{X{\in}R^{d \times p},Y{\in}R^{p \times n}}||A-XY||_F^2+{\alpha{r_1}(X)}+{\beta{r_2}(Y)},\\ s.t.{\quad}X{\ge}0,Y{\ge}0
X∈Rd×p,Y∈Rp×nmin∣∣A−XY∣∣F2+αr1(X)+βr2(Y),s.t.X≥0,Y≥0
其中
r
1
(
X
)
,
r
2
(
Y
)
r_1(X),r_2(Y)
r1(X),r2(Y)是正则项,
α
,
β
>
0
\alpha,\beta>0
α,β>0是用来权衡拟合项和正则项的正则化参数。比如,如果
Y
Y
Y的列是稀疏的,那么每一个观测值都可以用少数几个基向量来表示。相应地,我们可以惩罚
Y
Y
Y的每一列
l
1
l_1
l1范数,为了保证基向量的线性无关性,往往要求
X
X
X的列之间是相互正交的。
此外,如果数据矩阵
A
A
A分布在一个低维的非线性流形上,则考虑流形或者图上的非负矩阵分解模型。(没懂哈哈,可能还没了解到这块)
2.低秩相关系数矩阵估计
相关系数矩阵是对角元素全为1的半正定矩阵,其第
(
i
,
j
)
(i,j)
(i,j)元素表示随机变量
x
i
x_i
xi和
x
j
x_j
xj之间的相关系数,相关系数矩阵估计问题来自于统计学、金融学等领域中。
给定对称矩阵
C
∈
S
n
C{\in}S^n
C∈Sn和非负对称权重矩阵
H
∈
S
n
H{\in}S^n
H∈Sn,低秩相关系数矩阵估计问题是从给定的矩阵
C
C
C出发,求解一个秩小于等于
p
p
p的相关系数矩阵
X
X
X,使得在结合了权重矩阵的某种度量下最小化:
min
X
⪰
0
1
2
∣
∣
H
⊙
(
X
−
C
)
∣
∣
F
2
,
s
.
t
.
X
i
i
=
1
,
i
=
1
,
2
,
⋯
,
n
r
a
n
k
(
X
)
≤
p
(4.6.3)
\min_{X{\succeq}0}\frac{1}{2}||H{\odot}(X-C)||_F^2,\\ s.t.{\quad}X_{ii}=1,i=1,2,\cdots,n\\ rank(X){\le}p\tag{4.6.3}
X⪰0min21∣∣H⊙(X−C)∣∣F2,s.t.Xii=1,i=1,2,⋯,nrank(X)≤p(4.6.3)
将
X
X
X上的秩约束
r
a
n
k
(
X
)
≤
p
rank(X){\le}p
rank(X)≤p表示为
X
=
V
T
V
X=V^TV
X=VTV,其中
V
=
[
V
1
,
V
2
,
⋯
,
V
n
]
∈
R
p
×
n
V=[V_1,V_2,\cdots,V_n]{\in}R^{p \times n}
V=[V1,V2,⋯,Vn]∈Rp×n,问题4.6.3可以转化为多球约束的四次多项式优化问题
min
V
∈
R
p
×
n
1
2
∣
∣
H
⊙
(
V
T
V
−
C
)
∣
∣
F
2
s
.
t
.
∣
∣
V
i
∣
∣
2
=
1
,
i
=
1
,
2
,
⋯
,
n
\min_{V{\in}R^{p \times n}}\frac{1}{2}||H{\odot}(V^TV-C)||_F^2\\ s.t.{\quad}||V_i||_2=1,i=1,2,\cdots,n
V∈Rp×nmin21∣∣H⊙(VTV−C)∣∣F2s.t.∣∣Vi∣∣2=1,i=1,2,⋯,n
为什么可以转化成这种写法我也不太懂,先记住?感觉这样更简单一点
3.电子结构计算
分子、纳米级材料的性质很大程度上是通过其原子中电子之间的相互作用来确定的。这些相互作用可以通过电子密度定量表征。
令电子的个数是
n
e
n_e
ne,位置是
r
i
∈
R
3
,
i
=
1
,
2
,
⋯
,
n
e
r_i{\in}R^3,i=1,2,\cdots,n_e
ri∈R3,i=1,2,⋯,ne,原子核的个数是
n
u
n_u
nu,位置是
r
^
j
∈
R
3
,
j
=
1
,
2
,
⋯
,
n
u
\hat{r}_j{\in}R^3,j=1,2,\cdots,n_u
r^j∈R3,j=1,2,⋯,nu。令
z
j
z_j
zj是第
j
j
j个原子核的电荷,
Δ
r
i
{\Delta}_{r_i}
Δri为第
i
i
i个电子对应的拉普拉斯算子,
Γ
{\Gamma}
Γ为恒等算子,则多电子哈密顿算子可以表示为
H
=
1
2
∑
i
=
1
n
e
Δ
r
i
−
(
∑
j
=
1
n
u
∑
i
=
1
n
e
z
j
∣
∣
r
i
−
r
^
j
∣
∣
−
1
2
∑
1
≤
i
,
j
≤
n
e
1
∣
∣
r
i
−
r
j
∣
∣
)
Γ
H=\frac{1}{2}\sum_{i=1}^{n_e}{\Delta}_{r_i}-({\sum_{j=1}^{n_u}\sum_{i=1}^{n_e}\frac{z_j}{||r_i-\hat{r}_j||}-\frac{1}{2}{\sum_{1{\le}i,j{\le}n_e}\frac{1}{||r_i-r_j||}}}){\Gamma}
H=21i=1∑neΔri−(j=1∑nui=1∑ne∣∣ri−r^j∣∣zj−211≤i,j≤ne∑∣∣ri−rj∣∣1)Γ
后面一堆什么多体薛定谔方程涉及到电子领域了,没太看懂,最后反正是求一个
min
X
∈
C
n
×
n
e
E
K
S
(
X
)
,
s
.
t
.
X
ˉ
T
X
=
I
n
e
\min_{X{\in}C^{n \times n_e}}E_{KS}(X),{\quad}s.t.{\quad}\bar{X}^TX=I_{n_e}
X∈Cn×neminEKS(X),s.t.XˉTX=Ine
这是一个正交约束优化问题,所有满足正交约束的矩阵称为
S
t
i
e
f
e
l
Stiefel
Stiefel流形,所以该问题是流形约束优化的特例,KS极小化问题对应的最优性条件是一个非线性特征值问题。称为KS方程,基于KS方程,可以将问题化成一个非线性最小二乘问题,电子结构计算还有很多其他变形。例如简化密度矩阵优化问题可以是半定规划问题。
4.7 整数规划
4.7.1 基本形式和应用背景
不同于线性规划,整数规划要求优化变量必须取整数值,而不能是分数值,一般形式如下
min
c
T
x
s
.
t
.
A
x
≤
b
x
i
≥
0
,
i
=
1
,
2
,
⋯
,
n
,
x
i
∈
Z
,
i
=
1
,
2
,
⋯
,
n
,
\min{\quad}c^Tx\\ s.t.{\quad}Ax{\le}b\\ x_i{\ge}0,i=1,2,\cdots,n,\\ x_i{\in}Z,i=1,2,\cdots,n,
mincTxs.t.Ax≤bxi≥0,i=1,2,⋯,n,xi∈Z,i=1,2,⋯,n,
其中
A
∈
R
m
×
n
,
c
∈
R
n
,
b
∈
R
m
A{\in}R^{m \times n},c{\in}R^n,b{\in}R^m
A∈Rm×n,c∈Rn,b∈Rm是给定的矩阵和向量,
Z
Z
Z是整数集合,如果只要求部分
x
i
x_i
xi是整数,该问题被称为混合整数规划问题。
4.7.2 应用举例
1.资本预算
在经典的资本预算问题中,我们需要对一些潜在的投资进行选择,选择合适的工厂位置或者对现有资本进行分配,放弃一些没有意义的项目,也就是决策变量
x
j
=
0
o
r
1
x_j=0 or 1
xj=0or1,意味着第
j
j
j个投资被拒绝或者接受,假设
c
j
c_j
cj为投资
j
j
j项目的回报,
a
i
j
a_{ij}
aij为将资源
i
i
i用在项目
j
j
j上的数量。那么资本预算问题可以表示为
max
∑
j
=
1
n
c
j
x
j
s
.
t
.
∑
j
=
1
n
a
i
j
x
j
≤
b
i
,
i
=
1
,
2
,
⋯
,
m
x
j
=
0
o
r
1
\max{\sum_{j=1}^n}c_jx_j\\ s.t.{\quad}{\sum_{j=1}^n}a_{ij}x_j{\le}b_i,i=1,2,\cdots,m\\ x_j=0or1
maxj=1∑ncjxjs.t.j=1∑naijxj≤bi,i=1,2,⋯,mxj=0or1
有限的资源
b
i
b_i
bi找到投资最大化
这里说的太笼统了,没有考虑将多少资源投资到项目上得到的回报是多少,这里没有说明 c j c_j cj是和 a i j a_{ij} aij有关的,我需要和读者说明一下。
2.仓库位置选取
在分配系统的建模中,我们需要考虑仓库与消费者之间的运输成本以及仓库自身的运营成本。
例如,一个管理者需要在
m
m
m个可能的位置上修建一些仓库去满足
n
n
n个消费者的需求。需要做的决策是建造哪些仓库以及控制每个仓库到消费者的运输量。仓库位置选取问题是指管理者根据消费者的需求以及仓库到消费者之间的运输成本,来确定所修建的仓库的位置。需要知道如何以最低成本将物资从仓库运输到消费者,令
y
i
=
{
1
,如果仓库
i
被修建
0
,如果仓库
i
未被修建
y_i=\left\{ \begin{matrix} 1,如果仓库i被修建\\ 0,如果仓库i未被修建 \end{matrix} \right.
yi={1,如果仓库i被修建0,如果仓库i未被修建
以及
x
i
j
x_{ij}
xij为从仓库
i
i
i运输到消费者
j
j
j的物资数量,相关成本如下
f
i
=
仓库
i
的固定运营成本,比如租赁费
c
i
j
=
从仓库
i
运输物资到消费者
j
的运输成本
f_i=仓库i的固定运营成本,比如租赁费\\ c_{ij}=从仓库i运输物资到消费者j的运输成本
fi=仓库i的固定运营成本,比如租赁费cij=从仓库i运输物资到消费者j的运输成本
我们需要满足三个条件:
(1)消费者的需求
d
i
d_i
di必须被满足
(2)只有已修建的仓库才能提供运输物资,如果
y
i
=
0
y_i=0
yi=0,那么
x
i
j
=
0
x_{ij}=0
xij=0
(3)每个仓库i(所能提供的物资数量)是有限的,即
∑
j
=
1
n
x
i
j
≤
u
i
,
u
i
≥
0
\sum_{j=1}^nx_{ij}{\le}u_i,u_i{\ge}0
∑j=1nxij≤ui,ui≥0为仓库的容量,那么仓库位置选取问题可以写成
min
x
,
y
∑
i
=
1
m
∑
j
=
1
n
c
i
j
x
i
j
+
∑
i
=
1
m
f
i
y
i
s
.
t
.
∑
i
=
1
m
x
i
j
=
d
j
,
j
=
1
,
2
,
⋯
,
n
∑
j
=
1
n
x
i
j
≤
y
i
u
i
,
i
=
1
,
2
,
⋯
,
m
x
i
j
≥
0
y
i
=
0
或者
1
,
i
=
1
,
2
,
⋯
,
m
\min_{x,y}\sum_{i=1}^m\sum_{j=1}^nc_{ij}x_{ij}+{\sum_{i=1}^mf_iy_i}\\ s.t.{\quad}{\sum_{i=1}^m}x_{ij}=d_j,j=1,2,\cdots,n\\ \sum_{j=1}^nx_{ij}{\le}{y_iu_i},i=1,2,\cdots,m\\ x_{ij}{\ge}0\\ y_i=0或者1,i=1,2,\cdots,m
x,ymini=1∑mj=1∑ncijxij+i=1∑mfiyis.t.i=1∑mxij=dj,j=1,2,⋯,nj=1∑nxij≤yiui,i=1,2,⋯,mxij≥0yi=0或者1,i=1,2,⋯,m
这里很多的都很好理解,我主要说一下约束条件的第二条,他的意思就是如果仓库被建了,那么你的运输总量要少于仓库的容量,如果仓库没被建,那么你的运输总量就要小于等于0了,其实也就是0,因为x又是大于等于0的。
3.旅行商问题
一个旅行商想从家里开始,以最低代价走遍其他
(
n
−
1
)
(n-1)
(n−1)个城市,最后返回家中,他必须每个城市且只走访一次,记从城市
i
i
i到城市
j
j
j的旅行成本为
c
i
j
c_{ij}
cij
x
i
j
=
{
1
,如果他从城市
i
到城市
j
0
,如果他未从城市
i
到城市
j
x_{ij}=\left\{ \begin{matrix} 1,如果他从城市i到城市j\\ 0,如果他未从城市i到城市j \end{matrix} \right.
xij={1,如果他从城市i到城市j0,如果他未从城市i到城市j
令
u
i
,
i
=
2
,
3
,
⋯
,
n
u_i,i=2,3,\cdots,n
ui,i=2,3,⋯,n为辅助变量,表示城市
i
i
i是第
u
i
u_i
ui个到达的城市,旅行商问题可以写成如下整数规划形式
min
∑
i
=
1
n
∑
j
=
1
,
i
≠
j
n
c
i
j
x
i
j
,
s
.
t
.
∑
i
=
1
,
i
≠
j
n
x
i
j
=
1
,
j
=
1
,
2
,
⋯
,
n
,
∑
j
=
1
,
i
≠
j
n
x
i
j
=
1
,
j
=
1
,
2
,
⋯
,
n
,
x
i
j
∈
{
0
,
1
}
.
i
.
j
=
1
,
2
,
⋯
,
n
u
i
−
u
j
+
n
x
i
j
≤
n
−
1
,
2
≤
i
≠
j
≤
n
,
u
i
∈
{
1
,
2
,
⋯
,
n
}
,
2
≤
i
≤
n
\min{\quad}\sum_{i=1}^n{\sum_{j=1,i\not=j}^n}c_{ij}x_{ij},\\ s.t.{\quad}{\sum_{i=1,i\not=j}^n}x_{ij}=1,j=1,2,\cdots,n,\\ {\sum_{j=1,i\not=j}^n}x_{ij}=1,j=1,2,\cdots,n,\\ x_{ij}{\in}\{0,1\}.i.j=1,2,\cdots,n\\ u_i-u_j+nx_{ij}{\le}n-1,2{\le}i\not=j{\le}n,\\ u_i{\in}\{1,2,\cdots,n\},2{\le}i{\le}n
mini=1∑nj=1,i=j∑ncijxij,s.t.i=1,i=j∑nxij=1,j=1,2,⋯,n,j=1,i=j∑nxij=1,j=1,2,⋯,n,xij∈{0,1}.i.j=1,2,⋯,nui−uj+nxij≤n−1,2≤i=j≤n,ui∈{1,2,⋯,n},2≤i≤n文章来源:https://www.toymoban.com/news/detail-702398.html
第一个约束意思是从i到j的j只能有一个,第二个约束的意思是只能有一个城市到j,就防止了j被多个城市到达。最后两行约束是保证了此路径是连通的,而不是多条不相交的路合成的。
可以想一下,如果
x
i
j
=
1
x_{ij}=1
xij=1,那么
u
i
−
u
j
=
−
1
u_i-u_j=-1
ui−uj=−1,满足约束,如果
x
i
j
=
0
x_{ij}=0
xij=0,那么要保证
u
i
−
u
j
≤
n
−
1
u_i-u_j{\le}n-1
ui−uj≤n−1
PS:这应该是保证没有回路的一个约束把?不知道他怎么让这条路不是多条不相交的路合成的,除非说他必须要有
u
i
−
u
j
=
n
−
1
u_i-u_j=n-1
ui−uj=n−1文章来源地址https://www.toymoban.com/news/detail-702398.html
到了这里,关于最优化:建模、算法与理论(典型优化问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!