FuturePlans
From OpenOpt
Features marked as "future plans" are intended to be done as soon as we shall encounter them in our needs - or someone will inform of willing to pay for it. |
![]() ![]() |
Some of the features:
Contents |
General
- document some features of the software that are undocumented yet
- add to documentation some examples of connecting Python, OpenOpt, FuncDesigner to Other_languages via CORBA or Ice
OpenOpt
- (150) perform graphics output in other Python thread, to remove delays for it in multi-core CPU systems
- (950 per each one) connect more solvers, e.g. Bonmin, CFSQP, CBC, CLP, QSopt, SoPlex, GuRoBi, mosek, Knitro, loqo, conopt, snopt
- (950 per each one) connect more solvers to QCQP class (maybe write our own, ralg-based)
- implement handling sparse SDP/SOCP problems
- (150) create GP class (geometric problems), cvxopt solver could be connected
- (500) speedup in several times for solvers de and pswarm on FuncDesigner problems (for oovar() or oovars(n) only, not for oovar(size=n), where n>1)
- connect OpenOpt to OpenOffice / LibreOffice Calc
- add control problems & network problems groups, connect solvers or write by ourselves
ralg
- add large-scale implementation (curently nVars = 1..1000, that one allows up to ~100000)
- perform other handling of linear equality constraints if their number is rather big
- improve handling of nonlinear equality constraints
gsubg
- (950) speed can be improved in several times
- parallel calculations could be involved
interalg
- some more speedup ideas
- some more parallel computations could be implemented
- solving of nonlinear systems could be done in more fast and native way than casting to NSP (that is performed now) or using penalties
- auto-adjusted default values for solver parameters in some cases could be done
- (950) possibility to work on vector-variables (currently using oovar(size=n) is forbidden, but you could use oovars(n) instead)
- along with objective function tolerance implement tolerance criteria on variables (x[i]-x_opt[i])
- (150) add handling of float128 and float32 types (currently float64 is used)
- (950) implement an interalg-based solver for an NPC problem, e.g. searching graph stability number
- (950) some general ODE systems dy/dt = f(y,t) can be solved with specifiable accuracy
- seems like the interalg ideas can be very helpful in solving ODE and PDE with guarantied precision
FuncDesigner
- add 2-D and N-dimensional splines
- (150 per each one) add more funcs like erf and make them available for interalg
- (15000) add any-order derivatives, like it is done in some Automatic Differentiation packages
- prevent FD myOOvar[i], myOOvar[i:j] and (myOOvar {< , eq, >} val)(tol=...) to be rendered into general linear constraints
- organize handling of DFP, QP etc and related examples
- improve Attached constraints (implement possibility to change their contol and turn them off, + some more features to be done)
- further work on ooSystem concept
- improve dot(matrix, ooarray), especially for matrices with lots of zeros
- (1500) ufuncs on ooarray (e.g. sin(a), cos(a) etc) should be reworked to speedup them
- (150) add possibility of handling sparse matrices by FD Translator
DerApproximator
- (500) improve get_d2 speed
- involve parallel calculations where it's possible
- write function check_d2
- make get_d2 working on general f: R^n -> R^m (currently it was tested for m=1 only)
- write higher-order derivatives get_d3, maybe more
SpaceFuncs
- Improving convenience of creating equations and constraints for optimization and solving systems of equations
- Add projection to polytope
- Improve graphic output with non-default options
- Rotation, inversion, central projection, etc operations
- Excircles