做网站的公司不给域名做网站需要掌握什么
做网站的公司不给域名,做网站需要掌握什么,六安市论坛,网站开发的意义和作用数学基础线性代数 从行的角度从列的角度行列式的几何解释向量范数和矩阵范数 向量范数矩阵范数的更强的性质的意义 几种向量范数诱导的矩阵范数 1 范数诱导的矩阵范数无穷范数诱导的矩阵范数2 范数诱导的矩阵范数 各种范数之间的等价性向量与矩阵序列的收敛性 函数的可微性与展…数学基础线性代数 从行的角度从列的角度行列式的几何解释向量范数和矩阵范数 向量范数矩阵范数的更强的性质的意义 几种向量范数诱导的矩阵范数 1 范数诱导的矩阵范数无穷范数诱导的矩阵范数2 范数诱导的矩阵范数 各种范数之间的等价性向量与矩阵序列的收敛性 函数的可微性与展开 一维优化问题牛顿莱布尼茨公式对多维的拓展Lipschitz 连续中值定理 凸优化问题 凸函数的判断 f 在 D 一阶可微正定矩阵f 在 D 二阶可微 无约束问题的最优性条件 一阶必要条件二阶必要条件二阶充分条件充要条件一般算法框架 线搜索 精确线搜索 单峰区间黄金分割方法 无法执行黄金分割的情况 牛顿法 原理算法收敛速度 割线法抛物线方法 原理算法与黄金分割的对比判断插点位置的注意事项 非精确线搜索 Armijo-Goldstein 准则Wolfe-Powell 准则Armijo 准则的实现线搜索方法框架线搜索方法的收敛性 梯度法和牛顿法 最速下降法梯度法牛顿法阻尼牛顿法修正牛顿法 共轭方向法和共轭梯度法 收敛速度的证明另一种讲法怎么求第 k 步的搜索方向对于非线性问题二次终止性从内积角度看傅里叶变换 拟牛顿法 对称秩一校正对称秩二DFP, BFGS对称正定 拟牛顿法的收敛性 有约束的最优化问题约束最优化问题的最优性条件 等式约束的最优性条件 拉格朗日乘子法证明一阶必要条件二阶充分条件 不等式约束问题的最优性条件 无效约束和有效约束Farkas 引理Gordan 引理不等式约束问题的几何最优性条件不等式约束问题的 KT 条件 一般约束问题的最优性条件 不等式约束和等式约束统一为等式约束一阶必要条件二阶充分条件 约束优化问题的可行方向法 Zoutendijk 可行方向法 可行方向非线性约束下的非线性优化问题转化迭代时满足约束下降可行方向的条件线性约束的可行方向法非线性约束的可行方向法 梯度投影法 怎么把一个向量投影到边界上 投影到 a 向量投影到 A 矩阵投影矩阵的性质投影到 Mx 0 表示的空间投影到 Mx b 表示的空间A (A1, A2) 算法流程 罚函数 外罚函数 证明收敛聚点算法框架优缺点 内点法 算法框架证明收敛优缺点 乘子法PH 算法 PH 算法流程 划重点 绪论无约束问题的最优性条件什么是凸集凸函数多元函数线搜索的框架常用方法的收敛速度判断迭代是否终止的判据线搜索梯度法共轭方向法 二次终止性 拟牛顿法有约束的优化问题约束问题的可行方向法约束问题的罚函数方法 拟牛顿法 考提出的思想是什么 希望用一个对称正定矩阵 B 去近似 Hesse 矩阵 G
或者是用一个对称正定矩阵 H 去近似 Hesse 矩阵 G 的逆
并且要求这个方法比较简单不然还不如直接求 G 考方程是什么条件是什么 因为 G 满足 G k 1 ( x k 1 − x k ) ≈ g k 1 − g k G_{k1}(x_{k1}-x_{k}) \approx g_{k1} - g_{k} Gk1(xk1−xk)≈gk1−gk
如果记 s k x k 1 − x k , y k g k 1 − g k s_k x_{k1}-x_{k}, y_k g_{k1} - g_{k} skxk1−xk,ykgk1−gk
那么上式转化为 G k 1 s k ≈ y k G_{k1}s_k \approx y_k Gk1sk≈yk
那么我们的问题就转化为找一个 B 满足 B k 1 s k ≈ y k B_{k1}s_k \approx y_k Bk1sk≈yk
或者是找一个
实际迭代用一个修正公式 B k 1 B k E k B_{k1} B_k E_k Bk1BkEk
对称秩一校正 考对称秩一校正公式是怎么得到的 E k a u k u k T E_k a u_k u_k^T EkaukukT 一个自由度
因为 u k u k T u_k u_k^T ukukT 这个矩阵的每一列都是 u k T u_k^T ukT 这个列向量的 u i u_i ui 倍
所以这个矩阵线性无关的列只有一个那就是 u k T u_k^T ukT 所以秩为 1 α ( u k T s k ) u k y k − B k s k \alpha(u_k^T s_k)u_k y_k-B_ks_k α(ukTsk)ukyk−Bksk s k s_k sk 是列向量 u k T u_k^T ukT 是行向量 ( u k T s k ) (u_k^T s_k) (ukTsk) 是一个数所以 u k u_k uk 与 y k − B k s k y_k-B_ks_k yk−Bksk 平行
所以把 u k u_k uk 写成 y k − B k s k y_k-B_ks_k yk−Bksk 的倍数
初始 B 0 I B_0 I B0I 显然是对称正定
之后要确定方向的时候还是要求解 G d − g Gd -g Gd−g 也就是求解这个 B d − g Bd -g Bd−g 中的 d
也就是要求一个 B B B 的逆一般是可以接受的
但是如果你是用 H H H 取近似 G G G 的逆
那么直接就能 d k − H k g k d_k -H_k g_k dk−Hkgk 了
目标函数的计算耗时
一阶导用差分来算的话至少算两次目标函数那么更耗时
二阶导同理至少算四次目标函数更耗时所以才要避免计算 G
对称秩二
加两个修正的话有两个参数能够修正的范围就更多
现在在推导的时候没有那个关键条件 左边的列向量和右边的列向量是平行的
现在的问题是右端的向量 y k − B k s k y_k-B_ks_k yk−Bksk 位于左边的 u k , v k u_k,v_k uk,vk 张成的平面上
那么其实两个基向量的系数可以任取
那么我们就取一中最简单的情况就是 y k − B k s k y_k-B_ks_k yk−Bksk 中的 y k y_k yk 与 u k u_k uk 平行 B k s k B_ks_k Bksk 与 v k v_k vk 平行
DFP, BFGS BFGS, DFP 怎么推导得到的 对称正定 考BFGS, DFP 每一步校正的时候怎么保证 Bk 对称正定 还要证明迭代得到的 B k B_k Bk 也是对称正定那么就是要求这个条件
书上结论错了不是说有一个对称正定矩阵 B就能把这个对称正定矩阵分解为对称正定矩阵 B 1 2 B 1 2 B^{\frac{1}{2}}B^{\frac{1}{2}} B21B21
这里实际上应该是对称正定矩阵的 Cholesky 分解(Cholesky 分解是 LU 分解对对称正定矩阵的特殊情况)
Cauchy-Schwarz 不等式 ( a ⋅ b ) 2 ⩽ ( a ⋅ a ) ( b ⋅ b ) (a \cdot b)^2 \leqslant (a \cdot a)(b \cdot b) (a⋅b)2⩽(a⋅a)(b⋅b)
同样的是 ∫ ( a ⋅ b ) 2 d x ⩽ ∫ ( a ⋅ a ) ( b ⋅ b ) d x \int(a \cdot b)^2 \mathrm{d}x \leqslant \int(a \cdot a)(b \cdot b) \mathrm{d}x ∫(a⋅b)2dx⩽∫(a⋅a)(b⋅b)dx
一个向量像另外一个向量投影再投影回他自身得到的向量的长度小于它自身的长度
因为 B 是对称正定所以 B d − g Bd -g Bd−g 有唯一解 d
同时还有 0 d T B d − d T g 0d^TBd -d^Tg 0dTBd−dTg所以解得的 d 与下降方向 -g 成锐角所以能够保证下降 所以之前这一段在证啥来着 所以问题怎么就转化成了 保证 y k T s k 0 y_k^Ts_k 0 ykTsk0 那么问题转变成你怎么保证 y k T s k 0 y_k^Ts_k 0 ykTsk0
对于精确线搜索有 g k 1 T d k 0 g^T_{k1} d_k 0 gk1Tdk0故 y k T s k α k ( g k 1 − g k ) T d k − α k g k T d k 0 y_k^Ts_k \alpha_k(g_{k1}-g_k)^T d_k -\alpha_k g^T_k d_k 0 ykTskαk(gk1−gk)Tdk−αkgkTdk0
对于 Armijo 准则有一个条件 α 1 \alpha1 α1 保证了
对于 Wolfe 准则利用该准则的第二个不等式即 ∇ f ( x k − α k d k ) T d k ⩾ σ g k T d k \nabla f(x_k - \alpha_k d_k)^T d_k \geqslant \sigma g_k^T d_k ∇f(xk−αkdk)Tdk⩾σgkTdk
有 y k T s k α k ( g k 1 − g k ) T d k ⩾ α k ( σ − 1 ) g k T d k 0 y_k^T s_k \alpha_k(g_{k1}-g_{k})^Td_k \geqslant \alpha_k(\sigma-1)g_k^T d_k 0 ykTskαk(gk1−gk)Tdk⩾αk(σ−1)gkTdk0
那么就证明了对于精确线搜索和非精确线搜索都有 y k T s k 0 y_k^Ts_k 0 ykTsk0 总之我感觉就是首先你要知道要证 y k T s k 0 y_k^Ts_k 0 ykTsk0然后你要知道对于精确线搜索和非精确线搜索都有 y k T s k 0 y_k^Ts_k 0 ykTsk0 拟牛顿法的收敛性 考拟牛顿法的收敛速度有没有二次终止性 拟牛顿法具有二次终止性
只要证明每一步的搜索方向与目标函数的负梯度方向的夹角小于 90 度
根据 B 是正定的得到 sTBs 是大于 0 的
但是趋于极限的时候可能 cos θ k → 0 \cos{\theta_k} \rightarrow 0 cosθk→0这也是不满足的
引入一个函数函数中包含一个 cos θ k \cos{\theta_k} cosθk
G 乘 sk 表示二阶导 G 沿着 sk 的分量
gk1 - gk ∫ G(xk tsk)sk dt
G 的范数有一个上限记为 W
有约束的最优化问题
等式约束
不等式约束
一般约束
一个二维等式约束的情况
画 f ( x ) f(x) f(x) 的等值线图从只有一个点开始画直到出现一圈等值线刚好与等式约束 h ( x ) h(x) h(x) 代表的曲线相切
也就是意味着 f ( x ) f(x) f(x) 和 h ( x ) h(x) h(x) 在那个切点的方向上的各自的梯度方向是共线的
两个三维等式约束的情况
两个三维等式约束代表了两个曲面这两个曲面的交集一般是一个曲线这个曲线的切线上的点的切线方向与这两个曲面在这点的法向梯度方向都垂直
而 f ( x ) f(x) f(x) 的等值面第一次碰到这个曲线的时候与这个曲线相切那么切点处 f ( x ) f(x) f(x) 的梯度与切点处的切向量垂直
那么这三个梯度方向是共面的也就是线性相关的
约束最优化问题的最优性条件
分为等式约束问题的最优性条件和不等式约束问题的最优性条件
最后等式约束问题的最优性条件和不等式约束问题的最优性条件合并到一起得到一个一般约束问题额最优性条件 考几个最优性条件的表示 考最优性条件的几何含义 考给你一个目标函数的等值线的图给一个约束函数的区域判断哪些点是满足必要条件哪些点是满足充要条件 等式约束的最优性条件
一阶必要条件 ∇ f ( x ∗ ) − ∑ i 1 l λ i ∗ ∇ h i ( x ∗ ) 0 \nabla f(x^*) - \sum_{i1}^l \lambda_i^* \nabla h_i(x^*) 0 ∇f(x∗)−∑i1lλi∗∇hi(x∗)0
二阶充分条件 ∇ h i ( x ∗ ) d 0 \nabla h_i(x^*)d 0 ∇hi(x∗)d0, d T ∇ x x 2 L ( x ∗ , λ ∗ ) d 0 d^T \nabla^2_{xx}L(x^*,\lambda^*)d0 dT∇xx2L(x∗,λ∗)d0
一阶必要条件 f ( x ) f(x) f(x) 的梯度可以写为各个约束条件的梯度的线性组合
二阶充分条件 d T G d 0 d^TGd 0 dTGd0 沿着两个方向的 d 走函数值都要增大
拉格朗日乘子法
得到的公式
就是我们之前讲的 f ( x ) f(x) f(x) 的梯度可以写为各个约束条件的梯度的线性组合
需要各个约束是向量无关的为什么
假设两个约束曲线唯一确定一个点然后再假设确定的这个点是这两个曲线相切的切点那么这两个约束曲线在这一点的梯度是共线的但是这一点不一定是 f ( x ) f(x) f(x) 与约束曲线相切的地方所以 f ( x ) f(x) f(x) 在一点的梯度不与约束在这一点的梯度不一定共线这样的话 f ( x ) f(x) f(x) 在解的梯度不能表示为约束的梯度的线性组合
所以才需要这个约束
证明一阶必要条件 H H H 是拉格朗日函数 h ( x ) h(x) h(x) 的梯度
不失一般性可以设 H H H 的前 l l l 行构成的 l l l 阶子矩阵 H 1 H_1 H1 是非奇异的
因为我们有 l l l 个线性无关的约束所以肯定有 l l l 个线性无关的行
我们可以把这 l l l 个线性无关的行提到矩阵的前面
为什么我们可以提呢
其实调换矩阵的行的过程本质上就是调换了坐标系的轴
不管轴怎么变图形仍然是那个图形所以不妨碍证明
所以把 H H H 分为两个部分 H 1 , H 2 H_1, H_2 H1,H2
其实就是相当于把 x x x 分为两个部分 x ( y , z ) x(y,z) x(y,z) 我们要把 y 消去留下 z
在解 x ∗ ( y ∗ , z ∗ ) x^*(y^*,z^*) x∗(y∗,z∗) 的地方满足 h ( x ∗ ) h ( y ∗ , z ∗ ) 0 h(x^*) h(y^*,z^*) 0 h(x∗)h(y∗,z∗)0
h 对 y 的导这个雅可比矩阵就是 H 的前 l l l 阶子矩阵的转置
根据隐函数定理可知在 z ∗ z^* z∗ 附近存在 y u ( z ) yu(z) yu(z) 且使得 h ( u ( z ) , z ) 0 h(u(z),z)0 h(u(z),z)0
故有 h ( u ( z ) , z ) h(u(z),z) h(u(z),z) 在 z ∗ z^* z∗ 的梯度为 0 ∂ f / ∂ z 1 0 \partial{f}/\partial{z_1} 0 ∂f/∂z10
其中 ∂ f / ∂ z 1 ∂ f / ∂ y 1 ⋅ ∂ y 1 / ∂ z 1 ∂ f / ∂ y 2 ⋅ ∂ y 2 / ∂ z 1 . . . \partial{f}/\partial{z_1} \partial{f}/\partial{y_1} \cdot \partial{y_1}/\partial{z_1}\partial{f}/\partial{y_2} \cdot \partial{y_2}/\partial{z_1} ... ∂f/∂z1∂f/∂y1⋅∂y1/∂z1∂f/∂y2⋅∂y2/∂z1...
可以写成 f 的梯度 · y 对 zi 的导数
二阶充分条件
对称正定 d T G d 0 d^TGd 0 dTGd0 的意思是沿着两个方向的 d 走函数值是要增大的
类比一维情况下的抛物线。
一阶必要条件是点在约束上的法向与在可行域内的法向共线
h 的梯度在 h 0 的下半部分说明 h 0 的下半部分是 h 0上半部分是 h 0
沿着两个 d对于 L f − λ h L f - \lambda h Lf−λh都是 f 增加h 增加 λ \lambda λ 是 f 的梯度 λ \lambda λ 倍的 h 的梯度但是 f 的梯度是向右上的与 h 的梯度相反所以 λ 0 \lambda0 λ0
所以两个方向上都是 L 增加
对于有界的向量每次都把区间二等分肯定有一半区间是存在无穷个向量的那么划分无穷次最终那个区间就会收敛到某个值 考带约束情况下一阶必要条件和二阶充分条件有什么区别 不等式约束问题的最优性条件
无效约束和有效约束
考虑不等式约束 g ( x ) ⩾ 0 g(x) \geqslant 0 g(x)⩾0
如果全局极小值点在约束的范围内说明这个约束没有起作用称这个约束为无效约束
问题就转化为无约束的优化问题
如果约束起作用的话那么极小值一定在约束的边界上那么不等式约束就转化为了等式约束
其实就是当前迭代点代进去不等式如果等号成立当前迭代点一定在约束的边界上就是就是有效约束
不成立当前迭代点在约束的范围内就是无效约束
相当于我们通过对约束是否有效的分析能够将不等式约束和等式约束统一为等式约束
Farkas 引理
书上在 Farkas 引理中的描述在 a sum alphai bi 之后似乎还有一句话是错的
相容的意思就是一个东西可以推出另一个东西
alphai 非负也就是说 a 在 bi 组成的扇形区域内
bi d 0 表示所有的 bi 都与 d 成锐角
两个命题等价也就是
“a 在 bi 构成的扇形区域内” 等价于 “d 位于 bi 与 d 成锐角的区域 可以推出 d 位于 a 与 d 成锐角的区域” Gordan 引理
然后通过 Farkas 引理去证明 Gordan 引理
b1 与 d 成锐角的半圆和 b2 与 d 成锐角的半圆刚好组成一个完整的圆那就是无解
这种情况下就是 alpha1 b1 alpha2 b2 0alphai 都是非负了
如果是三个 b 的情况假设 b1 和 b2 成锐角那么没有 alpha1 b1 alpha2 b2 0
但是如果有第三个 b3b3 所在的半圆和 “b1 与 b2 两个半圆的公共扇形”没有交集的话
那么仍然有 alpha1 b1 alpha2 b2 alpha3 b3 0 alphai 都是非负 不等式约束问题的几何最优性条件
如果是局部极小值说明可行方向里面没有方向再下降了能在下降就不是局部极小值了所以也就是可行方向集与下降方向集交集为空集
也就是不等式组
f 梯度 · d 0
-gi 梯度 · d 0
这就跟之前 Gordan 引理里面的 biTd 0 中的 bi 是一样的
不等式约束问题的 KT 条件
不等式约束问题的 KT 条件不等式约束问题的一阶必要条件 一般约束问题的最优性条件
不等式约束和等式约束统一为等式约束
之前我们等式约束那里 λ \lambda λ 没有限定正负
但是在这里不等式约束有额外的要求是 λ 0 \lambda 0 λ0
因为我们需要确定g 的梯度的方向是指向 g 0 的区域
对于不等式约束 g ( x ) ⩽ 0 g(x) \leqslant 0 g(x)⩽0 那么它的要求就是 λ 0 \lambda 0 λ0
原本的无效约束的情况是
g(x) 0
f 梯度 0
有效约束的情况是
g(x) 0
f 梯度 λ \lambda λ g 梯度
现在我们可以把无效约束的条件和有效约束的条件统一起来
因为无效约束的话相当于 λ 0 \lambda0 λ0
所以无效约束的条件写为
g(x) 0
f 梯度 λ \lambda λ g 梯度 0
也是可以的
那么再进一步无效约束和有效约束的条件还可以写成同一组式子
g(x) 0
f 梯度 λ \lambda λ g 梯度 λ \lambda λ 0 λ \lambda λ g(x) 0
一阶必要条件
以前的书叫 KT现在叫 KKT
这称为 KKT 条件 二阶充分条件
跟等式约束一样也是 d T G d 0 d^TGd0 dTGd0
所以现在的情况是等式约束有一阶必要条件和二阶充分条件不等式约束只有一阶必要条件现在合并起来一般约束有一阶必要条件和二阶充分条件
约束优化问题的可行方向法 考处理约束的两大类方法 Zoutendijk 可行方向法
梯度投影法
简约梯度法
Zoutendijk 可行方向法
可行方向 考可行方向下降可行方向 可行方向从 x k x_k xk 沿 d d d 做微小移动得到的新的点 x k 1 x_{k1} xk1 也满足约束
下降可行方向可行方向上函数值是下降的
所以无约束问题中我们是每一步找下降方向
有约束问题中我们是每一步找下降可行方向
非线性约束下的非线性优化
非线性约束一般是一条曲线
先考虑线性约束的话 E x e Ex e Exe 写成 E 1 T ( x − x 1 ) 0 E_1^T (x - x_1) 0 E1T(x−x1)0其中 E 1 T x 1 e 1 E_1^Tx_1 e_1 E1Tx1e1 E 1 T ( x − x 1 ) 0 E_1^T (x - x_1) 0 E1T(x−x1)0 表示一个超平面E 有 l l l 个的话解就在 n − l n-l n−l 维的子空间
假设 A x b Ax b Axb A [ A 1 A 2 ] , b [ b 1 b 2 ] A [A1 A2], b [b1 b2] A[A1A2],b[b1b2]
如果 A 1 x b 1 , A 2 x b 2 A_1 x b_1, A_2 x b_2 A1xb1,A2xb2如果不是就把等号的部分提到前面来
那么就是 A 1 A_1 A1 这部分约束起作用了 A 2 A_2 A2 没有
d 是 x 处的下降可行方向的充要条件 A 1 d 0 A_1 d 0 A1d0 E d 0 E d 0 Ed0 ∇ f ( x ) T d 0 \nabla f(x)T d 0 ∇f(x)Td0
前两个表示可行
第三个表示下降
证明
走之前 E 1 x k e 1 E_1 x_k e_1 E1xke1 走之后 E 1 x k 1 e 1 E_1 x_{k1} e_1 E1xk1e1 两式相减就是 E1 d 0
走之前 A1 xk 0 走之后 A1 xk1 0 两式相减就是 A1 d 0
这里也看出这和无效约束 A2 无关
问题转化
问题从 min f ( x ) \min f(x) minf(x) 转化为 min ∇ f ( x ) T d \min \nabla f(x)^T d min∇f(x)Td
区别在于 原来的 f 是一个非线性的现在的 ∇ f ( x ) T \nabla f(x)^T ∇f(x)T 是线性的
现在就是线性规划问题他的解一定在边界上
如果 ∇ f \nabla f ∇f 与 d d d 成一个钝角那么如果 d d d 不断变大那么 ∇ f ( x ) T d 0 \nabla f(x)^T d 0 ∇f(x)Td0 会不断变小这样违背了我们 min n a b l a f ( x ) T d \min nabla f(x)^T d minnablaf(x)Td 的初衷
所以我们要约束 d 的大小
但是我们是用 -1 d 1 来约束的为什么不用 || d || 1 之类的来约束
因为二范数相当于 sqrt(d1^2 d2^2 …) 1 是一个非线性的约束
我们本来就转化为了线性的约束不希望再求非线性的约束
迭代时满足约束
现在我们是迭代 x alpha d
这个 alpha 肯定有限制不能让下一步超出可行域了
想象一个线性约束可行域是一个多边形不能超出这个多边形
一维线搜索问题是 min f(x alpha d)
alpha 应该大于 0 小于某个数
alpha max{alpha | x alpha d in F}
对于有效约束 A1 xk alpha A1 dk b1
无效约束 A2 xk alpha A12k b2
因为 A1 xk b1, alpha 0, A1 dk 0所以有效约束这里自然满足
因为 A2 xk b2 是已经满足的所以 b2 - A2 xk 0
现在要证 alpha (b2 - A2 xk)/(A2 dk)
A2 dk 0 时
比如你已经在右边了你继续往右走位置还是在无效约束的右边
等号满足的时候就是你这个点刚好在无效约束上面
A2 dk 0 时
现在要证 alpha (b2 - A2 xk)/(A2 dk)
取最小的正数就相当于取到了 alpha 的上限
也就是 d 与各个约束的交点可能在约束的前面或者后面
如果交在后面就是 A2 dk 0 时自动满足
如果交在前面就是 A2 dk 0 时这个时候我们要选一个距离本点最近的交点
下降可行方向的条件 ∇ g i ( x ) d 0 \nabla g_i(x) d 0 ∇gi(x)d0
i 需要是有效约束
(A1 d)i 0 表示 A1 d 的某一行是 0 也就是 A1 的某一行就是法向
也就是 d 与 ∇ g i ( x ) \nabla g_i(x) ∇gi(x) 成锐角
问题确定之后 ∇ f \nabla f ∇f 和 ∇ g \nabla g ∇g 都是确定的
线性约束的可行方向法 考: 可行方向法的基本框架 线性约束可以想象成边界都是直线 给定初始点给定终止误差 在第 k 个迭代点 x k x_k xk 处将不等式约束分为有效约束和非有效约束 A 1 x k b 1 , A 2 x k b 2 A_1 x_k b_1, A_2 x_k b_2 A1xkb1,A2xkb2 其中 A [ A 1 A 2 ] , b [ b 1 b 2 ] A \left[\begin{array}{ccc} A_1 \\ A_2 \end{array}\right], b \left[\begin{array}{ccc} b_1 \\ b_2 \end{array}\right] A[A1A2],b[b1b2] 若 x k x_k xk 是可行域的一个内点此时没有等式约束即 E 0 , A 1 0 E 0, A_1 0 E0,A10 那么若 ∣ ∣ ∇ f ( x k ) ∣ ∣ ε \vert \vert \nabla f(x_k) \vert \vert \varepsilon ∣∣∇f(xk)∣∣ε停算得到近似极小点 x k x_k xk否则取搜索方向为 d k − ∇ f ( x k ) d_k -\nabla f(x_k) dk−∇f(xk)转步 6 若不为内点那么求解线性规划问题 { min z ∇ f ( x k ) T d , s . t . A 1 d ⩾ 0 , E d 0 − 1 ⩽ d i ⩽ 1 , i 1 , ⋯ , n , \begin{cases} \min z \nabla f(x_k)^T d, \\ \mathrm{s.t.} A_1 d \geqslant 0, \\ Ed 0 \\ -1 \leqslant d_i \leqslant 1, i 1, \cdots, n, \end{cases} ⎩ ⎨ ⎧minzs.t.∇f(xk)Td,A1d⩾0,Ed0−1⩽di⩽1,i1,⋯,n, 求得最优解为 d k d_k dk 和最优值为 z k z_k zk 若 ∣ z ∣ ε \vert z \vert \varepsilon ∣z∣ε停算输出 x k x_k xk 作为近似极小点否则以 d k d_k dk 作为搜索方向转步 6 首先计算步长的最大值防止超出可行域然后进行无约束问题的一维线搜索获得最优解 α k \alpha_k αk 步长的最大值的确定 b ˉ b 2 − A 2 x k , d ˉ A 2 d k \bar{b} b_2 - A_2 x_k, \bar{d} A_2 d_k bˉb2−A2xk,dˉA2dk α ˉ min { b i ˉ d i ˉ ∣ d i 0 } \bar{\alpha} \min\{\dfrac{\bar{bi}}{\bar{di}} \vert di 0\} αˉmin{diˉbiˉ∣di0}如果 di 不全大于 0 这里 ∣ d i 0 \vert di 0 ∣di0 表示只在 d i 0 di 0 di0 时才考虑对应的 b i ˉ d i ˉ \dfrac{\bar{bi}}{\bar{di}} diˉbiˉ是集合里面那个 ∣ \vert ∣ 如果 di 全大于 0那么可以一定找到一个很大的 α \alpha α 使得 α d b \alpha d b αdb 成立所以此时 α ˉ ∞ \bar{\alpha} \infty αˉ∞也就是 α \alpha α 没有限制 会不会有存在一个 d b 使得 α 无论取什么值 α d b \alpha d b αdb 都不成立不过应该是不会毕竟是从约束推出来的 { min f ( x k α d k ) , s . t . 0 ⩽ α ⩽ α ˉ , \begin{cases} \min f(x_k \alpha d_k), \\ \mathrm{s.t.} 0 \leqslant \alpha \leqslant \bar{\alpha}, \end{cases} {minf(xkαdk),s.t.0⩽α⩽αˉ, 置 x k 1 : x k α k d k , k : k 1 x_{k1} : x_k \alpha_k d_k, k : k 1 xk1:xkαkdk,k:k1转步 2
非线性约束的可行方向法
梯度投影法 考可行方向法的梯度投影法的基本思想 x 在边界上的时候,就在边界上找最小点
也就是取负梯度向边界面交集的投影作为搜索方向
x 不在边界上的时候,就直接取负梯度作为搜索方向(或者是拟牛顿,或者是共轭梯度)
剩下的问题就是,怎么把一个向量投影到边界上
怎么把一个向量投影到边界上
投影到 a 向量
设 P a P_a Pa 为将某向量 b 投影到 a 上的投影矩阵 P a b p a P_a b pa Pabpa
投影到 A 矩阵 P A P_A PA 的含义就是把 b 投影到 A 的列向量组成的线性空间的投影矩阵 P A b A x P_A b Ax PAbAx
x 是 b 投影之后在 A 的列空间中的系数
怎么求这个系数呢?利用投影的性质
原向量与投影向量之间的差,垂直于 A 的列空间 A T ( b − A x ) 0 A^T(b - Ax) 0 AT(b−Ax)0
得 A T b − A T A x 0 A^T b - A^T A x 0 ATb−ATAx0 x ( A T A ) − 1 A T b x (A^T A)^{-1} A^T b x(ATA)−1ATb
那么 P A b A x P_A b Ax PAbAx 变为 P A b A ( A T A ) − 1 A T b P_A b A (A^T A)^{-1} A^T b PAbA(ATA)−1ATb
那么 P A A ( A T A ) − 1 A T P_A A (A^T A)^{-1} A^T PAA(ATA)−1AT
投影矩阵的性质
1.对称性
两个向量的点积,两个向量交换顺序也不改变它的值
(P b)^T b b^T (P b) b^T P^T b b^T P b
那么 P^T P
2.幂等性
再投影一次,还是它本身
P P b P b
也就是 P^2 P
也就是 P^n P
3.半正定
投影之后的向量和投影之前的向量的夹角小于 90 度
(P b)^T b 0
b^T P^T b 0
b^T P b 0
4.垂直的另一个
(I - P) b e
e 是垂直的那个向量
那么 I - P 是把 b 投影到与 a 垂直的那个空间 思路应该是从 投影到 a 向量到投影到 A 矩阵到投影到 Mx0 表示的空间到投影到 Mxb 表示的空间 所以为什么中间会插进来一个投影的性质来着 投影到 Mx 0 表示的空间
记 P M P_M PM 为把某向量投影到 M x 0 M x 0 Mx0 所表示的空间中的投影矩阵 M 1 M_1 M1 是 M M M 的第一行 M 1 x 0 M_1 x 0 M1x0 表示超平面的法向量就是 M 1 M_1 M1
那么 M x 0 M x 0 Mx0 表示每一行表示的超平面的交集
先找 b 向着与 M x 0 Mx 0 Mx0 垂直的空间做投影
我们只需要把 b 向着 M 1 , M 2 , . . . M_1, M_2,... M1,M2,... 张成的空间做投影
那么只需要把之前的 P A ( A T A ) − 1 A T P A (A^T A)^{-1} A^T PA(ATA)−1AT 改一下
之前的那个 A A A 是列向量组成的,现在我们的 M i M_i Mi 是行向量
于是用 M T M^T MT 去替换 A A A
得 M T ( M M T ) − 1 M M^T (M M^T)^{-1} M MT(MMT)−1M
那么 v ⊥ M T ( M M T ) − 1 M v v⊥ M^T (M M^T)^{-1} M v v⊥MT(MMT)−1Mv
那么 v ∥ v − v ⊥ ( I − M T ( M M T ) − 1 M ) v v∥ v - v⊥ (I - M^T (M M^T)^{-1} M) v v∥v−v⊥(I−MT(MMT)−1M)v
也就是 P M I − M T ( M M T ) − 1 M P_M I - M^T (M M^T)^{-1} M PMI−MT(MMT)−1M
投影到 Mx b 表示的空间
记 P M b P_M^b PMb 是为把某向量投影到 M x b M x b Mxb 所表示的空间中的投影矩阵
这就是一开始我们想要的,投影到可行域的边界 x k 1 x k α d x_{k1} x_{k} \alpha d xk1xkαd
实际上我们是要投影 d
可以想成我们在 x_{k} 的位置建立了一个局部坐标系
将 x k 1 x k α d x_{k1} x_{k} \alpha d xk1xkαd 向 M x b Mx b Mxb 做投影
等价于
将 d x k 1 − x k d x_{k1} - x_{k} dxk1−xk 向 M x 0 Mx 0 Mx0 做投影
因为两个 b b b 相减了
那么 P M b P_M^b PMb 就化归为 P M P_M PM 的问题 P M b ( x k 1 ) P M ( x k 1 − x k ) P M ( d ) P_M^b(x_{k1}) P_M(x_{k1}-x_{k}) P_M(d) PMb(xk1)PM(xk1−xk)PM(d) 考给你一个方向计算他的梯度投影方向 就是用 P M I − M T ( M M T ) − 1 M P_M I - M^T (M M^T)^{-1} M PMI−MT(MMT)−1M P M b ( x k 1 ) P M ( x k 1 − x k ) P M ( d ) P_M^b(x_{k1}) P_M(x_{k1}-x_{k}) P_M(d) PMb(xk1)PM(xk1−xk)PM(d)
A (A1, A2)
A1 是有效约束 A2 是无效约束
要证 P(-nabla f(xk)) 是一个下降方向
(nabla f(xk))^T P(-nabla f(xk)) -(nabla f(xk))^T P (nabla f(xk))
因为 P 正定
所以 (nabla f(xk))^T P (nabla f(xk)) 0
所以 P(-nabla f(xk)) 0
因为这个情况 P nabla f(xk) 要求 ≠ \ne 0
所以 不会有 d 垂直于 nabla f(xk)
然后证明是可行方向
如果是 P nabla f(xk) 0 的情况
也就是搜索方向垂直于边界
但是朝着边界的法向量投影,系数 lambda
如果 lambda 0 也就是这就是最小值点了
如果 lambda 0 那就是还没到最小值点
算法流程
先搜边界上的极小值点,搜完之后再往内部走 其中有提到一个 dk 可能等于 0什么情况会这样呢 M M M 是有效约束 A 1 A_1 A1 和等式约束 E E E 的组合
有一个情况是如果 M 是可逆矩阵的话比如说 M 首先是一个方阵然后你就可以注意一下 M 是不是可逆的。如果确定了 M 是可逆那么有 P I − M T ( M M T ) − 1 M I − M T M T − 1 M − 1 M I − I 0 P I - M^T (M M^T)^{-1} M I - M^T {M^T}^{-1} M^{-1} M I - I 0 PI−MT(MMT)−1MI−MTMT−1M−1MI−I0
所以 P 乘任何一个向量都是 0所以可以算出来 dk 是 0
罚函数 考罚函数的基本思想 根据约束条件的特点将其转化为某种惩罚函数加到目标函数中去, 从而将约束优化问题转化为一系列的无约束优化问题来求解
外罚函数
min f(x)
s.t. hi(x) 0, i 1,2, …, l gi(x) 0, i 1, 2 , …, m
罚函数 P_bar 在可行域里面是 0在外面是正距离可行域越远值越大
P(x) f(x) sigma P_bar(x)
随着 sigma 的增大P 的极小值越来越大
罚函数取为 P(x) sum hi^2(x) sum (min(0, gi))^2
在可行域里面 gi 0 min(0, gi) 0
在可行域外面 gi 0 min(0, gi) gi
目标函数替换为 P(x, sigma) f(x) sigma P(x)
x 在可行域里面 P 0
x 在可行域外面 P 0 距离可行域越远值越大
sigma 越大sigma * P_bar(x) 也越大
如果要 sigma * P_bar 极小就是要 P_bar 极小
就是要 x 靠近可行域
min P(x, sigma)
在可行域外惩罚所以是外罚 ∂ P / ∂ x 1 ∂ P / ∂ x 2 0 \partial{P}/\partial{x_1} \partial{P}/\partial{x_2} 0 ∂P/∂x1∂P/∂x20
得到的方程组解出 x1 x2 关于 sigma 的表达式
令 sigma 趋于无穷得到 x1 x2 的值
写成算法也比较简单就是不断增加 sigmaxk 的变化较小时停止
证明收敛
随着 xk 迭代P 在增加或不变P_bar 在减小或不变f 在增大或不变
证
(1)
因为 sigma_{k1} sigma_{k}
所以 P(x_{k1}, sigma_{k1}) P(x_{k1}, sigma_{k})
因为 x_{k} 是 P(x, sigma_{k}) 的极小值
对于固定的 sigmaP(x, sigma) 只有一个极小值所以其他的 x 在 P(x, sigma_{k}) 都大于 P(x_{k}, sigma_{k})
所以 P(x_{k1}, sigma_{k}) P(x_{k}, sigma_{k})
即 随着 xk 迭代P 在增加或不变
(2)
f(x_{k1}) sigma_{k} P(x_{k1}) f(x_{k}) sigma_k P(x_k)
f(x_k) sigma_{k1} P(x_{k}) f(x_{k1}) sigma_{k1} P(x_{k1})
两式相加
(sigma_{k1} - sigma_{k}) (P(x_k) - P_{k1}) 0
因为 (sigma_{k1} - sigma_{k}) 0
所以 (P(x_k) - P_{k1}) 0
也证明了第二个
(3)
再根据 f(x_{k1}) sigma_{k} P(x_{k1}) f(x_{k}) sigma_k P(x_k) 证明了第三个
聚点
在 x_bar 的邻域里面序列 {x_k} 中有无限个点落在这个领域里面
所以就称这个 x_bar 是序列
继续证
假设 x* 是原问题的可行点
可行点有 P 0
P(xk, sigma_k) P(x, sigma_k)
根据之前的引理所以 P(xk ,sigma_k) 单调递增有上界
f(xk) P(xk, sigma_k) P(x*, sigma_k) f(x*)
所以 f(xk) 也收敛
lim (sigma P) lim (P - f) P_infty - f_infty
sigma - infty 所以 P - 0 也就是 x 趋于可行域
再证 x_infty 是全局极小点即 f(x_infty) f(x*)
\dots
算法框架 考怎么构造增广目标函数 考算法框架 对于 { min f ( x ) , s . t . h i ( x ) 0 , g i ( x ) ⩾ 0 , \begin{cases} \min f(x) , \\ \mathrm{s.t.} h_i(x) 0, \\ g_i(x) \geqslant 0, \end{cases} ⎩ ⎨ ⎧mins.t.f(x),hi(x)0,gi(x)⩾0,
取罚函数为 P ˉ ( x ) ∑ h i 2 ( x ) ∑ [ min { 0 , g i ( x ) } ] 2 \bar{P}(x) \sum h_i^2(x) \sum [\min\{0, g_i(x)\}]^2 Pˉ(x)∑hi2(x)∑[min{0,gi(x)}]2 给定初始点终止误差 以 x k − 1 x_{k-1} xk−1 为初始点求解子问题 min x ∈ R n P ( x , σ k ) f ( x ) σ k P ˉ ( x ) \min_{x \in \mathcal{R}^n} P(x, \sigma_k) f(x) \sigma_k \bar{P}(x) minx∈RnP(x,σk)f(x)σkPˉ(x) 令其极小点为 x k x_k xk 若 σ k P ˉ ( x k ) ⩽ ε \sigma_k \bar{P}(x_k) \leqslant \varepsilon σkPˉ(xk)⩽ε停算输出 x k x_k xk 令 σ k 1 γ σ k , k k 1 \sigma_{k1} \gamma \sigma_k, k k 1 σk1γσk,kk1转步 2
外罚函数可以用在等式约束和不等式约束的时候
没有等式约束的时候就删掉 ∑ h i 2 ( x ) \sum h_i^2(x) ∑hi2(x) 这一项
没有不等式约束的时候就删掉 ∑ [ min { 0 , g i ( x ) } ] 2 \sum [\min\{0, g_i(x)\}]^2 ∑[min{0,gi(x)}]2 这一项
优缺点
xk 可能刚好停在可行域边缘外面一点对于某些严格要求结果落在可行域的问题是不可接受的
罚函数 sigma 的取值困难如果取得小起不到惩罚的作用如果取得大可能造成 P 的 Hesse 矩阵很大条件数很大导致误差很大或者是溢出
找到后面的时候 P_bar 会比较小
P_bar 一般是不可微的导致没有办法使用基于导数的优化方法
这一点指的是在可行域外和可行域内之间的那个相接处可能不连续
但是可以用差分来近似
内点法
在可行域边界上施加了一个很陡的坡导致迭代点不会走出可行域
罚函数只定义在可行域里面第一个 x 也落在可行域里面
H_bar 形式 1/g(x) 或者 -ln(g(x))
f(x) tau H_bar(x)
tau 趋于 0 时求得的 x 极小点趋于原问题的极小点
算法框架 考怎么构造增广目标函数 考算法框架 对于 { min f ( x ) , g i ( x ) ⩾ 0 , \begin{cases} \min f(x) , \\ g_i(x) \geqslant 0, \end{cases} {minf(x),gi(x)⩾0,
取罚函数为 H ˉ ( x ) ∑ 1 g i ( x ) \bar{H}(x) \sum \dfrac{1}{g_i(x)} Hˉ(x)∑gi(x)1
或 H ˉ ( x ) − ∑ ln [ g i ( x ) ] \bar{H}(x) - \sum \ln[g_i(x)] Hˉ(x)−∑ln[gi(x)] 给定初始点终止误差 以 x k − 1 x_{k-1} xk−1 为初始点求解子问题 min x ∈ R n H ( x , σ k ) f ( x ) τ k H ˉ ( x ) \min_{x \in \mathcal{R}^n} H(x, \sigma_k) f(x) \tau_k \bar{H}(x) minx∈RnH(x,σk)f(x)τkHˉ(x) 令其极小点为 x k x_k xk 若 τ k H ˉ ( x k ) ⩽ ε \tau_k \bar{H}(x_k) \leqslant \varepsilon τkHˉ(xk)⩽ε停算输出 x k x_k xk 令 τ k 1 ρ τ k , k k 1 \tau_{k1} \rho \tau_k, k k 1 τk1ρτk,kk1转步 2
内点法只能用在不等式约束里面
你看他那个罚函数只有 g
证明收敛
引理
H(x_{k1}, tau_{k1}) f(x_{k1}) tau H_bar(x_{k1}) \dots
H 单调下降
定理
任意一聚点都是全局极小点
H f tau_k H
优缺点
初始值要求在可行域里面
找到的值一定在可行域里面
不能适用于等式约束
随着迭代的推进解趋于边界罚参数越来越小矩阵的病态程度越来越大
乘子法PH 算法
乘子法就是为了解决外罚函数和内罚函数的这些缺陷
假设现在 h(x) 0右边界区域不起作用 f ( x ) − λ ∗ h ( x ) f(x) - \lambda^* h(x) f(x)−λ∗h(x)
在 P’(x) 的基础上不断减 P’_bar(x) 不会影响迭代点因为不会影响 P’ 的分布
但是在 P’(x) 的基础上减去水平线 h’(x)相当于整体向下拉向下拉到一定程度刚好为 0 的解就刚好靠在
设 x* lambda* 是 KT 点那么如果 x* 在可行域里面那么
L(x*, lambda*) f(x*) - lambda* h(x*) 0
根据最优性条件h(x*) 0
对于其他 x就会有
L(x*, lambda*) f(x*) f(x) f(x) - lambda* h(x) L(x, lambda*)
也就是原来的等式约束问题转化为 min L(x, lambda*)
此问题可以再用外罚函数的方法来求解其增广目标函数为
Phi(x, lambda*, sigma) L(x, lambda*) sigma / 2 * || h(x) ||^2
可以证明sigma 0 适当大的时候x* 是 Phi(x, lambda*, sigma) 的极小点
问题在于乘子向量 lambda* 并不一致故而增广函数中乘子向量应当视为未知
按照以下步骤迭代求解
先取一个 lambda lambda0求 Phi(x, lambda0, sigma) 的极值点 x0
然后改变 lambda 的值再求新的 x1
直到 lambda 趋向 lambda* 及 x 趋向 x*
如何改变 lambda 的值
假设第 k 次我们求解得到 Phi(x, lambdak, sigma) 的极值点 xk
那么由该步极值条件可知 nabla Phi(x, lambdak, sigma) 0
展开 Phi得
展
Phi L(x, lambda*) sigma / 2 * || h(x) ||^2 f(x*) - lambda* h(x*) sigma / 2 * || h(x) ||^2
那么展开得
nabla f(x*) - nabla lambda* h(x*) sigma (nabla h(x)) h(x) 0
即
nabla f(x*) - (nabla h(x))(\lambda - sigma h(x)) 0
又因为 KT 点满足
nabla f(x*) - (nabla h(x*)) lambda* 0, h(x*) 0
两式对比所以希望 \lambda - sigma h(x) 逼近 lambda*
所以取 lambda_{k1} lambda_k - sigma h(x_k) 0
可见向量序列 x_k 收敛的充要条件为 h(x_k) - 0
也要证明 h(x_k) - 0 也是 (x_K, lambda_k) 为 KT 点的充要条件
PH 算法流程 考怎么构造增广目标函数 考算法框架 对于 { min f ( x ) , h i ( x ) 0 , \begin{cases} \min f(x) , \\ h_i(x) 0, \end{cases} {minf(x),hi(x)0,
先设拉格朗日函数然后再使用外罚
最后的增广函数为 f ( x ) − λ T h ( x ) σ 2 ∣ ∣ h ( x ) ∣ ∣ 2 f(x) - \lambda^T h(x) \dfrac{\sigma}{2}\vert \vert h(x)\vert \vert^2 f(x)−λTh(x)2σ∣∣h(x)∣∣2
或 H ˉ ( x ) − ∑ ln [ g i ( x ) ] \bar{H}(x) - \sum \ln[g_i(x)] Hˉ(x)−∑ln[gi(x)] 给定初始点终止误差 以 x k − 1 x_{k-1} xk−1 为初始点求解子问题 min x ∈ R n Φ ( x , λ k , σ k ) f ( x ) − λ k T h ( x ) σ k 2 ∣ ∣ h ( x ) ∣ ∣ 2 \min_{x \in \mathcal{R}^n} \Phi(x, \lambda_k, \sigma_k) f(x) - \lambda_k^T h(x) \dfrac{\sigma_k}{2}\vert \vert h(x)\vert \vert^2 minx∈RnΦ(x,λk,σk)f(x)−λkTh(x)2σk∣∣h(x)∣∣2 令其极小点为 x k x_k xk 若 ∣ ∣ h ( x k ) ∣ ∣ ⩽ ε \vert \vert h(x_k)\vert \vert \leqslant \varepsilon ∣∣h(xk)∣∣⩽ε停算输出 x k x_k xk 更新罚参数 若 ∣ ∣ h ( x k ) ∣ ∣ ⩾ θ ∣ ∣ h ( x k − 1 ) ∣ ∣ \vert \vert h(x_k)\vert \vert \geqslant \theta \vert \vert h(x_{k-1})\vert \vert ∣∣h(xk)∣∣⩾θ∣∣h(xk−1)∣∣令 σ k 1 η σ k \sigma_{k1} \eta \sigma_k σk1ησk否则 σ k 1 σ k \sigma_{k1} \sigma_k σk1σk 更新乘子向量 令 λ k 1 λ k − σ k h ( x k ) \lambda_{k1} \lambda_k - \sigma_k h(x_k) λk1λk−σkh(xk) k k 1 转步 2
划重点
绪论
考线代的常识
线性代数方程的解存在性
无约束问题的最优性条件
必要条件充分条件
一阶必要条件 梯度为 0
二阶必要条件 Hessian 矩阵半正定
二阶充分条件 Hessian 矩阵正定
什么是凸集凸函数
多元函数
二次函数什么时候有最小值
Hessian 矩阵正定表示什么含义
表示抛物面的开口朝上所以必然有最小值
线搜索的框架
循环的每一步先找搜索方向然后在这个方向上找极小值
常用方法的收敛速度
最速下降 一次收敛
牛顿 二次收敛
判断迭代是否终止的判据
进退法找到高低高三个点
黄金分割法、抛物线法新找到的点与旧的低点之间的距离小于 ε \varepsilon ε
Armijo 准则 f ( x k β m d k ) ⩽ f ( x k ) σ β m g k T d k f(x_k \beta^m d_k) \leqslant f(x_k) \sigma \beta^m g_k^T d_k f(xkβmdk)⩽f(xk)σβmgkTdk
最速下降法、各个牛顿法、共轭方向法、共轭梯度法、BFGS, DFP ∣ ∣ g k ∣ ∣ ⩽ ε \vert \vert g_k \vert \vert \leqslant \varepsilon ∣∣gk∣∣⩽ε
线搜索
已知搜索方向给出一维方向上的表达式
单峰区间的原理和步骤
高低高三个点
找完单峰区间之后黄金分割
黄金分割的原理具体步骤
比如给出黄金分割三个点
精确线搜索的牛顿法的具体公式
给你一个函数一个 xk算一下 x_{k1}
精确线搜索的抛物线方法
给三个点算出第四个点然后之后要用哪三个点做下一步的迭代
Armijo 准则知道怎么算
为了保证收敛每一步的搜索方向有什么要求
搜索方向与负梯度方向夹成一个锐角
梯度法
最速下降法
多维情况下的牛顿法
给定多维函数给 xk 算 x_{k1}
牛顿法的优缺点
梯度法的优缺点
共轭梯度法拟牛顿方法为了要提出这些方法为了解决什么问题
梯度方法的缺点收敛速度慢
拟牛顿方法收敛速度快
收敛速度的本质原因是用于拟合的函数的精度是几阶
共轭方向法
共轭方向法 求极小值等价于求梯度为 0 的点等价于求线性代数方程组
要么用直接法要么用迭代法
在正交的坐标系里面找那么每一个未知数的值就可以独立求解
找完了之后就可以不用管了
共轭方向的概念给你几个方向怎么转化成共轭方向
知道每一步的共轭方向怎么来的
分两个一个是线性问题的共轭方向一个是非线性问题的
对于线性问题的 β k − 1 g k T G d k − 1 d k − 1 T G d k − 1 g k T ( g k − g k − 1 ) d k − 1 T ( g k − g k − 1 ) g k T g k d k − 1 T g k − 1 g k T g k g k − 1 T g k − 1 \beta_{k-1} \dfrac{g^{T}_{k}Gd_{k-1}}{d^T_{k-1}Gd_{k-1}} \dfrac{g^{T}_{k}(g_k -g_{k-1})}{d^T_{k-1}(g_k -g_{k-1})} \dfrac{g^{T}_{k}g_k}{d^{T}_{k-1}g_{k-1}} \dfrac{g^{T}_{k}g_k}{g^{T}_{k-1}g_{k-1}} βk−1dk−1TGdk−1gkTGdk−1dk−1T(gk−gk−1)gkT(gk−gk−1)dk−1Tgk−1gkTgkgk−1Tgk−1gkTgk
对于非线性问题上面的式子就不是等价的了
所以会有多个等式用其中任意一种就是一个算法
二次终止性
当使用精确线搜索方法时对于正定二次目标函数极小值问题共轭方向法在有限步内可以求得极小值这称为二次终止性
一般的方法没有这个性质
拟牛顿法
每一步保证正定性所以每一步保证有解
提出的思想是什么
方程是什么
条件是什么
矩阵 B 拟合的是什么矩阵
对称秩一校正公式是怎么得到的
BFGS, DFP 怎么推导得到的
BFGS, DFP 每一步校正的时候怎么保证 Bk 对称正定
拟牛顿法的收敛速度有没有二次终止性
有
有约束的优化问题
几个最优性条件的表示
最优性条件的几何含义
给你一个目标函数的等值线的图给一个约束函数的区域判断哪些点是满足必要条件哪些点是满足充要条件
约束问题的可行方向法
处理约束的两大类方法
可行方向下降可行方向
目标函数和约束函数的图判断哪些是可行点
可行方向法的基本框架
循环的每一步先找下降可行方向然后沿着这个方向搜索但是搜索有一个范围
可行方向法的梯度投影法的基本思想
给你一个方向计算他的梯度投影方向
Wolfe 简约梯度法没讲
约束问题的罚函数方法
罚函数的基本思想
算法框架基本过程
给你一个简单的目标函数和约束写出它的增广目标函数手动算一下它的极值点
外罚函数和内罚函数都是要掌握这些
写出乘子法的增广目标函数算极值点
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89103.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!