why we can't use large bound as replacement for infinity in mosek?

61 Views Asked by At

Here in the documentation (https://docs.mosek.com/latest/pythonfusion/debugging-numerical.html)

we see:

Never use a very large number as replacement for infinity . Instead define the variable or constraint as unbounded from below/above. Similarly, avoid artificial huge bounds if you expect they will not become tight in the optimal solution.

why is that the case?

1

There are 1 best solutions below

0
ErlingMOSEK On BEST ANSWER

The problem is if you have something like

x <= 10^20,

then does 10^20 actually mean infinity or not. So I wanted to force users to carefully consider whether they meant infinity or some finite number. So it is meant as a help to the users. Although I knew they might find it annoying.

If you want a theoretical argument for large bounds are can be bad for computational complexity (=number of iterations), then read Section 5.2 at

https://onlinelibrary.wiley.com/doi/book/10.1002/9781118032701