常见范数
1:p范数
∣
∣
x
∣
∣
p
=
(
∑
i
=
0
n
∣
x
i
∣
p
)
1
/
p
||x||_p=(\sum_{i=0}^n|x_i|^p)^{1/p}
∣∣x∣∣p=(i=0∑n∣xi∣p)1/p
2:
∞
\infty
∞ 范数
∣
∣
x
∣
∣
∞
=
max
1
≤
i
≤
n
∣
x
i
∣
||x||_\infty=\max_{1\le i \le n}|x_i|
∣∣x∣∣∞=1≤i≤nmax∣xi∣
内积运算
<y,z>=<z,y>
<ay,z>=a<y,z>
<x+y,z>=<x,z>+<y,z>
其中<y,z>=||y||*||z||,并且||y||2=<y,y>
学过的最优化问题分类
最优化分类 = { 线性规划 { 单纯形法 大M法 两阶段法 对偶单纯形法 非线性规划 { 无约束非线性 { x ∗ 是 局 部 最 优 解 − > ∇ f ( x ∗ ) = 0 , 并 且 ∇ 2 f ( x ∗ ) 是 半 正 定 矩 阵 ∇ f ( x ∗ ) = 0 , 并 且 ∇ 2 f ( x ∗ ) 是 正 定 矩 阵 − > x ∗ 是 局 部 最 优 解 有约束非线性 { K − T 条 件 求 解 一阶线性搜索 { 黄 金 分 割 法 F i b o n a c c i 法 多维无约束非线性 { 最 速 下 降 法 牛 顿 法 阻 尼 牛 顿 法 带 保 护 的 牛 顿 法 共 轭 梯 度 法 F R 共 轭 梯 度 法 多维有约束非线性 { 思 路 : 转 化 为 多 维 无 约 束 条 件 问 题 , 再 使 用 外 点 法 、 内 点 法 、 乘 子 法 求 解 等 式 约 束 转 化 : 构 造 p ( x . M ) = f ( x ) + M p ~ ( x ) { M 很 大 , 一 般 让 他 趋 近 ∞ 与 来 求 值 p ~ ( x ) = ∑ j = 1 q [ h j ( x ) ] 2 不 等 式 约 束 转 化 : 构 造 p ( x . M ) = f ( x ) + M p ~ ( x ) { M 很 大 , 一 般 让 他 趋 近 ∞ 与 来 求 值 p ~ ( x ) = ∑ i = 1 p [ m i n ( 0 , g i ( x ) ) ] 2 注 意 这 里 的 g i ( x ) ≥ 0 , 如 果 小 于 0 要 转 化 成 − g i ( x ) ≥ 0 多目标优化 { 常 见 评 价 函 数 { 线 性 加 权 法 理 想 点 法 平 方 和 加 权 法 权 数 确 定 { 老 手 法 ∂ − 方 法 计 算 机 求 解 − m a t l a b \text{最优化分类} = \begin{cases} \text{线性规划} \begin{cases} \text{单纯形法} \\ \text{大M法}\\ \text{两阶段法}\\ \text{对偶单纯形法} \end{cases}\\ \text{非线性规划} \begin{cases} \text{无约束非线性} \begin{cases} x^*是局部最优解->\nabla f(x^*)=0,并且\nabla^2f(x^*)是半正定矩阵\\ \nabla f(x^*)=0,并且\nabla^2f(x^*)是正定矩阵->x^*是局部最优解 \\ \end{cases}\\ \text{有约束非线性}\begin{cases} K-T条件求解 \\ \end{cases}\\ \text{一阶线性搜索}\begin{cases} 黄金分割法\\ Fibonacci法 \\ \end{cases}\\ \text{多维无约束非线性}\begin{cases} 最速下降法\\ 牛顿法 \\ 阻尼牛顿法 \\ 带保护的牛顿法\\ 共轭梯度法\\ FR共轭梯度法\\ \end{cases}\\ \text{多维有约束非线性}\begin{cases} 思路:转化为多维无约束条件问题,再使用外点法、内点法、乘子法求解\\ 等式约束转化:构造p(x.M)=f(x)+M\widetilde p(x) \begin{cases} M很大,一般让他趋近\infty 与来求值\\ \widetilde p(x)=\sum_{j=1}^q[h_j(x)]^2 \\ \end{cases}\\ 不等式约束转化:构造p(x.M)=f(x)+M\widetilde p(x) \begin{cases} M很大,一般让他趋近\infty 与来求值\\ \widetilde p(x)=\sum_{i=1}^p[min(0,g_i(x))]^2 \\ 注意这里的g_i(x) \ge0,如果小于0要转化成-g_i(x) \ge0 \end{cases}\\ \end{cases}\\ \end{cases}\\ \text{多目标优化}\begin{cases} 常见评价函数\begin{cases} 线性加权法\\ 理想点法 \\ 平方和加权法 \end{cases}\\ 权数确定 \begin{cases} 老手法\\ \partial-方法 \\ 计算机求解-matlab\\ \end{cases}\\ \end{cases}\\ \end{cases} 最优化分类=⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧线性规划⎩⎪⎪⎪⎨⎪⎪⎪⎧单纯形法大M法两阶段法对偶单纯形法非线性规划⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧无约束非线性{x∗是局部最优解−>∇f(x∗)=0,并且∇2f(x∗)是半正定矩阵∇f(x∗)=0,并且∇2f(x∗)是正定矩阵−>x∗是局部最优解有约束非线性{K−T条件求解一阶线性搜索{黄金分割法Fibonacci法多维无约束非线性⎩⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎧最速下降法牛顿法阻尼牛顿法带保护的牛顿法共轭梯度法FR共轭梯度法多维有约束非线性⎩⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎧思路:转化为多维无约束条件问题,再使用外点法、内点法、乘子法求解等式约束转化:构造p(x.M)=f(x)+Mp (x){M很大,一般让他趋近∞与来求值p (x)=∑j=1q[hj(x)]2不等式约束转化:构造p(x.M)=f(x)+Mp (x)⎩⎪⎨⎪⎧M很大,一般让他趋近∞与来求值p (x)=∑i=1p[min(0,gi(x))]2注意这里的gi(x)≥0,如果小于0要转化成−gi(x)≥0多目标优化⎩⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎧常见评价函数⎩⎪⎨⎪⎧线性加权法理想点法平方和加权法权数确定⎩⎪⎨⎪⎧老手法∂−方法计算机求解−matlab
常见的求解最优化问题的matlab函数
0-1规划 Bintprog
线性规划 linprog
非线性规划 finincon
最大最下法 fminimax
K-T条件
特殊字符大全
x
∗
x^*
x∗是目标函数的最优解:
∇
f
(
x
∗
)
+
∑
i
∈
I
∗
⋋
i
∗
∇
g
i
(
x
∗
)
+
∑
j
∈
J
∗
μ
j
∗
∇
h
j
(
x
∗
)
=
0
\nabla f(x^*)+\sum_{i\in I^*}⋋_i^* \nabla g_i(x^*)+\sum_{j\in J^*}μ_j^* \nabla h_j(x^*)=0
∇f(x∗)+i∈I∗∑⋋i∗∇gi(x∗)+j∈J∗∑μj∗∇hj(x∗)=0
其中
g
(
x
)
g(x)
g(x)表示不等式约束,
I
∗
I^*
I∗表示不等式约束的个数;
h
(
x
)
h(x)
h(x)表示等式约束,
J
∗
J^*
J∗表示不等式约束的个数
举两个列子:
列1:用K-T条件求解下面问题:
m
i
n
f
(
x
1
,
x
2
)
=
(
x
1
−
1
)
2
+
(
x
2
−
2
)
2
minf(x_1,x_2)=(x_1-1)^2+(x_2-2)^2
minf(x1,x2)=(x1−1)2+(x2−2)2
s
t
:
{
x
1
−
x
2
≤
0
①
−
x
1
≤
0
②
−
x
2
≤
0
③
−
x
1
+
x
2
−
1
=
0
④
st:\begin{cases} x_1-x_2 \le 0 &①\\ -x_1\le0 &②\\ -x_2\le0 &③\\ -x_1+x_2-1=0 &④ \end{cases}
st:⎩⎪⎪⎪⎨⎪⎪⎪⎧x1−x2≤0−x1≤0−x2≤0−x1+x2−1=0①②③④
① ② ③表示不等式约束,即
g
(
x
)
g(x)
g(x)有三个
④表示不等式约束,即
h
(
x
)
h(x)
h(x)有一个
计
算
出
∇
f
(
x
)
=
(
2
(
x
1
−
1
)
2
(
x
2
−
2
)
)
即
f
(
x
1
,
x
2
)
分
别
对
x
1
和
x
2
求
导
计算出 \nabla f(x)=\begin{pmatrix} 2(x_1-1)\\ 2(x_2-2) \\ \end{pmatrix}即f(x_1,x_2)分别对x_1和x_2求导
计算出∇f(x)=(2(x1−1)2(x2−2))即f(x1,x2)分别对x1和x2求导
继
续
求
得
∇
g
1
(
x
)
=
(
1
−
1
)
∇
g
2
(
x
)
=
(
−
1
0
)
∇
g
3
(
x
)
=
(
0
−
1
)
继续求得 \nabla g_1(x)=\begin{pmatrix} 1\\ -1 \\ \end{pmatrix} \nabla g_2(x)=\begin{pmatrix} -1\\ 0 \\ \end{pmatrix} \nabla g_3(x)=\begin{pmatrix} 0\\ -1 \\ \end{pmatrix}
继续求得∇g1(x)=(1−1)∇g2(x)=(−10)∇g3(x)=(0−1)其中
g
1
(
x
)
,
g
2
(
x
)
,
g
3
(
x
)
g_1(x),g_2(x),g_3(x)
g1(x),g2(x),g3(x)分别表示等式约束① ② ③对
x
1
,
x
2
x_1,x_2
x1,x2求导所得,同样的得到:
∇
h
(
x
)
=
(
−
1
1
)
\nabla h(x)=\begin{pmatrix} -1\\ 1 \\ \end{pmatrix}
∇h(x)=(−11)
带入公式
∇
f
(
x
∗
)
+
∑
i
∈
I
∗
⋋
i
∗
∇
g
i
(
x
∗
)
+
∑
j
∈
J
∗
μ
j
∗
∇
h
j
(
x
∗
)
=
0
\nabla f(x^*)+\sum_{i\in I^*}⋋_i^* \nabla g_i(x^*)+\sum_{j\in J^*}μ_j^* \nabla h_j(x^*)=0
∇f(x∗)+i∈I∗∑⋋i∗∇gi(x∗)+j∈J∗∑μj∗∇hj(x∗)=0
得到:
(
2
(
x
1
−
1
)
+
⋋
1
−
⋋
2
+
μ
2
(
x
2
−
1
)
−
⋋
1
−
⋋
3
+
μ
)
=
(
0
0
)
\begin{pmatrix} 2(x_1-1)+⋋_1-⋋_2+μ\\ 2(x_2-1)-⋋_1-⋋_3+μ\\ \end{pmatrix}= \begin{pmatrix} 0\\ 0\\ \end{pmatrix}
(2(x1−1)+⋋1−⋋2+μ2(x2−1)−⋋1−⋋3+μ)=(00)
取特殊的
x
1
=
1
,
x
2
=
2
x_1=1,x_2=2
x1=1,x2=2,此时带入st里面发现① ② ③都严格小于0,都是非有效约束,于是
⋋
1
=
⋋
2
=
⋋
3
=
0
⋋_1=⋋_2=⋋_3=0
⋋1=⋋2=⋋3=0,此时的
μ
=
0
μ=0
μ=0
**列2:**验证
x
∗
(
1
,
1
,
1
,
)
T
x^*(1,1,1,)^T
x∗(1,1,1,)T是否满足下列问题的K-T条件:
m
i
n
f
(
x
1
,
x
2
,
x
3
)
=
−
x
1
2
−
x
2
2
−
2
x
3
3
)
minf(x_1,x_2,x_3)=-x_1^2-x_2^2-2x_3^3)
minf(x1,x2,x3)=−x12−x22−2x33)
s
t
:
{
x
1
−
x
2
≤
0
①
−
x
1
≤
0
②
−
x
2
≤
0
③
−
x
3
≤
0
④
x
1
2
+
x
2
2
+
x
3
2
=
3
⑤
st:\begin{cases} x_1-x_2 \le 0 &①\\ -x_1\le0 &②\\ -x_2\le0 &③\\ -x_3\le0 &④\\ x_1^2+x_2^2+x_3^2=3&⑤ \end{cases}
st:⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧x1−x2≤0−x1≤0−x2≤0−x3≤0x12+x22+x32=3①②③④⑤
先把
x
∗
(
1
,
1
,
1
)
x^*(1,1,1)
x∗(1,1,1)带入① ② ③ ④等式约束里面,其中只有①严格取等号,于是
g
(
x
)
g(x)
g(x)只有一个,⑤等式约束也只有一个,即
h
(
x
)
h(x)
h(x)有一个。
带
入
x
∗
(
1
,
1
,
1
)
得
到
:
∇
f
(
x
)
=
(
−
6
x
1
−
2
x
2
−
4
x
3
)
=
(
−
6
−
2
−
4
)
带入x^*(1,1,1)得到: \nabla f(x)=\begin{pmatrix} -6x_1\\ -2x_2 \\ -4x_3\\ \end{pmatrix}= \begin{pmatrix} -6\\ -2\\ -4\\ \end{pmatrix}
带入x∗(1,1,1)得到:∇f(x)=⎝⎛−6x1−2x2−4x3⎠⎞=⎝⎛−6−2−4⎠⎞
①
对
x
1
,
x
2
求
导
,
并
带
入
x
∗
得
到
∇
g
(
x
)
=
(
1
−
1
0
)
,
∇
h
(
x
)
=
(
2
x
1
2
x
2
2
x
3
)
=
(
2
2
2
)
①对x_1,x_2求导,并带入x^*得到 \nabla g(x)=\begin{pmatrix} 1\\ -1 \\ 0\\ \end{pmatrix}, \nabla h(x)=\begin{pmatrix} 2x_1\\ 2x_2\\ 2x_3\\ \end{pmatrix}=\begin{pmatrix} 2\\ 2\\ 2\\ \end{pmatrix}
①对x1,x2求导,并带入x∗得到∇g(x)=⎝⎛1−10⎠⎞,∇h(x)=⎝⎛2x12x22x3⎠⎞=⎝⎛222⎠⎞
带入K-T条件公式得到:
(
−
6
−
2
−
4
)
+
⋋
1
(
1
−
1
0
)
+
μ
1
(
2
2
2
)
=
(
0
0
0
)
⟹
{
μ
1
=
2
⋋
1
=
2
\begin{pmatrix} -6\\ -2\\ -4\\ \end{pmatrix}+⋋_1\begin{pmatrix} 1\\ -1\\ 0\\ \end{pmatrix}+μ_1\begin{pmatrix} 2\\ 2\\ 2\\ \end{pmatrix}=\begin{pmatrix} 0\\ 0\\ 0\\ \end{pmatrix}\implies \begin{cases} μ_1=2\\ ⋋_1=2 \end{cases}
⎝⎛−6−2−4⎠⎞+⋋1⎝⎛1−10⎠⎞+μ1⎝⎛222⎠⎞=⎝⎛000⎠⎞⟹{μ1=2⋋1=2
解出来μ_1,⋋_1有解,于是
x
∗
x^*
x∗满足问题的K-T条件。
多维非线性规划
外点罚函数法
一
般
约
束
问
题
构
造
函
数
:
一般约束问题构造函数:
一般约束问题构造函数:
m
i
n
f
(
x
)
,
x
∈
R
n
minf(x) ,x\in R^n
minf(x),x∈Rn
s
t
:
{
g
i
(
x
)
≥
0
,
i
∈
I
=
{
1
,
.
.
.
,
p
}
h
j
(
x
)
≥
0
,
j
∈
J
=
{
1
,
.
.
.
,
q
}
st:\begin{cases} g_i(x)\ge0,i\in I=\{1,...,p\}\\ h_j(x)\ge0,j\in J=\{1,...,q\}\\ \end{cases}
st:{gi(x)≥0,i∈I={1,...,p}hj(x)≥0,j∈J={1,...,q}
构
造
P
(
x
,
M
)
=
f
(
x
)
+
M
p
~
(
x
)
,
其
中
M
趋
近
于
∞
构造P(x,M)=f(x)+M \widetilde p(x) ,其中M趋近于\infty
构造P(x,M)=f(x)+Mp
(x),其中M趋近于∞
p
~
(
x
)
=
∑
i
=
1
p
[
m
i
n
(
0
,
g
i
(
x
)
)
]
2
+
∑
j
=
1
q
[
h
j
(
x
)
]
2
\widetilde p(x) =\sum_{i=1}^p[min(0,g_i(x))]^2+\sum_{j=1}^q[h_j(x)]^2
p
(x)=i=1∑p[min(0,gi(x))]2+j=1∑q[hj(x)]2
列
1
:
用
外
点
罚
函
数
法
求
解
:
列1:用外点罚函数法求解:
列1:用外点罚函数法求解:
m
i
n
f
(
x
)
=
x
1
2
+
x
2
2
minf(x)=x_1^2+x_2^2
minf(x)=x12+x22
s
t
:
x
1
+
1
≤
0
st:x_1+1\le0
st:x1+1≤0
解
:
构
造
P
(
x
,
M
)
=
x
1
2
+
x
2
2
+
M
[
m
i
n
(
0
,
−
x
1
−
1
)
]
2
解:构造P(x,M)=x_1^2+x_2^2+M[min(0,-x_1-1)]^2
解:构造P(x,M)=x12+x22+M[min(0,−x1−1)]2
即
P
(
x
,
M
)
=
{
x
1
2
+
x
2
2
,
−
x
1
−
1
≥
0
x
1
2
+
x
2
2
+
M
(
−
x
1
−
1
)
2
,
−
x
1
−
1
<
0
P(x,M)=\begin{cases} x_1^2+x_2^2,-x_1-1\ge0\\ x_1^2+x_2^2+M(-x_1-1)^2,-x_1-1\lt0\\ \end{cases}
P(x,M)={x12+x22,−x1−1≥0x12+x22+M(−x1−1)2,−x1−1<0
其
中
P
′
x
1
=
{
2
x
1
,
x
1
≤
−
1
①
2
x
1
+
2
M
(
x
1
+
1
)
,
x
1
>
−
1
②
其中P'x_1=\begin{cases} 2x_1,x_1\le-1①\\ 2x_1+2M(x_1+1),x_1\gt -1②\\ \end{cases}
其中P′x1={2x1,x1≤−1①2x1+2M(x1+1),x1>−1②
P
′
x
2
=
2
x
2
P'x_2=2x_2
P′x2=2x2
由
∇
P
(
x
,
M
)
=
(
P
′
x
1
P
′
x
2
)
(
0
0
)
知
①
不
满
足
由 \nabla P(x,M)=\begin{pmatrix} P'x_1\\ P'x_2\\ \end{pmatrix}\begin{pmatrix} 0\\ 0\\ \end{pmatrix}知①不满足
由∇P(x,M)=(P′x1P′x2)(00)知①不满足
于
是
就
有
x
1
=
(
−
2
M
)
/
(
2
+
2
M
)
,
x
2
=
0
于是就有x_1=(-2M)/(2+2M),x_2=0
于是就有x1=(−2M)/(2+2M),x2=0
此
时
的
M
趋
近
于
∞
时
,
x
1
=
−
1
,
x
2
=
0
此时的M趋近于\infty时,x_1=-1,x_2=0
此时的M趋近于∞时,x1=−1,x2=0
内点罚函数法
m
i
n
f
(
x
)
,
x
∈
R
n
minf(x) ,x\in R^n
minf(x),x∈Rn
s
t
:
g
i
(
x
)
≥
0
,
i
∈
I
=
{
1
,
2
,
.
.
.
,
p
}
st:g_i(x)\ge0,i\in I=\{1,2,...,p\}
st:gi(x)≥0,i∈I={1,2,...,p}
构
造
B
(
x
,
r
)
=
f
(
x
)
+
r
B
~
(
x
)
,
其
中
r
趋
近
于
0
构造B(x,r)=f(x)+r \widetilde B(x) ,其中r趋近于0
构造B(x,r)=f(x)+rB
(x),其中r趋近于0
B
~
(
x
)
=
∑
i
=
1
p
1
/
g
i
(
x
)
或
B
~
(
x
)
=
−
∑
i
=
1
p
l
n
g
i
(
x
)
\widetilde B(x)=\sum_{i=1}^p1/g_i(x)或\widetilde B(x)=-\sum_{i=1}^plng_i(x)
B
(x)=i=1∑p1/gi(x)或B
(x)=−i=1∑plngi(x)
这
里
就
是
看
那
个
构
造
方
法
更
好
求
解
就
选
哪
个
这里就是看那个构造方法更好求解就选哪个
这里就是看那个构造方法更好求解就选哪个