How medelbou3/ray-tsp-research-findings-report works
Ray TSP is both a TSP heuristic study and a small browser demonstration. The central workflow takes city coordinates, constructs a tour with a directional-sweep or baseline heuristic, optionally refines it, and returns a tour and cost. The repository also includes enhanced Ray variants, a population-based recombination solver, TSPLIB input, synthetic-instance generation, and statistical evaluation. The README documents these broader capabilities; some modules were not sampled, so their links are shown only where the tree and documentation support them. The browser wiring is based on the partial script.js excerpt.
Main entry points: ray_tsp.py Directional Ray · significance_tests.py Paired significance · script.js Interactive algorithms · memetic.py Edge recombination
Components 16
User Interface
- Browser demo
index.html - Interactive algorithms
script.js
Problem Inputs
- Synthetic instances
src/data_generator.py - TSPLIB parser
src/tsplib_parser.py
Tour Construction
- Directional Ray
src/ray_tsp.py - Improved Ray
src/ray_tsp_improved.py - Enhanced Ray
src/ray_tsp_enhanced.py - Nearest neighbor
src/nearest_neighbor.py - Christofides baseline
src/christofides.py
Tour Optimization
- Edge recombination
src/memetic.py - 2-opt search
src/two_opt.py - Simulated annealing
src/simulated_annealing.py
Study Evaluation
- Tour metrics
src/metrics.py - Paired significance
stats/significance_tests.py
Other components
- User
- Researcher
Connections 22
- User → Browser demo: uses
- Browser demo → Interactive algorithms: loads
- Interactive algorithms → Directional Ray: constructs tour
- Interactive algorithms → Nearest neighbor: constructs baseline
- Interactive algorithms → 2-opt search: refines tours
- Synthetic instances → Directional Ray: supplies coordinates
- TSPLIB parser → Directional Ray: supplies coordinates
- Improved Ray → Directional Ray: reuses helpers
- Enhanced Ray → Directional Ray: reuses helpers
- Edge recombination → 2-opt search: refines offspring
- Edge recombination → Simulated annealing: anneals candidates
- Edge recombination → Directional Ray: uses tour length
- Researcher → Paired significance: runs evaluation
- Paired significance → Synthetic instances: generates instances
- Paired significance → Directional Ray: constructs tours
- Paired significance → Nearest neighbor: constructs baseline
- Paired significance → 2-opt search: refines tours
- Researcher → Edge recombination: evaluates solver
- Researcher → Improved Ray: evaluates variant
- Researcher → Enhanced Ray: evaluates variant
- Researcher → Christofides baseline: compares baseline
- Researcher → Tour metrics: assesses tours