Description
Traveling Salesperson Problem (TSP).
Description
Basic infrastructure and some algorithms for the traveling salesperson problem (also traveling salesman problem; TSP). The package provides some simple algorithms and an interface to the Concorde TSP solver and its implementation of the Chained-Lin-Kernighan heuristic. The code for Concorde itself is not included in the package and has to be obtained separately. Hahsler and Hornik (2007) <doi:10.18637/jss.v023.i02>.
README.md
R package TSP - Traveling Salesperson Problem (TSP)
This package provides the basic infrastructure and some algorithms for the traveling salesman problems (symmetric, asymmetric and Euclidean TSPs). The package provides some simple algorithms and an interface to the Concorde TSP solver and its implementation of the Chained-Lin-Kernighan heuristic.
Installation
Stable CRAN version: Install from within R with
install.packages("TSP")
Current development version: Install from r-universe.
install.packages("TSP", repos = "https://mhahsler.r-universe.dev")
Usage
Load a data set with 312 cities (USA and Canada) and create a TSP object.
library("TSP")
data("USCA312")
tsp <- TSP(USCA312)
tsp
## object of class 'TSP'
## 312 cities (distance 'euclidean')
Find a tour using the default heuristic.
tour <- solve_TSP(tsp)
tour
## object of class 'TOUR'
## result of method 'arbitrary_insertion+two_opt' for 312 cities
## tour length: 41389
Show the first few cities in the tour.
head(tour, n = 10)
## Jacksonville, FL Gainesville, FL Daytona Beach, FL
## 127 101 72
## Orlando, FL Tampa, FL Saint Petersburg, FL
## 190 275 234
## Sarasota, FL West Palm Beach, FL Miami, FL
## 247 296 164
## Key West, FL
## 136
An online example application of TSP can be found on shinyapps.
References
- Michael Hahsler and Kurt Hornik, TSP - Infrastructure for the Traveling Salesperson Problem,Journal of Statistical Software, 22(2), 2007.
- TSP package vignette with complete examples.
- Reference manual
- Concorde TSP solver home page.