问下matlab一个五元函数到最值怎么求,限制只有5个变量(x1,x2,x3,x4,x5)都大于0,能否写个通用的程序,只需改动目标函数就行

问下matlab一个五元函数到最值怎么求,限制只有5个变量(x1,x2,x3,x4,x5)都大于0,能否写个通用的程序,只需改动目标函数就行

同学你只需要使用matlab自带的函数即可!!
比如最小值

FUN = @(x) x(1)+x(2)+x(3)+x(4)^2+x(5)+2; %这是我随便给出的一个函数示意
X0 = rand(5,1);
[X, minFun] = fmincon(FUN,X0,[],[],[],[],[0;0;0;0;0],[]) 

比如最大值

FUN = @(x) -x(1)-x(2)-x(3)-x(4)^2-x(5)+x(1)*x(2)+3; %这是我随便给出的一个函数示意
X0 = rand(5,1);
[X, maxFun] = fmincon(@(x)-FUN(x),X0,[],[],[],[],[0;0;0;0;0],[]) ;
X
maxFun = -maxFun