Jak řešit non-lineární nerovnice s python jako 12<x*y<14 a 2x + 3y>40?

0

Otázka

Chci řešit systém nelineárních nerovnost, rovnice, Zjednodušit takto: 12<x,y<14 a 2x + 3*y>40, je tam nějaký způsob, jak najít minimální x pomocí python, vím, jak řešit lineární nerovnosti quations s scipy.optimalizovat.linprog,ale nemůžu najít způsob, jak vyřešit non-lineární nerovnosti quations,díky

inequality math python
2021-11-23 02:26:16
1

Nejlepší odpověď

1

Z3 je SAT/SMT řešitel, který může být zajímavý pro tento typ problémů.

Zde je příklad hledáme celočíselné řešení. Všimněte si, že dané rovnice jsou neomezené pro plováky.

from z3 import Optimize, Int, And

opt = Optimize()
x = Int('x')
y = Int('y')
opt.add(And(x * y > 12, x * y < 14))
opt.add(2 * x + 3 * y > 40)
opt.minimie(x)
print(opt.check())  # prints sat
print(opt.model())  # prints [y = 13, x = 1]
2021-11-23 11:37:20

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................