The Edge-Disjoint Path Problem on Random Graphs by Message-Passing

We present a message-passing algorithm to solve a series of edge-disjoint path problems on graphs based on the zero-temperature cavity equations. Edge-disjoint paths problems are important in the general context of routing, that can be defined by incorporating under a unique framework both traffic optimization and total path length minimization. The computation of the cavity equations can be performed efficiently by exploiting a mapping of a generalized edge-disjoint path problem on a star graph onto a weighted maximum matching problem. We perform extensive numerical simulations on random graphs of various types to test the performance both in terms of path length minimization and maximization of the number of accommodated paths. In addition, we test the performance on benchmark instances on various graphs by comparison with state-of-the-art algorithms and results found in the literature. Our message-passing algorithm always outperforms the others in terms of the number of accommodated paths when considering non trivial instances (otherwise it gives the same trivial results). Remarkably, the largest improvement in performance with respect to the other methods employed is found in the case of benchmarks with meshes, where the validity hypothesis behind message-passing is expected to worsen. In these cases, even though the exact message-passing equations do not converge, by introducing a reinforcement parameter to force convergence towards a sub optimal solution, we were able to always outperform the other algorithms with a peak of 27% performance improvement in terms of accommodated paths. On random graphs, we numerically observe two separated regimes: one in which all paths can be accommodated and one in which this is not possible. We also investigate the behavior of both the number of paths to be accommodated and their minimum total length.

We present a message-passing algorithm to solve the edge disjoint path problem (EDP) on graphs incorporating under a unique framework both traffic optimization and path length minimization. The min-sum equations for this problem present an exponential computational cost in the number of paths. To overcome this obstacle we propose an efficient implementation by mapping the equations onto a weighted combinatorial matching problem over an auxiliary graph. We perform extensive numerical simulations on random graphs of various types to test the performance both in terms of path length minimization and maximization of the number of accommodated paths. In addition, we test the performance on benchmark instances on various graphs by comparison with state-of-the-art algorithms and results found in the literature. Our message-passing algorithm always outperforms the others in terms of the number of accommodated paths when considering non trivial instances (otherwise it gives the same trivial results). Remarkably, the largest improvement in performance with respect to the other methods employed is found in the case of benchmarks with meshes, where the validity hypothesis behind message-passing is expected to worsen. In these cases, even though the exact message-passing equations do not converge, by introducing a reinforcement parameter to force convergence towards a sub optimal solution, we were able to always outperform the other algorithms with a peak of 27% performance improvement in terms of accommodated paths. On random graphs, we numerically observe two separated regimes: one in which all paths can be accomodated and one in which this is not possible. We also investigate the behaviour of both the number of paths to be accomodated and their minimum total length. and optimal (right) EDP problem are displayed. In the latter, the purple communication is redirected along a longer path to avoid edge-overlap. The yellow one has two shortest paths of equal length (degeneracy) in the unconstrained case, but once EDP is enforced this degeneracy is broken and only one of the two is optimal (right).

I. INTRODUCTION
The optimization of routing and connection requests is one of the main problems faced in traffic engineering and communication networks [1]. The need to deliver Quality of service (QoS) [2,3] performances, when transmitting data over a network subject to overload and failures, requires both efficient traffic management and resource optimization. Some aspects of these problems can be formalized using the edge-disjoint path (EDP) problem. This is a constrained optimization problem that is defined as follows. For a given network and a set of communication requests among pairs of users, the EDP consists in finding the maximum number of communications that can be accommodated at the same time, under the constraint that different paths cannot overlap on edges. Moreover, the additional requirement of minimization of the total path length can be considered. Apart from a purely theoretical interest [4], the EDP finds a wide range of applications: in very-largescale-integration (VLSI) design, in admission control and virtual circuit routing and in all-optical networks. In VLSI design it is required to route wires on a circuit avoiding overlaps, along with minimizing the length of the wires [5,6]. In admission control and virtual circuit routing [7][8][9] one needs to reserve in advance a given path for each communication request so that once the communication is established no interruption will occur. This has applications in real-time database servers, large-scale video servers [10][11][12], streaming data and bandwidth reservation in communication networks [13][14][15][16] and in parallel supercomputers. All these applications require high quality data transmission and full bandwidth exploitation. Routing via edge disjoint paths allows for an efficient bandwidth allocation among users because overlap avoidance means full bandwidth exploitation by each single user. An area that has attracted particular attention in the last decade is communication transmission in all-optical networks. Along an optical fiber different communications cannot be assigned the same wavelength to transmit data. Moreover, a unique wavelength must be assigned on all the edges contributing to the path assigned for a given communication. Routing communications under the above two requirements define the problem of routing and wavelength assignments (RWA) in this type of networks [17]. These two constraints suggest that a strategy that iteratively builds edge disjoint paths solutions could allow for a more efficient bandwidth management, namely by using an overall smaller number of wavelengths. This leaves available the remaining ones (according to the edge capacity) to be used either by new users entering the network or by allowing current users to exploit higher bandwidth. This strategy has indeed been applied using greedy [18] and genetic algorithms [19] with performances comparable to other methods based on integer linear programming, graph coloring or bin packing. The EDP is classified among Karp's NP-hard combinatorial problems [20,21]. Defining the approximation ratio of a given algorithm as the ratio between the result obtained in term of cost/profit by the algorithm and the optimal one (or viceversa depending on what order gives the maximum ratio), the EDP problem is hard to approximate in the worst case; it has been proved that even an approximation with ratio O(m 1 2 −ε ) is NP-Hard. The best known approximation ratio for the number of accomodated paths is O(min{n 2/3 , √ m}) [22,23] where n and m are the number of nodes and edges in the graph, respectively. Negative results on worst-case inapproximability did not stop progress on heuristc approaches. The problem has been studied intensely with a variety of classical techniques: heuristic greedy algorithms [13,14,18,24], elaborated strategies using bin packing [25], integer/linear programming relaxations [26][27][28][29], post-optimization [30], Montecarlo local search [31], genetic algorithms [32][33][34], particle swarm optimization [35] and ant colony optimization [36], among them.
In this paper we propose a distributed algorithm to solve the EDP problem based on message-passing (MP) techniques (or cavity method) [37]. This method has been extensively employed to address problems in spin glass theory [38][39][40], combinatorial optimization [41] and more recently in routing problems on networks [42][43][44][45]. The evaluation of the equations at the core of the MP technique requires, for each vertex i in the underlying graph, to solve a local combinatorial optimization problem, performing a minimum over a set which is exponentially large in the number of neighbors of i. We propose an efficient method to perform this calculation, by mapping it into a minimum-weight matching problem on a complete auxiliary graph with vertices in the set ∂i of neighbors of i, that can be solved by classical algorithms [46]. With this construction, each iteration of the MP equations can be computed in a time which is polynomial in the number of graph edges (and linear in average for sparse random graphs).
The MP algorithm is tested on computer-generated instances of different classes of random graphs to study the scaling properties with the system size and to compare the performances against a greedy algorithm. We also considered the EDP problem on some benchmark instances found in the literature, for which we could compare the message-passing results with those obtained using other types of algorithms: greedy, ant colony optimization [36] and Montecarlo local search [31]. The paper is organized as follows. In Section II we define the EDP optimization problem, for which we present the messagepassing equations in Section III, together with the mapping on a matching problem that simplifies their actual implementation. Section IV reports the results of simulations on random graphs and the scaling of the relevant quantities with the system size, while the comparison between the performances of the message-passing algorithm and other methods is discussed in Section V. Conclusions are given in Section VI.

II. THE EDGE-DISJOINT PATHS PROBLEM
Given a network and a set of M communications requests between pairs of senders and receivers, the standard EDP consists in finding the maximum number of accommodated paths which are mutually edge disjoint. In the applications described in the Introduction, the length of the communication paths is a quantity that, directly or indirectly, affects the overall transmission performances, in terms of transmission delays, infrastructure cost and network robustness. We take into account this aspect by considering the Minimum Weight Edge Disjoint Paths (MWEDP) problem, a generalization of the EDP problem that combines in a unique framework both path length optimization and edge disjointness. An instance of the MWEDP problem is defined by a graph G(V, E), where V denotes the set of nodes and E is the set of edges, by an assignment of edge weights w, that we assume to be non-negative real numbers and by a set of M communication requests {(S µ , R µ )} µ=1,...,M between ordered pairs of nodes. We denote by π µ , a path, i.e. a set of consecutive edges e ∈ E, that connects a sender S µ with the corresponding receiver R µ . The optimization problem consists in finding M pairwise edge-disjoint paths π µ while minimizing the total edge weight µ w(π µ ), where w(π µ ) = e∈π µ w(e).
The classical EDP problem could be trivially recovered by assigning zero weight to all edges in G(V, E) and a positive cost to each communication that is not accommodated. Alternatively, any solution of the MWEDP problem can be reinterpreted as a solution of the classical EDP problem by slightly modifying the original instance of the graph G(V, E) by introducing an extra edge between each pair (S µ , R µ ) with sufficiently large cost, such that the algorithm could still always find a solution possibly using these expensive extra edges. By construction, the cost of each of these M extra edges should be larger than the maximum possible weight a single path can take. Then the solution of the classical EDP problem is obtained from any solution of the MWEDP problem by discarding the paths passing through the extra edges. In the present paper, we keep information about path length minimization by assigning unit weights (i.e. w i j = 1, ∀(i j) ∈ E) to the original edges of the graph G(V, E) and a fixed cost |E| + 1 to the extra edge added between each pair (S µ , R µ ).
We introduce M-dimensional variablesĪ i j = (I 1 i j , . . . , I M i j ) with entries I µ i j ∈ {±1, 0} representing the communication passing along an edge: We call these vectors currents as they must satisfy current conservation at each node i (Kirchhoff law): where we defined for each node i and each communication µ a variable Λ µ i such that The constraint of edge-disjointness specifies that for each edge (i j), at most one of I µ i j is non-zero, therefore each vectorĪ i j can be parametrized by a variable taking 2M + 1 different values. Notice that the set of variables {Ī i j } (i j)∈E completely specifies the state of the network. In this multi-flow formalism, the MWEDP problem is a combinatorial optimization problem in which the global cost function C({Ī i j }) = (i j)∈E w i j f (||Ī i j ||) depends additively on the total net current ||Ī i j || = µ |I µ i j | along the edges, and the edge-disjointness is ensured by defining where |I µ i j | = 0, 1 denotes the absolute value of I µ i j . Thus configurations with more than one communication passing along an edge have infinite cost and, in the case of unit weights, the total cost C({Ī i j }), if finite, represents exactly the total path length, i.e. the number of edges traversed by paths.

III. THE MESSAGE-PASSING ALGORITHM
On a tree, the optimization problem defined in Sec II can be solved exactly by iteration using the following message-passing algorithm. Let us assume that G is a tree and consider the subtree Figure 2). We define E i j (Ī i j ) to be the minimum cost C({Ī i j }) among current configurations that satisfy Kirchoff's laws on all vertices of G [i j] given that we fix an input (or output) extra currentĪ i j entering (or exiting) node i. Because of the absence of cycles, it is possible to write a recursive equation for E i j as a sum of cost contributions coming from neighbors of i in the subtree, plus the single cost contribution due to the currentĪ i j passing along edge (i j). We call these quantities E i j (Ī i j ) messages and they verify the min-sum recursion relation [39]: where constraint is the Kirchhoff law at node i and ∂i denotes the neighborhood of i. This relation is exact for trees and can be considered as approximately correct for locally tree-like graphs, such as sparse random ones [37,39], where correlations between neighbors of a given node decay exponentially. One can develop further this recursion to obtain a set of three types of message-passing equations, one for each type of node, i.e. for each value of Λ µ i . A fixed point of these equations can be found by iteration from arbitrary initial values for the messages until convergence. Then, one can collect at each edge the incoming and the outgoing converged messages to find the optimal configuration {Ī * i j } (i j)∈E such that: where the last term is subtracted to avoid double counting of the cost of the single edge (i j).

A. The mapping into a weighted matching problem.
The min-sum algorithm as in (5) presents a computational bottleneck coming from the fact that for each output currentĪ i j there is a large number of possible neighborhood's configurations {Ī ki } k∈∂i\ j that are consistent both with the edge-disjoint constraints and with Kirchhoff's law. In the calculation of the minimum in (5) one needs in fact to consider all possible combinations of paths entering and exiting node i; the number of such combinations grows exponentially with the degree of node i. Nevertheless, the calculation can be performed efficiently by reducing it to a maximum weight matching problem [46] on an auxiliary weighted complete graph G ′ i . The nodes of G ′ i are the neighbors k ∈ ∂i and the (symmetric) weights matrix Q will be defined as On the leftmost part we show an example of several communications passing along (i j) and exiting along the remaining neighbors k ∈ ∂i \ j. Right: the final step where G ′′ i jl is built; the best configuration around node i when the blue current passes through (i j) is given by the minimum weighted matching on the complete auxiliary graph G ′′ i jl . Edges red and green represent the best matching, i.e. the configuration where two other communications enter/exit neighbors of i \ j.
where E kl (ν) = E kl (Ī kl ) with I µ kl ≡ δ µ,ν for ν > 0, I µ kl ≡ −δ µ,ν for ν < 0 and I µ kl ≡ 0 for ν = 0. Notice that this notation maps the M-dimensional vectorsĪ i j to the 2M + 1 possible current configurations ν allowed by the edge-disjointness constraint along a given edge. The computation of matrix Q, that requires O(Mk 2 ) operations, should be performed only once at the beginning of the update routine for node i ∈ G.
Consider now a neighbor j ∈ ∂i and a given µ passing through edge (i j), we want to update E i j (Ī i j ). Assuming to know the other vertex l ∈ ∂i\ j where the current µ entering (resp. exiting) node i can exit (resp. enter), then the least costly configuration in the remaining neighborhood is given by where M jl is the maximum weight of a matching on a complete graph G ′′ i jl with k − 2 nodes, built from G ′ i by removing nodes j and l (and all their incident edges). Recall that a matching is a subset of edges of G ′′ i jl that do not share any vertex [46]. This is indeed equivalent to assigning to some of the remaining pairs of neighboring nodes currents ν ∈ [−M, . . . , M] that enters through one of them and exits through the other, such that the overall cost of the configuration is minimum. The key point is that the matching condition, i.e. the fact that edges in the solution set cannot have a vertex in common, in our problem translates in the condition of forbidding edge overlaps. Hence, thanks to this auxiliary mapping, we are able to reduce the computation of the update rule for the MP equations of the edge disjoint path problem to the solution of a standard (polynomial) combinatorial optimization problem, i.e. maximum weight matching. In Figure 3 we give a diagrammatic representation of the mapping. Note that in the maximum matching problem, edges in the input graph with negative weight can be simply removed. Notice that the neighboring current ν can also be a priori equal to µ in this algorithm, because the configurations where µ appears in more than one pair of edges will be eliminated in the minimization calculation as they have higher cost in our formulation. The minimum weight is thus independent of µ, i.e. of which message we are updating, a fact that allows reducing the complexity of the algorithm by a factor M.
Finally one needs to minimize over l given the matrix q min : where c i j (µ) is the cost of edge (i j), that in our case is 0 if µ = 0 and 1 otherwise. We can notice that in order to evaluate each term inside the brackets we need to perform a matching optimization on each of the (k − 2)-node complete graphs G ′′ i jl built ∀ l ∈ ∂i \ j. Each of these matching routine has complexity O(k 3 log k) [47] and there are O(k 2 ) possible combinations of j and l. Reminding that we first need to evaluate the weight matrix Q, the overall complexity of this algorithm will be: which is polynomial in the variables k and M. Once we have performed this whole procedure, we get all the information we need to calculate the 2M + 1 update messages E t+1 i j (µ), for each j ∈ ∂ i, adding a term O(kM) to the final complexity (which is nonetheless negligible compared to the previous two).
The case of µ = 0, in which no current passes through edge (i j) regardless of what happens on the other edges, is addressed by calculating a matching on the (k − 1)-node complete graph composed of all nodes l ∈ ∂ i\ j. If i is either a sender or a receiver, i.e. Λ µ i ∈ {±1} for a given µ ∈ [1, . . . , M], the same computation can be performed provided that an auxiliary node, indexed by the communication label µ is added to the original graph G and connected to node i, such that its exiting messages will be fixed once at the beginning in the following way and never updated: E µi (ν) = −∞ if 0 < ν = µ (sender) or 0 < −ν = µ (receiver), and E µi (ν) = +∞ otherwise.

B. The role of reinforcement.
In order to aid and speed-up convergence of the MP equations, we used a reinforcement technique [48,49], in which a set of external local fields h t i j (µ) = E t i j (µ) + E t ji (−µ) − c i j (µ) act on the messages gradually biasing them to align with themselves. The reinforcement is introduced by promoting edge costs to become communication-dependent quantities defined as linear combinations of the cost at the previous time-step and the reinforcement local fields: with c 0 i j (µ) = c i j . This cost will then be inserted into equation (9) to replace the term c i j (µ). This has the effect to lead the messages to converge faster, gradually bootstrapping the system into a simpler one with large external fields. In practice we choose γ t = tρ and one has to choose the growth rate of γ by tuning the reinforcement parameter ρ, that controls the trade-off between having a faster convergence and reaching a better solution. We tested ρ on instances on three types of graphs to finally choose to fix it to ρ = 0.002 in the rest of the simulations. In Figure 4 we could notice that this value achieves comparable results (inset) in terms of M acc /M to lower ρ in less time. In Figure 5(left) we report the number of converged instances (over 100 realizations) for standard MP (without reinforcement) on four types of random graphs (as described in the next section) and fixed size V = 1000 and average degree k = 3. The convergence failure of the standard MP increases considerably with M/V until it reaches a peak value, then it decreases. On the contrary, when reinforcement is used, convergence is always achieved in less than 100 steps (right panel).

IV. RESULTS ON RANDOM GRAPHS
First, we tested the MP algorithm on various types of random graphs, with fixed size V = |V| = 1000 and average degree k = 3, 5, 7: regular random graphs (Reg), Erdős-Rényi random graphs (ER) [50], random graphs with power-law distribution (SF) [51] and a set of graphs (RER) obtained adding edges independently with probability p starting from a k 0 -regular random graph (for large V, the final average degree of such graphs is k = k 0 + d, with d = pV). We compared the performance with a multi-start greedy algorithm (MSG) [36]. This heuristic algorithm calculates paths by iteratively choosing a (random) communication µ, finding the corresponding shortest path and removing the edges belonging to the path from the graph. The process is repeated until either there are no paths left to be routed or no communications can be accommodated anymore in the graph. The multi-start version repeats the same procedure a given number of times and keeps the best solution in terms of M acc , the number of accommodated paths. A bounded-length version [52] of MSG has been used to develop an iterative algorithm to solve the RWA using EDP in [18]: its performance was comparable to the one obtained using a linear programming solver on graphs of small sizes (V ≤ 40) but with faster execution times. This makes it suited to be tested on larger graphs. A disadvantage of the greedy method is that it relies heavily on the order in which communications are accommodated (it disregards the information about sender-receiver pairs other than the ones already accommodated). The difference in the performances of the message-passing and greedy algorithm could then be used to assess the relevance of local information usage in such optimization problem. We tested both the standard multi-start and the bounded-length version but we found equal results with the first being slightly faster, in our tests, in terms of execution times. Thus we decided to use the standard MSG in our simulations. First we compared the results in terms of number of accommodated paths M acc by calculating the ratio M acc /M. In Figure 6 we show the behavior of M acc /M for each type of random graph and V = 10 3 , k = 3 using MP, reinforced MP and MSG. Both MP versions perform better than MSG, with the standard MP giving better results. The corresponding results for k = 5 are similar (not reported) but the value M acc /M < 1 is reached at higher values of M/V and standard MP and MP with reinforcement give almost always the same solutions. The case k = 7 is not reported because, given the high number of edges, the solutions are often trivial (i.e. M acc /M = 1), a part from the case of SF graphs where we have instead M acc /M < 1 due to the presence of many small degree nodes. We also studied the total path length as a function of M/V for the solutions, obtained with the different algorithms. We consider the ratio between the total path lengths obtained with greedy and MP for solutions in which the number M acc of accommodated path is the same. In Figure 7 we can see that MP always outperforms the MSG algorithm for all types of graph under study. The results for the SF graph with k = 7 are quite different from the other graphs: both for MP and MSG the ratio departs from 1 at rather small values of M/V, possibly because the maximum number of accommodated paths is limited by the existence of many small degree nodes that act as bottlenecks, preventing the use of many alternative edgedisjoint routes. The scaling behavior of the fraction 1 − M acc /M of unaccommodated communications and the average total path length L/V of accommodated paths with the system size in the solutions obtained using the MP algorithm is shown in Figure 8 for regular random graphs and ER random graphs. These quantities are plot as functions of the scaling variable x = M log V V . Note that when paths do not interact, x is a measure the total path length per site, as the average path lenght is proportional to log V. In the top panels, two regimes are visible: for small x, all communications can be accommodated, whereas at some value x * the curves for different values of V depart from zero. This behavior can be interpreted as a SAT/UNSAT transition, in analogy with the terminology of constraint-satisfaction problems [41]. The collapse of the curves L/V for different values of V is very good in the region in which all paths can be accommodated. On the contrary, in the UNSAT region, the curves for different sizes do not collapse anymore, though the relative difference between them seems to decrease by increasing the system size, and the curves for the largest graphs analyzed (V = 8000, 10000) are almost superimposed. We argue that x is the correct scaling variable in the limit of infinitely large graphs, and the observed mismatch could be due to finite-size effects. The change of slope in the roughly linear behavior of the average total length L/V is motivated by the fact that in the SAT region, all communications can be accommodated at the cost of taking longer paths with respect to those actually accommodated in the UNSAT region.

V. COMPARISON WITH OTHER METHODS
A comparison between the performances of the MP algorithm and those of alternative algorithms proposed in the literature [31,36] is reported in Table I. As benchmark instances we used: two internet-like topologies generated using the BRITE graph generator [53] with parameters set as in [36]; mesh graphs of sizes 15x15 and 25x25, Steiner and planar graphs as reported in [31]. For each of these graphs we used the same set of sender-receiver pairs of size M = 0.10V, 0.25V, 0.40V used in [31]. For each of these instances we ran the MP, MP with reinforcement and MSG algorithms 20 times and collected the average, minimum and maximum number of accommodated paths M acc along with the average computational time in seconds. All results are reported in Table I.

A. Other optimization methods.
A part from the multi-start greedy, we used as comparison two more structured algorithms. The first one is an Ant Colony Optimization metaheuristic [36]. This method builds an EDP solution incrementally from partial solutions provided by a set of M ants. Each ant generates a path for a given communication making probabilistic decisions during the construction steps. These are made by processing local information modeled as pheromone information provided by other ants. The advantage of this method is to divide the EDP in subproblems and to use local information. The drawback is that it relies on several parameters that need to be carefully tuned in order to have a sensitive solution. Moreover the computational time increases considerably with the system size. The second algorithm is a Montecarlo-based Local Search [31], that uses as main Montecarlo step a path rewiring based on rooted spanning trees. Unfortunately the running time grows rapidly with the system size, making We plot (left) the relative performance of MSG over MP in terms of total length of the solution paths: y = 100(L g /L MP − 1). Here L g and L MP denote the total path lengths calculated with MSG and MP respectively. We use Reg, RER, ER and SF graphs of fixed size V = 10 3 and average degree k = 3, 5, 7 (from top to bottom). On the right we report the number of instances where the two algorithms find the same solution in term of M acc /M over 100 realizations.
it computationally expensive when used on large graphs. Results are reported in Table I. Finally, we performed simulation using the multi-start greedy heuristic described above.

B. Results.
In Table I we report the performance comparison in terms of M acc between the two versions of MP (with and without reinforcement) and the other 3 types of algorithms. The message-passing always performs equal or better than the other methods. Surprisingly the best performances are given for meshes and planar graphs, where we would expect the failure of MP due to the existence of short loops. What we find instead is that, even though the standard MP converges in few of these instances on meshes, the version with reinforcement always finds a solution that is always better than the other algorithms. The larger performance gap is seen on larger set of commodities and bigger graphs. Performance improvement reaches 27% with respect to LS, the best one between the other algorithms tested. The same considerations can be made in the case of planar graphs. We . We can notice the finite-size effects decreasing with system size leading to the curves corresponding to the biggest graphs V = 8000, 10000 to almost superimpose. Note that in the SAT phase the total length grows linearly in log V for all system sizes as expected but in the UNSAT phase the graphs split. Error bars are smaller than point size.
claim that this gap would increase with system size, but unfortunately the size of benchmark graphs remains limited to V ≤ 500. Moreover these alternative algorithms do not consider path length optimization, thus we cannot compare the performance with respect to this variable. The ACO has been recently tested on several types of graphs (still with V ≤ 500) against a Genetic Algorithm (GA) in [54]. It performed better than GA in the case of BRITE graphs 1-6 and 14% worse in the case of 10x10 and 15x15 mesh graphs. The MP algorithm always outperforms ACO and in the case of 15x15 mesh the gap reaches 23.5%. Unfortunately neither the GA has been tested on larger graphs nor gives results in terms of path length of the solutions.

VI. CONCLUSIONS
The EDP problem is a combinatorial optimization problem that finds applications in several traffic engineering problems, from VLSI design to routing and access control management in communication networks. In this work we proposed a minsum message-passing algorithm to find the maximum number of communications M acc that can be accommodated in a network subject to edge-disjoint constraints and minimizing total path length at the same time. We devised an efficient method to implement these equations by exploiting a mapping into a minimum weight matching problem on an auxiliary graph. The standard MP algorithm and the version with reinforcement consistently outperform alternative algorithms found in the literature on different types of benchmark graphs in terms of the fraction M acc /M of accommodated communications. We found two different behaviors: on some "easy" instances, all algorithm accommodate all requests, providing the same results and suggesting that these could be the optimal ones; there are non-trivial instances in which M acc /M < 1, but the message-passing algorithm always outperforms the other algorithms in terms of the number of accommodated paths. In particular we obtained better results in the case of meshes and planar graphs, even though these topologies are not locally tree-like as required by the cavity method. In these cases, we could always ensure convergence of the MP equations by exploiting a reinforcement technique. The quality of solutions improves with decreasing the reinforcement parameter, such that we could always find better solutions than those obtained using the other algorithms under study. Unfortunately, for the heuristic algorithms employed on the benchmarks we could not access other relevant metrics such as the average total path length, as it was not considered before in the literature [31,36]. Nonetheless we could directly compute such quantity for a multi-start greedy heuristic in several graphs, finding that MP always gives a lower average path length for solutions with the same fraction of accommodated communications.
In conclusion, combining the good performance results, in terms of traffic and path length, with the polynomial time implementation, the use of the MP algorithm opens new perspectives in the solution of relevant routing problems over communication networks such as the RWA in optical networks. In particular, it would be interesting to apply the MP algorithm in the iterative construction of RWA solutions over communication networks with finite link capacity, as it has been done for other types of EDP algorithms.
equations. Formally this writes: In our simulations we defined the decision variable as the total difference of the optimal currents (calculated edge by edge) between two consecutive iteration steps : where µ t i j = | min µ=−M,...,M E i j (µ) + E ji (−µ) − c i j (µ) | and convergence is reached when d t = 0 for n consecutive time steps.     1-4 give the characteristics of the benchmark. For each algorithm, columns 1-3 represent the average, the minimum and the max number of accommodated paths over 20 runs of a given set of commodity instance respectively. ACO and LS performances are reported in [31,36]. Performance comparison between MP and the other algorithms is given in the three last columns, representing the performance ratio 100 · (M BP acc /M alg acc − 1) where alg indicates the algorithm used (MSG, ACO and LS respectively). We use as M MP acc the best one between MP with and without reinforcement.