Scheduling automated transport vehicles for material distribution systems

Scheduling automated transport vehicles for material distribution systems

Applied Soft Computing Journal 82 (2019) 105552 Contents lists available at ScienceDirect Applied Soft Computing Journal journal homepage: www.elsev...

3MB Sizes 0 Downloads 6 Views

Applied Soft Computing Journal 82 (2019) 105552

Contents lists available at ScienceDirect

Applied Soft Computing Journal journal homepage:

Scheduling automated transport vehicles for material distribution systems ∗

Humyun Fuad Rahman a , , Izabela Nielsen b a b

School of Engineering and IT, University of New South Wales, Canberra, Australia Department of Materials and Production, Aalborg University, Aalborg, Denmark

highlights • • • •

A new methodology has been developed for scheduling automated transport vehicles. A GA and an IG algorithm have been proposed to solve the problem. Designed a set of benchmark to test the performance of the approach. The proposed approach improves overall performance of material handling systems.



Article history: Received 12 September 2018 Received in revised form 16 March 2019 Accepted 29 May 2019 Available online xxxx Keywords: ATV scheduling Material distribution Genetic algorithm Iterated greedy algorithm

a b s t r a c t The rise of advanced manufacturing technology has led to enhanced, efficient material handling equipment in manufacturing and container terminal environments. In order to exploit the full potential of advanced material handling equipment in real-world industrial environments, novel scheduling approaches capable of ensuring integrated operations for multiple automated transport vehicles need to be developed. This research develops a methodology for scheduling automated transport vehicles to ensure the smooth flow of materials in production and container terminal environments. The procedure consists of a mixed-integer programming model and two meta-heuristic-based algorithms that are proposed to achieve quality schedules within a reasonable amount of time. The obtained results show a significant reduction in the earliness or lateness of material delivery tasks and an improvement in operational performance, demonstrating that the proposed approaches are capable of ensuring smooth material distribution by scheduling automated transport vehicles in an integrated manner. © 2019 Elsevier B.V. All rights reserved.

1. Introduction In recent years, with the continuous development of advanced manufacturing and information management systems, manufacturing environments have changed to adapt with globalization and to maintain customer satisfaction. In order to maintain a competitive edge, organizations focus on exorbitant product variety with overall cost reductions to improve their core competences and conserve sustainable environments [1]. One aspect that has had a significant impact on manufacturing costs is the material handling system, which constitutes up to 30%–70% of the total cost of production [2,3] in environments such as manufacturing and container terminals. More importantly, to survive or even thrive in highly competitive markets, manufacturing industries focus on producing large amounts of diversified products within a short period of time. For example, modern automobile ∗ Corresponding author. E-mail address: [email protected] (H.F. Rahman). 1568-4946/© 2019 Elsevier B.V. All rights reserved.

industries typically produce one car per minute [4]. The aim of the material distribution system is to supply the right amount of the right material to the right place and at the right time. However, it is almost impossible to achieve this with: (1) traditional manual material handling equipment, and (2) without proper planning and scheduling of the material handling equipment [2,3]. Therefore, like other components in the manufacturing environment, effective material handling is crucial to ensure overall performance in manufacturing industries and container terminals [4,5]. Recently, technologies such as wireless networks, sensors and intelligent manufacturing methods have created opportunities to replace manual handling operations with automated equipment. In other words, Automated Transport Vehicles (ATVs), like Automated Guided Vehicles (AGVs), mobile robots (unmanned ground vehicles), tow trains, and Unmanned Aerial Vehicles (UAVs) are now being used to transport materials to each machine on the production floor and to load containers onto container terminals in sea ports. Automation can ensure a reliable and flexible


H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

material handling system. Hence, automated systems like AGVs, mobile robots, tow trains, and UAVs are being used increasingly often to distribute materials like containers, raw materials, workin-process parts, and finished products, in order to ensure the smooth flow of operation, and, hence, improved performance [1, 6,7]. Moreover, ATVs are capable of handling hazardous materials and working in dangerous environments [1]. The aim of the ATV-based material distribution system is to transfer the right amount of the right material to the right place at the right time, as inefficient ATV schedules will cause delays in production and container handling processes [8]. In addition, storage space on production floors and in container terminals is limited. Therefore, scheduling the vehicles and allocating the material delivery tasks is a critical procedure in production and container terminal operations. To ensure functionality, material transportation tasks need to be distributed efficiently among the available autonomous vehicles (either single or multiple ATVs), while maintaining the specific sequence of material delivery tasks. Therefore, resourceful scheduling of ATVs is essential in overcoming the challenges in automated material delivery systems in real-world industrial environments. The scheduling of ATVs for material transportation in manufacturing industries is a complex decision-making problem [3]. Nevertheless, most of the existing literature available in this area implicitly or explicitly studies this problem using restrictive assumptions [4,8,9]. To date, the scientific literature has investigated very different ATV planning and scheduling approaches tailored to their specific applications, often without even investigating related approaches developed for other vehicle types. Furthermore, in such approaches, a set of ATVs is scheduled to supply materials to a set of machines or vessels at any time with makespan minimization as the objective [8,10], which made sense in earlier times since cost was the objective and production used to be the bottleneck [11]. However, recently, service level (i.e. time window or earliness and tardiness penalty minimization)-related objectives have become increasingly important in manufacturing industries [11]. Material loading and unloading times are considered negligible compared to ATV travel times through the manufacturing facilities and container terminals [10,12]. Notably, only a few studies consider restrictions in the physical configurations of the transport vehicles, e.g. the maximum carrying capacity [1,12]. Even though a limited number of studies are available on different ATV scheduling problems, these studies oversimplify the problem and are hard to implement in many real-world material distribution systems [4]. Due to these limited assumptions, there is a significant gap between theoretical ATV scheduling studies and practical material handling environments. This gap provides an opportunity to exploit the potential of advanced material handling systems arising from the induction of advanced manufacturing technology [4] and automated container terminal environments [8] by developing novel scheduling approaches which are capable of coping with the integrated operation of multiple automated transport vehicles. As processes in these industrial environments are continuous, material handling scheduling problems need to be solved in near real-time. Hence, this paper proposes novel methods to provide near real-time solutions for ATV scheduling problems. More specifically, this paper contains two significant contributions to the field of ATV scheduling problems: first, a mixed integer linear programming model is developed to represent the problem. The challenge is that the problems are in general regarded as NP-hard in nature [13] and that real life systems contain a large number of autonomous ATVs. Due to this high level of complexity, classical optimization techniques are not suitable for solving the problem under study. Therefore, it is essential to develop an efficient

search technique to achieve a fast and feasible solution in near real-time. Meta-heuristic algorithms have a good track record for solving complex combinatorial optimization problems like the scheduling problem under study [14–16]. Hence, in the second contribution, this paper aims to develop a genetic algorithm (GA)-based meta-heuristic approach to solve this problem with the objective of minimizing the total earliness and tardiness penalty. To assess the performance of the proposed GA, an iterated greedy (IG)-based meta-heuristic approach has also been proposed. Two meta-heuristic algorithms are proposed, as no alternative approaches are available in the literature. GA and IG are selected as the alternative solving strategies, as they are easy to implement and have a very good track record of solving complex combinatorial optimization problems like this one with reasonable computational speed [14,17,18]. The proposed approaches aim to optimize material supply schedules by assigning task(s) to an appropriate ATV as well as sequencing the tasks so that materials are delivered with little or no delay. There is no benchmark available for ATV scheduling problems for material distribution systems. Therefore, a set of realistic problem instances is generated to test the performance of the proposed algorithms. The remainder of the paper can be summarized as follows. In Section 2, an overview of prior work relevant to material handling using different types of ATVs is presented. Section 3 defines the mathematical model of the problem, describes the necessary assumptions, and presents a dimensional and complexity analysis. In Section 4, solution approaches are discussed, while Section 5 presents computational experiments. Finally, Section 6 concludes the paper with suggestions for future research directions. 2. Literature review Despite their widespread applications in manufacturing and automated container terminals, until recently, ATV scheduling problems for supply materials have not been widely studied. A brief review of AGV scheduling is provided by Qiu et al. [19]. In this section, a review of these frameworks is presented. Over the last few decades, AGVs have received more attention than other automated transport vehicles in the literature. Most of these studies are inspired by flexible manufacturing systems (FMS). Bocewicz et al. [20] propose a framework for scheduling and routing AGV-based material handling systems. Singh et al. [7] propose dispatching rules for AGV scheduling for material distribution problems and evaluate the performance using a simulation. However, their simulations are limited to two AGVs and do not consider time windows or due date constraints. Espinouse et al. [21] made a computational study on a single machine and single AGV scheduling problem in a manufacturing environment and they showed that the problem can be polynomial solvable with zero AGV transportation time. Caumond et al. [22] propose an optimal algorithm for solving flexible manufacturing systems with a single AGV, which somewhat limits the problem scope taken into account. Bilge and Ulusoy [23] and Ulusoy and Bilge [24] formulate a joint machine and AVG scheduling problem in manufacturing with makespan minimization as the objective. Ulusoy et al. [15], Abdelmaguid et al. [25], Reddy and Rao [26] and Zeng et al. [10] propose several meta-heuristic algorithms to solve the same problem.Gnanavel Babu et al. [27] propose a differential evolution approach to solve the same problem with only two AGVs. Erol et al. [28] propose a multi-agent-based approach for AGV and machine scheduling problems where feasible schedules are generated based on bidding mechanisms for generating feasible schedules. Zhou and Shen [29] propose a tabu search enhanced particle swarm optimization algorithm for solving AGVbased material delivery problem in assembly production system

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

while considering energy. However, these approaches have fixed job release times, and do not depend on the demand at the stations, which varies over time. In addition, the schedules are not constrained by AGV carrying capacity. Besides the existing methodologies on AGV scheduling in FMS, Corréa et al. [30] propose a joint approach for both AGV scheduling and routing in FMS. However, for most of the production floor, routing is unnecessary due to the extremely limited space available [4,31]. For this reason, this study chooses to focus only on ATV scheduling problems for material transportation. At the other end of the spectrum, some studies have focused on AGV scheduling in automated container terminals. Despite the many different types of automated vehicles in existence, the material handling scheduling problem in container terminal environments has, to date, only been studied considering AGVs. Lau and Zhao [5] propose a multi-layer GA to schedule different material handling equipment in container terminals in an integrated way. He et al. [32] study a similar problem involving energy consumption. They propose a GA and particle swarm optimization-based approach to solve the problem. Angeloudis and Bell [33] propose a dispatching rule-based algorithm for AGV scheduling for material handling operations in container terminals. Rashidi and Tsang [34] formulate an AGV scheduling problem in a container as a minimum cost flow model. They propose complex algorithms to find optimal solutions up to a certain problem size. This approach does not address problem sizes that can handle material transportation problems in real life. Luo et al. [8] propose a GA-based approach for solving the same problem with makespan minimization as the objective. Like AGV scheduling, tow train scheduling for material distribution attracts attention in the literature. Emde and Gendreau [4] made a computational study on material delivery problems with tow trains in assembly lines. The authors also proposed a tabu search algorithm for the problem with fairly restrictive assumptions (like no stop-over time and an unlimited material carrying capacity). Emde and Boysen [9,35] studied a similar problem and proposed routing algorithms for routing tow trains. Fathi et al. [36] propose a simulated annealing-based approach to minimize tours as well as the inventory level at the lines. Lu et al. [37] extended these studies by considering integrated material delivery by tow trains and line-side storage problem for aircraft assembly lines. Only a few studies are available on mobile robot task-scheduling problems. Almost all of these studies consider only one mobile robot scheduling problem. Ascheuer et al. [38] studied a sequential ordering problem in manufacturing which is similar to a robot task-sequencing problem. Dang et al. [39] propose a mixed integer programming model for a single mobile robot-based material delivery task sequence problem in a manufacturing cell, and extend their study to suit ubiquitous manufacturing environments. Hurink and Knust [40] propose a tabu search approach to solve a single robot task scheduling problem in a job shop environment. Suárez and Rosell [41] propose dispatching rules based on the theory of linear discriminant functions to solve optimum part feeding problems by using a single robot. Maimon et al. [42] propose a neural network approach to solve the robot task-scheduling problem. With the advancement of UAV technology, industries focus on utilizing aerial transport vehicles to ensure flexible material handling systems [43]. Khosiawan et al. [44] developed a mathematical model and proposed a heuristic-based solution for solving indoor UAV scheduling problems. However, this is an area with very few contributions to date. Apart from specific automated vehicle problems, classical parallel machine scheduling problems with single [45] or multiple servers [46] can be considered as an ATV scheduling problem


under very restrictive assumptions. Here, each ATV can be considered as the machine and each warehouse can be considered as the server. The traveling or operating time of the vehicle can be considered as the processing time of the machine. Even with these limited assumptions, the parallel machine scheduling process is also proved to be NP-hard [47]. From the above review of different studies of different types of automated transport vehicle scheduling, it can be seen that the abovementioned studies have restrictive assumptions. These assumptions are: (1) the ATV has unlimited material carrying capacity, (2) material loading–unloading times are negligible, (3) as with typical machine scheduling problems, most of the ATV scheduling studies exclude the time window or due date constraints while formulating the problem. However, in terms of ensuring smooth production flow and ensuring that shipments are on time, materials need to be delivered at the appropriate time, so (4) ATV scheduling problems for production and container terminal environments have therefore been studied separately. These assumptions isolate the abovementioned studies from real life manufacturing environments and the general aim and problem structure of autonomous vehicle scheduling problems are always the same irrespective of the specific applications. To the best of the authors’ knowledge no paper has a general view on autonomous vehicle scheduling problems in material transportation problems. Hence, this paper advocates a general perspective on automated material scheduling problems and aims to derive a general building block for scheduling and synchronizing autonomous transport vehicle systems, which can be easily customized to specific applications. 3. Problem formulation and mathematical model 3.1. Problem formulation When the production process starts, each machine needs a certain amount of materials (raw materials, semi-finished items). To ensure the smooth flow of production, materials need to be available in near real-time. These materials are available in warehouses and need to be delivered within a certain supply time window to start the process. Like the production environment, inside an automated port container terminal, containers need to be delivered from the warehouse to the vessel within fixed time windows so that the shipment can be made at the right time. A time window is a time interval within which a material unloading process can be executed without incurring any penalties [48]. ATVs are used to transfer materials around the production floor and in container terminals. Each material delivery activity, i.e. material loading in an ATV, travel to the destination, and material unloading to the destination point is referred to as a task. Fig. 1 shows a typical layout of an automated production floor. An automated production floor is made up of machines or workstations deployed to receive materials (like raw materials) in order to start processing their designated operations. Two warehouses are deployed to retrieve materials and then deliver them to some machines or workstations. Pickup points for each warehouse and transfer points for each machine are located in front of each warehouse and each machine. The production floor contains a set of ATVs. At the beginning of the production, all ATVs are parked at one of the two warehouses. When production starts, some machines need some materials to continue production. To transfer those materials, an ATV goes to the transfer point of a warehouse and picks up material. Following this, it travels to the designated machine where the materials need to be delivered, and delivers the material to the delivery point. The material loading and unloading time and the traveling speed of an ATV are fixed and


H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Fig. 1. Automated material delivery system by ATVs on a production floor.

are known in advance. It is important to note that each time window has both a start time and an end time. A task is either early or tardy, depending on whether the materials are delivered before or after the start and end times of the time window, which are counted as the holding costs, overtime of labors, tardiness in production process, and so on. Traveling to and from the warehouse is defined as a tour. Each task requires a certain amount (weight) of materials to be delivered. Therefore, an ATV may pick up and deliver materials for multiple tasks, if it remains within its maximum carrying capacity in a tour. After delivering materials to one machine, an ATV may start to travel to a subsequent delivery point. In this case, the ATV may reach the next delivery point prior to the start time of the time window, resulting in an earliness penalty. On the other hand, if the travel distance between delivery points is significant, the ATV may reach the next delivery point after the time window ends, resulting in a tardiness penalty. Therefore, utilizing more ATVs may improve the performance of the system. However, the number of ATVs is limited and as production progresses, tasks are required to be executed at different points in time. Consequently, it is essential to ensure the proper assignment of tasks to each ATV and the efficient utilization of each ATV. From Fig. 1, it can be seen that some of the ATVs are carrying materials for delivery to the delivery points while some ATVs are empty, returning to the warehouse to collect material for the next task. The guided path that an ATV follows in one round trip, from the warehouse to the delivery points and back, is referred to as a route. In order to allow maximum route flexibility of ATV systems, an ATV can take a more direct path by crossing the middle paths of the production floor as shown in Fig. 1. ATVs can travel in both directions on a route (i.e. A to B and B to A), without any collision. The layout of the automated port container terminal is similar to the production floor. The main difference is that ATVs pick up containers from the warehouses and deliver them to vessels (Fig. 2). The main aspect considered in this problem is how to construct a detailed schedule for all task material delivery by utilizing available ATV fleets in the system so that the maximum number of tasks can be executed within their time windows, minimizing total earliness and tardiness penalty. The scheduling has two aspects: (1) find an available ATV to assign a task to, and

2) sequence multiple tasks for an ATV. After returning to the warehouse, an ATV can recharge and load materials for the next task. Assigning and sequencing the tasks to each available ATV to satisfy the demands of the machine with multiple trips and hard time windows is a critical scheduling problem. It is also a problem that needs to be addressed to enable flexible and intelligent material distribution systems in manufacturing and container terminal environments. In formulating the problem, the following assumptions are introduced:

• Due to space and operator constraints, each warehouse can

• • • • • • • • • •

• •

load materials onto one ATV at a time. Another ATV will wait in the queue until the material loading process of the leading ATV is completed. The same process applies to the material unloading process. Each delivery point can unload only one ATV at a time. The costs of ATV repair, maintenance and setup are negligible as we consider operational aspects only. A new task cannot be assigned to an ATV once it starts to execute a task(s). An ATV is charged/recharged while loading materials from a warehouse so it has sufficient charge to complete a tour. All ATVs have the same configurations, e.g. rate of maximum speed, material carrying capacity, time to repair/ maintenance time etc. Minimum length of time window is 30 units of time. After completing the tour, ATVs require additional time to set up or recharge. There are no priorities or precedence relationships between tasks. Materials are always available for material delivery tasks in the warehouses. Machines have an unlimited buffer (in production) and there is sufficient storage space on the vessel (in container terminals). A task can be executed at any time (24/7). No pre-emption is allowed, i.e. a material delivery process cannot be stopped until it is finished.

3.2. Mathematical model and assumptions In this section, a mathematical model is presented and the necessary assumptions are stated.

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552


Fig. 2. Automated material delivery system by ATVs in an automated container terminal. Table 1 Notations. Notation


i j w m n Sj Fj

Index of ATVs Index of tasks Index of warehouses Number of ATVs in the system Number of tasks arriving in the system Start time of the time window of the jth task End time of the time window of the jth task

tS ,j

When an ATV reaches the delivery point and starts to execute the material unloading process for the jth task

AXi,j,k =

∀k ∈ j, j = 1, . . . , n, i = 1, . . . , m

AZi,j,t =


Set of points along the route to complete a tour is indexed by P = {1, 2, . . . , PM }, where material delivery point of jth task is PM .

w PLj Mi pt

Index of final point to perform the jth task by the ith ATV Weight of the jth task Maximum carrying capacity of the ith ATV Material loading or unloading points

Table 1 presents the notations that are used in the mathematical model. Objective function The objective of this paper is to minimize total earliness and tardiness penalty for all tasks, which ensures that the materials for a task need to be delivered at the right time and also a smooth flow of process in the production floor and in container terminals. The objective function can be defined as (Ej + Tj )


where the earliness penalty of the jth task can be defined as (2.1)

and the tardiness penalty of the jth task can be defined as Tj = max{tF ,j − Fj , 0} Decision variables Total earliness and penalty for all tasks, f


0, other w ise



1, the jth task is assigned to the ith ATV at time t

0, other w ise j = 1, . . . , Q , i = 1, . . . , m, ∀t (5)

Constraints Constraint 1: Each task is assigned to only one position in the sequence of tasks of an ATV and each sequence is occupied by only one task. This constraint ensures that the same task is not assigned to multiple ATVs. n ∑

AXi,j,k = 1 ∀j, i



Constraint 2: An ATV can process (material delivery) one task at a time. This constraint is more practical since, in reality, in most of the cases, material loading–unloading operations are executed one at a time. n ∑


Ej = max{Sj − ts,j , 0}

the jth task is processed by ith ATV

j = 1, . . . , n, i = 1, . . . , m, ∀t

MTi,j,t =


⎧ ⎨1, at a particular time, t , ⎩

End time of executing the material unloading of the jth task Earliness penalty of the jth task Tardiness penalty of the jth task Material loading time of the jth task Material unloading time of the jth task Index for points (either material loading or unloading point)

n ∑

in the kth position of the sequence

0, other w ise

tF ,j Ej Tj tL,j tU ,j p

Objective function, f = min

⎧ ⎨1, if the jth task is scheduled to ith ATV

AZi,j,t = 1 ∀t , i



Constraint 3: A task cannot be assigned to an ATV once it has left a warehouse to deliver material. Assume that Q tasks are waiting to be assigned to the ith ATV. However, out of Q tasks, if c tasks (∀c ∈ Q ) can only be assigned before the ith ATV departs the warehouse at time t. Then, Q ∑ j=1

MTi,j,t = c

∀i , t



H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Constraint 4: An ATV executes a set of tasks (a tour) following the same processing order of task sequence Pm−1

APi,p,p′ = n

∀i, p = 1, . . . , PM , p′ = 1, . . . , PM , p ̸= p′



Table 2 Possible number of solutions based on number of tasks and ATVs. Number of tasks, n

Number of ATVs, m

Possible solutions

5 20 50 100

3 5 10 20

2520 2.58 × 1022 1.617 × 1074 4.58 × 10179

where APi,p,p′ =

⎧ ′ ⎨1, if the p th task is placed immediately after


pth task in the sequence assigned to ith ATV

0, other w ise

∀i, p = 1, . . . , PM , p′ = 1, . . . , PM , p ̸= p′


Constraint 5: In practice, each ATV has a loading capacity which cannot be exceeded to avoid its breakdowns. Therefore, the set of tasks executed by the ith ATV in a tour does not exceed the maximum material carrying capacity of that ATV. If Mi is the maximum material carrying capacity of ith ATV, and PLj the jth task is then n ∑

PLj ≤ Mi

∀j and ∀i



Constraint 6: The constraints for blocking the warehouse or machine for loading and unloading respectively: assume that, at a given time, ptth point is either a material pickup or delivery point. Let us also assume that from the time tlsi to the time tlf i , the ptth waypoint is occupied by the ith ATV. Therefore, at a time interval [tlsi , tlf i ], the ptth point is occupied by only one ATV. m ∑

UCAi,pt ,TLi = 1 i = 1, . . . , m, pt ∈ P



⎧ ⎨1, at a positiv e time difference TLi ,

the ptth point is occupied by ith ATV

m−1 1 ∑ m (−1)i (m − i)n (n, m) = m! i

( )



However, with this expression, two sets with identical numbers of tasks (tasks may not be identical) assigned to ATVs are not different and, in ATV scheduling problems, each ATV is a distinct entity and that should be considered separately. Therefore, we have to calculate the number of possible ways of partitioning n tasks to unique m ATVs. Obviously, a task can only be assigned to one ATV at a time, the sum of all tasks assigned to all ATVs is equal to n, i.e. m ∑

ai = n, 0 ≤ ai ≤ n




UCAi,pt ,TLi =

(n−∑i=m−1 a )

(n−a )

m i=1 am ! With the algebraic as: a a1 ! × a 2 a2 ! ×. . . × am 1 2 operations, this expression results to n! However, this number shows the possible sequence for single partition for n tasks and m ATVs only. In order to identify the total number of possible sequences for the ATV scheduling problem, we need to calculate all possible ways of partitioning n tasks into m ATVs. One way to do this is to use the Stirling number of the second kind, which is:


0, other w ise i

Here, the positive time difference, TLi = tlf − tls




Constraint 7: An ATV is recharged in the nearest warehouse after finishing its tour. This constraint ensures maximum availability of each ATV. Distance traveled by the ith ATV after finishing its tour

{ } = min dip=PM ,w=1, dip=PM ,w=2 Where w = {1, 2}

(15) (16)

Constraint 8: All variables are non-negative. 3.3. Dimensional analysis and computational complexity In this section, first we present the dimensional analysis of the ATV scheduling problem and, based on that analysis, we discuss the computational complexity of the problem. It is tricky to calculate the number of possible solutions for the problem under study. Let us assume that ai , ai ∈ n is the number of tasks assigned to the ith ATV. Then, n tasks need to be partitioned into m ATVs. Assume that this partition can be expressed as a1, . . . , am . Since n tasks are (available and a1 has to be assigned ) n to the first ATV, so there are a possible combinations. For each 1 combination, there are a1 ! possible task sequences. Therefore, for m ATVs, the total number of possible sequences can be expressed

The number of possible partitions for n identical tasks to m (n+m ) −1 unique ATVs is equal to m−1 . Therefore, the total number of possible solutions for the ATV scheduling problem with n tasks and m activities is: f (n, m) = total number of partitions

× total number of combinations per pertion ( ) n+m−1 = n! m−1


Based on Eq. (19) we have calculated the number of possible solutions for a given number of tasks, n and number of ATVs, m, which is presented in Table 2. The values in this table indicate the increase of the search space based when number of tasks, n and number of ATVs, m are increasing. Clearly, at least from the number of solutions, the ATV scheduling problem is complex to optimize with reasonable computational efforts, especially with exact optimization techniques. In addition to dimensional analysis, we discuss the computational complexity of the ATV scheduling problem, which gives an insight into the computational complexity of the problem. It is easy to see that the optimization version of the ATV scheduling problem is NP-hard in the strong sense due to its similarity to classical parallel machine problems [47], when the payload carrying capacity for each ATV is unlimited, i.e. Mi = ∞. In addition, if the number of ATVs, m = 1 then the problem is equivalent to single machine scheduling with the minimization of the sum of earliness–tardiness and it is known to be NP-complete in the strong sense [49]. However, the time complexity of our problem remains open, which we will address in the following section. Theorem. The ATV scheduling for material delivery problem is NP-hard in the strong sense.

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Proof. The proof of NP-hardness is based on a reduction from the 3-partition problem, which is well-known to be NP-hard in the strong sense [49]. The 3-partition problem is defined as follows: Given 3q positive integers, ej, (j = 1, . . . , 3q) and a positive integer B, where ∑3q B < ej < 2B and of the set j ej = qB, does a partition 4 ∑ {1, . . . , 3q} into q sets {E1 , . . . , Eq }, such that j∈Ek ej = B, ∀k = 1, . . . , q? Now, to transform the 3-partition problem to ATV scheduling, consider each ATV has a maximum allowable payload, Mi = B and jth task has a payload of ej . Each ATV takes x amount of time to travel from a warehouse to a delivery point or in-between two delivery points. Assume that the start times of time windows of all activities are sequential, i.e. Sj = jx(S1 = x, . . . , S3q = 3qx). Furthermore, length of time window for all tasks is y and an ATV cannot execute more than q tasks in a trip. Finally, we set the question, if there is a feasible schedule for ATV scheduling problem where maximum q tasks are assigned to each ATV and it is perfectly fair, with a feasible schedule, S, the objective function gives the sum of objective function, f (s) = 0. The solution to a YES-instance of 3-partition problem if and only if there is a feasible schedule with f (s) = 0. Assume that all j tasks are in different locations. For schedule s, (q + 1) are assigned ith ATV in its tour. Since traveling time in-between two points are equal and the time windows are sequential, ith ATVs are expected to deliver all (q + 1) tasks on time, i.e. f (s) = 0. However, this schedule is invalid since it violates the payload constraint, i.e. Mi < B. To repair this infeasible schedule into a feasible schedule, q activities can be delivered by the ith ATV on time and to deliver the ith ATV needs to travel back to the warehouse to pick the materials for the last task, which makes that task tardy with the value (2x + y) and f (s) ̸ = 0. If all tasks are assigned to all available ATVs in this way, the total solution will be feasible. The reverse proof direction also holds and each feasible solution for ATV scheduling problem is also a valid solution to the 3-partition problem. 4. Proposed algorithms As the aim of this study is to provide a methodology to solve large-scale ATV-based material distribution scheduling problems in near real-time, two novel metaheuristic algorithms, a GA and an IG algorithm, have been proposed to solve the problem. Detailed descriptions of the proposed algorithms are presented and discussed in this section. 4.1. Genetic algorithm The genetic algorithm (GA) is a well-known bio-inspired metaheuristic algorithm formulated by Holland [50] to solve complex engineering optimization problems [51]. A GA is a natural choice for ATV scheduling problems given its achievements for solving other complex scheduling problems [52]. In a GA, every candidate solution or chromosome is encoded into a structure that represents its solution. The set of chromosomes form a population. Each chromosome of the population is evaluated and assigned a fitness value. For our problem, the higher the fitness value, the better the chromosome. These populations undergo an evolutionary process in the form of natural selection, crossover, and mutation to find a population with a better quality. With the selection process better individuals from the current population have a higher chance of being selected for reproduction operations. Crossover and mutation are reproduction operators, where the selected individuals (parents) undergo a crossover mechanism to generate a set of new individuals (offspring). Furthermore, a mutation operator is applied to maintain population


Fig. 3. Chromosome representation.

diversity. To enhance the search process, local search techniques are applied to some individuals of each generation to enhance the performance of the GAs. The aforementioned process continues until the termination condition is satisfied. The details of these components are provided in the following sections. 4.1.1. Solution representation and idle time insertion method When solving complex optimization problems using the GA, better representation of a chromosome enhances the performance of GAs [53]. Therefore, the structure of a chromosome should convey the exact information of the problem. Generally, a chromosome is represented by binaries, integers, and real values [54]. For solving an ATV-based material distribution problem, a chromosome is represented by the processing order of the tasks assigned to that particular ATV. Therefore, the population of a GA consists of a set of chromosomes, where each chromosome consists of an array of tasks for each ATV that represents the processing order of the tasks assigned to that ATV. For example, Fig. 3 shows a chromosome representation for 12 tasks, which are scheduled to two ATVs. ATV1 executes five tasks in the order of 7–3–2–1–5 and ATV2 executes seven tasks in the order of 10– 4–6–9–8–12–11. Note that the representation is complete as all possible feasible solutions of the mathematical model presented in Section 3.2 can be represented accordingly. As previously stated, the total earliness and tardiness penalty is the objective function and no ATV is kept idle when it is capable of executing a task. If an ATV instantly starts to execute its first task at the current time ct, i.e. material loading and traveling to the first delivery point (machine or vessel), then the first task will potentially be completed long before the start time of the time window (at time SE ), resulting in high earliness penalties. Therefore, a procedure is needed to schedule the tasks closer to their time windows. The idle time insertion process is widely used in the earliness– tardiness literature [55]. However, as seen from the literature in Section 2, very little research has been conducted to address ATVbased scheduling problems. After executing a task, an ATV needs to travel to execute its next tasks (no wait); therefore, adjusting the departure time of an ATV from a warehouse can improve its schedule. The procedure is applied to all ATVs which depart from a warehouse to execute material delivery tasks. Since tasks have been scheduled to be completed as soon as possible, the objective function can only be improved by initiating the forward movement of material loading time, i.e., by the insertion of idle time before the start material loading time of an ATV. The idle time, ∆, should be inserted in such a way that the ATV starts its first material delivery task right at the start time of the time window, ts,1 . However, if the departure time of an ATV is delayed because of the waiting in the queue to load the material, or the start time of the first is already less than the time needed to reach the delivery point, then idle time will be 0. In that case, the ATV will reach its first delivery point after the start time of that task’s time window. An outline of the idle time insertion procedure is presented in Algorithm 1.


H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

on hand are inserted into the second position in the same way. For example, there are four material delivery tasks which need to be executed and three ATVs are available in the warehouse. After sorting, the order of the tasks is 2–1–3–4. Next, tasks are inserted into the first position of each ATV. So ATV1 has Task 1, ATV2 has Task 2, ATV3 has Task 3. Now Task 4 is the task at hand, but the first position of each ATV is occupied. Therefore, Task 4 is placed in the second position of ATV1. It is important to note that ATV material carrying capacity constraints Eq. (12) are checked before inserting a task into an ATV. The pseudo code of the EDD heuristic is shown in Algorithm 2.

The following example will help illustrate the idle time insertion process. From Fig. 4, it can be seen that, at the beginning of the system, two ATVs are available: ATV1 is available in Warehouse 1 and ATV2 in Warehouse 2, and five tasks need to be executed at that point in time. As shown in the figure, based on the time window of each task, Tasks 1, 2, and 3 are assigned to ATV1 in the sequence 2–1–3 and Tasks 4 and 5 are assigned to ATV2 in the sequence 5–4. ATV1 takes 5 min to load material in Warehouse 1. Now if the tasks are executed as soon as possible by the ATVs, i.e. start to load materials at t = 0, then material uploading operations will potentially completed way before their time windows, resulting in high earliness penalties. For this reason, if ATV1 starts to load materials for Task 2 in Warehouse 1 at time t = 0, and then starts to travel to delivery/unloading point at time t = 5, then ATV1 will reach the delivery point for Task 2 at t = 22, with an earliness penalty of 3 min (22–25), which will be added to Task 2. To avoid this, an idle time of t = 3 min is inserted, i.e. ATV1 starts material loading at time t = 3. After loading the material, ATV1 starts to travel at time t = 8 min and reaches the delivery point for Task 2 at time t = 25 min. It takes 30 min to unload the material at the delivery point, i.e. the material delivery activity finishes at time t = 55 min. There is no earliness or tardiness penalty for Task 2 as ATV1 executes Task 2 within its time window. After finishing Task 2, ATV1 travels to Task 1 and starts to execute Task 1 at time t = 64 min. ATV1 executes Task 1 and Task 3 within their time windows. After executing Task 3 at time t = 135 min, ATV1 returns to the nearest warehouse (Warehouse 2) from the delivery point for Task 3 at time t = 164 min, and blocks the warehouse for recharging for 5 min and is ready to execute new tasks (if available). Like ATV1, 4 min of idle time are inserted before ATV2 starts to load materials and subsequently executes Task 5 and Task 4 within their time windows before traveling back to Warehouse 2. For this example, the total earliness and tardiness penalty is 0, as all tasks are executed on time. 4.1.2. Population initialization Normally, a GA starts with a set of random solutions. However, non-random initialization of GAs enhances the performance of the GA [54]. In this case, some individuals of the initial population are generated by some effective heuristics or rules [16,54]. For solving the problem under study, two heuristics have been proposed: (1) the earliest due date heuristic, (2) the resource allocation heuristic. The structures of the heuristics are described as follows. Earliest due date heuristic (EDD) The earliest due date (EDD) heuristic is a simple priority rulebased heuristic where tasks are first sorted by increasing order, by the start time of their time windows. The sorted tasks are inserted one by one at the first position of the ATVs. Once all the first positions of all ATVs are occupied, the remaining tasks

Resource allocation heuristic (RA) The resource allocation heuristic is based on allocating and sequencing tasks according to their location, i.e. the distance from the nearest warehouse to the delivery point, and the tightness of the time window. An outline of the RA heuristic algorithm is presented in Algorithm 3. The RA heuristic algorithm assigns the tasks on the basis of the position of the ATVs and the start time of the time window. In other words, a task needs to be assigned to the ATV which is initially located nearest the warehouse so the travel time from the warehouse to the machine (or vessel) is minimal. Moreover, tasks which have time windows with an early start time need to be executed earlier than other tasks. In Fig. 5, six material delivery tasks need to be assigned to three ATVs. ATV1 and ATV3 are in Warehouse 1 and ATV2 is located in Warehouse 2. Based on the summation of scores for the start time of the time window of each task, and the distance between the warehouses to the delivery points, Warehouse 1’s sequence of tasks is 2–1–3–4–5– 6 and Warehouse 2 has a sequence of 1–5–2–3–6–4. Next, tasks are inserted into available ATVs based on their score. The first task (Task 2) from the task sequence for Warehouse 1 is inserted into ATV1 (as it is located in Warehouse 1). In Warehouse 2, the first task (Task 1) is assigned to ATV2. For the next task from Warehouse 1, Task 3 is assigned to ATV1, while Task 5 is assigned to ATV2 in Warehouse 2. It should be noted that, after assigning Tasks 2, 3, and 4 in ATV1, if the final task, Task 6, is assigned to ATV1, the material capacity constraints of ATV1 will be violated. Therefore, Task 6 is assigned to the next available ATV, ATV3, which is located in Warehouse 1. The iteration process stops after all tasks have been assigned to available ATVs. 4.1.3. Selection operator and generational scheme In GAs, the selection scheme follows the process of natural evolution, i.e. the chromosomes with good fitness values are likely to survive, average ones have an even chance of surviving and the worst chromosomes often die quickly. The classic tournament selection technique is applied in the proposed algorithm. In this technique, the fitness of each member in the selection pool is evaluated and the individuals with the lowest fitness values win the pool and are selected as the parents [51]. Another aspect of GAs is the scheme of replacing the current member in the population with the newly generated offspring after the selection, crossover, mutation, and local search process. In the proposed GA, a generational scheme is applied, where the offspring replacing the worst member of the current population also do not duplicate, i.e. there is no identical chromosome already in the current population set. Note that there can be many different solutions with the same fitness value (i.e. total earliness and tardiness penalty). This scheme is selected as it has superior performance compared to traditional elitist generational strategy where a parent is directly replaced by its offspring [56]. For each generation, an elitism strategy is implemented where the best sequence from each generation is saved and is directly transferred to the next generation.

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Fig. 4. Gantt chart for an example schedule for the idle time insertion procedure.



H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Fig. 5. Example of the resource allocation heuristic (RA).

4.1.4. Crossover and mutation Crossover is an important reproduction operator for GAs [51]. For solving an ATV scheduling problem, a single point crossover has been proposed. Once the parents are selected through the selection operator, the genetic crossover operator is applied with a probability pc by combining two parents. The goal of this operation is to create two individuals which are better than the parents, called offspring, i.e., creating better schedules by exchanging information between their parents. Many different crossover operators have been proposed in the literature in order to solve scheduling problems. In this work, a single point crossover operator is adopted in the ATV scheduling case. In this crossover, from Parent 1 all the tasks are assigned to Offspring 1, for each ATV until a randomly selected crossover point, p. Tasks from Point p+1 to the end are assigned to the Offspring 2. If an ATV is assigned only one task, then the crossover point is set to the second position (after that task) for that ATV. Fig. 6 demonstrates the proposed crossover operator with two ATVs and 12 material delivery tasks. From the figure, it can be seen that tasks from ATV1 until crossover point p1 are copied from position 1 to 3 (i.e. Tasks 1, 3, and 4) to Offspring 1. From ATV2 from Parent 1, Tasks 2, 7, 6, and 8 are copied to ATV2 from Offspring 2. The empty positions of ATVs 1 and 2 are filled with missing tasks from Parent 2 in the same sequence as in the same ATV as in Parent 2. Therefore, Task 5 is assigned to ATV1 after Task 4 and Tasks 10, 9, 12, and 11 are assigned to ATV2 of Offspring 2 after Task 8. The same procedure is followed to create Offspring 2. It is straightforward to add a mutation operator in the GAs to avoid stagnation into local optima. In other words, it is a simple form of local search that brings variability to the population [56]. Once an offspring is generated by the crossover operation, a mutation operator is applied according to a mutation probability, pm . Preliminary experiments show that, as for most of the scheduling problems, the best performance was obtained by the shift mutation operator. In the proposed GA, shift mutation is designed in the following way: an ATV is randomly selected and a task is also randomly selected and then either reinserted into a different position randomly chosen in the same ATV (Fig. 7(a)), or inserted into a different ATV (Fig. 7(b)). Note that to avoid infeasible schedules, material capacity constraints need to be checked if the task is assigned to a different ATV. 4.1.5. Local search process The performance of a GA may be enhanced by adding local search procedures to it. For the ATV-based material delivery scheduling problem, with the objective of minimizing the sum earliness and tardiness penalty, it is possible to apply a rapid local search procedure. To enhance the quality of the candidate solution, a two-step local search is proposed. The first step of the local search is based on randomly selected tasks in the current solution. The exchange of the chosen tasks is made if the selected Tasks j1 and j2 belong to the same ATV. If the exchange yields a better solution, the new solution S*Loc is accepted as the current solution Sc . After swapping operations, the current solution goes to the second stage where the sequence of tasks for an ATV is sorted based on the start time of the time windows of each task

and the new solution S**Loc replaces the current solution Sc and an iteration counter is set at 0. The iteration continues until all ATVs are checked and the fitness of the solutions is evaluated (i.e. the iteration counter is equal to m). It is important to note that the local search process changes the positions of the tasks of an ATV within that ATV. Therefore, there is no requirement to check the material carrying capacity (Eq. (12)) to ensure feasibility of the schedule. This feature makes the local search process fast and efficient. An outline of the local search is shown in Algorithm 4. 4.1.6. Restart scheme In GAs, after a few generations the population can lose its diversity and tends to stall in a local optimum. To avoid this problem, a restart scheme is applied based on a similar strategy used by the authors [56]. The restart scheme is presented as follows: With this scheme, if the lowest fitness value for more than RT number of generations is not changed, then this procedure can reintroduce diversity to the algorithm. In the following section, the proposed IG algorithm is described. 4.2. Iterated greedy (IG) algorithm In this section, an iterated greedy (IG) algorithm is proposed to tackle the ATV-based material delivery-scheduling problem. The IG algorithm was first applied to solve permutation flow shop scheduling problems [18]. Since then, IG algorithms have been applied to solve different types of complex scheduling problems [57–59]. The advantage of an IG algorithm is that it is less sensitive than other algorithms as it does not require specific knowledge about the problems and that it has fewer control parameters than sophisticated heuristic and metaheuristic algorithms [59]. The IG starts with an initial solution and then tries to improve the current solution through four main stages: destruction, construction, improvement, and acceptance criteria. In the first stage, some elements are dropped from the current solution, obtaining a partial solution. Next, the partial solution is reconstructed by reinserting the dropped elements with a greedy constructive heuristic. Finally, an acceptance criterion is used to decide if the newly generated solution should replace the current solution. These steps are repeated until a predefined stopping condition is satisfied. The following sections provide a complete description of the general scheme of the proposed IG algorithm that has been developed for the problem under study. A general scheme of the proposed algorithm is presented in Algorithm 5. 4.2.1. Initialization, destruction and construction phase An IG algorithm needs an initial solution to trigger the search process in the solution space. This solution is generated from a constructive heuristic. The proposed IG initiates with an EDD heuristic, as described in Section 4.1.2. After initialization, the candidate solution goes through the destruction and construction phases. During the destruction process, first select a random ATV and then select a random task assigned to that ATV and create a set of unrepeatable d tasks from the current schedule of N tasks.

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552


Fig. 6. Single point crossover operator.

Fig. 7. Shift mutation.

The result of this process has two consequences; first, the partial solution of N-d tasks is achieved, which is denoted by pS, and secondly, a set of d tasks is generated, denoted pD. pD contains the tasks that have to be reinserted back into the partial solution, pS, to complete the solution in the sequence in which they were extracted from the candidate solution. In the construction phase, a greedy insertion heuristic is applied to the partial solution, pS, until a complete sequence of all N tasks is obtained. The first task from the set pD is inserted into every position of every feasible ATV and keep the task in the position in that results in the lowest fitness value. Here, a feasible ATV means a task can be inserted into that ATV only if it does not violate the capacity constraints (Eq. (12)) of that ATV. The process continues until pD is empty.

criterion is applied to determine whether the new solution should be accepted as a current solution for the next iteration. The simplest acceptance criterion is to accept a new solution only if it has better fitness value. However, this approach leads to the stagnation of the searching process due to insufficient diversification of the algorithm [18]. Some authors employed a simulated annealing-based acceptance criterion to replace the new solution with a current solution event though its fitness value was worse [18]. In this method, a worse new solution is accepted with a certain probability, prbapt . A random number R is generated by uniform distribution in the range U(0, 1) and the new solution is accepted only if prbapt ≤ R. prbapt is an input parameter of the IG algorithm. 5. Results and experimental analysis

4.2.2. Local search and acceptance criteria To enhance the quality of the new solution generated after the destruction and construction phases, the two-step local search technique described in Section 4.1.5 is applied. Following the destruction, construction and local search phases, an acceptance

In this section, a comprehensive experimental evaluation and comparison of the proposed GA and IG algorithms are carried out in order to study their performance. All the algorithms have been coded in C++ and run on a personal computer using an Intel


H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

core i7-6820HQ processor and 16 GB RAM running a Windows 10 operating system. For the comparisons we have generated realistic problem instances to evaluate the performance of the proposed algorithms. In the following section, the random instance generation is described, followed by a discussion of the parameter settings for each of the algorithms. Finally, results of the proposed algorithms are presented and their performances are evaluated by statistical analysis.

defined as qi ∈U[ai , ai + (bi ×30)]. Here, bi is the factor to adjust the length of time window. From each combination six replicates are generated for each category. Therefore, by combining all levels of parameters, 48 instances in total are generated. The problem instances are realistic and suitable for comparison with real life implementation. They will be made available in a repository.

5.1. Random test instances

The performance of the proposed algorithms relies on the parameters selected. The parameters calibrated in the paper are chosen based on the experiments to achieve good solutions within reasonable CPU times. Extensive experiments were done to test the influence of each parameter on the solution quality. For that testing, three randomly generated problem instances with the size of 50tasks*10ATVs, 100tasks*10ATVs, and 150tasks*10ATVs were used, where 50, 100 and 150 are the number of tasks and 10 indicates the number of ATVs available to perform the tasks. The details of the analysis conducted on selected parameters for each of the algorithms are provided in this section. After a series of preliminary experiments, the following level of parameters are considered for GA: crossover probability pc is tested at two levels, {0.4, 0.6}; mutation probability, pm, is tested at three levels, {0.1, 0.2, 0.3}; population size, pop is tested at {50, 100}. Table 3 shows the combination of these parameters. For testing the parameters, three different sizes of problems are selected. Fig. 8 shows that Group 10 has the best combination

In order to test the performance of the proposed algorithms, we propose a pragmatic approach to generate a set of random instances. The instances are characterized by the number of tasks (n), number of ATVs in the system, m, maximum weight of each material delivery, PLj, time difference between arrival and execution of a task, and length of a time window (difference between Sj and Fj ). The number of available ATVs in the system, m has two levels: {10, 20}. The number of tasks is classified into two sets: n ∈{20, 50, 100, 150}. The other attributes of a task are generated as follows. First, the traveling time between a warehouse and each delivery point (machine, vessel) is uniformly distributed in the range, ai ∈ U[1,500]. Each task is randomly assigned to a delivery point (machine or vessel) and the maximum number of delivery points in the system is randomly generated by using the uniform distribution using this range, di ∈ U[1, 20]. Time difference between the arrival time and start time of the time window, Sj is

5.2. Parameter settings

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Table 3 Selection of parameter for GA.


Table 4 Selection of parameters for IG algorithm.








1 2 3 4 5 6 7 8 9 10 11 12

50 50 50 100 100 100 50 50 50 100 100 100

0.4 0.4 0.4 0.4 0.4 0.4 0.6 0.6 0.6 0.6 0.6 0.6

0.1 0.2 0.3 0.1 0.2 0.3 0.1 0.2 0.3 0.1 0.2 0.3

1 2 3 4 5 6 7 8 9

4 4 4 6 6 6 8 8 8

0.1 0.2 0.3 0.1 0.2 0.3 0.1 0.2 0.3

of parameters for GA, since it shows the minimum value of the objective function (total earliness and tardiness penalties) for all test problem instances. For IGA, destruction size (d) is tested at three levels: 4, 6, and 8 and probability of acceptance, prbapt :{0.10, 0.20, 0.30}. Table 4 shows the combination of parameters for the IG algorithm. Fig. 9 shows that Group 5 shows the best performance for the IG algorithm. 5.3. Computational results and statistical analysis The computational results and statistical analysis are presented in this section. Due to inherent randomness, it is necessary to run the metaheuristic algorithms for the same test problem instance multiple times. Therefore, the metaheuristic

algorithm runs five times for a test problem instance, and the best relative performance deviation (BRPD) and the average relative performance deviation (ARPD) are employed as measures of the performance of an algorithm. BRPD and ARPD are computed for each instance to the following equations: BRPD =


bfi − fbest fbest

× 100

5 1 ∑ fir − fbest ( × 100) 5 fbest



r =1

where bfi denotes the best total earliness and tardiness penalty value generated by an algorithm i over five runs for a problem instance; fbest indicates the minimum total earliness and tardiness penalty value obtained among all proposed algorithms for the same instance, and fir denotes the total earliness and tardiness


H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Fig. 8. Selection of parameters for GA based on the performance.

Fig. 9. Selection of parameters for IG algorithm based on performance.

penalty value obtained by an algorithm i in its rth run. Note that Emde and Gendreau [4] showed that exact solution tools (like CPLEX) are too slow or unable to find optimal solutions for the problems of this class. Therefore, the proposed algorithms are not compared with solutions generated by CPLEX. Table 5 summarizes the comparative results obtained by evaluating 48 problem instances. The results tabulated in the table show BRPD and ARPD for the proposed algorithms, which are executed under the same stopping conditions (CPU time) and computational environments. The first column in the table shows the number of tasks and the second column the number of ATVs in the system. Column 3 represents the instance number of each problem. Columns 4 and 5 show the BRPD and ARPD obtained by GA. Columns 6 and 7 show the results obtained by the proposed IG algorithm. The final column shows the maximum allowable CPU time for each of the algorithms, and it is set by the formula = n/10 s. For 20-tasks×10-ATVs problems and 20-tasks×20-ATVs problems (i.e. instance 1 to 12), IG algorithm generates solutions where the objective function value equals to 0, and therefore all the material delivery tasks are executed within the time windows. For the same problem instances GA also shows better performances except the problem instance 3 (ARPD value is 50). Therefore, both algorithms determine the better solutions for 20tasks×10-ATVs problems and 20-tasks×20-ATVs problems. For differently sized problems, the IG algorithm performs better than GA for problems based on BRPD and ARPD values. For example, for 50-tasks×10-ATVs problems and 50-tasks×20-ATVs problems (i.e. instance 13 to 24), IG algorithm generates solutions where the objective function value equals to 0 (for both BRPD and ARPD). For the same problem instances GA also shows better

performances in terms of BRPD values, but significantly deviates from 0 for ARPD values. The same conclusion can also be drawn for 100 tasks and 150 tasks problems. In a nutshell, GA performs better for small problem instances (20 tasks) but IG algorithm shows consistent performances for almost all problems. Fig. 10 shows a box plot of the objective values given by the proposed algorithms over 48 problem instances. Each box shows the upper quartile, median, and the lower quartile values. Extension of the remaining data is shown by the extension of the whisker lines. The box plot shows the distribution of the data. From these data, it can be seen that the IG performs more consistently than the GA algorithm. It is also noticeable that the total earliness and tardiness value is low when there are more ATVs available in the systems. To further analyze the performance of the proposed algorithms, statistical tests are conducted on the experimental results achieved by both algorithms. For statistical validation of the results, McNemar’s test [60] is performed. McNemar’s test is a non-parametric test following χ 2 -distribution which compares the proposed GA and IG algorithms on a one-to-one basis. McNemar’s test can be expressed by Eq. (18) where NGA,IG is the number of times the GA performs better than the IG algorithm among the 48 problem instances, and NIG,GA denotes the number of times the IG algorithm produces the same or better results than the GA.

χ2 =

(|NGA,IG − NIG,GA | − 1)2 NGA,IG + NIG,GA


The null hypothesis H0 is assumed, as statistically the performance of GA and IG algorithms have no significant difference.

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552


Table 5 Experimental Results. Problem

Algorithms Genetic algorithm

Number of task, n

Number of ATV, m

Iterated greedy algorithm

Maximum allowable CPU time (s)

Instance number






1 2 3 4 5 6

0 0 0 0 0 0

0 0 50 0 0 0

0 0 0 0 0 0

0 0 0 0 0 0



7 8 9 10 11 12

0 0 0 0 0 0

0 0 0 0 0 0

0 0 0 0 0 0

0 0 0 0 0 0



13 14 15 16 17 18

0 0 5.45 0 0 0

5.263 75 15.789 70 16.66 0

0 0 0 0 0 0

0 0 0 0 0 0



19 20 21 22 23 24

0 0 0 0 0 0

50 60 58.32 157.14 7.142 25

0 0 0 0 0 0

0 0 0 0 0 0



25 26 27 28 29 30

0 0 0 0 0 0

0 42.105 3.7037 35 68.75 81.25

0 0 0 0 0 0

12 0 0 0 0 0



31 32 33 34 35 36

8.012 0 0 0 0 0

13.333 0 122.22 0 20 38.461

0 0 0 0 0 0

0 0 0 14.285 0 0



37 38 39 40 41 42

0 0 0 0 0 0

40 29.629 31.034 0 37.037 9.677

0 0 0 0 0 0

0 0 0 0 0 0



43 44 45 46 47 48

0 3.21 0 0 0 0

16.667 8.695 20 0 3.703 26.08

0 0 0 0 0 0

0 0 0 12.5 0 0






Table 6 McNemar’s test results. NGA,IG






Critical value,

χ12,0,005 3.841

χ 2 value




Table 6 shows the results from McNemar’s test. For 95% confidence interval and one degree of freedom, χ 2 value is greater than critical value χ12,0,005 and p-value is well below 0.05, and therefore the null hypothesis is rejected. Therefore, the proposed IG performs statistically better than the GA. 6. Conclusions and future studies This paper considered an ATV materials delivery scheduling problem with the objective of minimizing the total earliness and

tardiness penalty. This is a complex industrial scheduling problem which needs near real-time solutions to ensure efficient ATVbased material transportations in manufacturing environments. From the literature review, it has been shown that this problem has scarcely been addressed. This paper provides a method to tackle this problem by minimizing the earliness or tardiness penalty in each material delivery. This research has two main contributions. First, based on the objective function and assumptions, a mathematical model is developed to describe the problem. Secondly, a GA and an IG algorithm are proposed to solve this problem. Two heuristic-based algorithms have been proposed to initiate both meta-heuristic algorithms. Specific to the earliness and tardiness objective, an idle time insertion procedure is devised that delays the completion of a task by the exact amount necessary. In the proposed GA, a new crossover operator and two-step local search have also been proposed. In the first step of the local search, a swapping


H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552

Fig. 10. Performance evaluations of the proposed algorithms.

mechanism is utilized, and, in the second step, all tasks are sorted based on the start time of time windows to find the most promising solutions. To assess the performance of the proposed GA, an IG algorithm has also been proposed. This method is simple and has few parameters. Numerical results from realistic problem instances demonstrate that the proposed algorithms were effective and provide promising solutions. The key advantages of these methods over the existing methodologies include better ATV capacity utilization, smooth material flow on the production floor and an effective approach that is suitable for practical decision-making on a near real-time basis. This research opens several future research avenues. For instance, other realistic settings could be explored, such as sequence dependent setups, buffer size constraints, process interruptions, and shortages in material supplies. In the future, the proposed algorithms can be extended to solve these problems. Acknowledgment The research has been partly funded by Airbus Defense & Space. Declaration of competing interest No author associated with this paper has disclosed any potential or pertinent conflicts which may be perceived to have impending conflict with this work. For full disclosure statements refer to References [1] I. Nielsen, N.A.D. Do, Z.A. Banaszak, M.N. Janardhanan, Material supply scheduling in a ubiquitous manufacturing system, Robot. Comput.-Integr. Manuf. 45 (2017) 21–33.

[2] G. Bocewicz, I.E. Nielsen, Z.A. Banaszak, Production flows scheduling subject to fuzzy processing time constraints, Int. J. Comput. Integr. Manuf. 29 (10) (2016) 1105–1127. [3] O. Kulak, A decision support system for fuzzy multi-attribute selection of material handling equipments, Expert Syst. Appl. 29 (2) (2005) 310–319, [4] S. Emde, M. Gendreau, Scheduling in-house transport vehicles to feed parts to automotive assembly lines, European J. Oper. Res. 260 (1) (2017) 255–267. [5] H.Y. Lau, Y. Zhao, Integrated scheduling of handling equipment at automated container terminals, Int. J. Prod. Econ. 112 (2) (2008) 665–682. [6] I. Nielsen, Q.-V. Dang, G. Bocewicz, Z. Banaszak, A methodology for implementation of mobile robot in adaptive manufacturing environments, J. Intell. Manuf. 28 (5) (2017) 1171–1188. [7] N. Singh, P. Sarngadharan, P.K. Pal, AGV scheduling for automated material distribution: a case study, J. Intell. Manuf. 22 (2) (2011) 219–228. [8] J. Luo, Y. Wu, A.B. Mendes, Modelling of integrated vehicle scheduling and container storage problems in unloading process at an automated container terminal, Comput. Ind. Eng. 94 (Suppl. C) (2016) 32–44, http: // [9] S. Emde, N. Boysen, Optimally routing and scheduling tow trains for JITsupply of mixed-model assembly lines, European J. Oper. Res. 217 (2) (2012b) 287–299. [10] C. Zeng, J. Tang, C. Yan, Job-shop cell-scheduling problem with intercell moves and automated guided vehicles, J. Intell. Manuf. 26 (5) (2015) 845–859. [11] J.M. Framinan, R. Leisten, R.R. García, Manufacturing Scheduling Systems, 2014. [12] C.Y. Lee, Z.L. Chen, Machine scheduling with transportation considerations, J. Sched. 4 (1) (2001) 3–24. [13] L.W. Clarke, C.A. Hane, E.L. Johnson, G.L. Nemhauser, Maintenance and crew considerations in fleet assignment, Transp. Sci. 30 (3) (1996) 249–260. [14] H.F. Rahman, R. Sarker, D. Essam, A real-time order acceptance and scheduling approach for permutation flow shop problems, European J. Oper. Res. 247 (2) (2015) 488–503, 06.018. [15] G. Ulusoy, F. Sivrikaya-Şerifoˇglu, Ü. Bilge, A genetic algorithm approach to the simultaneous scheduling of machines and automated guided vehicles, Comput. Oper. Res. 24 (4) (1997) 335–351. [16] E. Vallada, R. Ruiz, A genetic algorithm for the unrelated parallel machine scheduling problem with sequence dependent setup times, European J. Oper. Res. 211 (3) (2011) 612–622.

H.F. Rahman and I. Nielsen / Applied Soft Computing Journal 82 (2019) 105552 [17] H.F. Rahman, R. Sarker, D. Essam, Multiple-order permutation flow shop scheduling under process interruptions, Int. J. Adv. Manuf. Technol. (2018) 1–28. [18] R. Ruiz, T. Stützle, A simple and effective iterated greedy algorithm for the permutation flowshop scheduling problem, European J. Oper. Res. 177 (3) (2007) 2033–2049. [19] L. Qiu, W.-J. Hsu, S.-Y. Huang, H. Wang, Scheduling and routing algorithms for AGVs: A survey, Int. J. Prod. Res. 40 (3) (2002) 745–760, http://dx.doi. org/10.1080/00207540110091712. [20] G. Bocewicz, I. Nielsen, Z. Banaszak, Automated guided vehicles fleet match-up scheduling with production flow constraints, Eng. Appl. Artif. Intell. 30 (2014) 49–62. [21] M.-L. Espinouse, G. Pawlak, M. Sterna, Complexity of scheduling problem in single-machine flexible manufacturing system with cyclic transportation and unlimited buffers, J. Optim. Theory Appl. 173 (3) (2017) 1042–1054. [22] A. Caumond, P. Lacomme, A. Moukrim, N. Tchernev, An MILP for scheduling problems in an FMS with one vehicle, European J. Oper. Res. 199 (3) (2009) 706–722, [23] Ü. Bilge, G. Ulusoy, A time window approach to simultaneous scheduling of machines and material handling system in an FMS, Oper. Res. 43 (6) (1995) 1058–1070. [24] G. Ulusoy, Ü. Bilge, Simultaneous scheduling of machines and automated guided vehicles, Int. J. Prod. Res. 31 (12) (1993) 2857–2873. [25] T.F. Abdelmaguid, A.O. Nassef, B.A. Kamal, M.F. Hassan, A hybrid GA/heuristic approach to the simultaneous scheduling of machines and automated guided vehicles, Int. J. Prod. Res. 42 (2) (2004) 267–281. [26] B. Reddy, C. Rao, A hybrid multi-objective GA for simultaneous scheduling of machines and AGVs in FMS, Int. J. Adv. Manuf. Technol. 31 (5–6) (2006) 602–613. [27] A. Gnanavel Babu, J. Jerald, A. Noorul Haq, V. Muthu Luxmi, T. Vigneswaralu, Scheduling of machines and automated guided vehicles in FMS using differential evolution, Int. J. Prod. Res. 48 (16) (2010) 4683–4699. [28] R. Erol, C. Sahin, A. Baykasoglu, V. Kaplanoglu, A multi-agent based approach to dynamic scheduling of machines and automated guided vehicles in manufacturing systems, Appl. Soft Comput. 12 (6) (2012) 1720–1732. [29] B.-H. Zhou, C.-Y.J.J.o.C.P. Shen, Multi-objective optimization of material delivery for mixed model assembly lines with energy consideration. 192 (2018) 293–305. [30] A.I. Corréa, A. Langevin, L.-M. Rousseau, Scheduling and routing of automated guided vehicles: A hybrid approach, Comput. Oper. Res. 34 (6) (2007) 1688–1707. [31] L. Deroussi, M. Gourgand, N. Tchernev, A simple metaheuristic approach to the simultaneous scheduling of machines and automated guided vehicles, Int. J. Prod. Res. 46 (8) (2008) 2143–2164, 00207540600818286. [32] J. He, Y. Huang, W. Yan, S. Wang, Integrated internal truck, yard crane and quay crane scheduling in a container terminal considering energy consumption, Expert Syst. Appl. 42 (5) (2015) 2464–2487, http://dx.doi. org/10.1016/j.eswa.2014.11.016. [33] P. Angeloudis, M.G. Bell, An uncertainty-aware AGV assignment algorithm for automated container terminals, Transp. Res. E 46 (3) (2010) 354–366. [34] H. Rashidi, E.P.K. Tsang, A complete and an incomplete algorithm for automated guided vehicle scheduling in container terminals, Comput. Math. Appl. 61 (3) (2011) 630–641, 2010.12.009. [35] S. Emde, N. Boysen, Optimally locating in-house logistics areas to facilitate JIT-supply of mixed-model assembly lines, Int. J. Prod. Econ. 135 (1) (2012a) 393–402. [36] M. Fathi, M.J. Alvarez, F. Hassani Mehraban, V. Rodríguez, A multiobjective optimization algorithm to solve the part feeding problem in mixed-model assembly lines, Math. Probl. Eng. 2014 (2014). [37] Z. Lu, H. Zhu, X. Han, X. Hu, Integrated modelling and algorithm of material delivery and line-side storage for aircraft moving assembly lines, 2018, pp. 1–15.


[38] N. Ascheuer, L.F. Escudero, M. Grötschel, M. Stoer, A cutting plane approach to the sequential ordering problem (with applications to job scheduling in manufacturing), SIAM J. Optim. 3 (1) (1993) 25–42. [39] Q.-V. Dang, I.E. Nielsen, K. Steger-Jensen, Scheduling a single mobile robot for feeding tasks in a manufacturing cell, in: Paper Presented at the Proc. of Int. Conf. Adv. Prod. Manag. Syst., Norway, 2011. [40] J. Hurink, S. Knust, A tabu search algorithm for scheduling a single robot in a job-shop environment, Discrete Appl. Math. 119 (1) (2002) 181–203. [41] R. Suárez, J. Rosell, Feeding sequence selection in a manufacturing cell with four parallel machines, Robot. Comput.-Integr. Manuf. 21 (3) (2005) 185–195. [42] O. Maimon, D. Braha, V. Seth, A neural network approach for a robot task sequencing problem, Artif. Intell. Eng. 14 (2) (2000) 175–189. [43] Y. Khosiawan, I. Nielsen, A system of UAV application in indoor environment, Prod. Manuf. Res. 4 (1) (2016) 2–22, 21693277.2016.1195304. [44] Y. Khosiawan, Y. Park, I. Moon, J.M. Nilakantan, I.J.N.C. Nielsen, Applications, Task scheduling system for UAV operations in indoor environment, 2018, pp. 1–29. [45] A. Hamzadayi, G. Yildiz, Modeling and solving static m identical parallel machines scheduling problem with a common server and sequence dependent setup times, Comput. Ind. Eng. 106 (2017) 287–298. [46] J. Ou, X. Qi, C.-Y. Lee, Parallel machine scheduling with multiple unloading servers, J. Sched. 13 (3) (2010) 213–226. [47] C.P. Koulamas, Scheduling two parallel semiautomatic machines to minimize machine interference, Comput. Oper. Res. 23 (10) (1996) 945–956, [48] I. Sabuncuoglu, T. Lejmi, Scheduling for non regular performance measure under the due window approach, Omega 27 (5) (1999) 555–568. [49] M.R. Gary, D.S. Johnson, Computers and Intractability: A Guide To the Theory of NP-Completeness, WH Freeman and Company, New York, 1979. [50] J.H. Holland, Adaptation in Natural and Artificial Systems. An Introductory Analysis with Application To Biology, Control, and Artificial Intelligence, 1975. [51] D.E. Goldberg, .J.H. Holland, Genetic algorithms and machine learning, Mach. Learn 3 (2) (1988) 95–99. [52] S.K. Hasan, R. Sarker, D. Essam, Genetic algorithm for job-shop scheduling with machine unavailability and breakdowns, Int. J. Prod. Res. 49 (16) (2011) 4999–5015. [53] L. Gao, G. Zhang, L. Zhang, X. Li, An efficient memetic algorithm for solving the job shop scheduling problem, Comput. Ind. Eng. 60 (4) (2011) 699–705. [54] H.F. Rahman, R. Sarker, D. Essam, A genetic algorithm for permutation flow shop scheduling under make to stock production system, Comput. Ind. Eng. 90 (Suppl. C) (2015) 12–24, [55] Y. Hendel, F. Sourd, An improved earliness–tardiness timing algorithm, Comput. Oper. Res. 34 (10) (2007) 2931–2938, cor.2005.11.004. [56] R. Ruiz, C. Maroto, J. Alcaraz, Two new robust genetic algorithms for the flowshop scheduling problem, Omega 34 (5) (2006) 461–476. [57] J.E.C. Arroyo, J.Y.-T. Leung, An effective iterated greedy algorithm for scheduling unrelated parallel batch machines with non-identical capacities and unequal ready times, Comput. Ind. Eng. 105 (2017) 84–100. [58] J.-S. Kim, J.-H. Park, D.-H. Lee, Iterated greedy algorithms to minimize the total family flow time for job-shop scheduling with job families and sequence-dependent set-ups, Eng. Optim. 49 (10) (2017) 1719–1732, [59] Q.-K. Pan, R. Ruiz, An effective iterated greedy algorithm for the mixed no-idle permutation flowshop scheduling problem, Omega 44 (2014) 41–50. [60] Q. McNemar, Note on the sampling error of the difference between correlated proportions or percentages, Psychometrika 12 (2) (1947) 153–157.