这个方程应该怎样在MATLAB中编程,并输出自变量的值? 5

 我来答
lhmhz
高粉答主

2020-07-17 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7264 获赞数:17014

向TA提问 私信TA
展开全部

题主给出的方程实际上是一个最优化极值问题,极值问题可以用fmincon()函数或ga()函数等去求解。

如用fmincon()函数求解,可以按下列方法来解决:

1、自定义目标函数,其内容

y=9*x1+14*x2+202*x3+8*x4+6*x5+3*x6+354*x7;

2、自定义约束条件函数,其内容

c(1)=x6-x3;

c(2)=x6-x7;

ceq = x1+x2+x3+x4+x5+x6+x7-1;

3、确定x1、x2、x3、x4、x5、x6、x7 的上下限,即

lb=[0,0,0,0,0,0,0];

ub=[1,1,1,1,1,1,1];

4、使用fmincon()函数,得到x1、x2、x3、x4、x5、x6、x7 的值以及其极值(该问题为最小值等于6)

5、验证约束条件是否成立。即

disp('验证:x3>x6')

。。。

disp('验证:x7>x6')

。。。

disp('验证:A=x1+x2+x3+x4+x5+x6+x7=1')

。。。

6、编程后执行,得到如下值。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式