如何使用MATLAB求下列方程最优解 min f(x)=12*ω+3*ω*ceil (x-1)-1.5*ceil (x-1) ω=3*p 0≤x≤30 0<ω<1 求最优 x 和 ω 以及 p
2条回答 默认 最新
CSDN专家-Matlab_Fans 2021-05-27 21:40关注目标函数不是线性函数,这个优化问题不是线性规划,可以使用有约束非线性优化方法来求求解,使用fmincon函数,代码如下:
fun = @(x) 12*x(1) + 3*x(1)*ceil(x(2)-1) - 1.5*ceil(x(2)-1)*x(1); A = [1 0 0 1 -1 0 0 -1]; b = [1 30 0 0]; x0 = [0.5 15]'; x = fmincon(fun,x0,A,b); g = fun(x) w = x(1) xx = x(2) p = w/3结果
g = 2.0001e-08 w = 1.6667e-09 xx = 0.0983 p = 5.5557e-10本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报