Recent research in finding the optimal path by ant colony optimization

Received Sep 11, 2020 Revised Nov 16, 2020 Accepted Dec 8, 2020 The computation of the optimal path is one of the critical problems in graph theory. It has been utilized in various practical ranges of real world applications including image processing, file carving and classification problem. Numerous techniques have been proposed in finding optimal path solutions including using ant colony optimization (ACO). This is a natureinspired metaheuristic algorithm, which is inspired by the foraging behavior of ants in nature. Thus, this paper study the improvement made by many researchers on ACO in finding optimal path solution. Finally, this paper also identifies the recent trends and explores potential future research directions in file carving.


INTRODUCTION
A graph comprises a set of edges and a set of vertices where each of the edges connecting among two vertices. Generally, the object is indicated as a vertex; meanwhile, the edge is indicated as a relationship between two objects. Therefore, a graph might be applied to represent information that can be modeled as objects and relationships among those objects. Considering that graph theory is a study of graphs. Graph theory is used in different practical applications [1] of the real world including image processing, file carving, and classification problem. In graph-theoretic (GT) carving, vertices are indicated as fragments and the edges are associated with weights which the value of the weights denotes the likelihood that in the original file there are two fragments are adjacent. The concept of utilizing a GT approach in the file carving had been explored in [2] and highlighted that the GT file carving had main shortcomings. Most of the time, it failed to find the optimal path. The reason is that they are not exhaustively performed on all the data. They decided too early to certain choices which then prevented them from finding the best path [2].
This paper structure is organized as follows; Section 2, a short overview of the optimal path. The optimization technique is discussed in section 3. Section 4 discusses the ant colony optimization (ACO). The ACO algorithm is discussed in section 5. The recent literature on the improvement of ACO is discussed in section 6. Finally, recommendations and conclusion are in section 7.

OPTIMAL PATH
In an undirected graph, a path is considered as an optimal path when it fulfills the requirement which all the edges and all vertices (excluding the beginning and the ending point) are different. An optimal path is the one that meets a specific requirement in the path; for instance, it will be termed as the shortest path when the sum of the weight of its unit edges is minimized. The calculation process to find the optimal path in the graph has been used in constructing the optimal path algorithm. Numerous researches have been done in finding the optimal path including simulated annealing algorithm, A* algorithm, Dijkstra algorithm and Ant Colony Optimization (ACO). These algorithms are examined from various angles and continuously improved and enhanced in order to acquire an efficient optimal path algorithm. This paper focuses only on the ACO to solve the optimal path problem.

OPTIMIZATION TECHNIQUE
Optimization is the process of finding an optimal or best solution in solving a problem. Meanwhile, an optimization problem can be defined as a process to find the values of the variables which maximize or minimize an objective function and at the same time fulfill the constraints. 3 main factors have been highlighted in the optimization problem. The first factor is minimizing or maximizing an objective function. The second factor is variables or unknowns set which affecting the objective function and the third factor is a set of constraints allowing the unknowns to accept only particular values while excluding others. There is more than one local solution in most optimization problems. Thus, it is so important in selecting a good optimization method that will not be greedy and search just in the neighborhood area of the optimal solution; this will be caused by misleading the process of searching and trapped at a local solution. Nevertheless, the optimization algorithm must have a mechanism for balancing among local search and global search. Different approaches to solve mathematical and combinatorial in optimization problems are used [3]. Besides, in case the search space is large, or the optimization problem is complicated, the problem of optimization with traditional mathematics will be difficult to solve. For that purpose, several metaheuristic optimization techniques have been developed to resolve these tough problems regarding optimization [4].
The objective function value is controlled by a set of variables. These variables are very important for the optimization problem. Without these variables, the constraints and the objective function cannot be determined. A set of constraints accept the variables to pick several values and reject the remaining values. The constraints are considered as not important and their existence relies on the optimization problem requirements. The optimization problem is finding the values of the variables which maximize or minimize the objective function as well as satisfy the constraints. The formulation of the optimization problem for maximizing the objective function can be expressed as; ] which maximizes ( ) subject to the constraints: (1) Based on the given formulation above, (X) is defined as an (n-dimensional vector) known as (design vector), ( ) is the objective function, ( ) is inequality constraints and ℎ ( ) is equality constraints. The number of n, m and p is not equivalent at all. This problem is categorized as a constrained optimization problem. The optimization problem may have only one objective function known as a single-objective optimization problem or many objective functions known as multiple optimization problems. An example given below is a clear example of a constrained optimization problem with single-objective.
Minimize cost, The ranges of the variables: Based on the example given, the objective function and the constraints are indicated as linear equations in this optimization problem.

ANT COLONY OPTIMIZATION
It is a very challenging task to find an optimal solution for the optimization problem. It relies on the correct use and the selection of a suitable algorithm. The selection of an algorithm is based on the computational resources, type of problem, time constraints and the availability of algorithms. However, for global optimization, non-linear, large-scale problems, usually, there is no agreed guideline for the selection of algorithm, and there is no efficient algorithm in many cases.
A metaheuristic is also known as a technique or procedure intended to find an approximate solution in a low computational time (short time). A diverse metaheuristic algorithm including stochastic in nature and nature-inspired has emerged. Mostly, metaheuristic algorithms are population-based algorithms. Yet one metaheuristic approach that gives us the opportunity for interactive learning is inspired by the foraging behavior of ants called ant colony optimization (ACO). Over time, ants have the capability in finding the optimal solution from the food source towards their nest through communication rather than visual cues. Ants deposit chemical information called pheromone when coming back once they find the object. Ants used these pheromones in attracting other ants to choose the same path, thus, all the colony searching for a solution in the space near to the previous good solution [5]. Deneubourg et al. [6] discovered by following the behavior of ants as well as pheromone laying. They conducted an experiment called the "double bridge experiment". They found out that two bridges with the same length were connecting between the nest of the Argentine ants' colony and the food source as exposed in Figure 1(a). Then, ants reached their food source after exploring the surroundings of their nest. Besides, they deposited pheromone along their way between food source and nest. In the beginning, every ant chose one bridge randomly. But then, after some time, one of the bridges showed a higher pheromone concentration compared to the other bridge because of random fluctuations and consequently, attracted more ants until the whole colony converges to this bridge.
Later, the variation of the double bridge experiment has been carried out by Goss et al. [7] which one bridge is longer than the other bridge as presented in Figure 1(b). It was noticed that the stochastic fluctuations are much decreased in the initial choice of a bridge and a second method becomes a crucial role: the ants who chose the short bridge were the first ones to reach the nest. Thus, the short bridge received pheromone earlier compared to the long bridge. Therefore, it increases the probability that more ants choose the short bridge instead of the long one. Contrasting with other evolutionary algorithms, the ACO algorithm is a reactive search optimization method based on the "learning while optimizing" principle. ACO algorithm has been implemented due to the high performance in solving diverse combinatorial optimization problems, for example, image registration, the quadratic assignment problem, the traveling salesman problem (TSP) and other problems. These challenge problems are considered as highly efficient of the ACO algorithm compared to other metaheuristic algorithms.
Four main reasons have been highlighted that motivates us for choosing ACO [5]. Firstly, ACO effectively solves numerous NP-hard combinatorial optimization problems secondly, it has a high convergence speed and few parameters. Thirdly, it is simply still highly efficient in solving a problem with a large search space. Fourthly, during the optimization procedure, it still can keep learning. Basically, ACO is originally intended to optimize discrete problems compared to particle swarm optimization. It can prevent conversion between a continuous domain and discrete domain, which leads to efficiently performs and reducing computational complexity with large discrete in searching space. Besides, the strategy of solution construction arms ACO with high diversity as well, therefore ACO has the capability in handling complex optimization problems. All these reasons motivate us to propose ACO based on GT based carving. The advantages and disadvantages of ACO are tabulated in Table1. ACO is not found effective for dealing with large-scale combinatorial questions.

2.
It's easy to pair it with other algorithms, resulting in enhanced robustness and increased reliability.
Initial information of the algorithm is scarce, it is easy to fall into the local optimum. 3.
The ACO algorithm, one of the main yet incomplete algorithms, does not only boast the advantages such as high speed and high accuracy but it also searches for a quasi-optimal solution more quickly.
The option of Pheromone-related parameters in the formula is largely empirical; therefore, if the pheromone parameters are selected without experiment and theoretical arguments, chances are that the results obtained would be unclear or oblivious due to the inefficacy and poor convergence of the algorithm

THE ANT COLONY OPTIMIZATION ALGORITHM
Basically, the general scheme of the ACO algorithm for implementations on static combinatorial optimization problems [8] has been given in Figure 2, once the parameters, as well as pheromone trails, have been initialized. The main loop consists of 3 steps: The first step is that m ants are constructing solutions for the problem instance under consideration, possibly by the provided heuristic information and biased by the information of the pheromone. When their solutions have been accomplished, perhaps, these might enhance in the phase of an optional local search. Lastly, the pheromone trails are adjusted before proceed to the next iteration in reflecting the search experience of the ants.

Construct ant solutions
In order to tackle the problem instance, a solution is constructed by the set of ants. Every ant is initialized with an empty solution = Ø in the beginning. Then, an ant updated it extends the partial solution at every iteration step by selecting one feasible component of the solution ∈ ( ) ⊆ C and adding it into its current solution. ( ) is denotes as a set of solution components that need to be added whilst preserving feasibility and is implicitly defined by the process of solution construction implements by ants. Otherwise, if a partial solution unable to extend whilst preserving feasibility, then, it is dependent on the mechanism of a certain construction. The complete solution is constructed in case the solution construction is infeasible or abandoned. In a most recent case, based on a violation degree of problem constraints, the penalization can be applied to the infeasible solution.

Apply local search
When full candidate solutions have been obtained, they can be further improved by using local search algorithms. Besides, in combination with local search algorithms, ACO algorithms achieve the best performance for a large range of combinatorial optimization problems. In more general, One example of socalled daemon actions is local search. These are employed to centralized actions or adopt problem-specific which impossible for individual ants to perform.

Update pheromones
Generally, the pheromone update is given in the following equation: where denotes as the set of solutions which are employed in order to deposit pheromone, ∈ [0,1] denotes as a parameter known as evaporation rate, (•): → + denotes as a function such that ( ) < ( ′) ⇒ ( ) ≥ ( ′). Usually, it is known as the evaluation function and it also can verify the quality of the solution.
The goal of the pheromone update is to obtain the following iterations more suitable for solution components belonging to a better solution. Essentially, this goal can be achieved by two mechanisms. Firstly, a deposit of pheromones, when combined with a selected set of better solutions able to increases the pheromone level of solution components. Thus, ants become more attractive to these solution components in the subsequent iterations. Secondly, the evaporation of the pheromone trail is a method that reduces through time by the previous ants deposited the pheromone. Pheromone evaporation is essential from a practical point of view to prevent the algorithm converge too rapidly to a sub-optimal area. It applies an effective form of forgetting, favoring the exploration of the new areas of the search space.

IMPROVEMENT ON ANT COLONY OPTIMIZATION
In recent years with the progress of researches and applications, ant colony optimization (ACO) has been enhanced to improve the efficiency of ACO as explained in the next subsection.

Improvement by applying construct ant solutions
Liu et al. [9] have proposed a greedy-Levy ACO in order to solve complicated combinatorial optimization problems. This method employed epsilon greedy as well as Levy flight. Epsilon greedy is one of the important and extensively been applied in reinforcement learning as a policy-based exploration method. Besides, it has been utilized as the 'pseudo-stochastic mechanism' to improve the performance of the ACO algorithm. Meanwhile, 'Levy flight' is relying on the Levy distribution and also helps accelerate global optimization and balance the searching space. Then, a new ACO algorithm is proposed by Gao [10] which expands the search space for the ants a well as diversifies the solutions searched. This new algorithm integrates pairs of searching ants to enhance solution diversification.
Yi et al. [11] employed multiple pheromone change and heuristic functions methods. Moreover, they introduced mutation strategy and adaptive mechanism in order to reduce computational times of the ant colony (AC) algorithm, hasten up the convergence algorithm as well as increased the prediction accuracy. Long et al. [12] improved the AC algorithm for the mobile robot in solving complicated map problems, specifically in the shortest path length, improving the speed of convergence and bending the effect of suppression. An improved A* algorithm estimated function has been employed as the heuristic function in order to enhance the smoothness of the path and search efficiency as well. Furthermore, they improved the global search ability of the algorithm as well as solved the ant deadlock problem by utilized the method of improved MIN-MAX Ant System and retraction mechanism. Whereas Qin et al. [13] enhanced the global convergence capability by the introduced rule of ant state transition in order to stimulate ants in the attempt the path which is less searched. Additionally, they improved the searching efficiency with designed a strategy for ant path compression.

Improvement by applying global search
An improved ACO-based method was suggested by Wang et al. [14], in order to avoid being stuck at a local optimal solution, to enhance the capability of global search and to improve the rate of convergence.

Improvement by applying local search
A hybrid fuzzy ACO (FACO) algorithm has been proposed by Jia et al. [15]. An optimistic coefficient is introduced in this algorithm to handle the processing time of fuzzy which leads to producing an algorithm more stable and feasible in a fuzzy scenario. Moreover, two candidates are integrated to reduce the search space which results in improving the searching efficiency. In fact, to further enhance the quality solution, a fuzzy local optimization approach is employed. The bi-objective ACO has been suggested by Jia et al. [16] to minimize make span and total energy consumption. In discrete optimization, finding a feasible solution is a very challenging problem owing to the complex constraints in the problem. Thus, an efficient method is provided to create feasible solutions, consequently, in the search space, the AC only requires focusing on the promising area. In fact, to construct the solutions, the user's preferences are incorporated. In addition, to improve the solutions, a neighborhood-based local optimization is utilized ensuring that the capabilities of AC's exploration and exploitation can be adequately exerted. Chen et al. [17] proposed the sequential variable neighborhood descent integrated with a memetic algorithm based on ACO. Moreover, to solve the bi-objective multiple TSP, a local search procedure for bi-objective problems has been proposed and implemented. Thammano and Onnsrikaw [18] improved the strength of the ACO and employed one or other of four algorithms such as simulated annealing (SA), similarity measure SA (Sim-SA), 2-Opt and 3-Opt to find near-optimal solutions and improving local search. Guan et al. [19] suggested an ACO with a local search for the bandwidth minimization problem on graphs. The primary novelty for this algorithm is the utilization of an efficient local search to increase ACO's intensification ability. The local search is integrated with the first and best improvement strategy. The first improvement employed hill climbing method in finding better solutions till the current solution unable to be further improved. The best improvement is then performed a specified number of iterations for visiting a new search space.

Improvement by applying global search and local search
Srichandum and Pothiya [20] have suggested an improved ant colony optimization (IACO) in order to ensure the diversity of ants. The additional procedures include a particular improvement of the algorithm (known as neighborhood searches) and re-initializations. In the searching process, the solution being repeated for a long time. This means that the process failed to escape with this solution or unable to find better solutions. Consequently, this solution is possible either locally or globally. The search process will be interrupted if the global solution is known because the best solution has been found. In contrast, if the global solution is unknown, then, the algorithm assumes it is a local solution. Meanwhile, if the process is a blow to the local solution in a very long time, the process of re-initialization is utilized. Subsequently, this mechanism helps the search process to continue and find better solutions. Later, Hong et al. [21] improved the AC algorithm that employed the internet of things (IoT) to crawl and collect cluster information. Based on the trajectory information of AC, For the cluster resource indexing of the IoT, the location and velocity are updated and the balanced AC algorithm is used to perform the global and local search for resources and initialise the clustering center, and the goal function is constructed for the cluster resource indexing of IoT and the problem of the optimization parameter has been solved by the constraint condition of the minimum variance of the whole fitness. The strong global optimization capability of the AC algorithm is utilized in order to realize resource indexing optimization.

Improvement by applying pheromones update
Ding et al. [22] suggested IMCA-BS (Improved AC algorithm-based band selection) algorithm in order to solve the drawbacks of the conventional AC algorithm. In the IMACA-BS, the initialization of pheromone on each path is based on the heuristic desirability amongst each pair of nodes with the means of a pre-filter. The information amongst the potential node and all the preferred nodes is employed during the searching process in order to lead a search ant to perform a state transition with the pseudo-random rule. Besides, an adaptive information strategy is proposed to avoid the searching ants leaving the pheromone with just several (instead of all) optimal paths. The proposed IMACA-BS avoids the AC being trapped in local optima by accelerating the speed of convergence as well as maintaining the diversity of the population.
Luo et al. [23] proposed an improved pheromone method, which calculates the initial pheromone based on the relative distance between the current node, next node and the starting to ending point connection. The initial pheromone with unequal allocation has been produced to prevent the blindness search at early planning. For path selection, a pseudo-random transition rule is applied, the probability of state transition is being calculated based on the number of iterations and current optimal solution, the determination of proportion or random selections is changing adaptively. Besides, the worst solution and optimal solution are suggested in improving the global pheromone update approach. Moreover, the dynamic punishment method is suggested as well in solving the deadlock problem. This study intends in solving the problems including low search efficiency, slow speed of convergence and local optimum in the AC algorithm. Deng et al. [24] introduced ICMPACO (new multi-population co-evolution ACO) which based on co-evolution mechanism, multi-population strategy, pheromone diffusion mechanism and pheromone updating strategy in order to balance the solution diversity and speed of convergence as well as enhance the performance of optimization to solve the large scale optimization problem. Besides, in the ICMPACE algorithm, the optimization problem is segregated into numerous sub-problems, meanwhile, the ants in the population also segregated into common ants and elite ants to avoid stuck at local optimal and enhance the rate of convergence. Furthermore, in order to improve the ability of optimization ability, the pheromone updating strategy is utilized. Whilst to make ants released the pheromone at a certain point, the pheromone diffusion mechanism is employed. This affects gradually a certain range of adjacent regions. Also, the coevaluation mechanism is employed to exchange information between several sub-populations in implementing information sharing.
Deng et al. [25] proposed a new pheromone updating rule, known as SPB (sub-path-based pheromone modification) 'rule and suggested an improved ACO based on the SPB rule, naturally named' as SPB-ACO. The SPB rule comprises an adaptive part and an iterative updating part. The adaptive part regulates the updating strength by the gradual iteration. Meanwhile for the iterative updating part is utilized to update certain selected pheromone of sub-paths trace, known as r-rank sub-paths chosen with calculating the crossed ants of a sub-path in each iteration. Subsequently, with the combination of the iteration-best update rule and SPB rule, an adaptive SPB ACO is applied to solve the standard of TSP.
Qian et al. [26] suggested an improved ACO, which enhanced the pheromone update method and the heuristic function of the ACO algorithm. In the heuristic function, the influence factor of path distance is proposed. The algorithm search has some direction, in the meantime, to enhance the speed of convergence of the algorithm. Furthermore, the pheromone's penalty mechanism is employed and it merged with the factor of self-adapted volatility. Table 2 tabulated the summarization of improvement ACO optimization.  [10].
• Expands the search space for the ants a well as diversifies the solutions searched. -Employed multiple pheromone change and heuristic function methods [11].
• Reduce computational times of the ant colony (AC) algorithm, hasten up the convergence algorithm as well as increased the prediction accuracy. -Improved AC algorithm for the mobile robot [12].
• Improving the speed of convergence and bending the effect of suppression. • Enhance the smoothness of the path and search efficiency.
• Improved the global search ability of the algorithm as well as solved ant deadlock problem -Enhanced global convergence capability [13].
• Stimulate ants in an attempt at a path that is less searched.
• Improved the searching efficiency with designed a strategy for ant path compression 2.
Improvement on global search -An improved ACO-based method [14].
• Avoid being stuck at the local optimal solution, to enhance the capability of global search and to improve the rate of convergence.
• Reduce the search space which results in improving the searching efficiency. -The bi-objective ACO [16].
• Minimize makespan and total energy consumption. -The sequential variable neighborhood descent is integrated with a memetic algorithm based on ACO [17].
• Solve the bi-objective multiple TSP.
-Improved the strength of the ACO [18].
• Improved the strength of the ACO.
• Find near-optimal solutions and improving local search. -ACO with local search for the bandwidth minimization problem on graphs [19].
• Ensure the diversity of ants.
• Helps the search process to continue and find better solutions. -Improved AC algorithm that employed the Internet of Things to crawl and collect cluster information [21].
• Avoid the AC being trapped in local optima by accelerating the speed of convergence as well as maintaining the diversity of the population. -An improved pheromone method [23].
• Solving the problems including low search efficiency, slow speed of convergence and local optimum in the AC algorithm. -ICMPACO (New multi-population coevolution ACO) [24].
• Balance the solution diversity and speed of convergence.
• Solve the large-scale optimization problem.
• Avoid stuck at local optimal and enhance the rate of convergence. • Improve the ability of optimization ability.
• Solve the standard of TSP. -An improved ACO, which enhanced the pheromone update method and the heuristic function of the ACO algorithm [26].
• Enhance the speed of convergence of the algorithm.

CONCLUSION
In this research work, first, we gave a brief description of the graph and graph theory. After that, we defined graph-theoretic (GT) carving and highlighted the main shortcoming in GT. We then gave a further explanation of the optimal path. In order to find an optimal solution, optimization provides a better solution. Furthermore, we highlighted three main factors in optimization. Therefore, it is so important in selecting a good optimization method. One of the metaheuristic optimization techniques is Ant Colony Optimization (ACO). We outlined the general framework of the ACO algorithm. For this reason, it gives us the idea to propose ACO based on GT based carving. Moreover, we classified the improvement of ACO based on the general scheme of the ACO optimization for implementations on static combinatorial optimization problems. In future works, we intend to integrate ACO with file carving techniques in carving files such as office documents, emails and images. This technique will give an optimal solution to solve fragmentations.