线性规划(LP)基本概念和搜索算法

标引

可以用一个符号描述一系列类似的数量值

线性方程

一个方程,如果他是关于决策变量的常熟加权求和形式,则该方程式线性方程(liner),佛则该方程为非线性方程(non-linear)

线性规划

目标函数f以及约束方程g_1,...,g_m中均为关于决策变量的线性方程,则该优化模型为线性规划(linear program, LP),其中目标函数可以为满足约束的任意整数或者分数

目标函数f以及约束方程g_1,...,g_m中存在关于决策变量的线性方程,则该优化模型为非线性规划(nonlinear program, LP),其中目标函数可以为满足约束的任意整数或者分数

整数规划和混合整数规划

一个优化模型,如果他的决策变量中存在离散变量,则该优化模型位整数规划(integer program, IP),如果整数规划的所有决策变量均为离散变量,则该整数规划为纯整数规划(pure integer program);否则为混合整数规划(mixed integer program)


搜索算法

搜索算法(improving search)通过检查邻域来寻找比当前更好地解,若有改进则替换当前解,继续迭代,直到邻域中没有更好的解为止。搜索算法又称为局部改进(local improvement)爬山算法(hillclimbing)局部搜索(local search)邻域搜索(neighborhood search)

倘若一组可行解周围足够小的的邻域内没有优于该解的可行点,则称为局部最优解(local optimum),最小化(最大化)问题存在局部最小(最大)解

如果在全局范围内不存在目标值优于某可行解的其他可行点,则称为全局最优解(global optimum),最小化(最大化)问题存在全局最小(最大)解

搜索算法沿x^{(t+1)}\leftarrow x^{(t)}+\lambda \Delta x由当前点x^{(t)}向下一个搜索点x^{(t+1)}移动,其中\Delta x是当前点x^{(t)}处的搜索方向(move direction)\lambda是沿该方向前进的步长\lambda >0

对于所有足够小的\lambda都有x^{(t)}+\lambda \Delta x >x^{(t)},则称\Delta x是当前解的一个改进方向(improving direction),如果满足所有约束条件,则为可行改进方向

梯度

如果优化模型的目标函数f是光滑的(所有决策变量都是可微的),那么,当f是一个n维向量的函数,当它有一个一阶片倒数,这些导数组成的n维向量称为梯度

导数(derivative),描述函数随参数的变化率,可以看做斜率。偏导数(partial derivative),是保持其他变量恒定时,关于其中一个变量的导数

改进方向的梯度条件

对于最大化目标函数f,若\nabla f .\Delta x>0,搜索方向\Delta xx处的可改进方向,若\nabla f .\Delta x<0,搜索方向\Delta x不是x处的可改进方向。

对于最小化目标函数f,若\nabla f .\Delta x<0,搜索方向\Delta xx处的可改进方向,若\nabla f .\Delta x>0,搜索方向\Delta x不是x处的可改进方向。

将目标函数梯度作为搜索方向

当目标函数梯度\nabla f \not=0,\Delta x=\nabla f(x) ,是最大化目标f的一个改进方向,\Delta x= -\nabla f(x)是最小化目标函数f的一个改进方向

凸集

如果可行域内任意两点的连线都在可行域内,则称该可行域为凸集

离散的可行集总是非凸集

若优化模型的可行集是凸集,那么对任意可行解始终存在指向另一个解的可行方向,意味着,只要存在最优解,可能性不会阻碍局部最优解发展为全局最优解。

线性约束可行集的凸性

线性约束的可行集又称为多面体集。

如果优化模型的所有约束都是线性的,那么该模型的可行域是凸集

寻找初始解

两阶段法

大M法

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容