Skip to content

Latest commit

 

History

History
27 lines (20 loc) · 1.67 KB

CONTRIBUTING.md

File metadata and controls

27 lines (20 loc) · 1.67 KB

👷 Contributing

This project's goal is to facilitate the comparison of quadratic programming solvers for the community of solver users. All contributions are welcome, for example here are some ways to help:

Add a solver to the benchmark

  • Add a corresponding entry (in the Added section of the upcoming version) to the changelog
  • Add the solver name to the IMPLEMENTED_SOLVERS list in solver_settings.py
  • Add the solver to environment.yaml (update the version of qpsolvers if applicable)
  • Add the solver to the Solvers table in the readme
  • Set any other relevant solver settings in the define_solver_settings function in test_set.py
  • Set the solver's absolute tolerance in the set_eps_abs function in solver_settings.py
  • Set the solver's relative tolerance in the set_eps_rel function in solver_settings.py
  • Set the solver's time limit (if applicable) in the set_time_limit function in solver_settings.py

Creating a new test set

  • Create a new repository for your test set
  • Add a main Python file named after the test set, say foo_bar.py
  • Implement a FooBar class in this file deriving from qpbenchmark.TestCase
    • The class name should match the file name in PascalCase)

Check out how this is done in e.g. the Maros-Meszaros test set.