An improved fuzzy ant colony system for route selection based on real time traffic condition

ABSTRACT


INTRODUCTION
The growth of cities in the world that exceeds 50 percent has an impact on the problems of each city to become more complex, one of them is congestion problem [1]. With city conditions that often have congestion, a driver need to find a route of the many possible routes that may occur from origin to destination by considering several factors, such as safety level, low traffic conditions, as well as routes with the least number of crossroads to avoid traffic lights [2]. This results in a route that is shorter than the other routes, which is not necessarily the driver's first choice, for example route A has a shorter distance than route B, but on route A there are congestion points resulting in driver will choose the route B [3].
Currently there are many algorithms that can be used for route selection, one of which is the ant algorithm. The weaknesses of the ant algorithm is its dependence on the required parameter values, such as number of ants (m), the value of pheromone density (α), heuristic factor (β), evaporation coefficient (ρ), initial value of pheromone intensity (τ0), and number of iterations (NCmax) [4]. The problem is that some parameters must be set manually. Parameter setting and variation of ant are still in the study stage and analysts are effectively carrying out a large number of investigations on parameter settings and fundamentals properties of the ant algorithm [5]. The optimal performance and efficiency of the ant algorithm are closely 52 related to the selected parameter values [6]. Selecting different parameters for the same case study can produce different outcomes. The dominant use of parameters is in the selection of visiting nodes to be chosen by ants. This research will minimize parameter dependency by using fuzzy logic to determine the probability of the next node visited by ants.
The traditional route selection algorithm only has one parameter (destination function) parameter, namely distance, or solves only single criteria traveling salesman problem. In many TSP problems, sometimes it has more than one criteria as a determinant of the shortest route or is called a multi-criteria traveling salesman problem [7]. One of the implementations of the multi-criteria traveling salesman is to determine the route based on traffic conditions. Determining a route based on traffic conditions requires more than one criterion, such as number of traffic lights passed, distance, and other criteria [3]. There are several methods that can be combined with route search algorithms in overcoming multi-criteria traveling salesman problems, such as the Chebycheff scalarization function to fuzzy logic.
The Chebycheff scalarization function was used to overcome the limitations of the route selection method for some criteria with sum up all the objective values to form the distance between locations. The use of the Chebycheff scalarization function is not suitable if collaborated with a route selection algorithm that requires dynamic parameter values, one of which is traffic conditions. The distance value from the Chebycheff scalarization function has to be recalculated under dynamic criteria conditions so that it takes longer processing time [8][9].
The fuzzy system is another method that can be used to solve the multi-criteria traveling salesman problem. Fuzzy systems are a part of soft computing that works based on the concept of obscurity and is able to provide results in an interpretable way. Fuzzy system utilizes fuzzy set theory and fuzzy inference process mechanism so that it can be implemented in various applications in the real world. In classical set theory, an absolute object can or may not be a member of a certain set, whereas in the fuzzy set theory it is possible for an object to be owned by a set based on a certain degree value. The fuzzy system performs fuzzy boundary modeling based on the weaknesses of linguistic terms by introducing a membership. Fuzzy set includes a membership function which aims to map each element of the set into the form of membership degree values [10].
The collaboration between ant algorithms and other methods has been widely researched at present, both to solve single criteria [11][12][13][14][15] and multi criteria travelling salesman problems [2][3]16]. A. A. Alsawy et al. [11] combines fuzzy logic and ACO on TSP problems. The value of the distance between 2 points or nodes becomes the fuzzy membership input value which is divided into the lowest value estimate, the best estimate, and the highest value estimate. The probability value of the city visited is based on each fuzzy membership function. The three probability values are then defuzified using the centroid method. This study only uses one distance parameter as the determination of the shortest route.
R. Gan et al. [12] the ACO algorithm is modified by forming two types of ants, namely ordinary ants and scout ants. The common ant works according to the traditional ant colony search algorithm. The scout ant will calculate the mutation probability value for each route which is the current optimal solution using the path evaluation model and look around for the optimal solution according to the mutation probability. This study only uses one distance parameter as the determination of the shortest route. In [13] modified the ACO algorithm by combining ACO and roulette wheel or stochastic universal sampling to solve the problem of dynamic traveling salesman problems. This algorithm utilizes the pheromone update process by involving immigrant ants to ensure that there is no survived ant in two consecutive times due to dynamic environmental conditions. The weakness of this research is the determination of the route which remains only the distance factor as a determination of the determination without considering other factors in real time. The environmental dynamics are resolved only by utilizing immigrant ants in the pheromone update process. W. Gao [14] made modifications to the ACO algorithm to speed up the route search process. The acceleration process is done by checking the route each ant get half of the city has been visited. If there are routes obtained by several ants that can be combined, the ant routes will be combined to produce a combined route. This can result in a performance boost as the search process is halved. The problem in this study only applies to STSP so that route determination only focuses on distance. In [15] combines the A* algorithm and the ACO algorithm to produce the shortest route. The A* algorithm will first provide a path recommendation which will then be visited by the ACO algorithm so that it can obtain a more optimal path. The weakness of this algorithm is the determination of the path with only one criterion, namely the distance between the points to be visited.
H. Salehinejad et al. [2] combines the ant colony system (ACS) algorithm and fuzzy logic to find the optimal multi-parameter route between the pair of origin and destination points. The optimal route refers to several parameters, such as "Distance", "Traffic" and "Incident Risk". Artificial neural network (ANN) is used for estimation of future traffic data. The weakness of this research is that determining the probability of Int J Artif Intell ISSN: 2252-8938 An improved fuzzy ant colony system for route selection based on… (Erick Alfons Lisangan) 53 the next node visit does not include the pheromone factor in the fuzzy inference system so it is very dependent on the initialization of the ACS variable. E. A. Lisangan et al. [3] combined the ant colony system and fuzzy inference system to determine routes based on traffic conditions in real time, namely the number of vehicles and the average vehicle speed. In this study, the determination of the next point selection using a combination of pheromone values, distance, and visit probability obtained from fuzzy inference to the variable number of vehicles and average speed. The weakness of this study is the dependence on the alpha and beta variables which, if they have different, will produce different values.
Q. Song et al. [16] modified the ACO algorithm where the visit of the ants at the next location had considered several parameters, namely "Distance", "Traffic Flow", and "Incident Risk". The overall parameters are then multiplied and combined with the pheromone intensity as a probability value for the ant's visit to the next point. The results of the fuzzy inference system from the three parameters are used in the pheromone update process. The weakness of this study is the dependence on the alpha in calculating the probability value of the ant visit.
This paper will make improvements to the ant colony system in determining the next point or node to be visited by ants. If the traditional ant algorithm, the probability is obtained by taking into account the distance and pheromone intensity factors, the probability will be obtained from the results of the fuzzy inference in this paper. The fuzzy input variables are pheromone intensity, distance, and traffic conditions at a certain time. The output value of the fuzzy inference system is the probability value of an ant visit which will be the basis for determining the visit to the next point or node. Ants will move to the next location without considering the distance between nodes, but also traffic conditions and pheromone intensity. Even though the distance between the nodes is close, it is not a rule that the ants will choose the node, but they must also consider the traffic conditions at a certain period.

PROPOSED METHOD 2.1. Fuzzy inference system
Fuzzy inference system (FIS) is one of the most widely used applications of fuzzy logic and fuzzy set theory [17]. Fuzzy inference mappings the input variables given to the output space using a deduction mechanism based on fuzzy logic which consists of the "IF-Then" rule, membership function, and fuzzy logic operations. In general, FIS has four main processes, that is fuzzification, knowledge base, inference process, and defuzzification process [18]. In this paper, defuzzifaction strategy in the inference engine uses the maxmin inference method [19] and the Tsukamoto method [20]. There are four input variables in the FIS, that is "Pheromone Intensity", "Distance", "Vehicle Intensity", and "Average Speed".

Fuzzification
The fuzzification process is a process of calculating the input value or crisp value into the degree of membership. The process of calculating fuzzification is based on predetermined membership function boundaries [21]. The linguistic terms of Pheromone Intensity are low, medium, and high. Membership degrees of Pheromone Intensity (x) in the fuzzy set are pheromoneIntensity_low, pheromoneIntensity_medium, and pheromoneIntensity_high which are calculated using (1-3).
The Distance parameter is the distance value between two points or nodes from the dataset. Short, medium, and long also become the linguistic terms of Distance. The degree of membership of Distance (x) in the fuzzy set are distance_short, distance_medium, and distance_long can be calculated using (4)(5)(6).
The linguistic Vehicle Intensity is low, medium, and high. The Vehicle Intensity value is determined based on the distribution of the number of vehicles on a particular road from the dataset. The membership degrees of Vehicle Intensity (x) on the fuzzy set are vehicleIntensity_low, vehicleIntensity_medium, and vehicleIntensity_high which can be calculated using (7)(8)(9).
The speed limit rule in Denmark divides vehicle speed into three rules, namely 50 km/h in the city, 80 km/h outside the city, and 130 km/h on the highway [22]. Based on these rules, the linguistic term for Average Speed was formed, namely slow, medium, and fast. The calculation of the membership degree of Average Speed (x) in the fuzzy set, namely averageSpeed_slow, averageSpeed_medium, and averageSpeed_fast uses (10)(11)(12).
The output variable from the FIS is the Probability of Location Selection which has low and high linguistic terms. This Probability of Location Selection will be the determining value for ants to visit the next node. In (13)(14) are equations to obtain the degree of membership of the location selection probability (z) in the set of fuzzy probability_low and probability_high.

Fuzzy rules
Fuzzy sets are used as the basis for forming the IF-THEN fuzzy rules. This rule base is used to provide output in the inference system. The order of the rules does not affect the output value because it is evaluated in parallel using fuzzy reasoning [23]. Fuzzy rules are established using common knowledge to select locations based on traffic conditions. For example, if a driver wants to visit a destination, the driver will try to avoid the location of congestion (slow average speed and high vehicle intensity) that occurs on the route being traversed and choose another alternative route. In terms of probability, the opportunity to visit the point is smaller than the alternative point even though the distance covered is shorter than the other alternatives. The same thing applies to the ant algorithm where the ants tend to follow a path with a higher pheromone intensity. In this paper, there is sixty fuzzy rules used in this research as shown in Figure 1.

Fuzzy inference system
In this paper, Tsukamoto's fuzzy inference system method is used to form the basis of the "IF-THEN" rule. First of all, a set of fuzzy rules is created and the value of the degree of membership is calculated according to the rules that have been created. Furthermore, the alpha predicate value is determined using the fuzzy set operation after knowing the membership degree value of each fuzzy rule [21].

Defuzzification
The defuzzification process then adds up all the membership functions from the output of the fuzzy logic rules to a crisp output [24]. The results of defuzzification ( ) will be used by ant (k) in the Improved FACS algorithm as a determinant in finding the next node (j) from the current node (i). The center average defuzzyfier (15) method is used in the defuzzification process where α_pr is the alpha predicate value for rule-r (the minimum value of membership degrees), zr is the crisp value obtained from the inference. For the r-rule, and n is the number of fuzzy rules.

Improved fuzzy ant colony system
The ant colony optimization (ACO) algorithm is an algorithm that is inspired by the ant behavior in foraging proposed by Dorigo [25]. Ants will mark the best path from the ant nest to a food source in the form of a feromome as an indication of the presence of other ants. The more ants that pass through the path, the more pheromone traces are left. Other ants can find the shortest path because this pathway has the highest amount of pheromone intensity [26]. The ant colony system (ACS) algorithm is the result of the development of ACO by Dorigo and Gambardella with the aim of improving ACO performance. ACS has many characteristics that differ from other ACO algorithm developments [27]. These characteristics are ACS using aggressive action choice rules, adding pheromones only to global solutions which is the best pathway, and the evaporation of pheromone values when ants use the path to move from one location to another [28].
In this paper, the ant will choose the next location based on the output value of the fuzzy inference system which is the possibility of selecting the next location. This value will be a parameter of comparison between ants in selecting the next location. Fuzzy inference system will accept parameter values involving node i to j at time period t in the form of pheromone intensity, distance, average speed, and vehicle intensity.

Initialize
There are several parameters needed to initialize the initial values such as origin and destination location (O/D), number of ants (m), evaporation coefficient (ρ), initial value of pheromone intensity (τ0), and number of iterations (NCmax). Because the pheromone intensity value and distance have become one of the inputs from the fuzzy inference system, the value of pheromone density (α) and heuristic factor (β) are not one of the parameters in the algorithm initialization. In this paper, the parameters used as shown in Table 1 which is the collaboration of the results of parameter recommendations from [29][30][31].

Tour construction
Initially, all ants will be placed at the point of origin location. The ant selects the next location using the pseudorandom-proportional action choice rule in the traditional ACS algorithm. Pseudorandomproportional is a uniformly distributed random variable, q ∈ [0, 1], compared to the tunable parameter (q0) [32]. In the improved fuzzy ACS algorithm, ant k, currently located at node i will use (16) to select the next node j. The probability of ant k in period t to visit node j from node i is obtained from the output of the fuzzy inference system using (15).
According to (16), is the set of candidate nodes u that can be visited by ant k from node i. is the probability of selecting node u obtained from the FIS output based on the pheromone intensity, distance, average speed and vehicle intensity between current node i and the next node u. The best node (j) is selected using arg max (a function to find the index or node with the maximum value) of the probability value among all candidate nodes u connected to node i. After getting the next best location, ant k will enter the node into a tabuk that contains a list of locations that have been visited by ants k. If the destination location has been found then the ant will stop the tour construction.

Global pheromone trail update
The global update is processed after all ants have completed their tour construction [27]. The shortest path is determined after each iteration is completed. The shortest tour is the total distance value in tabuk. Global best ants are allowed to add pheromones using (12) on traversed edges.
where ( + 1) is the value of pheromone intensity between node i and j at next iteration, ( ) is the value of pheromone intensity between node i and j at current iteration, ∆τ ( ) is the probability value of location selection from fuzzy inference system at iteration t.

Local pheromone trail update
During construction tours, the ants visit the edges and change their pheromone levels by applying local renewal rules using (18). ( ) is the pheromone intensity between node i and j at the current iteration.

Stopping criteria
In this paper, the stopping criteria is if the number of iterations is equal to NCmax.

RESULTS AND DISCUSSION
This paper uses a real traffic dataset for the city of Aarhus, Denmark (http://iot.ee.surrey.ac.uk/8080/datasets.html) which consists of 213 location points. Traffic conditions are obtained from 00:00 to 23:55 with data retrieval intervals every five minutes. The average speed and number of vehicles passing the road are the traffic conditions that the dataset has. The traffic conditions on June 2, 2014 were used as a test of this paper. In [33] divides traffic conditions into two types, namely peak hours and off-peak hours. There are two peak hours periods, namely between 07.00-09.00 and 15.00-17.00. Meanwhile, for off-peak hours there are three periods, namely 00.00-07.00, 09.00-15.00 and 17.00-00.00. This paper takes one sample for each period, both peak and off-peak hours. The time periods used are 05:00, 07: 15, 12:45, 16:25, and 22:20 by considering the completeness of the traffic condition data set.
The testing process for the improved fuzzy ant colony system (I-FACS) algorithm will be compared with the traditional ACS algorithm and the fuzzy ant colony system (FACS) [3]. Experiments were carried out 50 times for route selection from origin and destination (O/D) points. At each O/D point, 50 experiments were carried out for each method. The best cost obtained from 50 trials is chosen to represent the route from each O/D point. The ACS results as shown in Table 2. The ACS result cost is the total distance of the shortest route. The results of the FACS and I-FACS calculations for each O/D point pair as shown in Tables 3-5. The cost of FACS and I-FACS is the distance value from the best route based on traffic conditions. at the sample time.
In Tables 3-5 explained that the routes generated by I-FACS are more varied than the FACS algorithm. This can be due to the variable pheromone intensity and distance in the input fuzzy inference system. The value of the dynamic pheromone intensity variable depending on the best route obtained by each iteration can be a factor in the variation of the resulting routes. The best condition obtained by I-FACS was at point O/D= 112/34 where at 05:00, I-FACS was able to obtain the route with the best length compared to ACS and FACS. Route changes will always change based on time due to dynamic traffic conditions at any time.
The average distance difference between ACS and FACS or I-FACS shows that the route generated by I-FACS is closer to the shortest route generated by ACS. Based on the three O/D points tested, FACS has an average distance difference with ACS of 950.33. While I-FACS has an average distance difference with ACS of 910.8. The I-FACS algorithm is able to improve the FACS' average distance difference by 4.16% and is able to provide more route variations than FACS.

CONCLUSION
Improved fuzzy ant colony system method is able to produce more varied routes than the fuzzy ant colony system method. The result of the comparison of the route distance obtained shows that I-FACS is able to produce a better route by 4.16% than FACS by looking at the average distance difference on ACS. This method is expected to be developed by considering several other factors, such as road width to user personalization. Integration with wireless sensor networks is one of the future researches plans so that it can produce a route search application using real data in a city. This method is expected to be a reference for the development of smart transportation in support of smart mobility, which is one of the components in the smart city concept.