Skip to main content Accessibility help
  • Print publication year: 2011
  • Online publication date: January 2013

3 - Network Flow Problem


The network flow problem is to determine the optimal way to route flows through a network to meet certain supply, demand, and capacity constraints. It represents a fundamental class of optimization problems with numerous applications in operations research (see Ahuja, Orlin, and Magnanti 1993). They play, as the reader will see, an important role in the analysis of mechanisms when preferences are quasilinear. Hence, the inclusion of this chapter in the book.

Network flow problems also arise in other areas of economic theory, where their appearance, unfortunately, goes unremarked. For example, the assignment model in Shapley and Shubik (1972) and the model of substitutable preferences in Milgrom (2009) are both instances of network flow problems.


A graph is a collection of two objects. The first is a finite set V = {1, …, n} whose elements are called nodes. The second is a set E of (unordered) pairs of nodes called edges. As an example, suppose V = {1, 2, 3, 4} and E = {(1, 2), (2, 3), (1, 3), (3, 4)}. A pictorial representation of this graph is shown in Figure 3.1.

A graph is called complete if E consists of every pair of nodes in V. The end points of an edge eE are the two nodes i and j that define that edge. In this case, we write e = (i, j).