线性规划的问题是找到一个向量据E.mCL.一种S.S.="varname">X据/em>这最小化了线性函数据E.mCL.一种S.S.="varname">F据S.你P.>T.。据/sup>X据/em>受线性约束:据/p>
下面的一个或多个保持:据/p>
·x据/em>≤据E.mCL.一种S.S.="varname">B.据/em>
Aeq·x据/em>=据E.mCL.一种S.S.="varname">贝卡据/em>
L.据/em>≤据E.mCL.一种S.S.="varname">X据/em>≤据E.mCL.一种S.S.="varname">你据/em>.据/p>
这据CO.D.E.CL.一种S.S.="function">linprog据/code> 预定,意味着对标准表单的问题简化和转换。据/p> 生成初始点。初始点的选择对于有效解决内部点算法尤为重要,并且该步骤可能是耗时的。据/p> 预测校正器迭代以解决KKT方程。这一步骤通常是最耗时的。据/p> 该算法首先试图通过去除冗余和简化约束来简化问题。在预解步骤中执行的任务包括:据/p>
检查是否有任何变量具有相同的上限和下限。如果是这样,请检查可行性,然后修复并删除变量。据/p> 检查线性不等式约束是否只包含一个变量。如果是,检查可行性,然后将线性约束改为一个界。据/p> 检查是否任何线性等式约束只涉及一个变量。如果是,检查可行性,然后修复并删除变量。据/p> 检查任何线性约束矩阵是否有零行。如果是,检查是否可行,然后删除行。据/p> 确定边界和线性约束是否一致。据/p> 检查是否存在任何变量仅在目标函数中显示为线性术语,并且不会出现在任何线性约束中。如果是,请检查可行性和界限,然后在适当的范围内修复变量。据/p> 通过添加松弛变量,将线性不等式约束变为线性等式约束。据/p> 如果算法检测到一个不可行的或无界的问题,它会停止并发出适当的退出消息。据/p>
算法可能会到达一个代表解的可行点。据/p>
如果算法在解算步骤中没有检测到不可行或无界问题,并且解算过程没有产生解,则算法继续其下一步。在达到停止准则后,该算法重建原始问题,撤消任何解前转换。最后一步是postsolve步骤。据/p>
为简单起见,如果在预定步骤中未解决问题,则该算法将所有有限的下限移为零。据/p>
为了设置初始点,据CO.D.E.CL.一种S.S.="literal">x0据/code>,算法执行如下操作。据/p>
初始化据CO.D.E.CL.一种S.S.="literal">x0据/code>来据CO.D.E.CL.一种S.S.="literal">那些(n,1)据/code>,在那里据CO.D.E.CL.一种S.S.="literal">N.据/code>目标函数的元素数是向量吗据E.mCL.一种S.S.="varname">F据/em>.据/p> 将所有有界组件的下界转换为0。如果组件据CO.D.E.CL.一种S.S.="literal">一世据/code>有一个有限的上界据CO.D.E.CL.一种S.S.="literal">u(我)据/code>, 然后据CO.D.E.CL.一种S.S.="literal">x0 (i) = u / 2据/code>.据/p> 对于只有一个边界的组件,在必要时修改组件,使其严格位于边界内。据/p> 把据CO.D.E.CL.一种S.S.="literal">x0据/code>靠近中央路径,采取一个预测校正器步骤,然后修改所产生的位置并松弛变量在任何范围内都很好。有关中心路径的详细信息,请参阅Nocedal和Wright据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[7]据/a>, 397页。据/p> 该算法首先根据牛顿-拉夫森公式预测步长,然后计算出校正步长。校正器试图减少非线性互补方程中的残差据S.P.一种N.CL.一种S.S.="inlineequation">S.据S.你B.>一世据/sub>Z.据S.你B.>一世据/sub>= 0据/span>.牛顿-拉夫森阶跃是据/p>
在哪里据E.mCL.一种S.S.="varname">X据/em>那据E.mCL.一种S.S.="varname">V.据/em>那据E.mCL.一种S.S.="varname">W.据/em>,据E.mCL.一种S.S.="varname">T.据/em>对角矩阵对应于这些向量吗据E.mCL.一种S.S.="varname">X据/em>那据E.mCL.一种S.S.="varname">V.据/em>那据E.mCL.一种S.S.="varname">W.据/em>,据E.mCL.一种S.S.="varname">T.据/em>分别。方程最右边的剩余向量为:据/p>
R.据S.你B.>D.。据/sub>,对偶残差据/p> R.据S.你B.>P.。据/sub>,原始残余据/p> R.据S.你B.>乌兰巴托据/sub>,上界残差据/p> R.据S.你B.>V.X据/sub>,下界互补残差据/p> R.据S.你B.>W.T.据/sub>,上限互补残差据/p> 迭代显示报告这些数量:据/p>
解决据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程1据/a>,首先将其转换为对称矩阵形式据/p>
在哪里据/p>
定义中的所有矩阵逆据E.mCL.一种S.S.="varname">D.据/em>和据E.mCL.一种S.S.="varname">R.据/em>易于计算,因为矩阵是对角线。据/p>
获得据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程2据/a>从据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程1据/a>,请注意第二行据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程2据/a>和矩阵的第二行相同吗据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程1据/a>.第一行据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程2据/a>来自于最后两行据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程1据/a>对于δ.据E.mCL.一种S.S.="varname">V.据/em>和Δ据E.mCL.一种S.S.="varname">W.据/em>,然后求解δ据E.mCL.一种S.S.="varname">T.据/em>.据/p>
通常,求牛顿步的最有效方法是解据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程3据/a>对于δ.据E.mCL.一种S.S.="varname">y据/em>使用Cholesky分解。由于矩阵乘以Δ,因此可能是可能的粗心分解据E.mCL.一种S.S.="varname">y据/em>是明显对称的,并且在没有简并的情况下是正定的。之后,求牛顿步,回代求Δ据E.mCL.一种S.S.="varname">X据/em>,δ据E.mCL.一种S.S.="varname">T.据/em>,δ据E.mCL.一种S.S.="varname">V.据/em>,Δ据E.mCL.一种S.S.="varname">W.据/em>.然而,当据S.P.一种N.CL.一种S.S.="inlineequation">
有一个密集的柱,可以更有效地解决据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程2据/a>代替。这据CO.D.E.CL.一种S.S.="function">linprog据/code>内点算法根据列的密度选择求解算法。据/p>
要了解更多算法细节,请参见Mehrotra据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[6]据/a>.据/p>
在计算纠正的牛顿步骤之后,算法执行更多的计算以获得更长的电流步骤,并准备更好的后续步骤。这些多校正计算可以提高性能和鲁棒性。有关详细信息,请参阅Gondzio据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[4]据/a>.据/p>
预测-校正算法与完整的基本相同据CO.D.E.CL.一种S.S.="function">quadprog据/code> 预测-校正算法迭代,直到它到达一个可行的点(满足约束到公差范围内),并且相对步长较小。具体来说,定义据/p>
当这些条件都满足时,算法停止:据/p>
在哪里据/p>
R.据S.你B.>C据/sub>本质上度量了互补残差的大小据E.mCL.一种S.S.="varname">十五据/em>和据E.mCL.一种S.S.="varname">太瓦据/em>,它们都是解处的0向量。据/p>
“内点”据/code>算法非常相似据一种href="//www.tatmou.com/nl/help/optim/ug/quadratic-programming-algorithms.html" class="a">interior-point-convex quadprog算法据/a>.它也有许多共同的特点据CO.D.E.CL.一种S.S.="function">linprog据/code>
“interior-point-legacy”据/code>算法。这些算法有相同的大纲:据/p>
普雷定向据/h4>
生成初始点据/h4>
预估据/h4>
(1)据/strong>
(2)据/strong>
(3)据/strong>
“interior-point-convex”据/code>版本,除了二次项。看到据一种href="//www.tatmou.com/nl/help/optim/ug/quadratic-programming-algorithms.html" class="a">完整的预估据/a>.据/p>
停止条件据/h4>
内点遗留方法是基于据一种CL.一种S.S.="indexterm" name="d123e33143">LIPSOL (据一种href="//www.tatmou.com/nl/help/optim/ug/selected-bibliography.html" class="a">[52]据/a>,是。的变体据一种CL.一种S.S.="indexterm" name="d123e33148">梅赫罗特拉预测校正算法(据一种href="//www.tatmou.com/nl/help/optim/ug/selected-bibliography.html" class="a">[47]据/a>), 一种据一种CL.一种S.S.="indexterm" name="d123e33153">原始 - 双重内部点法。据/p>
算法首先应用一系列据一种CL.一种S.S.="indexterm" name="d123e33162">预处理步骤(见据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">预处理据/a>)。在预处理后,问题具有表单据/p>
(4)据/strong> |
上限约束隐式包括在约束矩阵中据E.mCL.一种S.S.="varname">一种据/em>.加上原始松弛变量据E.mCL.一种S.S.="varname">S.据/em>那据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程4据/a>就变成了据/p>
(5)据/strong> |
它被称为据S.P.一种N.CL.一种S.S.="emphasis">原始据/em>问题:据E.mCL.一种S.S.="varname">X据/em>由原始变量和组成据E.mCL.一种S.S.="varname">S.据/em>由原始松弛变量组成。这据S.P.一种N.CL.一种S.S.="emphasis">双重的据/em>问题是据/p>
在哪里据E.mCL.一种S.S.="varname">y据/em>和据E.mCL.一种S.S.="varname">W.据/em>由二元变量和组成据E.mCL.一种S.S.="varname">Z.据/em>由双休闲裤组成。这据一种CL.一种S.S.="indexterm" name="d123e33210">这个线性规划的最优性条件,即原始据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程5据/a>和双据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程6据/a>,都是据/p>
在哪里据E.mCL.一种S.S.="varname">X据S.你B.>一世据/sub>Z.据S.你B.>一世据/sub>
(6)据/strong>
(7)据/strong>
这据CO.D.E.CL.一种S.S.="function">linprog据/code>算法对返回的拉格朗日乘数使用了与本讨论给出的不同的符号约定。这个讨论使用了和大多数文学作品一样的符号。看到据一种href="//www.tatmou.com/nl/help/optim/ug/linprog.html"> 二次方程据S.P.一种N.CL.一种S.S.="inlineequation">X据S.你B.>一世据/sub>Z.据S.你B.>一世据/sub>= 0据/span>和据S.P.一种N.CL.一种S.S.="inlineequation">S.据S.你B.>一世据/sub>W.据S.你B.>一世据/sub>= 0据/span>被称为“据S.P.一种N.CL.一种S.S.="emphasis">互补据/em>线性规划的条件;其他(线性)方程称为据一种CL.一种S.S.="indexterm" name="d123e33269">可行性据/em>条件。的数量据/p>
X据S.你P.>T.。据/sup>Z.据/em>+据E.mCL.一种S.S.="varname">S.据S.你P.>T.。据/sup>W.据/em> 是据S.P.一种N.CL.一种S.S.="emphasis">二元性的差距据/em>,测量互补部分的残余部分据E.mCL.一种S.S.="varname">F据/em>当据S.P.一种N.CL.一种S.S.="inlineequation">(据E.mCL.一种S.S.="varname">x, z,年代,w据/em>)≥0据/span>.据/p>
该算法是一个据S.P.一种N.CL.一种S.S.="emphasis">原始 - 双算法据/em>,即原始程序和对偶程序同时求解。它可以被认为是一种牛顿方法,应用于线性二次方程组据S.P.一种N.CL.一种S.S.="inlineequation">F据/em>(据E.mCL.一种S.S.="varname">x,y,z,s,w据/em>) = 0据/span>在据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程7据/a>,同时保持迭代据E.mCL.一种S.S.="varname">X据/em>那据E.mCL.一种S.S.="varname">Z.据/em>那据E.mCL.一种S.S.="varname">W.据/em>,据E.mCL.一种S.S.="varname">S.据/em>正的,因此命名内点方法。(迭代在严格的内部区域,由中的不等式约束表示据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程5据/a>.)据/p>
该算法是一个变体据一种CL.一种S.S.="indexterm" name="d123e33328">由Mehrotra提出的预测-校正算法。考虑一个迭代据S.P.一种N.CL.一种S.S.="inlineequation">V.据/em>= (据E.mCL.一种S.S.="varname">x, y, z,年代;w据/em>]据/span>,在那里据S.P.一种N.CL.一种S.S.="inlineequation">[据E.mCL.一种S.S.="varname">x; z; s; w据/em>) > 0据/span>首先计算所谓的据S.P.一种N.CL.一种S.S.="emphasis">预测据/em>方向据/p>
这是牛顿方向;然后所谓的据S.P.一种N.CL.一种S.S.="emphasis">校正器据/em>方向据/p>
在哪里据S.P.一种N.CL.一种S.S.="inlineequation">μ据/em>> 0据/span>被称为据S.P.一种N.CL.一种S.S.="emphasis">定心据/em>参数,必须仔细选择。据S.P.一种N.CL.一种S.S.="inlineequation">
0 - 1向量是否对应于二次方程据E.mCL.一种S.S.="varname">F据/em>(据E.mCL.一种S.S.="varname">V.据/em>),即摄动只应用于补足条件,它们都是二次的,而不应用于可行性条件,它们都是线性的。两个方向结合一个步长参数据S.P.一种N.CL.一种S.S.="inlineequation">α据/em>> 0据/span>和更新据E.mCL.一种S.S.="varname">V.据/em>获取新的迭代据E.mCL.一种S.S.="varname">V.据/em>+据/sup>:据/p>
步长参数在哪里据E.mCL.一种S.S.="varname">α据/em>是为了据/p>
V.据S.你P.>+据/sup>= (据E.mCL.一种S.S.="varname">X据S.你P.>+据/sup>y;据S.你P.>+据/sup>z;据S.你P.>+据/sup>,据S.你P.>+据/sup>w;据S.你P.>+据/sup>]据/p>
满足据/p>
[据E.mCL.一种S.S.="varname">X据S.你P.>+据/sup>z;据S.你P.>+据/sup>,据S.你P.>+据/sup>w;据S.你P.>+据/sup>) > 0。据/p>
在求解上述预测/校正方向时,该算法对的Cholesky因子进行修正,计算一个(稀疏)直接分解据S.P.一种N.CL.一种S.S.="inlineequation">一个?据S.你P.>T.。据/sup>.如果据E.mCL.一种S.S.="varname">一种据/em>有据一种CL.一种S.S.="indexterm" name="d123e33441">密集列,它使用据一种CL.一种S.S.="indexterm" name="d123e33444">Sherman-Morrison公式。如果该溶液不够充分(残留量太大),它就会对阶梯方程的增广系统形式进行LDL分解,以找到一个解。(见据一种href="//www.tatmou.com/nl/help/matlab/ref/ldl.html" class="a">例4 - D的结构据/a>在MATLAB据S.你P.>®据/sup> 然后,算法循环直到迭代收敛。主要停止标准是标准的标准:据/p>
在哪里据/p>
分别为原残差、对偶残差和上界可行性(据S.P.一种N.CL.一种S.S.="inlineequation">{据E.mCL.一种S.S.="varname">X据/em>}据/span>是指据E.mCL.一种S.S.="varname">X据/em>有有限的上界),以及据/p>
是原始和双目标值之间的区别,以及据S.P.一种N.CL.一种S.S.="emphasis">托尔据/em>是一些宽容。的总和据一种CL.一种S.S.="indexterm" name="d123e33485">停止标准测量在最优条件中的总相对误差据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程7据/a>.据/p>
原始不可行性的衡量是据S.P.一种N.CL.一种S.S.="inlineequation">||据E.mCL.一种S.S.="varname">R.据S.你B.>B.。据/sub>λ据/code>.据/p>
低密度脂蛋白据/code>函数引用页面。)据/p>
该算法首先试图通过去除冗余和简化约束来简化问题。在预解步骤中执行的任务包括:据/p>
检查是否有任何变量具有相同的上限和下限。如果是这样,请检查可行性,然后修复并删除变量。据/p>
检查线性不等式约束是否只包含一个变量。如果是,检查可行性,然后将线性约束改为一个界。据/p>
检查是否任何线性等式约束只涉及一个变量。如果是,检查可行性,然后修复并删除变量。据/p>
检查任何线性约束矩阵是否有零行。如果是,检查是否可行,然后删除行。据/p>
确定边界和线性约束是否一致。据/p>
检查是否存在任何变量仅在目标函数中显示为线性术语,并且不会出现在任何线性约束中。如果是,请检查可行性和界限,然后在适当的范围内修复变量。据/p>
通过添加松弛变量,将线性不等式约束变为线性等式约束。据/p>
如果算法检测到一个不可行的或无界的问题,它会停止并发出适当的退出消息。据/p>
算法可能会到达一个代表解的可行点。据/p>
如果算法在解算步骤中没有检测到不可行或无界问题,并且解算过程没有产生解,则算法继续其下一步。在达到停止准则后,该算法重建原始问题,撤消任何解前转换。最后一步是postsolve步骤。据/p>
为简单起见,该算法将所有下界都移到零。据/p>
虽然这些预处理步骤可以速度加快算法的迭代部分,但如果是据一种CL.一种S.S.="indexterm" name="d123e33534">Lagrange乘法器是必需的,因此必须撤消预处理步骤,因为算法期间计算的乘数是转换的问题,而不是原始的。因此,如果乘法器是据S.P.一种N.CL.一种S.S.="emphasis">不据/em>如果请求返回,则不会计算此转换,并可能在计算上节省一些时间。据/p>
在高水平上据CO.D.E.CL.一种S.S.="function">linprog据/code> 该算法首先进行预处理,如据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">预处理据/a>.有关详细信息,请参阅安德森和安德森据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[1]据/a>以及Nocedal和Wright据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[7]据/a>第13章。这种预处理将原来的线性规划问题简化为据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程4据/a>:据/p>
一种据/em>和据E.mCL.一种S.S.="varname">B.据/em>是原始约束矩阵的变换版本。这是最基本的问题。据/p>
原始可行性可以用据S.你P.>+据/sup>函数据/p>
原始不可行性的衡量是据/p>
在解释据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">方程6据/a>在美国,对偶问题是求向量据E.mCL.一种S.S.="varname">y据/em>和据E.mCL.一种S.S.="varname">W.据/em>,和松弛变量向量据E.mCL.一种S.S.="varname">Z.据/em>解决据/p>
这据CO.D.E.CL.一种S.S.="function">linprog据/code>算法对返回的拉格朗日乘数使用了与本讨论给出的不同的符号约定。这个讨论使用了和大多数文学作品一样的符号。看到据一种href="//www.tatmou.com/nl/help/optim/ug/linprog.html"> 双重不可行性的度量是据/p>
这是众所周知的(例如,见据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[7]据/a>),对偶问题的任何有限解都给出原问题的解,原问题的任何有限解都给出对偶问题的解。此外,如果原始问题或对偶问题中的一个是无界的,那么另一个问题是不可行的。如果原始问题或对偶问题中有一个是不可行的,那么另一个问题要么是不可行的,要么是无界的。因此,这两个问题在获得有限解(如果存在)方面是等价的。由于原始问题和对偶问题在数学上是等价的,但计算步骤不同,因此通过对偶问题的求解可以更好地解决原始问题。据/p>
帮助减轻退化(参见Nocedal和Wright)据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[7]据/a>,第366页),双单纯x算法首先扰乱目标函数。据/p>
双单位算法的阶段1是找到双重可行点。该算法通过解决辅助线性规划问题来实现这一点。据/p>
在阶段2期间,求解器重复选择进入变量和离开变量。该算法根据Forrest和GoldFarb建议的技术选择了剩余变量据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[3]据/a>称为双陡峭的定价。该算法选择使用Koberstein建议的哈里斯比率测试的变化来选择进入变量据一种href="//www.tatmou.com/nl/help/optim/ug/linear-programming-algorithms.html" class="intrnllnk">[5]据/a>.为了帮助缓解退化,该算法可以在阶段2引入额外的扰动。据/p>
求解器迭代,试图在降低原不可行性的同时保持对偶可行性,直到简化的扰动问题的解既是原可行的,也是对偶可行的。该算法解开了它所引入的扰动。如果扰动问题的解对未扰动问题是对偶不可行的,则求解器使用原始单纯形或阶段1算法恢复对偶可行性。最后,求解器展开预处理步骤,将解返回到原始问题。据/p>
本节定义这些术语据S.P.一种N.CL.一种S.S.="emphasis">基础据/em>那据S.P.一种N.CL.一种S.S.="emphasis">nonbasis据/em>,据S.P.一种N.CL.一种S.S.="emphasis">基本可行的解决方案金宝搏官方网站据/em>一个线性规划问题。该定义假定问题以下列标准形式给出:据/p>
(注意据E.mCL.一种S.S.="varname">一种据/em>和据E.mCL.一种S.S.="varname">B.据/em>不是矩阵和向量定义了原始问题中的不等式吗?)假设据E.mCL.一种S.S.="varname">一种据/em>是一个据E.mCL.一种S.S.="varname">m据/em>——- - - - - -据E.mCL.一种S.S.="varname">N.据/em>矩阵的秩据S.P.一种N.CL.一种S.S.="inlineequation">m据/em>据据E.mCL.一种S.S.="varname">N.据/em>,其列为{据E.mCL.一种S.S.="varname">一种据/em>1据/sub>那据E.mCL.一种S.S.="varname">一种据/em>2据/sub>、……据E.mCL.一种S.S.="varname">一种据S.你B.>N。据/sub>}。假设据S.P.一种N.CL.一种S.S.="inlineequation">
是列空间的基础据E.mCL.一种S.S.="varname">一种据/em>,带有索引集据E.mCL.一种S.S.="varname">B.据/em>= {据E.mCL.一种S.S.="varname">一世据/em>1据/sub>那据E.mCL.一种S.S.="varname">一世据/em>2据/sub>、……据E.mCL.一种S.S.="varname">一世据S.你B.>m据/sub> 如果据E.mCL.一种S.S.="varname">X据/em>是解决方案据S.P.一种N.CL.一种S.S.="inlineequation">·x据/em>=据E.mCL.一种S.S.="varname">B.据/em>和所有的非基本变量据E.mCL.一种S.S.="varname">X据/em>N据/sub>等于其较低或上限,据E.mCL.一种S.S.="varname">X据/em>被称为据S.P.一种N.CL.一种S.S.="emphasis">基本的解决方案据/em>.如果,另外,基本变量据E.mCL.一种S.S.="varname">X据/em>B.据/sub>满足上界和下界,所以据E.mCL.一种S.S.="varname">X据/em>是一个可行点,据E.mCL.一种S.S.="varname">X据/em>被称为据S.P.一种N.CL.一种S.S.="emphasis">基本可行解据/em>.据/p>
对偶单纯形的据/code>算法本质上是执行一个单纯形算法据E.mCL.一种S.S.="firstterm">对偶问题据/em>.据/p>
λ据/code>.据/p>
基本和非比分变量据/h4>
安徒生,E. D.和K. D.安徒生。据E.mCL.一种S.S.="citetitle">线性规划中的求解据/em>.数学。编程71,1995,pp。221-245。据/p>
[2] Applegate, D. L., R. E. Bixby, V. Chvátal和W. J. Cook,据E.mCL.一种S.S.="citetitle">旅行推销员问题:一个计算研究据/em>,普林斯顿大学出版社,2007。据/p>
[3] Forrest,J. J.和D. Goldfarb。据E.mCL.一种S.S.="citetitle">线性规划的最陡边单纯形算法据/em>.数学。编程57,1992,第341-374页。据/p>
[4] Gondzio, J. <线性规划的原始对偶方法中的多重中心性校正>据E.mCL.一种S.S.="citetitle">计算优化与应用据/em>, 1996年第6卷第2期,第137-156页。可以在据一种href="https://www.maths.ed.ac.uk/~gondzio/software/correctors.ps" target="_blank">https://www.maths.ed.ac.uk/~gondzio/software/correctors.ps据/code>.据/p>
[5] Koberstein,。据E.mCL.一种S.S.="citetitle">解决大规模LP问题的对偶单纯形算法的进展:快速和稳定的实现技术据/em>.计算Optim。和应用程序41,2008,185-204页。据/p>
[6] Mehrotra, S.《关于原-对偶内点方法的实现》。据E.mCL.一种S.S.="citetitle">SIAM优化学报据/em>,卷。2,1992,PP 575-601。据/p>
Nocedal, J.和S. J. Wright。据E.mCL.一种S.S.="citetitle">数值优化据/em>,第二版。施普林格运筹学系列,斯普林格出版社,2006。据/p>