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 -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.
    Keywords:
                                                                    capacitated multicommodity network design;                    large neighborhood search;                    mixed-integer programming        MSC:
                90C59
            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 [], logistics planning [,], transportation [], and telecommunications [,,]. In these scenarios, networks are constructed by linking nodes, and limited resources are allocated to deliver products across these nodes [,,,,,]. 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 [,]. 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 []. 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 [,,], bidirected [,], and undirected [,]. 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 [].
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. [] first introduced the residual capacity inequality, and Atamtürk and Rajan [] gave the polynomial time separation procedure for residual capacity inequalities. Brockmüller et al. [] introduced the c-strong inequality, which was further studied by Atamtürk and Rajan [] and van Hoesel et al. []. The review of cut-based inequalities for network design can be found in Raack et al. []. In this literature, some cutting planes only apply to a specific link model. To address this problem, Atamtürk and Günlük [] studied the connection of valid inequalities between the three types of model links. We refer to [] 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 [] 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 [], 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 [,] or an evolutionary algorithm []. In reference [], Hewitt et al. proposed solving MIPs to search neighborhoods of a solution. Recently, the combination of slope scaling with MIP neighborhood search [,] or greedy algorithms [] 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. [] developed a two-stage hybrid algorithm combining genetic algorithms and depth-first search, effectively handling large-scale problems with complex constraints. Ahmed et al. [] 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. [] 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 [] 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 [], 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 [], Rahmaniani and Ghaderi [] proposed an evolutionary approach for the directed CMND problem with extra consideration for facility location. For a specific class of undirected CMND problems, Khelifi [] introduced a hybrid approach combining greedy constructive heuristics with iterative local search. Chen et al. [] 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 [,] and Harris hawks optimization for multi-objective problems [], 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 [,]. 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.
       
    
    Table 1.
    The related literature on heuristic algorithms for solving the CMND problem.
  
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 [,]. The directed network design instance is given by a directed graph , where  is the set of nodes and  is the set of arcs. For each node , let  and  represent the arcs in  that have v as their source and target node, respectively. Let  denote the commodities set, indexed by q. For each commodity , we associate a vector  to denote the demand of each node, such that . The facility types set is , where a unit of facility  provides capacity . For each arc , let  denote the unit flow cost,  denote the fixed-charge cost of the installed capacity of facility k, and  indicate the pre-installed capacity. The directed CMND problem is formulated as follows []:
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
       
    
    Table 2.
    Summary of notations and their descriptions for the mathematical models of capacitated multicommodity network design problem.
  
In the above MIP formulation, the flow variable  is the commodity  to be transferred along arc a and  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 , where  is the set of nodes and  is the set of arcs. The facilities are installed on the edges of the undirected network. Let  denote the fixed-charge cost of facility k installed on edge , and  indicate the pre-installed capacity. For each edge , we introduce a pair of anti-parallel (directed) arcs  and  to handle the flow on edges. In the bidirected and undirected cases,  is the set of all such arcs, i.e., .
The undirected CMND problem is formulated as follows []:
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
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 []:
      
        
      
      
      
      
    
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 . 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 , 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  and . 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  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. [,] 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 [,,,,,]. 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 []: (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 . 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 [,]. Another strategy involves introducing additional constraints [] or modifying the objective function [] in the original problem formulation. It is important to note that these methods are often combined in practice and customized for specific problems. Reference [] comprehensively analyzes LNS collective application.
The resolution phase involves solving the auxiliary problem  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  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  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 [].
      
| Algorithm 1 Large neighborhood search routine LNS | 
| Input: Network design problem P, reference solution ; Output: An improved integer-feasible , if success; 1: ; 2: Phase 1: Construct (integer) variable subset ; 3: Fix all variables from the set in to ; 4: Phase 2: Solve using MIP solvers or customized algorithms; 5: if has a feasible solution then 6: return ; 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.
      
    
    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.
  
In Figure 1a, the transportation of the  commodity demand is facilitated through the path . However, through the process of optimization, this demand may be rerouted through the path , as depicted in Figure 1b. This is equivalent to adding a directed cycle  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  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 [].
Firstly, a central link is identified within the entire network. For directed model (1), we choose the arc  such that the residual of its corresponding constraint (1c) is largest, i.e.,
      
        
      
      
      
      
    
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 []. For undirected network problems, the central link  is the edge with the largest residual value of its corresponding constraint (2c). Specifically,  is determined by the following formula:
      
        
      
      
      
      
    
Similarly, for bidirected network problems, the central link  is chosen as the edge with the largest residual value of the corresponding constraint (3). The selection is based on the following formula:
      
        
      
      
      
      
    
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.
      
    
    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) . (b) . (c) .
  
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  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 , parameters CycLen, CycNum; Output: An improved integer feasible , if success; 1: Initialize , , ; 2: while do 3: ; 4: Select the central link ; 5: Clear the links set in subnetwork ; 6: for Cyclic links set (, and ) do 7: if The number of links in less than CycNum then 8: ; 9: else 10: break; 11: end if 12: end for 13: Update ; 14: Call large neighborhood search subroutine LNS; 15: if then 16: ; 17: Update ; 18: end if 19: end while 20: return ;  | 
In each iteration of Algorithm 1, the number of facilities outside the variable fixing neighborhood  remains constant while the flow outside  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 , i.e., choose  in Algorithm 1, the auxiliary problem  can be expressed as follows:
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
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  is only included in the constraint corresponding to arc a. This characteristic of GINS allows us to decompose the MIP problem (7) into  independent knapsack problems.
      
        
      
      
      
      
    
      
        
      
      
      
      
    
      
        
      
      
      
      
    
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 . Consequently, our GINS heuristic method operates with a computational complexity of  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 . 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 ; Output: An integer feasible ; 1: ; 2: Construct continuous variable subset ; 3: Fix all variables from the set in to ; 4: Decompose the problem into independent knapsack problems; 5: Solve knapsack problems using dynamic programming algorithm; 6: Obtain the solution for each knapsack problem corresponding to each arc a; 7: Combine these solutions to construct an integer feasible solution for ; 8: return ;  | 
4.3. Implementation Details
As long as we obtain a feasible network traffic flow  as the partial reference solution, we can construct a corresponding integer solution  as the output of Algorithm 1. The construction of this feasible traffic flow  can be achieved through various methods, such as utilizing the shortest path algorithm [,], 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.
      
    
    Figure 3.
      Flowchart of the GINS algorithm integrated with the REFA technique.
  
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 [,] 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 [], 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 [,,]. 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 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 []. 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.
       
    
    Table 3.
    Summary of testset characteristics.
  
       
    
    Table 4.
    All capacity and cost combinations of available facilities.
  
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 , to validate the performance of the approximate solutions obtained by different methods. Specifically, we compared the objective value obtained by each algorithm with  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 , where  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 []. 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.
    Performance comparison on the directed models.
  
       
    
    Table 6.
    Performance comparison on the undirected models.
  
       
    
    Table 7.
    Performance comparison on the bidirected models.
  
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. []. 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 [] 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 [], which is disabled by default. Previous studies have demonstrated the effectiveness of customized local branching methods in addressing fixed-charge network design problems [,]. 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 [], local branching [], and other heuristics included in CPLEX in terms of finding feasible solutions for the CMND problems.
       
    
    Table 8.
    Comparison of GINS + CPX and three CPLEX settings on the directed models.
  
       
    
    Table 9.
    Comparison of GINS + CPX and three CPLEX settings on the undirected models.
  
       
    
    Table 10.
    Comparison of GINS + CPX and three CPLEX settings on the bidirected models.
  
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  in a line represents that, for  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  represents that, for  of the instances, the end gap is less than or equal to . 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.
      
    
    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 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 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.
  
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 []. 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 [].
The second comparison heuristic is the slope-scaling-based neighborhood search (SSBNS) [] 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 [].
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 , where shift s is defined as ; see []).
       
    
    Table 11.
    Performance comparison between GINS, SS, and SSBNS.
  
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.
      
    
    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.
  
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
- 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - Agarwal, Y.K. Design of Capacitated Multicommodity Networks with Multiple Facilities. Oper. Res. 2002, 50, 333–344. [Google Scholar] [CrossRef]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - Bienstock, D.; Günlük, O. Capacitated Network Design Polyhedral Structure and Computation. INFORMS J. Comput. 1996, 8, 243–259. [Google Scholar] [CrossRef]
 - Günlük, O. A branch-and-cut algorithm for capacitated network design problems. Math. Program. 1999, 86, 17–39. [Google Scholar] [CrossRef]
 - 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]
 - 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]
 - 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).
 - 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][Green Version]
 - 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]
 - Fischetti, M.; Lodi, A. Local branching. Math. Program. 2003, 98, 23–47. [Google Scholar] [CrossRef]
 - Danna, E.; Rothberg, E.; Pape, C.L. Exploring relaxation induced neighborhoods to improve MIP solutions. Math. Program. 2005, 102, 71–90. [Google Scholar] [CrossRef]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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]
 - 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).
 - Hendel, G. Adaptive large neighborhood search for mixed integer programming. Math. Program. Comput. 2022, 14, 185–221. [Google Scholar] [CrossRef]
 - Fischetti, M.; Monaci, M. Proximity search for 0-1 mixed-integer convex programming. J. Heuristics 2014, 20, 709–731. [Google Scholar] [CrossRef]
 - Luo, H.; Kianfar, K. Valid inequalities and facets for multi-module survivable network design problem. Networks 2023, 81, 155–176. [Google Scholar] [CrossRef]
 - 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]
 - 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).
 
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.  | 
© 2025 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).