线性规划与非线性规划
线性规划的特点是最优解在顶点或者边上,否则为非线性规划。
凸规划和非凸规划
1. 仿射集=>仿射组合(泛化)=>仿射包
直线是仿射集,线段不是:任意连接任意两点的直线也在原集合中;
线性方程 c = { x ∣ A x = b } c=\{x|Ax=b\} c={x∣Ax=b}的解集是一个仿射集合。反之任意仿射集合可以表示为一个线性方程组的解集。
引出子空间:
v
=
{
x
−
x
0
∣
x
∈
c
}
∀
x
0
∈
c
=
{
x
−
x
0
∣
A
x
=
b
}
,
A
x
0
=
b
=
{
x
−
x
0
∣
A
(
x
−
x
0
)
=
0
}
=
{
y
∣
A
y
=
0
}
v=\{x-x_0|x \in c\} \forall x_0 \in c \\ =\{x-x_0|Ax = b\}, Ax_0=b \\ =\{x-x_0|A(x-x_0)=0\} \\ =\{y|Ay=0\}
v={x−x0∣x∈c}∀x0∈c={x−x0∣Ax=b},Ax0=b={x−x0∣A(x−x0)=0}={y∣Ay=0} 该集合是A的零空间(线性代数中的化零空间),对比
c
=
{
x
∣
A
x
=
b
}
c=\{x|Ax=b\}
c={x∣Ax=b}是一个平移的关系,会平移到集合中至少有一个点经过原点的位置,也就得到原来仿射集的子空间。
任意集合c,需要构造尽可能小的仿射集,引出仿射包的概念:集合 c c c中的点的所有仿射组合组成的集合为集合 c c c的仿射包。
2.凸集=>凸包
构造最小凸集,得到凸包。
3.锥=>凸锥(锥+凸集)=>凸锥
c是锥:
∀
x
∈
c
,
θ
≥
0
θ
x
∈
c
\forall x \in c,\theta \geq 0 \\ \theta x \in c
∀x∈c,θ≥0θx∈c
c是凸锥:
∀
x
1
,
x
2
∈
c
,
θ
1
,
θ
2
≥
0
θ
1
x
1
+
θ
2
x
2
∈
c
\forall x_1,x_2 \in c, \theta_1,\theta_2 \geq 0 \\ \theta_1x_1 + \theta_2x_2 \in c
∀x1,x2∈c,θ1,θ2≥0θ1x1+θ2x2∈c
仿射组合和凸锥组合均是特殊的凸组合。
4.几种比较重要的凸集
R n R^n Rn空间是仿射集合、凸集,n维空间包含的子空间,比如2维空间中x轴,y轴都是其子空间。
点?直线?线段?
超平面、半空间:
a
T
x
=
b
a
T
x
≥
b
a^Tx=b \\ a^Tx \ge b
aTx=baTx≥b
球(欧式空间):
B
(
x
c
,
r
)
=
{
x
∣
∣
∣
x
−
x
c
∣
∣
2
≤
r
}
=
{
x
∣
(
x
−
x
c
)
T
(
x
−
x
c
)
≤
r
}
B(x_c,r) = \{ x| ||x-x_c||_2 \le r \} \\ =\{x| \sqrt{(x-x_c)^T(x-x_c)} \le r \}
B(xc,r)={x∣∣∣x−xc∣∣2≤r}={x∣(x−xc)T(x−xc)≤r}
多面体:从定义看是一些半空间和超平面的交集。单纯形是一类重要的多面体。
一维单纯性是一条线段,二维单纯形是一个三角形,三维单纯形是一个四面体;
证明:单纯形是多面体的一种
空间中难以想象的集合:
对称矩阵集合
S
n
=
{
X
∈
R
n
∗
n
∣
X
=
X
T
}
S^n = \{ X \in R^{n*n} | X=X^T\}
Sn={X∈Rn∗n∣X=XT}
对称半正定矩阵集合(凸集)
S
n
=
{
X
∈
R
n
∗
n
∣
X
≥
0
}
S^n = \{ X \in R^{n*n} | X \geq 0 \}
Sn={X∈Rn∗n∣X≥0}
证明其为凸集,此外可看出对称正定矩阵集合非凸锥
∀ x ∈ R n X T A X ≥ 0 X T B X ≥ 0 则 X T ( θ 1 A + θ 2 B ) X = X T θ 1 A X + X T θ 2 B X ≥ 0 \forall x \in R^n \\ X^TAX \ge 0 \\ X^TBX \ge 0 \\ 则X^T(\theta_1A + \theta_2 B)X =X^T \theta_1 AX + X^T \theta_2 BX \ge 0 ∀x∈RnXTAX≥0XTBX≥0则XT(θ1A+θ2B)X=XTθ1AX+XTθ2BX≥0
对称正定矩阵集合(非凸锥)
S
n
=
{
X
∈
R
n
∗
n
∣
X
>
0
}
S^n = \{ X \in R^{n*n} | X > 0 \ \}
Sn={X∈Rn∗n∣X>0 }
n取1,2时的理解:
当n为1的时候,对称半正定矩阵的集合变为正数的集合,对称正定矩阵的集合变为正实数的集合。
n
=
1
,
S
+
n
=
R
+
n
=
1
,
S
+
+
n
=
R
+
+
n
=
1
,
S
n
=
R
n = 1,S_+^n = R_+ \\ n = 1,S_{++}^n = R_{++} \\ n = 1,S^n = R
n=1,S+n=R+n=1,S++n=R++n=1,Sn=R
当n为2的时候,对称的半正定矩阵可以由三维的x、y、z点定义,也就是一种二维的矩阵可以三维的点对应起来。
n
=
2
,
S
+
n
=
{
[
x
y
y
z
]
∣
x
≥
0
,
z
≥
0
,
x
z
≥
y
2
}
n=2,S_+^n = \{ \begin{bmatrix} x & y \\ y & z \end{bmatrix} | x \ge 0,z\ge 0, xz \ge y^2 \}
n=2,S+n={[xyyz]∣x≥0,z≥0,xz≥y2}
5.保凸运算
交集:两个凸集的交集还是凸集;
并集:两个凸集的并集不是凸集。
仿射变换:若 S ⊂ R n S \subset R^n S⊂Rn为凸, f : R n → R m f:R^n \to R^m f:Rn→Rm仿射,则 f ( s ) = { f ( x ) ∣ x ∈ s } f(s) = \{ f(x) | x \in s\} f(s)={f(x)∣x∈s}为凸,逆仿射也是凸的。
仿射的映射(缩放和移位)也是保持凸性的;
两个凸集的和是凸的: S 1 + S 2 = { x + y ∣ x ∈ S 1 , y ∈ S 2 } S_1+S_2 = \{ x+y | x \in S_1, y\in S_2\} S1+S2={x+y∣x∈S1,y∈S2}
透视函数:任意一个凸集经过透视函数后仍是凸集,任意凸集的反透视映射仍是凸集。
线性分式函数:透视函数和仿射函数复合而成,可以保凸。
光滑和非光滑
光滑的函数一般来说容易解,但不像凸和非凸那么明显的区分难易。
连续和离散
离散的一般为非凸的问题;但连续的不一定为凸问题。
单目标和多目标
多目标问题加权后可以得到单目标优化问题,但不一定便于理解。