Numerical Optimization section should be split into parts. It's a weird mix of discrete optimization (Knapsack)--- out of place there, as it's not "numerical", but discrete, with numerical root finding, least squares approximation, and optimization of functions of one variable, and linear (LP), integer linear (ILP)---again, a discrete problem--- and semidefinite programming (SDP).
By right, LP and SDP should be put into its own "Convex optimization", Knapsack and ILP into "Discrete optimization", and univariate things into "Calculus/numerical methods". I also think that the code for the latter and for Knapsack should be split into separate files - currently they are all dumped in numerical/optimize.py, which also contains a little function to demonstrate the direct use of cvxopt LP solver---the latter should also be somewhere else.
Note that ILP and LP are solved by the same frontend, specifying appropriate parameters, so I don't quite know how to structure the corresponding documentation. (Probably one would have to link to .rst files that further point at the concrete code documentation?)
Johan:
Numberical Optimization is semantically linked to SAT Solvers. Perhaps they should simply have their own headline called Solvers or something.
Once this is done, we should reorganise the top index (in #22386) so that
Discrete Mathematics will get a heading "Optimization and Solvers" expanding into
SAT Solvers, Knapsack, ILP.
Dima:
Numerical Optimization section should be split into parts. It's a weird mix of discrete optimization (Knapsack)--- out of place there, as it's not "numerical", but discrete, with numerical root finding, least squares approximation, and optimization of functions of one variable, and linear (LP), integer linear (ILP)---again, a discrete problem--- and semidefinite programming (SDP).
By right, LP and SDP should be put into its own "Convex optimization", Knapsack and ILP into "Discrete optimization", and univariate things into "Calculus/numerical methods". I also think that the code for the latter and for Knapsack should be split into separate files - currently they are all dumped in numerical/optimize.py, which also contains a little function to demonstrate the direct use of cvxopt LP solver---the latter should also be somewhere else.
Note that ILP and LP are solved by the same frontend, specifying appropriate parameters, so I don't quite know how to structure the corresponding documentation. (Probably one would have to link to .rst files that further point at the concrete code documentation?)
Johan:
CC: @dimpase @mkoeppe @mforets
Component: documentation
Issue created by migration from https://trac.sagemath.org/ticket/22472