运筹学问题

为什么在第二个约束条件加两个变量?
大M法设变量的思路能详细说下么?

对于求极大值问题,M目标函数中需要-M乘以人工变量xi(有几个人工变量,就要减去几个Mxi):首先跟单纯形法一样,约束条件<=的,加松弛变量,这道题约束条件1 加x4,这个不用我说吧。其他两个约束条件也一样,>=的减去一个剩余变量,因为我们在列单纯形表时,需要找出一组基,一般是系数为1的,也就是构成一个单位矩阵,这个不用我说吧。第二个约束条件是-x5,x5是剩余变量,前面系数是-1,凑不成单位矩阵,所以我们为了凑成一个单位矩阵,需要自己加一个变量,即人工变量x6,系数是1,而第三个约束条件也需要加一个人工变量x7,可以凑成基。 初始单纯形表中就可以直观地找出基了。即p4,p6,p7 ,也就是基变量x4,x6,x7所在的那一列,三列构成了一个单位矩阵。 迭代过程也差不多,对于求极大值问题, 将M看出无穷大,也就是一个数了。一样的做。最优解判式也一样。 只不过,如果迭代到最后,发现人工变量是基变量,且不为0,那么无解,若基变量中没有含有人工变量或者人工变量为0,则按照判别式来判断具体是哪一种解。这是求极大值的,极小值问题,另当别论。至于其他的一样。
x1 x2 x3 x4 x5 x6 x7
1 -2 1 1 0 0 0
-4 1 2 0 -1 1 0
-2 0 1 0 0 0 1
对于极大值问题,换入基时,判别是:检验数为正且绝对值最大的那一列,不如M-2与M-3比较,M是无穷大,M-2较大,选择检验数大的那一列,在换出基时,则选比值最小的且不为负数的,相交的那个变量入基,作为主元素,也就是打【】的那个,这个你应该清楚,因为我们求的是极大值,要尽快让目标值趋向于最大,所以选择检验数较大的作为入基变量考虑,直到所有的检验数都,<=0时,才得到最优解。极小值问题,目标函数中+Mxi(有几个人工变量,就加几个),判别是否最优解,换入基时,选择检验数最小的且为负的,要尽快趋向最小值,出基时则一样,选择比值小的,然后相交的那个变量就是了。希望能帮助你。追问

那如果约束条件中x5的系数为+1的话,也就是《3,x6是不是就没必要加了?就加一个人工变量就可以了?

追答

如果是<=3的话,那就是加一个松弛变量了,而不是减去一个剩余变量,也就是这时候好似加上x5,注意:x5这时是松弛变量,自然系数就是1了,所以,嘿嘿,没错,没有必要加人工变量。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-15
x5是松弛变量,将不等式约束变成等式约束,而x6是人工变量,目的是得到的初始可行基是单位矩阵。人工变量是多余的,如果问题有可行解则意味着人工变量一定等于零。大M法,即令人工变量的系数为M{求最小问题},或者-M{求最大问题},目的就是尽快将人工变量从可行基中换出。
第2个回答  2012-11-17
大M法的基本思路:对于目标函数为max的标准型线性规划,人工变量在目标函数中的价值系数取—M,M为一个很大的正数。目的是为了使人工变量尽快从基变量转变为非基变量。在初始的标准化过程中,约束条件变成:(1)X1-2X2+X3+X4=11(2)-4X1+X2+2X3-X5=3(3)-2X1+X3=1
(4)X1,X2,X3,X4,X5>=0。然后是添加人工变量的过程,现在我们需要得到一个单位矩阵,以此为可行基得到一个初始基础可行解。观察技术系数矩阵,子矩阵中凑不出一个单位矩阵,所以添加两个人工变量,X6、X7,于是能得到(X4,X6,X7)为可行基。所以第二个约束条件中的X5、X6不是同时加的。然后在进行迭代,知道将人工变量由基变量换成非基变量。本回答被网友采纳