| 查看: 673 | 回复: 0 | ||
thooo1985新虫 (初入文坛)
|
[求助]
MATLAB二元非线性优化问题
|
|
麻烦老师帮忙看一下程序的问题。中间函数相互关联,不知道该怎么编写函数了,程序如下。谢谢 function [w,x,n]=tansuo3(W,x1,x2,x4) %初始输入值% % w=20; % x(1,1)=180; % x(1,2)=4; % x(1,4)=3; x(1,1)=x1; x(1,2)=x2; x(1,4)=x4; %第一次方程求解得到的值% y(1,1)=2.2171+0.021226.*x(1,1)-0.47545.*x(1,2); y(1,2)=-18.09883+0.32313.*x(1,1)-1.00499.*x(1,2)-7.84734*10.^(-4).*x(1,1).^2; y(1,3)=y(1,1); %方程组(y(1,1),y(1,2))与方程组(y(1,3),y(1,4))的关系% x(1,3)=(%y(1,3)-4.12488+1.5333.*x(1,4)-0.13043.*x(1,4).^2)./0.031; y(1,4)=0.61721+0.058066.*x(1,3)+0.01073.*x(1,4)-5.5*10.^(-3).*x(1,3).*x(1,4); %第一次计算满足条件的最小n值% w(1,1)=W; n(1,1)=(3*w(1,1)+3*y(1,2)/2-y(1,4)*3/2)/(2*y(1,2)); n(1,1)=ceil(n(1,1)); %返回计算最终的w值% if n>2 w(1,1)=y(1,4)/2+y(1,2)/3+(n(1,1)-2)*y(1,2)*2/3+y(1,2)/2; elseif n==2 w(1,1)=y(1,4)/2+y(1,2)/3+y(1,2)/2; elseif n<2 w(1,1)=y(1,4)/2; end %以第一次计算的w为条件,计算第二次至第i次的x(i,1),x(i,2),x(i,3),x(i,4)和最小值n% k=y(1,1); i=1; while k<=w %循环终止条件% i=i+1; %10是假定的值,循环可能在10次内停止% %第i次方程组的关系,与第一次的关系相同% % y(i,1)=2.2171+0.021226.*x(i,1)-0.47545.*x(i,2); % y(i,2)=-18.09883+0.32313.*x(i,1)-1.00499.*x(i,2)-7.84734*10.^(-4).*x(i,1).^2; % y(i,3)=y(i,1); % x(i,3)=(y(i,3)-4.12488+1.5333.*x(i,4)-0.13043.*x(i,4).^2)./0.031; % y(i,4)=0.61721+0.058066.*x(i,3)+0.01073.*x(i,4)-5.5*10.^(-3).*x(i,3).*x(i,4); %%%%%%%%%%%%%%%%%%%%%%%第二次循环时的电流未知 w(i,1)=w(i-1,1)-y(i-1,2)/2; %第i次w的值与第i-1次的关系% [X fval]=fmincon(@GAsovle1,[100,3,95,3.2],[164,3.6,94,2.6],[206,6.4,136,5.4]) %求满足x(i,1),x(i,2),x(i,3),x(i,4)范围要求的最小的n的值% n(i,1)=ceil(n(i,1)) %对n取整% %取整后的n带入w的计算公式,求解新的w值% y(1)=; y(2)=(-18.09883+0.32313.*X(1)-1.00499.*X(2)-7.84734*10.^(-4).*X(1).^2); y(3)=; y(4)=(0.61721+0.058066.*X(3)+0.01073.*X(4)-5.5*10.^(-3).*X(3).*X(4)); if n>2 w(i,1)=y(i,4)/2+y(i,2)/3+(n(i,1)-2)*y(i,2)*2/3+y(i,2)/2; elseif n==2 w(i,1)=y(i,4)/2+y(i,2)/3+y(i,2)/2; elseif n<2 w(i,1)=y(i,4)/2; end %输出第i次计算的w,n,x的值 w(i,1) n(i,1) x(i,1)=X(1); x(i,2)=X(2); x(i,3)=X(3); x(i,4)=X(4); k=k+y(i,1) end |
» 猜你喜欢
极限拉扯,如何抉择
已经有15人回复
申请科研项目纯靠实力能成功吗?
已经有8人回复
中科院海洋所招收海洋材料相关领域博士研究生及研究助理
已经有4人回复
40+中年人失业后,还能找到好工作吗?
已经有3人回复
二审4个多月了还是Awaiting Reviewer Scores
已经有4人回复
OpenAI又攻克数学难题了,离AI做有机合成还有多远?
已经有13人回复
课题组会帮你通过考核么?
已经有7人回复
入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍
已经有6人回复
售一区SCI文章T0P,我:8O.551.O54,科目全,可十急
已经有9人回复
售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急
已经有10人回复










回复此楼
200