求x1-3x2的最小值?
其中满足的条件是:2x1+3x2<=6,-x1+x2<=1,x1>=0,x2>=0,一看可能会有点熟悉的题目吧,是啊,这个是高中最普遍的解决线性规划的问题,我们当时的变量不多,如果变量好多的话,解决就要需要电脑了,现在我用SA的想法来解决问题。
首先要加入衬垫变数x3,x4,使得2x1+3x2+x3=6,-x1+x2+x4=1,其中x1>=0,x2>=0,x3>=0,x4>=0.然后利用SA算法,下面有表格做说明
0 | -1 | -3 | 0 | 0 |
x1 | x2 | x3 | x4 | |
6 | 2 | 3 | 1 | 0 |
1 | -1 | 1 | 0 | 1 |
做法首先确定了其中的基底x3和x4(两个是线性无关的),然后找到第一行中的是负数的最小的那个,然后纵向找到一个正数即3,接着就是线性代数的知识,使得基底进行变动,并且使得第一行中的负数变为0
3 | -4 | 0 | 0 | 3 |
x1 | x2 | x3 | x4 | |
3 | 5 | 0 | 1 | -3 |
1 | -1 | 1 | 0 | 1 |
下面的操作和上面的类似,最终得到
27/5 | 0 | 0 | 4/5 | 3/5 |
x1 | x2 | x3 | x4 | |
3/5 | 1 | 0 | 1/5 | -3/5 |
8/5 | 0 | 1 | 1/5 | 2/5 |
对应表格中的左上角的数正是我们所求数的相反数,所以最小的值因为-27/5,而此时我们可以得到x1=3/5,x2=8/5