You are on page 1of 20

Bee Colony Optimization: The Applications Survey

DUSAN TEODOROVIC University of Belgrade, Faculty of Transport and Trac Engineering TATJANA DAVIDOVIC Mathematical Institute, Serbian Academy of Sciences and Arts and MILICA SELMIC University of Belgrade, Faculty of Transport and Trac Engineering

Bee Colony Optimization is a recently proposed, nature-inspired meta-heuristic. It has been successfully applied to many combinatorial optimization problems, mostly in transportation, location and scheduling elds. In this survey we summarize these application and give a brief description of the BCO algorithm and its modications. Categories and Subject Descriptors: I.2.8 [Articial Intelligence]: Problem Solving, Control Methods, and SearcHeuristic methods; G.2.1 [Discrete Mathematics]: Combinatorics; H.4.2 [Information Systems Applications]: Types of Systems Decision support (e.g., MIS); Logistics General Terms: Optimization, Meta-heuristics Additional Key Words and Phrases: Combinatorial Optimization, Bee Colony Optimization, Location Problems, Scheduling

1.

INTRODUCTION

Nature-Inspired Algorithms are motivated by a variety of biological and natural processes. The popularity of the Nature-Inspired Algorithms is primarily caused by the ability of biological systems to eectively adjust to frequently changeable environment. Evolutionary computation, neural networks, ant colony optimization, particle swarm optimization, articial immune systems, and bacteria foraging algorithm are the algorithms and concepts that were motivated by nature. Swarm behavior is one of the main characteristics of dierent colonies of social insects (bees, wasps, ants, termites). This type of behavior is rst and foremost characterized by autonomy, distributed functioning and self-organizing. Swarm Intelligence [Beni and Wang 1989] is the area of Articial Intelligence that is based on study of actions of individuals in various decentralized systems. When creating
Authors address: D. Teodorovi, M. Selmi, University of Belgrade, Faculty of Transport and c c Trac Engineering, Vojvode Stepe 305, 11000 Belgrade, Serbia. T. Davidovi, Mathematical Institute, Serbian Academy of Sciences and Arts, Kneza Mihaila 36, c P.O.Box 367, 11000 Belgrade, Serbia.. Permission to make digital/hard copy of all or part of this material without fee for personal or classroom use provided that the copies are not made or distributed for prot or commercial advantage, the ACM copyright/server notice, the title of the publication, and its date appear, and notice is given that copying is by permission of the ACM, Inc. To copy otherwise, to republish, to post on servers, or to redistribute to lists requires prior specic permission and/or a fee. c 2011 ACM 1529-3785/2011/0700-0001 $5.00
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011, Pages 120.

Duan Teodorovi et al. s c

Swarm Intelligence models and techniques, researchers apply some principles of the natural swarm intelligence. Few algorithms from the swarm intelligence class, inspired by bees behavior, appeared during the last decade [Abbass 2001; Afshar et al. 2007; Benatchba et al. 2005; Chong et al. 2006; Drias et al. 2005; Karaboga 2005; Koudil et al. 2007; Lui cc and Teodorovi 2001; Navrat 2006; Pham et al. 2006; Quijano and Passino 2007a; c 2007b; Wedde et al. 2004; Yang et al. 2007]. An excellent survey of the algorithms inspired by bees behavior in the nature is given in [Baykasoglu et al. 2007]. The Bee Colony Optimization (BCO) proposed in [Lui and Teodorovi 2001; cc c 2002; 2003a] is a meta-heuristic, since it represents a general algorithmic framework applicable to various optimization problems in management, engineering, and control, and it should always be tailored for a specic problem. The BCO belongs to the class of population-based algorithms. Complex initial formulation of the algorithm has been evolving to simpler versions through later applications [Anantasate et al. 2009; Davidovi et al. 2009b; Edara et al. 2008; Lui and Teodorovi 2003b; c cc c Markovi et al. 2007; Teodorovi and DellOrco 2005; Teodorovi and Selmi 2007]. c c c c The BCO uses a similarity among the way in which bees in nature look for a food, and the way in which optimization algorithms search for an optimum in combinatorial optimization problems. The major idea behind the BCO is to create the multi agent system (colony of articial bees) capable to eciently solve hard combinatorial optimization problems. The articial bee colony behaves to some extent similar and to some extent in a dierent way from bee colonies in nature. They explore through the search space looking for the feasible solutions. In order to discover superior and superior solutions, articial bees cooperate with each other and exchange information. Via collective knowledge and giving out information among themselves, articial bees focus on more promising areas, and gradually discard solutions from the less promising areas. This paper presents a brief description of the BCO and some of its modications, as well as the taxonomy and analysis of the results achieved using BCO to model various engineering and management processes. The paper is organized in the following way. The biological background is given in Section 2. The BCO is described Section 3, and its applications to engineering and management problems are outlined in Section 4. Section 5 contains conclusions and recommendation for the future research. 2. BIOLOGICAL INSPIRATION

Scout-Bees in nature leave the hive and explore the areas in the locality of their hive [Camazine and Sneyd 1991]. They search for sources of pollen, nectar and propolis. Finishing the search, scout bees go back to the hive and report to foraging collector bees about the locations, quantity and quality of existing sources of pollen, nectar and propolis in the areas they have explored. Bees exchange information about the food sources by dancing (ritual called a waggle dance). Scout bees dance in the so-called dance oor area of the hive in an endeavor to promote food locations and persuade the members of the colony to trail their lead. When a bee decides to depart from the hive to collect nectar, it follows one of the dancing scout bees to the discovered source of food. Upon arrival to the food source, the foraging bee
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey

takes a load of nectar and returns to the hive relinquishing the nectar to a food storer bee. A number of scenarios are then possible for a foraging bee: (1) the bee can discard the food location and become again an uncommitted follower; (2) it can keep on with the foraging behavior at the discovered nectar source, with no recruiting the rest of the colony; (3) it can recruit other bees with the dance ritual prior to return to the food location. The bee decides for one of the possibilities using the mechanism based on the characteristics of the food source (quality, quantity, distance from the hive, . . . ). The described process continues constantly, while the bees from a hive collect nectar and investigate new areas with possible food sources. 3. THE BEE COLONY OPTIMIZATION META-HEURISTIC

The Bee Colony Optimization (BCO) meta-heuristic belongs to the group of Swarm Intelligence techniques. In the 1999-2002, the basic concepts of BCO [Lui and cc Teodorovi 2001; 2002; 2003a; 2003b] were introduced by Duan Teodorovi (adc s c viser) and Panta Lui (Ph.D. candidate) while doing research at Virginia Tech. cc The BCO is nature-inspired meta-heuristic which is to be applied for nding solutions of dicult combinatorial optimization problems. In order to show the basic characteristics of the proposed BCO meta-heuristic, we will rst describe its steps as an analogy with the bees from nature and then present pseudo-code for its implementation. The proposed BCO is based on the constructive concept. It was designed as a method which builds solutions from the scratch within execution steps, unlike the local search based meta-heuristics which perform iterative improvements of the current best solution. 3.1 Description of the BCO

Articial bees live in an environment characterized by the discrete time. Colony of B articial bees collaboratively searches for the optimal solution of a given problem. Each articial bee generates one solution to the problem. There are two alternating phases (forward pass and backward pass) constituting single step in the BCO algorithm. In each forward pass, every articial bee visits N C solution components, creates partial solution, and after that returns to the hive. According to the key idea in the present version of the BCO algorithm, the hive is an non-natural object, with no precise location and does not inuence the algorithm execution. It is used just to denote the synchronization point at which bees are exchanging information about the current state of the search. The number of solution components N C to be visited within one forward pass is prescribed by the analyst at the beginning of the search process. For example, let bees Bee 1, Bee 2, . . . , Bee B are engaged in solving a problem consisting of n components. In the case when N C = 1, at each forward pass bees are supposed to visit a single component. The possible situation after third forward pass is illustrated on Figure 1. Having obtained new partial solutions, the bees meet in the hive and start the backward pass. In the backward pass, all articial bees share information about the quality of their partial solutions. Having all solutions evaluated, each bee decides with a certain probability whether it will stay loyal to its solution or not. The bees with better solutions have more chances to keep and advertise their solutions. Articial bees that are loyal to their partial solutions are at the same time recruiters, i.e. their solutions would be advertised. Once the solution is abandoned by a bee
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

Duan Teodorovi et al. s c


1 2 3 4 n

1 2
Bee 1

1 2 3 4
. . . . . .

1 2 3 4
. . .

1 2 3 4
. . .

1 2 3
. . .

Bee 1 Bee 2 Bee B

3 4

Bee 2 Bee B

. . .

4
. . .

n-1 n

n-1 n

n-1 n

n-1 n

n-1 n

Fig. 1.

An illustration of the third forward pass

it becomes uncommitted and has to select one of the advertised solutions. This decision is taken with a probability too, so that better advertised solutions have bigger opportunity to be chosen for further exploration. In such a way, within each backward pass all bees are divided into two groups (R recruiters, and remaining B R uncommitted bees) as it is shown on Figure 2. Values for R and B R are changing from one backward pass to another one.

1 R 4
. . .

2 1 2 4 3

5 . . . B-R

Recruiters Uncommitted

Fig. 2.

Recruiting of uncommitted followers

The case when, after comparing all generated partial solutions, Bee 2, from the previous example decided to abandon already generated partial solution and to join Bee B (see Figure 3). Bee 2 and Bee B y together along the path already generated by the Bee B. In practice, this means that partial solution generated by Bee B is associated (copied) to Bee 2 also. When they reach the end of that common path, they are free to make an individual decision about the next constructive step to be made. The Bee 1 will keep already generated partial solution without being chosen by any of the uncommitted hive-mates, and therefore, it will perform new constructive step independently. The described situation is illustrated on Figure 3.
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey


1 2 3 4 n

1 2
Bee 1

1 2 3 4
. . . . . .

1 2 3 4
. . .

1 2 3 4
. . .

1 2 3
. . .

Bee 1 Bee 2 Bee B

3 4

. . .

4
. . .

Bee B Bee 2

n-1 n

n-1 n

n-1 n

n-1 n

n-1 n

Fig. 3.

An example of partial solutions after fourth forward

The two phases of the search algorithm, forward and backward pass, are alternating in order to generate all required feasible solutions (one for each bee). When all solutions are completed the best one is determined, it is used to update global best solution and an iteration of the BCO is accomplished. At this point all B solutions are deleted, and the new iteration could start. The BCO runs iteration by iteration until a stopping condition is met. The possible stopping conditions could be, for example, the maximum total number of iterations, the maximum total number of iterations without the improvement of the objective function, maximum allowed CPU time, etc. At the end, the best found solution (the so called global best) is reported as the nal one. Details that depend on the concrete application should be resolved and specied within each particular implementation. These are: constructive steps (the selection of solution components to be added to each particular partial solution); evaluation and comparison of partial solutions. The decisions connected with probabilities, loyalty decision and recruiting, are usually resolved by using roulette wheel. 3.2 Bee Colony Optimization (BCO) Algorithm

The algorithm parameters whose values need to be set prior the algorithm execution are as follows: B - The number of bees in the hive; N C - The number of constructive moves during one forward pass. At the start of the search, all the bees are in the hive. The pseudo-code of the BCO algorithm could be described in the following way: (1) Initialization: an empty solution is assigned to each bee; (2) For each bee: // (the forward pass) (a) Set k = 1; // (count constructive moves in the forward pass) (b) Evaluate all possible constructive moves; (c) Choose one move using the roulette wheel; (d) k = k + 1; If k N C Goto step (b). (3) All bees are back to the hive; // (backward pass starts) (4) Evaluate (partial) objective function value for each bee;
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

Duan Teodorovi et al. s c

(5) Each bee decides randomly whether to continue its own exploration and become a recruiter, or to become a follower; (6) For each follower, choose a new solution from recruiters by the roulette wheel; (7) If solutions are not completed Goto step 2; (8) Evaluate all solution and nd the best one; (9) If the stopping criteria is not met Goto step 2; (10) Output the best solution found. Steps (2) and (4) are problem dependent and should be resolved in each BCO algorithm implementation. On the other hand, there are formulae specifying steps (5), loyalty decision, and (6), recruiting process, and they are described in the rest of this section. 3.2.1 Loyalty decision. The probability that b-th bee (at the beginning of the new forward pass) is loyal to its previously generated partial solution is expressed as follows: pu+1 = e b
Omax Ob u

b = 1, 2, . . . , B,

(1)

where Ob - the normalized value for the objective function of partial solution created by the b-th bee; Omax - maximum over all normalized values of partial solution to be compared; u - the ordinary number of the forward pass (e.g., u = 1 for rst forward pass, u = 2 for second forward pass, etc.). Let us discuss relation (1) in some more details. The better the generated partial solution (higher Ob value), the higher the probability that the bee b will be loyal to it. The greater the ordinary number of the forward pass, the higher the inuence of the already discovered partial solution. This is expressed by the term u in the denominator of the exponent (relation (1)). In other words, at the beginning of the search process bees are more brave to search the solution space. The more forward passes they make, the bees have less courage to explore the solution space. The more we are approaching the end of the search process, the more focused the bees are on the already known partial solution. Using relation (1) and a random number generator, for each articial bee it is decided whether to become uncommitted follower, or to continue exploring already known path. 3.2.2 Recruiting process. For each uncommitted bee with a certain probability it is decided which recruiter it would follow. The probability that bs partial solution would be chosen by any uncommitted bee is equal to: pb = Ob
R

, b = 1, 2, . . . , R

(2)

Ok
k=1

where Ok represents normalized value for the objective function of the k-th advertised partial solution and R denotes the number of recruiters. Using relation (2) and a random number generator, each uncommitted follower join one recruiter.
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey

4. 4.1

APPLICATIONS OF BEE COLONY OPTIMIZATION Solving the Travelling Salesman Problem by BCO

Lui and Teodorovi [Lui and Teodorovi 2001; 2002; 2003a] tested the Bee cc c cc c Colony Optimization approach in the case of Travelling Salesman Problem (TSP). The well-known TSP is dened in the following way: Given n nodes, nd the shortest itinerary that starts in a specic node, goes through all other nodes exactly once and nishes in the starting node. They considered symmetric TSP when the distance from node i to node j is the same as the distance from node j to node i. The authors called the rst version of the BCO - Bee System. The Bee System had more similarities with the behavior of bees in the nature, than the recent version of algorithm. The main dierence between these two versions is in the fact that hive had a crucial role in the previous one. The hive had specied location that could also be changed during the search process. The other dierence is that not all the bees are engaged at the beginning of the search process. The scout bees start the search, and at each stage new bees join it by recruiting process. In their papers, the authors located hive at random node and decompose the TSP problem into stages. At each stage (corresponding to the forward pass of BCO), a bee chooses the new nodes to be added to the partial Travelling Salesman tour created so far. This selection was performed in random manner with certain probabilities. For calculating the probability of choosing next node to be visited the authors used Logit-based model. Logit model is one of the most successful and widely accepted discrete choice model [McFadden 1973]. When calculating this probability, the proposed model took into account the distance between current node (and/or hive) and node-candidate to be visited, the total number of performed iterations in a search process, as well as the total number of bees that visited considered link in the past. The proposed model was represented by the complex and complicated formulae, and was not used in subsequent research. Once all solutions (travelling salesman tours) are completed the authors tried to improve them by applying dierent tour improvement algorithms based on k-opt procedure. Among all generated solutions, the best one was determined and used to update the global best. This represented the end of single iteration and the next one started after the hive relocation.

Table I. Problem name Eil51 Berlin52 St70 Pr76 Kroa100 Eil101 Tsp225 A280 Pcb442 Pr1002

TSP benchmark problems: The results obtained by the BCO algorithm Optimal value 428.87 7544.37 677.11 108159.00 21285.40 640.21 3859.00 2586.77 50783.55 259066.60 BCO 428.87 7544.37 677.11 108159.00 21285.40 640.21 3899.90 2608.33 51366.04 267340.70 Relative error (%) 0.00 0.00 0.00 0.00 0.00 0.00 1.06 0.83 1.15 3.19 CPU (sec) 29 0 7 2 10 61 11651 6270 4384 28101

No. of nodes 51 52 70 76 100 101 225 280 442 1002

ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

Duan Teodorovi et al. s c

The eectiveness of the BCO was tested on a large number of numerical examples. In Table I we present the results for benchmark problems taken from: http://www.iwr.uni-heidelberg.de/iwr/comopt/software/TSPLIB95/tsp/. Results given in the Table I show that the BCO proposed in [Lui and Teodorovi cc c 2001; 2002; 2003a] was capable to get the objective function values equal or very close to the optimal ones. The CPU times necessary to discover the best solutions by the BCO were very low (in 2001). In other words, the BCO was able to produce very good solutions in a reasonable amount of computer time. 4.2 BCO for the p-Median Problem

The problem of locating p facilities in order to minimize the average distance between facilities and service users is known an a p-median problem and it is encountered when designing networks for distribution centers, locations for schools, post oces, shops, etc. The p-median problem was formulated for the rst time by Hakimi [Hakimi 1964; 1965]. It is one of the fundamental problems in the area of discrete location. The p-median problem could be dened in the following way: Locate the p facilities (medians) on a network so as to minimize the sum of all the distances from each demand node to its nearest facility. The p-median problem is NP-hard problem ([Kariv and Hakimi 1969]) that is solved by various heuristic algorithms and procedures based on meta-heuristic rules ([Mladenovi et al. 2003]). In [Teodorovi and Selmi 2007] the authors solved pc c c median problem by the BCO. In the rst step they located hive in the node where a median should be positioned in the case p = 1. They used an algorithm based on the matrix of shortest distances between nodes and service demands in all nodes. In order to calculate the node attractiveness and to choose the next node to be added to the partial solution, the authors used the concept of bees utility. The utility Vi in the case when bee chooses node i to be the median was calculated as: Vi = wRi + qAi , i = 1, . . . , n, (3)

where: Ri - normalized value of the distance from the hive to the i-th node; Ai - normalized value of the demand in the i-th node; w, q - weight (importance) of the distance and the demand, respectively; Normalized values are calculated as follows: Ri = rmax ri , rmax rmin Ai = ai amin , amax amin Ri , Ai [0, 1], i = 1, . . . , n, (4)

where ri - the total distance from the hive to the i-th node; rmin , rmax - minimum and maximum among total distances, respectively; ai - demand at node i; amin , amax - minimum and maximum among all demands, respectively.
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey

The probability pi of choosing node i as a median was calculated as follows: pi = Vi


K

, i = 1, 2, . . . , n,

(5)

Vk
k=1

where K denotes the number of not previously chosen nodes. Each generated partial solution was evaluated by using the total distance travelled by the clients served at the medians chosen so far. After solutions are evaluated (and normalized) the loyalty decision and recruiting process are performed as described at the end of Section 3. The proposed algorithm was tested on a various test problems with parameters range from instances with n = 20 nodes and p = 2, 3, and 4 up to instances with n = 1000 and p = 2, 3, and 5. The obtained BCO results were compared with the optimal solution and results are recalled in the Table II. Test problems M1 M15 were generated by Teodorovi and Selmi in [Teodorovi and Selmi 2007] and c c c c they are available upon request. The 1000 nodes examples (Koerkel Problem Sets) were taken from the Internet. The BCO was able to produce good solutions in a reasonable computation time. Based on large number of performed tests, the authors showed that the solution quality does not change much if the number of bees increases, only the required computational times become larger. The results for CPU times, shown in Table II, are obtained for the case of I = 100 algorithm iterations, N C = 1 constructive moves and B = 5 bees.

Table II. Test problem M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12 M13 M14 M15 n 20 20 20 25 25 25 30 30 30 40 40 40 50 50 50

The p-median test problems: results obtained by the BCO algorithm p 2 3 4 2 3 4 2 3 4 2 3 4 2 3 4 BCO Rel. error (%) 0 0 0 0 0 0 0 0 0 0 0 0 0 0.73 1.71 CPU (sec) 0.48 0.96 2.40 0.46 2.65 6.99 0.46 2.33 5.33 0.45 2.34 3.35 1.14 23.52 46.94 Test problem Set2 Set2 Set3 Set3 Set4 Set4 Set5 Set5 Set6 Set6 Set7 Set7 n 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 p 2 4 2 4 2 4 2 4 3 5 3 5 BCO Rel. error (%) 0.60 4.45 0.34 2.94 0.55 3.02 0.26 4.34 1.14 7.48 1.09 4.40 CPU (sec) 112.00 448.00 95.40 211.40 117.00 206.00 117.00 406.00 168.00 448.00 102.10 300.30

4.3

The BCO for Ride-Matching Problem

Urban road networks in many countries are severely congested, resulting in increased travel times, increased number of stops, unexpected delays, greater travel
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

10

Duan Teodorovi et al. s c

costs, inconvenience to drivers and passengers, increased air pollution and noise level, and increased number of trac accidents. Transportation professionals have developed dierent Travel Demand Management (TDM) strategies to solve these problems. Ride-sharing is one of the widely used TDM techniques. Within this concept, two or more persons share vehicle when travelling from their origins to the destinations. The operator of the system must posses the following information regarding trips planned for the next week: (a) Vehicle capacity (2, 3, or 4 persons); (b) Days in the week when person is ready to participate in ride-sharing; (c) Trip origin for every day in a week; (d) Trip destination for every day in a week; (e) Desired departure and/or arrival time for every day in a week. The ride-matching problem considered by in [Teodorovi and DellOrco 2005; c 2008] could be dened in the following way: Make routing and scheduling of the vehicles and passengers for the whole week in such a way to minimize the total distance travelled by all participants. The authors developed BCO based model for the ride-matching problem. They started their choice model from the assumption that the quantities perceived by bees are fuzzy. They created articial bees that use approximate reasoning and rules of fuzzy logic [Zaheh 1965] in their communication and acting. When adding the solution component to the current partial solution during the forward pass, a specic bee perceives a specic solution component as less attractive, attractive, or very attractive. Articial bee can perceive a specic attribute as short, medium or long; cheap, medium, or expensive; etc. The authors developed the approximate reasoning algorithm for calculating the solution component attractiveness. In order to describe bees partial solutions comparison mechanism, the authors introduced the concept of partial solution badness. The partial solution badness was calculated in the following way: Lb = L(b) Lmin Lmax Lmin (6)

where: Lb - represents the badness of the partial solution discovered by the b-th bee; L(b) - the objective function value of the corresponding partial solution; Lmin and Lmax denote the objective function value of the best and worst partial solution discovered from the beginning of the search process. The approximate reasoning algorithm to determine bees loyalty to its partial solution contained the rules of the following type: If the discovered partial solution is BAD Then loyalty is LOW. Bees use approximate reasoning, and compare their discovered partial solutions with the best, and the worst discovered partial solution from the beginning of the search process. In this way, historical facts discovered by all members of the bee colony have signicant inuence on the future search directions. Based on the quality of its solution each bee decided with certain probability weather to stay loyal or became an uncommitted follower. Each partial solution (partial path) that was being advertised in the dance area had two main attributes: (a) the objective function value; and (b) the number of bees that were advertising
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey

11

the partial solution (partial path). The number of bees advertising the partial solution was a good indicator of a bees collective knowledge. It showed how a bee colony perceives specic partial solutions. The authors used the approximate reasoning algorithm to determine the advertised partial solution attractiveness consisted of the rules similar to: If the length of the advertised path is SHORT and the number of bees advertising the path is SMALL Then the advertised partial solution attractiveness is MEDIUM The approximate reasoning algorithm was used to calculate the number of shifting bees with the rules of the following type: If bees loyalty to path pi is LOW and path pj s attractiveness is HIGH Then the number of shifting bees from path pi to path pj is HIGH In this way, the number of bees ying along a specic path is changed before beginning of the new forward pass. Using collective knowledge and sharing information among themselves, bees concentrate on more promising search paths, and slowly abandon the less promising ones. The proposed model was tested in the case of ride-sharing demand from Trani, a small city in the south-east of Italy, to Bari, the regional capital of Puglia. The authors collected data regarding 97 travellers demanding ride sharing, and assumed, for the sake of simplicity, that capacity is four passengers for all their cars. The BCO obtained result turned out to be the optimal one, yielding up to four times savings regarding the number of cars. 4.4 BCO for Routing and Wavelength Assignment in All-Optical Networks

The Routing and Wavelength Assignment (RWA) in All-Optical Networks is the well-known optimization problem in telecommunication. The RWA problem could be described in the following way: Assign a path through the network and a wavelength on that path for each considered connection between a pair of nodes in such a way to maximize the total number of established connections in the network. In [Markovi et al. 2007] this problem had successfully been solved by the BCO c meta-heuristic. The authors called the proposed algorithm the BCO-RWA. An articial network had been created with nodes representing the collection of all considered origin-destination pairs. Each articial node is comprised of an origin and destination linked by a number of routes. Light-path is a route chosen by bee agent. Bee agents entire ight is collection of established light-paths. During forward pass each bee visited n nodes (tried to establish n new lightpaths). That means N C = n, where n was selected in such a way that n m, m representing the total number of requested light-paths. At every node a bee was choosing among remaining articial nodes (not previously selected ones). Sequence of the n visited articial nodes generated by the bee represented one partial solution of the problem considered. Bee was not always successful in establishing lightpath when visiting articial node. Bees success depended on the wavelengths availability on the specic links. In this way, generated partial solutions diered among themselves according to the total number of established light-paths.
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

12

Duan Teodorovi et al. s c

Probability p that specic unvisited articial node will be chosen by the bee was 1/nunvis , where nunvis was the total number of unvisited articial nodes. By visiting specic articial node in the network bees attempted to establish the requested light-path between one real source-destination node pair in optical network. Let us assume that the specic bee decided to consider the light-path request between the source node s and the destination node d. In the next step, it was necessary to choose the route and to assign an available wavelength along the route between these two real nodes. For every node pair (s, d), the authors dened a subset Rsd of allowed routes that could be used when establishing the light-path. These subsets were dened by using the k shortest path algorithm: For each of the k possible routes the bees utility when choosing the considered route was calculated. The shorter the chosen route and the higher the number of available wavelengths along the route, the higher the bees utilities were. The authors dened the bees utilities Vrsd when choosing the route r between the node pair (s, d) in the following way: Vrsd = a 1 hr hr min + 1 + (1 a) Wr Wmax (7)

where: r - the route ordinary number for a node pair, r = 1, 2, ..., k r Rsd ; hr - the route length expressed in the number of physical hops; hr min - the length of the shortest route rmin ; Wr - the number of available wavelengths along the route r; Wmax = max {Wr } - the maximum number of available wavelengths among all routes r Rsd ; a - weight (importance of the criteria), 0 a 1. Bees decide to choose a physical route in optical network in a random manner. Inspired by the Logit model, the authors assumed that the probability psd of r choosing route r in the case of origin-destination pair (s, d) equals: sd eVr , r Rsd and Wr > 0; sd |Rsd | V sd e i (8) pr = i=1 0, r Rsd and W = 0.
r rRsd

where |Rsd | is the total number of available routes between pair of nodes (s, d). The route r is available if there is at least one available wavelength on all links that belong to the route r. As a criterion for the partial solution evaluation the total number of established light-paths from the beginning of the search process by the b-th bee was used. After solutions are evaluated (and normalized) the loyalty decision and recruiting process are performed as described at the end of Section 3. The BCO-RWA algorithm from [Markovi et al. 2007] was tested on a few nuc merical examples with number of requested light-paths ranging from 28 to 40. The authors formulated corresponding Integer Linear Program (ILP) to determine optimal solutions for the considered examples. They compared the BCO-RWA results with the optimal solution. Some of the comparison results are shown in the Table III. From the results presented in Table III it can be concluded that the proposed BCO-RWA algorithm has been able to produce optimal, or a near-optimal
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey

13

solutions in a reasonable amount of computer time.

Table III. Total number of requested light-paths 38

The results obtained by comparison of BCO-RWA with ILP Number of established light-paths ILP BCO-RWA 17 28 35 38 17 28 35 40 16 27 35 38 16 27 35 40 CPU time (sec) ILP 16 247 261 1773 31 491 429 1346 BCO-RWA 5.67 6.09 6.23 6.33 6.00 6.28 6.61 6.67 5.88 3.57 0 0 5.88 3.57 0 0 BCO Relative error (%)

Number of wavelengths 1 2 3 4 1 2 3 4

40

4.5

BCO Approach to Optimize Locations of Trac Sensors on Highways

The placement of point detectors within a roadway network problem belongs to the eld of location theory. Point detectors are deployed on roadways to collect trac data including volume, occupancy, and speed. The spacing of detectors on freeways has a key impact on the travel time estimates obtained from the reported speeds. There is a tradeo between detector spacing and travel time estimate correctness. Transportation agencies are therefore seeking a method to indicate the most appropriate locations for detector deployment such that the travel time estimate error is minimized, within the constraints of available capital and maintenance funding. In [Edara et al. 2008; Selmi et al. 2008] it was studied the problem of optimal c placing trac detectors on freeways and developed the BCO algorithm to solve it. The proposed model tried to minimize the error in travel time estimation, while taking into account the constraints of available capital and maintenance funding. During the forward pass of the BCO algorithm the Logit model [McFadden 1973] was used for selection of the potential detector locations (N C was equal to one). The probability of a bee choosing the node i was expressed using the Logit model as follows: pi = eUi
n Ur r=1 e

(9)

where Ui represented the utility of having a detector at node i. This utility depended on several factors that may aect travel time estimates. Factors such as the presence of a natural bottleneck at that location (e.g. a lane reduction) that leads to recurring congestion during the peak trac periods, historical accident likelihoods (to monitor the induced delays by deploying detectors), level of trac volumes, etc, can be used to determine the utilities. It was assumed that all potential detector locations have equal utilities. Within each forward pass a bee visited a certain number of nodes and created a partial solution (choose few nodes that become detector locations).
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

14

Duan Teodorovi et al. s c

Each generated partial solution was characterized by the travel time estimation error. As the criteria for comparison of partial solutions, the maximum travel time error over all travel time runs was selected. After solutions are evaluated (and normalized) the loyalty decision and recruiting process are performed as described at the end of Section 3. The proposed BCO algorithm was tested on a real-world freeway segment in Virginia. One of the main purposes of developing proposed methodology was to generate tradeo plots between the travel time error and the number of detectors which would give the optimal placement of detectors for dierent levels of available funding. Results of the BCO runs from [Selmi et al. 2008] are shown in Figure 4. c
10

Maximum TT Estimation Error (Minutes)

8.3 6.7

GA Solutions BCO Solutions

3.3

1.7

10

12

14

16

18

20

Number of Detector Deployed

Fig. 4.

Maximum Travel Time Estimation Error Plot (BCO vs GA)

Tradeo plots were generated by varying the actual number of detectors (d) from 2 to 20 in increments of 1. For a given number of detectors, the obtained optimal placement would result in a travel time estimation error for each travel time run. The maximum error versus the detector deployment obtained by the Genetic algorithms (GA) is also plotted in Figure 4. These results enabled savings of 30% as compared to the current deployment at 20 locations. The obtained results were very competitive when compared with the results of Genetic Algorithms achieved in previous study [Edara et al. 2008]. 4.6 Optimal Placement and Calculation of the Number of the Distributed Generation (DG) in Electric Network by BCO

In [Anantasate et al. 2009] the authors studied the problem of optimal placing distributed generation (DG) in the electric network in Greater Mekong subregion. In a traditional way, electricity is generated at central stations, and powered up through transformers. Electricity is then transmitted over high voltage transmission lines, and passed down through low voltage distribution lines to nal circuits for delivery to the clients. This centralized generation pattern is characterized by transmission
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey

15

losses, the need for permanent improvement and replacement of the transmission and distribution facilities. In last decade, the placement of small-scaled generators in the electric network in Greater Mekong subregion has been considered. These small-scaled generators (distributed generation (DG)), are installed in the network to act as a source of power at the site where they are to be used. The DGs can be driven by various types of resource and technology such as wind, solar, fuel cells, hydrogen, and biomass. DGs are also an alternative for some industrial and commercial customers. The authors proposed mathematical formulation for the problem of optimal placement of distributed generation (DG) in the electric network. The main objective was minimization of the real power loss along with violation of system contingency (voltage violation and line overloading). The authors formulated combinatorial problem with multiple objectives. The considered multi-objective optimization problem is converted to a single objective problem with the help of suitable weights. The set of constraints took care about power balance and power generation limit. The authors performed simulation on the IEEE 30-bus system. The performed experiments showed that BCO can obtain the optimal solutions faster than Genetic Algorithm (GA), Simulated Annealing (SA), and Tabu Search (TS). The average computing time of BCO, GA, SA, and TS are shown in Table IV. The authors of [Anantasate et al. 2009] also performed single objective optimization. They showed that when trying to minimize only system loss BCO can place DGs in such a way that system loss is reduced 27% in comparison with system without DGs. In the case of minimization of system contingency (voltage violation and line overloading) BCO placed DGs in such away that violation is reduced 43.75% in comparison with system without DGs.

Table IV. Meta-heuristic GA SA TS BCO

Comparison results for DG problem

Average CPU [sec] 7.0293 4.7729 7.5553 1.2219

4.7

Scheduling Independent Tasks by BCO and Parallel BCO

In [Davidovi et al. 2009b; 2009a] the authors applied BCO heuristic algorithm c to the problem of static scheduling of independent tasks on identical machines. This problem can be described as follows. Let T = {1, 2, . . . , n} be a given set of independent tasks, and P = {1, 2, . . . , m} a set of identical machines. The processing time of task i (i = 1, 2, . . . , n) is denoted by li . All tasks are mutually independent and each task can be scheduled to any machine. All given tasks must be executed. Task preemption is not allowed. Task should be scheduled to exactly one machine and machines can execute one task at a time. The goal is to nd a schedule of tasks to machines such that the corresponding completion time of all tasks (the so called makespan) is minimized.
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

16

Duan Teodorovi et al. s c

At each iteration of its execution BCO performed constructive steps composed of forward and backward passes and within them generated B solutions (schedules), one schedule for each bee. Within a single forward step each bee had to select N C task-processor pairs and add them to its current partial schedule. The authors assumed that the probability pi that specic bee chooses task i was equal: pi = li
K

, lk

i = 1, 2, . . . , n

(10)

k=1

with li representing the processing time of the i-th task and K being the number of available tasks (not previously chosen). Obviously, tasks with a higher processing time have a higher chance to be chosen. Using relation (10) and a random number generator, we determine a task to be chosen by each bee. In addition, the authors assumed that the probability pj that specic bee chooses processor j was calculated as: pj = Vj
m

, j = 1, 2, . . . , m

(11)

Vk
k=1

where max F Fj , j = 1, 2, . . . , m (12) max F min F and Fj represents running time of processor j based on tasks already scheduled to it; max F denotes maximum over all processors running times; min F being minimum over all processors running times. Therefore, Vj represented normalized value for the running time of corresponding processor and as such was used in the denition of probability for its selection. The backward pass starts with the evaluation of all partial solutions generated during the preceding forward pass. The latest time point of nishing the last task at any processor characterizes each generated partial solution. After solutions are evaluated (and normalized) the loyalty decision and recruiting process are performed as described at the end of Section 3. The BCO implementation was tested on examples with known optimal solutions. Optimal solutions were obtained by using ILOG AMPL and CPLEX 11.2 optimization software. Both programs, CPLEX and our BCO are running on the same computer and the authors were able to compare execution times and solution quality for these programs. Out of the large number of experimental results presented in [Davidovi et al. c 2009b; 2009a] we present in the Table V the comparison between BCO and CPLEX for the largest size instances. The BCO algorithm parameters were set to the following values: The total number of bees B engaged in the search process was equal to 5; the number of moves during one forward pass (generated task-processor pairs) N C was equal to 10; as the stopping criterion was selected number of iterations I within one run and was assigned values 100. Vj =
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey

17

Table V. m 4 8 16 25 50 100

The comparison of the BCO results the optimal ones for n=5000 OPT 6844 3422 1711 1095 548 274 Opt CPU time 1.112 6.113 9.786 30.288 28.561 1130.31 BCO 6844 3422 1711 1095 548 277 BCO % error 0.000 0.000 0.000 0.000 0.000 1.095 BCO min time 0.070 0.209 0.217 0.226 0.251 0.560 BCO CPU time 69.219 200.967 219.867 231.665 250.562 295.850

4.7.1 Parallel BCO. The above described implementation represented good starting point for testing parallelization strategies of BCO. In [Davidovi et al. 2010] two c synchronous parallelization strategies of BCO were proposed. The parallel BCO was implemented in C programming language with MPI communication library. The test instances were the same one that have been used in [Davidovi et al. c 2009a]. It allowed authors to easily compare sequential and parallel BCO versions and measure the performance for various parallelization strategies. The target architecture for parallelized BCO in [Davidovi et al. 2010] was homogeneous c completely connected network of processors. One of them was responsible for the communication with user and was named master. It is usually marked as processor 0. The other q 1 processors were called working processors or slaves. Their marks were processor 1 up to processor q 1. Parallel versions of BCO are executing on all q processors, i.e. computations were assigned to master too. Within the experiments presented in [Davidovi et al. 2010] the q was changing from 2 to 12. c We present here some of the results for coarse grained parallelization strategy DBCO and for the other cases we just rewrite conclusions. The results of scheduling one of the largest size examples from [Tobita and Kasahara 2002] (with 5000 tasks) on dierent number of machines are given in Table VI. These instances were not too hard to be solved by sequential BCO, and even they were solvable to optimality by CPLEX within a reasonable CPU time. For all examples, within DBCO parameter settings were the following: B = 5, N C = 10 and stopping criterion 1000 iterations.

Table VI. The comparison of the m DBCO OPT q DBCO CPU t Sq 16 1 1711 65.65 1.00 2 1711 34.77 1.89 1711 3 1711 23.20 2.83 4 1711 17.38 3.78 5 1711 13.89 4.73 50 1 548 81.03 1.00 2 548 43.51 1.86 548 3 548 29.04 2.79 4 548 21.73 3.73 5 548 17.41 4.65

sequential and parallel BCO, results for m DBCO Eq OPT q DBCO CPU t 1.00 25 1 1095 69.75 0.94 2 1095 37.12 0.94 1095 3 1095 24.76 0.94 4 1095 18.50 0.95 5 1095 14.12 1.00 100 1 277 104.46 0.93 2 277 65.39 0.93 274 3 277 37.54 0.93 4 277 28.21 0.93 5 277 22.56

n = 5000 Sq 1.00 1.88 2.82 3.77 4.70 1.00 1.85 2.78 3.70 4.63 Eq 1.00 0.94 0.94 0.94 0.94 1.00 0.93 0.93 0.93 0.93

ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

18

Duan Teodorovi et al. s c

Since for the calculation of the speedup and eciency, the best sequential algorithm is required, in [Davidovi et al. 2010] it was assumed that BCO from c [Davidovi et al. 2009b; 2009a] can take the role of the best sequential algorithm. c To assure fairness of obtained results, parallel versions of BCO were compared with the original sequential one executed on a single processor of given parallel architecture (instead of parallel version executed for q = 1). As can be seen from the results presented in Table VI DBCO applied to those examples showed very good performance, almost linear speedup and above 90% eciency, and also the stability in the solution quality (there was no degradation in parallel execution). In some other examples, solution quality was changing, the authors reported improvements or degradations for less than 3%. When testing another variant of coarse grained parallelization the authors obtained excellent (superlinar) speedup and eciency, due to the reduction of computations assigned to each processor. On the other hand, ne grained parallelization resulted in slowing down the computations due to the communication delays caused by intensive data exchange between processors. This strategy is obviously more suitable for shared memory multiprocessor systems. 5. CONCLUSION

The meta-heuristic Bee Colony Optimization, is inspired by the foraging behavior of honeybees. The BCO represents a general algorithmic framework relevant to various optimization problems in management, engineering, and control, and it could always be tailored for a specic problem. The BCO method is based on the concept of cooperation, which increases the eciency of articial bees and allows achievement of goals that could not be reached individually. The BCO has the capability, through the information exchange and recruiting process, to intensify the search in the promising regions of the solution space. When it is necessary, the BCO can also diversify the search: The freedom to make an individual decision constitutes that diversifying element. The BCO has already been eectively applied to some combinatorial optimization problems, and we hope that extended application reports are to come quickly. Additionally, the appropriateness for parallelization of the BCO algorithm opens not only a new research direction but also some new possible applications. On the other hand, the BCO has not been extensively used for solving real-life problems and theoretical results supporting BCO concepts are still absent. That it the necessary work in the forthcoming research. Based on the achieved results and gained experience, new models founded on BCO principles (autonomy, distributed functioning, self-organizing) are expected to signicantly contribute to solving complex engineering, management, and control problems. Until now, the most important direction of the future research is the mathematical validation of the BCO approach. In years to come, the authors expect more BCO based models, examining, for instance, bees homogeneity (homogenous vs. heterogeneous articial bees), various information sharing mechanisms, and various collaboration mechanisms. Acknowledgements. This work has been supported by Serbian Ministry of Science and Technological Development, grants No. 144007 and 144033.
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

BCO: The Applications Survey


REFERENCES

19

Abbass, H. A. 2001. MBO: marriage in honey bees optimization-a haplometrosis polygynous swarming approach. In Proceedings of the Congress on Evolutionary Computation. Seoul, South Korea, 207214. Afshar, A., Bozorg Haddad, O., Marino, M., and B.J., A. 2007. Honey-bee mating optimization (HBMO) algorithm for optimal reservoir operation. Journal of the Franklin Institute 344, 5 (Aug.), 452462. Anantasate, S., Chokpanyasuwan, C., Pattaraprakorn, W., and Bhasaputra, P. 2009. Multi-objective optimal placement of distributed generation using bee colony optimization. GMSARN International Journal 3, 5564. Baykasoglu, A., Ozbakyr, L., and Tapkan, P. 2007. Articial bee colony algorithm and its application to generalized assignment problem. In Swarm Intelligence: Focus on Ant and Particle Swarm Optimization, T. S. C. Felix and K. T. Manoj, Eds. Itech Education and Publishing, Vienna, Austria, 113143. Benatchba, K., Admane, L., and Koudil, M. 2005. Using bees to solve a data-mining problem expressed as a max-sat one. In IWINAC 2005, LNCS, 3562, J. Mira and J. R. Alvarez, Eds. Springer-Verlag, BerlinHeidelberg, 212220. Beni, G. and Wang, J. 1989. Swarm intelligence. In Proceedings of the Seventh Annual Meeting of the Robotics Society of Japan. RSJ Press, Tokyo, 425428. Camazine, S. and Sneyd, J. 1991. A model of collective nectar source by honey bees: selforganization through simple rules. Journal of Theoretical Biology 149, 547571. Chong, C. S., Low, M. Y. H., Sivakumar, A. I., and Gay, K. L. 2006. A bee colony optimization algorithm to job shop scheduling simulation. In Proceedings of the Winter Conference, L. F. Perrone, F. P. Wieland, J. Liu, B. G. Lawson, D. M. Nicol, and R. M. Fujimoto, Eds. Washington, DC, 19541961. Davidovic, T., Ramljak, D., Selmic, M., and Teodorovic, D. 2010. Parallel bee colony optimization for scheduling independent tasks to identical machines. In . (submitted). Davidovic, T., Selmic, M., and Teodorovic, D. 2009a. Bee colony optimization for scheduling independent tasks to identical processors. (Submitted for publication). Davidovic, T., Selmic, M., and Teodorovic, D. 2009b. Scheduling independent tasks: Bee colony optimization approach. In Proc. 17th Mediterranean Conference on Control and Automation (June 24-26,). Makedonia Palace, Thessaloniki, Greece, 10201025. Drias, H., Sadeg, S., and Yahi, S. 2005. Cooperative bees swarm for solving the maximum weighted satisability problem. LNCS: Computational Intelligence and Bioinspired Systems 3512, 318325. Edara, P., Guo, J., Smith, B. L., and McGhee, C. 2008. Optimal placement of point detectors on Virginias freeways: case studies of northern Virginia and Richmond. Tech. rep., Final Contract Report VTRC 08-CR3, Virginia Transportation Research Council, Richmond, VA. Edara, P., Selmic, M., and Teodorovic, D. 2008. Heuristic solution algorithms for a trac sensor optimization problem. In INFORMS 2008. Washington D.C. Hakimi, S. L. 1964. Optimal locations of switching centers and the absolute centers and medians of a graph. Operations Research 12, 450459. Hakimi, S. L. 1965. Optimum distribution of switching centers in a communication network and some related graph theoretic problems. Operations Research 13, 3 (May Jun.), 462475. Karaboga, D. 2005. An idea based on honey bee swarm for numerical optimization. Tech. rep., Erciyes University, Engineering Faculty Computer Engineering Department Kayseri/Turkiye. Kariv, O. and Hakimi, S. L. 1969. An algorithmic approach to network location problems. part ii: The p-median. SIAM Journal of Applied Mathematics 37, 539560. Koudil, M., Benatchba, K., Tarabetand, A., and El Batoul Sahraoui. 2007. Using articial bees to solve partitioning and scheduling problems in codesign. Appl. Math. Comput 186, 2 (Mar.), 17101722.
ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

20

Duan Teodorovi et al. s c

Lucic, P. and Teodorovic, D. 2001. Bee system: modeling combinatorial optimization transportation engineering problems by swarm intelligence. In Preprints of the TRISTAN IV Triennial Symposium on Transportation Analysis. Sao Miguel, Azores Islands, 441445. Lucic, P. and Teodorovic, D. 2002. Transportation modeling: an articial life approach. In Proceedings of the 14th IEEE International Conference on Tools with Articial Intelligence. Washington, DC, 216223. Lucic, P. and Teodorovic, D. 2003a. Computing with bees: attacking complex transportation engineering problems. International Journal on Articial Intelligence Tools 12, 375394. Lucic, P. and Teodorovic, D. 2003b. Vehicle routing problem with uncertain demand at nodes: the bee system and fuzzy logic approach. In Fuzzy Sets based Heuristics for Optimization, J. L. Verdegay, Ed. Physica Verlag: Berlin Heidelberg, 6782. Markovic, G., Teodorovic, D., and Acimovic-Raspopovic, V. 2007. Routing and wavelength assignment in all-optical networks based on the bee colony optimization. AI Commun. 20, 273285. McFadden, D. 1973. Conditional logit analysis of quantitative choice behavior. In Frontier of Econometrics, P. Zaremmbka, Ed. Academic Press, New York. Mladenovic, N., Labbe, M., and Hansen, P. 2003. Solving the p-center problem with tabu search and variable neighborhood search. Networks 42, 1, 4864. Navrat, P. 2006. Bee hive metaphor for web search. In Proceedings of the International Conference on Computer Systems and Technologies - CompSysTech 2006, B. Rachev and A. Smrikarov, Eds. Veliko Turnovo, Bulgaria, IIIA.1217. Pham, D. T., Ghanbarzadeh, A., Koc, E., Otri, S., and Zaidi, M. 2006. The bees algorithm - a novel tool for complex optimisation problems. In Proceedings of the 2nd Virtual International Conference on Intelligent Production Machines and Systems (IPROMS 2006). Elsevier, Cardi, 454459. Quijano, N. and Passino, K. M. 2007a. Honey bee social foraging algorithms for resource allocation, Part I: Algorithm and theory. In Proceedings of the 2007 American Control Conference. New York, 33833388. Quijano, N. and Passino, K. M. 2007b. Honey bee social foraging algorithms for resource allocation, Part II: Application. In Proceedings of the 2007 American Control Conference. New York, 33893394. Teodorovic, D. and DellOrco, M. 2005. Bee colony optimization - a cooperative learning approach to complex transportation problems. In Advanced OR and AI Methods in Transportation. Proceedings of the 10th Meeting of the EURO Working Group on Transportation. Poznan, Poland, 5160. Teodorovic, D. and DellOrco, M. 2008. Ritigating trac congestion: solving the ridematching problem by bee colony optimization. Transport. Plan. Techn. 31, 135152. Teodorovic, D. and Selmic, M. 2007. The BCO algorithm for the p-median problem. In Proceedings of the XXXIV Serbian Operations Research Conferece. Zlatibor, Serbia (in Serbian). Tobita, T. and Kasahara, H. 2002. A standard task graph set for fair evaluation of multiprocessor scheduling algorithms. J. Sched. 5, 5, 379394. Selmic, M., Edara, P., and Teodorovic, D. 2008. Bee colony optimization approach to optimize locations of trac sensors on highways. Tehnika 6 (in Serbian), 915. Wedde, H. F., Farooq, M., and Zhang, Y. 2004. BeeHive: an ecient fault-tolerant routing algorithm inspired by honey bee behavior. LNCS: Ant Colony Optimization and Swarm Intelligence 3172, 8394. Yang, C., Chen, J., and Tu, X. 2007. Algorithm of fast marriage in honey bees optimization and convergence analysis. In Proceedings of the IEEE International Conference on Automation and Logistics. Jinan, China, 17941799. Zaheh, L. 1965. Fuzzy sets. Information and Control 8, 338353.

Received February 2010; Revised ???; accepted ???

ACM Transactions on Computational Logic, Vol. ??, No. ??, ?? 2011.

You might also like