PHEROMONE DEPOSITION / UPDATING STRATEGY IN A NETWORK : USING ANT COLONY OPTIMIZATION ( ACO ) APPROACH

The study and understanding of the social behavior of insects has contributed to the definition of some algorithms that are capable of solving several types of optimization problems. The most important and challenging problems that the ants encounters when routing through a network arc, is their ability to searching for the path with a shorter length as well as to minimize the total cost incurred in the process of routing through the network. In this paper, we introduced some features to the existing Ant Colony Optimization (ACO) algorithm to help tackle this problem. First, we defined two kinds of pheromone and then we also defined three kinds of heuristic information to guide the searching direction of ants for this bi-criteria problem. Each of the ants uses the heuristic types and the pheromone types in each iteration based on the probability, controlled by two parameters. These two parameters are adaptively adjusted in the process of the algorithm. Second, we used the information of the partial solutions to modify the bias of ants so that inferior choices will be ignored. Finally, we tested the performance of the experimental results of the algorithm in an application under different Deadline constraints and the performance of the algorithm prove to be more promising, for it outperformed the performance of most of the algorithm we downloaded on line.


INTRODUCTION
The application of an Ant Colony Optimization (ACO) algorithm to a specific problem usually requires some customization of the method.Ranging from simple parameter specification to a more delicate problem modification, such as the design of operators or searching strategy.This is a crucial step for the success of the optimization (Runka, 2009).As one aims at maintaining the ability of the algorithm to perform a robust exploration of the search space (Ogban, Asagba and Owolabi, 2014), while granting it some specific information that helps to efficiently discover good and quality solution for a given problem.Ant colony optimization (ACO) algorithm draws its inspiration from pheromone-based strategies of the foraging process of ants.Initially, it was conceived to find the shortest path, soon after it was applied to different types of combinatorial optimization problems (Dorigo and Stuzle, 2004).Example of such situations addressed includes both static and dynamic variants of academic and real world problems.Usually, the problem is mapped into a fully connected graph.When seeking for a solution, the ants deposit pheromone while traveling across the graph edges, thus creating a virtual trail (Diosan and Oltean, 2009).A solution to the given problem will emerge from the interaction and cooperation that is made by the ants.
In this paper, we propose a framework to discover the effectiveness of the pheromone updating strategies for Ant Colony Optimization (ACO) algorithm.In the approach, the algorithm seeks to fine candidate solutions that can be used by the Ant Colony Optimization (ACO) algorithm to apply the Travelling Salesman Problem (TSP) (Diosan and Oltean, 2006).We will also use different instances to access the effectiveness of the proposed approach.Finally, this paper is structured as follows: In section 2, a general description of an Ant Colony Optimization (ACO) algorithm was presented.Section 3 presents a detailed synopsis of the system used by ants deposit pheromone and the updating strategies.Section 4 reports the experimental results and analysis.Finally, section 5 summarizes and conclusion and highlight future work.

PROBLEM DEFINITION/FORMULATION
Generally speaking, network flow application can be modeled as a Direct Acyclic Graph (DAG), G = (N, A).Let n be the number of nodes in the network with the set of nodes given as N = (n 1 , n 2 … nm) corresponding to the nodes on the network.And the set of arcs A represents precedence relations.And the arc is written in the form of (n i , n j ), where n i is called the parent node of n i , and n j and n j is called the child node of n i .Typically, a child node in a network cannot be executed until the execution of its parent node has been completed.The set of parent node of n i is denoted as pred (n i ), and the set of the child node is denoted as succ (n i ).A very good example of a network flow described by a Direct Acyclic Graph (DAG) is given in figure (1).For the sake of convenience, we have added to the Direct Acyclic Graph (DAG) n start to represent the start node and n end to represent the end node.Also, for all n i, 1≤ i ≤ m t is given, if an only if pred (n i ) is empty.We also added n i to all succ(n start ), so that pred(n i ) = {n start }.Similarly, anywhere we see succ(n i ) empty, we added n i to pred(n end ), so that succ(n i ) = {n end }.Furthermore, each node n i (1≤i≤n) has an implementation domain n i = {np i 1 , np i 2 … np im } where np ji (1≤j≤m t ) represents the node implementation and m i is the total number of available nodes implemented by n i .Also, denoted the total cost incurred in the process of np i j as c i j .Finally, the objective function of the scheduling problem is to find an optimal schedule {k 1 ,….,k m }, which means that n i is being executed by np i kt (1≤i≤n), so that the total cost of the network flow incurred in the process is minimized as described in equation ( 1) Moreover, the end time of the whole network flow must not be later than the given deadline constraint (D).For (D) is the deadline constraint required for use.

ANT COLONY OPTIMIZATION (ACO) ALGORITHM FOR NODE CONNECTION PROBLEM
The general idea of Ant Colony Optimization (ACO) algorithm is to simulate the foraging behavior of real ant colonies.When a group of ants set out from their nest to search for food, they deposit some chemical substance called pheromone on the path to their food source.By sensing this pheromone on the ground, other ants from the same colony can follow the path to food source discovered by the ants (Oltean, 2005).As this process continues, most of the ants tend to choose the path to food with the shorter distance knowing that there have been huge amounts of pheromone accumulated on the path.This collective pheromone deposition and pheromone following behavior of ants becomes the inspiring source of Ant Colony Optimization (ACO) algorithm.(Runka, 2009) In this paper, we applied the Ant System (AS) algorithm which is the first Ant Colony Optimization (ACO) algorithm developed to tackle network flow problem.
Informally, the algorithm can be viewed as interplay of the following procedure: (i) Initialization of the algorithm.All pheromone values are parameterized and initialized.

(ii)
Initialization of ants.Let us assume that groups of M ants are used in the algorithm.At the beginning of each of the iteration, all the ants are set to an initial state, and each ant chooses a constructive type (say forward or backward) and a heuristic type (say duration -greedy, cost -greedy or overall -greedy), based on the constructive type.Each of the ants builds its tackling sequence accordingly.

(iii)
Solution construction.M group of ants are set to build M solution to the problem and the construction procedure includes n steps.N is the number of nodes in the network.At each step, an ant will pick up the next node in its tackling sequence and map it to one implementation outside the node implementation domain using pheromone and heuristic information (Poli, and McPhee, 2008).The algorithm also estimates the earliest start time and the earliest end time in terms of the information of partial solution built by each ant.This information is what helps to guide the ant in its searching behavior.
(iv) Local Pheromone Updating.As soon as an ant finish mapping a node n i to np i j , the corresponding pheromone value is updated by a local pheromone updating rule.(v) Global Pheromone Update.After all the ants have completed their construction, the global pheromone updating is applied to the best-so-far solution.The completion search time and the total cost of all the solutions are being evaluated and the pheromones that are related to the best-so-far solution is significantly increased.But in this case, some parameters are adaptively adjusted.

(vi)
Terminal Test.If the test is passed, the algorithm will end.Otherwise, the algorithm will step up to begin a new iteration.
The flowchart of the algorithm is given in figure (1).

Initialize all ants
Step = 1 Selection of each ant

Definition of Pheromone and Heuristic information
The problem considered is a bi-criteria problem.Therefore, it requires two types of pheromone to be used in solving the problem.One of the pheromone quantities is used for road mapping (path creation) and the other pheromone quantity is used to check the time spent (duration).We denote these two types of pheromone as cᅺ ij and dᅺ ij (1≤ i ≤ n, 1≤ j ≤ m 1 ) .While, initializing the algorithm, all pheromone values are initialized.That is, cᅺ ij = dᅺ ij, dᅺ ij = dᅺ o, (1≤i≤n, 1≤j≤m 1 ) (2) where cᅺ ij and dᅺ ij are two parameters representing the initial values for cᅺ ij and dᅺ ij respectively.Similar to the Ant Colony System (ACS) for Traveling Salesman Problem (TSP), we set cᅺ o = 1(n.c LB ) and dᅺ o = 1(n.dLB ).Note that c LB and d LB are the lower bound estimation for the total cost respectively.Typically, c LB can be set to the total cost when every service is set to its lowest-cost implementation and d can be set to the duration.So we have cᅺ o= 1/(n. dᅺ o= 1/(n.d)(4) Note: the heuristic information for road mapping (path creation) service s i to sp i j is denoted as η ij .Finally, we used three different kinds of heuristic information to guide the searching direction of ants namely: duration-greedy, costgreedy and overall-greedy.However, the definition is given below Following this definition, duration-greedy heuristic bias the implementation with the shortest execution time, Costgreedy heuristic prefers the length with low-cost and the overall-greedy considers the both factors.

(viii)
Initialization of Ants At the beginning of each iteration, all ants are initialized and each ant chooses its type from any of the selection rule.Either from duration-greedy, cost-greedy or from the overall-greedy according to equation ( 6) Selection type = duration െ greedy, 0 ran p ଵ cost െ greedy, p ଵ ran p ଶ overall െ greedy, p ଶ ran 1 (6) Where p 1 and p 2 (ሺ0 ൏ p ଵ p ଶ ൏ 1ሻ are two parameters and ran∊ [0, 1] is a random number.Apparently, the probabilities of choosing duration-greedy, cost-greedy, and the overall greedy are p1, (p2,-p1) and (1-p2) respectively.The selection type of an ant is corresponding to the type of heuristic information it used while constructing a solution.Furthermore, each ant has to select its constructive type of solution randomly (from either the forward or the backward ants) and builds its sequence of services.The tackling sequence is built following a simple illustration of a network flow application with 9 tasks is given below.

(ix) Solution Construction
After initialization, M ants set out to build solutions to the problem in a parallel order according to their tackling sequence.In step k (1.k.n), each ant picks up the k th node from its tackling sequence and map it for an implementation out of the node implementation domain.Assume that an ant is choosing one node out of sp i ={sp i 1 , sp i 2 sp i 3 ,……sp i m } to map to s i , the selection rule is as follow: Step 2: Evaluate the overall bias desirability of all implementation in terms of equation ( 6) if the selection type of the ant is overall െ greedy; (7) Where B ij represents the bias mapping of n i to np ij (1≤j≤m i ;)and are two parameters that determine the weight of the pheromone and the heuristic information respectively.
Step 2: Adapt the values of B ij in terms of the information gotten from the partial solution.The earliest start time and the earliest end time of the node can be estimated for the current partial solution build by an ant.We denote the earliest start time of n i as n i .estand the earliest end time of n i as n i .eet.As the tackling sequence is built by depth-first search, it guarantees that a node is only considered by a forward ant until one of its parent nodes is considered.Similarly, a node is only considered by a backward ant until one of its child node is considered.We present a clear discussion of the situation with forward ant in the following text.However, the situation with the backward ant comes when regarding all parent nodes as child nodes and when regarding all children nodes as parent node.Therefore, the forward ant which is considered as n i n i .estcan be estimated as follow n i .est= maxn k∊pred (nt) nk.eet (8) For example, a forward ant uses the sequence of (n1.n2.n4.n7.n9.n5.n3.n6.n8) to build a solution for the workflow given in figure 2. After mapping all the nodes of the first branch, (n1.n2.n4.n7.n9) to create a corresponding implementation, we can then estimate n2.est = n1.eet,n4.est = n2.eet,n7.est = n4.eet,n9.est = n7.eet.Also, when considering the next node n5, we have n5.est= n2eet.On the other hand, it is also important to know that sometimes the earliest start time for the child node of n i may also have been estimated.For instance, when considering n5 in the same example given in the last paragraph written as n7.est (n7 will be the son of n5) because it has already been estimated.However, because the available time slot for n5 is limited by n2.eet and n7.est.We can then define slot as Slot i = undiϐined, if ⩝ ni ∊ succ n ୧ nk.est has not been evaluated ሺmin ୬୩ ∈ ୱ୳ୡୡ.ሺ୬୧ሻୟ୬ୢ୬୩.ୣୱ୲ ୦ୟୱ ୠୣୣ୬ ୣ୴ୟ୪୳ୟ୲ୣୢ nk.estሻ െ ni.est otherwise (9) Based on this definition, if n i is mapped to sp i j to satisfy d i j > slot i , then si.eet = si.est+ d i j will be larger than at least one of its child's estimated earliest start time.In this situation, the estimated earliest start time for all the child node of n i must be updated to be at least not smaller than n i .est.Otherwise, for all the implementations that will satisfy d i j ≤ slot i , will only be successful with the one with the lowest cost because all other choices will result to a higher cost solution with the same path created.Therefore, the ants will ignore these inferior choices by modifying the preferences B i j using equation ( 10) Step 3: An ant selects one implementation out of the following implementation Sp i = {sp i 1 , sp i 2 …sp i m } and map it to s i in terms of the following selection rule: n i = arg max∀୬୮ ሺଵஸ୨ஸ୫ భ ሻ ൗ B ୧୨, if q q routlette wheel scheme, otherwwise  The result obtained in the network flow application as illustrated in figures 3 and 4, can be seen that the performance of the algorithm outperformed other algorithm proposed in the literature.The result obtained was able to meet the deadline constraints and was able to make good use of the time to minimize cost.

Fig. 1 :
Fig. 1: The flowchart of the Ant System (AS) algorithm PHEROMONEDE POSITION/UPDATING STRATEGY IN A NETWORK: USING ANT COLONY 217

Figure 3 :
Figure 3: Mean Comparison for five different strategies at 200 iterations.A clearer picture in fig.4of the closeness between the RANK-BASE strategy and the DANTE with respect to their Mean Best fitness and a slim variation from that of Min-Max is shwon.

Figure 4 :
Figure 4: Best Tour Length and Mean Best Fitness compared.The result obtained in the network flow application as illustrated in figures 3 and 4, can be seen that the performance of the algorithm outperformed other algorithm proposed in the literature.The result obtained was able to meet the deadline constraints and was able to make good use of the time to minimize cost.