Numerical methods to solve nonlinear system of inequalities?

1.1k Views Asked by At

I know some methods to solve nonlinear system of equaltites: Relaxation Method, Newton method, nonlinear Jacobi method, nonlinear Seidel method. Is it exist some analogous method to solve nonlinear systems of inequaltites?

1

There are 1 best solutions below

4
On

Evidently, there is. In Mathematica, for example:

intervals = Reduce[Sin[8 x]/x^2 <= x, x]
NumberLinePlot[intervals, x]

(* Out: 
   Root[{-Sin[8 #1] + #1^3 &, -0.99738748628764884151}] <= x <= 
     Root[{-Sin[8 #1] + #1^3 &, -0.87854419062296271449}] || 
   Root[{-Sin[8 #1] + #1^3 &, -0.38553220443841061998}] <= x < 0 || 
   Root[{-Sin[8 #1] + #1^3 &, 0.38553220443841061998}] <= x <= 
     Root[{-Sin[8 #1] + #1^3 &, 0.87854419062296271449}] || 
   x >= Root[{-Sin[8 #1] + #1^3 &, 0.99738748628764884151}]
*)

enter image description here

The technique, I believe, is based on root isolation followed by a simple interval check.

Systems of inequalities can often be decomposed into sequences of inequalities involving increasing number of variables - the so called cylindrical algebraic decomposition. This is a fundamental technique in computer algebra and, while it is immediately applied to systems of polynomials, it can be extended in some cases to more general equations. For example:

Reduce[
  x^2 + y^2 < 1 && Sin[x + y] < 1/2,
  {x, y}
]

(* Out: (-1 < x < Pi/12 - Sqrt[72 - Pi^2]/12 && 
  -Sqrt[1 - x^2] <= y <= Sqrt[1 - x^2]) || 
  (Pi/12 - Sqrt[72 - Pi^2]/12 <= x < Pi/12 + Sqrt[72 - Pi^2]/12 &&
  -Sqrt[1 - x^2] <= y < 1/6 (Pi - 6 x))
*)

Now, for a given $x$ value, the problem reduces to a single variable problem.