matlab关于fmincon的问题

img

就是目标函数加上约束

fun = @(x) -1/2*(2*x(2)+2*x(1)*cos(x(3)))*x(1)*sin(x(3));%加负号算最小值
Aeq = [2, 1, 0]; beq = 100; % 等式条件
Lb = [0; 0; 0]; Ub = [100; 100; pi/2]; % 上下边界
x0 = Lb+rand(3,1).*(Ub-Lb);%设初始值
[x, fmin] = fmincon(fun, x0, [],[],Aeq, beq, Lb, Ub);
x%x(1)-x1; x(2)-x2; x(3)-theta
fmax = -fmin%最大值

结果展示:


x =

  33.333333518054751
  33.333332963890513
   1.047197549350879


fmax =

     1.443375672974065e+03

有帮助望采纳哟