二阶锥规划算法
二阶锥规划的定义
二阶锥规划问题的形式为
受限于
f,x,b,说真的,磅,乌兰巴托是向量,并且一个而且Aeq矩阵。为每一个我,矩阵一个sc(我),则向量bsc(我),dsc(我),标量γ(我)的二阶锥约束,您可以使用secondordercone
.
也就是说,该问题具有一个线性目标函数和线性约束,以及一组形式为二阶锥的约束 .
coneprog
算法
的coneprog
求解器使用在Andersen, Roos和terlaki中描述的算法[1].该方法是一种内点算法内点linprog算法.
标准形式
算法首先把问题放在标准形式.算法添加非负松弛变量,使问题具有形式
受限于
求解器扩展了线性系数向量的大小f和线性约束矩阵一个考虑到松弛变量。
该地区K的叉乘是洛伦兹锥方程1和非负正交向量。对每个凸锥进行转换
变成洛伦兹锥方程1,创建变量列向量t1,t2、……tn+1:
这里是变量的数量n对于每个锥体我行数是多少一个sc(我).根据它的定义,变量向量t满足不等式
(1) |
方程1是洛伦兹锥的定义。n+ 1)变量。的变量t出现在问题中的变量x在凸区域K.
在内部,该算法还使用旋转洛伦兹锥在锥约束的重新表述中,但本主题不涉及这种情况。详情请参见Andersen, Roos, and terlaki[1].
在添加松弛变量时,算法会根据需要对变量进行否定,并添加适当的常数,以便:
只有一个上界的变量的下界为0。
有两个边界的变量的下界为零,而使用松弛变量则没有上界。
将无边界变量置于洛伦兹锥中,并以松弛变量作为约束变量。这个松弛变量不是任何其他表达式、目标或约束的一部分。
对偶问题
双锥是
对偶问题是
这样
对于一些
对偶最优解是一个点(y,年代),以满足双重约束并使双重目标最大化。
齐次自对偶公式
为了处理潜在的不可行的或无界的问题,该算法增加了两个变量τ而且κ并将问题表述为齐次(等于零)和自对偶。
(2) |
除了约束条件
(3) |
在这里, 是锥体K与非负实线相邻,实线是(x;τ).类似的 是锥体 与非负实线相邻,实线是(年代;κ).在这个公式中,下面的引理表明τ是可行的解决方案,和金宝搏官方网站κ是一个不可行问题的指标。
引理([1]引理2.1)
让(x,τ,y,年代,κ的可行解决方案方程2加上约束条件方程3.
xT年代+τκ= 0。
如果τ> 0,然后(x,y,年代) /τ是标准形式二阶锥问题的原对偶最优解。
如果κ> 0,那么至少有一个严格不等式成立:
bTy> 0
fTx< 0。
如果第一个不等式成立,则标准形式的原始二阶锥问题是不可行的。如果二阶不等式成立,则标准形式的对偶二阶锥问题是不可行的。
综上所述,对于可行问题,变量τ在原标准形式问题和齐次自对偶问题之间缩放解。对于不可行的问题,最终迭代(x,y,年代,τ,κ)提供原始标准表格问题不可行的证明。
起点
迭代的起始点是可行点:
x每个非负变量= 1,每个洛伦兹锥中的第一个变量为1,否则为0。
y= 0。
年代每个圆锥=(1,0,…,0),每个非负变量为1。
τ= 1。
κ= 1。
中央路径
算法尝试遵循中央路径,为下式的参数化解γ从1递减到0。
(4) |
每个下标为0的变量表示变量的起始点。
的变量X而且年代是箭头矩阵由x而且年代向量,分别。对于一个向量x= (x1,x2、……xn],箭头头矩阵X有定义
根据它的定义,X是对称的。
的变量e每个圆锥坐标中都有1的向量是否对应于x1洛伦兹锥坐标。
的变量μ0有定义
在哪里k非零元素的个数是多少x0.
中心路径开始于起点,结束于齐次自对偶问题的最优解。
安德森,鲁斯和特拉基[1]在引理3.1中,有互补条件xT年代= 0,其中x而且年代是洛伦兹锥的产物l,等于条件
对于每一个锥体我.在这里X我=垫(x我),x我变量与洛伦兹锥有关吗我,年代我=垫(年代我),e我是适当维数的单位向量[1,0,0,…,0]。讨论表明,中心路径在其端点处满足互补条件。
搜索方向
以中心路径附近的点为参数γ从1递减到0时,算法采用牛顿法。要查找的变量被标记为(x,τ,y,年代,κ).让dx的搜索方向x变量,等等。然后牛顿阶解下面的线性方程组,由方程4.
算法通过步进得到下一个点d方向。
对于某些步骤 .
为了数值稳定性和加速收敛,算法根据Nesterov和Todd的建议缩放步长[8].此外,该算法根据Mehrotra的预测-校正器的变体来纠正步骤[7].(欲了解更多细节,请参阅Andersen, Roos和terlaki[1].)
步骤求解变量
前面的讨论涉及LinearSolver
选项的值“增强”
指定。求解器具有其他值,这些值改变步长计算以适应不同类型的问题。
迭代显示和停止条件
在每次迭代中k时,算法计算三个相对收敛测度:
原始的不可行性
双不可行性
差距不可能实行
您可以通过指定迭代显示在命令行上查看这三个统计信息。
选项= optimoptions(“coneprog”,“显示”,“通路”);
当问题可行且求解器收敛时,这三者都应该趋近于零。对于一个可行的问题,变量κk趋于0,变量τk趋于正常数。
其中一个停止条件与间隙不可行性有一定关系。停止条件是当下列最优性度量降低到最优性容差以下时。
这个统计量衡量的是客观值的精度。
在下列条件下,解算器也会停止并宣布问题是不可行的。这三个相对不可行的措施都不足c=ConstraintTolerance
,
如果bTyk> 0,则解算者宣布原始问题是不可行的。如果fTxk< 0,则求解者声明对偶问题是不可行的。
算法也会在什么时候停止
而且
在这种情况下,coneprog
报告问题在数值上不稳定(退出标志-10
).
当至少有一个不可行措施大于时,则发生剩余停止条件ConstraintTolerance
并且计算的步长太小。在这种情况下,coneprog
报告称,搜索方向太小,无法取得进一步进展(退出标志7
).
参考文献
[1]安德森,E. D.鲁斯,T.特拉基。关于二次型优化的原对偶内点方法的实现。数学。程序。,爵士。B95, pp. 249-277(2003)。https://doi.org/10.1007/s10107-002-0349-3
[2]安徒生k.d.线性规划内点方法中处理密集列的一种改进schur-补法。计算机科学进展,2006,22(3):348-356。
[3] Ben-Tal, Aharon和Arkadi Nemirovski。工程中的凸优化:建模,分析,算法。(1998)。
[4]戈德法布D. K.谢恩伯格。线性规划内点方法中处理密集列的积型cholesky分解方法。系统工程理论与实践,2004,(1):1 - 34。
[5]戈德法布D. K.谢恩伯格。二阶锥规划内点方法中的积型cholesky分解。系统工程理论与实践,2005,29(1):1 - 5。
[6]罗志全,Jos F. Sturm,张树忠。圆锥凸规划的对偶性和自对偶性。(1996)。
[7] Mehrotra, Sanjay。关于原对偶内点方法的实现SIAM优化期刊,没有。4(1992年11月):575-601。https://doi.org/10.1137/0802028.
[8] Nesterov, Yu。E.和M. J.托德。凸规划的自尺度障碍和内点方法运筹学数学22,没有。1(1997年2月):1 - 42。https://doi.org/10.1287/moor.22.1.1.