• No results found

Chapter 2 Literature Review

2.3 Existing solution methods for MEDP

2.3.3 Ant-colony optimization

Ant colony optimization (ACO) was initially proposed by Marco Dorigo in 1992 in his PhD dissertation [21]. The idea of ACO comes from observing the exploitation of food resources by ants. In the beginning, ants wander randomly. If an ant finds food, it leaves pheromone on the trail back to the colony. Other ants are likely to follow the trail instead of keep travelling at random. If one eventually finds food, it also leaves pheromone to reinforce the path. On the other hand, the pheromone on paths evaporates gradually, thus reducing its strength of attraction. The pheromone density becomes higher on the shorter paths than the longer ones, therefore a shortest path between the food source and the ants’ nest may be found eventually.

The application of ant colony optimization (ACO) to solving MEDP is the only known metaheuristic method. In [23], MEDP is decomposed into subproblems . Each subproblem , where , is trying to find a path for request on

by an ant. In other words, ants are assigned for the connection requests.

A constructed ant solution contains paths which are not necessarily edge-disjoint. An edge-disjoint solution is generated by iteratively removing the path that has the most edges in common with other paths, until the remaining paths are mutually edge-disjoint. Let

denote the number of edge-disjoint paths obtained from . Since two solutions and may have the same number of EDPs, i.e., , a second criterion is introduced to quantify the non-disjointness of an ant solution. Define as follows:

, (2.1)

For an ACO intermediate solution , measures the usage of edges that are covered by more than one path. That means is zero if all paths are mutually edge-disjoint. Generally speaking, a decrease of may imply an increase of the number of EDP. Thus we can define an ordering as follows: For two ACO intermediate solutions and , we say that if and only if

, (2.2)

Or

The pheromone model is critical for the ant colony optimization approach. Since the problem is decomposed into subproblems, a pheromone model is applied for each

subproblem . Each pheromone model consists of a pheromone value for each edge

. All pheromone values are in the range , where and are

user-defined parameters. We denote the set of pheromone models by . Algorithm 5 carries the pseudocode of a basic ACO algorithm. The procedure

sets all the initial pheromone values to be value . In each iteration, ant solutions are constructed by applying the function

times (with ants), where is a permutation of

. During the process of path construction, an ant iteratively moves from one node to another along an available edge, the choice of destination can be made either deterministically or stochastically. We randomly draw a number between 0 and 1. If

, the next step destination is chosen deterministically. Otherwise, the choice is

made stochastically.

After paths are constructed, the value of the variable will be updated if the solution improves. Finally, the pheromone values are updated depending on the edges included in . We refer readers to [23] for the details of the path construction and pheromone updating procedures.

Algorithm 5 Basic ACO Algorithm

Input: Begin:

1. ;

2. ; 3. while termination condition is false 4. (1,2…,); 5. for 6. ; 7. for 8. h ; 9. ; 10. end for 11. random permutation of ; 12. end for

13. Choose such that

14. if then 15. ; 16. h ; 17. end if 18. end while End

Output: Realizable requests and disjoint paths generated from

In [23], the author also proposed an enriched version of ACO for MEDP. The following four features are added to modify the way of exploring the solution space.

Sequential versus parallel solution construction: While constructing an ACO solution, instead of establishing a path for one request after another, the paths are built in parallel. That is, in each step, an ACO procedure either adds exactly one more edge, or takes a

backtracking move. This feature changes the dynamics of the searching process that may lead to different results.

Candidate list strategy: This is a mechanism to restrict the number of available choices for consideration at each construction step. For instance, when applying ACO to the traveling salesman problem, a restriction on checking a few nearby nodes only may significantly improve the solution efficiency and quality. The modified ACO for MEDP considers only “good” choices at each construction step to speed up the process.

Different search phases: The pheromone update scheme is an important component of ACO. In the basic algorithm, all the paths (including the non-disjoint paths) of the ant solution are used for updating the pheromone values. The author of [23] proposed a two-phase scheme. In the first phase, only the edge-disjoint paths are used for updating the pheromone values. The second phase kicks in when no improvement can be found over a certain period of time by using all paths to update pheromone values. Once the second phase results in any improvement, the algorithm returns to using the first phase.

Partial destruction of solutions: This mechanism helps the algorithm escape from the local solutions by removing and reconstructing some paths of the solution. This procedure is initiated once the algorithm fails to improve over a certain period of time.

In general, ACO approach has advantages over MSGA in terms of solution quality as well as computational time. The details of comparison on several benchmark instances can be found in [23].

Related documents