Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time

Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time

ARTICLE IN PRESS JID: APM [m3Gsc;July 11, 2016;14:11] Applied Mathematical Modelling 0 0 0 (2016) 1–12 Contents lists available at ScienceDirect ...

1MB Sizes 64 Downloads 112 Views

ARTICLE IN PRESS

JID: APM

[m3Gsc;July 11, 2016;14:11]

Applied Mathematical Modelling 0 0 0 (2016) 1–12

Contents lists available at ScienceDirect

Applied Mathematical Modelling journal homepage: www.elsevier.com/locate/apm

Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time R.J. Kuo a, B.S. Wibowo a,b, F.E. Zulvia a,∗ a b

Department of Industrial Management, National Taiwan University of Science and Technology, Taipei, Taiwan Department of Industrial Engineering, University of Indonesia, Depok, Indonesia

a r t i c l e

i n f o

Article history: Received 17 February 2014 Revised 2 March 2016 Accepted 16 June 2016 Available online xxx Keywords: Dynamic vehicle routing Ant colony system Fuzzy set Meta-heuristics

a b s t r a c t Service management has been an important issue for many companies, especially for service-based companies. This paper studies a routing problem that is usually faced by onsite service companies. This type of company continuously receives orders during its working hours. In order to maximize the number of customers served and minimize the customer waiting time, the service team is responsible for determining which orders should be served during the ongoing working period and which orders should be served in the following working period. This paper represents this problem as a dynamic vehicle routing problem (DVRP). The proposed DVRP model also considers the uncertain service time using fuzzy theory. Furthermore, an algorithm using an improved fuzzy ant colony system (ACS) is proposed in order to solve the proposed model. The proposed algorithm embeds a cluster insertion algorithm into the ACS algorithm. The proposed algorithm is validated using some benchmark datasets. The results show that the proposed algorithm performs better than the previous fuzzy-ACS algorithm without cluster insertion algorithm. In addition, further sensitivity analysis is also presented to derive more information about the model and the proposed algorithm for application to real-world problems. © 2016 Elsevier Inc. All rights reserved.

1. Introduction The vehicle routing problem (VRP) is a well-known classical NP-hard problem and one of the most challenging combinatorial optimization tasks introduced by Dantzig and Ramser [1]. It aims to design an optimal route for a number of vehicles in serving a set of customers, subject to several constraints. The constraints might cover the available vehicles’ capacity, number of vehicles, maximum working hours of the drivers, the customers’ available time, etc. [2–4]. Possessing sufficient information regarding the constraints is very important. However, in many real applications, accurate and sufficient information might not be available. For instance, the travel time from one location to another location is not always exactly the same every time, due to a number of other factors, such as traffic jams, accidents, weather, or even wrong addresses. Therefore, many previous studies have used some assumptions. For example, the travel time and the number and customer locations have been known a priori. Unfortunately, these assumptions cannot meet practical applications. In current business applications, many scheduling problems are actually dynamic. New requests may appear over time and must be incorporated into an ongoing schedule [5]. In this case, the decision maker faces a dynamic decision-making problem in continuously



Corresponding author. Fax: +886 2 2737 6344. E-mail address: [email protected], [email protected] (F.E. Zulvia).

http://dx.doi.org/10.1016/j.apm.2016.06.025 0307-904X/© 2016 Elsevier Inc. All rights reserved.

Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

JID: APM 2

ARTICLE IN PRESS

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

changing the vehicle route based on the latest information, including customer location and resource availability. Theoretically, this problem can be modeled as a dynamic vehicle routing problem (DVRP) [5] . The applications of DVRP can be found in various real-world applications, especially for on-site service companies for repair and maintenance, such as HP hardware on-site service, Sodexo on-site service, Supermicro hardware maintenance service, etc. The on-site service company works on repairing or maintaining its products used by customers. The company has limited resources, including technicians, vehicles and working time. In addition, when an order arrives, the company does not have accurate information regarding the service time needed for each order. The decision maker must decide whether or not the newly arrived customers can be inserted into the ongoing services. The decisions made must consider the estimated service time and available resources, including working hours and number of vehicles. In general, this system aims to maximize the number of customers served and minimize customer waiting time. This paper solves a DVRP with uncertain service time by applying fuzzy change-constraint programming and an ACS algorithm. The fuzzy-based method is chosen because it can deal with uncertain factors in a DVRP such as service time and travel time. The application of a fuzzy-based method in VRP can be found on some previous research [6–10]. DVRP can be solved either by exact methods or heuristic approaches. An exact method guarantees that its solution is the optimal one. Unfortunately, this requires complex computation. Thus, it only can solve relatively simple VRP problems with a small number of customers. Therefore, the meta-heuristic method is preferred to solve the DVRP. Recently, various metaheuristic methods, i.e. tabu search [11], ant colony system (ACS) [12] and genetic algorithm (GA) [13–16], have been proposed to solve DVRP. Ant colony system (ACS) is an improvement on ACO which has been applied widely in routing problem [17, 18]. The solution of ACS is iteratively constructed by the collective behavior of ants. The ants choose their route according to the pheromone and attractiveness level of each path. The pheromone laid on the road is the indirect communication media between ants in order to find the shortest route to the food source [19]. Ants tend to choose the route which has a higher pheromone level. In solving DVRP, Montemanni et al. divide the working day into time slices. The ACS is applied to obtain the best route for each time slice [12]. Their results reveal that ACS is a promising algorithm for solving routing problems. Application of ACS in solving VRP or other transportation problem can also be found in [12,20–22]. This paper proposes to solve the DVRP using a heuristic-based method instead of the exact method since it has easier computation; thus, it can be applied to big-size problems. The improvement covers both the initialization part and the solution construction part. ACS is an algorithm inspired by ant behavior in finding food sources. Herein, the pheromone is the important factor in finding the shortest distance. In basic ACS, the initial pheromone is generated randomly. This paper applies a cluster insertion algorithm to reduce the risk caused by poor initial pheromone distribution. In addition, the solution construction rule is modified so that it is suitable for the fuzzy service time. Furthermore, an improved ACS algorithm is applied to solve the abovementioned problem. The remainder of this paper is organized as follows. Section 2 briefly reviews the necessary background as it applies in this study. It covers both the DVRP model and ACS algorithm. Section 3 presents the proposed DVRP with uncertain service time and the proposed fuzzy-ACS. The experiments and evaluation are discussed in Section 4. Finally, the concluding remarks are offered in Section 5. 2. Background This section briefly reviews DVRP, fuzzy approximation as an approach employed for dealing with uncertain service time, and ACS as the basic algorithm of the proposed method. 2.1. DVRP DVRP divides customers into two categories: early customers and late customers [5]. Early customers are the known customers in the early working period while late customers appear randomly over time. Service time for each customer is unknown at the planning stage. At the beginning, the decision maker or dispatcher should arrange an optimal route for visiting all early customers. Within the working hours, new late customers may appear. The dispatcher must decide whether or not the new customers will be served. The decision is made by estimating the required total service time and the remaining available time. Once a vehicle is committed to serve a customer, it cannot be canceled. Afterwards, the current route is updated based on this decision. Since new customers may appear within the working hours, a vehicle which has completed its task before the end of working hours must wait at its last customer until its task is updated or the working hours are ended. The dispatcher updates the ongoing route every fixed period of time. In updating the current route, the dispatcher treats all known and not yet served customers as a static VRP. The idea of modeling DVRP as a sequence of static VRP-like instances was proposed by Kilby et al. [5]. 2.2. Fuzzy set Fuzzy set is a set dealing with a class of objects without crisp boundaries [23]. Each element has a membership degree defined as a real number within 0 and 1. A higher membership degree indicates higher confidence that this element belongs to that set. The fuzzy membership degree can be defined via several functions: Triangular, trapezoidal, Gaussian, generalized bell, sigmoidal, and Z-shape [24]. For computation simplification, this paper employs a triangular fuzzy function to represent Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

ARTICLE IN PRESS

JID: APM

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

[m3Gsc;July 11, 2016;14:11] 3

the uncertain variable. Triangular fuzzy is specified by three parameters {a, b, c}. Parameters a and c represent elements at the lowest certainty, while b represents the highest degree of confidence. Membership degree of x is defined as follows:

⎧ 0, if x < a ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ x − a , if a ≤ x ≤ b b−a

f (x ) =

c−x ⎪ ⎪ , if b ≤ x ≤ c ⎪ ⎪ c−b ⎪ ⎩ 1,

.

(1)

otherwise

In an optimization problem, fuzzy theory helps to deal with a class of problems where the constraints or the objective function cannot be valued precisely [25]. Applying fuzzy theory in VRP with uncertain data has been proposed in previous studies with uncertain demand [26–29], time windows [30] and travel time [31]. In order to evaluate uncertain data, fuzzy event measurement, such as possibility, necessity and credibility theory, can be applied [32, 33]. The credibility theory was developed from possibility and necessity theory. It proposed comparing two fuzzy variables as well as a fuzzy variable with a crisp variable [33]. The credibility of a fuzzy event Cr{T˜ ≥ c} where T˜ is a triangular fuzzy number T˜ = (t1 , t2 , t3 ) and c is a crisp number is given in Eq. (2) [33].





Cr T˜ ≥ c =

⎧ 1, if c < t1 ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ 2t2 − t1 − c , ift1 ≤ c ≤ t2 b−a

t3 − c ⎪ ⎪ , ⎪ ⎪ 2 ( ⎪ ⎩ t3 − t2 ) 0,

.

(2)

if t2 ≤ c ≤ t3 otherwise

In addition, the defuzzification method is also required in this study. Defuzzification is a method transforming a fuzzy number into a crisp number. A previous study conducted by Brito et al. [25] applied Yager’s index to perform defuzzification. Yager’s index is a linear ranking for converting a triangular fuzzy number T˜ into a crisp value c(T) based on Eq. (3):

c (T ) = t1 + 2t2 + t3 .

(3)

2.3. Ant colony system Ant colony system (ACS) was initially developed to enhance the performance of ant colony optimization (ACO) in solving the travelling salesman problem [34]. It is designed based on the foraging behavior of real ants in a colony. Suppose the routing problem is represented by a graph; an artificial ant continuously constructs a solution by visiting a series of nodes. It selects the next nodes according to two parameters, namely attractiveness η and pheromone level τ . Attractiveness is commonly expressed by the inverse of distance. Gradually, movements are performed by each ant. Let S be a set of nodes which have not yet been visited by the ant. An ant at node i decides to move to node j S if a random number q ∈ [0, 1] is less than or equal to q0 , expressing the exploration versus exploitation conducted by ants. If an ant prefers a route which has a higher pheromone level, the ant performs deeper exploration. On the other hand, if an ant moves to any random node without considering the pheromone level, the ant tends to carry out a wider exploration. Therefore, higher q represents wider exploration while lower q prefers deeper exploration. The node is chosen based on Eq. (4).



j=

arg max i, j∈S

α β τi j ηi j , if q < q0

Pi j ,

otherwise

.

(4)

Otherwise, an ant selects other nodes by following rule Pij mentioned in Eq. (5):

Pi j =

⎧ ⎨ ⎩

α



0,

β

[ τi j ] [ ηi j ] k∈S

α

[τik ] [ηik ]

β

, if j ∈ S

,

(5)

otherwise

where (α − β ) is the relative importance between pheromone and distance. After the ants have passed all of the nodes, the pheromone information is updated using Eq. (6):

τi j = (1 − ρ )τi j + ηi j ,

(6)

where ρ denotes the evaporation rate of the posterior pheromone and ηij denotes the inverse of distance from i to j. The evaporation rate helps ants avoid local optima. Furthermore, a global pheromone update is also performed. It is conducted at the end of the iteration based on the best solution, as shown in Eq. (7), where ς is the inverse of the minimum distance ever obtained:



1 − ρ )τi j + ρ ς , if route i to j is passed in the best route τi j = ( . τi j , otherwise

(7)

Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

ARTICLE IN PRESS

JID: APM 4

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

Fig. 1. Static VRP-like approach.

3. Methodology This section discusses the mathematical model for DVRP with uncertain service time. The mathematical model is developed based on the static VRP model and improved using fuzzy change-constrained programming. Furthermore, dynamicity handling and the proposed fuzzy ant colony system algorithm are explained below. 3.1. Mathematical model of DVRP with uncertain service time DVRP with uncertain service time studied in this paper is inspired by the on-site service problem. In this problem, a set of vehicles serves a number of customers during working hours. The on-site service problem aims to maximize the number of customers served and minimize customers waiting time. Unlike static VRP where all customers are defined at the beginning of the operation, DVRP allows newly arriving customers during the working hours. When a new customer arrives, the dispatcher or the company must decide whether to accept or reject the service request. In the real applications, accepting new requests means the customers will be served during the current day’s working hours. On the other hand, rejection means that they will be served during the following day’s working hours. For instance, a company has eight working hours per day. In the early morning, a set of customers needs to be served. In this state, an initial routing of each technician is made based on the current data: the list of customers and their locations. All technicians start their job using the initial route. During the day, the company receives more orders. The company has to decide whether to serve the new customers on the current day or the next day. Herein, the company must consider the remaining working hours and estimate the service time required. Other factors, such as uncertain traveling time, must also be considered. In addition, the new optimal route must be determined. In order to solve this problem, this paper applies a DVRP to represent the problem. There are two major issues highlighted: dynamic customers and uncertain service time. In order to accommodate dynamic customers, the static VRP-like instance proposed by Kilby et al. [5] is adopted. In this approach, a DVPR is modeled as sequences of static VRPs. Let the total working hours be denoted as T. A static VRP-like approach divides the T time period into several time intervals, m. For each time interval, ti , i = 1, . . . , m, a static VRP is applied to obtain the optimal route based on the current information including the non-served customers as well as their locations. Fig. 1 illustrates this approach. Notations T: Total working hours. H: Number of vehicles. ti : Time interval i, i = 1, . . . , m. Ci : Set of customers which should be considered for time interval ti . Ni : Set of new customers coming during the time interval ti , where N0 is the set of customers who have not been served during the previous working hours. The = {N0 , N1 , . . . , Nm } . Si : Set of customers which have been served during the time interval ti . The = {s0 , S1 , . . . , Sm }, s0 represents the depot and |S| denotes the number of customers served. eij : Travel time from i to j. ui : Service time for customer i. aki : Arrival time of vehicle k at customer i. ¯ is the average customer’s waiting time. wi : waiting time of customer i and W In the beginning of the working hours, all vehicles start from the depot. Thus the initial point of all vehicles for the time interval t1 is S0 . For the other time intervals, ti , i = 2, . . . , m, each vehicle starts from its current position. During the time interval ti , the constructed route must consider all customers which have not been served in the previous time intervals and new customers which come during the time interval ti−1 . In addition, S0 is also considered since it is the last destination for each vehicle. i

Ci = ∪ N j / j=0



i−1

∪ Si , s0 .

(8)

j=1

Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

ARTICLE IN PRESS

JID: APM

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

[m3Gsc;July 11, 2016;14:11] 5

Due to limited working hours, some customers may not be served (N − S = ∅ ). In this case, those customers will be served in the next working hours. Thus, the company not only determines the optimal route for all customers but also selects which customers should be served during the current working hours. This problem can be represented mathematically as the following. Decision variables



xki j

=

yki =

1, if vehicle k passes route i to j , 0, otherwise

(9)

1, if vehicle k visits customer i . 0, otherwise

(10)

Objective function There are two objectives considered in this study, maximizing number of customer served, |S|, and minimizing average ¯ . They are defined in Eqs. (11) and (12). of customer’s waiting time, W

max |S| =



yki ,

(11)

k∈H i∈S

1  wi . |S|

¯ = min W

(12)

i∈S

In order to simplify the problem, this study uses single objective function instead of multi-objectives. Thus, two objectives in Eqs. (11) and (12) are transformed into a single objective, F, as shown in Eq. (13).

max F =

|S| ¯ W





k k∈H i∈S yi . 1 i∈S wi |S |

=

(13)

Constraints (1) at most H vehicles are used,



∀k = 1, . . . , H.

xk0 j ≤ 1,

(14)

j∈S

(2) all vehicle leaves depot must come back to depot,



xki0 −

i∈S



xk0 j = 0,

∀k = 1, . . . , H.

(15)

i∈S

(3) each customer is visited only once,



xki j = 1,

∀ j ∈ S/{s0 }.

(16)

xki j = 1,

∀i ∈ S/{s0 }

(17)

i∈S k∈H

 j∈S k∈H

(4) total service time does not exceed the available working hours,





ei j + u j xki j ≤ T ,

∀k = 1, . . . , H.

(18)

j∈S j∈S

The time constraint in Eq. (18) is valid for the total working hours. For each time interval, this constraint should be adjusted. At each time interval i, the available working hours is T − ti . Each vehicle uses this remaining time for moving from its last customer in the previous time interval to the next customers based on the new optimal route for time interval i. In addition, the travel time from the last customer to the depot is also considered. Thus, the time constraint for each time interval is defined as the following.



eli xkli +

i∈si





ei j + u j xki j +

i∈si j∈si



ei0 xki0 ≤ T − ti ,

∀k = 1, . . . , H.

(19)

i∈si

where index l refers to the last customer visited in the previous time interval, ti−1 . This time constraint is further extended i = to approach the uncertain service time. Herein, the crisp service time ui is converted into a triangular fuzzy number u (ui1 , ui2 , ui3 ). The fuzzy time constraint is defined in Eq. (20).

 i∈si

eli xkli +





ei j + uj xki j +

i∈si j∈si

i + ei j , akj = aki + u



ei0 xki0 ≤ T − ti ,

∀k = 1, . . . , H,

(20)

i∈si

if xki j = 1 .

(21)

Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

ARTICLE IN PRESS

JID: APM 6

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

The fuzzy time constraint involves a comparison between fuzzy and non-fuzzy numbers. This paper applies a fuzzy credibility theory to solve this constraint [33]. Credibility of the required service time is less than or equal to the available working hours is defined as follows:



Cr



eli xkli

+



i∈si

ei j +



uj xki j

+

i∈si j∈si





ei0 xki0

≤ T − ti

≥ C r∗ ,

∀k = 1, . . . , H,

(22)

i∈si

where Cr∗ is a parameter representing dispatcher preference index towards risk. Higher Cr∗ gives better solution. But, it will have higher risk of failure. For instance, the vehicle cannot finish serving all customers and come back to the depot on time. Since the service time is fuzzy, the arrival time and waiting time becomes a fuzzy number as well. Thus, the average waiting time given in Eq. (12) is also transformed to a fuzzy number. In order to avoid fuzzy objective value, a defuzzification ˜ into a crisp number. Herein, the third Yager’s index is employed. Let waiting technique is applied to transform the fuzzy W i = (wi1 , wi2 , wi3 ). The average waiting time calculated using the third Yager index is as follows: time of customer i be w



¯ = W

i∈S/{s0 }

( wi1 + 2 + wi3 ) . 4|S|

(23)

Finally, substituting Eq. (23) into the original objective function in Eq. (13) yields:

max F =

|S| ¯ W



=

1 4 |S |





k∈H i∈S/{s0 }

i∈S

yki

( wi1 + 2 + wi3 )

.

(24)

3.2. Fuzzy ant colony system This paper proposes a fuzzy-ACS to solve the fuzzy DVRP. At the initial state, the fuzzy-ACS algorithm is performed to obtain an optimal route which considers the customers in C0 . For each time interval i, the proposed fuzzy-ACS is performed to find the optimal route. Thus, in T working hours with m time intervals, fuzzy-ACS is performed m times. The proposed fuzzy-ACS improved the initialization step in the original ACS algorithm. The ACS algorithm usually generates initial pheromone randomly. On the other hand, pheromone has a significant influence on the route construction process. A better initial pheromone may lead to a faster better solution [31]. Thus, the proposed fuzzy-ACS applies a cluster insertion algorithm to obtain a better initial pheromone instead of using random initial pheromone. The cluster insertion algorithm groups the customers into several small clusters based on the distance between customers. The routes between customers within a cluster have higher pheromone levels than routes between customers in two different clusters. Besides, a vehicle tends to serve customers within the same cluster. Newly arriving customers are assigned to the nearest cluster. Furthermore, the proposed fuzzy-ACS involves G groups of ants, where each group consists of H ants. Each ant in a group represents a vehicle which has its own route. After a complete route is constructed, a random swap is conducted between p q two vehicles. For instance, Ci is a set of customers served by vehicle p, while Ci belongs to vehicle q. A random swap is p q conducted by exchanging an element from Ci for an element from Ci . This swapping is only accepted if it can improve the entire route. Fig. 2 shows the algorithm of the proposed fuzzy-ACS. 3.2.1. Initialization using the cluster insertion method Fuzzy-ACS generates an initial trail using the cluster insertion method. It modifies the heuristic insertion algorithm [5] by combining with the clustering method. Pop et al. [35] employed the clustering method to solve VRP. The cluster insertion method constructs an initial trail by grouping the customers into several clusters. The number of clusters follows the number of vehicles because each vehicle serves a cluster. For each cluster, a rough route is constructed. During the working hours, the cluster insertion method is executed by inserting a new customer into the current route. For each unvisited customer, this method chooses which vehicle should serve this customer, and updates the chosen route. Herein, each cluster has a central point. The distance between a new customer and a cluster is calculated using Euclidean distance. A new customer is assigned to the nearest cluster. p Furthermore, the current route should be updated. Let the new customer sn be inserted into vehicle Si . A new route to visit the new customer sn is inserted on a route connecting two customers: sa and sb . The new customer can be inserted between any sa and sb . The final route is the insertion result which has the lowest additional travel cost. In addition, the feasibility of inserting the new customer into the current route is also considered. The insertion is accepted if no constraint is violated. Fig. 3 gives the detailed cluster insertion algorithm. 3.2.2. Solution construction The Fuzzy-ACS algorithm is executed in every time interval to update the current route. At the initial state of each time interval, a vehicle starts from the last visited customer si in the previous time interval. Afterwards, each ant chooses the next customer sj based on the following rule:



sj =

arg max i, j∈S

sk ,

α β τi j ηi j , if q < q0

otherwise

,

(25)

Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

JID: APM

ARTICLE IN PRESS R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

[m3Gsc;July 11, 2016;14:11] 7

Fig. 2. Algorithm of fuzzy ASC.

Fig. 3. Cluster insertion algorithm.

where sk is any customer who have not been visited. In the proposed method, if an ant prefers to ignore information laid in pheromone (q ≤ q0 ), it will visit any random customer. Through this strategy, the exploration conducted by ants becomes wider. The proposed mathematical model involves binary decision variables, as shown in Eqs. (9) and (10). On the other hand, the solution constructed by the proposed fuzzy-ACS algorithm is already in a fix route format. It is not necessary to transform the fixed route into the binary values since the rule applied by a fuzzy-ACS algorithm in constructing a route has considered the feasibility conditions covered by constraints in Eqs. (14)–(17). Therefore, the fuzzy-ACS algorithm only evaluates the time constraint (given in Eqs. (19)–(22)) when choosing the next customers. Eq. (25) only considers the unvisited customers. It guarantees that no customers will be visited twice. The time constraint in Eq. (22) also calculates the travelling time to the depot after the vehicles finish serving all of the customers. Therefore all of the constraints are satisfied without translating the fixed route format into binary variables. Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

ARTICLE IN PRESS

JID: APM 8

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12 Table 1 Factors and levels for parameter setting. Factor

Level

References

G

3 10

Montemanni et al. [12] Dorigo and Gambardella [34], Gambardella et al. [37]

ρ

0.1 0.3

q0

0.7 0.9

(α − β )

−1 0 1

Dorigo and Gambardella [34], Gambardella et al. [37]

Gambardella et al. [37] Dorigo and Gambardella [34] Montemanni et al. [38], Gambardella et al. [37]

Table 2 Parameter setting for DVRP with uncertain service time. Problem setting ∗

Cr Number of vehicles Number of time intervals Computational time limit

Value 0.6 5 12 10 s

4. Computational simulation In this section, fuzzy-ACS performance is evaluated using a DVRP with uncertain service time dataset. The data set employed is modified from the C50 dataset proposed by Montemanni et al. [12]. This dataset consists of fifty customers. The customer arrival times are distributed randomly during a working day. In this paper, the computational simulation assumes the working hour is 12 h per day. There are five different degrees of dynamism applied in modifying the dataset: 0, 0.25, 0.50, 0.75 and 1.00. The simulation is coded in C++ using Code Block and run on a PC with [email protected] GHz and 2GB RAM. Each case is run thirty times to investigate the consistency of the proposed method. 4.1. Parameter setting There are four parameters required for fuzzy-ACS: number of ant groups (G), pheromone evaporation (ρ ), selection pressure (q0 ) and relative importance between pheromone and distance (α − β ). These parameters are determined using a factorial experimental design. Each parameter becomes a factor, while its level is determined based on previous studies, as listed in Table 1. According to the experimental design results, the best combination of parameters for fuzzy-ACS is as follows: m = 10, ρ = 0.3, α = 1 and β = 2. Moreover, in solving DVRP with uncertain service time, additional parameters are required. Unlike the previous four parameters, the additional parameters can be simply decided subjectively. In this paper, these additional parameters are listed in Table 2. 4.2. Cluster-insertion evaluation In the proposed fuzzy-ACS, the cluster-insertion method was applied to generate the initial solution. In this section, the proposed cluster-insertion method is evaluated using some CVRP datasets proposed by Christofides et al. [36]. Kilby et al. [5] revealed that the order of insertion has a great effect on the result. Thus, both randomly and sequentially or fixed order are executed. The computational results mentioned in Table 3 prove that the proposed cluster-insertion method can yield a good initial solution. The average deviation of the solution quality from five datasets is 15.92%. Besides, it also informs that fixed insertion is more promising than random insertion. 4.3. Fuzzy-ACS evaluation For evaluation purpose, fuzzy-ACS proposed in this paper is applied for solving five DVRP with uncertain service time datasets. Since the computation time in DVRP is highly restricted, a specified time is used as the stopping criterion; in this experiment, it is limited at 10 s. The result is compared with that of fuzzy-ACS with the insertion method as proposed by Kilby et al. [5]. For the first observation, the dataset is treated as static VRP. The results obtained by both algorithms are shown in Fig. 4. It shows that the result achieved by the proposed fuzzy-ACS with cluster-insertion method is better than that of fuzzy-ACS with Kilby’s method. Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

ARTICLE IN PRESS

JID: APM

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

9

Table 3 Cluster-insertion evaluation result. Instance

c50 c75 c100 c150 c200

Best known solution

Cluster insertion method

524.61 524.61 835.26 835.26 826.14 826.14 1028.42 1028.42 1291.29 1291.29

Deviation (%)

Order

Average

Best

Fixed Random Fixed Random Fixed Random Fixed Random Fixed Random

573.65 697.32 995.832 1166.98 942.29 1111.81 1298.6 1633.24 1650.75 2085.78

573.65 595.7 995.83 1066.58 942.29 1018.08 1298.6 1500.22 1650.75 1885.36 Average

8.55 11.93 16.12 21.69 12.33 18.85 20.81 31.45 21.78 31.51 15.92

Fig. 4. Performance comparison for static VRP.

Table 4 Solution comparison for DVRP with uncertain service time. dod

0 0.25 0.5 0.75 1

Result

Avg. Best Avg. Best Avg. Best Avg. Best Avg. Best

Cluster insertion method + fuzzy ACS Customers

Avg. waiting

Failed

served (F1 )

time (F2 )

orders

50 50 50 50 50 50 48.3 50 37.53 38

4.01 3.83 3.97 3.81 2.89 2.81 2.26 2.1 1.52 1.44

0 0 0 0 0 0 0 0 2 2

Kilby et al.’s method + fuzzy-ACS 1

[F1 ] 1 [F2 ]

12.47 13.48 12.59 13.12 17.32 17.78 21.48 23.81 24.67 26.31

Customers

Avg. waiting

Failed

served (F1 )

time (F2 )

orders

50 50 50 50 50 50 48.8 49 35.3 36

4.04 3.88 3.92 3.83 2.89 2.82 2.31 2.1 1.55 1.47

0 0 0 0 0 0 0 0 2 2

1

[F1 ] 1 [F2 ]

12.38 12.89 12.76 13.04 17.3 17.73 21.23 23.36 22.83 24.45

After evaluating the use of static VRP, these methods are tested for DVRP with uncertain service time under different degrees of dynamism. The results are analyzed based on the number of customers served, average waiting time, failed order and fitness function. The results are summarized in Table 4. These results further prove that the proposed fuzzy-ACS with cluster insertion method performs better than fuzzy-ACS with Kilby’s method. It shows that an initial solution given by the cluster insertion method helps ACS perform better both in static and DVRPs. Therefore, it reveals that the proposed algorithm can be applied to the real-life scenarios which are represented as DVRP. In order to apply this method to realworld scenarios, the on-site service companies can develop a computer system using the proposed algorithm. The companies just need to input the incoming order and then the system will provide the routing result. Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

JID: APM 10

ARTICLE IN PRESS

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12 Table 5 Result under different number of time intervals. Number of interval

6

12

24

48

Number of customers served Average waiting Time (h) Standard deviation (h)

50 2.96 0.06

50 2.88 0.04

50 2.85 0.04

50 2.84 0.05

Fig. 5. Performance behavior under different degree of dynamism.

4.4. Sensitivity analysis In addition, a sensitivity analysis is conducted to analyze model behavior under different variables: number of time intervals, degree of dynamism and credibility preference index. 4.4.1. Number of time intervals The number of time intervals determines how frequently the ongoing route is updated. Herein, four different time intervals are applied. The results shown in Table 5 indicate that the number of time intervals significantly influence the solution quality. With a small number of time intervals the results, become worse since the optimization process cannot take advantage of the new information. It confirms previous research conducted by Montemanni et al. [12]. This result reveals if a route is updated more often, then the better routing result can be obtained. 4.4.2. Degree of dynamism The degree of dynamism is a criterion measuring dynamicity of the problem. It is defined as a fraction of dynamic requests for the total requests in a day. A static problem has zero degree of dynamism; the more dynamic the request, the more complex the problem. The experiment conducted in this paper considered five different degrees of dynamism. Fig. 5 shows the performance behavior under different degrees of dynamism. It reveals that the average waiting time decreases as the dynamicity increases. Higher dynamicity means that the current routing schedule is revised more often. In the proposed method, it is done by increasing the number of time lags. In an extreme case, the current schedule is revised every time a new order arrives. In this scenario, the average waiting time will be significantly decreased since the routing decision is always improved. However, the computation cost will be higher. Thus, this decision will depend on the company’s policy and service level. 4.4.3. Credibility preference index Credibility preference index Cr∗ is a subjective parameter indicating the dispatcher’s behavior in regard to the risk. Intuitively, dispatchers will have low Cr∗ value when they believe that their available time is more than enough to handle all of the requests in the day. On the other hand, the dispatchers will have higher Cr∗ when they doubt the available time is enough to serve all the requests. In order to analyze the correlation between the credibility preference index and solution quality, the proposed fuzzy-ACS with different credibility preference indexes is implemented. The results given in Table 6 show that an increasing credibility index yields better solutions, albeit high-risk decisions. In a real situation, the vehicle may not go back to the main office Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

ARTICLE IN PRESS

JID: APM

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

11

Table 6 Result under different credibility preference index. Number of vehicles

Credibility preference index 0.3

3 4 5 6

0.6

Customers

Avg. waiting

served (F1 )

time (F2 )

37.83 49.40 50.00 50.00

3.89 3.80 2.88 2.25

1

[F1 ] 1 [F2 ]

9.73 13.00 17.38 22.26

0.9

Customers

Avg. waiting

served (F1 )

time (F2 )

33.80 45.07 50.00 50.00

3.20 3.33 2.88 2.26

1

[F1 ] 1 [F2 ]

10.57 13.54 17.37 22.12

Customers

Avg. waiting

served (F1 )

time (F2 )

30.00 40.53 48.97 50.00

2.66 2.87 2.77 2.25

1

[F1 ] 1 [F2 ]

11.28 14.11 17.67 22.27

on time. Thus, the on-site service company has to pay the overtime fee to the technician. On the other hand, decreasing the credibility index reduces the risk involved. However, the solution may not become better. The results in Table 6 also show that if the number of vehicles is increased, the influence of the credibility preference index on the results will be less significant. The reason is that when the on-site service company has more resources, such as technicians or vehicles, the probability of serving all orders become higher. Since the computational results show that these parameters influence the routing results, the decision maker in the on-site service company should carefully determine these parameters. 5. Conclusions This study has presented a mathematical model for DVRP which considers the dynamic customers’ location, the incoming time of the orders and also the uncertain service time. These conditions are faced by on-site service companies in handling real-world problems. In order to increase the profit and customer satisfaction, the proposed model considers two objectives: maximizing the number of customers served and minimizing customers’ waiting time. In addition, a fuzzy-ACS algorithm with cluster insertion was applied to solve the model. The proposed fuzzy-ACS improves the initialization of the original ACS algorithm by employing a cluster insertion algorithm. Thus, in DVRP, when a new customer arrives, it will be inserted into the nearest cluster. The proposed model and algorithm are verified using some modified datasets. The experimental results show that the proposed fuzzy-ACS algorithm has better results than the fuzzy-ACS algorithm with Kilby’s initialization. It proves that the proposed cluster insertion algorithm successfully gives better initial pheromone to the ants. These results indicate that if the proposed model and algorithm are applied to the real-world problem, the on-site service company can get higher profit as well as greater customer satisfaction. The uncertain variable represented by the fuzzy variable requires some policies regarding the number of time intervals, degree of dynamism, and credibility preference index. The sensitivity analysis shows how these policies may influence the risk related to the chosen route. Currently, the routing problem for on-site service companies becomes more complex. They not only face the uncertain service time, but also the customer time windows, priority customers, etc. Therefore, the current model in this paper should be extended and the improved fuzzy ACS algorithm. Other metaheuristics can also be applied to find a better heuristic-based method for DVRP. References [1] G.B. Dantzig, J.H. Ramser, The truck dispatching problem, Manage. Sci. 6 (1959) 80–91. [2] P. Toth, D. Vigo, An overview of vehicle routing problems, in: T. Paolo, V. Daniele (Eds.), The Vehicle Routing Problem, Society for Industrial and Applied Mathematics, 2001, pp. 1–26. [3] P. Toth, D. Vigo, Models, relaxations and exact approaches for the capacitated vehicle routing problem, Discrete Appl. Math. 123 (2002) 487–512. [4] J.E. Beasley, A. Lucena, M.P. Aragao, The vehicle routing problem, in: P.M. Pardalos, M.G.C. Resende (Eds.), Handbook of Applied Optimization, Oxford University Press, New York, 2002, pp. 584–594. [5] P. Kilby, P. Prosser, P. Shaw, Dynamic VRPs: A Study of Scenarios, University of Strathclyde, Scotland, 1998. [6] Z. Jianyong, L. Jun, A hybrid genetic algorithm to the vehicle routing problem with fuzzy cost coefficients, in: 2014 11th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD), 2014, pp. 147–152. [7] L. Jun, Z. Jianyong, A heuristic algorithm to VRP with the consideration of customers’ service preference, in: 2014 11th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD), 2014, pp. 141–146. [8] M. Adelzadeh, V. Mahdavi Asl, M. Koosha, A mathematical model and a solving procedure for multi-depot vehicle routing problem with fuzzy time window and heterogeneous vehicle, Int. J. Adv. Manuf. Technol. 75 (2014) 793–802. [9] Y. Zheng, B. Liu, Fuzzy vehicle routing model with credibility measure and its hybrid intelligent algorithm, Appl. Math. Comput. 176 (2006) 673–683. [10] C. Erbao, L. Mingyong, A hybrid differential evolution algorithm to vehicle routing problem with fuzzy demands, J. Comput. Appl. Math. 231 (2009) 302–310. [11] M. Gendreau, A. Hertz, G. Laporte, A tabu search heuristic for the vehicle routing problem, Manage. Sci. 40 (1994) 1276–1290. [12] R. Montemanni, L.M. Gambardella, A.E. Rizzoli, A.V. Donati, Ant colony system for a dynamic vehicle routing problem, J. Comb. Optim. 10 (2005) 327–343. [13] G. Pankratz, Dynamic vehicle routing by means of a genetic algorithm, Int. J. Phys. Distrib. Logist. Manage. 35 (2005) 362–382. [14] F. Hanshar, B. Ombuki-Berman, Dynamic vehicle routing using genetic algorithms, Appl. Intell. 27 (2007) 89–99. [15] H. Nazif, L.S. Lee, Optimised crossover genetic algorithm for capacitated vehicle routing problem, Appl. Math. Modell. 36 (2012) 2110–2117. [16] F. Ahmadizar, M. Zeynivand, J. Arkat, Two-level vehicle routing with cross-docking in a three-echelon supply chain: a genetic algorithm approach, Appl. Math. Modell. 39 (2015) 7065–7081.

Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025

JID: APM 12

ARTICLE IN PRESS

[m3Gsc;July 11, 2016;14:11]

R.J. Kuo et al. / Applied Mathematical Modelling 000 (2016) 1–12

[17] B. Yu, Z.-Z. Yang, J.-X. Xie, A parallel improved ant colony optimization for multi-depot vehicle routing problem, J. Oper. Res. Soc. 62 (2011) 183–188. [18] X.-Y. Li, P. Tian, S.C.H. Leung, An ant colony optimization metaheuristic hybridized with tabu search for open vehicle routing problems, J. Oper. Res. Soc. 60 (2008) 1012–1025. [19] M. Dorigo, C. Blum, Ant colony optimization theory: a survey, Theor. Comput. Sci. 344 (2005) 243–278. [20] T. Zhang, W.A. Chaovalitwongse, Y. Zhang, Integrated ant colony and tabu search approach for time dependent vehicle routing problems with simultaneous pickup and delivery, J. Comb. Optim. 28 (2014) 288–309. [21] T. Zaza, A. Richards, Ant colony optimization for routing and tasking problems for teams of UAVs, in: 2014 UKACC International Conference on control (CONTROL), 2014, pp. 652–655. [22] G. Senarclens de Grancy, M. Reimann, Vehicle routing problems with time windows and multiple service workers: a systematic comparison between ACO and GRASP, Cent. Eur. J. Oper. Res. 24 (2016) 29–48. [23] L.A. Zadeh, Fuzzy sets, Inform. Control 8 (1965) 338–353. [24] Y.C. Shin, C. Xu, Automation and Control Engineering Series, Intelligent System: Modeling, Optimization and Control, CRC Press, New York, 2009. [25] J. Brito, A. Moreno, J.L. Verdegay, Fuzzy optimization in vehicle routing problems, in: Proceedings of the Joint 2009 International Fuzzy Systems Association World Congress and 2009 European Society of Fuzzy Logic and Technology Conference, Lisbon, Portugal, 2009, pp. 1547–1552. [26] R.J. Kuo, F.E. Zulvia, K. Suryadi, Hybrid particle swarm optimization with genetic algorithm for solving capacitated vehicle routing problem with fuzzy demand – a case study on garbage collection system, Appl. Math. Comput. 219 (2012) 2574–2588. [27] B. Warnes, M. Drawe, Capacitated vehicle routing problem with fuzzy demand, in: J.L. Verdegay (Ed.), Fuzzy Sets Based Heuristic for Optimization, Springer, New York, 2003, pp. 317–336. [28] C.D.J. Waters, Vehicle-scheduling problems with uncertainty and omitted customers, J. Oper. Res. Soc. 40 (1989) 1099–1108. [29] D. Teodorovic´ , G. Pavkovic´ , The fuzzy set theory approach to the vehicle routing problem when demand at nodes is uncertain, Fuzzy Sets Syst. 82 (1996) 307–317. [30] G. Goncalves, T. Hsu, J. Xu, Vehicle routing problem with time windows and fuzzy demands: an approach based on the possibility theory, Int. J. Adv. Oper. Manage. 1 (2009) 312–330. [31] F.E. Zulvia, R.J. Kuo, H. Tung-Lai, Solving CVRP with time window, fuzzy travel time and demand via a hybrid ant colony optimization and genetic algorithm, in: 2012 IEEE Congress on Evolutionary Computation (CEC), 2012, pp. 1–8. [32] L.A. Zadeh, Fuzzy sets as a basis for a theory of possibility, Fuzzy Sets Syst. 1 (1978) 3–28. [33] B. Liu, A survey of credibility theory, Fuzzy Optim. Decis. Making 5 (2006) 387–408. [34] M. Dorigo, L.M. Gambardella, Ant colony system: a cooperative learning approach to the traveling salesman problem, IEEE Trans. Evol. Comput. 1 (1997) 53–66. [35] P.C. Pop, I. Kara, A.H. Marc, New mathematical models of the generalized vehicle routing problem and extensions, Appl. Math. Modell. 36 (2012) 97–107. [36] N. Christofides, A. Mingozzi, P. Toth, C. Sandi, Combinatorial Optimization, John Wiley, Chichester, 1979. [37] M.L. Gambardella, É.D. Taillard, M. Dorigo, Ant colonies for the quadratic assignment problem, J. Oper. Res. Soc. 50 (1999) 167–176. [38] R. Montemanni, L. Gambardella, A. Rizzoli, A. Donati, A new algorithm for a dynamic vehicle routing problem based on ant colony system, Second international workshop on freight transportation and logistics, 2003, pp. 27–30.

Please cite this article as: R.J. Kuo et al., Application of a fuzzy ant colony system to solve the dynamic vehicle routing problem with uncertain service time, Applied Mathematical Modelling (2016), http://dx.doi.org/10.1016/j.apm.2016.06.025