我是matlab的初学者,我很感兴趣如何找到方程式的解决方案:
2x + y <= 6
4x + 5y <= 20
x + 2y >= 4
5x + 3y <= 15
x - 2y + 6 <= 0
如何在matlab中绘制这个方程? 提前致谢
答案 0 :(得分:3)
在回应一些评论时,我想说这两个未知数中的5个方程确实有意义。首先,这些是不平等,而不是平等。它们中的每一个在被线(所有不同的线)切割之后表示2D平面的半侧。而你对这个不平等系统的解决方案就是所有这些半平面交叉的区域。它可以是闭合的多边形区域,也可以是无界区域或空集。
由于这看起来像是一个任务问题,我不会在这里给你解决方案。但是这里有一个提示,密集地从XY平面采样点,对于每个点,如果它满足所有方程,则绘制它,否则不要......
P.S。即使存在所有的等式,更多线性方程组的系统仍然有意义。它是一个超定系统,并且存在“最小二乘”意义上的解决方案,即线条适合于具有最小平方误差和的大量噪声数据。但这不是你的情景。
答案 1 :(得分:1)
这可以通过单纯形(优化方法,线性规划)来解决,这是完全确定的,因此计算机可以完成这项工作。 Matlab为此提供了工具,例如linprog。不等式是你的约束,并将定义一个凸多边形,它可以是有界的,无界的或空的。你的目标函数等于1。