An ant colony optimization approach for the preference ...soc. Ant Colony...¢  An ant...

download An ant colony optimization approach for the preference ...soc. Ant Colony...¢  An ant colony optimization

of 16

  • date post

  • Category


  • view

  • download


Embed Size (px)

Transcript of An ant colony optimization approach for the preference ...soc. Ant Colony...¢  An ant...

  • Journal of the Chinese Institute of Engineers Vol. 34, No. 2, March 2011, 181–196

    An ant colony optimization approach for the preference-based shortest path search

    Seung-Ho Oka, Woo-Jin Seoa, Jin-Ho Ahnb, Sungho Kangc and Byungin Moond*

    aSchool of Electrical Engineering and Computer Science, Kyungpook National University, 1370 Sankyuk-dong, Buk-gu, Daegu 702-701, Korea; bDepartment of Electronic Engineering, Hoseo University, 165 Sechul-ri, Baebang-myun, Asan, Chungnam 336-795, Korea; cDepartment of Electrical and Electronic Engineering, Yonsei University, 262 Seongsanno,

    Seodaemoon-Gu, Seoul 120-749, Korea; dSchool of Electronics Engineering, Kyungpook National University, 1370 Sankyuk-dong, Buk-gu, Daegu 702-701, Korea

    (Received 9 September 2010; final version received 19 October 2010)

    This article proposes a modified ant colony system algorithm for finding the shortest path with preferred links. Most of the shortest path search algorithms focus on finding the distance or time shortest paths. However, these shortest paths may not necessarily be the optimum path for drivers who prefer choosing a less short, yet more reliable or flexible path. Accordingly, a preference-based shortest path search algorithm is proposed that uses the properties of the links in a map, as specified by a set of data provided by the user of the car navigation system. The proposed algorithm is implemented in C and experiments are performed using maps that include 64, 128, 192, and 256 nodes with 118, 242, 362, and 484 links, respectively. The simulation results with various parameter sets confirm that the proposed algorithm is effective for finding the preference-based shortest path.

    Keywords: shortest path search algorithm; car navigation system; ant colony optimization algorithm; artificial intelligence

    1. Introduction

    Recent years have witnessed a resurgence of interest in the shortest path search problem for use in various engineering applications, such as highway systems, railroads, transportation planning systems, and com- munication networks (Noto and Sato 2000, Fu et al. 2006). In particular, car navigation systems have undergone an explosive growth in popularity due to new developments in Intelligent Transportation Systems (Noto and Sato 2000). Yet, a single-pair shortest path search from a source node to a destina- tion node remains one of the most important problems for car navigation systems, as there are many possible paths to the destination node.

    In recent years, a number of shortest path search algorithms, such as A* (A-star), Dijkstra algorithms,

    and meta-heuristic approaches, such as ant colony

    optimization (ACO), have been proposed for use in car

    navigation systems (Noto and Sato 2000, Yue and

    Shao 2007, Nazari et al. 2008, Salehinejad and Talebi

    2008). Nazari et al. (2008) suggested a modified version

    of the Dijkstra algorithm that restricts the search space

    using a rectangle or hexagon to improve the run time

    and memory usage of the algorithm, while Yue and

    Shao (2007) studied the application of the A* shortest

    path search algorithm in a real-time urban dynamic

    traffic environment. Meanwhile, Noto and Sato (2000)

    proposed a method to obtain a path as close as possible

    to the path obtained by the Dijkstra method with a

    decreased search time, while Salehinejad and Talebi

    (2008) developed a vehicle navigation system that finds

    the shortest path by considering the average velocity

    and distance between nodes based on ACO. However,

    none of these shortest path search algorithms can meet

    the requirements of a preference-based shortest path

    search algorithm, as the focus is only finding the

    distance shortest or time shortest path. Therefore,

    Perny and Spanjaard (2005) proposed various

    preference-based search algorithms for the spanning

    tree problem and shortest path problem using the

    Kruskal, Prim, and Bellman algorithms. Yet, the high

    computational time demand involved with these opti-

    mal algorithms makes them unsuitable for most

    transportation applications that require fast search

    times. Thus, a key motivation for developing a heuristic

    shortest path algorithm, such as A* or ACO, was the need for a fast identification of the shortest path for some transportation applications (Fu et al. 2006). Taking inspiration from the foraging behavior of ants,

    *Corresponding author. Email:

    ISSN 0253–3839 print/ISSN 2158–7299 online

    � 2011 The Chinese Institute of Engineers DOI: 10.1080/02533839.2011.565574

    D ow

    nl oa

    de d

    by [

    Y on

    se i U

    ni ve

    rs ity

    ] at

    1 8:

    58 1

    7 A

    ug us

    t 2 01


  • ACO was originally proposed by Dorigo and his colleagues as a method for solving optimization problems (Dorigo et al. 1996). Ants deposit phero- mones on the ground as chemical signals to mark certain favored paths to guide other ants in the colony to food. While these pheromone signals evaporate over time, the pheromone on the shortest path from the food to the ant nest is reinforced more often than the pheromone on the longer path, allowing most of the ants to find the shortest path due to the higher pheromone intensity.

    The first ACO algorithm, referred to as the ant system (AS), was initially applied to the traveling salesman problem (Dorigo et al. 1996), and the ant colony system (ACS) algorithm was then developed by Gambardella and Dorigo to improve the performance of AS (Gambardella and Dorigo 1996). As a result, ant algorithms have since been successfully applied to many combinational problems, including traveling salesman problems, quadratic assignment problems (Maniezzo 1999), job-shop scheduling problems (Colorni et al. 1994), sequential ordering (Gambardella and Dorigo 1997), and graph coloring problems (Costa and Hertz 1997). In addition, Chen and Ting (2006) proposed an improved ACS algorithm with modified local and global pheromone updating rules to solve vehicle routing problems, while Lee et al. (2008) improved the ACO algorithm by adopting a potential field scheme as the heuristic function.

    However, distinct from previous algorithms that focus on finding the distance shortest or time shortest path, this article proposes a preference-based shortest path search algorithm that adopts a new heuristic function, transition probability rule, and pheromone update rule, where the preference-based shortest path is identified using link properties, such as avoidance and preference, as specified by a set of data provided by the user of the car navigation system. The remain- der of this article is organized as follows. Section 2 briefly introduces the AS and ACS algorithms, and then Section 3 describes the proposed ACS algorithm for preference-based shortest path searching. Section 4 presents the implementation of the algorithm and analyzes experimental results as a function of various parameters, and conclusions are given in Section 5.

    2. ACO algorithm

    Several ACO algorithms have already been proposed and successfully employed to solve various problems (Dorigo and Caro 1999, Dorigo et al. 2006, Dorigo and Socha 2007). Essentially, these algorithms can be described as the interplay of three procedures (ConstructAntsSolutions, UpdatePheromones, and

    DaemonActions) as follows (Dorigo and Thomas


    Procedure: ACO algorithm Set parameters, initialize pheromone trails; While (termination condition not met) Do ConstructAntsSolutions; UpdatePheromones; DaemonActions; (optional)

    End End

    After initializing the parameters and pheromone

    trails, the ACO algorithm continues to iterate through

    the main loop until the algorithm meets its termination

    conditions. After all the paths of ants from the source

    node to the destination node are constructed using the

    transition probability in the ConstructAntsSolutions

    procedure, the pheromone trails are then updated

    using the pheromone updating rules in the

    UdatePheromones procedure. Meanwhile, the

    DaemonActions procedure is used to implement cen-

    tralized actions that cannot be performed by a single

    ant, such as a local optimization procedure or the

    collection of useful global information to decide

    whether it is useful or not to deposit additional

    pheromones (Dorigo and Thomas 2004). The first ACO algorithm referred to as AS was

    developed by Dorigo et al. (1996). In AS, an ant k

    currently located at node i selects the next node j using

    the transition probability rule (1).

    pkijðtÞ ¼ ��ij ðtÞ�

    � ijðtÞP

    u2Nk i ðtÞ �

    � iuðtÞ�

    � iuðtÞ

    , if j 2 Nki ðtÞ,

    0, if j =2 Nki ðtÞ,

    8>: ð1Þ where Nki is the set of nodes not yet visited by ant k and

    connected to node i, �ij represents the pheromone for the link between nodes i and j, and � and � are the positive constant parameters used to amplify the rela-

    tive importance of the pheromone versus the heuristic

    function �ij given by

    �ij ¼ 1

    dij , ð2Þ

    where dij is the distance of the link between nodes i

    and j. Once all the ants have constructed a path from the

    source node to the destination node, each ant deposits

    pheromone in the amount of D�kijðtÞ at the links of the path using the pheromone updating rule (3).

    �ijðtþ 1