Teaching Integer Programming Formulations Using the Traveling Salesman Problem
read more
Citations
An optimization approach for scheduling wine grape harvest operations
Path Planning of Data Mules in Sensor Networks
Universal peptide vaccines - optimal peptide vaccine design based on viral sequence conservation.
Multi-depot vehicle routing problem: a comparative study of alternative formulations
Scheduling healthcare services in a home healthcare system
References
Integer programming
Integer Programming Formulation of Traveling Salesman Problems
The Traveling Salesman Problem: A Guided Tour of Combinatorial Optimization
An analytical comparison of different formulations of the travelling sales man problem
Classification of travelling salesman problem formulations
Related Papers (5)
Integer Programming Formulation of Traveling Salesman Problems
Solution of a Large-Scale Traveling-Salesman Problem
Frequently Asked Questions (11)
Q2. What is the main component of all commercial IP solvers?
The main component of all commercial IP solvers is a branch-and-bound algorithm that uses the linear programming (LP) relaxation of an IP (i.e., the problem obtained from an IP by discarding the integrality constraints).
Q3. How many lines of code does the TSP use?
It utilizes a primitive “cutting plane algorithm” of about 60 lines of MATLAB code that, used with a commercial IP solver, allows students to do the comparison and solve real world instances with up to 70 nodes to optimality.
Q4. How many MB of memory was used to solve the symmetric IP?
The authors used the CPLEX 6.5 IP solver run from within the AMPL modeling language, with default branching strategy and a memory limit of 150 MB, on a 337 MHz machine running Sun Solaris.
Q5. What is the important skill that a practitioner of integer programming must acquire?
One of the most important skills that a practitioner of integer programming must acquire is that of designing a strong formulation for a particular problem.
Q6. What is the common form of asymmetric IP?
(Symmetric TSPs are usually formulated on an undirected graph using edge-variables; however, with these variables the MTZ formulation has no compact size variant; see [8].)
Q7. How many TSP instances did the authors use to solve?
The authors used the following “cutting plane algorithm” to solve several TSP instances to optimality, with maxrounds an integer between 0 and 2, depending on how much the authors wanted to strengthen the MTZ formulation.
Q8. What is the way to solve a problem?
• a larger problem is not necessarily harder: a small instance, as br17 can be surprisingly hard using the weak formulation; with 1 round of subtour constraints added, the optimal solution is a tour, even without the arc-constraints.
Q9. What are some of the techniques that can be used to strengthen weak formulations?
Such techniques include disaggregation (i.e., replacing the constraint ∑m i=1 xi ≤ my on the 0–1 variables xi and y with the inequalities xi ≤ y (i = 1, . . . ,m)), generating many of the inequalities that one would add to the knapsack, and lot-sizing problems (e.g., covers, and flow-covers).
Q10. What is the arc constraint in the MTZ?
The advantages of the MTZ formulation are• its small size (we need only n extra variables and roughly n2/2 extra constraints), • if it is preferable to visit, say, city i early in the tour, one can easily model this by adding a term −αui with some α > 0 to the objective.
Q11. What is the other way to exclude subtours?
The other way to exclude subtours is by adding to (2.1) the family of subtour (or subtour elimination) constraints∑ i∈S,j∈S xij ≤ |S| − 1 (S V, |S| > 1),(2.3)to obtain the subtour formulation of the TSP consisting of (2.1) and (2.3).