收藏
0有用+1
0

人工变量法

数学术语
在线性规划问题的单纯形法中,若标准化后找不到单位矩阵,可以采用人造基,给方程加入人工变量后,用大M法和两阶段法处理求解。是求解线性规划问题的一种方式。
中文名
人工变量法
外文名
Artificial variable method
适用领域
线性规划
应用学科
组合数学运筹学
方    法
大M法和两阶段法
意    义
求解特殊的线性规划问题

定律定义

播报
编辑
只记脚几其公式如趋棵击下:
,其中杠永Xs是x犁脚弃s松弛变量组成的向量。
正如上式所展示的那样,所有约束是(≤),并且有非格精负右端项(厚捉拔b订记桨i≥0)的线性规划,化为标准形式是在每个不等式的左端添加一个松弛变量,这时约束等式左端的系数矩阵就含有一个单位矩阵I,取这个单位矩阵为初始基,很容易得到一个初始基本可行解,从而建立单纯形表凳体永。 [1]
但包含(=)和或(≥)约束条件则不是如此。对于(≥)型约束来说,标准化时需添加剩余变量,其系数为-1,而对(=)型约束,则没有松弛变量,因此存在这两种约束条件标准化后缺少足够的松弛变量的系数组成(诸如
)十分直观的单位矩阵,也即无法不做变换地找到基本可行解。这时候可以利用人工变量x(artificial variables)类似松弛变量添加到等式中去,让它们在第一次迭代起着松弛变量的作用,并随后用某次迭代中再把这些人工变量去掉。 [2]
由于人工变量存在于初始基本可行解,而且人工变量是虚拟变量,它们在目标函数极值时不应该存在数值,因此需要将它们从基变量中替换出来。若人工变量可以从基变量中替换出来,即基变量中不含有非零的人工变量,表示原问题有解;若人工变量不可以从基变量中替换出来,则表示原问题无可行解。 [3]

求解方法

播报
编辑
加入人工变量后,一般可采用大M法两阶段法处理。

大M法

如果是求极大值,即假定人工变量在目标函数中的系数为-M(M是任意大正数);如果是求极小值,人工变量在目标函数中的系数为M。用单纯形法对模型求解,如基变量中还存在M,就不能实现极值。

两阶段法

用计算机处理数据时,只能用很大的数代替M,可能造成错误,故多采用两阶段法。
第一阶段:在原线性规划问题中加入人工变量,构造模型。构造模型的目标函数为:
用单纯形法对上述模型求解。若W=0,说明问题存在基本可行解,可以进行第二个阶段;否则,原问题无可行解,停止运算。
第二阶段:在第一阶段的最终表中,(1)去掉人工变量,(2)将目标函数的系数换成原问题的目标函数系数,作为第二阶段计算的初始表,用单纯形法计算。 [4]

求解结果

播报
编辑
1、无可行解:运算到检验数全负为止,若仍含有人工变量在基可行解未进入非基变量,则无可行解。
2、退化:若计算出的用于确定换出变量的
有两个以上最小值,会造成下一次迭代中有一个或几个基变量等于零。
为避免退化,虽任意换出变量目标函数值不变,但此时不同的基却表示为同一顶点,其特例是永远达不到最优解,需作如下处理兰特Bland规则:
(1)当
中出现两个以上最大值时,选下标最小的非基变量为换入变量;
(2)当
中出现两个以上最小值时,选下标最小的基变量为换出变量。 [4]

适用范围

播报
编辑
当存在(=)和或(≥)约束条件时使用该方法。
虽然标准化后可能存在单位矩阵可以不需要添加人工变量,但是它不具有代表性,而且人工变量法具有普适性,即使添加上了不妨碍结果,人工变量法比起寻找单位矩阵,无论在人工还是计算机计算时都有更高的可操作性。 [4]