Get the analytical solution of inequalities in Matlab.

32 次查看(过去 30 天)
Hello,
x + 2 y + 3 c + 4 d == 3/2 && x + y + c + d == 2 && x >= 2 &&
y < 2 && c < 3 && d > 5
How to solve this inequations to get the solution of x, y, c, and d in Matlab?
Best regards.

回答(2 个)

Walter Roberson
Walter Roberson 2023-9-3
  6 个评论
zhenyu zeng
zhenyu zeng 2023-9-3
Or this one
{[{31/2 < x}, {y < 2, 7/4 - (3*x)/2 < y}, {c = 13/2 - 3*x - 2*y}, {d = -9/2 + 2*x + y}], [{x <= 31/2, 15/4 < x}, {y < 2, 19/2 - 2*x < y}, {c = 13/2 - 3*x - 2*y}, {d = -9/2 + 2*x + y}]}

请先登录,再进行评论。


Bruno Luong
Bruno Luong 2023-9-3
编辑:Bruno Luong 2023-9-3
The real question is how would you get as formal decription of the so called "solution" of the equality linear system?
There is no mathematical semantic AFAIK to describe the solution beside what is similar to you question, a set S that satisfies
A*x <= b
Aeq*x = beq
lo <= x <= up
One can show to linear transform the variables x to y so as the above can be reduced to the so called canonical form of
C*y = d
y <= 0
but there is no way to express it shorter.
Another way is if the region S is bounded, it is a polytope and one can express as a "sub-convex" combination of a finite set of vertexes.
S = sum wi * Vi
sum wi <= 1
In other word a convex hull where the vetices are {Vi}. There is a numerical method in FEX made by Matt J. It works OK for toy dimension of 2-3, but I wouldn't trust it for dimension >= 10.
In short the most convenient to "solve" linear inequalitues is to let it as it is. You want to know a point is a solution? Just replace and check it.

类别

Help CenterFile Exchange 中查找有关 Calculus 的更多信息

标签

产品


版本

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by