https://www.bilibili.com/video/BV19M411T7S7/
简单的优化问题
Stephen Boyd
对优化的算法感兴趣, Dimitri P. Bertsekas,Nonlinear programming
有限的资源做事,
[1] 线性代数及其应用
文章目录
- 2-凸集 Convex sets
- 3-凸函数Convex functions
- 4-Convex optimization problems
- 5.Duality
- 9-算法
- 10-Equality constrained minimization
- 拉格朗日乘子理论【】
- 常见的凸优化场景
Introduction
1.2-Least-squares and linear programming
p4 最小二乘的定义
minimize f 0 ( x ) = ∥ A x − b ∥ 2 2 = ∑ i = 1 k ( a i T x − b i ) 2 \text{minimize}\quad f_0(x)=\|Ax-b\|_2^2=\sum_{i=1}^k(a_i^Tx-b_i)^2 minimizef0(x)=∥Ax−b∥22=∑i=1k(aiTx−bi)2
不带约束,目标函数是二次型,从统计学的角度来讲就是最大似然(考虑高斯的测量误差).
加权最小二乘,正则化参考
半正定的定义Positive Semidefinite [1,pp407],i.e.,矩阵的二次型大于等于
0.
1.3-凸函数
没法找到不相邻的最低的点,不是凸函数就能找到不相邻的最低的点.
困难的点不是是不是线性,而是是不是凸.
光滑/非光滑;
连续/离散的可行域;
单目标/多目标;
优化=数学规划;
2-凸集 Convex sets
2.1-仿射与凸集 Affine and convex sets
凸优化只是数学优化的冰山一角,其定义域和目标函数具有凸性
的性质。凸优化问题广泛应用于各类实际问题中,尤其是最小二乘(Least-Squares)和线性规划(Linear Programming)问题。这些问题因其良好的理论基础和高效的数值求解方法而著称。
2.1.2-仿射集 Affine sets
仿射集定义: 在向量空间 R n \mathbb{R}^n Rn 中,一个集合A 被称为仿射集,如果对于 A中的任意两个点 x 和 y ,以及任意实数 θ \theta θ,仿射 θ x + ( 1 − θ ) y \theta x + (1 - \theta)y θx+(1−θ)y也在集合 A中。即: ∀ x , y ∈ A , ∀ θ ∈ R , θ x + ( 1 − θ ) y ∈ A \forall x, y \in A, \ \forall \theta \in \mathbb{R}, \ \theta x + (1 - \theta)y \in A ∀x,y∈A, ∀θ∈R, θx+(1−θ)y∈A. pp-1
根据上述定义,一个集合A是仿射的,即集合A包含集合内任意两点 x 和 y的线性组合(线性组合的含义就是 θ \theta θ 是任意的,组合的结果是直线)
仿射组合: 就是仿射的推广,从两个点到 k k k个点, x 1 , … , x k x_1,\ldots,x_k x1,…,xk 形成 θ 1 x 1 + ⋯ + θ k x k \theta_1x_1+\cdots+\theta_kx_k θ1x1+⋯+θkxk,且 θ 1 + ⋯ + θ k = 1 \theta_1+\cdots+\theta_k=1 θ1+⋯+θk=1.
2.1.4-凸集 Convex sets
凸集,这里不是直线而是线段.
凸集定义: 在向量空间 R n \mathbb{R}^n Rn 中,一个集合 C 被称为凸集,如果对于集合 C 中的任意两个点 x 和 y ,以及满足 0 ≤ λ ≤ 1 0 \leq \lambda \leq 1 0≤λ≤1 的任意实数 λ \lambda λ ,点 λ x + ( 1 − λ ) y \lambda x + (1 - \lambda)y λx+(1−λ)y 也在集合 C 中。即: ∀ x , y ∈ C , ∀ λ ∈ [ 0 , 1 ] , λ x + ( 1 − λ ) y ∈ C \forall x, y \in C, \ \forall \lambda \in [0, 1], \ \lambda x + (1 - \lambda)y \in C ∀x,y∈C, ∀λ∈[0,1], λx+(1−λ)y∈C. pp-23
对比上述定义发现,其实就是加权系数的定义域不同
凸组合定义(convex combination): k k k个点的凸组合指的是 θ 1 x 1 + ⋯ + θ k x k \theta_1x_1+\cdots+\theta_kx_k θ1x1+⋯+θkxk, 其中 θ 1 + ⋯ + θ k = 1 \theta_1+\cdots+\theta_k=1 θ1+⋯+θk=1 并且 θ i ≥ 0 \theta_i\geq0 θi≥0. pp-24
凸包定义(convex hull): 集合 C 内点所有凸组合的集合,conv C = { θ 1 x 1 + ⋯ + θ k x k ∣ x i ∈ C C= \{ \theta _1x_1+ \cdots + \theta _kx_k\mid x_i\in C C={
θ1x1+⋯+θkxk∣xi∈C, θ i ≥ 0 \theta _i\geq 0 θi≥0, i = 1 , … , k i= 1, \ldots , k i=1,…,k, θ 1 + ⋯ + θ k = 1 } . \theta _1+ \cdots + \theta _k= 1\} . θ1+⋯+θk=1}.
凸包是包含C的最小凸集
二维空间: 在二维空间中,一组点的凸包可以想象为用橡皮筋紧紧包住这些点,使得橡皮筋所形成的形状是凸的。如果我们将这些点放在一个平面上,然后用一个松紧的橡皮筋将它们围起来,橡皮筋最终会收缩成一个多边形,其边界是由这些点组成的,这个多边形的内部和边界就是这些点的凸包。
三维空间: 在三维空间中,一组点的凸包是一个凸多面体,它是包含所有这些点的最小的凸形状。可以想象为用一块塑料膜包住这些点,收缩后形成的最小凸形状。
2.2-一些重要的例子
几种重要的凸集
- R n R^n Rn空间
- R n R^n Rn空间的子空间
- 任意直线(是仿射集也是凸集,只有过原点才是凸锥)
- 任意线段
2.2.1-超平面和半空间 Hyperplanes and halfspaces
超平面与半空间(Hyperplanes and halfspaces, p27)
**超平面定义:**超平面是个集合, { x ∣ a T x = b } \{x\mid a^Tx=b\} {
x∣aTx=b},其中 a ∈ R n , a ≠ 0 a\in\mathbb{R}^n,a\neq0 a∈Rn,a=0并且 b ∈ R . b\in\mathbb{R}. b∈R.
半空间定义: { x ∣ a T x ≤ b } \{x\mid a^Tx\leq b\} {
x∣aTx≤b},其中 a ∈ R n , a ≠ 0 a\in\mathbb{R}^n,a\neq0 a∈Rn,a=0.
2.2.2-球和椭球 Euclidean balls and ellipsoids
球和椭球(Euclidean balls and ellipsoids,p29)
利用三角不等式、球和凸集的定义证明球是凸集(p30).
椭球中的P矩阵, P ∈ S + + n P \in S_{++}^n P∈S++n,symmetric and positive definite
正定:奇异值大于0;半正定:奇异值大于等于0;
2.2.4-多面体 Polyhedra
多面体的定义Polyhedra:.$\mathcal{P}={x\mid a_j^Tx\leq b_j,:j=1,\ldots,m,:c_j^Tx=d_j,:j=1,\ldots,p}. 有限个半空间和半平面 P31
单纯形的定义simplex: P32 k + 1 k+1 k+1 个点 v 0 , … , v k ∈ R n v_0,\ldots,v_k\in\mathbf{R}^n v0,…,vk∈Rn是仿射独立的, 即 v 1 − v 0 , … , v k − v 0 v_1- v_0, \ldots , v_k- v_0 v1−v0,…,vk−v0 是独立的,则单纯形是 C = c o n v { v 0 , … , v k } = { θ 0 v 0 + ⋯ + θ k v k ∣ θ ⪰ 0 , 1 T θ = 1 } . C=\mathrm{conv}\{v_0,\ldots,v_k\}=\{\theta_0v_0+\cdots+\theta_kv_k\mid\theta\succeq0,\:1^T\theta=1\}. C=conv{
v0,…,vk}={
θ0v0+⋯+θkvk∣θ⪰0,1Tθ=1}.
证明:单纯形是多面体的一种p33
2.2.5-半正定锥 The positive semidefinite cone
pp34
对称矩阵集定义: 设 S(n) 表示所有 n × \times × n 对称矩阵的集合,则: S ( n ) = { A ∈ R n × n ∣ A = A T } S(n) = \{ A \in \mathbb{R}^{n \times n} \mid A = A^T \} S(n)={
A∈Rn×n∣A=AT}
对称半正定矩阵集定义: 设 S + ( n ) S_+(n) S+(n) 表示所有 n × \times × n 对称半正定矩阵的集合,则: S + n = { X ∈ S n ∣ X ⪰ 0 } , \mathbf{S}_+^n=\{X\in\mathbf{S}^n\mid X\succeq0\}, S+n={
X∈Sn∣X⪰0},
对称正定矩阵集定义: S + + n = { X ∈ S n ∣ X ≻ 0 } , \mathbf{S}_{++}^n=\{X\in\mathbf{S}^n\mid X\succ0\}, S++n={
X∈Sn∣X≻0},
对称半正定矩阵定义: 一个 n × \times × n 的实矩阵 A 是对称半正定的,如果它是对称的(即 A = A T A = A^T A=AT),并且对于任意向量 x ∈ R n x \in \mathbb{R}^n x∈Rn ,有: x T A x ≥ 0 x^T A x \geq 0 xTAx≥0 ,换句话说,对称半正定矩阵的所有特征值都非负。
备注1:
⪰ \succeq ⪰ : 奇异值大于等于 (半正定)
≥ \geq ≥ : 所有元素大于等于
备注2:
{ x ∣ x ≤ 0 } \{x|x \leq 0\} { x∣x≤0}是凸集、多面体,也是单纯形(取x=0和x= − ∞ -\infty −∞)
对称正定的矩阵不是凸锥,没有过原点
证明 S + n \mathbf{S}_+^n S+n是个凸锥
凸锥: C = { α x + β y ∣ x , y ∈ C , α , β ≥ 0 } C = \{ \alpha x + \beta y \mid x, y \in C, \alpha, \beta \geq 0 \} C={
αx+βy∣x,y∈C,α,β≥0}
两个矩阵用不同的系数加权相加,对称性不变;再检验半正定,用定义,二次型大于等于0.
或者方阵的特征值大于0,其为正定矩阵.
2.3-保凸操作Operations that preserve convexity
交集保凸: 两个凸集的交集还是凸集,凸集本质是个集合。但是并却不一定,可以根据凸集的定义验证。
仿射: 仿射就是线性的映射,线性变换(仿射)不改变凸性.
求和: 求和不改变凸性,如何证明,通过构造 一个二元新集合,定义一个求和函数.
2.3.3-线性分式Linear-fractional、透视函数(perspective function)
透视函数(perspective function)
We define the p e r s p e c t i v e function P : R n + 1 → R n perspective\textit{ function P}: \mathbb{R} ^{n+ 1}\to \mathbb{R} ^n perspective function P:Rn+1→Rn, with domain dom P = R n × R + + P=\mathbb{R}^n\times \mathbf{R}_{++} P=Rn×R++ as P ( z , t ) = z / t . (Here R + + denotes the set of positive numbers: R + + = P(z,t)=z/t.\text{(Here R}_{++}\text{ denotes the set of positive numbers: R}_{++}= P(z,t)=z/t.(H