You are on page 1of 17

Multiple Traveling Salesman Problem (mTSP)

By

Kaviti.Keshav.Kumar (Roll No.2009051) Supervisor: Dr. Sunil Agrawal

Electronics and Communication Engineering

INDIAN INSTITUTE OF INFORMATION TECHNOLOGY, DESIGN AND MANUFACTURING JABALPUR (5/16/2012 to 5/31/2012)

1. Introduction

The last decades have seen an increasing utilization of optimization packages, based on Operations Research and Mathematical Programming techniques, for the effective management of the provision of goods and services in distribution systems.

The success of the utilization of Operations Research techniques is due to the development of computer systems,from both the hardware and the software points of view, and due to the increasing integration of information systems into the productive and commercial processes

So I opted to work on The multiple traveling salesman problem (mTSP) which is a generalization of the well-known traveling salesman problem (TSP), where more than one salesman is allowed to be used in the solution. Moreover, the characteristics of the mTSP seem more appropriate for real-life applications, and it is also possible to extend the problem to a wide variety of vehicle routing problems (VRPs) by incorporating some additional side constraints. 1.1Problem Defitnition The travelling salesman problem (TSP) is an NP-hard problem used in combinatorial optimization studied in operations research. Given a list of cities and their pair wise distances, the task is to find the shortest possible route that visits each city exactly once and returns to the origin city. A generalization of the well-known traveling salesman problem (TSP) is the multiple traveling salesman problem (mTSP), which consists of determining a set of routes for m salesmen who all start from and turn back to a home city (depot). Although the TSP has received a great deal of attention, the research on the mTSP is limited.

1.3 Aim The main objective of any traveling salesman problem is ultimately to reduce cost or distance in reaching from one city to another city. Initially following problems have to be solved : 1. Finding optimized solution through linear programming models. 2. Subtour Elimination using various models. . 1.4 Scope of the work: There are various variants of the Travelling Sales Man problem available some of which are as follows: Single vs. multiple depots: In the single depot case, all salesmen start from and end their tours at a single point. On the other hand, if there exist multiple depots with a number of salesman located at each, the salesmen can either return to their original depot after completing their tour or return to any depot with the restriction that the initial number of salesmen at each depot remains the same after all the travel. Time windows:
In this variation, certain nodes need to be visited in specific time periods, named as time windows. This is an important extension of the mTSP and referred to as the multiple traveling salesman problem with time windows (mTSPTW). The mTSPTW has immediate applications in school bus, ship and airline scheduling problems

Capacity Constraint: The vehicles used in this kind of TSP have limited carrying capacity of the goods that must be delivered as is always the case in real world.

Back haul and line haul:


TSP with backhauls is the extension of the TSP in which the customer set is partitioned into two subsets. The first subset, L contains n linehaul customers, each requiring a given quantity of to be delivered. The second subset, B, contains m backhaul customers, where a given quantity of inbound product must be picked up.

Customers are numbered so that L={1,.,n} and B={n+1,..,n+m}.

Pick up and delivery: TSP with pickup and delivery, each customer I is associated with two quantities di and pi, representing the demand of homogenous commodities to be delivered and picked up at customer i respectively.

Other special restrictions: These restrictions may consist of bounds on the number of nodes each salesman visits, the maximum or minimum distance a salesman travels or other special constraints.

Applications0 The models and algorithms proposed for the solution of TSP problems can be used effectively not only for the solution of problems concerning the delivery or collection of goods but for the solution of different real-world applications arising in transportation systems as well. 0Typical applications of this type are, for instance, solid waste collection, street cleaning, school bus routing, dial-a-ride systems, transportation of handicapped persons, routing of salespeople, and of maintenance units. 0It can be effectively used in various kinds of Print Scheduling, Work force planning, Transportation planning, Mission planning, production planning, satellite systems. .

2. Report on the Present Investigation/Progress


We tried to develop thorough knowledge on these topics by referring to the material available in various books and research papers as mentioned below: 2.1 We have studied several topics from a book on Operations Research by Hamdy A. Taha 0Two variable (Linear Programming) LP model It includes finding of optimal solution through graphical analysis for a two variable model and then extending it to a an n variable model where a computational solution is attained through a software. 0The simplex methodRather than enumerating all the basic solutions (corner points) of the LP problem, the simplex method investigates only a select few of these solutions. 0Dual simplex methodThe dual simplex starts with an objective function that satisfies already the optimality conditions, and an unfeasible solution. The aim being, iteration after iteration, to get the solution feasible. 0Sensitivity analysisLP model a snap shot of a real situation in which model parameters assume static values. To enhance the applicability of LP we need to add a dynamic dimension that investigates the impact of making changes in model parameters( objective & constraint coefficients) on optimal solution, which is sensitivity analysis . 0Integer Linear ProgrammingAn integer programming problem is a mathematical optimization or feasibility program in which some or all of the variables are restricted to be integers. Also, sometimes referred to as mixed integer programming when not all but only certain variables used in the problem are declared to be integers.

2.2 Research paper by G. Dantzig, R Fulkerson, and S Johnson on SOLUTION OF A LARGE SCALE TRAVELING-SALESMAN PROBLEM

This paper introduced the cutting plane method as means of attacking the travelling salesman problem; this method has been applied to broad class of problems in combinatorial optimization and integer programming. In this paper we discuss an implementation of Dantzigs method that is suitable for TSP instances having 49 or more cities. Our aim is to use the study of the TSP as a step towards understanding the applicability and limits of the general cutting-plane method in large scale applications. Whenever the road from I to J (in that order) is traveled, the value x',j = l is entered into the I,J element of a matrix; otherwise Xij=O is entered. A (directed) tour through n cities can now be thought of as a permutation matrix of order n which represents an ncycle.

The matrix may be made into a triangular array by reflecting the numbers above the diagonal in the diagonal. The sum of corresponding elements is denoted by Xij = Xjj + Xj ,.

Using above mentioned conditions which form the base of the research paper the problems given in the research paper were understood and solved giving a great info into the manner in which routing of multiple nodes must be handled.

23 Went through the research paper Green logistics at Eroski: A case study to understand the sub tour elimination methods and techniques. Understood the significance of line haul and back haul methods through this paper

24 I have implemented certain basic optimization problems through Microsoft Excel using Excel solver following the detailed steps illustrated in the book Operations Research by Hamdy A. Taha . 0Understood the way various parameters must be input using for the software to understand. 0I went through the analysis part given in the book and understood the affect of variation of various parameters would have on the objective function.

2.5 Learnt implementation of basic optimization problems in AMPL 0Learnt the coding techniques required for dealing with the software. 0Learnt, identification of errors, enhancement of constraints to obtain the desired solution. 0Implemented various real world problems using AMPL

3.

Results and Discussions:

Significant problems implemented through AMPL along with their results obtained. Problem implemented : Let PaintB represent the gallons of blue paint we will make, and PaintG represent the gallons of gold paint we will make. Then the problem is formulated as the following LP: Objective finction:max 10PaintB + 15PaintG Subject to following constraints: s.t. : (1/40)PaintB + (1/30)PaintG _ 40 0 < PaintB < 1000 0 < PaintG < 860. Results obtained by solving the above problem using AMPL software. PaintB = 453.333 PaintG = 860

I implemented the same above problem using sets by declaring a paint of particular kind to belong to a set. The following result was then obtained

paint [*] := blue 453.333 gold 860

I implemented a problem in which there are certain ware houses with fixed supply and customers with fixed demand. Also, total supply equals total demand
A table containing transportation cost from a given ware house to a particular customer per

unit material is given as follows: Cust 1 1 1 2 Cust. 2 3 4 2 Cust. 3 Cust. 4

Warehouse1 Warehouse 2 Warehouse 3

1 3 2

2 5 2

the supply of blue paint at each of the warehouses is: Warehouse 1 250 Warehouse 2 800 Warehouse 3 760 The demand at each customer is: Customer 1: 300 Customer 2: 320 Customer 3: 800 Customer 4: 390 We need to determine the amount of material to be distributed from each ware house to each customer so that total cost is minimised.

Results obtained: amount := 1 1 250 12 0 13 0 14 0 21 0 22 0 2 3 800 24 0 3 1 50 3 2 320 33 0 3 4 390


In the above results the column I represents all the warehouses and column II represents all the Customer nodes.

Same problem when implemented with sets the following results were obtained amount := 0akland Ace 0akland Home_Depot 0akland K_mart 0akland Wal_mart Albany Ace Albany Home_Depot Albany K_mart Albany Wal_mart San_Jose Ace San_Jose Home_Depot San_Jose K_mart San_Jose Wal_mart 0 0 0 800 0 250 0 0 390 50 32 0 0

In the above results the column I represents all the warehouses and column II represents all the Customer nodes.

0A small variant of above problem was implemented in which the total available supply now exceeds total demand. Also, the company has to pay a fixed cost for opening a warehouse which is as follows The supply capacity of paint at each of the warehouses is: Warehouse 1 550 Warehouse 2 1100 Warehouse 3 1060 The cost of opening each of the warehouses is: Warehouse 1 500 Warehouse 2 500 Warehouse 3 500

10

Results obtained with the modified constraints are as follows: amount := 11 0 12 0 13 0 14 0 21 0 22 0 2 3 800 24 0 3 1 300 3 2 320 33 0 3 4 390 In the above results the column I represents all the warehouses and column II represents all the Customer nodes.

0 I solved another complex problem of routing in which distances between 15 nodes were randomly taken and an optimum path having minimum total distance to be travelled from the source node through all the other nodes back to it was achieved.

The symmetric distance matrix is as follows 1 2 3 4 5 6 7 8 9 10

1 2 3 4 5 6
7 8 51
9

0 2 0 0 0 0 0
0 0
0

86

49

57

31

69

50

21 23 34 21 54 76 32 43 74 89
31 0
6

14 1 1 67 21 43 87 9 34 51 5 4
73

15:= 12 23 46 12 23 65 32 468 9 46 52 82 24 98 63 45 62 62

13

35 33 63 34 56 8
42 45
12

6 79 93 24 0 5 3 21 45 0 7 72 0 16 9 22 31 42 5 0 0 0 4 1 23 34 56 0 0 0 0 86 59 34 45 0 0 0 0 0 81 35 76
0 0
0 0

0 0
0

0 0
0

0 0
0 0

0 0
0

0 0

7 53
34 40

23

45

11 12 13 14 15

0 0 0 0 0

10 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 98 0 00 00 00

45 0 45 0 0 7 0 0 0 0

343 53 8 9 53 0 97 0 70 0;0

40 2 3
98

45

11

The formulation consisting of the MillerTuckerZemlin (MTZ) was used for subtour elimination which is as follows:

subject to NoSubtour1 {(i,j) in Links: i<>j and i>=2 and j>=2}: u[i] - u[j] + N*x[i,j] <= N - 1;

subject to NoSubtour2 {i in Nodes: i >= 2}: u[i] <= N - 1 - (N - 2)*x[1,i];

subject to NoSubtour3 {i in Nodes: i >= 2}: u[i] >= 1 + (N - 2)*x[i,1];

The variable ui are arbitrary real numbers, but can be ranked to nonnegative integers, representing the sequence the nodes, being visited.

This was solved using Cplex solver in Ampl which solves using the branch & bound cuts Result obtained is as follows:
x [*,*] : 1 2 1 3 4 5 6 7 8 9 10 11 12 13 14 15 ;

1 . 0 0 0 0 0 0 0 0 0 0 0 0 0

2 0

3 0 . 0 0 . 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

4 0 0 0 . 0 0 0 1 0 0 0 0 0 0 0

5 0 0 0 0 . 1 0 0 0 0 0 0 0 0 0

6 0 0 0 0 0

7 0 0 0 0 0 . 0 1 . 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0

8 0 0 0 0 0 0 0 . 1 0 0 0 0 0 0

9 1 0 0 0 0 0 0 0 0 0 0 0 0 0

10 0 0 0 0 0 0 0 0 . 0 . 1 0 0 0 0

11 0 0 0 0 0 0 0 0 0 0

12 0 0 0 0 0 0 0 0 0 0 . 0 1 . 0 1 0 0 0 0

13 0 0 0 0 0 0 0 0 0 0 0 0

14 0 0 1 0 0 0 0 0 0 0 0 0 . 0 0 . 1 0

15 0 0 0 0 0 0 0 0 0 0 0 0 0 1 .

:=

Also when checked for lesser number of nodes like 4,5,6 the above formulation worked perfectly fine and gave the global optimum result without formation of any subtour.

12

4. Conclusions:
0 The initial chapters in the book Operations Research by Hamdy A. Taha helped me understand the basics related to Linear programming and integer linear programming. I could visualize how integer programming can be used to optimize and enhance our day to day activities and provide a definite solution to real world problems. 0Going through the research paper by G. Dantzig, R Fulkerson, and S Johnson on SOLUTION OF A LARGE SCALE TRAVELING-SALESMAN PROBLEM I understood how routing problems are to be formulated mathematically using matrices and how various constraints are to be formulated to obtain shortest path without formation of a sub tour in the solution. 0After solving problems through Ampl and Excel solver I can confidently conclude that AMPL software is much better poised to handle problems of large size and greater complexity and is a good one to solve many real world problems. 0While attempting to solve problems relating to routing, an essential part of mTSP the main obstacle is to avoid the formation of any kind of sub tour. I have been able to implement the method proposed by MillerTuckerZemlin (MTZ) and am keen to work with more algorithms for this purpose so that results can be compared and a better one can be selected. 0Presently I have worked on TSP problems i.e. I have only worked on problems involving a single sales man. I intend to extend the work to multiple sales persons and various variants associated with it. 0I intend to read and implement papers involving Line haul and back haul conditions to get an idea of its implementation. 0I have as of now used branch and bound method in AMPL to find solution to various optimization problems. I intend to use branch and cut and also branch and price algos and compare the results to find the better algo in terms of various parameters like global optimal solution, time complexity etc.

13

PDF to Word

You might also like