Adding the traveling salesman problem combinatorial optimization problem to the set of problems. This problem comes with the function 'classical_optimization' which uses the 'docplex' solver, plot_solution which plots the 'networkx' graph for a given solution, and a get_distance function to get the total distance traveled from a given solution.
Additionally, I added a subfolder to organize the tests for the problems.
Checklist
[x] I have performed a self-review of my code.
[x] I have commented my code and used numpy-style docstrings
[ ] I have made corresponding updates to the documentation.
[x] My changes generate no new warnings
[x] I have added/updated tests to make sure bugfix/feature works.
[x] New and existing unit tests pass locally with my changes.
Type of change
Please delete options that are not relevant.
[x] New feature (non-breaking change which adds functionality)
How Has This Been Tested?
the test is inside './tests/test_problems/test_tsp.py'
Adding the traveling salesman problem class with its corresponding test. https://en.wikipedia.org/wiki/Travelling_salesman_problem
Description
Adding the traveling salesman problem combinatorial optimization problem to the set of problems. This problem comes with the function 'classical_optimization' which uses the 'docplex' solver, plot_solution which plots the 'networkx' graph for a given solution, and a
get_distance
function to get the total distance traveled from a given solution.Additionally, I added a subfolder to organize the tests for the problems.
Checklist
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
the test is inside './tests/test_problems/test_tsp.py'