- 中文名
- 人工变量法
- 外文名
- Artificial variable method
- 适用领域
- 线性规划
- 应用学科
- 组合数学、运筹学
- 方 法
- 大M法和两阶段法
- 意 义
- 求解特殊的线性规划问题
只记脚几其公式如趋棵击下:
正如上式所展示的那样,所有约束是(≤),并且有非格精负右端项(厚捉拔b订记桨i≥0)的线性规划,化为标准形式是在每个不等式的左端添加一个松弛变量,这时约束等式左端的系数矩阵就含有一个单位矩阵I,取这个单位矩阵为初始基,很容易得到一个初始基本可行解,从而建立单纯形表凳体永。 [1]
但包含(=)和或(≥)约束条件则不是如此。对于(≥)型约束来说,标准化时需添加剩余变量,其系数为-1,而对(=)型约束,则没有松弛变量,因此存在这两种约束条件标准化后缺少足够的松弛变量的系数组成(诸如 )十分直观的单位矩阵,也即无法不做变换地找到基本可行解。这时候可以利用人工变量x(artificial variables)类似松弛变量添加到等式中去,让它们在第一次迭代起着松弛变量的作用,并随后用某次迭代中再把这些人工变量去掉。 [2]
由于人工变量存在于初始基本可行解,而且人工变量是虚拟变量,它们在目标函数取极值时不应该存在数值,因此需要将它们从基变量中替换出来。若人工变量可以从基变量中替换出来,即基变量中不含有非零的人工变量,表示原问题有解;若人工变量不可以从基变量中替换出来,则表示原问题无可行解。 [3]
用计算机处理数据时,只能用很大的数代替M,可能造成错误,故多采用两阶段法。
第一阶段:在原线性规划问题中加入人工变量,构造模型。构造模型的目标函数为:
第二阶段:在第一阶段的最终表中,(1)去掉人工变量,(2)将目标函数的系数换成原问题的目标函数系数,作为第二阶段计算的初始表,用单纯形法计算。 [4]
1、无可行解:运算到检验数全负为止,若仍含有人工变量在基可行解未进入非基变量,则无可行解。
为避免退化,虽任意换出变量目标函数值不变,但此时不同的基却表示为同一顶点,其特例是永远达不到最优解,需作如下处理兰特Bland规则:
(1)当 中出现两个以上最大值时,选下标最小的非基变量为换入变量;
(2)当 中出现两个以上最小值时,选下标最小的基变量为换出变量。 [4]
当存在(=)和或(≥)约束条件时使用该方法。
虽然标准化后可能存在单位矩阵可以不需要添加人工变量,但是它不具有代表性,而且人工变量法具有普适性,即使添加上了不妨碍结果,人工变量法比起寻找单位矩阵,无论在人工还是计算机计算时都有更高的可操作性。 [4]