DongChul Kim_ HwangRyol Ryu - Traveling Salesman Problem

Document Sample
DongChul Kim_ HwangRyol Ryu - Traveling Salesman Problem Powered By Docstoc
					Traveling Salesman Problem

                   DongChul Kim
                  HwangRyol Ryu

   Research Goal

   What you will learn …
What Is TSP?

   Shortest Hamiltonian cycle (i.e. tour).
   Grow exponentially
   Current Definition of TSP:
    Given a number of cities and the costs of
    traveling from one to the other, what is the
    cheapest round trip route that visits each city
    and then returns to the starting city?
History of TSP

   Irish mathematician Sir William Rowan
    Hamilton and the British mathematician
    Thomas Penyngton Kirkman

                Hamilton’s Iconsian game
History of TSP (1)

   The general form of TSP appeared in 1930s
    by Karl Menger in Vienna and Havard.
   A breakthrough by George Dantzig, Ray
    Fulkerson, and Selmer Johnson in1954.
   49 - 120 – 550 - 2,392 - 7,397 – 19,509 cities
   From year 1954 to year 2001.
   24,098 cities by David Applegate, Robert
    Bixby, Vasek Chvatal, William Cook, and
    Keld Helsgaun in May 2004.
Branch & Lower Bound

   An algorithmic technique to find the optimal
    solution by keeping the best solution found so
   Standard to measure performance of TSP
2.0 TSP Approximation Algorithm

   Double Minimum Spanning Tree
   Return a tour of length at most twice the shortest
   Algorithm:
    1. Construct the minimal spanning tree
    2. Duplicate all its edges. This gives us an Euler
    3. Traverse the cycle, but do not visit any node
    more than once, taking shortcuts when it passes a
    visited node.
2.0 TSP Approximation Algorithm (2)

   2.0? TSP
   2.0 is TSP version number?
   Tour of length is at most twice the length of

    MST < Euler Cycle = 2 * MST <= 2.0 TSP
1.5 TSP Approximation Algorithm
(Known as Christofides Heuristics)
   Professor Nicos Christofides extended the 2.0 TSP
    and published that the worst-case ratio of the
    extended algorithm was 3/2.
   Algorithm:
    1. Compute MST graph T.
    2. Compute a minimum-weighted matching graph M.
    3. Combine T and M as edge set and Compute an
    Euler Cycle.
    4. Traverse each vertex taking shortcuts to avoid
    visited nodes.
1.5 TSP Approximation Algorithm (2)
(Known as Christofides Heuristics)

   What is a Minimum-weighted Matching?
    It creates a MWM on a set of the nodes
    having an odd degree.
   Why odd degree?
    Property of Euler Cycle
   Why 1.5 TSP?
    MST < Euler Cycle = MWM+MST <= 1.5 TSP
    (MWM = ½ MST)
1.5 TSP Approximation Algorithm (3)
(Known as Christofides Heuristics)

   Minimum-weighted Matching example

                                     MWM = ½ MST
Matching Algorithm
   Smile Matching Algorithm
     Bad matching

       Better matching

   Fixed Bad matching problem.
Matching Algorithm (2)

   Improved Smile Matching Algorithm

                    1. Choose the two nodes in the farthest
Matching Algorithm (3)

   Improved Smile Matching Algorithm

                    2. Each end node is connected to the node in
                        the closest distance.
PTAS Algorithm
(Polynomial Time Approximation Scheme)
   The status of Euclidean TSP remained open.
   PTAS = Polynomial time algorithm, for each
    c > 1, can approximate the problem within a
    factor 1 + 1/c.
PTAS Algorithm (2)

   The central idea of the PTAS is that the plane
    can be recursively partitioned and by using a
    dynamic programming on Quadtree, it finds
    an optimal tour.
Other approximation schemes

   Minimum Steiner Tree
   K-TSP and K-MST
   Min Cost Perfect Matching

Shared By: