`

组合数学练习5

阅读更多
    复习到了SA,正好做了一道利用SA解决LP问题,是非常基础的一道题目。
    求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-300
  x1x2x3x4
6 2310
1-1101

做法首先确定了其中的基底x3和x4(两个是线性无关的),然后找到第一行中的是负数的最小的那个,然后纵向找到一个正数即3,接着就是线性代数的知识,使得基底进行变动,并且使得第一行中的负数变为0
3-4003
x1x2x3x4
3501-3
1-1101

下面的操作和上面的类似,最终得到
27/5004/53/5
x1x2x3x4
3/5101/5-3/5
8/5011/52/5

对应表格中的左上角的数正是我们所求数的相反数,所以最小的值因为-27/5,而此时我们可以得到x1=3/5,x2=8/5
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics