Home About Documentation Install Newsline Links Feedback Appeal Guestbook
since 2007/10/24
Non-linear systems problem (NLSP)
Solve set of non-linear equations
F(x) = 0,
x from Rn,
F: Rn -> Rn
(or F = {F[i]: Rn -> R, i = 0...n})
subjected to
- Box - bound constraints
- lb <= x <= ub (some coords of lb and ub can be +/- inf)
- lb <= x <= ub (some coords of lb and ub can be +/- inf)
- General linear constraints
- A*x <= b
- Aeq*x = beq
- A*x <= b
- Non-linear constraints
- ci(x) <= 0, i = 0...I
- hj(x) = 0, j = 0...J
- ci(x) <= 0, i = 0...I
OpenOpt NLSP example >>>
NLSP solvers
| solver | license | constraints | derivatives | info |
| scipy_fsolve | BSD | None | df | "fsolve" is a wrapper around MINPACK's hybrd and hybrj algorithms. |
| nssolve | BSD | lb, ub, Aeq, A, c, h (example) | df, dc, dh | Thi one is primarily for nonsmooth and noisy funcs, uses NSP ralg solver and is intended to be enhanced from time to time, as well as ralg. ns- can be interpreted as NonSmooth or NoiSy or Naum Shor (Ukrainian academician, my teacher, r-algorithm inventor). |
- if no gradient is supplied, using separate func for each nssolve equation is recommended (f = [fun1, fun2, ...]), same to c, h
The ones below work very unstable and can't use user-provided gradient, at least for scipy 0.6.0
Maybe they will be inhanced in future by someone. See here for details
- scipy_anderson
- scipy_anderson2
- scipy_broyden1
- scipy_broyden2
- scipy_broyden3
- scipy_broyden_generalized
