我在整数2变量线性问题中研究分支定界算法的行为。 我偶尔会使用Wolfram Alpha来绘制图形,但现在我需要一个更强大的选项Mathematica。 我需要在R2空间上绘制一组不等式的可行区域(x和y大于0),不等式如:
2 * x + 4 * y&lt; = 12 // 6 * x + 2 * y&lt; = 27 // x <= 4 // x> = 0 // y&gt; = 0
图表必须显示正象限上的所有整数x,y点(我认为网格函数可以做到这一点)和特定点(最大/最小化问题的解决方案) 例如,在这种情况下,可行空间是: http://www.wolframalpha.com/input/?i=plot%282*x%2B4*y%3C%3D12%2C6*x%2B2*y%3C%3D27%2Cx%3C%3D4%2Cx%3E%3D0%2Cy%3E%3D0%29
提前感谢。
答案 0 :(得分:1)
您正在寻找的功能是RegionPlot
:
RegionPlot[
2 x + 4 y <= 12 && 6 x + 2 y <= 27 && x <= 4 && x >= 0 && y >= 0, {x,
0, 5}, {y, 0, 5}]
为了在不等式满足的整数点上制作漂亮的图,这里是绘制它的函数:
IntegerRegionPlot[quantifier_, {xmin_, xmax_}, {ymin_, ymax_}] :=
Graphics[Flatten[
Table[If[
quantifier, {Red, Disk[{x, y}, 0.5]}, {Blue,
Disk[{x, y}, 0.5]}], {x, xmin, xmax}, {y, ymin, ymax}]],
Frame -> True];
要绘制不平等,请执行以下操作:
IntegerRegionPlot[
2 x + 4 y <= 12 && 6 x + 2 y <= 27 && x <= 4 && x >= 0 && y >= 0, {0,
5}, {0, 5}]