您的位置:首页 > 其它

最优化复习要点

2016-12-18 21:01 225 查看

最优化复习要点

1. 线性规划

a. 标准形式

i. 必要时需要引入松弛变量

min z=cTxs.t. Ax=b x⩾0

ii. 退化

B−1b>0 基变量的取值全为正(右边系数全正)

b. 单纯形法

i. 典式

ii. 单纯形表

初始基可行解

​ 初始单纯形表:

约束条件和右边 不变

目标函数系数取反 −c

非基变量入基(选取最合适的xk)

​ 遵循两个原则:最大、最小

最大:即单纯形表最后一行,maxzj−cj

最小:最大对应的列,minb¯yik (必须是正数!!!)

初等行变换

iii. 大M法

2个重点

添加松弛变量后再引入人工变量

单纯形表最后一行: cBB−1pj−cj

式中 cB 为初始基变量对应系数,一般含M

注意 :最后一个数不是0!!!

c. 对偶原理

要先化成GLP一般形式

原问题min对偶问题max
目标函数系数右端系数
右端系数目标函数系数
约束矩阵系数矩阵转置
第i个约束为⩾ 型第i个变量⩾0
第i个约束为=型第i个变量无约束
第j个变量⩾0第j个约束为⩽型
第j个变量无约束第j个约束为=型
* 互补松弛性质

(A21x¯1+A22x¯2−b2)iw¯2i=0,∀i,x¯1j(c1−AT11w¯1−AT21w¯2)j=0,∀j

利用互补松弛条件验证是否是最优解:

假设是最优解,利用性质获得DGLP满足互补条件的解并验证是否可行,若可行,则为最优解

2. 无约束问题

a. 最优性条件

一阶导(梯度)∇f(xk)=0 ;

二阶导(Hessian)∇2f(x(k)) 正定。

b. 下降算法

i. 最速下降法

ii. 牛顿法

(二级收敛、二次终止性)

已知迭代点x(k)

求初始梯度、Hessian矩阵,并求∇2f(x(k))−1

计算x(k+1)=x(k)−∇2f(x(k))−1⋅∇f(x(k))

iii. 阻尼Newton法

iv. 共轭梯度法

v. 拟Newton法(变尺度法/秩 2 矫正/DFP算法)

拟牛顿条件

p(k)=Hk+1q(k)

式中:

p(k)=x(k+1)−x(k) , q(k)=∇f(x(k+1)−∇f(x(k)))

Hk+1≈∇2f(x(k))−1

DFP算法——秩 2 矫正

迭代初点x(k)

计算梯度gk=∇f(x(k)) ,置H1=In (单位矩阵)

选取可行下降方向 d(k)=−Hkgk

求步长 λk

令 x(k+1)=x(k)+λkd(k)

最优步长:λk=−∇f(xk)TddkT∇2f(xk)dk (一般情况为二次函数,H=∇2f(x) 是固定的,只需要计算一次即可)

可接受步长:$$

检验重复

3. 约束非线性规划

a. 可行下降法

初始点xk

计算∇f(xk) ,分解起作用约束与非其作用约束

[A1A2]and[b1b2]

求解最优步长dk (判断?)

min∇f(xk)Tdks.t.A1dk⩾0−1⩽dj⩽1

计算d^=A2dk ,b^=b2−A2xk

λmax=min{b^id^i} or ∞ 如果f(x)是严格凸二次函数,最优步长λk=min{−zk(dk)THdk , λmax}

计算λk (带进f(xk+λkdk) 直接计算,一般都是二次函数)

迭代得xk+1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: