Scheduling and Routing Algorithms for AGVs: a Survey

Similar documents
AGV Path Planning and Obstacle Avoidance Using Dijkstra s Algorithm

Robust Integration of Acceleration and Deceleration Processes into the Time Window Routing Method

Hybrid search method for integrated scheduling problem of container-handling systems

Dispatching Automated Guided Vehicles in a Container Terminal

Development of deterministic collision-avoidance algorithms for routing automated guided vehicles

Path Planning for Multi-AGV Systems based on Two-Stage Scheduling

UNIVERSITY OF CINCINNATI

Optimal Design Methodology for an AGV Transportation System by Using the Queuing Network Theory

Routing automated guided vehicles in container terminals through the Q-learning technique

Design and Operational Analysis of Tandem AGV Systems

DISPATCHING TRANSPORT VEHICLES IN MARITIME CONTAINER TERMINALS

Proceedings of the 2017 Winter Simulation Conference W. K. V. Chan, A. D'Ambrogio, G. Zacharewicz, N. Mustafee, G. Wainer, and E. Page, eds.

Simulation-Based Dynamic Partitioning of Yard Crane Workload for Container Terminal Operations

CROSS-DOCKING: SCHEDULING OF INCOMING AND OUTGOING SEMI TRAILERS

Rehandling Strategies for Container Retrieval

Strategies for Coordinated Drayage Movements

AN EFFICIENT BLOCK-BASED HEURISTIC METHOD FOR STOWAGE PLANNING OF LARGE CONTAINERSHIPS WITH CRANE SPLIT CONSIDERATION

Heuristic Techniques for Solving the Vehicle Routing Problem with Time Windows Manar Hosny

5.3 Supply Management within the MES

A Framework for Integrating Planning Activities in Container Terminals

SIMULATION STUDY OF A DYNAMIC AGV-CONTAINER JOB DEPLOYMENT SCHEME

Simultaneous Perspective-Based Mixed-Model Assembly Line Balancing Problem

AUTOMATED GUIDED VEHICLES (AGV) IN PRODUCTION ENTERPRISES

ON USER REQUIREMENTS AND OPERATOR PURPOSES IN DIAL A RIDE SERVICES

DEADLOCK PREDICTION AND AVOIDANCE IN AN AGV SYSTEM

MTTN L11 Order-picking MTTN25 Warehousing and Materials Handling. Warehousing and Materials Handling 1. Content. Learning objectives

Routing order pickers in a warehouse with a middle aisle

Hierarchical Traffic Control for Partially Decentralized Coordination of Multi AGV Systems in Industrial Environments

A macroscopic railway timetable rescheduling approach for handling large scale disruptions

Increasing Throughput Using Automation. Jon Ranstrom Principal Engineer Navis

Title: A Column Generation Algorithm for the Log Truck Scheduling Problem.

Mileage savings from optimization of coordinated trucking 1

A SIMULATION MODEL FOR INTEGRATING QUAY TRANSPORT AND STACKING POLICIES ON AUTOMATED CONTAINER TERMINALS

CHAPTER 1 INTRODUCTION

Network Flows. 7. Multicommodity Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini

ABSTRACT. Timetable, Urban bus network, Stochastic demand, Variable demand, Simulation ISSN:

Optimizing a Containership Stowage Plan. using a modified Differential Evolution algorithm

Blocking Effects on Performance of Warehouse Systems with Automonous Vehicles

Scheduling multiple yard cranes with crane interference and safety distance requirement

Clock-Driven Scheduling

Dynamic Vehicle Routing and Dispatching

DESIGN FOR A HYBRID SINGLE MULTI-LOAD AGV 1 SIMULATION SYSTEM WITH ARTIFICIAL INTELLIGENCE CONTROLLER

Integrating routing and scheduling for pipeless plants in different layouts

The Time Window Assignment Vehicle Routing Problem

This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore.

Reducing the response times of emergency vehicles in Queensland

LOAD SHUFFLING AND TRAVEL TIME ANALYSIS OF A MINILOAD AUTOMATED STORAGE AND RETRIEVAL SYSTEM WITH AN OPEN-RACK STRUCTURE

Design of an Automated Transportation System in a Seaport Container Terminal for the Reliability of Operating Robots

CHAPTER 1 INTRODUCTION

A PETRI NET MODEL FOR SIMULATION OF CONTAINER TERMINALS OPERATIONS

Optimal Design, Evaluation, and Analysis of AGV Transportation Systems Based on Various Transportation Demands

Planning tomorrow s railway - role of technology in infrastructure and timetable options evaluation

Discrete Event simulation

UNMANNED AERIAL VEHICLES (UAVS)

DEVELOPMENT OF OPERATION STRATEGY TO IMPROVE EFFICIENCY FOR TWIN AUTOMATED TRANSFER CRANE IN AN AUTOMATED CONTAINER TERMINAL

MODELING AND CONTROL OF THE AGV SYSTEM IN AN AUTOMATED CONTAINER TERMINAL

Design for Low-Power at the Electronic System Level Frank Schirrmeister ChipVision Design Systems

The Preemptive Stocker Dispatching Rule of Automatic Material Handling System in 300 mm Semiconductor Manufacturing Factories

Storage Allocation and Yard Trucks Scheduling in Container Terminals Using a Genetic Algorithm Approach

University Question Paper Two Marks

Real-Time and Embedded Systems (M) Lecture 4

Timetable management and operational simulation: methodology and perspectives

Abstract. 1 Introduction

Applying Tabu Search to Container Loading Problems

Vision of Congestion-Free Road Traffic and Cooperating Objects

Cardinal IP for Intelligent AGV Routing

Q1. What is Real time system? Explain the basic model of Real time system. (8)

Management Science Letters

Container Sharing in Seaport Hinterland Transportation

FLEXIBLE APPOINTMENT BASED SYSTEM WITH ADAPTIVE RESPONSE TO TRAFFIC AND PROCESSING DELAYS

Iterative train scheduling in networks with tree topologies: a case study for the Hunter Valley Coal Chain

Chapter 1. Introduction. 1.1 Research motivation

Design and operational issues in AGV-served manufacturing systems

Randomized Algorithm with Tabu Search for Multi-Objective Optimization of Large Containership Stowage Plans

Design of medical track logistics transmission and simulation system based on internet of things 1

OUTLINE. Executive Summary. Our Concept in Detail. Implementation. CASE Automatic loading and unloading of baggage and freight

POMS 18th Annual Conference, Dallas, Texas, U.S.A., May 4 to May 7, 2007

Vehicle Routing with Cross Docks, Split Deliveries, and Multiple Use of Vehicles. Arun Kumar Ranganathan Jagannathan

Research on Optimization of Delivery Route of Online Orders

OPERATIONAL-LEVEL OPTIMIZATION OF INBOUND INTRALOGISTICS. Yeiram Martínez Industrial Engineering, University of Puerto Rico Mayagüez

Parallel computing method for intermodal shipping network design

UNIT III GROUP TECHNOLOGY AND FMS

OPTIMIZING THE REARRANGEMENT PROCESS IN A DEDICATED WAREHOUSE

Planning with Map Uncertainty

SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES

Container Terminal Modelling in Simul8 Environment

Capacitated vehicle routing problem for multi-product crossdocking with split deliveries and pickups

RAILROAD & CO. +Street. Version 9. Manual

SIMULATION AND FORECASTING IN INTERMODAL CONTAINER TERMINAL

weather monitoring, forest fire detection, traffic control, emergency search and rescue A.y. 2018/19

PETRI NET VERSUS QUEUING THEORY FOR EVALUATION OF FLEXIBLE MANUFACTURING SYSTEMS

DEADLOCK AVOIDANCE AND RE-ROUTING OF AUTOMATED GUIDED VEHICLES (AGVS) IN FLEXIBLE MANUFACTURING SYSTEMS (FMS)

Implementing a Predictable Real-Time. Multiprocessor Kernel { The Spring Kernel.

INTEGRATION OF AUTONOMOUS SYSTEM COMPONENTS USING THE JAUS ARCHITECTURE

Designed-in Logic to Ensure Safety of Integration and Field Engineering of Large Scale CBTC Systems

Fleet Sizing and Empty Freight Car Allocation

Evaluation of AGV routeing strategies using hierarchical simulation

AN ABSTRACT OF THE THESIS OF I-CHIEN WANG for the degree of Master of Science in Industrial Engineering presented on June 9, 1995.

JOB SHOP SCHEDULING TO MINIMIZE WORK-IN-PROCESS, EARLINESS AND TARDINESS COSTS ZHU ZHECHENG A THESIS SUBMITTED FOR THE DEGREE OF DOCTOR OF PHILOSOPHY

Simulation of Container Queues for Port Investment Decisions

Transcription:

Scheduling and Routing Algorithms for AGVs: a Survey QIU Ling HSU Wen-Jing Email: {P146077466, Hsu}@ntu.edu.sg Technical Report: CAIS-TR-99-26 12 October 1999 Centre for Advanced Information Systems School of Applied Science Nanyang Technological University

Scheduling and Routing Algorithms for AGVs: a Survey QIU Ling HSU Wen Jing Abstract: Automated Guided Vehicles (AGVs) are now becoming popular in automated materials handling systems, flexible manufacturing systems and even containers handling applications at seaports. In the past two decades, much research and many papers have been devoted to various aspects of the AGV technology and rapid progress has been witnessed. As one of the enabling technologies, scheduling and routing of AGVs have attracted considerable attention; many algorithms about scheduling and routing of AGVs have been proposed. However, most of the existing results are applicable to systems with small number of AGVs, offering low degree of concurrency. With drastically increased number of AGVs in recent applications (e.g. in the order of a hundred in a container terminal), efficient scheduling and routing algorithms are needed to resolve the increased contention of resources (e.g. path, loading and unloading buffers) among AGVs. Because they often employ regular route topologies, the new applications also demand innovative strategies to increase system performance. This survey paper first gives an account of the emergence of the problems of AGV scheduling and routing. It then differentiates them from several related problems, and surveys and classifies major existing algorithms for the problems. Noting the similarities with known problems in parallel and distributed systems, it suggests to apply analogous ideas in routing and scheduling AGVs. It concludes by pointing out fertile areas for future study. 1. Introduction Automated Guided Vehicles (AGVs) are now becoming popular in automated materials handling systems, flexible manufacturing systems and even containers handling applications [see, e.g. Broadbent et al. 1985, Daniels 1988, Kim & Tanchoco 1991, 1993, Akturk & Yilmaz 1996, Yu & Huang 1997]. Figure 1 shows some commercial AGV products and their applications in different contexts. In the past decades, much research and many papers have been devoted to the technology of AGV systems, and rapid progress has been witnessed. As one of the enabling technologies, scheduling and routing of Automated Guided Vehicles (AGVs) have attracted considerable attention in the past decade [Daniels 1988, Kim & Tanchoco 1

1991, 1993, Hsu & Huang 1994, Akturk & Yilmaz 1996, Soh et al. 1996, Yu & Huang 1997]. Many algorithms about scheduling and routing of AGVs have been proposed. However, most of the existing results are applicable to systems with small number of AGVs, offering low degree of concurrency. With drastically increased number of AGVs in recent applications (e.g. in the order of one hundred in a container terminal), efficient scheduling and routing algorithms are needed to resolve the increased contention of resources (e.g. path, loading and unloading buffers) among AGVs. Because they often employ regular route topologies, the new applications also demand innovative strategies (a) bi-directional AGV carrying a container (courtesy: Mentor) (b) an AGV moving a roll of paper (courtesy: Mentor) (c) Left: an AGV; Right: an AGV loading/unloading an automated cart (courtesy: TransLogic) Figure 1. Examples of AGVs to increase system performance. In this paper, we first present descriptions of scheduling and routing of AGVs, argue that they are actually two different problems, i.e. AGV scheduling and AGV routing, although they are usually tightly associated with each other. Next, we discuss some commonly encountered phenomena when scheduling and routing AGVs. Several related problems are also compared with the problems, and therefore tailored approaches are needed to treat scheduling and routing of AGVs. We then survey the existing major works on AGV scheduling and routing and give clear 2

classifications. Finally, we suggest that ideas of parallel processing could be adapted to schedule and route AGVs concurrently, and point out fertile areas for future study. 1.1 AGVs & AGV Systems Various papers have given different definitions for AGVs from different points of view. In brief words, an AGV is a computer-controlled, unmanned vehicle that can transport materials from point to point in a manufacturing setting [Lin 1986, Hollier 1987, Daniels 1988, Lim 1988, Goetsch 1990]. Here we adhere to the classical definition of AGVs by [MHI, 1983] as follows, which captures the key features of AGVs: An Automated Guided Vehicle (AGV) is a vehicle equipped with automatic guidance equipment, either electromagnetic or optical. Such a vehicle is capable of following prescribed guide paths and may be equipped for vehicle programming and stop selection, blocking, and any other special functions required by the system. Figure 2. An example of an AGV system: AGVs interacting with elevators for the delivery of items throughout a building However, only when AGVs are integrated into a material handling system, referred to as the Automated Guided Vehicle System (AGVS) (Figure 2 shows an example), can 3

their full potentials be exploited. There also exist several alternative definitions for AGV systems. Generally, an AGV system is regarded as a material handling system in which AGVs play an important role as the main automated transportation tools [Storm 1985, Lin 1986, Hollier 1987, Daniels 1988, Lim 1988]. The following is a typical definition which captures the key elements of an AGV system [Koff 1986]: An Automated Guided Vehicle System is an automated material handling system which is controlled by a computer system and contains independently addressable driverless vehicles, i.e. the AGVs, on a predefined transportation path network. 1.2 Arising of the Problems Like a computer system, an AGV system is generally composed of two main interacting sub-systems hardware and software. The hardware consists of the physical components, such as vehicles, path, sensors and guidance devices, controllers, etc. The software embodies approaches or algorithms for systematically managing the hardware resource of the whole AGVS so that it can work harmoniously in the highest efficiency. However, as witnessed, in the past four decades, the progress of hardware of an AGV system has been much more rapid than that of software. The lag of (controlling) software becomes an acute problem only in recent years when certain time-critical applications, e.g. container handling in seaports, involve a relatively large fleet (e.g. in the order of tens or more) of AGVs, and require a great number of tasks to be completed in real time [Soh et al. 1996, Yu & Huang 1997]. Many problems such as congestion or deadlocks in AGV operations resulting from the mismatch of software of AGV systems arise. Lying at the center of efficiency-related problems are the Scheduling and Routing of AGVs, which seemed trivial in the earlier days when the number of vehicles in an AGV system was small; they now become important and nontrivial. It was said that one of the largest port operators at Singapore has postponed its plan to deploy AGV systems in its new container port, because no satisfactory solutions to the problems of scheduling and routing of AGVs have been found so far. Therefore, there are urgent requirements both in theory and in realistic applications to discover solutions to the problems. 1.3 Organization of the Paper 4

The remaining sections are arranged as follows. Formal descriptions of scheduling and routing of AGVs are given in Section 2. In Section 3, we describe commonly encountered phenomena arising in scheduling and routing of AGVs. We then differentiate the problems of AGV scheduling and routing from the conventional vehicle routing problems, conventional path problems in graph theory and data routing, and argue why specialized approaches are needed for our problems. In Section 4, the existing routing algorithms are surveyed and classified. Section 5 surveys the existing scheduling algorithms. Finally, in Section 6, we give the concluding remarks and point out the directions for the future study of AGV scheduling and routing. 2. Descriptions of Issues Prior to classifying the algorithms about scheduling and routing of AGVs, it is necessary to give clear descriptions of the problems. Because of their different goals, scheduling and routing of AGVs are intrinsically two different problems, although usually they are tightly interconnected with each other. Many researchers treated them as one problem in the early years when AGV systems were relatively small in scale, because at that time they seemed trivial to some extent. However, with the increasing scale of the applications of AGV systems, the differences of these two problems become quite evident; the two problems also become nontrivial and need to be differentiated. In the following, we give verbal descriptions, as well as formulations, of the two problems. 2.1 Scheduling Briefly, the scheduling of AGVs is to dispatch a set of AGVs to complete a batch of pickup/drop-off jobs to achieve certain goals (e.g. shortest completion time, minimum AGV idle time, etc.) under given constraints. For instance, one typical scenario is to successfully achieve all the pickup/drop-off jobs under the constraints of priority or deadline. Another typical scenario is to optimize the scheduling so that the total travel time of all vehicles is minimized [Akturk & Yilmaz 1996], or the number of AGVs involved is minimized while the system throughput is as high as possible. Actually, the decision of scheduling might involve selecting a vehicle among several idling vehicles, or selecting one load among all loads 5

to be transported. The problem of selecting a vehicle from a pool of available vehicles is referred to as the vehicle selection or, vehicle dispatching problem. The corresponding problem of selecting a unit load among those requiring transportation is referred to as the task selection problem [Egbelu & Tanchoco 1984, Taghaboni & Tanchoco 1995]. 2.2 Routing The aim of routing AGVs is to find an optimal (e.g. shortest possible time path) and feasible route for every single AGV. The routing decision includes three aspects. Firstly, it should detect whether there exists a route which could lead the vehicle from its origin to the destination. Secondly, the route selected for an AGV must be feasible, i.e. the route must be congestion-, conflict- and deadlock-free [Taghaboni & Tanchoco 1995], etc. Thirdly, the route must be optimal or at least partially optimal, e.g. minimize idling runs of vehicles. 2.3 Formulations Here we give formal descriptions of scheduling and routing of AGVs. However, the descriptions are not unique, because different applications may emphasize different measurements or assessing criteria of an AGV system. The following are examples of problem formulations in which we emphasize the system throughput when scheduling AGVs and the total distance traveled by all AGVs when routing them. It should be easy to get similar formulations for other measurements or assessing criteria required for realistic applications of AGV systems. First, we introduce the following notations and symbols. Denote a job by an ordered pair ( ai,di ) where a i denotes the arrival time and d i the due time of the job respectively. Denote c i the completion time when job ( ai,di ) is completed, r i the response time when the system begins to process job ( a,di ) i. Now given a set of jobs M = {( ai,di ) i = 1, 2,, k} and n available AGVs. Our aim is to schedule the system, i.e. to assign the jobs or dispatch the vehicles, so that the system achieves the highest efficiency in term of system throughput. Assume that m is the number of AGVs scheduled to carry out all of the jobs. The problem of scheduling is hence given as follows: 6

subject to minimize m n ci d i Max( ci ) Min( ai ) 1 i k 1 i k z = k, for all i = 1, 2,, k After the scheduling plan is decided, the next step is to route AGVs so that they can get to their destinations and/or go on to carry out the other jobs. Denote s i as the distance traveled by the i th AGV scheduled, the routing problem is formulated as: minimize m z = Σ s i = 1 i subject to ci d i, for all i = 1, 2,, k 3. Why AGV Scheduling & Routing Require Tailored Approaches 3.1 Undesirable Circumstances in Scheduling & Routing of AGVs Although much research has been done on the problems of AGVs scheduling and routing during the past decades, there still lacks good general solutions due to the variety of applications [see, e.g. Daniels 1988, Kim & Tanchoco 1991, Soh et al. 1996, Yu & Huang 1997]. The approaches or algorithms proposed are usually only feasible for specific environments or are dealing with issues arising in particular applications. However, issues in scheduling and routing are interconnected with each other in many ways. The following listed are the commonly encountered phenomena when scheduling and routing AGVs: Collisions: When more than one AGV attempt to occupy the same segment of the path at the same time, clearly there will be a collision. Figure 3(a) shows two such scenarios. Congestion: Congestion arises at a location where there is insufficient resource such that for a period of time the number of arrivals is greater than that of serviced requests. Figure 3(b) depicts such a case. Congestion must be reduced or eliminated because it will lower the throughput of the system or even lead to deadlocks. 7

Livelocks: As shown in Figure 3(c), a livelock may arise at the junction where the horizontal stream of traffic is given higher priority to obtain the right-of-way such that the vertical one may keep waiting indefinitely. Deadlocks: A deadlock will arise when multiple AGVs mutually wait for the release (which will never occur) of the resource held by the others. Figure 3(d) shows two cases: local deadlock and non-local deadlock. Because of their disastrous damages or negative consequences caused, all these phenomena are under the basic considerations and must be eliminated during the operations of an AGV system. Head-to-head collision Head-to-tail collision There will be queues here (a) Collisions (b) Congestion This queue will never move. (c) Livelock a non-local deadlock (d) Deadlocks a local deadlock Figure 3. Phenomena Arising in Scheduling and Rouging of AGVs 3.2 Tailored Approaches Needed Intuitively, scheduling and routing of AGVs can be considered as one variation of the Vehicle Routing Problem (VRP) which has been approached typically by using techniques such as linear programming in operations research [Dantzig 1963, Taha 1995]. However, there are significant distinctions between them, which allow us to treat scheduling and routing of AGVs separately: The scale of the path networks considered in VRPs is usually metropolitan. Within a city or among cities, a vehicle can be considered as a moving point when compared with the length of the vehicle itself and the distance it travels. Whereas in an AGV 8

system, the distance between two depots is usually relatively short, in the order of tens of an AGV length, it is inappropriate to consider an AGV as a single point. With a VRP, the load capacity of a path is a consideration, collisions among vehicles are normally assumed to never occur. With an AGV system, limited by the path space, AGVs may congest or even collide with each other if the system is not well scheduled and routed. With a VRP, the shortest path normally coincides with the shortest-time path (but may not be the least-cost path). With an AGV system, due to the contention of the path, it is quite common that the shortest-time path need not be the shortest path. With a VRP, the path network is predefined and unchangeable. With an AGV system, sometimes the existing path layout can (or has to) be revised to yield a better scheduling or routing algorithm. It should also be pointed out that even with many advanced technological features, the latest model of AGVs is still grossly inferior to human drivers in terms of sensory and decision-making capabilities. For example, a human driver can foresee the general trend of other moving vehicles and avoid congestion, either by driving around an obstacle or by taking an alternative route. In contrast, what a typical AGV possesses is only rudimentary motion primitives and collision-prevention mechanisms. As a result, much of the responsibility which previously lies on the human drivers to ensure congestion-free routing now totally lies with the software for AGV scheduling and routing. For this reason, our problems are quite different from the conventional VRPs. Therefore, appropriate and effective algorithms are always needed for an AGV system to schedule and route AGVs. The problems of scheduling and routing of AGVs are also different from the conventional path problems in graph theory, e.g. the Shortest Path Problem, Hamiltonian-Type Problem or Scheduling Problems, some of which have been proven to be NP-hard [Swamy & Thulasiraman 1981, Gondran & Minoux 1984, Wilson & Watkins 1990]. For example, a graph-theoretic problem usually cares about whether there exists an optimal path leading to a given destination node, while in an AGV system, when and how an AGV gets to its destination is also emphasized. In other words, scheduling and routing of AGVs are time-critical, while a graph-theoretic 9

problem usually not. This motivates us to develop tailored approaches for the scheduling and routing of AGVs. It is quite natural to also notice the similarities between the scheduling and routing of AGVs and routing data in a network. A possible analogy here is: AGVs are analogous to data packets, the paths (or tracks) to the data links, and the switching devices to the routers. However, there exist fundamental distinctions such that one scheme in a system may not be applicable directly to the other [Hsu & Huang 1994]. For example, the time for transferring electronic data packets is generally not taken as a function of physical distance between senders and receivers. While in an AGV system, the time for transporting loads is usually a function of distance between origins and destinations. Another fundamental difference is, with data routing the sender could discard and then re-send a frame of electronic data when it fails due to the congestion in the data links. In contrast, loads carried by AGVs neither have backup copies nor can be discarded. This is yet another reason for us to treat the AGV scheduling and routing as distinct problems from data routing. 4. Routing Algorithms According to the characteristics of AGV routing algorithms, the existing works could be classified into three general categories, namely, routing algorithms for general path topology, path optimization and routing algorithms for specific path topologies. Works in the first category usually treat routing problem as a graph-theoretic problem, and uses approaches such as Dijkstra s shortest path algorithm to find optimal routes. These algorithms are usually very expensive computationally when routing more than one vehicle. By using tailored optimization techniques such as integer programming, works in the second category focus on path network optimization, in which routing control could be very simple. However, because of the heavy computation, the size of the path network to be optimized is usually small and hence only allows a small number of vehicles (at most twenty) to run on it. As for works in the third category, path networks are restricted to specific topologies such as multi-loops, and AGVs are routed and controlled by specialized algorithms. 10

4.1 Routing Algorithms for General Path Topology Algorithms in this category focus mainly on finding the feasible routes for AGVs without considering the topology characteristics of path networks. In other words, these algorithms attempt to give universal routing solutions (e.g. conflict-free shortest-time path) for general path topologies. The AGV routing problem is different from the Vehicle Routing Problem (VRP) which has been approached typically by using techniques such as linear programming or operations research [Dantzig 1963, Taha 1995]. In VRPs, vehicles will not run into collision because they are regarded as moving points when they run on the path network. However, the path for AGVs usually has limited width which may only allow no more than one AGV to run in parallel at a time. Thus, a basic consideration is to give conflict-free and shortest-time routing solutions for AGVs. The papers surveyed in the following are representative works about this issue. 4.1.1 Static routing Algorithms The concept of conflict-free shortest time AGV routing was first presented by Broadbent et al. in 1985 [Broadbent et al. 1985]. The routing procedure described in [Broadbent et al. 1985] employs Dijkstra s shortest path algorithm to generate a matrix which describes the path occupation time of vehicles. Potential conflicts among vehicles, namely head-to-head, head-to-tail collisions and collisions at a path junction, are detected by comparing path occupation time. Then they are avoided in advance as follows: head-to-head conflicts are resolved by finding another shortest path excluding the congested segment; junction and head-to-tail conflicts are resolved by slowing the new vehicle down to let the previously scheduled vehicles proceed first. The time complexity of finding a path for a vehicle is O( N 2 ), where N is the number of nodes (station or junction of paths) of the path network. The disadvantage of the routing procedure is that the computation could be very intensive which increases drastically with the size of the path network or the number of vehicles. Compared with uni-directional path AGV systems, there are obvious advantages of bi-directional path AGV systems in terms of utilization of vehicles and potential throughput efficiencies. Egbelu and Tanchoco showed a marked improvement in productivity and a reduction in the number of vehicles required in bi-directional path AGV systems [Egbelu & Tanchoco 1986]. The control of bi-directional path AGV 11

systems can be complex because of the contention of multiple vehicles for the shared path segments. In this case, the routing algorithms must be able to eliminate potential head-to-head collisions among vehicles, and deadlocks. [Egbelu & Tanchoco 1986] first suggested the use of bi-directional path networks for routing AGVs. However, no algorithm is given to guarantee the optimality of routes for vehicles in the paper. Daniels first introduced an algorithm to route vehicles in a bi-directional flow path network, in which the partitioning shortest path (PSP) algorithm [Glover et al. 1985] is applied to find the shortest path for an AGV [Daniels 1988]. The correctness and feasibility (in terms of time/space requirements) of the algorithm was theoretically proven. The algorithm can find a conflict-free shortest-time route for a newly added AGV without changing the existing routes of the other vehicles. The computational complexity of routing a single AGV is O ( N A ), where N represents the number of nodes and A the number of arcs in the path network (arcs are the path segments and nodes are the stations or junctions of paths). Therefore, it also suffers from high computational cost if the size of path network or the number of vehicles involved is large. In addition, when a path is allocated to a vehicle x, it is considered unusable by other newly added vehicles before x reaches its destination. In reality, the path segments of the path are only partially occupied by the vehicle during some time windows. A newly added vehicle still could run on the path segments within their free time windows. However, sometimes the algorithm may fail to find a path even if there exists one for a vehicle. In other words, the algorithm does not allow vehicles to use path resource that could otherwise be shared during different time windows. Hence the algorithm is only suitable for a system with a small path network and number of AGVs. In order to share the path segments within their free time windows, Huang et al. proposed a labeling algorithm to find a shortest time path for routing a single vehicle in a bi-directional path network [Huang et al. 1989]. The algorithm converts every arc (physical path segment) of the original path network into a node with two arcs linking with the original two nodes (these two nodes are junctions of path segments or stations). Hence a converted network is obtained and then labels are assigned to free time windows defined for each node. By comparing the labels of every node, a shortest time path could be obtained if it exists. The algorithm has the time complexity of O( D 2 log D ) for a single vehicle, where D is the total number of time windows of all 12

nodes in the converted network. The main disadvantage of the algorithm is the unacceptably large amount of computation. The converted network has double number of arcs and at least double number of nodes than the original network (because in a connected graph, the node number N and the arc number A satisfy A N 1), and every node has at least one time window. Therefore the information of network could require a lot of memory space. The actual time complexity for a single vehicle is 2 O(( N + A) log( N + A )), where N and A represent the numbers of nodes and arcs in the original path network respectively. Kim and Tanchoco also presented a conflict-free shortest-time algorithm for routing AGVs in a bi-directional path network [Kim & Tanchoco 1991]. The proposed algorithm is based on Dijkstra s shortest-path algorithm. It maintains, for each node, a list of time windows reserved by scheduled vehicles and a list of free time windows available for vehicles to be scheduled. The concept of time window graph is introduced, in which the node set represents the free time windows and the arc set represents the reachability among free time windows. Then the algorithm routes vehicles through the free time windows of the time window graph instead of the physical nodes of the path network. To get an optimal routing solution, the algorithm could take a large amount of 4 2 time. Specifically, it requires O( v n ) computations in the worst case, where v is the number of vehicles and n is the number of nodes. Therefore, it will be more suitable for a small system with a few vehicles. Kim and Tanchoco later gave the operational control of bi-dirctional path network AGV systems for the conflict-free shortest-time routing algorithm [Kim & Tanchoco 1993]. The research employs a conservative myopic strategy, in which only one vehicle is considered at a time and all the previous decisions are strictly respected and a subsequent travel schedule is assigned only after the vehicle becomes idle. Using this strategy, to find a path from the current position of a vehicle to a pickup station and then to the drop-off station, the system controller need only call at most twice the conflictfree shortest-time routing algorithm described in [Kim & Tanchoco 1991] after the decision on vehicle dispatching is made. 4.1.2 Dynamic Routing Algorithms The preceding algorithms are static and global routing methods, which generally take a relatively long time to compute an optimal route. To speed up the processes of finding 13

optimal or feasible routes for AGVs, dynamic routing techniques and algorithms are proposed. Taghaboni and Tanchoco proposed a dynamic routing technique, namely incremental route planning, which can route AGVs relatively quickly [Taghaboni & Tanchoco 1995]. The algorithm selects the next node for the vehicle to visit so as to reach its destination based on the status of neighbouring nodes and information about the global network. The next node is selected among all adjacent nodes such that it will result in the shortest travel time. The decision of next node selection is repeated until the vehicle reaches its destination. The algorithm can work in both uni-directional and bidirectional path networks. However, compared with the complete route planner [Taghaboni & Tanchoco 1995], the incremental route planning can not achieve a high efficiency when the number of tasks and vehicles increase. The algorithm may also not obtain an optimal route and correctly predict the delays in some cases. Based on dynamic programming, Langevin et al. presented an algorithm which could give an optimal integrated solution for planning the dispatching, conflict-free routing, and scheduling of AGVs in a flexible manufacturing system [Langevin et al. 1996]. The algorithm defines a partial transportation plan as a schedule and a route for each vehicle satisfying a subset of the transporation tasks. States are defined corresponding to the partial transportation plans. The dynamic programming operations work on the states to find the best final state set which contains the optimal solution. However, as stated in the study, the number of states could be astronomical for a large system. To make it usable, a procedure is designed to elimiate some of the states. Even so, the computation can be very expensive. And the fatal limitation is that the algorithm only considers the system with two vehicles, although the path network may be bidirectional. Therefore, the throughput of such a system may not scale up with the number of tasks. An extended version of the algorithm is also given in the study to deal with the system with more than two vehicles. However, it still cannot guarantee the optimality of the solutions. Table 1 and Table 2 summarize this part of work. 4.2 Path Optimization Due to the large amount of computation for finding the optimal routes in a general path network, many researchers propose the idea of tailoring the path network to achieve a 14

higher efficiency. This part of work emphasizes on the optimization of path layout rather than routing algorithms with consideration of the given facility and pickup/dropoff stations (or P/D stations for short). This optimization problem is usually formulated in integer programming models. 4.2.1 0-1 Integer Programming Models Gaskins and Tanchoco first formulated the path layout problem as a zero-one integer programming model with consideration of the given facility layout and pickup/drop-off stations [Gaskins & Tanchoco 1987]. The objective is to find an optimal path network which will minimize total traveling distance of loaded vehicles. However, the paper only considers uni-directional path network, which has lower utilization [Egbelu & Tanchoco 1986]. The distance traveled by unloaded vehicles is not taken into considerations, which may affect the routing control and system throughput. The main limitation of the study is that it only considers a fleet of AGVs with the same origin and destination every time. These AGVs run along the same route. Therefore, in this case routing control is trivialized since issues such as congestion, deadlocks and conflicts, will never arise. Because routing control is not taken into account, when AGVs with different origins and destinations run simultaneously, conflicts may occur among them. Another limitation from the formulated zero-one integer programming model is that it has a very low probability to obtain a non-empty solution set. Moreover, for practical problems, the number of zero-one variables tends to be very large and computational efficiency becomes a critical issue. Based on a zero-one integer programming model and the branch-and-bound method, Kaspi and Tanchoco proposed an alternative formulation [Kaspi & Tanchoco 1990] of the AGV path layout problem described in [Gaskins & Tanchoco 1987]. The new approach can obtain the best path design provided that the pickup/drop-off stations location and facility layout are given. The procedure, compared with the algorithm in [Gaskins & Tanchoco 1987], reduces the computation time at the cost of the quality of path design because not all of the possibilities are enumerated. However, this study shares the same limitation with the previous one. 4.2.2 Intersection Graph Method An Intersection Graph Method (IGM) is presented by [Sinriech & Tanchoco 1991] for solving AGV Flow Path Optimization Model developed by [Kaspi & Tanchoco 1990]. 15

A procedure based on the technique of branch-and-bound is described wherein only a reduced subset of all nodes in the path network is considered. Only intersection nodes are used to find optimal solutions. With this improved procedure, the number of branches of the main problem is only half of that of the method described in [Kaspi & Tanchoco 1990]. The amount of computation is thus greatly reduced. Therefore, this approach could be adopted by a relatively large AGV system. However, because only intersection nodes in path are used, the algorithm might miss some optimal solutions. The same problem is also studied by Goetz and Egbelu in a different approach [Goetz & Egbelu 1990]. They modeled and solved the problem of selecting the guide path as well as the location of the pickup and drop-off stations as an integer linear program. The objective is to minimize the total distance traveled by both loaded and unloaded AGVs. A heuristic algorithm is used in the study to reduce the size of the problem. The reduction makes the approach more amenable for use in the design of large path layouts. Then the problem of determining the optimal locations of the pickup/drop-off stations is formulated based on the reduced problem. The paper also exploits the structure of the problem to reduce the number of constraints required to solve the path layout problem. However, the issues of vehicle number that the system could have and the routing control on the optimized path network are not considered in the study, which are obviously related to the final goal of the system optimization. The path studied here is uni-directional, which, to some extent, results in a low path utilization and system throughput. Table 3 summarizes the works reviewed in the preceding paragraphs. 4.3 Routing Algorithms for Specific Path Topologies Some algorithms are proposed for routing AGVs in specific path topologies, such as single-loop, multi-loops, and mesh. 4.3.1 Closed Single-loop Tanchoco and Sinriech suggested an optimal closed single-loop path layout for an AGV system [Tanchoco & Sinriech 1992]. An algorithm based on integer programming is given to find the optimal single loop. With the single-loop path layout, the routing algorithm could be very straightforward. In this case, if all vehicles run in the same direction with uniform speed, no collisions may occur among them because there are no 16

intersections in the optimal singe loop path. As the paper claims, however, the system throughput drops down a little compared with general path systems. It allows at most ten vehicles to run simultaneously around the single loop [Tanchoco & Sinriech 1992]. Therefore, such an AGV system could not be very suitable for a large material handling system with a relatively great number of vehicles and stations. 4.3.2 Non-overlapping Closed Loops Lin and Dgen provided an algorithm for routing AGVs among non-overlapping closed loops within a tandem AGV system [Lin & Dgen 1994]. Stations within each loop are served by a single dedicated vehicle. The transit area located between two adjacent loops serves as an interface and allows loads to be transferred from one loop to another. If a load needs to be delivered to a station not located within the same loop, the load needs more than one vehicle to carry it to its destination. A task-list time-window algorithm is employed to find a shortest travel time path based on the current status to route a vehicle from point A to point B. The computation for a routing decision is relatively small. However, since only one vehicle serves a loop, the throughput of the system is very low. Besides, the device used to transfer loads from one loop to another usually increases the system cost. Therefore, the scale of such a system could not be very large. The paper did not address the design issue of the loops, which is crucially related to the system efficiency. 4.3.3 Segmented Flow Topology Similar to the multi-loops path layout in [Lin & Dgen 1994], Sinriech and Tanchoco proposed an alternative path topology Segmented Flow Topology (SFT) [Sinriech & Tanchoco 1994]. The SFT can be used in conjunction with each of the following three network types: connected, partitioned and split-flow. The general SFT is comprised of one or more zones, each of which is separated into non-overlapping segments with each segment serviced by a single vehicle. Transfer buffers are located at both ends of every segment. Since there is only one vehicle moving in a segment, no path segment contentions will occur. The vehicle can move bi-directionally in the segment. Therefore, the routing control for such a path topology is very simple. The advantage of the SFT can be easily recognized by the lower value of flow distance compared with that of the other path topologies, such as single-loop, bi-directional and uni-directional conventional paths, etc. However, the transferring devices in the buffers are the 17

additional cost of the overall system. The operations of transferring loads among segments may be time-consuming and sometimes cause delay of transportation. 4.3.4 Linear Array, H-tree, 2D-mesh etc. Hsu and Huang gave time and space complexities for some basic AGV routing operations in several specific bi-directional path topologies [Hsu & Huang 1994, Huang & Hsu 1994]. The routing operations include simple delivery, distribution, scattering, accumulation, gathering, sorting and total exchange. All these operations are achieved in the following path topologies: linear array, ring, H-tree, star, 2D-mesh, n-cube and cube-connected cycles and complete graph. The upper bounds of time and space 2 complexities for those AGV routing in those path topologies are Θ ( n ) and Θ( n 3 ) respectively, where n is the number of nodes in the path topologies. However, the paper does not give in detail the routing algorithms and the techniques to avoid congestion, conflicts, deadlocks etc. It also causes additional system cost if every node in the path network has an arbitration capability. Table 4 summarizes this part of work. 5. Scheduling Algorithms The AGV systems considered above usually have a relatively small number of vehicles and P/D jobs. In this case, the problem of AGV scheduling is trivial with the existing solutions of path network optimization and routing control. However, for an AGV system with a great number of P/D jobs and a large size of AGV fleet, such as container handling in a seaport, the scheduling of AGVs becomes nontrivial. It should be studied separately from routing problem and path layout design. However, recent research on AGV scheduling is relatively scarce and limited in scope. A typical work on AGV scheduling is by Akturk and Yilmaz in 1996. They proposed an algorithm to schedule vehicles and jobs in a decision-making hierarchy based on the mixed integer programming [Akturk & Yilmaz 1996]. The proposed micro-opportunistic scheduling algorithm (MOSA) combines two perspectives, namely job-based and vehicle-based approaches, into a single algorithm in which both the critical jobs and the travel time of unloaded vehicles are considered simultaneously. The scheduling problem is defined similarly to, but not identically as, the Time Constrained Vehicle Routing Problem (TCVRP) which is proven to be NP-hard by [Kolen et al. 18

1987]. The problem is thus solvable in polynomial time because the objective is to minimize the deviation of the time windows rather than the distance traveled by vehicles in TCVRP. However, the MOSA is only applicable for AGV systems with a small number of jobs and vehicles. This is because with the increase of job number and the size of vehicle fleet, the amount of computation for the solution could become unacceptably large. Qiu and Hsu presented a scheme to schedule and route AGVs on a bi-directional linear path layout [Qiu & Hsu 1999, 2000]. The proposed algorithm actually combines the functions of scheduling and routing, and employs the idea of concurrent processing. When AGVs are scheduled and routed to run along the linear tracks, no conflicts, congestion, livelocks or deadlocks will arise. All jobs can be completed within a very short time. The efficiency of the algorithm is not constrained by the size of the system. Because the algorithm is given based on the designed linear path layout, it can be classified into the category of routing (and scheduling) algorithms for specific path topologies. However, how to schedule and route pickup/drop-off jobs continuously is still unsolved in the paper. Moreover, the stringent (and unrealistic) synchronization requirements of vehicles should be relaxed to meet realistic applications. Kim and Bae presented a model for scheduling AGVs for multiple container cranes [Kim & Bae 1999]. The primary objective is to minimize the delay of carrying out all loading and unloading operations. In other words, the goal is to minimize the waiting time of container cranes rather than to minimize the idle running of AGVs. Issues related to AGV routing are not taken into considerations. Hence with the increase of the number of AGVs, congestion or even collisions of AGVs might occur at the operating area of container cranes. 6. Future Directions & Concluding Remarks For future research, we believe that the most promising area is in the development of new AGV routing algorithms for specific path topologies: In many applications, the AGV path networks are regular graphs, e.g. linear array, loop/loops, 2D-mesh. For example, in a container handling application, the container stacking yards are usually arranged as rectangular areas connected with mesh-like paths. 19

Routing algorithms for specific path topologies usually have relatively lower computational complexity compared with those for general path topology. Developing routing algorithms for specific path topologies is relatively more feasible than those for general path topology. Meanwhile, because we can exploit the characteristics of these specific topologies, we could develop algorithms that are more efficient. AGV scheduling should be treated as a different problem from AGV routing. However, we cannot disregard its association with routing when developing scheduling algorithms. One of the feasible and possibly effective ways is to combine the functions of scheduling and routing into one algorithm, as the algorithm presented by Qiu and Hsu. 10,11 Another way is to first give a scheduling plan and then develop suitable routing algorithm for it. Another strategy is to study scheduling algorithms based on a given routing algorithm. In spite of the pervasive applications of AGV systems, the problems of scheduling and routing of AGVs still call for much attention to. Even in the latest conferences on robotics and intelligent vehicles, e.g. the 1999 International Conference on Field and Service Robotics 38 and 1999 Symposium on Intelligent Transportation Systems, 39 much study focuses on the difficult issues such as automated driving of vehicles, intelligentization of vehicles, intelligent navigation mechanisms, robot vision, image processing, information fusion, etc. Relatively fewer papers refer to scheduling and routing of AGVs. It should be pointed out that even if issues on vehicle automation or intelligentization are fully resolved, this does not mean that the problems of scheduling and routing will disappear accordingly. Without suitable algorithms of scheduling and routing, no one can guarantee that congestion or deadlocks will not occur even if all vehicles are driven by human drivers. On the other hand, with good scheduling and routing algorithms, based on the current level of AGV technologies, an AGV system could be put into operation before the difficult issues mentioned above are resolved. As a case in point, presently at Nanyang Technological University, Singapore, a project of AGV application in a container handling system is being studied. 40 The main goal is to schedule and route AGVs within a mesh-like path and container stacking areas (as shown in Figure 4). The solutions to the problems could greatly decrease the system costs because in this case AGVs may not require too much intelligence. 20

In conclusion, it should be clear that AGV systems are, intrinsically, parallel and distributed systems that require a high degree of concurrency. We feel that the routing and scheduling of these systems should be a fertile area where computer scientists and engineers can have significant impacts and contributions. Bi-directional paths Buffers in yard areas for AGVs loading or unloading An AGV is loading/unloading at a container crane Container cranes A container ship An AGV is loading Free AGVs are running to their origins to load A loaded AGV is running to its destination An AGV is unloading Containers stacking in yard areas (different colors represent different stacking heights of containers) Figure 4. AGVs in a mesh-like path and container stacking areas 21

Table 1 Static Routing Algorithms for General Path Topology Broadbent et al. 1985 Daniels 1988 Huang et al. 1989 Kim & Tanchoco 1991, 1993 Problems Solved Finding conflictfree shortest time routes for AGVs Finding conflict-free shortest time routes for AGVs Finding conflict-free shortest time routes for AGVs Finding conflict-free shortest time routes for AGVs Basic Algorithms Dijkstra s shortest path algorithm Partitioning shortest path algorithm Dijkstra s shortest path algorithm; conservative myopic strategy Computational Complexity O( N ) (average case) O ( N A ) (average case) 2 O(( N + A ) log( N + A)) (average case) 4 2 O( v N ) (worst case) Path Direction Bi-directional Bi-directional Bi-directional Bi-directional Advantages Easy to execute Easy to execute and faster than Broadbent s Time windows are used for every node; the utilization of path segments are increased Easy to execute and control; fast Disadvantages Heavy computation; low utilization of path segments Heavy computation; low utilization of path segments; may cause failure in finding routes that actually exist Heavy computation; large amount of data of converted network to maintain Legend: N node number in the path network; A arc number in the path network; v vehicle number; Heavy computation; large amount of data of path network to maintain 22

Table 2 Dynamic Routing Algorithms for General Path Topology Taghaboni & Tanchoco 1995 Langevin et al. 1996 Problems Solved Finding a conflict-free route for AGVs Integrated solution for AGV dispatching, conflict-free routing and scheduling Basic Algorithms Incremental route planning Dynamic programming Optimality of Solutions Not guaranteed Not guaranteed Path direction Bi-directional & Uni-directional Bi-directional Advantages Relatively fast in routing decision Easy to execute and control Disadvantages Low efficiency when the numbers of tasks and vehicles increase; also no optimal routing solutions could be guaranteed; Since only two vehicles are allowed in the system, the system throughput and path utilization could be very low; only suitable for very small system with a few stations 23

Table 3 Path Optimization Gaskins & Tanchoco 1987 Kaspi & Tanchoco 1990 Sinriech & Tanchoco 1991 Goetz & Egbelu 1990 Problems Solved Basic Algorithms Path optimization to minimize total distance traveled by loaded vehicles Zero-one integer programming Path optimization to minimize total distance traveled by loaded vehicles Zero-one integer programming; branch-and bound Path optimization to minimize total distance traveled by loaded vehicles Intersection Graph Method; Branch-and-bound Path optimization to minimize total distance traveled by both loaded and unloaded vehicles Integer linear programming Path Topologies General General General General Path Direction Uni-directional Uni-directional Uni-directional Uni-directional Advantages Very easy to implement for a fleet of AGVs with the same origins and destinations; An improvement of the approach in [Gaskins & Tanchoco 1987]; reduced computation; optimality guaranteed An improved model of that proposed in [Kaspi & Tanchoco 1990]; reduced number of problem branches; optimality guaranteed Problem size is reduced; distance traveled by unloaded vehicles is considered together; optimality is hence better ensured Disadvantages Conflicts may occur when there are AGVs with different origins and destinations; heavy computation; low system throughput Distance traveled by unloaded AGVs is not considered; low system throughput; still heavy computation Only intersection nodes of the path network are considered; optimal solutions may be missed Routing control and vehicle number are not considered in the study which are important for AGV systems 24

Table 4 Algorithms for Specific Path Topologies (to be continued) Problems Solved Basic Algorithms Path Topologies Tanchoco &Sinriech 1992 Optimizing the path layout configuration in a closed single loop Integer programming Lin & Dgen 1994 Routing AGVs among several non-overlapping closed loops; finding shortest travel time path The task-list time-window algorithm Closed single-loop Multi-loop Segmented path topology Path Direction Uni-directional Bi-directional or Unidirectional Sinriech & Tanchoco Hsu & Huang 1994 1994 Routing AGVs among Route planning for basic several non-overlapping routing functions on path segments; finding several specific basic path shortest travel time path topologies Bi-directional or Unidirectional Linear array, ring, H-tree, star, 2D-mesh, n-cube, cube-connected cycles, complete graph, Bi-directional 25