You are on page 1of 2

Exercises on Maximum flow problems

Lê Xuân Thanh
lxthanh@math.ac.vn

Exercise 1. Solve the maximum flow problem shown in Figure 1 using augment-
ing path algorithm (the number besides each arc represents the arc capacity).
Specify the residual network before each augmentation.
1
2 4

2 2

1 1 2 1 6
s t
2 1
1
3 5

Figure 1: Network for Exercise 1.

Exercise 2. Given a bipartite graph G. A subgraph of M of G is called a


matching if any two edges of M are not incident to a common vertex. A maximum
cardinality matching of G is a matching with as many edges as possible. Transform
the problem of finding a maximum cardinality matching in the bipartite graph G
into a maximum flow problem.

Exercise 3. Given a bipartite graph G = (V, E) in which each vertex v ∈ V has


an associated weight c(v) ∈ R+ . A vertex cover of G is a subset C of V such that
every edge in G has at least one vertex in C. The weight of a vertex cover C of
G is the total weight of the vertices in C. Transform the problem of finding a
minimum weight vertex cover of G into a maximum flow problem.

Exercise 4. This exercise shows an application of max-flow problem in scheduling


on uniform parallel machines. Consider the problem of scheduling a set J of jobs
on M uniform parallel machines. Each job j ∈ J has

• a processing time pj (denoting the number of days required to complete the


job),

1
2

• a release date rj (representing the beginning of the day when this job be-
comes available for processing), and

• a due date dj ≥ rj + pj (representing the beginning of the day by which the


job must be completed).

We assume that

• a machine can work on only one job at a time, and

• each job can be processed by at most one machine at a time.

However, we allow preemptions (i.e., we can interrupt a job and process it on


different machines on different days). The scheduling problem is to determine a
feasible schedule that completes all jobs before their due dates or to show that
no such schedule exists.
Formulate the scheduling problem described in Table 1 with M = 3 machines
as a maximum flow problem.

Job(j) 1 2 3 4
Processing time (pj ) 1.5 1.25 2.1 3.6
Release date (rj ) 3 1 3 5
Due date (dj ) 5 4 7 9

Table 1: Parameters for scheduling problem in Exercise 4.

You might also like