Abstract
The minimum-weight rooted arborescence problem is an NP-hard combinatorial optimization problem which has important applications, for example, in computer vision. An example of such an application is the automated reconstruction of consistent tree structures from noisy images. In this chapter, we present an ant colony optimization approach to tackle this problem. Ant colony optimization is a metaheuristic which is inspired by the foraging behavior of ant colonies. By means of an extensive computational evaluation, we show that the proposed approach has advantages over an existing heuristic from the literature, especially for what concerns rather dense graphs.
Access provided by Autonomous University of Puebla. Download chapter PDF
Similar content being viewed by others
Keywords
- Consistent Tree Structures
- Minimum Weight Arborescence
- Pheromone Value
- Subordinate Procedure
- Rank-based Analysis
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
1 Introductiory Remarks
Solving combinatorial optimization problems with approaches from the swarm intelligence field has already a considerably long tradition. Examples of such approaches include particle swarm optimization (GlossaryTerm
PSO
) [1] and artificial bee colony (GlossaryTermABC
) optimization [2]. The oldest – and most widely used – algorithm from this field, however, is ant colony optimization (GlossaryTermACO
) [3]. In general, the GlossaryTermACO
metaheuristic attempts to solve a combinatorial optimization problem by iterating the following steps: (1) Solutions to the problem at hand are constructed using a pheromone model, that is, a parameterized probability distribution over the space of all valid solutions, and (2) (some of) these solutions are used to change the pheromone values in a way being aimed at biasing subsequent sampling toward areas of the search space containing high quality solutions. In particular, the reinforcement of solution components depending on the quality of the solutions in which they appear is an important aspect of GlossaryTermACO
algorithms. It is implicitly assumed that good solutions consist of goodsolution components. To learn which components contribute to good solutions most often helps assembling them into betterIn this chapter, GlossaryTerm
ACO
is applied to solve the minimum-weight rooted arborescence (GlossaryTermMWRA
) problem, which has applications in computer vision such as, for example, the automated reconstruction of consistent tree structures from noisy images [4]. The structure of this chapter is as follows. Section 68.2 provides a detailed description of the problem to be tackled. Then, in Sect. 68.3 a new heuristic for the GlossaryTermMWRA
problem is presented which is based on the deterministic construction of an arborescence of maximal size, and the subsequent application of dynamic programming (GlossaryTermDP
) for finding the best solution within this constructed arborescence. The second contribution is to be found in the application of GlossaryTermACO
[3] to the GlossaryTermMWRA
problem. This algorithm is described in Sect. 68.4. Finally, in Sect. 68.5 an exhaustive experimental evaluation of both algorithms in comparison with an existing heuristic from the literature [5] is presented. The chapter is concluded in Sect. 68.6.2 The Minimum-Weight Rooted Arborescence Problem
As mentioned before, in this work we consider the GlossaryTerm
MWRA
problem, which is a generalization of the problem proposed by Venkata Rao and Sridharan in [5, 6]. The GlossaryTermMWRA
problem can technically be described as follows. Given is a directed acyclic graph with integer weights on the arcs, that is, for each exists a corresponding weight . Moreover, a vertex is designated as the root vertex. Let be the set of all arborescences in G that are rooted in v r . In this context, note that an arborescence is a directed, rooted tree in which all arcs point away from the root vertex (see also [7]). Moreover, note that contains all arborescences, not only those with maximal size. The objective function value (that is, the weight) of an arboresence is defined as follows:The goal of the GlossaryTerm
MWRA
problem is to find an arboresence such that the weight of is smaller or equal to all other arborescences in . In other words, the goal is to minimize objective function . An example of the GlossaryTermMWRA
problem is shown in Fig. 68.1.The differences to the problem proposed in [5] are as follows. The authors of [5] require the root vertex v r to have only one single outgoing arc. Moreover, numbering the vertices from to , the given acyclic graph G is restricted to contain only arcs such that . These restrictions do not apply to the GlossaryTerm
MWRA
problem. Nevertheless, as a generalization of the problem proposed in [5], the GlossaryTermMWRA
problem is NP-hard. Concerning the existing work, the literature only offers the heuristic proposed in [5], which can also be applied to the more general GlossaryTermMWRA
problem.The definition of the GlossaryTerm
MWRA
problem as previously outlined is inspired by a novel method which was recently proposed in [4] for the automated reconstruction of consistent tree structures from noisy images, which is an important problem, for example, in Neuroscience. Tree-like structures, such as dendritic, vascular, or bronchial networks, are pervasive in biological systems. Examples are 2D retinal fundus images and 3D optical micrographs of neurons. The approach proposed in [4] builds a set of candidate arborescences over many different subsets of points likely to belong to the optimal delineation and then chooses the best one according to a global objective function that combines image evidence with geometric priors (Fig. 68.2, for example). The solution of the GlossaryTermMWRA
problem (with additional hard and soft constraints) plays an important role in this process. Therefore, developing better algorithms for the GlossaryTermMWRA
problem may help in composing better techniques for the problem of the automated reconstruction of consistent tree structures from noisy images.3 DP-Heur: A Heuristic Approach to the MWRA Problem
In this section, we propose a new heuristic approach for solving the GlossaryTerm
MWRA
problem. First, starting from the root vertex , a spanning arborescence in G is constructed as outlined in lines – of Algorithm 68.1. Second, a GlossaryTermDP
algorithm is applied to in order to obtain the minimum-weight arborescence T that is contained in and rooted in . The GlossaryTermDP
algorithm from [8] is used for this purpose. Given an undirected tree with vertex and/or edge weights, and any integer number , this GlossaryTermDP
algorithm provides – among all trees with exactly k edges in T – the minimum-weight tree . The first step of the GlossaryTermDP
algorithm consists in artificially converting the input tree T into a rooted arborescence. Therefore, the GlossaryTermDP
algorithm can directly be applied to arborescences. Morever, as a side product, the GlossaryTermDP
algorithm also provides the minimum-weight arborescences for all l with , as well as the minimum-weight arborescences rooted in v r for all l with . Therefore, given an arborescence of maximal size , which has arcs (where V is the vertex set of the input graph G), the GlossaryTermDP
algorithm is applied with . Then, among all the minimum-weight arborescences rooted in v r for , the one with minimum weight is chosen as the output of the GlossaryTermDP
algorithm. In this way, the GlossaryTermDP
algorithm is able to generate the minimum-weight arborescence T (rooted in v r ) which can be found in arborescence . The heuristic described above is henceforth labeled DP-Heur. As a final remark, let us mention that for the description of this heuristic, it was assumed that the input graph is connected. Appropriate changes have to be applied to the description of the heuristic if this is not the case.Algorithm 68.1 Heuristic DP-Heur for the MWRA problem
1: input: a GlossaryTerm
DAG
, and a root node2:
3:
4: for do
5:
6:
7:
8:
9:
10: end for
11:
12: output: arborescence T
4 Ant Colony Optimization for the MWRA Problem
The GlossaryTerm
ACO
approach for the GlossaryTermMWRA
problem which is described in the following is a - Ant System (GlossaryTermMMAS
) [9] implemented in the hyper-cube framework (GlossaryTermHCF
) [10]. The algorithm, whose pseudocode can be found in Algorithm 68.2, works roughly as follows. At each iteration, a number of n a solutions to the problem is probabilistically constructed based on both pheromone and heuristic information. The second algorithmic component which is executed at each iteration is the pheromone update. Hereby, some of the constructed solutions – that is, the iteration-best solution , the restart-best solution , and the best-so-far solution – are used for a modification of the pheromone values. This is done with the goal of focusing the search over time on high-quality areas of the search space. Just like any other GlossaryTermMMAS
algorithm, our approach employs restarts consisting of a re-initialization of the pheromone values. Restarts are controlled by the so-called convergence factor (GlossaryTermcf
) and a Boolean control variable called bs_update. The main functions of our approach are outlined in detail in the following.Algorithm 68.2 Ant Colony Optimization for the MWRA Problem
1: input: a GlossaryTerm
DAG
, and a root node v r2: , , , false
3: for all
4: while termination conditions not met do
5:
6: for do
7: Construct_Solution
8:
9: end for
10:
11: if then
12: if then
13: ApplyPheromoneUpdate
14: (cf,bs_update,,,,)
15: ComputeConvergenceFactor()
16: if then
17: if true then
18: for all
19:
20: false
21: else
22: true
23: end if
24: end if
25: end while
26: output: , the best solution found by the algorithm
Construct_Solution : This function, first, constructs a spanning arborescence in the way which is shown in lines – of Algorithm 68.1. However, the choice of the next arc to be added to the current arborescence at each step (see line of Algorithm 68.1) is done in a different way. Instead of deterministically choosing from , the arc which has the smallest weight value, the choice is done probabilistically, based on pheromone and heuristic information. The pheromone model that is used for this purpose contains a pheromone value for each arc . The heuristic information of an arc a is computed as follows. First, let
Based on this maximal weight of all arcs in G, the heuristic information is defined as follows:
In this way, the heuristic information of all arcs is a positive number. Moreover, the arc with minimal weight will have the highest value concerning the heuristic information. Given an arborescence (obtained after the ith construction step), and the nonempty set of arcs that may be used for extending , the probability for choosing arc is defined as follows
However, instead of choosing an arc from always in a probabilistic way, the following scheme is applied at each construction step. First, a value is chosen uniformly at random. Second, r is compared to a so-called determinism rate , which is a fixed parameter of the algorithm. If , arc is chosen to be the one with the maximum probability, that is
Otherwise, that is, when , arc is chosen probabilistically according to the probability values.
The output T of the function Construct_Solution is chosen to be the minimum-weight arborescence which is encountered during the process of constructing , that is,
ApplyPheromoneUpdate(cf, bs_update, , , , ): The pheromone update is performed in the same way as in all AS algorithms implemented in the GlossaryTerm
HCF
. The three solutions , , and (as described at the beginning of this section) are used for the pheromone update. The influence of these three solutions on the pheromone update is determined by the current value of the convergence factor cf, which is defined later. Each pheromone value is updated as follows:where
where is the weight of solution , the one of solution , and the one of solution . Moreover, evaluates to if and only if arc a is a component of arborescence T. Otherwise, the function evaluates to . Note also that the three weights must be chosen such that . After the application of (68.6), pheromone values that exceed are set back to , and pheromone values that have fallen below are set back to . This prevents the algorithm from reaching a state of complete convergence. Finally, note that the exact values of the weights depend on the convergence factor GlossaryTerm
cf
and on the value of the Boolean control variable bs_update. The standard schedule as shown in Table 68.1 has been adopted for our algorithm.ComputeConvergenceFactor(): The convergence factor (cf) is computed on the basis of the pheromone values
This results in cf = 0 when all pheromone values are set to . On the other side, when all pheromone values have either value or , then cf = 1. In all other cases, GlossaryTerm
cf
has a value in . This completes the description of all components of the proposed algorithm, which is henceforth labeled Aco.5 Experimental Evaluation
The algorithms proposed in this chapter – that is, DP-Heur and Aco – were implemented in ANSI C++ using GCC 4.4 for compiling the software. Moreover, the heuristic proposed in [5] was reimplemented. As mentioned before, this heuristic – henceforth labeled VenSri – is the only existing algorithm which can directly be applied to the GlossaryTerm
MWRA
problem. All three algorithms were experimentally evaluated on a cluster of PCs equipped with Intel Xeon X3350 processors with and of memory. In the following, we first describe the set of benchmark instances that have been used to test the three algorithms. Afterward, the algorithm tuning and the experimental results are described in detail.5.1 Benchmark Instances
A diverse set of benchmark instances was generated in the following way. Three parameters are necessary for the generation of a benchmark instance . Hereby, n and m indicate, respectively, the number of vertices and the number of arcs of G, while indicates the probability for the weight of any arc to be positive (rather than negative). The process of the generation of an instance starts by constructing a random arborescence T with n vertices. The root vertex of T is called v r . Each of the remaining arcs was generated by randomly choosing two vertices v i and v j , and adding the corresponding arc to T. In this context, may be added to T, if and only if by its addition no directed cycle is produced, and neither nor form already part of the graph. The weight of each arc was chosen by, first, deciding with probability q if the weight is to be positive (or nonpositive). In the case of a positive weight, the weight value was chosen uniformly at random from , while in the case of a nonpositive weight, the weight value was chosen uniformly at random from .
In order to generate a diverse set of benchmark instances, the following values for n, m, and q were considered:
-
;
-
;
-
.
For each combination of n, m, and q, a total of problem instances were generated. This resulted in a total of problem instances, that is, instances for each value of q.
5.2 Algorithm Tuning
The proposed GlossaryTerm
ACO
algorithm has several parameters that require appropriate values. The following parameters, which are crucial for the working of the algorithm, were chosen for tuning:-
: the number of ants (solution constructions) per iteration;
-
: the learning rate;
-
: the determinism rate.
We chose the first problem instance (out of problem instances) for each combination of n, m, and q for tuning. A full factorial design was utilized. This means that GlossaryTerm
ACO
was applied (exactly once) to each of the problem instances chosen for tuning. The stopping criterion was fixed to solution evaluations for each application of GlossaryTermACO
. For analyzing the results, we used a rank-based analysis. However, as the set of problem instances is quite diverse, this rank-based analysis was performed separately for six subsets of instances. For defining these subsets, we refer to the instances with as small instances, and the remaining ones as large instances. With this definition, each of the three subsets of instances concerning the three different values for q, was further separated into two subsets concerning the instance size. For each of these six subsets, we used the parameter setting with which GlossaryTermACO
achieved the best average rank for the corresponding tuning instances. These parameter settings are given in Table 68.2.5.3 Results
The three algorithms considered for the comparison were applied exactly once to each of the problem instances of the benchmark set. Although Aco is a stochastic search algorithm, this is a valid choice, because results are averaged over groups of instances that were generated with the same parameters. As in the case of the tuning experiments, the stopping criterion for Aco was fixed to solution evaluations. Tables 68.3–68.5 present the results averaged – for each algorithm – over the instances for each combination of n and m (as indicated in the first two table columns). Four table columns are used for presenting the results of each algorithm. The column with heading value provides the average of the objective function values of the best solutions found by the respective algorithm for the instances of each combination of n and m. The second column (with heading std) contains the corresponding standard deviation. The third column (with heading size) indicates the average size (in terms of the number or arcs) of the best solutions found by the respective algorithm (remember that solutions – that is, arborescences – may have any number of arcs between and , where is the number of the input GlossaryTerm
DAG
). Finally, the fourth column (with heading time (s)) contains the average computation time (in seconds). For all three algorithms, the computation time indicates the time of the algorithm termination. In the case of Aco, an additional table column (with heading evals) indicates at which solution evaluation, on average, the best solution of a run was found. Finally, for each combination of n and m, the result of the best-performing algorithm is indicated in bold font.Concerning the instances with q = 0.25, the results allow us to make the following observations. First, Aco is for all combinations of n and m the best-performing algorithm. Averaged over all problem instances Aco obtains an improvement of over VenSri. Figure 68.3a shows the average improvement of Aco over VenSri for three groups of input instances concerning the different arc densities. It is interesting to observe that the advantage of Aco over VenSri seems to grow when the arc density increases. On the downside, these improvements are obtained at the cost of a significantly increased computation time. Concerning heuristic DP-Heur, we can observe that it improves over VenSri for all combinations of n and m, apart from and . This seems to indicate that, also for DP-Heur, the sparse instances pose more of a challenge than the dense instances. Averaged over all problem instances, DP-Heur obtains an improvement of over VenSri. The average improvement of DP-Heur over VenSri is shown for the three groups of input instances concerning the different arc-densities in Fig. 68.3a. Concerning a comparison of the computation times, we can state that DP-Heur has a clear advantage over VenSriespecially for large-size problem
Concerning the remaining instances (q = 0.5 and q = 0.75), we can make the following additional observations. First, both Aco and DP-Heur seem to experience a downgrade in performance (in comparison to the performance of VenSri) when q increases. This holds especially for rather large and rather sparse graphs. While both algorithms still obtain an average improvement over VenSri in the case of q = 0.5 – that is, improvement in the case of Aco and in the case of DP-Heur – both algorithms are on average inferior to VenSriin the case of
Finally, Fig. 68.4 presents the information which is contained in column size of Tables 68.3–68.5 in graphical form. It is interesting to observe that the solutions produced by DP-Heur consistently seem to be the smallest ones, while the solutions produced by VenSri seem generally to be the largest ones. The size of the solutions produced by Aco is generally in between these two extremes. Moreover, with growing qthe difference in solution size as produced by the three algorithms seems to be more pronounced. We currently have no explanation for this aspect, which certainly deserves further
6 Conclusions and Future Work
In this work, we have proposed a heuristic and an GlossaryTerm
ACO
approach for the minimum-weight rooted arboresence problem. The heuristic makes use of dynamic programming as a subordinate procedure. Therefore, it may be regarded as a hybrid algorithm. In contrast, the proposed GlossaryTermACO
algorithm is a pure metaheuristic approach. The experimental results show that both approaches are superior to an existing heuristic from the literature in those cases in which the number of arcs with positive weights is not too high and in the case of rather dense graphs. However, as far as sparse graphs with a rather large fraction of positive weights are concerned, the existing heuristic from the literature seems to have advantages over the algorithms proposed in this chapter.Concerning future work, we plan to develop a hybrid GlossaryTerm
ACO
approach which makes use of dynamic programming as a subordinate procedure, in a way similar to the proposed heuristic. Moreover, we plan to implement an integer programming model for the tackled problem – in the line of the model proposed in [11] for a related problem – and to solve the model with an efficient integer programming solver.Abbreviations
- ABC:
-
artificial bee colony
- ACO:
-
ant colony optimization
- cf:
-
convergence factor
- DAG:
-
directed acyclic graph
- DP:
-
dynamic programming
- HCF:
-
hyper-cube framework
- MMAS:
-
MAX-MIN ant system
- MWRA:
-
minimum-weight rooted arborescence
- PSO:
-
particle swarm optimization
References
R. Poli, J. Kennedy, T. Blackwell: Particle swarm optimization – an overview, Swarm Intell. 1(1), 33–57 (2007)
M.F. Tasgetiren, Q.-K. Pan, P.N. Suganthan, A.H.-L. Chen: A discrete artificial bee colony algorithm for the total flowtime minimization in permutation flow shops, Inf. Sci. 181(16), 3459–3475 (2011)
M. Dorigo, T. Stützle: Ant Colony Optimization (MIT, Cambridge 2004)
E. Türetken, G. González, C. Blum, P. Fua: Automated reconstruction of dendritic and axonal trees by global optimization with geometric priors, Neuroinformatics 9(2/3), 279–302 (2011)
V. Venkata Rao, R. Sridharan: Minimum-weight rooted not-necessarily-spanning arborescence problem, Networks 39(2), 77–87 (2002)
V. Venkata Rao, R. Sridharan: The minimum weight rooted arborescence problem: Weights on arcs case, IIMA Working Papers WP1992-05-01_01106 (Indian Institute of Management Ahmedabad, Research and Publication Department, Ahmedabad 1992)
W.T. Tutte: Graph Theory (Cambridge Univ. Press, Cambridge 2001)
C. Blum: Revisiting dynamic programming for finding optimal subtrees in trees, Eur. J. Oper. Res. 177(1), 102–114 (2007)
T. Stützle, H.H. Hoos: $\mathcal{MAX}$-$\mathcal{MIN}$ ant system, Future Gener. Comput. Syst. 16(8), 889–914 (2000)
C. Blum, M. Dorigo: The hyper-cube framework for ant colony optimization, IEEE Trans. Syst. Man Cybern. B 34(2), 1161–1172 (2004)
C. Duhamel, L. Gouveia, P. Moura, M. Souza: Models and heuristics for a minimum arborescence problem, Networks 51(1), 34–47 (2008)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Blum, C., Mateo Bellido, S. (2015). Ant Colony Optimization for the Minimum-Weight Rooted Arborescence Problem. In: Kacprzyk, J., Pedrycz, W. (eds) Springer Handbook of Computational Intelligence. Springer Handbooks. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-43505-2_68
Download citation
DOI: https://doi.org/10.1007/978-3-662-43505-2_68
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-43504-5
Online ISBN: 978-3-662-43505-2
eBook Packages: EngineeringEngineering (R0)