1 / 16

Analysis of the Traveling Salesman Problem and current approaches for solving it . Rishi B. Jethwa and Mayank Agarwal. CSE Department. University of Texas at Arlington. Table of Contents. Introduction. Naïve and simple approaches. Approaches using Dynamic Programming.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Analysis of the Traveling Salesman Problem and current approaches for solving it.Rishi B. Jethwa and Mayank Agarwal.CSE Department.University of Texas at Arlington.

• Introduction.

• Naïve and simple approaches.

• Approaches using Dynamic Programming.

• Approaches using Neural Network and Genetics.

• Approaches using Parallel Branch and Bound Technique.

Traveling Salesman Problem approaches for solving it

Given N points, find the shortest circular path that links all the points together. The constraint on TSP is that the first and the last point the tour should be same and the edges cannot be repeated. Vertices can be repeated.

No polynomial solution exists for this type of problems which has alas combinatory solutions.

So we are interested in mainly good solutions, not exact.

A naïve approach.. approaches for solving it

• Suppose you are given with n points and you start with first point for second possibility you are left with n-1 options then n-2 and so on.

• Hence there are altogether !(n-1)/2 different paths i.e. 0.5 * !(n-1) in APL notations.

• For n = 36, there are 10*38 different paths.

Other simple approaches. approaches for solving it

Nearest Neighbour.

Start at an arbitrary point and successively visit the nearest unvisited point. After all the points have been visited, return to the start point.

Other simple approaches. approaches for solving it

Minimum Spanning Tree.

Construct the minimum spanning tree of the point set and duplicate all the links on the tree. Sequence the points as the would appear in a traversal of the doubled tree. Pass through the sequence and remove all representations after the first of each point.

Other simple approaches. approaches for solving it

Strip.

Partition the square into sqrroot N/3 vertical strips. Sequence the points in the each strip by the vertical position , alternately top-to-bottom and bottom-to-top, and visit the strips from left to right. At last return to the starting point.

Spacefilling Approach approaches for solving it

• The approach goes like this. Have a square that has all the point inside. bisect it into two triangle, name it 0 and 1. Then again bisect each into two triangle and name them for 0, 00 and 01 and for 1, 10 and 11. Continue this partition and name each partition accordingly. At last traverse the small triangle for points in them.

Comparisons approaches for solving it

Diamond Method to solve TSP problems. approaches for solving it

• Consider a big-diamond APL symbol, divide it into 4 parts.

• Approximately 1/4 points are located at each of the four quadrants. Apply the TSP to each of the four quadrants. A catenation of these four sub paths produces a path with no loop, which is what we wanted.

Dynamic Programming treatment. approaches for solving it

• Apart from the vertices it also defines d(i,j) be the distance between ith and jth vertices.

• Then the final answer would be:

f(i;j1, j2, ....,jk) = min as long as 1 <= m <= k {d(i,jm) + f(i;j1, j2, ..,jm-1,jm+1,..,jk}

• first we get f(i; j1, j2) then f(i; j1, j2, j3) so on until we get f(i; j1, j2.....jn).

• The running time is reduced to n2 2n-1 and the space requirement is 6 times that of Striling’s formula i.e.

22m / sqrt(3.14 *m).

Dynamic Programming treatment. approaches for solving it

• The GTSP is linked to the fact that it is a combination of two problems.

• Once a vertex is chosen, we must choose which cluster to visit first and then which vertex to visit first. Once the cluster path is determined, we are confronted to the minimum cycle path problem.

• This paper proposes the genetic algorithm for choosing a path. Here sequence of chromosomes represents a path.

The Self-Organizing Neural Network (SONN) approaches for solving it

• The SONN is arranged with M neurons and if each neuron has N-1 dimensional weight vector.

• SONN will exhibit non-convergence in case when M=N. This paper proposed a new density function that guarantees the convergence even when M=N.

• Also for a problem with N cities original SONN requires 2N neurons but this approach requires only N neurons.

Parallel approaches for solving itBranch and Bound Technique.

• Uses parallel computers to solve large randomly generated ATSP.

• The principle components of the algorithm are as follows:

i) Lower Bounding Technique:- To find the lower bounds for the parallel ATSP algorithm by solving the assignment problem.

ii) Upper Bounding Heuristic:- Use the solution to the assignment problem to construct a solution to the ATSP.

iii) Branching rules:- Create two or more new sub-problems based on an assignment problem solution.

• This algorithm is capable of using tens to hundreds of processors depending on the problem size and difficulty.

Parallel approaches for solving itBranch and Bound Technique.

• Edward discusses the issues surrounding implementation of a particular branch and bound algorithm for the TSP on a hypercube multi-computer.

• This paper uses the Best-First Search technique for branching implementation.

• TSP is one of the very few fully asynchronous applications that have been written on hypercube thus far.

THANKS. approaches for solving it