请教高手MATLAB约束非线性规划/一M文件的调试%1 目标函数function f=abfun(x);f=pi*130*(x(1)-0.75*x(3))^2/4+pi*[80^2-(x(1)-0.75*x(3))^2]*x(2)/4;%2 非线性约束funtion [c,ceq]=abfung(x);c(1)=40000-[0.75*pi*(x(1)-0.75*x(3))*x(2)]*10;

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 03:45:21
请教高手MATLAB约束非线性规划/一M文件的调试%1 目标函数function f=abfun(x);f=pi*130*(x(1)-0.75*x(3))^2/4+pi*[80^2-(x(1)-0.75*x(3))^2]*x(2)/4;%2 非线性约束funtion [c,ceq]=abfung(x);c(1)=40000-[0.75*pi*(x(1)-0.75*x(3))*x(2)]*10;

请教高手MATLAB约束非线性规划/一M文件的调试%1 目标函数function f=abfun(x);f=pi*130*(x(1)-0.75*x(3))^2/4+pi*[80^2-(x(1)-0.75*x(3))^2]*x(2)/4;%2 非线性约束funtion [c,ceq]=abfung(x);c(1)=40000-[0.75*pi*(x(1)-0.75*x(3))*x(2)]*10;
请教高手MATLAB约束非线性规划/一M文件的调试
%1 目标函数
function f=abfun(x);
f=pi*130*(x(1)-0.75*x(3))^2/4+pi*[80^2-(x(1)-0.75*x(3))^2]*x(2)/4;
%2 非线性约束
funtion [c,ceq]=abfung(x);
c(1)=40000-[0.75*pi*(x(1)-0.75*x(3))*x(2)]*10;
c(2)=atan{x(3)/[pi*(x(1)-0.75*x(3))]}-atan(0.13);
c(3)=4*40000*{sqrt{[x(1)-1.736*x(3)]^2+12*{tan{atan(x(3)/[pi*(x(1)-0.75*x(3))]+atan(0.13))*(x(1)-0.75*x(3))}^2}}/pi/[(x(1)-1.736*x(3))^3]-785;
c(4)=40000/(0.75*pi*x(1)*x(2))-55;
c(5)=3*40000/(0.75*pi*x(1)*x(2))-50;
c(6)=4*0.5*130/(x(1)-1.736*x(3))-(7/18);
%c(7)=30-x(2);
%c(8)=x(2)-280;
%c(9)=20-x(1);
%c(10)=x(1)-650;
%c(11)=2-x(3);
%c(12)=x(3)-24;
ceq=[];
%lb=[20 30 2];
%ub=[650 280 24];
%3 求解调用文件
function solve
% 设计变量的初始值
x0=[22;30;2];
% 设计变量的下界与上界
lb=[20;30;2];
ub=[650;280;24];
% 使用多维约束优化命令fmincon(调用目标函数abfun和非线性约束函数abfung)
% 不定义线性不等式约束中设计变量的系数矩阵a=[]和常数项向量b=[]
% 没有等式约束,侧参数:系数矩阵Aeq=[]和常数项向量beq=[]
[x,fn,exitflag]=fmincon(@abfun,x0,[],[],[],[],lb,ub,@abfung)
C3 这个约束的公式就是这样的。这里没有问题。
现在已经调通了,不过还有问题,不收敛。
%1 目标函数
function f=fun(x);
f=pi*130*(x(1)-0.75*x(3))^2/4+pi*(60^2-(x(1)-0.75*x(3))^2)*x(2)/4;
%2 非线性约束
function [c,ceq]=constrain(x);
c=[40000-(0.75*pi*(x(1)-0.75*x(3))*x(2))*11;
atan(x(3)/(pi*(x(1)-0.75*x(3))))-atan(0.13)+1.5;
4*40000*sqrt((x(1)-1.736*x(3))^2+12*(tan(atan(x(3)/(pi*(x(1)-0.75*x(3)))))+atan(0.13))*(x(1)-0.75*x(3)))^2/(pi*(x(1)-1.736*x(3))^3)-785;

40000/(0.75*pi*x(1)*x(2))-35;
3*40000/(0.75*pi*x(1)*x(2))-45;];
%4*0.5*130/(x(1)-1.736*x(3))-10;];
ceq=[];
% 设计变量的初始值
x0=[32;43;5];
% 设计变量的下界与上界
lb=[20;30;2];
ub=[650;280;24];
[x,fval,exitflag]=fmincon(@fun,x0,[],[],[],[],lb,ub,@constrain)
如何解决?
提示的错误为:
Maximum number of function evaluations exceeded;
increase OPTIONS.MaxFunEvals.
x =
-0.4944
42.9909
-13.4653
fval =
1.2786e+005
exitflag =
0

请教高手MATLAB约束非线性规划/一M文件的调试%1 目标函数function f=abfun(x);f=pi*130*(x(1)-0.75*x(3))^2/4+pi*[80^2-(x(1)-0.75*x(3))^2]*x(2)/4;%2 非线性约束funtion [c,ceq]=abfung(x);c(1)=40000-[0.75*pi*(x(1)-0.75*x(3))*x(2)]*10;
毛病在这里:
c(3)=4*40000*{sqrt{[x(1)-1.736*x(3)]^2+12*{tan{atan(x(3)/[pi*(x(1)-0.75*x(3))]+atan(0.13))*(x(1)-0.75*x(3))}^2}}/pi/[(x(1)-1.736*x(3))^3]-785;
这行命令里面的括号用得乱七八糟,你检查一下就知道了
PS:
既然你都这么说,我就不讲啦.自己数数看看这里面大括号平衡不平衡吧~

请教高手MATLAB约束非线性规划/一M文件的调试%1 目标函数function f=abfun(x);f=pi*130*(x(1)-0.75*x(3))^2/4+pi*[80^2-(x(1)-0.75*x(3))^2]*x(2)/4;%2 非线性约束funtion [c,ceq]=abfung(x);c(1)=40000-[0.75*pi*(x(1)-0.75*x(3))*x(2)]*10; 请教高手MATLAB约束非线性规划/一M文件的调试M文件如下,怎么调试呀,老有错误,% 两级斜齿轮传动中心距优化设计% 1---减速器中心距优化设计主程序% 设计变量的初始值x0=[2;4;18;20;6.4;10];% 设计变 matlab 非线性规划问题 求解约束非线性规划中使用MATLAB时为什么要设定初始值X0? MATLAB基础问题麻烦高手帮个忙,请问解有约束非线性规划问题,用MATLAB中的哪个函数?再麻烦各位把函数的调用格式也写清楚吧, 如何利用MATLAB解非线性规划 有约束的非线性规划怎么求解 运筹学 matlab一道有约束的非线性规划问题max gs.t.(a-sqrt(a^2-4*g^2*x^2))/(2*b*g*x) 请教关于用Matlab在非线性约束条件下的最优解在以下约束条件下cos(5*x)+cos(5*y)+cos(5*z)+cos(5*m)=0;cos(7*x)+cos(7*y)+cos(7*z)+cos(7*m)=0;cos(11*x)+cos(11*y)+cos(11*z)+cos(11*m)=0;使M=cos(x)+cos(y)+cos(z)+cos(m)最大的求 求高手给下面非线性规划的lingo的代码 matlab fmincon函数用法高手帮我看下这段有什么问题,为什么运行不出来目标函数和非线性约束不能放在一个M文件里面么?function f = myfun(x)f = 0.192457*1e-4*(x(2)+2)*x(1)^2*x(3);function [c,ceq] = mycon(x)c(1)=350 请教matlab高手,线性拟合 非线性约束规划 我编制了 目标函数和约束函数 为什么在matlab中还是出错 求大神看看这不给力的function f=myfun(x)f=0.192457*le-4*(x(2)+2)*x(1)^2*x(3);function [c,cep]=mycon(x)c(1)=350-163*x(1)^(-2.86)*x(3)^0.86;c(2)=1 如何用matlab求解非线性规划问题 最好给几个例子 机会约束规划模型 一道关于Matlab非线性约束问题的求解,需要有m文件的代码具体的我会上传附件,我主要是忘记怎么编了,我星期一要去讲的 matlab 函数 fmincon求解非线性规划,求这个函数的最小值 function f = myfun(x)f = (pi*(x(3)+2)*x(2)*x(1)^2)/4;运行后返回(约束在最后面有写)Warning:Trust-region-reflective method does not currently solve this type of prob matlab 非线性约束求最小值求目标函数f 的最小值,约束条件为 x>0,y>0,de