Tsp#

class Tsp(graph)[source]#

Bases: GraphOptimizationApplication

Optimization application for the "traveling salesman problem" [1] based on a NetworkX graph.

References

[1]: "Travelling salesman problem", https://en.wikipedia.org/wiki/Travelling_salesman_problem

প্যারামিটার:

graph (Graph | ndarray | List) -- A graph representing a problem. It can be specified directly as a NetworkX graph, or as an array or list format suitable to build out a NetworkX graph.

Attributes

graph#

Getter of the graph

রিটার্নস:

A graph for a problem

Methods

static create_random_instance(n, low=0, high=100, seed=None)[source]#

Create a random instance of the traveling salesman problem

প্যারামিটার:
  • n (int) -- the number of nodes.

  • low (int) -- The minimum value for the coordinate of a node.

  • high (int) -- The maximum value for the coordinate of a node.

  • seed (int) -- the seed for the random coordinates.

রিটার্নস:

A Tsp instance created from the input information

রিটার্ন টাইপ:

Tsp

draw(result=None, pos=None)#

Draw a graph with the result. When the result is None, draw an original graph without colors.

প্যারামিটার:
interpret(result)[source]#

Interpret a result as a list of node indices

প্যারামিটার:

result (OptimizationResult | ndarray) -- The calculated result of the problem

রিটার্নস:

A list of nodes whose indices correspond to its order in a prospective cycle.

রিটার্ন টাইপ:

List[int | List[int]]

static parse_tsplib_format(filename)[source]#

Read a graph in TSPLIB format from file and return a Tsp instance.

প্যারামিটার:

filename (str) -- the name of the file.

রেইজেস:
রিটার্নস:

A Tsp instance data.

রিটার্ন টাইপ:

Tsp

static sample_most_likely(state_vector)#

Compute the most likely binary string from state vector.

প্যারামিটার:

state_vector (QuasiDistribution | Statevector | ndarray | Dict) -- state vector or counts or quasi-probabilities.

রিটার্নস:

binary string as numpy.ndarray of ints.

রেইজেস:

ValueError -- if state_vector is not QuasiDistribution, Statevector, np.ndarray, or dict.

রিটার্ন টাইপ:

ndarray

to_quadratic_program()[source]#

Convert a traveling salesman problem instance into a QuadraticProgram

রিটার্নস:

The QuadraticProgram created from the traveling salesman problem instance.

রিটার্ন টাইপ:

QuadraticProgram

static tsp_value(z, adj_matrix)[source]#

Compute the TSP value of a solution. :param z: list of cities. :param adj_matrix: adjacency matrix.

রিটার্নস:

value of the total length

রিটার্ন টাইপ:

float