求解各位大神,matlab的一道简单非线性规划问题

2024-11-29 12:11:07
推荐回答(3个)
回答1:

用matlab求解这类极值问题,是无法求得其结果。必须给出n、b的已知值,如n=10,b=1050时,可以用fmincon函数求得。实现方法:

x0=ones(1,10);

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

[x,fval] = fmincon(@(x) fmincon_fun(x),x0,[],[],[],[],lb,ub,@(x) fmincon_con(x)); 

disp('xi值'),disp(x),disp('最大值'),disp([num2str(-fval)])

Y=sum(x);

disp(['验证:x1+x2+x3+..+x10=1050  ',num2str(Y)])

注意:极值表达式是不定方程,所以xi是可变的。

回答2:

没看明白……哈哈!

回答3:

-