order= ['gurobi', 'cplex', 'mosek', 'mskfsn', 'scip', 'ecos', 'glpk', 'smcp', 'cvxopt']¶
The default preference list for solver selection. Solvers that do not appear are appended arbitrarily when selecting a solver.
The order is chosen as follows:
- Commercial solvers appear first as the user has spent money or academic licensing effort to make them available and is likely to want them used.
- MOSEK’s high level Fusion API was found to be a performance bottleneck (2018-10), so it appears at the end of the commercial solver list (so that MOSEK’s low level Optimizer API takes precedence).
- Commercial solvers are sorted based on LP benchmark results in http://plato.asu.edu/talks/informs2017.pdf as LPs are the most basic problem type supported by PICOS and the benchmark results appear decisive.
- CVXOPT appears last as it is the only solver that PICOS depends on and thus presence on the system is least likely to express user preference.
- The remaining noncommercial solvers are sorted based on the PICOS maintainers’ subjectively perceived impression of “maintainedness”.