原始-对偶算法
- 格式:pdf
- 大小:134.69 KB
- 文档页数:4
含参数的最短路问题及其原始—对偶算法
一、含参数的最短路问题
含参数的最短路问题(Parametrized Shortest Path Problem, PSP)是最短路径问题(Shortest Path Problem, SPP)的扩展,是的待求解的网络拓扑结构依赖于一组实参构成的参数,它主要用在那些路径选择依赖于实参因素的场合。
与传统SPP相比,在含参数SPP中任务不在于仅求出只依赖于路径上边/弧权值的最短路径,而是求出优化另外一组实数参数的最优路径,这给出的解决方案不再是路径,而是一组相关的参数值,通常这组参数值都是路径上一个或多个节点的权值值。
二、原始——对偶算法
含参数SPP的计算机解决方案一般有两种:原始——对偶算法和隐式唯一性解法。
原—对偶算法是一种割点问题求解方法,由原始算法和对偶算法组成。
原始算法通过改变权值算出最优路径及其关联参数;而对偶算法则采用贪心算法来进行搜索最优路径,当采用原始-对
偶算法解决SPP时,先利用原始算法找出最优的路径及参数,然后再用对偶算法进行简化和精确,以此来减少搜索范围,加快收敛速度。
原始算法首先先利用贪心算法找出满足要求的路径,确定出路径上所有节点的参数值。
然后利用搜索策略对得到的路径进行优化,其方法有:一是贪心优化,二是贪心轮换,三是贪心随机优化,等等。
贪心优化主要是按贪婪算法边/弧及其所有变量依次改变其参数值,找出更优的路径;贪心轮换的思路主要是尝试若干次通过不同参数设置对路径上某些节点变换使得路径达到最佳状态;而贪心随机优化则是改变每个变量以优化整个路径。
摘要本文研究的是线性规划的可行点算法,一个由线性规划的内点算法衍生而来的算法.线性规划的内点算法是一个在线性规划的可行域内部迭代前进的算法.有各种各样的内点算法,但所有的内点算法都有一个共同点,就是在解的迭代改进过程中,要保持所有迭代点在可行域的内部,不能到达边界.当内点算法中的迭代点到达边界时,现行解至少有一个分量取零值.根据线性规划的灵敏度分析理论,对线性规划问题的现行解的某些分量做轻微的扰动不会改变线性规划问题的最优解.故我们可以用一个很小的正数赋值于现行锯中等于零的分量,继续计算,就可以解出线陛规划问题的最优解.这种对内点算法的迭代点到达边界情况的处理就得到了线性规划的可行点算法.它是一个在可行域的内部迭代前进求得线性规划的最优解的算法.在此算法中,只要迭代点保持为可行点.本文具体以仿射尺度算法和原始一对偶内点算法为研究对象,考虑这两种算法中迭代点到达边界的情况,得到相对应的’仿射尺度可行点算法’和’原始.对偶可行点算法,.在用理论证明线性规划的可行点算法的可行性的同时,我们还用数值实验验正了可行点算法在实际计算中的可行性和计算效果.关键词:线性规划,仿射尺度算法,原始一对偶内点算法,内点,可行点算法,步长可行点.AbstractderivedThisDaperfocusesonafeasiblepointalgorithmforlinearprogramming,analgorithmfromtheinteriorpointalgorithmsforlineza"programming.TheinteriorpointalgorithmsfindtheoptimalsolutionofthelinearprogrammingbysearchingwithinthefeasmleTe譬ionofthelinearprogramming.ThereareaUkindsofinteriorpointalgorithlrmalltheforlinearprogramnfing.Butalltheseinteriorpointalgorithmsshareaspeciality,whichissolution|terativeDointscannotreachtheboundsAccordingtothesensitivitytheory,theoptimalofthelinearprogrammingwillnotbechangedbylittledisturbancesofthepresentsolution·SoWeletthe{xjIzJ=o,J=1,2,-··)n)equalaverysmallpositivenunlber,goonwiththecomputatio“一andthenwegettheoptimalsolutionofthelinearprogramming.Alltheseleadtothedevelopment。
内点法介绍(Interior Point Method)在面对无约束的优化命题时,我们可以采用牛顿法等方法来求解。
而面对有约束的命题时,我们往往需要更高级的算法。
单纯形法(Simplex Method)可以用来求解带约束的线性规划命题(LP),与之类似的有效集法(Active Set Method)可以用来求解带约束的二次规划(QP),而内点法(Interior Point Method)则是另一种用于求解带约束的优化命题的方法。
而且无论是面对LP还是QP,内点法都显示出了相当的极好的性能,例如多项式的算法复杂度。
本文主要介绍两种内点法,障碍函数法(Barrier Method)和原始对偶法(Primal-Dual Method)。
其中障碍函数法的内容主要来源于Stephen Boyd与Lieven Vandenberghe的Convex Optimization一书,原始对偶法的内容主要来源于Jorge Nocedal和Stephen J. Wright的Numerical Optimization一书(第二版)。
为了便于与原书对照理解,后面的命题与公式分别采用了对应书中的记法,并且两者方法针对的是不同的命题。
两种方法中的同一变量可能在不同的方法中有不同的意义,如μ。
在介绍玩两种方法后会有一些比较。
障碍函数法Barrier MethodCentral Path举例原始对偶内点法Primal Dual Interior Point Method Central Path举例几个问题障碍函数法(Barrier Method)对于障碍函数法,我们考虑一个一般性的优化命题:minsubject tof0(x)fi(x)≤0,i=1,...,mAx=b(1) 这里f0,...,fm:Rn→R 是二阶可导的凸函数。
同时我也要求命题是有解的,即最优解x 存在,且其对应的目标函数为p。
此外,我们还假设原命题是可行的(feasible)。
18.433 组合最优化
原始-对偶算法
October 28 授课教师:Santosh Vempala 在这一讲中,我们介绍互补松弛性条件并利用它们得到求解线性规划的原始-对偶方法。
1 互补松弛性
由前面的强对偶定理我们已经知道,下面两个线性规划都有可行解时其最优值是相等的,即
利用上面的结论,我们可以验证原始和/或其对偶问提解的最优性。
定理1. 设和分别是(P)和(D)的可行解,那么和是最优解当且仅当下面的条件成立:
证明:首先,由于和是可行解,故且
对下标和做加和,可得
把上面两式相加并利用强对偶定理,可得,
因此,不等式(1)和(2)一定为等式。
故结论得证。
□2 原始-对偶算法
定理1主要蕴含的结论是:如果和是可行解且满足互补松弛性条件,则他们是最优解。
这个结论产生了原始-对偶算法和出发,使之越来越满足互补松弛性
条件。
方便起见,我们考虑如下原始和对偶规划:
在这种形式下,互补松弛性条件可简化为:
原始-对偶算法步骤如下:
1、从(D)的一个可行解开始。
在多数情况下得到这样的一个可行解要比求解线性
规划简单得多。
令
现在我们需要利用(3)得到(P)的一个可行解满足问题是有没有
一个满足这种性质的可行解。
2、写出限定原始规划(RP)如下:
事实上,(RP)的可行解即满足上述提到的性质(3)。
这里,变量为人工变量。
如果为0,那么即为(P)的最优解。
3、如果,那么和是最优的。
否则,这时我们写
出(RP)的对偶形式,称为(DRP),并求其解
4、令来改进(D)的解,其中的取值需满足是可行的,而且
由可行性可知,对有
又因为任意均有
所以当时可取任意正数。
故取
则满足且是可行的。
又因为且,
注意,在上面的原始-对偶算法中,求解(DRP)通常要比求解(P)或(D)简单。
实际上,在这种方法中,(P)和(RP)都是临时规划,我们真正想解的是(D)。
为此,我们先解出(DRP)再用这个解来反复改进。
2.1 实例
考虑下面形式的最大流问题:
值得一提的是,在初始的最大流问题中,前三组约束为等式。
但是我们将这三组不等式相加,得到0<=0,这些不等式的弱集蕴涵着等式。
我们把上述表示形式作为(D),取为零向量即
可得到它的一个可行解。
现在我们直接给出(DRP):
可以看出(DRP)有如下释义。
寻找一条从到的路(流值为1)且路上只能经过下列弧:饱和的后向弧,零流的前向弧和任意方向的其它弧。
换句话说,我们需要在剩余图中找一条路。
这种观察说明最大流算法实际上是一个原始-对偶算法。
最后,需要注意,原始-对偶算法不一定具有多项式执行时间。