用matlab求解多元一次方程组 求大神指导 急!!急!! 急!! 救命啊!!

如2*x1+3*x2+5*x3+6*x4=89x1+x2+x3+x4=20此方程组未知数个数大于方程个数解不是唯一的解限定条件如5<x1<100<x2<50<x3<50<... 如2*x1+3*x2+5*x3+6*x4=89
x1+x2+x3+x4=20 此方程组未知数个数大于方程个数 解不是唯一的解 限定条件 如5<x1<10 0 <x2< 5 0<x3<5 0<x4<5 该如何编写 或者用其他什么方式能得出唯一的一组解
配料的问题 我只需要其中的任何一组解就可以 怎么能得出唯一的答案 或者只运算出一组解 就不再计算了也可以 不会用matlab 求指导
展开
 我来答
tianxiawulang
2015-10-27 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2550万
展开全部

1、配料问题一半应该有目标函数吧?最好把原始问题贴出来。

当然,如果没有目标函数,也可以自己随便设定,能够影响到的是,求出的究竟是哪一个解。

 

2、这可以看作一个优化问题来求解,而不是解方程组。要想求出【唯一的一组解】往往是做不到的,因为这取决于你给的限定条件本身是否具有唯一解。具有唯一解的几何意义是N维空间中的一个点,这种可能远远小于有多个解(空间的一个区域)或者无解(约束条件存在冲突)的情况。

 

3、就题主现在的问题而言,就是无解的,这可以用线性规划的方法验证:

Ae=[2 3 5 6; 1 1 1 1];
be=[89; 20];
lb=[5 0 0 0];
ub=[10 5 5 5];
x=linprog([1 0 0 0],[],[],Ae,be,lb,ub)

得到结果是无法找到可行解。

 

上述结论也可以通过Lingo进行验证:

max=x1;
2*x1+3*x2+5*x3+6*x4=89;
x1+x2+x3+x4=20;
5<x1;
x1<10;
0<x2;
x2<5;
0<x3;
x3<5;
0<x4;
x4<5;

用Lingo的好处是,可以通过Debug来判断哪些约束条件造成冲突:

  Constraints and bounds that cause an infeasibility:
  Sufficient Rows:
  (Dropping any sufficient row will make the model feasible.)
   [_3] X1 + X2 + X3 + X4 = 20 ;
   [_2] 2 * X1 + 3 * X2 + 5 * X3 + 6 * X4 = 89 ;
   [_9] X3 <= 5 ;
   [_11] X4 <= 5 ;

  Necessary Variable Bounds:
  (If none of the necessary and sufficient bounds are dropped,
   then the model remains infeasible.)
   X1 >=  0

例如,如果上面的条件去掉x3<5或x4<5这两个约束中的一个,问题就是有解的。

研载生物科技(上海)有限公司_
2023-04-12 广告
研载生物可以提供环状RNA成环验证实验服务,欢迎咨询!1.琼脂糖凝胶电泳实验分别用Divergent primer 和Convergent Primer 检测cDNA样品和gDNA样品。对照组为GAPDH,分别使用Diveraent Pri... 点击进入详情页
本回答由研载生物科技(上海)有限公司_提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式