我对 Matlab 相当陌生,但对编程原理有一些基本的了解。
我想根据这两个不等式绘制两个变量 H(x 轴)与 C(y 轴):4H+C<=20 和 H+3C<=10,给定:NB=H+2C (线性目标函数向量),使用Matlab中的linprog函数工具求解(x=linprog(f,A,b);)
我知道如何输入 linprog 编程(注意这里 f 的负值是因为我想最大化,而不是最小化我的目标函数):
f=[-1,-2];
A=[4 1; 1 3];
b=[20;10];
[x,fval,exitflag,output,lambda] = linprog(f,A,b);
这给出了 x = (4.5455, 1.8182) 处的最优解
我想以图形方式显示这一点,即在图表上绘制两个不等式方程,两个轴比例从 0 到 10,使用间隔为 1,但我似乎无法完成这项工作。
这是我所拥有的:
[H,C] = meshgrid((0:1:10),(0:1:10));
figure, hold on
xlabel('H, Hydropower')
ylabel('C, Crops')
第一个问题是它使用 0.1 (??) 的间隔从 0-1 绘制,当然,没有代表不等式的线。但是如何创建不等式线呢?
任何帮助将不胜感激!乌尔斯