The Traveling Salesman Problem
In this chapter we concentrate on one specic N P -hard combinatorial optimization problem: the traveling salesman problem (TSP). We discuss the complexity, an ILP-formulation,
a branch and bound algoritm
Routing and Loading
Vehicle Routing Problem
We consider the distribution problem in which vehicles based on a central facility (depot)
are required to visit - during a given time period - geographically dispersed customers in
order to fulll known
Scheduling is about the optimal planning of processing of a number of jobs through a
number of machines. Such a planning is called a schedule and is a precise description of
when which job is processed by which machine. Often th
Scheduling Independent Tasks
Approximation algorithms are algorithms that produce a feasible solution for some optimization problem that is not necessarily optimal. Of course the performance of an approximation algorithm i
Exercises Scheduling Independent Tasks
1. Apply the discussed approximation algorithms to the following instance of SIT (2):
29, 28, 27, 26, 23, 20, 17, 13, 7, 7, 3.
2. Prove that the optimization problem SIT(m) is trivial with optimal value C for
Exercises Section 9
1. Give as good as possible an upperbound for the complexity of the following two
algorithms in terms of the size N of the input.
a. Johnsons algorithm for the n/2/F/Cmax scheduling problem.
b. The dynamic programming algorithm for a k
Exercises week 10
1. Consider the scheduling problem n/1/nT : Given ready times r1 , . . . , rn , due dates
d1 , . . . , dn , processing times p1 , . . . , pn and an integer k , does there exist a schedule
for which at most k jobs are tardy? Show that thi
Algorithms and Complexity
The minimum spanning tree problem (MST) can be solved by exhaustively examining all
spanning trees and choosing the best. Since there are nn2 spanning trees in the complete
graph with n nodes, the time requirem
Exercises Section 7
1. Consider a 3/4/G/B -scheduling problem. For each job the table below gives the
orders in which the machines are used.
Verify if the following schedule is feasible.
2. Show that
Polynomial reductions and N P -completeness
Our main objective in the rst sections has been the development of ecient algorithms
for the solutions of combinatorial optimization problems of various sorts. We accepted the
thesis that it
Exercises Section 6
1. Solve the following knapsack problem
with knapsack capacity 8, by use of dynamic
2. Give an ILP formulation of the knapsack problem given below with knapsack capacity 17. Solve the
Exercises Section 5
1. Consider the following ILP problem. Maximize x2 subject to
2kx1 + x2 2k,
2kx1 + x2 0,
x1 , x2 Z .
a. Show that multiplying the inequalities with 2k 1 and 2k + 1 leads to a cutting
plane x1 + x2 k 1 of the LP relaxation.
b. Take k
Solution Algorithms for ILP
A Cutting-Plane Algorithm
We saw that some integer linear programming problems (namely those that have a matrix that is totally unimodular) are not harder than the corresponding LP-problem (its
LP-relaxation) because all
Exercises Section 4
1. Given a network (V, A) with weights on the nodes. Describe the problem of nding
a closure with maximum weight as an ILP (integer linear programming) problem.
2. Show that the following LP problem has an integral optimal solution.
Exercises Section 2
1. Consider the network (= directed graph) below. Numbers indicate the capacities
of the links (= arcs). The thick links all carry a ow of size 1, and on all other
links the ow has size 0. (So the value of the ow equals 2.) Increase th
Exercises Section 3
1. Consider the directed graph given below (Attention: not all arcs point from left to
right.) Numbers proceeded by a $-sign indicate the costs, and the other numbers
give the capacities of the corresponding arcs.
a. Use one of the tre
Exercises Section 1
1. Given a complete graph with vertex set cfw_A, B, C, D, E, F and the following weights
on the edges.
A 0 6 9 11 5 9
D 11 6 3 0 5 6
a. Determine a minimum spanning tree with Kruskals algorithm.
The Knapsack Problem
In this chapter we discuss the knapsack problem to illustrate the Branch and Bound algorithm
of the previous chapter and to introduce the technique of Dynamic Programming. The Knapsack Problem is usually dene
In this section we discuss ow-shop problems of type n/m/F/Fmax with all ready times
equal to 0. We remind the reader that for m 3 there exists an optimal permutation
schedule and for m = 2 Johnsons algorithm solves
LP and ILP
Consider again the problem of nding a maximum ow f in a digraph D = (V, A) with
arc capacities c(a), a source r and a sink s. This can be formulated as:
f (r, i)
i f (i, x)
f (x, j ) = 0 for all x V
Trees and paths
Minimum spanning trees
Consider an undirected graph (V, E ) with n nodes, for which every edge e E has a
weight w (e) R (also called length or cost ). The problem is to nd a spanning tree of
(V, E ) such that the total weight of th
Flows and cuts
Consider a directed graph D = (V, A) (also called digraph or network) with two distinguished nodes r and s, called source and sink respectively. Each arc a A has a given
capacity c(a) > 0. A ow from r to s (also called
Flows; costs and demands
Given a directed graph D = (V, A) with capacities, a source r and a sink s. Suppose
that for each arc a A there are costs k (a) for one unit of ow f (a) on a. So the total
cost of (r, s)-ow f are aA f (a)k (a). The pro
Exercises Flow-shop Problems
1. Prove that n/3/F/Fmax n/4/F/Fmax .
2. Consider the 4/3/F/Fmax problem with the following processing times:
M1 M2 M3
(a) Determine approximations for the optimal solution using the algorit