来源于 上交视频,https://www.bilibili.com/video/av14666879/
第一章,introduction
Formulation
f(x): Cost function
x: Decision varaible
X: Constraint set
if x belongs to X: Constraiened optimization
if x == X: Unconstraiened optimization
线性规划问题在最优化scope里,但是本课程不涉及,因为比较成熟。。。特性是,f(x)和X都是线性的
非线性的最优化,,f(x)或X存在非线性的,这里的线性非线性,我的理解都是对x而言,,这个也叫NLP---Nonlinear Programming
整数规划,离散的,x都是整数
Mixed Integer Programming (混合整数规划),变量涉及连续的也涉及离散的
Dynamic optimization( Optimal Control): 最优控制,变量联合了时间,真实物理系统,信号与系统?
Stochastic Optimization: 随机优化,变量涉及随机变量
Multi object optimizaiton: 多目标优化,存在f(x),g(x),t(x)等等cost fuction
Game theory 博弈论,多个人员参与,不知道其他人决策
本课程主要集中在非线性规划!!!涉及一些经典方法,不知道这个课程是哪一年录制的,感觉是零几年,有人回复04年,好在基础理论没有变化
第二章:最优化条件,optimality condition
convex set (凸集):集合里任意两个点连接的线段上的点,都在集合内,数学描述,ax1 + (1-a)x2 belong to S, 0<=a<=1
hyperplane(超平面):c * x = z, z是一个常数,c是一个非零向量,所获得的x的集合,组成一个超平面。
举例:2维情况下,x是一条直线,3维情况下,是一个2维平面,更多维情况下,是一个超平面。。。
(以前学线性代数的时候,似乎有类似的概念,不知道是不是叫这个了,c * x = z是超平面, A * x =v是不是呢??
超平面把空间分为两部分,c * x <=z; c * x >= z
支撑面:对于convex set S, 如果S的一个边界点w,经过某一个超平面L,同时S上所有的点都在L的同一侧,认为这是S在w的一个支撑面。(其实就是切线,高维情况下切线不唯一
convex function (凸函数): f(ax1 + (1-a)x2) <= af(x1) + (1-a)f(x2), 定义域在一个凸集上。
这个凸函数的概念,还不是很好记,凸是向下凸的,我老是直觉认为向上凸。而且没有线性组合的sense, 老师有一句中文的,点的线性组合函数值小于函数值的线性组合。
梯度:符号不好打,先截图吧。二维梯度矩阵的名字,海森阵。
正定矩阵:xTVx > 0 对所有非零x向量成立,V就是正定的
函数变化速率 = 梯度 * 变化方向 = (方向导数的模,应该是吧
第三章:
二分法:针对单峰函数
等分法:类似
斐波那契搜索:类似
黄金分割搜索:类似
p8
二次插值法:把一个函数段模拟成二次函数,用公式求其最小值所在的点。精度低,速度快
牛顿法:类似于方程求根。最优解的时候,导数为0,严格凸函数会严格收敛,计算量大!
当cost函数是二次函数,海森阵变成常数,特别容易计算,所以现实中会把非线性转为二次再用这个方法
第四章,无约束梯度算法(只能找到局部最优解
梯度下降法:
有限步内不确保能找到最优解,因为最后步长会越来越小,但是直观上理解已经收敛了?
梯度下降法步值k的选取
最优梯度下降,在确定梯度也就是函数下降方向后,将步长k作为自变量,求解范围内使f最小的k,也就是f极小值时的k,
收敛率线性。这一步的差距和上一步差距,是一个常数倍数的比例
p9习题课
p10
第五章:二次收敛算法
共轭梯度法
二次函数的标准表示f(x) = c + bT + 0.5 * xTAx,,,,这里A是一个对称矩阵
梯度: Ax + b, 当A正定,x有唯一解
共轭:当(u, Av)正交,称u,v关于A共轭,正交是共轭的一种特例,A是一个对称正定阵
在n步之内找到最优解,n就是x的维数,(对二次函数而言)
p11
计算机上实现,因为数值误差,所以会导致有时候不能收敛。。。。
介绍了三种获取共轭向量的算法,,,Fletcher, powell, 变尺度算法,还有三者联合
我们每一次都按照一个共轭的方向前进
p12
第六章:有约束,及拉格朗日算法
约束的等式个数一般小于变量的个数,要不然直接转化为一个解方程问题。。
把等式加到f(x)后面,求新函数的无约束最优解
有的情况下,原函数f(x)有最优解,但是新函数L(x)没有最优解
不等式约束
分情况讨论,,
p13
第七章:不等式约束,Kuhn-Tucker定理
p15
第八章:有约束的梯度算法
基本思想:走到了约束边界的时候,就改变方向,不出边界,
p17(最后一天上课)
第六第七章的方法,偏重理论分析,在实际应用中不太有,都用第八第九章的东西
可行方向法,搜索方向尽量贴近约束边界
p18
第九章:惩罚函数方法
对啊,和拉格朗日法很像
对于不等式,,构造出的函数不可求导
内点法,外点法。