1 Introduction

This chapter sets the stage for the remaining chapters of the book. The main goal of in this chapter is to introduce problems and models that involve design decisions captured with arc-based binary variables. These variables represent building an infrastructure (e.g., roadways or railbeds) or establishing a transportation service (such as a bus or railway line, along with its schedule). Associated with these decisions are fixed costs that appear in the objective function or in constraints, typically then to represent budget limitations. While this chapter focuses on problems and models for fixed-charge network design, the next two chapters deal with exact and heuristic algorithms for solving such problems.

A fundamental distinction in network design problems is whether the demand can be represented as one commodity (possibly with multiple origins and multiple destinations) or as multiple commodities that need to be differentiated. The underlying problems that represent the transportation decisions, once the design decisions are taken, are significantly different in terms of their complexity and size, even though both can be cast as network flow problems. This chapter follows this fundamental distinction, with Sect. 2 dedicated to single-commodity formulations and Sect. 3 to multicommodity formulations.

Another important characteristic of network design problems is whether or not there are capacities. Indeed, the presence of capacities greatly complicates the task of finding feasible solutions. This is true especially in the multicommodity case, when capacities bind commodities together. We also consider the cost structure as another significant feature of network design problems, since the presence of fixed design costs and variable transportation costs in the objective function introduces complex trade-offs that further complicate the identification of optimal solutions.

In addition to the problems’ features, we identify in this chapter a few basic modeling approaches for network design. First, while the transportation decisions are typically represented with arc flow variables, it is also possible to use path flow variables, which introduces models with an exponential number of variables that can be handled with column generation algorithms (see Chap. 3). Such path-based formulations can be of interest for computational reasons, but also for modeling purposes, since they permit representing path-dependent costs that are not additive by arc. Second, when transportation costs are ignored, flow variables can be projected out. In the single-commodity case, we can then exploit the max-flow-min-cut theorem to derive inequalities that are easy to generate within cutting-plane algorithms. Although these inequalities do not suffice in the multicommodity case, they are still useful, as will be seen in Chap. 3.

2 Single-Commodity Formulations

Let \(\mathcal {G} =(\mathcal {N},\mathcal {A})\) be a directed graph, where \(\mathcal {N}\) is the set of nodes and \(\mathcal {A} \subseteq \mathcal {N}\times \mathcal {N}\) is the set of potential arcs (in some situations, parallel arcs might be allowed and might even simplify the models, see, e.g., Chap. 6). A limited flow capacity u ij > 0 is associated with each arc \((i, j) \in \mathcal {A}\). The network design problem consists of selecting a subset of arcs from \(\mathcal {A}\) to satisfy a given demand at minimum total cost.

The demand to satisfy is defined at the nodes of the graph, which are partitioned into three subsets: \(\mathcal {N}^o\), the set of origin (source) nodes, \(\mathcal {N}^d\), the set of destination (sink) nodes, and \(\mathcal {N}^t\), the set of transshipment (intermediate) nodes. Each origin \(i\in \mathcal {N}^o\) has a supply (availability) w i > 0 of the given commodity, each destination \(i\in \mathcal {N}^d\) has a demand (request) w i < 0 of the same commodity, while each transshipment node \(i\in \mathcal {N}^t\) has neither availability nor request, i.e., w i = 0. The net supply across any set \(\mathcal {S} \subseteq \mathcal {N}\) is defined as \(W(\mathcal {S})\equiv \sum _{i\in \mathcal {S}} w_i\). We assume that demand is balanced, i.e., \(W(\mathcal {N}) = 0\). Standard network flow transformations (adding a dummy origin or a dummy destination) might be applied when this is not the case. For instance, if \(W(\mathcal {N}) > 0\), we add a dummy destination j, with demand -\(W(\mathcal {N})\), that is connected to every origin i by an arc (i, j) of capacity \(W(\mathcal {N})\) and arbitrarily large fixed cost.

The total cost of satisfying the demand consists of the sum of the costs to select the arcs to be included in the final design and the transportation costs to move the flow. For each potential arc \((i,j) \in \mathcal {A}\), let f ij ≥ 0 be the fixed design cost charged whenever the arc is selected for inclusion in the optimal design, and c ij ≥ 0 the unit transportation cost.

We introduce binary design variables y ij, \((i,j) \in \mathcal {A}\), indicating if arc (i, j) is included (open, y ij = 1) or not (closed, y ij = 0) in the final design, and continuous flow variables x ij ≥ 0, \((i,j) \in \mathcal {A}\), equal to the amount of flow on each arc. The mathematical formulation of the single-commodity capacitated fixed-charge network design problem (SCFND) can then be written as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \mathrm{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} \left( {f_{ij}} {y_{ij}} + c_{ij} {x_{ij}} \right) \end{array} \end{aligned} $$
(2.1)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \text{Subject to} \ \ & \sum_{j \in \mathcal{N}^{+}_i} {x_{ij}} - \sum_{j \in \mathcal{N}^{-}_i} {x_{ji}} = {w_i}, &\displaystyle \ \forall \, i \in \mathcal{N}, {} \end{array} \end{aligned} $$
(2.2)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}} \leq {u_{ij}} {y_{ij}}, &\displaystyle \ \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.3)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}} \geq 0 , &\displaystyle \ \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.4)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {y_{ij}} \in \{0,1\} , &\displaystyle \ \forall \, (i,j) \in \mathcal{A}, {} \end{array} \end{aligned} $$
(2.5)

where, for each \(i\in \mathcal {N}\), we define

$$\displaystyle \begin{aligned} \mathcal{N}^{+}_i = \{ j \in \mathcal{N} : (i, j) \in \mathcal{A} \}, \quad \mathcal{N}^{-}_i = \{ j \in \mathcal{N} : (j, i) \in \mathcal{A} \}. \end{aligned}$$

The objective function (2.1) minimizes the total cost computed as the sum of the total fixed cost for arcs included in the optimal design and the total transportation cost for the commodity. Constraints (2.2) enforce flow conservation at nodes, while constraints (2.3) are the so-called linking constraints guaranteeing that flows use open arcs only and are less than the corresponding arc capacities.

Some variants of the problem include a budget constraint on any one of the main cost terms, design or transportation, the most common being a design budget constraint

$$\displaystyle \begin{aligned} \sum_{(i,j) \in \mathcal{A}} {f_{ij}} {y_{ij}} \leq B, \end{aligned} $$
(2.6)

where B > 0 is the global design budget. When such a constraint is added, the corresponding fixed cost term in the objective function is typically removed, which yields the single-commodity capacitated budget network design problem (SCBND).

Model (2.1)–(2.5) is also known as the arc-based formulation. An equivalent path-based formulation can be derived by using the fact that the arc flows can be decomposed into a finite set of path flows, each path connecting an origin to a destination. Note that there always exists an optimal solution with no flows on directed cycles, since all costs are nonnegative. For this reason, unless otherwise stated, we assume that all paths are elementary (without any directed cycle) and simply use the term “path” to designate an elementary path. Let \(\mathcal {P}\) be the set of paths, each path \(p\in \mathcal {P}\) connecting an origin to a destination, and h p ≥ 0 the amount of flow on path \(p \in \mathcal {P}\). The path-based formulation of the SCFND can then be written as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} {f_{ij}} {y_{ij}} + \sum_{p\in \mathcal{P}} e_p {h_p} \end{array} \end{aligned} $$
(2.7)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \text{Subject to} \ \ & \sum_{j \in \mathcal{N}^{+}_i} \sum_{p\in \mathcal{P}} \delta_{ij}^p {h_p} = |w_i|, &\displaystyle \ \forall \, i \in \mathcal{N}^o, {} \end{array} \end{aligned} $$
(2.8)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \ \ & \sum_{j \in \mathcal{N}^{-}_i} \sum_{p\in \mathcal{P}} \delta_{ji}^p {h_p} = |w_i|, &\displaystyle \ \forall \, i \in \mathcal{N}^d, {} \end{array} \end{aligned} $$
(2.9)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & \sum_{p\in \mathcal{P}} {\delta_{ij}^p} {h_p} \leq {u_{ij}} {y_{ij}}, &\displaystyle \ \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.10)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {h_p} \geq 0 , &\displaystyle \ \forall \, p\in \mathcal{P}, {} \end{array} \end{aligned} $$
(2.11)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {y_{ij}} \in \{0,1\} , &\displaystyle \ \forall \, (i,j) \in \mathcal{A}, {} \end{array} \end{aligned} $$
(2.12)

where \({\delta _{ij}^p}\) is the constant that indicates whether (i.e., \({\delta _{ij}^p} = 1\)) or not (i.e., \({\delta _{ij}^p} = 0\)) arc \((i,j)\in \mathcal {A}\) belongs to path \(p\in \mathcal {P}\) and \(e_p = \sum _{(i,j) \in \mathcal {A}} {\delta _{ij}^p} c_{ij}\), \(\forall \, p\in \mathcal {P}\). Note that \({x_{ij}} = \sum _{p\in \mathcal {P}} \delta _{ij}^p {h_p} , \forall \, (i,j) \in \mathcal {A}\). In addition, it is worth to mention that the number of paths is exponential in the size of the graph, but that any solution expressed in terms of the arc flow variables x ij can be decomposed into a small number of paths (at most \(|\mathcal {N}|+|\mathcal {A}|\)) in polynomial time.

It is interesting to note that the LP relaxation of both the arc-based and the path-based models reduces to a minimum cost network flow problem with transportation costs equal to c ij + f iju ij on each arc \((i,j)\in \mathcal {A}\). Indeed, when replacing the integrality constraints (2.5) by \({y_{ij}} \in [0,1], \forall \, (i,j) \in \mathcal {A}\), the y ij variables can be projected out, since f ij ≥ 0 implies that there exists an optimal solution such that the linking constraints (2.3) are satisfied at equality, i.e., \({y_{ij}} = {x_{ij}}/{u_{ij}}, \forall \, (i,j) \in \mathcal {A}\). Using these equations to project out the y ij variables, we then obtain the following arc-based minimum cost network flow model:

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} \left( c_{ij} + {f_{ij}}/{u_{ij}} \right) {x_{ij}} \end{array} \end{aligned} $$
(2.13)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \mbox{Subject to} \ \ & \sum_{j \in \mathcal{N}^{+}_i} {x_{ij}} - \sum_{j \in \mathcal{N}^{-}_i} {x_{ji}} = {w_i}, &\displaystyle \ \forall \, i \in \mathcal{N}, {} \end{array} \end{aligned} $$
(2.14)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & 0\leq {x_{ij}} \leq {u_{ij}}, &\displaystyle \ \forall \, (i,j) \in \mathcal{A} . {} \end{array} \end{aligned} $$
(2.15)

In the remainder of Sect. 2, we discuss three special cases of the SCFND: the case where there are no transportation costs, for which we present an equivalent cut-set-based formulation in Sect. 2.1; the case where there are no capacities, the single-commodity uncapacitated fixed-charge network design problem (SUFND), presented in Sect. 2.2; and the case of a bipartite graph, the fixed-charge transportation problem (FCTP), described in Sect. 2.3.

2.1 Cut-Set-Based Formulation

A cut is a partition of \(\mathcal {N}\) into two subsets \(\mathcal {S}\) and \(\overline {\mathcal {S}} \equiv \mathcal {N}\setminus \mathcal {S}\) such that the net supply across \(\mathcal {S}\) is positive, i.e., \(W(\mathcal {S}) > 0\) (note that this condition implies that at least one destination is not in \(\mathcal {S}\), i.e., \(\mathcal {N}^d\cap \overline {\mathcal {S}} \neq \emptyset \)). A cut-set\((\mathcal {S},\overline {\mathcal {S}})\) is the subset of arcs induced by the cut, i.e., \((\mathcal {S},\overline {\mathcal {S}}) = \{(i,j)\in \mathcal {A} : i\in \mathcal {S}, j\in \overline {\mathcal {S}}\}\). The max-flow-min-cut theorem guarantees the existence of a feasible solution to the SCFNDif and only if the (exponentially many) cut-set-based inequalities (2.16) are satisfied,

$$\displaystyle \begin{aligned} \sum_{(i,j)\in (\mathcal{S},\overline{\mathcal{S}})} {u_{ij}} {y_{ij}} \geq W(\mathcal{S}), \ \forall \mathcal{S} \subset \mathcal{N}, \, W(\mathcal{S})>0.\end{aligned} $$
(2.16)

When we consider the special case of the SCFND where c ij = 0 for any arc \((i,j)\in \mathcal {A}\), we can project out the x ij variables and obtain an equivalent cut-set-based formulation

$$\displaystyle \begin{aligned} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} {f_{ij}} {y_{ij}}\end{aligned} $$
(2.17)

subject to (2.16) and (2.5).

Obviously, when there are strictly positive transportation costs on some of the arcs, we cannot project out the x ij variables by using only the cut-set-based inequalities. In that case, we would have to exploit LP duality to derive additional valid inequalities affecting the global transportation cost \(v=\sum _{(i,j)\in \mathcal {A}} c_{ij} {x_{ij}}\), as in the celebrated Benders decomposition method (see the details of such an approach in Chap. 3).

2.2 The Uncapacitated Variant of the Problem

A particular case of the SCFND is obtained when there are no arc capacities on the flows. Since the flow on any arc is bounded by \(W(\mathcal {N}^o)\), we can then formulate the problem in the same way as the arc-based formulation of the SCFND by replacing u ij by \(W(\mathcal {N}^o)\) on every arc \((i,j)\in \mathcal {A}\). The cut-set-based inequalities (2.16) then reduce to the following connectivity inequalities:

$$\displaystyle \begin{aligned} \sum_{(i,j)\in (\mathcal{S},\overline{\mathcal{S}})} {y_{ij}} \geq 1, \ \forall \mathcal{S} \subset \mathcal{N}, \, W(\mathcal{S})>0. \end{aligned} $$
(2.18)

The structure of any feasible solution to the SUFND corresponds to a directed forest that contains directed trees rooted at each origin. In particular, when there is only one origin and no transportation costs, the problem reduces to the \(\mathcal {N}\mathcal {P}\)-hard directed Steiner tree problem, where the terminals correspond to the destinations.

2.3 Fixed-Charge Transportation Problem

The fixed-charge transportation problem (FCTP) is the special case of the SUFND where the graph is bipartite, i.e., \(\mathcal {N} = \mathcal {N}^o \cup \mathcal {N}^d\) and \(\mathcal {A} \subseteq \mathcal {N}^o\times \mathcal {N}^d\). Because of the particular structure of the graph, the amount of flow on any arc \((i,j)\in \mathcal {A}\) is bounded by \({u_{ij}} = \min \{|{w_i}|,|w_j|\}\). The arc-based formulation of the FCTP can then be written as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} \left( {f_{ij}} {y_{ij}} + c_{ij} {x_{ij}} \right) \end{array} \end{aligned} $$
(2.19)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \text{Subject to} \ \ & \sum_{j \in \mathcal{N}^{+}_i} {x_{ij}} = |{w_i}|, &\displaystyle \ \forall \, i \in \mathcal{N}^o, {} \end{array} \end{aligned} $$
(2.20)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \ \ & \sum_{j \in \mathcal{N}^{-}_i} {x_{ji}} = |{w_i}|, &\displaystyle \ \forall \, i \in \mathcal{N}^d, {} \end{array} \end{aligned} $$
(2.21)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}} \leq {u_{ij}} {y_{ij}}, &\displaystyle \ \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.22)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}} \geq 0 , &\displaystyle \ \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.23)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {y_{ij}} \in \{0,1\} , &\displaystyle \ \forall \, (i,j) \in \mathcal{A}. {} \end{array} \end{aligned} $$
(2.24)

Since any path \(p\in \mathcal {P}\) between an origin \(i\in \mathcal {N}^o\) and a destination \(j\in \mathcal {N}^d\) corresponds to an arc \((i,j)\in \mathcal {A}\), the arc-based and path-based formulations for the FCTP are exactly the same. Although the FCTP might appear to be a relatively restrictive special case of the SCFND, it is possible, through network flow transformations, to reformulate any SCFND on graph \(\mathcal {G} =(\mathcal {N},\mathcal {A})\) as an FCTP, by associating each arc \((i,j) \in \mathcal {A}\) with an origin of supply u ij and each node \(i\in \mathcal {N}\) with a destination of demand \(w_i - \sum _{l\in \mathcal {N}^{+}_i} u_{il}\). In the resulting bipartite graph, we introduce two outgoing arcs associated with each origin \((i,j) \in \mathcal {A}\): one arc incident to destination \(i\in \mathcal {N}\) with all costs equal to 0 and one arc incident to destination \(j\in \mathcal {N}\) with design cost equal to f ij and transportation cost equal to c ij. Hence, any algorithm to solve the FCTP could be used to solve the SCFND, although at the expense of a significant increase in the instance size, since the number of nodes and the number of arcs in an FCTP reformulation of the SCFND are, respectively, \(|\mathcal {N}| + |\mathcal {A}|\) and \(2\times |\mathcal {A}|\).

3 Multicommodity Formulations

In this section, we consider network design problems for which several commodities, represented by set \(\mathcal {K}\), share the same directed graph \(\mathcal {G} =(\mathcal {N},\mathcal {A})\). The demand to satisfy for any commodity \(k\in \mathcal {K}\) is defined at each node \(i\in \mathcal {N}\) and is denoted as \(w_i^k\). We discuss below how to represent the demand for each commodity. For now, we simply assume that the demand is balanced for each commodity \(k\in \mathcal {K}\), i.e., \(\sum _{i\in \mathcal {N}} w_i^k = 0\). The total flow of all commodities on any arc \((i,j)\in \mathcal {A}\) is limited by the capacity u ij > 0. We wish to minimize the sum of the costs to select the arcs to be included in the design and the transportation costs to move the flow of all commodities, where for each arc \((i,j) \in \mathcal {A}\), f ij ≥ 0 is the fixed design cost charged whenever the arc is included in the optimal design, and \({c_{ij}^k} \geq 0\) is the unit transportation cost for commodity \(k\in \mathcal {K}\).

Using binary design variables y ij, \((i,j) \in \mathcal {A}\), as in the single-commodity case, and continuous multicommodity flow variables \({x_{ij}^k} \geq 0\), \((i,j) \in \mathcal {A}, k\in \mathcal {K}\), the arc-based model for the multicommodity capacitated fixed-charge network design problem (MCFND) can then be written as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} {f_{ij}} {y_{ij}} + \sum_{k \in \mathcal{K}} \sum_{(i,j) \in \mathcal{A}} {c_{ij}^k} {x_{ij}^k} \end{array} \end{aligned} $$
(2.25)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \text{Subject to} \ \ & \sum_{j \in \mathcal{N}^{+}_i} {x_{ij}^k} - \sum_{j \in \mathcal{N}^{-}_i} {x_{ji}^k} = w_i^k, &\displaystyle \ \forall \, i \in \mathcal{N}, \forall \, k \in \mathcal{K}, {} \end{array} \end{aligned} $$
(2.26)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & \sum_{k \in \mathcal{K}} {x_{ij}^k} \leq {u_{ij}} {y_{ij}}, &\displaystyle \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.27)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}^k} \geq 0 , &\displaystyle \forall \, (i,j) \in \mathcal{A} , \, \forall \, k \in \mathcal{K}, {}\qquad \quad \end{array} \end{aligned} $$
(2.28)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {y_{ij}} \in \{0,1\} , &\displaystyle \ \forall \,(i,j) \in \mathcal{A}. {} \end{array} \end{aligned} $$
(2.29)

The objective function (2.25) minimizes the total cost computed as the sum of the total fixed cost for arcs included in the optimal design and the total transportation cost for commodities. Constraints (2.26) correspond to flow conservation equations for each node and each commodity. Relations (2.27) represent capacity constraints for each arc. These are also linking constraints, linking together flow and design variables by forbidding any flow to pass through an arc that is not chosen as part of the design. Note that it is easy to include commodity-dependent capacities \(u_{ij}^k\), \((i,j) \in \mathcal {A}, k\in \mathcal {K}\), although we do not consider this case here. One could then simply add the constraints

$$\displaystyle \begin{aligned} {x_{ij}^k} \leq u_{ij}^k , \ \forall \, (i,j) \in \mathcal{A} , \, \forall \, k \in \mathcal{K}, \end{aligned} $$
(2.30)

or, even better,

$$\displaystyle \begin{aligned} {x_{ij}^k} \leq u_{ij}^k {y_{ij}}, \ \forall \, (i,j) \in \mathcal{A} , \, \forall \, k \in \mathcal{K}. \end{aligned} $$
(2.31)

Below, we comment further on these two different ways of modeling commodity-dependent capacities.

Although this appears to be a special case, we define a commodity as an origin-destination (OD) pair (O(k), D(k)) with a demand d k > 0 to satisfy between \({O(k)}\in \mathcal {N}\) and \({D(k)}\in \mathcal {N}\), in which case we have

$$\displaystyle \begin{aligned} w_i^k = \left\{ \begin{array}{rl} {d^k} ,& \mbox{if} \; i = {O(k)}, \\ - {d^k} ,& \mbox{if} \; i = {D(k)}, \\ 0 , & \mbox{otherwise}. \\ \end{array} \right. \end{aligned}$$

Note that we can always represent a commodity as an OD pair, even when there are several products (physical goods, information or people), each with many origins and many destinations. First, for each product, we introduce a super-origin connected to each origin for the product. Each super-origin has a supply equal to the total supply for the corresponding product. Each arc (i, j) from the super-origin has no costs and a capacity equal to the supply at j. Thus, we obtain a new, larger, graph where each commodity has one origin, but many destinations. At this stage, there are two possible ways to obtain a network in which every commodity corresponds to an OD pair. The first approach is to introduce super-destinations, in the same way as the super-origins, which further increases the size of the graph. The second approach can be used when there are no destination-dependent data (for instance, when there are no commodity-dependent capacities and when transportation costs do not depend on destinations). This approach keeps the size of the graph constant, but increases the number of commodities by simply introducing a commodity for each pair between a super-origin and a destination, with a demand equal to the demand at that destination. Any of these techniques has an implication on the size of the corresponding models and, hence, on the solution methods. We further discuss these issues in several chapters, but for the remainder of the book, unless otherwise stated, we assume that a commodity is defined as an OD pair.

The path-based formulation for the MCFND uses this equivalence between a commodity and an OD pair. To derive this model, we introduce \(\mathcal {P}^{k}\), the set of paths between O(k) and D(k) for each \(k\in \mathcal {K}\) and \({h_p^k} \geq 0\), the amount of flow on path \(p\in \mathcal {P}^{k}, k\in \mathcal {K}\). The path-based model for the MCFND is then written as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} {f_{ij}} {y_{ij}} + \sum_{k\in \mathcal{K}} \sum_{p\in \mathcal{P}^{k}} e_p^k {h_p^k} \end{array} \end{aligned} $$
(2.32)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \text{Subject to} \ \ & \sum_{p\in \mathcal{P}^{k}} {h_p^k} ={d^k} , &\displaystyle \ \forall \, k \in \mathcal{K}, {} \end{array} \end{aligned} $$
(2.33)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & \sum_{k\in \mathcal{K}}\sum_{p\in \mathcal{P}^{k}} {\delta_{ij}^p} {h_p^k} \leq {u_{ij}} {y_{ij}}, &\displaystyle \ \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.34)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {h_p^k} \geq 0 , &\displaystyle \ \forall \, k\in \mathcal{K}, \forall \, p\in \mathcal{P}^{k}, {} \end{array} \end{aligned} $$
(2.35)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {y_{ij}} \in \{0,1\} , &\displaystyle \ \forall \, (i,j) \in \mathcal{A}, {} \end{array} \end{aligned} $$
(2.36)

where \({\delta _{ij}^p}\) indicates whether (i.e., \({\delta _{ij}^p} = 1\)) or not (i.e., \({\delta _{ij}^p} = 0\)) arc \((i,j)\in \mathcal {A}\) belongs to path \(p\in \cup _{k\in \mathcal {K}} \mathcal {P}^{k}\) and \(e_p^k = \sum _{(i,j) \in \mathcal {A}}{\delta _{ij}^p} {c_{ij}^k}\), \(\forall \, k\in \mathcal {K}, \, \forall \, p\in \mathcal {P}^{k}\). Thus, \({x_{ij}^k} = \sum _{p\in \mathcal {P}^{k}} {\delta _{ij}^p} {h_p^k} , \ \forall \, (i,j) \in \mathcal {A}, \, \forall \, k\in \mathcal {K}\).

An important variant of the MCFND is the case with unsplittable (or non-bifurcated) flows, where a single path between O(k) and D(k) must be used for each commodity \(k\in \mathcal {K}\). We can easily modify both the path-based and the arc-based formulations to model this additional requirement. For the path-based formulation, we define a binary variable \(H_p^k\) that assumes value 1, if path \(p\in \mathcal {P}^{k}\) is used for commodity \(k\in \mathcal {K}\), and value 0, otherwise. We then have the equations \({h_p^k} = d^k H_p^k\), \(\forall \, k\in \mathcal {K}, \forall \, p\in \mathcal {P}^{k}\), allowing us to project out variables \({h_p^k}\), leaving a model that has only binary variables. For the arc-based formulation, we introduce a binary variable \(X_{ij}^k\) that takes value 1, if arc \((i,j)\in \mathcal {A}\) belongs to the path between O(k) and D(k) for commodity \(k\in \mathcal {K}\), and value 0, otherwise. Similarly, we use the equations \({x_{ij}^k} = d^k X_{ij}^k\), \(\forall \, (i,j)\in \mathcal {A}, \forall \, k\in \mathcal {K}\), to project our variables \({x_{ij}^k}\) and end up with a model that has only binary variables.

For both the arc-based and the path-based formulations, the LP relaxation reduces to a minimum cost multicommodity network flow problem with transportation costs per commodity \(k\in \mathcal {K}\) equal to \({c_{ij}^k} + {f_{ij}}/{u_{ij}}\) on each arc \((i,j)\in \mathcal {A}\). Indeed, using the same argument as in the single-commodity case, the continuous y ij variables can be projected out, since there is always an optimal solution that satisfies the linking constraints (2.27) at equality, i.e., \({y_{ij}} = \sum _{k \in \mathcal {K}} {x_{ij}^k}/{u_{ij}}, \forall \, (i,j) \in \mathcal {A}\), which yields the following arc-based minimum cost multicommodity network flow model:

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \text{Minimize} \ \ \sum_{k \in \mathcal{K}} \sum_{(i,j) \in \mathcal{A}} \left ({c_{ij}^k} + {f_{ij}}/{u_{ij}} \right) {x_{ij}^k} \end{array} \end{aligned} $$
(2.37)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \text{Subject to} \ \ & \sum_{j \in \mathcal{N}^{+}_i} {x_{ij}^k} - \sum_{j \in \mathcal{N}^{-}_i} {x_{ji}^k} = w_i^k, &\displaystyle \ \forall \, i \in \mathcal{N}, \forall \, k \in \mathcal{K}, {} \end{array} \end{aligned} $$
(2.38)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & \sum_{k \in \mathcal{K}} {x_{ij}^k} \leq {u_{ij}}, &\displaystyle \forall \, (i,j) \in \mathcal{A} , {} \end{array} \end{aligned} $$
(2.39)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}^k} \geq 0 , &\displaystyle \forall \, (i,j) \in \mathcal{A} , \, \forall \, k \in \mathcal{K}. {} \end{array} \end{aligned} $$
(2.40)

The LP relaxation lower bound is generally far from the optimal value, hence the name weak relaxation to qualify it. A tighter lower bound is obtained by adding the following valid inequalities to the arc-based model

$$\displaystyle \begin{aligned} {x_{ij}^k} \leq {b_{ij}^k} {y_{ij}}, \, \forall \, (i,j) \in \mathcal{A} , \, \forall \, k \in \mathcal{K}, \end{aligned} $$
(2.41)

where \({b_{ij}^k}\) is an upper bound on the amount of flow of commodity \(k\in \mathcal {K}\) on arc \((i,j)\in \mathcal {A}\), for instance \({b_{ij}^k} = \min \{{u_{ij}},{d^k}\}\) (or \({b_{ij}^k} = u_{ij}^k\), if there is a commodity-dependent capacity \(u_{ij}^k < \min \{{u_{ij}},{d^k}\}\)). These inequalities are called strong linking constraints and the corresponding LP relaxation the strong relaxation. It is easy to see that there exists an optimal solution to this LP relaxation such that \({y_{ij}} = \max \{ \max _{k\in \mathcal {K}} \{{x_{ij}^k}/{b_{ij}^k}\}, \sum _{k \in \mathcal {K}} {x_{ij}^k}/{u_{ij}}\}, \forall \, (i,j) \in \mathcal {A}\). Obviously, projecting out the continuous y ij variables by using these equations would yield a non-linear programming problem. Instead, most solution methods for the strong relaxation leave the y ij variables in the formulation. Because the number of strong linking constraints is typically large for reasonably sized instances, solving the strong relaxation can be quite challenging. Chapter 3 reviews several methods to solve the strong relaxation.

In Sect. 3.1, we study the special case where there are no capacities, the multicommodity uncapacitated fixed-charge network design problem (MUFND). Then, Sect. 3.2 presents the generalization of the cut-set-based inequalities for multicommodity fixed-charge network design problems.

3.1 The Uncapacitated Variant of the Problem

When there are no arc capacities on the multicommodity flows, we can formulate the resulting MUFND by replacing u ij with \(\sum _{k\in \mathcal {K}} {d^k}\) on every arc \((i,j)\in \mathcal {A}\). In addition, the strong linking constraints (2.41) can then be simplified by replacing \({b_{ij}^k}\) with d k, for any arc \((i,j)\in \mathcal {A}\) and any commodity \(k\in \mathcal {K}\). It is then trivial to observe that the linking constraints (2.27) are implied by the strong linking constraints (2.41), since (2.27) are obtained by aggregating (2.41) over \(\mathcal {K}\).

This discussion illustrates the choice between two formulations: the aggregated model, which does not include the strong linking constraints (2.41), and the disaggregated model, where the linking constraints (2.27) are replaced by the strong ones. Our discussion above on the quality of the LP relaxation bounds for the MCFND also applies to the MUFND: the aggregated model yields a weak LP relaxation bound, while the LP relaxation of the disaggregated formulation is significantly stronger.

To summarize, the disaggregated model for the MUFND can be stated as

$$\displaystyle \begin{aligned} \begin{array}{rcl} {} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} {f_{ij}} {y_{ij}} + \sum_{k \in \mathcal{K}} \sum_{(i,j) \in \mathcal{A}} {c_{ij}^k} {x_{ij}^k} \end{array} \end{aligned} $$
(2.42)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \text{Subject to} \ \ & \sum_{j \in \mathcal{N}^{+}_i} {x_{ij}^k} - \sum_{j \in \mathcal{N}^{-}_i} {x_{ji}^k} = w_i^k, &\displaystyle \ \forall \, i \in \mathcal{N}, \forall \, k \in \mathcal{K}, {} \end{array} \end{aligned} $$
(2.43)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}^k} \leq {d^k} {y_{ij}}, &\displaystyle \forall \, (i,j) \in \mathcal{A} , \, \forall \, k \in \mathcal{K}, {} \end{array} \end{aligned} $$
(2.44)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {x_{ij}^k} \geq 0 , &\displaystyle \forall \, (i,j) \in \mathcal{A} , \, \forall \, k \in \mathcal{K}, {} \end{array} \end{aligned} $$
(2.45)
$$\displaystyle \begin{aligned} \begin{array}{rcl} & {y_{ij}} \in \{0,1\} , &\displaystyle \ \forall \,(i,j) \in \mathcal{A}. {} \end{array} \end{aligned} $$
(2.46)

It is worth noting that, once the y ij variables are fixed, the resulting subproblem decomposes into \(|\mathcal {K}|\) shortest path subproblems, i.e., it consists in finding the shortest path between O(k) and D(k) for each commodity \(k\in \mathcal {K}\), which is easy since the transportation costs are nonnegative. As a consequence, there exists an optimal solution to the MUFND where a single path is used between O(k) and D(k) for each commodity \(k\in \mathcal {K}\), i.e., the flows are unsplittable. By contrast, for the MCFND, the subproblem obtained after fixing the y ij variables is a minimum cost multicommodity network flow problem, which is significantly more difficult, even though it is a linear program. In particular, there are MCNFD instances for which all optimal solutions incur splittable flows, i.e., several paths are used to satisfy the demand d k for some commodity \(k\in \mathcal {K}\).

3.2 Cut-Set-Based Inequalities

It is easy to generalize cut-set-based inequalities for the MCFND. Using the same definitions and notations as in Sect. 2.1, we derive the following valid inequalities from Eqs. (2.26) and capacity constraints (2.27):

$$\displaystyle \begin{aligned} \sum_{(i,j)\in (\mathcal{S},\overline{\mathcal{S}})} {u_{ij}} {y_{ij}} \geq \sum_{k\in \mathcal{K}(\mathcal{S},\overline{\mathcal{S}})}d^k, \ \forall \mathcal{S} \subset \mathcal{N}, \, \mathcal{S}\neq \emptyset, \end{aligned} $$
(2.47)

where \(\mathcal {K}(\mathcal {S},\overline {\mathcal {S}}) = \{k\in \mathcal {K} : {O(k)} \in \mathcal {S},\, {D(k)} \in \overline {\mathcal {S}}\}\). By combining flow conservation equations (2.26) with strong linking constraints (2.41), we can derive the following commodity-dependent cut-set-based inequalities

$$\displaystyle \begin{aligned} \sum_{(i,j)\in (\mathcal{S},\overline{\mathcal{S}})} {b_{ij}^k} {y_{ij}} \geq d^k, \ \forall \mathcal{S} \subset \mathcal{N}, \,\forall \, k\in \mathcal{K}, \, {O(k)} \in \mathcal{S}, \, {D(k)} \in \overline{\mathcal{S}}.\end{aligned} $$
(2.48)

Contrary to the SCFND for which (2.16) are not only necessary (valid), but also sufficient to characterize any feasible solution, cut-set-based inequalities (2.47) and (2.48) do not characterize feasible solutions to the MCFND. Consequently, even if there are no transportation costs, we cannot obtain a reformulation in the space of the y ij variables by using only the cut-set-based inequalities (2.47) and (2.48). To derive such a reformulation, we would have to use Benders feasibility cuts, a topic covered in Chap. 3.

For the MUFND, inequalities (2.48) reduce to the following connectivity inequalities, which imply cut-set-based inequalities (2.47):

$$\displaystyle \begin{aligned} \sum_{(i,j)\in (\mathcal{S},\overline{\mathcal{S}})} {y_{ij}} \geq 1, \ \forall \mathcal{S} \subset \mathcal{N}, \, \forall \, k\in \mathcal{K}, \, {O(k)} \in \mathcal{S}, \, {D(k)} \in \overline{\mathcal{S}}. \end{aligned} $$
(2.49)

For the MUFND with no transportation costs, i.e., \({c_{ij}^k} = 0\) for any arc \((i,j)\in \mathcal {A}\) and any commodity \(k\in \mathcal {K}\), these connectivity inequalities define a reformulation of the problem obtained by projecting out the \({x_{ij}^k}\) variables, the cut-set-based formulation:

$$\displaystyle \begin{aligned} \text{Minimize} \ \ \sum_{(i,j) \in \mathcal{A}} {f_{ij}} {y_{ij}} \end{aligned} $$
(2.50)

subject to (2.46) and (2.49). This observation illustrates another significant difference between the MCFND and the MUFND: while cut-set-based inequalities (2.49) characterize feasible solutions to the MUFND, feasible solutions to the MCFND cannot be completely characterized by cut-set-based inequalities (2.47) and (2.48).

4 Bibliographical Notes

The study of fixed-charge problems (with an underlying general LP structure) originated from the work of Hirsch and Dantzig (1968), first published as a technical report in 1954. To the best of our knowledge, the first article that presents a special case of single-commodity fixed-charge network design problem is Balinski (1961), where the FCTP is introduced. The arc-based formulation of the problem is described and it is shown that the LP relaxation reduces to a linear transportation problem with costs c ij + f iju ij on each arc \((i,j)\in \mathcal {A}\). A similar result applies to the SCFND, as we have seen in Sect. 2.

In 1961, also appeared one of the first studies on multicommodity network design, due to Gomory and Hu (1961). In the problem considered in that paper, there are several commodities, each commodity \(k\in \mathcal {K}\) having a demand d k to be routed between the origin O(k) and the destination D(k), and we wish to decide how many units of capacity y ij to install on each edge of an undirected network, so as to minimize the cost of installing the capacities, where each unit of capacity installed on edge (i, j) incurs a cost f ij. This problem can be modeled with general integer variables y ij, rather than binary variables, and cut-set-based inequalities can be used to represent the set of feasible solutions. Generalizations of this problem are studied in Chaps. 5 and 6.

Following the seminal papers of Balinski (1961) and Gomory and Hu (1961), the research on network design has been fruitful during the next 25 years. The early efforts of the research community are synthesized in the survey papers of Magnanti and Wong (1984) and Minoux (1989). The first paper formalizes the MUFND, showing that it generalizes well-known problems, such as the shortest path problem, the traveling salesman problem and the Steiner tree problem. The second paper emphasizes the importance of piecewise linear costs in network design applications (see Chap. 6). Both papers include significant reviews on algorithms for the multicommodity uncapacitated budget network design problem (MUBND).

Most papers on single-commodity network design have focused on the FCTP, which is not surprising, given that the SCFND can be reformulated as an FCTP (Malek-Zavarei and Frisch 1972). We review the papers on the FCTP in Chaps. 3 and 4. Notable exceptions are the works on the directed Steiner tree problem and its generalization, the SUFND. On the first problem, we mention the seminal work of Wong (1984), which proposes both a multicommodity flow model (each destination is identified as a commodity) and a cut-set-based formulation, showing that the two LP relaxations are equivalent. Similar results are obtained for other network design problems defined over trees (Magnanti and Wolsey 1995). On the SUFND with a single origin, it is worth mentioning the work of Rardin and Wolsey (1993), showing that a multicommodity reformulation of the problem, where each destination corresponds to a commodity, has the same LP relaxation as the one obtained from the single-commodity model by adding so-called dicut collection inequalities, which involve both the design variables and the single-commodity flow variables.

Following the early research on the MUBND, subsequent works on the MUFND can be found in Balakrishan (1987) on the path-based model and in Balakrishnan et al. (1989) on the arc-based model. On the MCFND and its generalization where each commodity has several origins and several destinations, early research (Rardin and Choe 1979; Gendron and Crainic 1994) has focused on disaggregated formulations and the impact of strong linking inequalities on the quality of the LP relaxation. Balakrishnan et al. (1997) presents an annotated bibliography that contains most references on network design that appeared since 1961. In Chaps. 3 and 4, we review many other references on the MUFND and on the MCFND.

5 Conclusions and Perspectives

This introductory chapter has presented basic fixed-charge network design problems and formulations. It has allowed us to identify fundamental distinctions between problems and models, which we further explore in the next chapters. In particular, we have seen significant differences between single-commodity and multicommodity formulations. Indeed, when the design variables are fixed or when their integrality is relaxed, the SCFND has an underlying single-commodity minimum cost network flow problem, for which many efficient specialized algorithms exist, while the MCFND displays a multicommodity minimum cost network flow problem, which is significantly more difficult, although it is a linear program. Also, when there are no transportation costs, the SCFND can be formulated with cut-set-based inequalities, by virtue of the max-flow-min-cut theorem, while cut-set-based inequalities are necessary, but not sufficient, to model the MCFND with no transportation costs. We have also emphasized important differences between uncapacitated and capacitated problems. For both the SUFND and the MUFND, connectivity inequalities are necessary and sufficient to characterize feasible solutions. Clearly, these inequalities are proper subsets of the cut-set-based inequalities for the SCFND and the MCFND, and therefore necessary, but not sufficient, to describe feasible solutions.

While the nature of the demand, single-commodity versus multicommodity, is a fundamental distinction between network design models, it is worth noting that single-commodity and multicommodity formulations can often be used for the same problem. For instance, we could reformulate the SCFND with a single origin and multiple destinations as an MCFND, where each commodity is associated with a destination. The advantage of this reformulation comes when we introduce strong linking inequalities, which then improve the LP relaxation, often significantly so. The disadvantage, of course, lies in the large number of additional flow variables and valid inequalities. Two approaches can be used to mitigate this effect. One is to develop decomposition methods, such as column-and-row generation algorithms, which we study in Chap. 3. Another is to derive inequalities equivalent to the strong linking constraints, but in the space of single-commodity flow (and design) variables. Some inequalities of this type have been derived for the SUFND with a single origin, but to the best of our knowledge, not for its capacitated counterpart. This is an avenue for future research.