The following paper:
has an interesting test function for a large system of nonlinear equations:
This function originates from:
Here it has a fixed starting point:
Solving a triangular system
This system of nonlinear equations actually forms a triangular system. This means a good preprocessor can solve this just by solving small 1x1 problems. To be precise: first solve for x1, then for x2 etc. Note that these tiny 1x1 problems are possibly nonlinear. In this case they are for sure nonlinear. We write the model as:
I.e. 10k equations and 10k variables. Note that x(i-1) for the first i is zero in GAMS.
CONOPT
Using GAMS/CONOPT we see
CONOPT 3 24.4.5 r52258 Released May 26, 2015 WEI x86 64bit/MS Windows |
I.e. no “real” work was needed for this problem: the presolver was able to solve the complete problem. CONOPT is really the smart here compared to some other solvers. Below some results.
PATH, KNITRO
Note that with the PATH solver we were not able to solve this problem:
** EXIT - other error. |
I was not able to see if the preprocessor did anything here.
With KNITRO we see:
KNITRO presolve eliminated 0 variables |
It probably does only a linear presolve. This results in a subsequent failure:
EXIT: Terminate at infeasible point because the relative change in solution |
No comments:
Post a Comment