![](https://csdnimg.cn/release/download_crawler_static/10717387/bg10.jpg)
Sec. 1.1 Graphs and Flows 3
matical formulations and practical examples of network optimization mod-
els. Finally, in Section 1.3, we give an overview of some of the types of
computational algorithms that we develop in subsequent chapters.
1.1 GRAPHS AND FLOWS
In this section, we introduce some of the basic definitions relating to graphs,
paths, flows, and other related notions. Graph concepts are fairly intuitive,
and can be understood in terms of suggestive figures, but often involve
hidden subtleties. Thus the reader may wish to revisit the present section
and pay close attention to some of the fine points of the definitions.
A directed graph, G =(N, A), consists of a set N of nodes and a set
A of pairs of distinct nodes from N called arcs. The numbers of nodes and
arcs are denoted by N and A, respectively, and it is assumed throughout
that 1 ≤ N<∞ and 0 ≤ A<∞. An arc (i, j) is viewed as an ordered
pair, and is to be distinguished from the pair (j, i). If (i, j) is an arc, we
say that (i, j)isoutgoing from node i and incoming to node j; we also say
that j is an outward neighbor of i and that i is an inward neighbor of j.We
say that arc (i, j)isincident to i and to j, and that i is the start node and
j is the end node of the arc. We also say that i and j are the end nodes of
arc (i, j). The degree of a node i is the number of arcs that are incident to
i. A graph is said to be complete if it contains all possible arcs; that is, if
there exists an arc for each ordered pair of nodes.
We do not exclude the possibility that there is a separate arc connect-
ing a pair of nodes in each of the two directions. However, we do not allow
more than one arc between a pair of nodes in the same direction, so that we
can refer unambiguously to the arc with start i and end j as arc (i, j). This
is done for notational convenience.† Our analysis can be simply extended
to handle multiple arcs with start i and end j; the extension is based on
modifying the graph by introducing for each such arc, an additional node,
call it n, together with the two arcs (i, n) and (n, j). On occasion, we will
pause to provide examples of this type of extension.
We note that much of the literature of graph theory distinguishes
between directed graphs where an arc (i, j) is an ordered pair to be distin-
guished from arc (j, i), and undirected graphs where an arc is associated
with a pair of nodes regardless of order. One may use directed graphs, even
in contexts where the use of undirected graphs would be appropriate and
conceptually simpler. For this, one may need to replace an undirected arc
(i, j) with two directed arcs (i, j) and (j, i) having identical characteristics.
† Some authors use a single symbol, such as a, to denote an arc, and use
something like s(a) and e(a) to denote the start and end nodes of a, respectively.
This notational method allows the existence of multiple arcs with the same start
and end nodes, but is also more cumbersome and less suggestive.