ETSP: Class ETSP - Euclidean traveling salesperson problem

View source: R/ETSP.R

ETSPR Documentation

Class ETSP – Euclidean traveling salesperson problem

Description

Constructor to create an instance of a Euclidean traveling salesperson problem (TSP) represented by city coordinates and some auxiliary methods.

Usage

ETSP(x, labels = NULL)

as.ETSP(x)

## S3 method for class 'matrix'
as.ETSP(x)

## S3 method for class 'data.frame'
as.ETSP(x)

## S3 method for class 'ETSP'
as.TSP(x)

## S3 method for class 'ETSP'
as.matrix(x, ...)

## S3 method for class 'ETSP'
print(x, ...)

## S3 method for class 'ETSP'
n_of_cities(x)

## S3 method for class 'ETSP'
labels(object, ...)

## S3 method for class 'ETSP'
image(x, order, col = gray.colors(64), ...)

## S3 method for class 'ETSP'
plot(x, y = NULL, tour = NULL, tour_lty = 2, tour_col = 2, labels = TRUE, ...)

Arguments

x, object

an object (data.frame or matrix) to be converted into a ETSP or, for the methods, an object of class ETSP.

labels

logical; plot city labels.

...

further arguments are passed on.

order

order of cities for the image as an integer vector or an object of class TOUR.

col

color scheme for image.

tour, y

a tour to be visualized.

tour_lty, tour_col

line type and color for tour.

Details

Objects of class ETSP are internally represented as a matrix objects (use as.matrix() to get the matrix object).

Value

  • ETSP() returns x as an object of class ETSP.

  • n_of_cities() returns the number of cities in x.

  • labels() returns a vector with the names of the cities in x.

Author(s)

Michael Hahsler

See Also

Other TSP: ATSP(), Concorde, TSP(), TSPLIB, insert_dummy(), reformulate_ATSP_as_TSP(), solve_TSP()

Examples

## create a random ETSP
n <- 20
x <- data.frame(x = runif(n), y = runif(n), row.names = LETTERS[1:n])
etsp <- ETSP(x)
etsp

## use some methods
n_of_cities(etsp)
labels(etsp)

## plot ETSP and solution
tour <- solve_TSP(etsp)
tour

plot(etsp, tour, tour_col = "red")

# plot with custom labels
plot(etsp, tour, tour_col = "red", labels = FALSE)
text(etsp, paste("City", rownames(etsp)), pos = 1)

mhahsler/TSP documentation built on April 24, 2024, 10:05 p.m.