Octeract Engine Options

⌘K
  1. Home
  2. Docs
  3. Octeract Engine Options
  4. Options reference
  5. INFINITY

INFINITY

Name:INFINITY
Type:double
Default Value:1.e7
Range:[0−1.e7]

As I hope you know, deterministic global optimisation only works on box-constrained problems, i.e., problems with finite variable bounds. While we can derive finite bounds from certain mathematical structures even if you don’t define said bounds, it’s not always possible, and tbh the solver will be slow AF if you define very large variable ranges because:

  • The search space is larger
  • Your model is likely to be badly scaled
  • It’s a sign that you’re either a wee bit lazy and/or that you don’t have a good understanding of the system you are modelling, and this will most likely be reflected in how well you built the model in the first place.

In order to counter user n00bness, this option sets a default bound for unbounded variables. If you do not provide bounds for a variable, its bounds will be automatically set to ±INFINITY.

Furthermore, as of v4.7, the maximum range for unbounded variables goes up to ±1.e7, unless the engine can deduce that there is a solution at greater magnitudes, in which case it will use those bounds automatically. If you are not happy with that range, tough luck – scale your model better. You really don’t want a solver trying to calculate a value for 0.001337x(1.e52)3.

Reducing this number can greatly improve performance, but what will improve it even more is if you set good bounds for your variables.

Tags ,