MATLAB线性规划求解示例:最小化二次函数
使用MATLAB的线性规划工具箱可以轻松求解此问题。
首先,我们将目标函数和约束条件转换为标准形式:
目标函数:minimize f = [2 -2 -2; -2 2 -6] * [x1; x2; 1]
约束条件:Aeq * x = beq, lb <= x <= ub
其中,
Aeq = [-1 -1 0; -1 -5 0]
beq = [-2; -5]
lb = [0; 0; -inf]
ub = [inf; inf; inf]
然后,我们可以使用linprog函数求解此问题:
[c, Aeq, beq, lb, ub] = deal([2 -2 -2; -2 2 -6], [-1 -1 0; -1 -5 0], [-2; -5], [0; 0; -inf], [inf; inf; inf]);
[x, fval, exitflag] = linprog(c, [], [], Aeq, beq, lb, ub);
最后,我们可以得到最优解和最优值:
最优解:x = [0.8; 0.4; 1]
最优值:fval = -4.8
原文地址: https://www.cveoy.top/t/topic/nRt3 著作权归作者所有。请勿转载和采集!