Next Article in Journal
BTFBS: Binding Prediction of Bacterial Transcription Factors and Binding Sites Based on Deep Learning
Previous Article in Journal
Foundations and Innovations in Data Fusion and Ensemble Learning for Effective Consensus
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Graph-Induced Neighborhood Search Heuristic for the Capacitated Multicommodity Network Design Problem

by
Houshan Zhang
School of Science, Beijing University of Posts and Telecommunications, Beijing 100876, China
Mathematics 2025, 13(4), 588; https://doi.org/10.3390/math13040588
Submission received: 7 January 2025 / Revised: 8 February 2025 / Accepted: 10 February 2025 / Published: 11 February 2025
(This article belongs to the Section E: Applied Mathematics)

Abstract

:
In this work, an efficient graph-induced neighborhood search heuristic is proposed to address the capacitated multicommodity network design problem. This problem, which commonly arises in transportation and telecommunication, is well known for its inherent complexity and is often classified as NP -hard. Our approach commences with an arbitrary feasible solution and iteratively improves it by solving a series of small-scale auxiliary mixed-integer programming problems. These small-scale problems are closely tied to the cycles inherent in the network topology, enabling us to reroute the flow more effectively. Furthermore, we have developed a novel resource-efficient facility assignment technique that departs from standard variable neighborhood search algorithms. By solving a series of small knapsack problems, this technique not only enhances the quality of solutions further but also can serve as a primary heuristic to generate initial feasible solutions. Furthermore, we theoretically guarantee that our algorithm will always produce an integer-feasible solution within polynomial time. The experimental results highlight the superior performance of our method compared to other existing approaches. Our heuristic algorithm efficiently discovers high-quality feasible solutions, substantially reducing the computation time and number of nodes in the branch-and-bound tree.

1. Introduction

The capacitated multicommodity network design (CMND) problem is a fundamental optimization challenge that plays a critical role in various network applications, particularly within supply chain management [1], logistics planning [2,3], transportation [4], and telecommunications [5,6,7]. In these scenarios, networks are constructed by linking nodes, and limited resources are allocated to deliver products across these nodes [6,7,8,9,10,11]. The transmission capacities on each link can be the sum of integer multiples of differently sized capacity facilities. The term “facility” refers to the capacity base unit, which can be installed on integer multiples. This problem focuses on optimizing traffic routing to minimize overall cost, which includes the costs of traffic flow and capacity installation. One of the most prominent applications of CMND is in telecommunication networks, where it plays a vital role in ensuring efficient data transmission and bandwidth allocation. For instance, telecommunication providers must design robust and scalable fiber-optic networks to meet the rapidly growing demand for high-speed Internet and data services. By effectively addressing the CMND problem, these providers can reduce network expansion costs while maintaining service quality and minimizing latency. These applications underscore the critical contributions of CMND to advancing modern communication systems and addressing the needs of a digitally connected world.

1.1. Problem Classification

For each CMND problem instance, the type of facility used determines whether the problem is categorized as a single-facility or multi-facility version. In the single-facility version, only one type of facility is installed on each link in the network [12,13]. Practical examples include routing vehicles with uniform capacity within a logistics network or deploying a communication network utilizing only one cable type. Conversely, the multi-facility problem allows for the installation of diverse facility types with varying capacities. Each facility is associated with a fixed-charge cost, and its unit capacity cost differs, typically decreasing with larger capacity sizes [10]. The optimization challenge involves determining the optimal quantity and the combination of facilities to install across the network. These facilities must meet the demand for each commodity. Compared with the single-facility CMND problem, the multi-facility version is more challenging.
In addition, in network design problem formulations, capacity constraints are tailored to fit three distinct application scenarios: directed [8,13,14], bidirected [15,16], and undirected [6,7]. In the directed link model, the flow on each arc is limited by its installed capacity. In the bidirected link model, identical capacities are installed on both the arc and its corresponding reverse arc. Conversely, in the undirected link model, the total flow on an arc and its reverse counterpart is at most the capacity of the undirected edge that they collectively represent. We will refer to the mixed-integer programming (MIP) formulations based on these respective link models as the directed, bidirected, and undirected models [9].

1.2. Research Objectives and Contributions

Most existing heuristic methods are constrained by the specific facility and link types, limiting their adaptability to different CMND formulations. However, due to the complexity of real-world problems, highly customized approaches are often too restrictive. Additionally, in the field of network design, models with similar names often differ significantly, which makes it difficult to find a broadly applicable method. Therefore, it is essential to design an effective heuristic method for general CMND problems, regardless of link and facility types. In this paper, we introduce a novel graph-induced neighborhood search (GINS) heuristic method for solving the general capacitated multicommodity network design problem. To the best of our knowledge, this is the first heuristic method broadly applicable to all three link types of CMND models with any number of facilities.
Compared to other available methods, the GINS algorithm incorporates two key innovations in a theoretical context:
  • Graph-Induced Custom Heuristic: Unlike other methods that use mathematical programming techniques, which often overlook or fail to utilize the underlying topology of the graph, GINS adopts a graph-induced custom heuristic to strategically identify and extract this underlying topology. Specifically, the network is divided into cycles centered around a specific central link. These cycles are used to construct a subnetwork, with facilities on links outside this subnetwork fixed. Within this subnetwork, an auxiliary problem is iteratively constructed and solved, continuously enhancing solution quality until no further improvement can be achieved. This process significantly improves computational efficiency.
  • Resource-Efficient Facility Assignment Technique: Traditional heuristic methods often result in resource wastage during flow rerouting. To overcome this limitation, GINS incorporates a resource-efficient facility assignment (REFA) technique to leverage the distinctive characteristics of the CMND problem. By fixing all traffic flows, the original problem is transformed into multiple small-scale independent knapsack problems, which can be solved efficiently using a dynamic programming approach. This transformation enhances solution quality and enables the rapid generation of high-quality initial integer-feasible solutions.
To demonstrate the effectiveness and efficiency of our proposed heuristic, we have implemented GINS in two ways:
  • Integration with CPLEX: GINS was embedded as a callback routine within the widely used MIP solver CPLEX. Using this implementation, we demonstrate that the proposed GINS heuristic provides a more effective acceleration of the branch-and-bound algorithm compared to the built-in heuristics of CPLEX. This improvement is reflected in the reduced computational time and the number of explored nodes within the branch-and-bound tree, underscoring its capability to enhance the overall efficiency of hybrid solution frameworks.
  • Standalone Implementation: GINS was implemented independently without relying on the branch-and-bound framework of the MIP solver CPLEX. This approach provides strong empirical evidence that GINS consistently outperforms other existing heuristics in solving the CMND problem. Specifically, it achieves higher-quality solutions while requiring less computational time. These results validate the practical advantages and superior performance of the GINS algorithm compared to traditional heuristic methods.
In summary, our method demonstrates superiority over existing approaches in two aspects. Theoretically, the GINS method fully exploits network topology to enhance computational efficiency and adopts a resource-efficient facility assignment strategy, addressing the limitations of existing heuristics. Practically, its integration with CPLEX effectively optimizes hybrid frameworks. At the same time, its standalone implementation showcases exceptional performance in solving CMND problems, establishing its robustness and efficiency in both theoretical and practical contexts.

1.3. Organization

The rest of this article is organized as follows. The state of the art and relevant studies are listed in Section 2. In Section 3, we describe the mathematical models of the CMND problem. Then, our heuristic and the related detailed information on implementation are presented in Section 4. Next, Section 5 presents the computational results. Finally, we summarize our conclusions in Section 6.

2. Literature Review

Many studies in solving the CMND problem concentrate on developing exact approaches to find optimal solutions, including deriving tight lower bounds or conducting polyhedra analysis. Magnanti et al. [17] first introduced the residual capacity inequality, and Atamtürk and Rajan [18] gave the polynomial time separation procedure for residual capacity inequalities. Brockmüller et al. [19] introduced the c-strong inequality, which was further studied by Atamtürk and Rajan [6] and van Hoesel et al. [20]. The review of cut-based inequalities for network design can be found in Raack et al. [21]. In this literature, some cutting planes only apply to a specific link model. To address this problem, Atamtürk and Günlük [9] studied the connection of valid inequalities between the three types of model links. We refer to [10] for more details about exact approaches.
The CMND problem has been extensively studied using heuristic methods. Various heuristics, such as evolutionary algorithms and large neighborhood search methods, have been developed to obtain high-quality solutions within reasonable computation times. Before delving into customized heuristics for CMND problems, it is helpful to introduce some general heuristics that are useful for solving general MIP problems. Many algorithms explicitly tailored for CMND are adaptations of these general techniques. For instance, the local branching heuristic [22] is effective for binary integer programming problems. It identifies and fixes certain binary variables (which correspond to the activation or deactivation of facilities in the CMND problem), dividing the original problem into a subproblem and a main problem. High-quality solutions can often be obtained by solving the subproblem; otherwise, a cutting plane is added to the main problem, repeating this way until a solution is obtained. Another notable method is the relaxation-induced neighborhood search (RINS) method [23], which applies to general integer programming problems. This heuristic fixes certain variables based on linear relaxation and integer-feasible solutions. It then solves an auxiliary MIP subproblem and adjusts the remaining variables to find a better solution.
However, the algorithms mentioned above are general heuristics and only sometimes effective for CMND problems. In order to solve CMND more effectively, a customized heuristic algorithm is necessary. A well-researched area is the single-facility CMND problem, particularly the fixed-charge version, where only one facility can be installed on each link. For this problem, the method of improving solution quality locally by adjusting flow along a cycle was proposed early. It can be combined with tabu search [24,25] or an evolutionary algorithm [26]. In reference [12], Hewitt et al. proposed solving MIPs to search neighborhoods of a solution. Recently, the combination of slope scaling with MIP neighborhood search [13,14] or greedy algorithms [27] has been proposed as an effective approach for the fixed-charge CMND problem. Recent advancements in heuristic algorithms have further contributed to solving network optimization problems like CMND. Liu et al. [28] developed a two-stage hybrid algorithm combining genetic algorithms and depth-first search, effectively handling large-scale problems with complex constraints. Ahmed et al. [29] proposed an enhanced ant colony optimization algorithm that integrates subpath-based strategies and K-nearest neighbor methods, achieving strong performance in capacitated vehicle routing problems. Li et al. [30] introduced an improved particle swarm optimization algorithm with variable neighborhood search, enhancing local search capabilities for both continuous and discrete optimization problems.
Although the above methods have proven effective for solving the single-facility CMND problem or other network optimization problems, they cannot be directly applied to tackle the multi-facility version. The multi-facility CMND problem has a broader range of applications and poses a more significant challenge in terms of its solvability. However, the literature on heuristic approaches specifically designed to tackle the multi-facility CMND problem is scarce. In the context of the multi-facility CMND problem, Agarwal [6] proposed a neighborhood search technique for optimizing a specific class of undirected network design problems, focusing on local improvement strategies. This method iteratively evaluates subsets of links, termed subnetworks, to reroute traffic flow within the subnetwork, leaving the flow outside unaffected during each iteration. Additionally, in [7], Salman et al. introduced a novel branch-and-bound algorithm that can serve as a practical heuristic approach, providing upper bounds for the same undirected model. In reference [31], Rahmaniani and Ghaderi [31] proposed an evolutionary approach for the directed CMND problem with extra consideration for facility location. For a specific class of undirected CMND problems, Khelifi [32] introduced a hybrid approach combining greedy constructive heuristics with iterative local search. Chen et al. [33] reviewed uncertainty analysis and optimization modeling in supply chain management, highlighting robust and stochastic optimization for addressing uncertainties like demand fluctuations and supply disruptions. Recent highly remarkable advancements in heuristic and metaheuristic algorithms, particularly hybrid approaches that combine ant optimization with the whale optimization algorithm [34,35] and Harris hawks optimization for multi-objective problems [36], have shown significant potential for solving complex optimization challenges. Although these methods have primarily been applied in areas such as task scheduling and workflow optimization, their adaptability suggests that they could also be effective in addressing CMND problems. However, their application in this specific context remains an open area for further investigation. For a more comprehensive review of heuristic methods for the CMND problem, we refer to [11,37]. Overall, we summarize the difference between our study and these articles in Table 1 regarding facility and model types. The symbols ‘D’, ‘U’, and ‘B’ in Table 1 represent directed, undirected, and bidirected link models, respectively.

3. Mathematical Formulations

Before presenting the mathematical formulation of the CMND problem, Table 2 lists the key notations used throughout this paper for clarity and quick reference. The CMND problem can be defined on both directed and undirected networks, and can be formulated as three different MIPs, each MIP formulation corresponding to a unique link model [9,10]. The directed network design instance is given by a directed graph G = ( V , A ) , where V is the set of nodes and A is the set of arcs. For each node v V , let δ + ( v ) and δ ( v ) represent the arcs in A that have v as their source and target node, respectively. Let Q denote the commodities set, indexed by q. For each commodity q Q , we associate a vector d q to denote the demand of each node, such that v V d v q = 0 . The facility types set is K , where a unit of facility k K provides capacity u k . For each arc a A , let h a denote the unit flow cost, c a k denote the fixed-charge cost of the installed capacity of facility k, and u a indicate the pre-installed capacity. The directed CMND problem is formulated as follows [10]:
min x , y a A q Q h a q x a q + k K c a k y a k
s . t . a δ + ( v ) x a q a δ ( v ) x a q = d v q ,           v V , q Q ,
q Q x a q u a + k K u k y a k ,           a A ,
x a q R + ,           a A , q Q ,
y a k Z + ,           a A , k K .
In the above MIP formulation, the flow variable x a q is the commodity q Q to be transferred along arc a and y a k is the number of facilities k installed on the arc. The objective function (1a) is to minimize the total cost, which is the sum of the flow costs of commodities plus the sum of the installation costs of facilities. Constraint (1b) consists of flow conservation equations, which indicate that the sum of the path flows of commodity q is equal to the demand. Constraint (1c) ensures that the capacity on arc a is sufficient to accommodate the flow on it. Constraints (1d) and (1e) define all the variables in the model.
The bidirected and undirected CMND problems are defined on an undirected graph G = ( V , E ) , where V is the set of nodes and E is the set of arcs. The facilities are installed on the edges of the undirected network. Let c e k denote the fixed-charge cost of facility k installed on edge e E , and u e indicate the pre-installed capacity. For each edge e E , we introduce a pair of anti-parallel (directed) arcs e + and e to handle the flow on edges. In the bidirected and undirected cases, A is the set of all such arcs, i.e., A : = e + = i , j , e = ( j , i ) : e = i , j E .
The undirected CMND problem is formulated as follows [21]:
min x , y a A q Q h a q x a q + e E k K c e k y e k
s . t . a δ + ( v ) x a q a δ ( v ) x a q = d v q ,           v V , q Q ,
q Q x e + q + q Q x e q u e + k K u k y e k ,           e E ,
x a q R + ,           a A , q Q ,
y e k Z + ,           e E , k K .
In the bidirected link model, the flow in the two arcs is bounded by the corresponding edge capacity. Therefore, the bidirected model is formulated by (2a), (2b), (2d), (2e), and the following constraint [21]:
max q Q x e + q , q Q x e q u e + k K u k y e k , e E .
We provide the following descriptions and examples to clarify the distinctions between directed, undirected, and bidirected link models. In a directed model, each link has a specific direction, represented by an arc ( i , j ) . This signifies that flows can only move from node i to node j. In contrast, an undirected model allows for bidirectional flow along an edge { i , j } , which is directionless, representing the possibility of flow between nodes i and j. The bidirected model includes two directed arcs for every pair of nodes, such as ( i , j ) and ( j , i ) . In this model, flow, capacity, and cost can be independently assigned to each direction. The bidirectional network design problem can be challenging to understand, so we illustrate it with an application in rail transit, particularly in metro systems. A typical example is the design of double-track railways, which consist of two parallel tracks. One track is designated for trains traveling in one direction while the other is for trains traveling in the opposite direction. Building only a single track would prevent vehicles from returning to their starting point, except in loop lines. Therefore, double tracks are generally constructed simultaneously to accommodate bidirectional travel. This configuration ensures that train flows in opposite directions remain independent and do not interfere with each other, thereby enhancing operational efficiency and safety.
To conclude this section, it is noteworthy that the bidirected CMND problem can be transformed into the directed version. In the transformed directed link model, the capacities on the forward and backward arcs between a pair of nodes are the same, i.e., constraints y e + k = y e k , e E should be added in model (1). Furthermore, in specific scenarios, the undirected CMND problem can be transformed into the bidirected version, where the commodity between a pair of nodes is the same. In other words, the amount of goods transported from node i to node j must equal the amount transported from node j to node i. See refs. [9,21] for more details on this relationship between different link models.

4. Graph-Induced Neighborhood Search Heuristic Method

For mixed-integer programming problems, primal heuristics are essential in finding feasible solutions. The high-quality solutions can significantly accelerate the problem-solving process and reduce the number of nodes in the branch-and-bound tree. Extensive research has been conducted on primal heuristics [13,14,22,23,32,38]. One particularly efficient heuristic framework is the large neighborhood search (LNS). In this section, a graph-induced neighborhood search algorithm based on the LNS framework is presented for solving the CMND problem. The LNS heuristic framework for MIP problems consists of two main phases [38]: (i) the formulation of an auxiliary problem and (ii) the subsequent resolution.
The first phase involves formulating a simplified auxiliary mixed-integer optimization problem, denoted as P a u x . The auxiliary problem in LNS is designed to reduce the solution space, which can be constructed using various methodologies. One commonly used strategy involves fixing a subset of integer variables at values derived from some reference solutions [23,39]. Another strategy involves introducing additional constraints [22] or modifying the objective function [40] in the original problem formulation. It is important to note that these methods are often combined in practice and customized for specific problems. Reference [39] comprehensively analyzes LNS collective application.
The resolution phase involves solving the auxiliary problem P a u x using various optimization algorithms. This step is crucial as the efficiency of the entire LNS algorithm depends on the speed of obtaining a solution for the auxiliary problem. Typically, the P a u x resolution is accomplished by directly invoking the MIP solver. Due to its relatively small size, the optimization of this auxiliary problem is comparatively simple. Furthermore, if a distinctive structure is identified within the auxiliary problem, alternative methods, such as dynamic programming, can be employed to expedite the solution process.
In summary, we present the implementation of the LNS in Algorithm 1. Two critical phases, the P a u x construction and solving, are bolded. It is worth noting that some commonly used technical details of the LNS algorithm have been omitted for simplicity, such as incorporating the best solution of the original problem as a cutoff value in the auxiliary problem and defining the working limit for it [39].
Algorithm 1 Large neighborhood search routine LNS ( N , x ¯ , y ¯ )
Input: Network design problem P, reference solution ( x ¯ , y ¯ ) ;
Output: An improved integer-feasible ( x , y ) , if success;
 1: P a u x P ;
 2: Phase 1: Construct (integer) variable subset N ;
 3: Fix all variables from the set N in P a u x to ( x ¯ , y ¯ ) ;
 4: Phase 2: Solve P a u x using MIP solvers or customized algorithms;
 5: if P a u x has a feasible solution ( x , y )  then
 6:     return  ( x , y ) ;
 7: end if
However, the LNS algorithm framework can just serve as a general paradigm rather than a specific algorithm. To effectively employ LNS in tackling the unique challenges of CMND problems, a custom and problem-specific design is necessary. In response to this need, we propose the GINS heuristic algorithm, which is a tailored implementation of the LNS paradigm. GINS incorporates innovative strategies specifically designed for the CMND problem, including (1) strategic selection of the central link, (2) division of the graph based on directed cycles, and (3) a resource-efficient facility assignment technique. These features distinguish GINS from other LNS-based approaches while fully leveraging the strengths of the LNS framework.

4.1. The Framework of GINS Algorithm

Our GINS algorithm relies on a fundamental principle that, when modifying the flows of a commodity while maintaining feasibility, the adjusted flows must form at least one directed cycle. This means that a set of arcs on a cycle must simultaneously modify its flow, and the corresponding facilities may also need to be adjusted. Figure 1 illustrates how the network flows change between two different feasible solutions.
In Figure 1a, the transportation of the ( A , E ) commodity demand is facilitated through the path ( A , B , C , E ) . However, through the process of optimization, this demand may be rerouted through the path ( A , B , D , C , E ) , as depicted in Figure 1b. This is equivalent to adding a directed cycle ( B , D , C , B ) to the previous path; see Figure 1c. In fact, improving a feasible solution of the network design problem to an optimal solution can be achieved by simultaneously changing the flows on several directed cycles. Hence, we determine P a u x based on a promising subnetwork consisting of some cycles within the topology structure of the underlying graph. To find a promising subnetwork, we took a two-step approach similar to that in the literature [6].
Firstly, a central link is identified within the entire network. For directed model (1), we choose the arc a * such that the residual of its corresponding constraint (1c) is largest, i.e.,
a * = arg max a A k K u k y a k q Q x a q + u a .
The underlying reasoning is that, when the residual is more significant, there is a higher probability of experiencing a decrease in facility costs as the flow over this arc decreases. As a result, we anticipate a substantial reduction in facility costs on the central link after the change in traffic flow. A similar trick can be found in the reference [38]. For undirected network problems, the central link e * is the edge with the largest residual value of its corresponding constraint (2c). Specifically, e * is determined by the following formula:
e * = arg max e E k K u k y e k q Q x e + q q Q x e q + u e .
Similarly, for bidirected network problems, the central link e * is chosen as the edge with the largest residual value of the corresponding constraint (3). The selection is based on the following formula:
e * = arg max e E k K u k y e k max q Q x e + q , q Q x e q + u e .
Secondly, we construct a subnetwork around the central link. To be more specific, we select cycles that meet two criteria: (i) they must include the central link, and (ii) their length is constrained to a predefined value, denoted as “CycLen”. The subnetwork is formed by these cycles.
Figure 2 explains the methodology of building a subnetwork through the central link. The red and blue lines in Figure 2 represent the central and other links in the subnetwork. When CycLen is chosen as 3, 4, and 5, the subnetwork scale gradually increases. It should be noted that we only limit each cycle added to the subnetwork and, eventually, there may be cycles in the subnetwork that exceed the limit in length. With the increase in the size of subnetwork, the scale of the corresponding auxiliary problem also gradually increases. To limit the scale of the auxiliary problem, we introduce the parameter “CycNum” to determine the maximum number of links added in the subnetwork. We add links to the subnetwork one cycle at a time, and when the number of added links reaches the predefined threshold CycNum, we stop adding more links.
Once we identify the subnetwork, the facilities on the remaining network links are restricted to their reference solution values. Meanwhile, the facilities located inside the subnetwork and the entire traffic flow will be released to their bounds. The objective function of P a u x is to minimize the combined cost of facilities within the subnetwork and the cost of the entire traffic flow, thereby facilitating a global adjustment in the traffic flow.
The procedure of using the GINS algorithm to solve the directed model (1) is summarized in Algorithm 2. The algorithm can be started from any initial feasible solution, which can be found by the technique introduced in Section 4.2. The algorithm selects a central link and solves the related auxiliary problem, leading to an improved solution; if successful, the primary step is repeated until no enhanced solution is found.
Algorithm 2 Graph-induced large neighborhood search
Input: Integer feasible solution ( x ¯ , y ¯ ) , parameters CycLen, CycNum;
Output: An improved integer feasible ( x , y ) , if success;
   1: Initialize Stop F a l s e , ( x , y ) null , N ;
   2: while Stop = F a l s e do
   3:      Stop T r u e ;
   4:     Select the central link a * A ;
   5:     Clear the links set in subnetwork S ;
   6:     for Cyclic links set C A ( | C | C y c L e n , and a * C ) do
   7:         if The number of links in S less than CycNum then
   8:             S S C ;
   9:         else
 10:            break;
 11:         end if
 12:     end for
 13:     Update N y a k : a A S , k K ;
 14:     Call large neighborhood search subroutine ( x ¯ , y ¯ ) LNS N , x ¯ , y ¯ ;
 15:     if  ( x ¯ , y ¯ ) null  then
 16:          Stop F a l s e ;
 17:         Update ( x , y ) ( x ¯ , y ¯ ) ;
 18:     end if
 19: end while
 20: return ( x , y ) ;
In each iteration of Algorithm 1, the number of facilities outside the variable fixing neighborhood N remains constant while the flow outside N is modified. However, this may result in excessive capacity provided by the facilities and excessive installation costs after each adjustment. To address this issue, we propose a technique to improve the solution quality further.

4.2. Resource-Efficient Facility Assignment Technique

In this subsection, we will introduce an efficient resource-efficient facility assignment (REFA) technique to improve the quality of the solutions found by the GINS algorithm further. In addition, the REFA technique can also serve as a primary heuristic to find high-quality initial feasible solutions for the capacitated multicommodity network design problems. For a general integer programming problem, the main difficulty lies in the discreteness of the integer variables, so the traditional LNS heuristics in MIP solvers fix the integer variables in the auxiliary problem to make it easy to solve. However, in the case of CMND problem (1), (2), and (3), this is the opposite.
Taking the directed model (1) as an example, when we fix all traffic flow (continuous) variables to the partial reference solution x ¯ , i.e., choose N = x a q : a A , q Q in Algorithm 1, the auxiliary problem P a u x can be expressed as follows:
min y a A k K c a k y a k
s . t . q Q x ¯ a q u a + k K u k y a k , a A ,
y a k Z + , a A , k K .
Next, we present a detailed discussion of the computational complexity of the proposed GINS heuristic method. Firstly, we note that the left side of constraint (7b) is a known value, and the variable y a k is only included in the constraint corresponding to arc a. This characteristic of GINS allows us to decompose the MIP problem (7) into | A | independent knapsack problems.
min y k K c a k y a k
s . t . q Q x ¯ a q u a + k K u k y a k ,
y a k Z + , k K .
Secondly, these knapsack problems can be efficiently solved using a dynamic programming algorithm. Once the dynamic programming tables are constructed, the time complexity for resolving (7) is O ( | A | ) . Consequently, our GINS heuristic method operates with a computational complexity of O ( | A | ) and guarantees the generation of an integer-feasible solution. This unique feature distinguishes it from other LNS-based heuristic approaches. Traditional LNS heuristics typically focus on reducing the problem size and finding feasible solutions by fixing a subset of integer variables y a k . However, the traditional heuristic approach can often result in infeasible auxiliary problems, which waste computational time and fail to produce meaningful results. In contrast, as demonstrated in our analysis, the GINS heuristic consistently generates an integer-feasible solution, although it does not provide a theoretical guarantee regarding the quality of the solution. The procedure for applying the REFA technique is outlined in Algorithm 3.
Algorithm 3 Resource-efficient facility assignment technique
Input: Network design problem P, reference traffic flow values ( x ¯ ) ;
Output: An integer feasible ( x , y ) ;
 1: P a u x P ;
 2: Construct continuous variable subset N = x a q : a A , q Q ;
 3: Fix all variables x a q from the set N in P a u x to ( x ¯ ) ;
 4: Decompose the problem P a u x into | A | independent knapsack problems;
 5: Solve | A | knapsack problems using dynamic programming algorithm;
 6: Obtain the solution y a k for each knapsack problem corresponding to each arc a;
 7: Combine these solutions to construct an integer feasible solution ( x , y ) for P a u x ;
 8: return ( x , y ) ;

4.3. Implementation Details

As long as we obtain a feasible network traffic flow x ¯ as the partial reference solution, we can construct a corresponding integer solution ( x ¯ , y ¯ ) as the output of Algorithm 1. The construction of this feasible traffic flow x ¯ can be achieved through various methods, such as utilizing the shortest path algorithm [6,32], solving the linear relaxation solution at each node of the branch-and-bound tree, or employing the GINS algorithm introduced in Section 4.2. To be more specific, in our algorithm implementation, the REFA technique is used in two scenarios.
(1)
Whenever our GINS routine obtains a better integer-feasible solution, the REFA technique utilizes it to check whether we can improve the solution quality further. The integer-feasible solution can either be returned by CPLEX or obtained by GINS itself.
(2)
Whenever our GINS routine obtains a linear relaxation solution, the REFA technique can obtain a corresponding integer-feasible solution (has the same flow values as the linear relaxation solution). The way of obtaining linear relaxation solutions differs depending on how GINS is implemented.
(a)
If the GINS is embedded as a callback routine within CPLEX, a linear relaxation solution could be returned in each node in the branch-and-bound tree.
(b)
If the GINS is implemented independently, we call CPLEX once and only once to solve the relaxed CMND problem and obtain the initial linear relaxation solution.
Following the implementation of this technique, the issue of excessive facility installations on each link is effectively resolved. To conclude this section, we draw Figure 3 to demonstrate the flowchart of our proposed algorithm clearly. Precisely, steps (1), (2a), and (2b) in the figure correspond to the three reference solution cases discussed earlier, highlighting their logical connections.

5. Computational Results

In this section, we present the performance of our heuristic and compare the results with the widely used commercial MIP solver, CPLEX. Additionally, we benchmark our method against other available heuristics in solving network design problems, demonstrating its effectiveness and efficiency. While we acknowledge the usefulness of modern metaheuristic approaches, such as hybrid genetic algorithms and ant colony optimization algorithms, this study focuses on comparing our approach with widely adopted baselines and heuristics traditionally used in this domain. Specifically, our numerical experiments are divided into two parts to comprehensively evaluate the performance of our method within the scope of these established comparisons.
  • Firstly, we implemented GINS in C and embedded it as a callback routine within the IBM ILOG CPLEX Optimizer 20.1.0 library. This approach is motivated by the fact that GINS is tailored to address general network design problems and aims to handle more complicated situations in practice. Meanwhile, CPLEX is designed to solve general MIP problems using a range of built-in heuristics, which can be further enhanced by GINS. Combining these two tools allows us to effectively test the ability of GINS to solve real-world problems and evaluate its versatility.
  • Secondly, we implemented GINS independently without embedding it in CPLEX as a callback routine. For comparison, we also implemented two other heuristics from the literature [14,27] and evaluated the quality of solutions obtained by different algorithms. We applied the same time limits and used CPLEX (with identical parameters) to solve both the linear relaxation problems and the auxiliary MIP problems required by GINS and other heuristics.
Following [8], to avoid changing the problem structure, the presolving features were turned off in our experiments. All computations were executed in a single-threaded environment to eliminate the effect of multithreads. Our experiments were performed on a cluster of Intel(R) Xeon(R) Gold 6140 CPU @ 2.30 GHz computers with 192 GB RAM, running Linux (in 64-bit mode). The parameters CycLen and CycNum of GINS were set to 4 and 30, respectively.

5.1. Testsets

We conducted our computational study on a large-scale network testset encompassing all three link models: the directed model (1), the undirected model (2), and the bidirected model (3). This testset was created using widely accepted random generation methodologies from the literature, as referenced in previous studies [7,8,41]. These methodologies are commonly used to evaluate algorithmic performance and are recognized as standard benchmarks for testing optimization algorithms in capacitated multicommodity multi-facility network design problems. The generation process is as follows:
  • Generate graphs with 50 nodes, where the coordinates of the nodes are uniformly distributed on a 100 × 100 region in the Euclidean plane.
  • Randomly assign a degree to each point, with a probability of 0.2 for the degree to be either 4 or 7 and a probability of 0.3 for it to be 5 or 6.
  • For each node, sequentially add edges to the nearest node until the degree is met, ensuring that the length of each link does not exceed 50.
  • After all links have been added, verify that the graph is connected; if not, the graph must be regenerated.
  • Each case has 100 sets of demands, each randomly generating a single-source–single-sink pair, and the demand value is uniformly selected from the range from 10 to 190.
The key characteristics and features of the instances are summarized in Table 3. Furthermore, we use all 27 combinations of different sizes and costs studied in [8]. For the same facility, we assume that its costs on all links are the same. The unit flow cost across each link equals the length rounded down to the nearest integer. We randomly generate three graphs for each capacity and cost combination in Table 4. Thus, in total, we have 81 instances for each link model.

5.2. Numerical Experiments with GINS Embedded in CPLEX

In this subsection, we present our comprehensive numerical results to prove the effectiveness of the GINS heuristic. We set the time limit to 7200 s. Since none of the instances could be solved within the time limit and the optimal solutions are not available in the literature, we used the best solution found by the CPLEX solver within 5 h with default settings, denoted as v * , to validate the performance of the approximate solutions obtained by different methods. Specifically, we compared the objective value obtained by each algorithm with v * and calculated the percentage gap between these values. We set a relative gap tolerance of 1% for all experiments in this paper. The relative gap for each instance was computed as ( v ^ v * ) / v * , where v ^ represents the best solution value found by each method. This approach allows us to evaluate the quality of solutions provided by each algorithm relative to the optimal solution and provides insights into the effectiveness and efficiency of the algorithms. In the following, we use “CPX” and “GINS + CPX” to denote the default setting of CPLEX and the one with the GINS implemented through callback routines.
  • CPX: CPLEX with all the parameters set to their default values.
  • GINS + CPX: CPLEX with all the parameters set to their default values, while the GINS heuristic is embedded as a callback routine.
We provide a summary of the computational results in a similar table to that used in [8]. Table 5, Table 6 and Table 7 display the overall numerical results for three link models, respectively. Column ‘Bracket(s)’ marks some subsets of instances depending on the solving time of instances. The ‘All’ bracket contains all instances of the testset. The ‘≥n’ brackets contain all instances whose solution time is between n seconds and the time limit in at least one setting. Column ‘Total’ lists the number of models in each bracket of the testset. The ‘Solved’ column indicates the number of instances that are solved under the GINS + CPX or CPX settings. Column ‘Nodes’ shows the average of the number of branch-and-bound nodes. Similarly, column ‘Time(s)’ lists the average solving times.
Table 5, Table 6 and Table 7 indicate that our GINS algorithm has a significant positive effect on all these three link models. In particular, using the GINS algorithm, we can solve 7, 3, and 17 more instances than those using the default setting on directed, undirected, and bidirected models, respectively. As shown in Table 5, Table 6 and Table 7, the default CPLEX setting requires nearly two times more computational time compared to the GINS + CPX setting. Furthermore, the number of nodes is significantly reduced. For the more challenging instances, the GINS algorithm demonstrates a significant advantage over the default CPLEX solver. As the network size increases and the problem becomes more complex, the time required by CPLEX grows much faster. In contrast, the GINS algorithm exhibits a more moderate increase in computational time. These computation results clearly show that our GINS heuristic can effectively reduce the scale of the branch-and-bound trees. Additionally, our approach significantly improves the performance of the MIP solver in solving the CMND problems on all three link types.
To demonstrate the superiority of our GINS method over the built-in heuristics in CPLEX, we focused on some classical neighborhood search heuristics that involve solving auxiliary MIP problems, similar to how GINS operates. We conducted additional experiments using three alternative parameter settings for CPLEX, which were proposed by Guastaroba et al. [42]. This approach allowed us to evaluate the performance of our GINS algorithm thoroughly. These settings were applied to ensure a fair and comprehensive evaluation of the GINS algorithm. These configurations are denoted as, “CPX-Feasibility”, “CPX-RINS”, and “CPX-LocalBranching”.
  • CPX-Feasibility: This configuration uses CPLEX with all parameters set to their default values, except for the parameter ‘CPXPARAM_Emphasis_MIP’, which is set to “feasibility”. In this setting, CPLEX is programmed to frequently generate more feasible solutions when optimizing problems, which may result in sacrificing some speed in the pursuit of proving optimality.
  • CPX-RINS: This setup employs CPLEX with all default parameters, with the exception of the parameter ‘CPXPARAM_MIP_Strategy_RINSHeur’, which is set to 20. In this configuration, CPLEX executes the RINS heuristic [23] every 20 nodes. This approach can be more aggressive than the default CPX setting.
  • CPX-LocalBranching: This option utilizes CPLEX with all parameters at their default values, except for the parameter ‘CPXPARAM_MIP_Strategy_LBHeur’, which has been activated. This setting enables the local branching heuristic [22], which is disabled by default. Previous studies have demonstrated the effectiveness of customized local branching methods in addressing fixed-charge network design problems [13,14]. Thus, this configuration serves as a particularly suitable benchmark for evaluating the effectiveness of GINS.
The three settings were selected because of their frequent utilization of built-in heuristics in CPLEX. Additionally, the last two methods, which involve fixing integer variables and solving auxiliary problems, are similar to our GINS heuristic method. They are all based on the LNS Algorithm 1. The three CPLEX settings emphasize quickly finding the feasible solution early in the optimization process. Table 8, Table 9 and Table 10 show the results for these three settings. Comparing these settings with GINS + CPX, we can see that the number of instances solved by GINS has increased overall across the three link types. In addition, the number of nodes explored and the running time are significantly reduced. In particular, as presented in Table 10, our GINS algorithm performs significantly in solving the bidirected CMND problem. It significantly increases the number of solved instances and reduces the required solving time. Therefore, GINS demonstrates a superior ability to solve this specific problem type. Overall, according to the results shown in Table 8, Table 9 and Table 10, we can conclude that the GINS method holds a notable advantage over RINS [23], local branching [22], and other heuristics included in CPLEX in terms of finding feasible solutions for the CMND problems.
Additionally, Figure 4a, Figure 5a, and Figure 6a display the performance profiles in terms of running times visually. Meanwhile, Figure 4b, Figure 5b, and Figure 6b showcase the end gaps for the remaining unsolved instances. In the performance profile graph, each point with coordinates ( a , b ) in a line represents that, for b % of the instances, reaching their gap tolerance needs less than or equal to a seconds. Similarly, in the end gap graph, each point with coordinates ( a , b ) represents that, for b % of the instances, the end gap is less than or equal to a % . The three performance profile graphs clearly demonstrate that our GINS method efficiently discovers high-quality solutions. By incorporating GINS callback routines into CPLEX, we can expedite the solving process for all types of CMND instances. Furthermore, the three end gap graphs illustrate that the end gaps of remaining unsolved instances under the GINS + CPX setting are substantially smaller than the four other CPLEX settings. Regardless of the chosen end gap as the optimal tolerance threshold, the GINS algorithm consistently enables the successful solution of more instances across all three link types. In general, the GINS algorithm significantly improves the efficiency and effectiveness of the MIP solver in solving the capacitated multicommodity network design problem.

5.3. Numerical Experiments with Independent GINS Algorithm

In this subsection, we present numerical results to demonstrate the efficiency of the independent GINS algorithm, which operates outside the CPLEX framework. We compare its performance with two established heuristics that have proven to be highly effective in solving fixed-charge capacitated multicommodity network design problems.
The first comparison heuristic is the slope scaling (SS) algorithm [14]. This method iteratively adjusts the objective coefficients by solving linear programming subproblems. In network design problems, fixed installation costs create a nonlinear cost structure and complicate matters. SS heuristic addresses this by “scaling” these nonlinear functions to linear, simplifying the solving process. We provide a brief overview of the SS heuristic as follows:
  • Initialize: Set the initial cost weights for each facility based on the original cost function.
  • Solve subproblem: Solve a linear relaxation subproblem using the current weights.
  • Adjust weights: Update the cost weights based on the linear relaxation solution.
  • Obtain solution: Round up all integer variables (corresponding to the number of facilities) from the relaxation solution to obtain a feasible integer solution.
This process is repeated until the time limit is reached. For more details about SS, we refer to literature [14].
The second comparison heuristic is the slope-scaling-based neighborhood search (SSBNS) [27] algorithm. In contrast to the SS algorithm, after applying slope scaling, this method excludes links with consistently zero flow, i.e., links where the flow remains zero throughout the iteration process. The SSBNS heuristic assumes that these links will likely have no flow passing through them. Subsequently, the SSBNS heuristic directly utilizes the MIP solver to optimize the MIP subproblem and may obtain the approximate solution. For more details about SSBNS, we refer to algorithms 3 and 4 of reference [27].
The effectiveness of these heuristics is closely related to the running time. The longer the runtime, the more iterations that can be performed, increasing the likelihood of finding higher-quality feasible solutions. To ensure a fair comparison, we set time limits ranging from 50 to 500 s for all heuristics. This allowed us to evaluate the quality of solutions found within a short time and compare the evolution of the best solution over time. We also used the best solution found by the CPLEX solver within 5 h with default settings to validate the performance of the approximate solutions obtained by different methods. The gap calculation method described in the previous subsection was used. In the following, we use “GINS” to denote the independent GINS algorithm.
Table 11 displays the computational results for different heuristics. Columns ‘Time(s)’ and ‘Models’ represent the time limit and corresponding CMND link models. The symbols (D), (U), and (B) represent the directed, undirected, and bidirected link models, respectively. The ‘All’ bracket contains all instances of the three link types. Column ‘Opt’ denotes the best values obtained by the CPLEX solver within 5 h. Columns ‘Obj’ and ‘Gap(%)’ list the objective values and corresponding gaps of different heuristics, respectively. It is important to mention that all values are calculated as the geometric means of the values across all corresponding instances. To avoid issues with gaps being zero, we employ a shifted geometric mean with a shift of 1 (the shifted geometric mean of values x 1 , x 2 , , x n , where shift s is defined as k = 1 n ( x k + s ) 1 / n s ; see [43]).
The results in Table 11 indicate that, in comparison to the SS and SSBNS heuristics, our GINS method consistently delivers the highest-quality feasible solutions with the smallest end gaps, regardless of the chosen time limits. Notably, GINS not only produces effective solutions within a short time but also exhibits potential for further improvement over time. In contrast, the SS heuristic lacks such potential. When the time limit exceeds 200 s, the SS heuristic is unable to find a better solution. On the other hand, the SSBNS heuristic, being an LNS heuristic, takes more time to solve the auxiliary MIP subproblem, making it relatively more time-consuming than SS (which just solves linear programming subproblems). The SSBNS heuristic can identify high-quality feasible solutions over a longer time, but its performance deteriorates rapidly within a shorter time. In summary, the results presented in Table 11 support the conclusion that the GINS algorithm performs superior to the other available heuristics across all three link models.
The four subplots in Figure 7 collectively demonstrate the superior performance of the proposed GINS algorithm compared to the baseline algorithms, SS and SSBNS, across all tested link models. Specifically, the figure evaluates the average end gaps over time, comprehensively analyzing these temporal behaviors and effectiveness. Due to the inherent characteristics of the SS algorithm, its performance does not depend on time. While it can achieve a reasonable level of effectiveness initially, especially in the bidirected model, both the GINS and SSBNS methods can outpace it as time progresses. Across all link models, GINS consistently achieves a lower end gap than SS and SSBNS, indicating its faster convergence and higher accuracy. This trend is evident in the early stages of the time axis, where GINS shows a more rapid reduction in the end gap. In the later stages, it stabilizes at a significantly lower value than the other two algorithms. The consistent performance across directed, undirected, and bidirected link models highlights the robustness and adaptability of the proposed algorithm.

6. Conclusions

In this paper, we present an efficient graph-induced neighborhood search heuristic algorithm for addressing the large-scale capacitated multicommodity network design problem. By leveraging the topological structure of the underlying graph, we construct a series of auxiliary problems and iteratively refine the solution quality. Extensive computational experiments on three distinct link models demonstrate that our proposed algorithm is superior to other existing heuristics. Notably, our algorithm achieves remarkable reductions in both the size of branch-and-bound trees and the overall computational time. Overall, our research introduces a novel heuristic technique that efficiently solves all three link models of the CMND problem, offering a valuable contribution to network design optimization.

Funding

This research received no external funding.

Data Availability Statement

All the codes and corresponding experimental results that support the findings of this paper are available in the GitHub repository https://github.com/houshan-zhang/graph-induced-heuristic (accessed on 9 February 2025).

Acknowledgments

The computations were performed on the high-performance computers of the State Key Laboratory of Scientific and Engineering Computing, Chinese Academy of Sciences.

Conflicts of Interest

The author declares no conflicts of interest.

References

  1. Govindan, K.; Fattahi, M.; Keyvanshokooh, E. Supply chain network design under uncertainty: A comprehensive review and future research directions. Eur. J. Oper. Res. 2017, 263, 108–141. [Google Scholar] [CrossRef]
  2. Cordeau, J.F.; Pasin, F.; Solomon, M.M. An integrated model for logistics network design. Ann. Oper. Res. 2006, 144, 59–82. [Google Scholar] [CrossRef]
  3. Cordeau, J.F.; Laporte, G.; Pasin, F. An iterated local search heuristic for the logistics network design problem with single assignment. Int. J. Prod. Econ. 2008, 113, 626–640. [Google Scholar] [CrossRef]
  4. Crainic, T.G.; Hewitt, M. Service Network Design. In Network Design with Applications to Transportation and Logistics; Crainic, T.G., Gendreau, M., Gendron, B., Eds.; Springer International Publishing: Cham, Switzerland, 2021; pp. 347–382. [Google Scholar] [CrossRef]
  5. Soriano, P.; Wynants, C.; Séguin, R.; Labbé, M.; Gendreau, M.; Fortz, B. Design and Dimensioning of Survivable SDH/Sonet Networks. In Telecommunications Network Planning; Sansò, B., Soriano, P., Eds.; Springer US: Boston, MA, USA, 1999; pp. 147–167. [Google Scholar] [CrossRef]
  6. Agarwal, Y.K. Design of Capacitated Multicommodity Networks with Multiple Facilities. Oper. Res. 2002, 50, 333–344. [Google Scholar] [CrossRef]
  7. Salman, F.S.; Ravi, R.; Hooker, J.N. Solving the Capacitated Local Access Network Design Problem. INFORMS J. Comput. 2008, 20, 243–254. [Google Scholar] [CrossRef]
  8. Chen, L.; Chen, W.K.; Yang, M.M.; Dai, Y.H. An exact separation algorithm for unsplittable flow capacitated network design arc-set polyhedron. J. Glob. Optim. 2021, 81, 659–689. [Google Scholar] [CrossRef]
  9. Atamtürk, A.; Günlük, O. A note on capacity models for network design. Oper. Res. Lett. 2018, 46, 414–417. [Google Scholar] [CrossRef]
  10. Atamtürk, A.; Günlük, O. Multicommodity Multifacility Network Design. In Network Design with Applications to Transportation and Logistics; Crainic, T.G., Gendreau, M., Gendron, B., Eds.; Springer International Publishing: Cham, Switzerland, 2021; pp. 141–166. [Google Scholar] [CrossRef]
  11. Mejri, I.; Layeb, S.B.; Zeghal, F. A survey on network design problems: Main variants and resolution approaches. Eur. J. Ind. Eng. 2023, 17, 253–309. [Google Scholar] [CrossRef]
  12. Hewitt, M.; Nemhauser, G.L.; Savelsbergh, M.W.P. Combining Exact and Heuristic Approaches for the Capacitated Fixed-Charge Network Flow Problem. INFORMS J. Comput. 2010, 22, 314–325. [Google Scholar] [CrossRef]
  13. Katayama, N. MIP Neighborhood Search Heuristics for a Capacitated Fixed-Charge Network Design Problem. Asia-Pac. J. Oper. Res. 2020, 37, 2050009. [Google Scholar] [CrossRef]
  14. Gendron, B.; Hanafi, S.; Todosijević, R. Matheuristics based on iterative linear programming and slope scaling for multicommodity capacitated fixed charge network design. Eur. J. Oper. Res. 2018, 268, 70–81. [Google Scholar] [CrossRef]
  15. Bienstock, D.; Günlük, O. Capacitated Network Design Polyhedral Structure and Computation. INFORMS J. Comput. 1996, 8, 243–259. [Google Scholar] [CrossRef]
  16. Günlük, O. A branch-and-cut algorithm for capacitated network design problems. Math. Program. 1999, 86, 17–39. [Google Scholar] [CrossRef]
  17. Magnanti, T.L.; Mirchandani, P.; Vachani, R. The convex hull of two core capacitated network design problems. Math. Program. 1993, 60, 233–250. [Google Scholar] [CrossRef]
  18. Atamtürk, A.; Rajan, D. On splittable and unsplittable flow capacitated network design arc–set polyhedra. Math. Program. 2002, 92, 315–333. [Google Scholar] [CrossRef]
  19. Brockmüller, B.; Günlük, O.; Wolsey, L. Designing Private Line Networks—Polyhedral Analysis and Computation. LIDAM Discussion Papers CORE 1996047, Université catholique de Louvain, Center for Operations Research and Econometrics (CORE). 1996. Available online: https://ideas.repec.org/p/cor/louvco/1996047.html (accessed on 9 February 2025).
  20. van Hoesel, S.P.; Koster, A.M.; van de Leensel, R.L.; Savelsbergh, M.W. Polyhedral results for the edge capacity polytope. Math. Program. 2002, 92, 335–358. [Google Scholar] [CrossRef]
  21. Raack, C.; Koster, A.M.; Orlowski, S.; Wessäly, R. On cut-based inequalities for capacitated network design polyhedra. Networks 2011, 57, 141–156. [Google Scholar] [CrossRef]
  22. Fischetti, M.; Lodi, A. Local branching. Math. Program. 2003, 98, 23–47. [Google Scholar] [CrossRef]
  23. Danna, E.; Rothberg, E.; Pape, C.L. Exploring relaxation induced neighborhoods to improve MIP solutions. Math. Program. 2005, 102, 71–90. [Google Scholar] [CrossRef]
  24. Ghamlouche, I.; Crainic, T.G.; Gendreau, M. Cycle-Based Neighbourhoods for Fixed-Charge Capacitated Multicommodity Network Design. Oper. Res. 2003, 51, 655–667. [Google Scholar] [CrossRef]
  25. Ghamlouche, I.; Crainic, T.G.; Gendreau, M. Path relinking, cycle-based neighbourhoods and capacitated multicommodity network design. Ann. Oper. Res. 2004, 131, 109–133. [Google Scholar] [CrossRef]
  26. Paraskevopoulos, D.C.; Bektaş, T.; Crainic, T.G.; Potts, C.N. A cycle-based evolutionary algorithm for the fixed-charge capacitated multi-commodity network design problem. Eur. J. Oper. Res. 2016, 253, 265–279. [Google Scholar] [CrossRef]
  27. Katayama, N. A combined fast greedy heuristic for the capacitated multicommodity network design problem. J. Oper. Res. Soc. 2019, 70, 1983–1996. [Google Scholar] [CrossRef]
  28. Liu, S.; Yang, F.; Liu, T.; Li, M. An Effective Two-Stage Algorithm for the Bid Generation Problem in the Transportation Service Market. Mathematics 2024, 12, 1007. [Google Scholar] [CrossRef]
  29. Ahmed, Z.H.; Hameed, A.S.; Mutar, M.L.; Haron, H. An Enhanced Ant Colony System Algorithm Based on Subpaths for Solving the Capacitated Vehicle Routing Problem. Symmetry 2023, 15, 2020. [Google Scholar] [CrossRef]
  30. Li, H.; Zhan, J.; Zhao, Z.; Wang, H. An Improved Particle Swarm Optimization Algorithm Based on Variable Neighborhood Search. Mathematics 2024, 12, 2708. [Google Scholar] [CrossRef]
  31. Rahmaniani, R.; Ghaderi, A. A combined facility location and network design problem with multi-type of capacitated links. Appl. Math. Model. 2013, 37, 6400–6414. [Google Scholar] [CrossRef]
  32. Khelifi, M.; Babes, M.; Ghanemi, S.; Saidi, M.; Boudjit, S. Hybrid Heuristic for Capacitated Network Design Problem. J. High Speed Netw. 2015, 21, 313–330. [Google Scholar] [CrossRef]
  33. Chen, L.; Dong, T.; Peng, J.; Ralescu, D. Uncertainty Analysis and Optimization Modeling with Application to Supply Chain Management: A Systematic Review. Mathematics 2023, 11, 2530. [Google Scholar] [CrossRef]
  34. Salehnia, T.; Montazerolghaem, A.; Mirjalili, S.; Khayyambashi, M.R.; Abualigah, L. Chapter 8—SDN-based optimal task scheduling method in Fog-IoT network using combination of AO and WOA. In Handbook of Whale Optimization Algorithm; Academic Press: Cambridge, MA, USA, 2024; pp. 109–128. [Google Scholar] [CrossRef]
  35. Salehnia, T.; MiarNaeimi, F.; Izadi, S.; Ahmadi, M.; Montazerolghaem, A.; Mirjalili, S.; Abualigah, L. Chapter 45—A MTIS method using a combined of whale and moth-flame optimization algorithms. In Handbook of Whale Optimization Algorithm; Academic Press: Cambridge, MA, USA, 2024; pp. 625–651. [Google Scholar] [CrossRef]
  36. Montazerolghaem, A.; Khosravi, M.; Rezaee, F.; Khayyambashi, M.R. An optimal workflow scheduling method in cloud-fog computing using three-objective Harris-Hawks algorithm. In Proceedings of the 2022 12th International Conference on Computer and Knowledge Engineering (ICCKE), Mashhad, Iran, 17–18 November 2022; pp. 300–306. [Google Scholar] [CrossRef]
  37. Salimifard, K.; Bigharaz, S. The multicommodity network flow problem: State of the art classification, applications, and solution methods. Oper. Res. 2022, 22, 1–47. [Google Scholar] [CrossRef]
  38. Maher, S.J.; Fischer, T.; Gally, T.; Gamrath, G.; Gleixner, A.; Gottwald, R.L.; Hendel, G.; Koch, T.; Lübbecke, M.; Miltenberger, M.; et al. The SCIP Optimization Suite 4.0; Technical Report 17-12; ZIB: Berlin, Germany, 2017; Available online: https://opus4.kobv.de/opus4-zib/files/6217/scipoptsuite-401.pdf (accessed on 9 February 2025).
  39. Hendel, G. Adaptive large neighborhood search for mixed integer programming. Math. Program. Comput. 2022, 14, 185–221. [Google Scholar] [CrossRef]
  40. Fischetti, M.; Monaci, M. Proximity search for 0-1 mixed-integer convex programming. J. Heuristics 2014, 20, 709–731. [Google Scholar] [CrossRef]
  41. Luo, H.; Kianfar, K. Valid inequalities and facets for multi-module survivable network design problem. Networks 2023, 81, 155–176. [Google Scholar] [CrossRef]
  42. Guastaroba, G.; Speranza, M. A heuristic for BILP problems: The Single Source Capacitated Facility Location Problem. Eur. J. Oper. Res. 2014, 238, 438–450. [Google Scholar] [CrossRef]
  43. Achterberg, T. Constraint Integer Programming. Ph.D. Thesis, Technische Universität Berlin, Berlin, Germany, 2007. Available online: https://opus4.kobv.de/opus4-zib/files/1112/Achterberg_Constraint_Integer_Programming.pdf (accessed on 9 February 2025).
Figure 1. An illustrative example of flow changes and cycle formation in a single-commodity network. (a) The original network flow for one commodity. (b) The adjusted network flow after adjustment. (c) Cycle formed by all links with changed flow.
Figure 1. An illustrative example of flow changes and cycle formation in a single-commodity network. (a) The original network flow for one commodity. (b) The adjusted network flow after adjustment. (c) Cycle formed by all links with changed flow.
Mathematics 13 00588 g001
Figure 2. Illustration of subnetwork construction via a central link with different CycLen parameter settings. The GINS algorithm fixes facilities on all black links and iteratively adjusts facilities within the subgraph centered at the central link, aiming to optimize the network design progressively. (a) CycLen = 3 . (b) CycLen = 4 . (c) CycLen = 5 .
Figure 2. Illustration of subnetwork construction via a central link with different CycLen parameter settings. The GINS algorithm fixes facilities on all black links and iteratively adjusts facilities within the subgraph centered at the central link, aiming to optimize the network design progressively. (a) CycLen = 3 . (b) CycLen = 4 . (c) CycLen = 5 .
Mathematics 13 00588 g002
Figure 3. Flowchart of the GINS algorithm integrated with the REFA technique.
Figure 3. Flowchart of the GINS algorithm integrated with the REFA technique.
Mathematics 13 00588 g003
Figure 4. Illustration of the comparison results between GINS + CPX and four CPLEX settings on the directed link models: (a) performance profile graph of solved instances; (b) end gap graph of unsolved instances.
Figure 4. Illustration of the comparison results between GINS + CPX and four CPLEX settings on the directed link models: (a) performance profile graph of solved instances; (b) end gap graph of unsolved instances.
Mathematics 13 00588 g004
Figure 5. Illustration of the comparison results between GINS + CPX and four CPLEX settings on the undirected link models: (a) performance profile graph of solved instances; (b) end gap graph of unsolved instances.
Figure 5. Illustration of the comparison results between GINS + CPX and four CPLEX settings on the undirected link models: (a) performance profile graph of solved instances; (b) end gap graph of unsolved instances.
Mathematics 13 00588 g005
Figure 6. Illustration of the comparison results between GINS + CPX and four CPLEX settings on the bidirected link models: (a) performance profile graph of solved instances; (b) end gap graph of unsolved instances.
Figure 6. Illustration of the comparison results between GINS + CPX and four CPLEX settings on the bidirected link models: (a) performance profile graph of solved instances; (b) end gap graph of unsolved instances.
Mathematics 13 00588 g006
Figure 7. Comparison of average end gaps between GINS, SS, and SSBNS over time. (a) Directed link model. (b) Undirected link model. (c) Bidirected link model. (d) All link models.
Figure 7. Comparison of average end gaps between GINS, SS, and SSBNS over time. (a) Directed link model. (b) Undirected link model. (c) Bidirected link model. (d) All link models.
Mathematics 13 00588 g007
Table 1. The related literature on heuristic algorithms for solving the CMND problem.
Table 1. The related literature on heuristic algorithms for solving the CMND problem.
ReferenceResearch FocusFacility TypesLink Types
SingleMultipleDUB
Fischetti et al., 2003 [22]Local branch
Danna et al., 2005 [23]Neighborhood search
Ghamlouche et al., 2003 [24]Cycle-based tabu search
Ghamlouche et al., 2004 [25]Cycle-based tabu search, path relink
Hewitt et al., 2010 [12]Neighborhood search
Paraskevopoulos et al., 2016 [26]Cycle-based evolutionary algorithm
Gendron et al., 2018 [14]Slope scaling, local branch
Katayama, 2019 [27]Slope scaling, greedy algorithm
Katayama, 2020 [13]Slope scaling, local branch
Agarwal, 2002 [6]Local adjustment
Salman et al., 2008 [7]Branch-and-bound
Rahmaniani et al., 2013 [31]Facility location
Khelifi et al., 2015 [32]Neighborhood search
This articleGraph-induced neighborhood search
Table 2. Summary of notations and their descriptions for the mathematical models of capacitated multicommodity network design problem.
Table 2. Summary of notations and their descriptions for the mathematical models of capacitated multicommodity network design problem.
NotationDescription
V Set of nodes in the network.
A Set of arcs in the directed network.
E Set of edges in the undirected network.
δ + ( v ) Set of arcs in A leaving node v V .
δ ( v ) Set of arcs in A entering node v V .
Q Set of commodities, indexed by q.
d q Demand vector for commodity q Q .
d v q Demand at node v V for commodity q Q .
K Set of facility types, indexed by k.
u k Capacity provided by one unit of facility k K .
h a Unit flow cost on arc a A .
c a k Fixed-charge cost of installing facility k K on arc a A .
u a Pre-installed capacity on arc a A .
c e k Fixed-charge cost of installing facility k K on edge e E .
u e Pre-installed capacity on edge e E .
e + , e Anti-parallel directed arcs for edge e E .
Table 3. Summary of testset characteristics.
Table 3. Summary of testset characteristics.
Parameter Value / RangeNotes
Number of nodes50Uniformly distributed.
Number of edges v V v degree / 2 Based on node degree.
Length of edges0–50Based on Euclidean distance.
Demand value range10–190Uniform distribution.
Number of demand pairs100Single-source–single-sink pair.
Table 4. All capacity and cost combinations of available facilities.
Table 4. All capacity and cost combinations of available facilities.
Number of facilities1
Instance ID1-1-11-1-21-1-3
Capacity(130)(130)(130)
Cost(10,000)(18,000)(25,000)
Number of facilities1
Instance ID1-2-11-2-21-2-3
Capacity(170)(170)(170)
Cost(10,000)(18,000)(25,000)
Number of facilities1
Instance ID1-3-11-3-21-3-3
Capacity(200)(200)(200)
Cost(10,000)(18,000)(25,000)
Number of facilities2
Instance ID2-1-12-1-22-1-3
Capacity(130, 50)(130, 50)(130, 50)
Cost(10,000, 5000)(18,000, 9000)(25,000, 13,000)
Number of facilities2
Instance ID2-2-12-2-22-2-3
Capacity(170, 70)(170, 70)(170, 70)
Cost(10,000, 5000)(18,000, 9000)(25,000, 13,000)
Number of facilities2
Instance ID2-3-12-3-22-3-3
Capacity(200, 80)(200, 80)(200, 80)
Cost(10,000, 5000)(18,000, 9000)(25,000, 13,000)
Number of facilities3
Instance ID3-1-13-1-23-1-3
Capacity(130, 50, 20)(130, 50, 20)(130, 50, 20)
Cost(10,000, 5000, 2500)(18,000, 9000, 5000)(25,000, 13,000, 9000)
Number of facilities3
Instance ID3-2-13-2-23-2-3
Capacity(170, 70, 30)(170, 70, 30)(170, 70, 30)
Cost(10,000, 5000, 2500)(18,000, 9000, 5000)(25,000, 13,000, 9000)
Number of facilities3
Instance ID3-3-13-3-23-3-3
Capacity(200, 80, 30)(200, 80, 30)(200, 80, 30)
Cost(10,000, 5000, 2500)(18,000, 9000, 5000)(25,000, 13,000, 9000)
Table 5. Performance comparison on the directed models.
Table 5. Performance comparison on the directed models.
GINS + CPXCPX
Bracket(s)TotalSolvedNodesTime(s)SolvedNodesTime(s)
All816631611247.305983272164.75
≥900564540381580.163813,1403409.46
≥1800493843291655.003116,9954273.49
≥3600453443251670.572717,9804583.15
Table 6. Performance comparison on the undirected models.
Table 6. Performance comparison on the undirected models.
GINS + CPXCPX
Bracket(s)TotalSolvedNodesTime(s)SolvedNodesTime(s)
All81791138768.477657151331.86
≥90059581374903.785584941847.78
≥1800353416371043.893114,2262816.84
≥3600151417951049.651122,8694392.93
Table 7. Performance comparison on the bidirected models.
Table 7. Performance comparison on the bidirected models.
GINS + CPXCPX
Bracket(s)TotalSolvedNodesTime(s)SolvedNodesTime(s)
All81748041648.435744283119.29
≥90077737361569.015643713071.30
≥180059558391757.243864084491.96
≥360043398891781.542291326064.32
Table 8. Comparison of GINS + CPX and three CPLEX settings on the directed models.
Table 8. Comparison of GINS + CPX and three CPLEX settings on the directed models.
GINS + CPXCPX-FeasibilityCPX-RINSCPX-LocalBranching
Bracket(s)TotalSolvedNodesTime(s)SolvedNodesTime(s)SolvedNodesTime(s)SolvedNodesTime(s)
All816631611247.306712,5382165.345310,3983045.646283192158.22
≥900786332621295.096413,2972283.375011,1633297.285988452298.28
≥1800766133421335.886213,6982324.354811,7313430.025792432400.18
≥3600655040071532.645114,7282524.823714,7484321.604611,5462989.08
Table 9. Comparison of GINS + CPX and three CPLEX settings on the undirected models.
Table 9. Comparison of GINS + CPX and three CPLEX settings on the undirected models.
GINS + CPXCPX-FeasibilityCPX-RINSCPX-LocalBranching
Bracket(s)TotalSolvedNodesTime(s)SolvedNodesTime(s)SolvedNodesTime(s)SolvedNodesTime(s)
All81791138768.477853431203.056710,6462432.177957111329.03
≥90075731271824.457256081282.626112,7542907.617363101448.33
≥180067651301843.736458711349.315316,6813701.076570301601.06
≥360053511418897.045063841470.533924,0535035.715181921766.05
Table 10. Comparison of GINS + CPX and three CPLEX settings on the bidirected models.
Table 10. Comparison of GINS + CPX and three CPLEX settings on the bidirected models.
GINS + CPXCPX-FeasibilityCPX-RINSCPX-LocalBranching
Bracket(s)TotalSolvedNodesTime(s)SolvedNodesTime(s)SolvedNodesTime(s)SolvedNodesTime(s)
All81748041648.433885894728.735042183432.715944223115.16
≥90079747591588.033885324678.675041533368.935943493049.78
≥180076717591618.583591125016.774743733578.105644883202.18
≥360068637841648.722710,2925523.803949144029.384850023529.51
Table 11. Performance comparison between GINS, SS, and SSBNS.
Table 11. Performance comparison between GINS, SS, and SSBNS.
Time(s)ModelsOptGINSSSSSBNS
ObjGap(%)ObjGap(%)ObjGap(%)
50(D)3,981,031.784,169,974.614.044,459,898.2010.594,369,777.068.13
(U)3,809,821.783,982,813.093.984,260,059.5210.434,066,677.275.66
(B)2,422,765.952,695,152.099.492,898,820.4814.263,666,230.6119.16
All3,324,583.613,550,603.755.413,804,702.0011.634,023,829.689.70
100(D)3,981,031.784,139,207.793.424,458,709.2410.574,359,208.607.69
(U)3,809,821.783,958,735.853.414,258,690.7110.404,047,683.975.24
(B)2,422,765.952,664,450.478.312,892,170.6114.113,601,956.4318.05
All3,324,583.613,521,225.224.663,801,045.3911.583,990,716.739.11
200(D)3,981,031.784,092,975.842.434,458,709.2410.574,239,642.274.46
(U)3,809,821.783,921,401.422.524,258,690.7110.403,955,405.853.12
(B)2,422,765.952,592,543.355.662,888,647.4314.032,911,643.8815.53
All3,324,583.613,465,257.453.323,799,501.3111.563,654,989.856.19
300(D)3,981,031.784,072,006.661.924,458,697.5710.574,165,593.322.90
(U)3,809,821.783,893,264.151.864,258,690.7110.403,907,931.082.22
(B)2,422,765.952,545,416.213.982,888,647.4314.032,827,967.9612.25
All3,324,583.613,429,996.852.463,799,498.0011.563,583,984.194.50
500(D)3,981,031.784,035,163.891.124,458,697.5710.574,079,544.111.67
(U)3,809,821.783,860,755.611.194,258,690.7110.403,877,667.351.59
(B)2,422,765.952,488,180.502.082,888,647.4314.032,655,552.616.73
All3,324,583.613,384,322.911.433,799,498.0011.563,476,260.922.77
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhang, H. A Graph-Induced Neighborhood Search Heuristic for the Capacitated Multicommodity Network Design Problem. Mathematics 2025, 13, 588. https://doi.org/10.3390/math13040588

AMA Style

Zhang H. A Graph-Induced Neighborhood Search Heuristic for the Capacitated Multicommodity Network Design Problem. Mathematics. 2025; 13(4):588. https://doi.org/10.3390/math13040588

Chicago/Turabian Style

Zhang, Houshan. 2025. "A Graph-Induced Neighborhood Search Heuristic for the Capacitated Multicommodity Network Design Problem" Mathematics 13, no. 4: 588. https://doi.org/10.3390/math13040588

APA Style

Zhang, H. (2025). A Graph-Induced Neighborhood Search Heuristic for the Capacitated Multicommodity Network Design Problem. Mathematics, 13(4), 588. https://doi.org/10.3390/math13040588

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop