1 题目
2 求解
把 w1, w2 看做 x的一部分。
function y= findOpt(x)
y = fmincon(@(x) fminx(x),[0,0,0,0,0],[],[],[],[],[-inf,-inf,-inf,0,0],[inf,inf,inf,100,100] ,@(x) fcontr(x))
end
function f = fminx(x)
f = (x(1)-0.5).^2 + (x(2)-0.5).^2 + (x(3)-0.5).^2;
end
function [c, ceq] = fcontr(x)
w1 = x(4)
w2 = x(5)
c(1) = sin(w1*x(1)).*cos(w1*x(2))-1/1000*(w1-50).^2-sin(w1*x(3))-x(3)-1
c(2) = sin(w2*x(2)).*cos(w2*x(1))-1/1000*(w2-50).^2-sin(w2*x(3))-x(3)-1
ceq = 0
end
上面函数保存 findOpt.m
,然后运行 findOpt([0,0,0,0,0])
.
参考: