DEADLOCK PREDICTION AND AVOIDANCE IN AN AGV SYSTEM

Size: px
Start display at page:

Download "DEADLOCK PREDICTION AND AVOIDANCE IN AN AGV SYSTEM"

Transcription

1 DEADLOCK PREDICTION AND AVOIDANCE IN AN AGV SYSTEM By Krishna Moorthy Rajeeva Lochana Moorthy B.E. Mechanical Engineering Sri Ramakrishna Engineering College, Wee Hock Guan B.Eng. Electrical Engineering National University of Singapore, 1999 SUBMITTED TO THE SMA OFFICE IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE IN HIGH PERFORMANCE COMPUTATION FOR ENGINEERED SYSTEMS AT THE SINGAPORE-MIT ALLIANCE JUNE 2000 Signature of Authors: Krishna Moorthy Rajeeva Lochana Moorthy Wee Hock Guan High Performance Computation for Engineered Systems June 30, 2000 Certified by: Asst. Prof. Teo Chung Piaw SMA HPCES Fellow Project Supervisor Accepted by: Assoc. Prof. Khoo Boo Cheong Programme Co-Chair HPCES Programme Accepted by: Prof. Anthony Patera Programme Co-Chair HPCES Programme

2 DEADLOCK PREDICTION AND AVOIDANCE IN AN AGV SYSTEM By Krishna Moorthy Rajeeva Lochana Moorthy B.E. Mechanical Engineering Sri Ramakrishna Engineering College, Wee Hock Guan B.Eng. Electrical Engineering National University of Singapore, 1999 SUBMITTED TO THE SMA OFFICE IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE IN HIGH PERFORMANCE COMPUTATION FOR ENGINEERED SYSTEMS AT THE SINGAPORE-MIT ALLIANCE JUNE 2000 ABSTRACT Automated Guided Vehicle Systems (AGVS) form a very important part of automated material handling and its performance affects the efficiency of the entire system. Deadlock formation is a serious problem as it stalls the AGVS. The objective of this project is to develop an efficient deadlock prediction and avoidance algorithm. Deadlock in a broad sense is a situation in which at least a part of the system stalls. There are a lot of situations in which the system may stall and most of these situations can be avoided by designing a good control and navigation system. The project concentrates on developing an algorithm to predict the occurrence of cyclic deadlock and the other kinds of deadlocks are avoided by using control logic. A variety of deadlock-detecting algorithms are available but, the AGVS under study is huge and complex and none of the existing methods can be used. This is because, it is the first time that such a complex port AGVS layout has been taken for study and all the existing methods are for simpler and smaller layouts. A semi-dynamic routing system is

3 proposed which employs a prediction phase and an avoidance phase. The routes for the vehicles are obtained by using a shortest path algorithm, which takes congestion effects into consideration. Leighton, Maggs and Richa [11] have earlier shown that there exists a routing schedule in O(c+d) if the congestion effects are taken into account. A computationally efficient method for updating the network with the congestion effects is also suggested. The proposed solution is implemented in a simulation software, AutoMod, and the performance of the technique is analyzed. A detailed description of the algorithm and specific details of implementation in AutoMod and C are provided. The algorithm is implemented first on a small-scale model and then on the actual model. In the actual model, realistic loads are simulated so that the algorithm can be evaluated with as much real data as possible. Simulation shows that all the potential deadlock situations are detected and avoided. Also, the proposed strategy is computationally efficient and is able to provide the movement decision to the vehicles within the 1.5-sec sampling time. The simulations show that the deadlocks formation is inherent in the layout and they cannot be avoided by simply reducing the number of vehicles in the system. This suggests that the prediction-avoidance strategy has to be a vital ingredient of the AGVS routing system.

4 ACKNOWLEDGEMENTS We thank our advisor Dr. Teo Chung Piaw whose expert advice has helped us a lot in completing the project successfully. His guidance and comments has aided us in looking into the finer aspects of the simulation and in obtaining meaningful results. We thank Dr. Jonathan Ng, Manager, Operations Planning Department, PSA Corp., for providing us the opportunity to work on this problem. We are grateful to PSA Corp for providing the resources to do the simulation work. Our special thanks to Mr. Yow Liang Keon, Senior Operations Research Officer, PSA Corp., for helping us a lot in understanding AutoMod and providing us implementation specific details. His experience with AutoMod has helped us in reducing the debugging time to a great extent. We also wish to thank SMA for supporting us in doing this project. Last but not the least we thank all the SMA faculty and students with whom we have had many a discussions. Authors 30 June 2000

5 TABLE OF CONTENTS 1 INTRODUCTION AUTOMATED GUIDED VEHICLES PSA PORT AUTOMATION PROJECT (PPAP) Description of Layout UNIQUENESS OF PPAP PROBLEM STATEMENT PROJECT CONTRIBUTION OUTLINE OF THE THESIS LITERATURE REVIEW DEADLOCK PREDICTION ALGORITHM THE CONDITIONS LEADING TO A DEADLOCK TYPES OF DEADLOCKS IN THE AGVS Cross lane deadlock Shop deadlock Cyclic Deadlock Methods in predicting or detecting cyclic deadlock Deadlock prediction algorithm DEADLOCK AVOIDANCE DYNAMIC ROUTING STRATEGY Calculation of Shortest path Storage of Routes Updating the Arc Weights Improvements in Computation speed IMPLEMENTATION AUTOMOD SIMULATION SOFTWARE Items required building a model in AutoMod Vehicle procedures and functions Specification of the workload in PSA...43

6 5.1.4 Implementation of the one-zone step deadlock prediction and avoidance algorithm in AutoMod Difficulties faced during the implementation in AutoMod Idling vehicles at destination control points Multi-cycle deadlock Deadlock detection and resolution C - CODES AND INTERFACING Data structure Implementation of Dijkstra s algorithm RESULTS AND DISCUSSION EFFECTIVENESS OF THE ALGORITHM ON THE SMALL-SCALE MODEL EFFECTIVENESS OF THE ALGORITHM ON THE ACTUAL MODEL REFERENCES APPENDIX A HOW VEHICLES USE LIST TO MOVE AND PICK UP LOADS HOW VEHICLES BEHAVE AS SCHEDULERS USING VEHICLE PROCEDURES HOW VEHICLES BEHAVE AS MOVERS USING VEHICLE PROCEDURES AND FUNCTIONS APPENDIX B VEHICLE PROCEDURES Move to deliver procedure Move to retrieve procedure Leaving station procedure VEHICLE FUNCTIONS Vehicle initialization function Decelerate ok function Location selection function Park ok function Passing station function APPENDIX C...68

7 LIST OF FIGURES Figure 1.1.1: Illustration of zone controlled AGVS...10 Figure 1.1.2: Simple solution to reduce waiting time...10 Figure 1.2.1: Increase in volume of transaction in ports operated by PSA...11 Figure 1.2.2: Bridge Cranes in operation...11 Figure 1.2.3: Part of the PSA s AGVS layout showing one berth Figure Storage yard Figure Traveling and working lanes...13 Figure 1.3.1: Physical constraints in AGVS leading to deadlock Figure 3.0.1: A cyclic deadlock form by the vehicles...20 Figure : Illustration of a deadlock when two vehicles are crossing into each other s lanes...22 Figure : A Shop deadlock...23 Figure : Avoiding the Shop deadlock...23 Figure : Flowchart of the algorithm used to predict the deadlock (one zone step) Figure : Illustration of one zone step deadlock prediction Figure 4.1.1: Figure representing an example for a vehicle to be delayed in its travel...31 Figure : AGV predicts a deadlock and changes its route...33 Figure Illustration for updating Arc Weights...35 Figure : Formula for updating arc weights...36 Figure : Arc weight updating with varying weights...37 Figure : An example of AGV path layout. The crosses shown here are the control points by which the vehicle will stop at if necessary Figure : An illustration of an impending one-zone step deadlock situation. The small cubes represent the AGV while the bigger one represents that the AGV is carrying a load Figure : An illustration of the multi-cycle deadlock situation...49 Figure : Resolution of Multi-Cycle Deadlock...50 Figure : An illustration of the problem encountered Figure Data structure used to represent the Network...53

8 Figure : Data file format...53 Figure : Structure of the Queue Item...54 Figure 6.2.1: Layout of the Actual model...55 Figure 6.2.2: Cyclic deadlock in the Actual model...56 Figure 6.2.3: Impending deadlock detected by the Algorithm...56 Figure 6.2.4: Deadlocks predicted in a 7-day period...57 Figure : Flowchart for the proposed two-zone step deadlock prediction algorithm. See below for the definition of the numbers...68 LIST OF TABLES Table Original Adjacency Matrix...35 Table Adjacency Matrix after rerouting one vehicle...36 Table : Comparison of the different Arc weight updating strategies Table : Comparison of computation times for two different implementations of Dijkstra s algorithm...39 Table 6.2.1: Deadlock formation with regard to the number of vehicles...57

9 Chapter 1 Introduction 9 1 INTRODUCTION Material handling in manufacturing firms has always been an important process and the advent of automation has increased the demand for efficient material handling systems. By far, automated material handling has been one of the most important features in a Flexible Manufacturing System (FMS). Material handling includes a variety of operations including material storage, retrieval, transportation of the products between machines etc. Each operation requires different hardware resources like the fork lifts, robots and the Automated Guided Vehicles (AGV). Automated Guided Vehicle System (AGVS) has been one of the most important components of an Automated material handling system because it is the responsibility of the AGVS to efficiently transport goods from one part of the factory to the other. Any delay in the part of the AGVS affects the entire production facility and hence improving the efficiency of the AGVS is very important. The success of the AGVS in production firms has motivated people to use this system in other areas where efficient material handling is needed. And now, AGV s have become an important component of most material handling systems. 1.1 AUTOMATED GUIDED VEHICLES AGV s are automated vehicles whose movement are controlled by a central or distributed control system. Typically, an AGVS has lot of sensors that send the location data of the vehicles. The control system takes in this data and decides whether a vehicle needs to move or not. AGV s have a predefined layout on which they run and to prevent collision, most AGVS are zone controlled. It means that the track on which the AGV s travel is split into smaller zones and only one vehicle is allowed to be present in a zone at any

10 Chapter 1 Introduction 10 particular time. Hence, when the next zone of a vehicle is blocked, the AGV waits until the zone is cleared before it proceeds. This is illustrated in the figure AGV 1 is waiting for AGV2 to clear AGV 2 is loading/unloading Figure 1.1.1: Illustration of zone controlled AGVS Most AGVS layouts are simple and usually they have a loop in which the AGV s travel. To reduce waiting time, simple solutions as shown in figure are developed. The figure shows that the layout is made in such a way that there is an alternate route at the working locations. But such a simple strategy works only if the layout is very simple. For complicated layouts, better routing is the best way to increase the efficiency of AGVS. Actual route New route AGV Loading Figure 1.1.2: Simple solution to reduce waiting time. The increasing demand for better material handling solutions and also the presence of other constraints like space availability makes the AGVS layout very complex and hence the performance of the AGVS is dictated by the routing strategies. 1.2 PSA PORT AUTOMATION PROJECT (PPAP) PSA Corporation is one of the world s leading port operators and in Singapore PSA handles more that 15 Million TEU of cargo each year. Figure gives a feel of the growth of PSA in terms of the amount of cargo handled. PSA operates many ports outside Singapore and due to increasing demand and also to maintain and improve their quality of service, they resort to automation of the port activities. Currently, PSA employs fully automated cranes in their ports as part of their container storage-retrieval

11 Chapter 1 Introduction 11 system. It operates about 24 quay cranes, 44 bridge cranes and 15 gantry cranes at the Pasir - Panjang Terminal. Figure shows the bridge cranes used at the terminal. Figure 1.2.1: Increase in volume of transaction in ports operated by PSA Figure 1.2.2: Bridge Cranes in operation

12 Chapter 1 Introduction 12 Yard Side lanes Corridor Berth Side lanes Figure 1.2.3: Part of the PSA s AGVS layout showing one berth. To further improve the service rate, PSA had decided to make the port operations fully automated. As part of this automation process, PSA is introducing AGV s for container transport within the port. A pilot project is being done at the Pasir-Panjang Terminal in Singapore. In Singapore, land is a very important resource and efficient usage of the available space is one of the prime objectives in any project. An important feature of the ports in Singapore is that most of the cargo (almost 80%) is for transshipment. Hence, enough space for the transshipment goods must be available close to the dock. To maximize the usage of the land area close to the dock, a complex AGVS layout has been planned for PSA. A part of the layout drawn by PSA is shown in figure When the layout is complex, the control and navigation systems of the AGVS must be very efficient to prevent any major congestion in the AGV traffic. High rates of congestion results in longer service time and lesser throughput and the objective of PSA to reduce the service time will not be fulfilled Description of Layout This section gives a brief overview of the PSA s AGVS layout.

13 Chapter 1 Introduction 13 The layout has the following components. Berth-side lanes Corridors Traveling lanes Working lanes Figure shows the lanes in the berth-side, storage yard and the corridor. There are 8 lanes on the berth-side and 4 lanes on the yard-side. The Export/Import containers are stored in the storage yard and the vessels arrive at the berth. All the containers need to be transported to or from the vessel and hence there are more lanes in the berth-side. The transshipment containers are stored in the storage yard and figure shows a storage yard with the adjoining working and traveling lanes and figure shows the traveling lanes and the working lanes in detail. A berth is the area between the two corridors. Container Storage Area Figure Storage yard. Traveling lane Working lane UNIQUENESS OF PPAP Working lane 2 Figure Traveling and working lanes. The project undertaken by PSA has a lot of unique features. With regard to port automation, there are only a few ports in the world that are fully or partially automated. On top of being one of the few ports that are automated, PSA has a lot of other constraints to heed to. As mentioned in the previous section, space is a major constraint for PSA and an AGVS layout with such complex network is the first of its kind.

14 Chapter 1 Introduction 14 Problems in routing may lead to system stall and manual intervention would be needed to restart the operations. PSA seeks to minimize human intervention in the automated system, since any intervention reduces the efficiency of the operations. As part of the control and navigation systems, there are a lot of physical constraints to be taken care of. For example, as seen in figure 1.3.1, when an AGV takes a turn, if there is a vehicle within a certain distance, it may lead to collision. This is much different when compared to routing systems in communication networks where such physical constraints are nonexistent. Such cases are to be taken care of by the navigation system and there are a host of other conditions to be checked by a particular vehicle before it moves. AGV1 AGV2 Frame a Frame b Figure 1.3.1: Physical constraints in AGVS leading to deadlock. 1.4 PROBLEM STATEMENT To address the concerns mentioned in the previous sections, PSA expressed the need for improving their current routing strategy. Specifically, a solution to prevent the deadlock in the AGVS is to be developed as part of the project. Deadlock in a broad sense can be defined as a condition when the system is stalled i.e. the automated system is unable to continue operations. As part of the project, a deadlock prediction and avoidance strategy should be developed and satisfactory performance of the system must be demonstrated. The new strategy should be implemented in AutoMod and performance must be compared with that of the existing strategy that does not include deadlock prediction. The control system provides the actual vehicle location every 1.5 seconds and the deadlock prediction phase must take into consideration the latest information if possible.

15 Chapter 1 Introduction 15 Hence the strategy developed must be computationally very efficient. If a deadlock is predicted, then an efficient avoidance measure (i.e. wait or reroute) is to be recommended. The project should address these concerns and detailed descriptions of the algorithms developed must be included. 1.5 PROJECT CONTRIBUTION The problem proposed has been studied in detail and the following chapters provide a detailed description of the problem and the solution proposed. The proposed solution shows very good performance both in terms of throughput and also in detection of the deadlocks. The highlights of the project are: Development of an efficient deadlock prediction algorithm. Development of a deadlock avoidance strategy. Implementation of the deadlock prediction and avoidance scheme in AutoMod. Implementation of the routing algorithms in C and interfacing them with AutoMod. Recommendations regarding the usage of the deadlock prediction-avoidance strategy. 1.6 OUTLINE OF THE THESIS The remainder of the document is divided into the following chapters. Chapter 2 provides a detailed review of the existing literature on the following topics: ƒexisting deadlock detection and prediction methods and an overview of their performance. ƒliterature regarding routing and the shortest path problem. Chapter 3 discusses in detail the deadlock prediction method. Details regarding the exact working of the method and a detailed description of the algorithm are included in this chapter. Details regarding the avoidance measures are included in chapter 4. A description of the proposed semi-dynamic routing strategy is provided. Also included are details regarding the shortest path problems and implementation specific details to improve the computation speed.

16 Chapter 1 Introduction 16 In Chapter 5, detailed description regarding the implementation of the entire strategy in AutoMod is provided. Description of important AutoMod functions used is provided in this chapter. Chapter 6 provides results obtained in the project and a detailed discussion of the results is included. Recommendations are made in this chapter as to the usage of the deadlock prediction-avoidance strategy in PAPP.

17 Chapter 2 Literature Review 17 2 LITERATURE REVIEW Deadlock detection has been a very important research topic and there are quite a few papers written in this field. But most of these literatures are suitable for very simple or small AGVS layout. In [7], Lee and Lin use the theory of petri-nets onto AGV systems. They extended the idea of using petri-nets on flexible manufacturing systems (FMS) proposed by Viswanadham, Narahari and Johnson [13] for deadlock prediction and avoidance. In this paper, there is no mention of actual implementation of the algorithm. The complexity of this method is O(nm 2 ) where n is the number of nodes and m is the number of arcs. In [6], Cho, Kumaran, Richard and Wysk s approach for the deadlock detection and resolution is to classify the network layout as bounded circuits. The definition of bounded circuits is similar to that of cycles. Using results from graph theories, the method is able to detect an impending deadlock situation. The complexity of the algorithm is O(wn(n+m) 2 ) where w is the number of cycles. In [9], a conflict resolution route planning method was devised by Reveliotis using a modified version of the banker s algorithm [2] proposed by Chang, Tanchoco and Koo. The method in brief comprises of incrementing the route of the vehicle one zone at a time. This is done by first testing whether the system is in a safe mode before deciding the vehicle s next zone. The complexity of the algorithm was shown to be O(V 2 ) where V is the number of vehicles. Upon detection of an impending deadlock situation, we implement a shortest path algorithm to determine the routes. The shortest path problem has been studied extensively

18 Chapter 2 Literature Review 18 in the literature. In [8], Ahuja, Magnanti and Orlin provide a general description of the various shortest path algorithms available. Theoretical analysis along with the computational complexity is also provided. Reference [4] is a survey of the famous shortest path algorithms and in that, Gallo and Pallottino also provides basic recommendations of the choice of the algorithm for a given network. Also, a study of the important data structures is done in this paper and the performance of the various methods is compared. It also provides pseudo code for all the algorithms recommended in the paper and the comparison based on the computational complexity is done. In [1], Zhan compares the three fastest algorithms on real road networks. The authors have compared the performance of the methods and have recommended the best algorithms along with the data structures for large road networks. Pallottino and Scutella, [10], provide a study of the SPT algorithm for transportation systems. A dynamic shortest path algorithm called the chrono-spt is provided. It also provides information of finding shortest paths with a time window constraint. Apart from the above-mentioned papers, there is a lot of literature regarding routing problems in communication networks. But the methods used in communication networks cannot be directly be employed in AGVS network. This is because in the communication network, the information packets can be destroyed and sent again which is not possible in the AGVS. Even though the references provide a theoretical understanding of the AGV routing and the deadlock detection problem, there is no actual implementation mentioned in them. Most of the literature available is useful only for simple AGVS layouts. The cases under study are mostly FMS layouts where the network is very simple and a simple strategy as mentioned in [6] would be efficient as there would be only a few bounded circuits.

19 Chapter 2 Literature Review 19 For the problem under consideration, the AGVS layout is massive and it the first time that such an AGVS layout is taken for study and the methods that have been proposed earlier fail because the computational effort and/or the memory requirement is very large. Hence, a computationally efficient strategy needs to be developed to tackle this problem for a huge and complex network. There are special algorithms proposed for finding shortest path in large networks. But, these techniques are not used since it is seen that a simple implementation of the Dijkstra s algorithm works very well for the network. The reason for this good performance may be attributed to the AGVS layout.

20 Chapter 3 Deadlock Prediction Algorithm 20 3 DEADLOCK PREDICTION ALGORITHM A system is said to be in a deadlock if a part or the whole of the system stalls. In the AGVS, resources (zones between control points) are shared among the whole population of vehicles. Each of the vehicles can only occupy one zone at a time. This kind of maintaining control over particular resources (zones) allocated to the vehicle may bring about deadlock (see Figure 3.0.1). In this chapter, the necessary conditions leading to deadlock, the different types of deadlock that can be deduced from the routing policy of the AGVS and the deadlock prediction and avoidance measures taken will be touched on. Zone 1 Zone 4 Zone 2 Zone 3 Figure 3.0.1: A cyclic deadlock form by the vehicles. 3.1 THE CONDITIONS LEADING TO A DEADLOCK From the literature available, Coffman, Elphick and Shoshani [3] pointed out that in order for deadlock to occur all of the following four conditions must be satisfied. The four conditions are:

21 Chapter 3 Deadlock Prediction Algorithm 21 Mutual exclusion: Two or more processes cannot use a resource at a time. No preemption: When a resource is being used, it is not released until the process using it finishes with it. Hold and wait: A process that is holding at least one resource and is waiting to acquire additional resources that are currently being seized by other processes. Circular wait: A closed chain of processes in which each process is waiting for a resource occupied by the next process in the chain. Therefore if even one of the conditions does not hold then a deadlock will not occur. It will be seen in the following that only the last condition can be prevented for the AGVS, as the other three conditions are always true for this system. The resources mentioned in the four conditions refer to the zones of the path and the processes are the AGV s. Mutual exclusion is obvious, since a zone cannot have two vehicles in it at any given time. This is a condition required by the control system in order to prevent the AGV s from colliding into each other. No Preemption is also obvious because, the vehicle must be in any zone at a given time (it cannot disappear into thin air) and the movement of the vehicle into another zone satisfies the condition. As for Hold and Wait condition, it is also satisfied in the case of the AGVS as each vehicle has to be a zone at any one time and is waiting to move into it s designated next zone. Thus all of the first conditions are satisfied leaving only the circular wait condition. This condition is not always true in the AGVS and this is where the deadlock prediction can be used to detect whether a deadlock is imminent. The method in which the deadlock prediction is done will be covered in the later sections. In the following section, the different types of deadlock that can happen in the AGVS will be presented. 3.2 TYPES OF DEADLOCKS IN THE AGVS They re several forms of deadlock that can be formed in an AGVS. Given the layout and the routes of the vehicles, there can be many forms of deadlocks depending on the control logic of the AGVS. In this section, the three most common kinds of deadlock will be

22 Chapter 3 Deadlock Prediction Algorithm 22 discussed including the generic form of deadlock i.e. cyclic deadlock in which, the vehicles form a cycle of request for the zones Cross lane deadlock The first kind of deadlock would be when two of the vehicles wanted to switch lanes. An illustration of this is shown in Figure Traveling lane AGV 1 Working lane AGV 2 Figure : Illustration of a deadlock when two vehicles are crossing into each other s lanes For example, say AGV1 wants to go to the working lane and AGV2 wants to go to the traveling lane. A situation may occur such that AGV1 might not be able to turn to the working lane if AGV2 is too near to the intersection i.e. AGV1 might collide into AGV2 when it makes the turn into the working lane. The navigation system on the vehicle will tell the AGV1 to stop. This will be the same for AGV2, which results in two vehicles waiting for each other to move, but nobody can move. This kind of deadlock would be resolved by having a smart navigation system i.e. decide where the vehicles should stop when they are waiting. Installing more sensors to tell the vehicle where to stop can do this Shop deadlock Another kind of deadlock termed shop deadlock [2] can occur when the vehicles are dispatched carelessly in an overloaded shop as illustrated in Figure In the container yard, there is only finite amount of capacity in each storage area. If all the storage space is used up, a situation as shown in Figure may occur. It shows a shop deadlock whereby AGV1 wants to unload its container but the storage space has reached the limit and AGV 2 is waiting to pick up the container resulting in both vehicles

23 Chapter 3 Deadlock Prediction Algorithm 23 waiting. The crane is lifting a container and cannot be dispatched to lift the container from AGV1. Crane Input Buffer Output Buffer AGV 2 AGV 1 Figure : A Shop deadlock To prevent the shop deadlock, three things can be implemented concurrently. The first is routing. In Figure there is only one lane in which the vehicle can move. Hence additional lanes and cross over between the lanes can be provided as in figure Crane Input Buffer Output Buffer AGV2 AGV1 Figure : Avoiding the Shop deadlock. These additional lanes together with a good method of distribution of the containers throughout the storage yard and Banker s algorithm as explained by Chang, Tanchoco and Koo [2] could prevent the shop deadlock from happening. For the case of our current project, prediction of this form of deadlock was not implemented as PSA has it s own distribution algorithm that assures that the space constraint will not be tight.

24 Chapter 3 Deadlock Prediction Algorithm Cyclic Deadlock The last deadlock, which is the most generic, is the cyclic deadlock shown in Figure This form of deadlock occurs when there is a chain of vehicles requesting for the zones (resources) in such a way that these form a cyclic request of zones. This form of deadlock prediction was not available in the control systems of the vehicles. A prediction and avoidance algorithm is needed to tackle this situation. In the following sections, a feasibility study on the present methods from the literature is done and at the last section will discuss about the prediction algorithm used in our implementation Methods in predicting or detecting cyclic deadlock In the literature available, [7,13,6,14] have discussed the methods of predicting and detecting cyclic deadlocks. The methods mentioned in the literature in predicting the deadlock are either complicated or computationally expensive. For our case, the computation time to predict such a deadlock must be small as every sample time for the control system is in the range of 1.5 to 2 seconds. In the following, a discussion on why the methods mentioned in the literature are not feasible for implementation is provided. In [7,13], Lee, Lin and Viswanadham, Narahari and Johnson use the petri-net theory to predict and avoid cyclic deadlocks in the FMS and AGVS. The entire network must be represented in the form of a matrix. The AGVS layout in our implementation consists of 1370 nodes and several thousand arcs. The dimension of the matrix would be in the order of a few million elements, which takes up huge memory space. To detect a cyclic deadlock, matrix vector operation needs to be done. For our implementation, the matrix is too large and the computation per iteration is O(m n) where n is the number of nodes and m is the number of arcs of the network. Therefore it is not feasible to implement this method for this problem. In [6], Hyuenbo, Cho, Kumaran and Wysk use graph theory to detect impending deadlock. In order to do that, bounded circuits defined in [6] have to be found. The number of bounded circuits for our network is very large since the network in too complex and hence this method is also dropped.

25 Chapter 3 Deadlock Prediction Algorithm 25 In order not to have a cyclic deadlock occurring, one strategy is to limit the number of vehicles for the entire system to be smaller than the minimum number of nodes in the smallest possible cycle. With this ensured, a cyclic deadlock will not possibly occur as there will not be enough vehicles to form a cyclic request of resources i.e. zones. However, this is not desirable since the AGVS will not be gainfully utilized Deadlock prediction algorithm Since there are suitable no methods in the literature that can predict deadlock very fast for our problem, a new approach is developed to satisfactorily solve this problem. First, algorithm used for predicting the deadlock for one zone step is presented and then later in the section the algorithm for two zones step is presented. The algorithm that is used for one zone step is as follows: The following is the definition of the numbers in Figure Extract the location (L p ) (i.e. the control points) of its next zone of the selected vehicle (say V i ) that is about to enter a new zone. For every sampling time i.e. 1.5 sec to 2 sec, a check is done to see if a vehicle has moved to a new zone or not. If it has, the vehicle is selected so that a deadlock prediction for its next zone step is done. 2. Check whether this next zone (L p ) is occupied by another vehicle. 3. Extract the location (L q ) of V i s next 2 zone (i.e. the next next zone). 4. Check whether any other vehicle occupies L q. 5. Extract next zone location (L r ) of the vehicle that is occupying L q and update L q to the location L r. 6. Return vehicle is blocked. 7. Return vehicle is safe to proceed, deadlock is not predicted. 8. Check whether L p is equal to L q. 9. Return vehicle is not safe to proceed, deadlock is predicted.

26 Chapter 3 Deadlock Prediction Algorithm Not Occupied 6 Not occupied 4 Occupied 7 Not Equal 5 Equal Figure : Flowchart of the algorithm used to predict the deadlock (one zone step). Let s look at an example: 1 AGV 1 2 AGV1 s next next location AGV AGV 2 4 AGV 3 Figure : Illustration of one zone step deadlock prediction. The example in figure shows four vehicles AGV1 to AGV4 and the shaded nodes are the locations of the vehicles. The arcs in each of the node are pointing to the next location node of the vehicle s route for e.g. AGV4 s next location will be node 2. Following the given algorithm for the one zone step deadlock prediction, say AGV1 is about to enter a new zone i.e. node 2. It checks whether node 2 is occupied (Here, the

27 Chapter 3 Deadlock Prediction Algorithm 27 node is free). It then checks its next next node, which is node 3. It finds that AGV2 is occupying the node and hence, AGV2 s next node is checked, which is node 4. AGV3 is found to be occupying node 4 and then it continues to check AGV3 s next node i.e. node 5 and finds that AGV4 is occupying it. Finally it checks that AGV4 s next node i.e. node 2 is the same node that AGV1 wants to enter to. If AGV1 is allowed to enter node 2, there will be a cyclic request of resources, which implies a cyclic deadlock. The algorithm will thus return a value saying that a deadlock is predicted at the next zone step. The avoidance measures will be discussed in the chapter 4. The computational complexity of the algorithm is in the worst case O(V 2 ) where V is the number of vehicles in the entire AGV system. This is because the worst case will be when the entire fleet of vehicles forms a huge cyclic deadlock. In a control system, it will be difficult to detect when an AGV exactly enters new zone i.e. just crosses the boundary line of the previous zone and the new zone. This is due to the sampling time, every 1.5-second data is sent to the central control system such that the detection of crossing a zone boundary exactly cannot be detected. In order to detect whether the vehicle has enter a new zone, a comparison of the previous sampled position and the newly sampled position of the vehicle is done. If there is a change in the zone, the vehicle has entered a new zone. Here, it is assumed that a vehicle cannot traverse an entire zone within 1.5 seconds. This algorithm has been implemented in a small-scale model consisting of 8 vehicles and 14 nodes, and the simulations show that the system is deadlock free as far as cyclic deadlock is concerned. The avoidance measure used in this small model is the wait and proceed which is discussed in Chapter 4. The large-scale model was also implemented and it exhibits no form of cyclic deadlock. The results obtained for the large-scale model are presented in chapter 6. It is possible to extend this idea to the two-zone step deadlock prediction. The purpose of this is basically to facilitate for a better performance of the system. If deadlock is

28 Chapter 3 Deadlock Prediction Algorithm 28 predicted earlier, then a better avoidance measure can be taken. For example, when a vehicle s destination is not in the predicted deadlock region, then the vehicle can be rerouted in order to avoid congestion in the potential deadlock region. A disadvantage of this form of prediction will be that mild approximations are done here. These kinds of approximations come into effect because the vehicles do not travel from one point to another in exactly the theoretical time required. This difference between the expected time and the actual time taken creates an error. This error of prediction gets larger as more zone steps are predicted in advance. The proposed two-zone step prediction algorithm is shown in appendix C.

29 Chapter 4 Deadlock Avoidance 29 4 DEADLOCK AVOIDANCE As we have seen earlier, there are to ways of solving the deadlock problem: detection resolution and prediction avoidance. AGV is an expensive resource and hence, the total downtime for the system must be minimized. Hence a prediction avoidance strategy is better because the strategy makes sure that no deadlocks occur and hence it results in better operations and higher throughput. In the earlier chapter we had discussed regarding the deadlock prediction. Now, we shall see how deadlock avoidance is done. There are two strategies used as an avoidance measure: Wait and proceed and Rerouting. The following is a brief description of both the avoidance strategies. Wait and Proceed In this strategy, when a vehicle predicts a deadlock in its route, then the vehicle stops at the same location and waits until at least one vehicle gets cleared from the predicted deadlock region. Rerouting Another way of avoiding deadlock is by using a dynamic routing system. The system proposed is not entirely dynamic due to the time constraints i.e. the decision of rerouting and the new routes are to be given back to the control system within 2 seconds. Hence, a semi-dynamic routing strategy that computes static routes taking into consideration the traffic congestion effects is proposed as a solution to the avoidance problem. The following sections discuss in detail the Deadlock Avoidance strategy. Computational results along with the performance measures are included to compare the two proposed strategies.

30 Chapter 4 Deadlock Avoidance 30 The first strategy is fairly simple as it halts the vehicle until the deadlock is cleared and then allows it to follow the original route to the destination. Hence the rest of the sections are devoted to describing the method by which the routes are re-computed. Also the computational issues that have been taken into consideration for faster solutions are described. 4.1 DYNAMIC ROUTING STRATEGY In the AGV system that is used at PSA, the routing system is as follows: 1. The work is assigned to a particular vehicle and the origin and destination information is passed to the routing system. 2. The travel time on the lanes is updated based on the projected congestion. Here, projected congestion means that the traffic information is projected in time and the congestion in future is calculated assuming that the AGV s proceeds according to expectation. 3. A shortest path is calculated with the projected congestion effects. 4. The vehicles move from the origin to the destination along the calculated route. In the above system, even if the projections are made as accurate as possible, in real time, we cannot expect the vehicles to be at an expected location at exactly the same time. For example, as shown in figure 4.1.1, there may be a delay in loading of a vehicle and due to that the vehicle under consideration may get delayed. Such a delay for one vehicle affects the entire traffic system and hence, we can almost always never assure that the actual vehicle distribution to be the expected distribution. Another reason for the difference in the expected and actual vehicle distributions is due to the acceleration and deceleration effects in the vehicle. The vehicle always tries to travel at top speed. But the vehicles must decelerate at turns and would have to stop when it is queuing up. These effects are very difficult to simulate before hand and this also causes a lot of problem in predicting the exact location of the vehicles.

31 Chapter 4 Deadlock Avoidance 31 Vehicles waiting to be served by the Crane. Vehicle waiting to pass Figure 4.1.1: Figure representing an example for a vehicle to be delayed in its travel. Due to the above-mentioned reasons and a host of other physical limitations, the static routing system is not the best routing policy that can be used for the AGV system. Hence a routing system that takes into consideration the real-time information would be a better solution to this problem. The route is calculated using the Dijkstra s algorithm to find the shortest path tree (SPT). As mentioned earlier, the proposed method is semi dynamic i.e. the arc weights are updated at regular intervals of time and during that period of time, the vehicles are expected to follow the routing plan. More specific details are available in the following sections Calculation of Shortest path The shortest path is calculated using Dijkstra s algorithm. The general outline of the Dijkstra s algorithm explained in detail by Ahuja, Magnanti and Orlin [8] is given below. Given a network G(V, E), where V : The set of Nodes E : The set of edges. d v S : The distance of node v from the origin node. : The set of Nodes in the SPT. S : The set of Nodes not in the SPT.

32 Chapter 4 Deadlock Avoidance 32 l ij : Length of arc (i, j) E. Pr (i) : The predecessor of node i in the SPT. 1. Initially, S is an Empty set and in the first step, the source node is added to this set d s = 0 Pr( s) = Null 2. The values d v is set to Infinity for all Nodes v S 3. Remove a node i in S and add it to the set S. 4. For every node j in the Forward star of i, do: If Then d > d + l d i i = d j j + l ij ij Pr( j) = i 5. The above operations are carried out till the optimality conditions are reached i.e. d i + l d ( i, j) E ij j Implementation specific details are available in the references [8] and [4]. The performance of the shortest path algorithms is dependent on the network and there are a lot of variants of the shortest path algorithms specific to the underlying network. Also, it has been shown by Gallo and Pallottino [4] that the performance of the algorithm is very much dependent on the kind of data structure used for representing the sets S and S. Even though there are a variety of variants in the shortest path algorithms, most of them use the above-mentioned strategy for finding the shortest paths. In the current study, the Dijkstra s algorithm has been implemented using the queue data structure Storage of Routes Since the strategy adopted is semi dynamic, we need to recalculate new routes only when one of the condition holds:

33 Chapter 4 Deadlock Avoidance 33 The AGV reaches the Destination and a new job is assigned to that particular vehicle. The deadlock Prediction Algorithm predicts the formation of a deadlock and requests for a new route for the AGV. Since the formation of deadlocks is not very frequent, we need not re-compute the shortest path every time an AGV enters a new zone. Hence, the routes are stored in a table and when an AGV requests for its next location, the next zone is returned for the particular vehicle. This also saves a lot of computational time. When the AGV predicts a deadlock, it first calls the shortest path code. After the route is computed, it requests for the next node. Figure illustrates an AGV that requests for re-routing and then moves in the new path. In the figure , the new route is computed because the AGV predicts a deadlock to be formed. If the prediction algorithm finds its original route to be clear then the route need not be computed again. In such a case, the route is directly obtained from the stored information. Destination Cyclic Deadlock Predicted Original Route New Route Figure : AGV predicts a deadlock and changes its route Updating the Arc Weights Another important and computationally expensive step in our routing strategy is that before the shortest path is computed, the arc weights must be updated. The shortest path

34 Chapter 4 Deadlock Avoidance 34 is computed based on the arc weights and if they are not updated, the system will always return the same route. The arc weight considered for the calculation of the shortest path is basically the traveling time on each arc. If there is no traffic, then the traveling time on any arc is approximately the same. It is approximate because of the effects of acceleration, slowing down at turns etc. Even though the travel time is affected by the above-mentioned factors, their effects are minimal. Severe delay is actually caused by the congestion due to the AGV traffic in particular paths. Another major reason for considering the congestion effects is that it helps in creating good routing schedules. It has been shown by Leighton, Maggs and Rao [11] that a routing schedule in O(c + d) can be constructed for a given layout. Here, c is the maximum congestion and d is dilation i.e. the length of the longest path. Hence, reduction in the values of c and d has a direct impact on the schedule length. They show that given the O-D pairs and their paths, a schedule of length O(c+d) can be constructed. Hence, while rerouting, we need to take care that we try not to increase the congestion and dilation. This can be achieved by updating the arc weights with the congestion factor and hence updating the weights becomes an important step. It should be noted that when we find shortest paths, then we try not to increase dilation. At the same time, if we update the arc weights with the congestion effects, we tend not to use the congested arcs. Hence we will obtain routes in which the values of c and d are maintained at a smaller value. Even though the results were obtained for packet routing networks, the consideration of congestion and the dilation together would be crucial for obtaining good routing schedules even in the AGVS case. However, there are few differences in the case considered in [11] and the AGV routing problem. This is because in [11], the problem is of packet routing and the travel time for the packets along the arcs is very small. Also

35 Chapter 4 Deadlock Avoidance 35 along all arcs, the travel time can be considered equal for the data packets, which is not the case in the AGV routing problem. There is not much literature available on dynamic updating of arc weights on large networks and hence, we have devised a computationally cheap method for doing the above operation. The figure is a simple sketch of the method in which the arc weights are updated. The figure represents the path that a vehicle is originally assigned to and also due to prediction of deadlock, the route has been changed as shown. The Adjacency matrix entries are appropriately changed as seen in table and table O D 3 4 Original Route New Route Figure Illustration for updating Arc Weights Node O D O 0 old Lo 1 old Lo old L old L 2 D 3 0 old L old L 4 D Table Original Adjacency Matrix

36 Chapter 4 Deadlock Avoidance 36 Node O D O 0 L old k o1 L old o 3 + k 1 0 L old 12 k 2 0 L old 2 D k 3 0 L old 34 + k 4 0 L old 4 D + k Table Adjacency Matrix after rerouting one vehicle L new ij = L old ij + k ( i, j) NewRoute L new ij = L old ij k ( i, j) OldRoute L new ij = L old ij Otherwise Figure : Formula for updating arc weights In the tables, the value k is a positive constant. The magnitude of k depends on the base values of L ij i.e. we can consider mentioned in figure basic k = L ij. Here, we simply use the use the formula The value of L ij changes dynamically with the number of vehicles using the arc (i, j). Each arc (i, j) has a basic weight associated with it, which is L basic ij. When there are no vehicles using the arc, then the arc weight is basic L ij. Hence, the arc weight will always be greater than or equal to the basic value i.e. L L. basic ij new ij A first look at this algorithm gives a feel that the operation count is O(n 2 ). But, the updating procedure is made simple because at the time of calculation of the routes, we know both the new route and the old route. Hence, we can just follow the arcs in the routes and now update procedure takes at most O(2n) which is an impossible worst case. But, in any route, we will not be traveling through all the nodes and hence, the number of operations for this procedure is much lesser: typically O(1).

37 Chapter 4 Deadlock Avoidance 37 If we update the weights as shown above, then we penalize all the arcs in a route equally. This is not a good strategy because an arc that is reached by an AGV1 at a much later time can be used now by another vehicle. Hence in the implementation, the weights are updated in such a way that the additional weight is inversely proportional to the distance of the arc from the current location. An example of such an updating procedure is given in figure This would be a more appropriate updating procedure since unlike the data packets considered in [11], in the AGVS, the time taken for a vehicle to reach an arc plays an important role in determining the queue for using that arc. K K K K K + ξ K + α ξ K + α 2 ξ K + α 3 ξ K: Actual arc weight 0 < α < 1.0 ξ: Additional Arc weight Figure : Arc weight updating with varying weights Typical value of α used is 0.9 and ξ is the actual arc weight. The Table compares the performance of the rerouting strategy with constant and varying arc-weight updating. Each trial in the table is an experiment with 500 O-D pairs. The routes are computed and the deadlock prediction strategy is simulated. The table shows the average route length and the maximum route length. It should be noted that in all the cases, the average route length is lesser when the varying arc weight updating strategy is used. Also, it can be noticed that the maximum route length in the varying arc weight updating case is less than or equal to the value constant weight updating case. This means that in the AGVS case, if the arc weights are updated with varying weights as explained, then the dilation will be lesser than the constant weight case. The value of c the congestion was same for all the cases showing that the varying arc weight is a better updating strategy. The best values are highlighted in the table.

38 Chapter 4 Deadlock Avoidance 38 Trial Constant Arc-weight updating Varying Arc-weight updating Average route length Maximum route length Average route length Maximum route length Table : Comparison of the different Arc weight updating strategies Improvements in Computation speed The Shortest path code is one of the main ingredients of the solution proposed in this project. The code is run many times and hence any minor improvements in the performance of the algorithm will result in drastic improvements of the performance of the entire routing system. The Dijkstra s algorithm is used to find the SPT and the algorithm terminates only when all the nodes are permanently labeled. But, in case of our rerouting problem, we need to find the shortest path between the source and the destination only. If we are able to stop the Dijkstra s algorithm immediately after the required path is found then we can expect a definite improvement in the running time of the algorithm. With this motivation, we can take a second look at the Dijkstra s Algorithm. We note that a node is permanently labeled only when the distance between the origin and that particular node is the minimum possible distance. This implies that when the destination node is permanently labeled, then we have already obtained the shortest path between the origin and the destination. Hence, we can stop the operation of the algorithm once the destination node is permanently labeled. In the implementation, when all the arcs (i, d) E are scanned, then the destination node will be permanently labeled and we can stop the algorithm. Theoretically, there is no improvement in the operation count for the algorithm. But experiments show that in most

39 Chapter 4 Deadlock Avoidance 39 cases, this enhancement provides considerable improvement in the computational speed of the algorithm. Table shows the comparison between the computation times taken for calculating shortest paths between 25 O-D pairs using this strategy as apposed to finding the entire SPT using Dijkstra s algorithm. The time mentioned in the table is the system time as returned by the command timex in SGI-UNIX system. Trail Time taken for finding SPT (Sec) Time taken for finding Shortest path between 25 OD pair (Sec) Table : Comparison of computation times for two different implementations of Dijkstra s algorithm. We note from the table that the performance of the partial implementation of the Dijkstra s algorithm is usually better than the full implementation. Even though the improvement is not drastic in certain cases, it is to be noted that the shortest path needs to be called very frequently and even small improvements in speed of computation is important. We also note that the performance of the Dijkstra s algorithm is very good for the network. There may be many reasons for this exceptionally good performance. One of them might be that the AGVS layout is unlike any regular road network and also it is very sparse.

40 Chapter 5 Implementation 40 5 IMPLEMENTATION In the following sections, a brief description of the simulation software, AutoMod, and the implementation details of the one-zone step deadlock prediction in AutoMod language is provided. 5.1 AUTOMOD SIMULATION SOFTWARE AutoMod is a simulation software that consists of modules for the Automated Guided Vehicle Systems. Basically, a layout of the entire network and tasks has to be set up. The task consists of vehicles picking up the load, which is a container in our case, and delivering the container to its desired destination. The destination can be either a storage yard or a ship. To create the model, certain systems (AGVS, Process) have to be created Items required building a model in AutoMod In AutoMod, it is necessary to first create a movement system. In our case it is the AGVS. Figure is an example for the AGVS layout. The layout consists of control points marked in the figure as X. Each control point has a unique label. Loads or containers in this case enter and exit the movement system through the control points. When the load enters the movement system, a vehicle will be assigned to carry it to its required destination. The paths, which are the lines, represent the way a vehicle can move. A path can be one directional or bi-directional. More information can be found in the paper by Reveliotis [9]. With the movement system created, the next step is to create a process system. A process system simply governs the relationship between loads, resources, and movement systems. In the process system, loads, resources, and queues are defined. In addition to these physical model entities, process procedures are created. Process procedures are like to do lists for loads.

41 Chapter 5 Implementation 41 Figure : An example of AGV path layout. The crosses shown here are the control points by which the vehicle will stop at if necessary. In a process procedure, instructions are written for the load to follow, telling it what to do next. The process procedure is written in AutoMod language. For our case, the loads would be containers from the ship and they will be transported either to another ship or container storage yard. The AGV s are their modes of transport. Later in this chapter, a description will be done on how the workflow of the PSA port is simulated using a simplified model. In order to tell how the AGV to go about their routes, vehicle scheduling in AutoMod is needed. Vehicle scheduling is the process of directing vehicles to retrieve and deliver loads, or travel to a parking location. There are three ways to schedule vehicles in a movement system: Creating scheduling lists. Creating and controlling scheduled jobs. Defining vehicle procedures and functions. Scheduling lists are lists of locations that allow the user control where vehicles look for work, the order in which they pick up loads, and where they park. These are in the form of work list, park list, load activation list, vehicle activation list and load search list. Among these, only the work list and park list are used. A work list is a list of locations where work can be found. All vehicles search this list when they finish their current job and look for a new one. If no new job is found, the park list gives a list of locations where

42 Chapter 5 Implementation 42 the vehicle can sleep. To determine whether it is fine to park at that location, a function called park ok function is used. This function can be used to evaluate some conditions and decides whether it can sleep at that location. The flowchart of how the vehicles use lists to move and pick up loads is shown in Appendix A section 8.1. Scheduling jobs are tasks that are waiting to be completed by a vehicle. Scheduled jobs are created automatically as a result of vehicles finding work or a parking location on a scheduling list. However, they can also be created using actions in a procedure or function. Controlling scheduled jobs allows the user to change a vehicle s current task, as well as view and cancel the waiting tasks that a vehicle has not yet completed. The flowchart of how the vehicles behave as schedulers using vehicle procedures is shown in Appendix A section 8.2. Vehicle procedures and functions allow the user to perform custom processing as a vehicle travels through a movement system. Using vehicle procedures and functions the user can control scheduled jobs, accept or reject work and parking locations found on a scheduling list, define an alternate route to a vehicle s destination, and more. The details of the scheduling lists and jobs are not discussed here. In order to implement our one-zone step algorithm mentioned in Chapter 3, the vehicle procedure and functions are used. The vehicle procedure and functions are discussed in detail in the next section. The flowchart of how vehicles behave as movers using vehicle procedures and functions is shown in Appendix A section Vehicle procedures and functions Vehicle procedures and vehicle functions operate like process procedures and functions; the vehicle performs the actions that are defined for it. Vehicle procedures and functions allow the user to have direct control over vehicles. Vehicle scheduling is comprised of two parts, the mover and the scheduler. The vehicle can be thought of as a taxi: the load is the passenger, the mover is the driver, and the

43 Chapter 5 Implementation 43 scheduler is the dispatcher. When the taxi has a passenger (a load), the vehicle goes where the passenger wants to go. As soon as the taxi is empty, the scheduler/dispatcher tells the mover/driver where to take the vehicle, and whether to find work, to park, or to do something else. Once the vehicle has received the scheduler/dispatcher s instructions, the mover/driver takes responsibility for delivering the vehicle to the correct location quickly and safely. This is where the vehicle procedures and functions are used to implement the one-zone step prediction and avoidance measures for a cyclic deadlock. A description of the syntax of defining a process, procedure and function is included in the next section Specification of the workload in PSA In this project, a simplified specification of how the workload is modeled to suit the actual workload is used. Before doing this, the definition of important terms is provided. Yard cranes are cranes that carry containers from the vehicles to the storage yard or vice versa. Bridge cranes are yard cranes that run on concrete platform. A bridge crane is shown in figure Quay cranes are cranes that carry containers from the vehicles to the ship or vice versa. A discharging process is the discharging of containers from the ship to the container storage yards. A loading process is the loading of containers from the container storage yard to the ship. The specifications are as follows: A berth is randomly assigned to an arriving ship. The arrival of the ship is assumed to be every ½ hr interval. Each container storage yard is made of 9 clusters. Each cluster is made up of 3 control points.

44 Chapter 5 Implementation 44 At any one time, a single cluster can only be used by a quay crane for either discharging or loading purposes. It is possible to move the quay cranes but this movement is not simulated here. Four quay cranes are assigned per vessel. Percentage of container handled by each quay crane: ƒ1 st quay crane: 18% ƒ2 nd quay crane: 25% ƒ3 rd quay crane: 27% ƒ4 th quay crane: 30% Percentage of discharge containers follows a triangular distribution of (0,50,100) Amount of loading containers is the number of discharge containers. Each batch (number of containers) per cluster that is handled follows a triangular distribution of (1,12,24). The time taken for a quay crane to load and unload a container follows a triangular distribution (1.25, 1.63, 2.00) minutes. The time taken for a bridge crane to load and unload a container follows a triangular distribution (2.00, 2.50, 3.00) minutes. With this, the next section will touch on the implementation of the one-zone step deadlock prediction and avoidance (wait and proceed) algorithm Implementation of the one-zone step deadlock prediction and avoidance algorithm in AutoMod To implement the above algorithm, the use of vehicle procedures and function is needed for the wait and proceed avoidance algorithm. The prediction algorithm is defined as a function predict deadlock function which will the following values: 0: indicates no deadlock predicted or vehicle blocking its path on the next node. 1: indicates that there is a vehicle blocking its path on the next node. 2: indicates that there is a deadlock predicted if it moves into its next node. Using the above vehicle procedures and functions (see Appendix B for the definitions), the avoidance measure is implemented in the following manner:

45 Chapter 5 Implementation The route of each vehicle is passed to variable list say R using the move to deliver and move to retrieve procedure. These procedures are executed only when there is a new task that needs to be done. Thus it has the current point as the starting point and a destination point with a task (e.g. delivering a container to some storage yard). A new route from the starting point to the destination point has to be obtained. The route is obtained from the built in shortest path algorithm in AutoMod or from the rerouting function. At each point in time, the routes of all the vehicles are known except when the vehicle is loading or unloading the container and the next job is still unknown. This creates a problem for the deadlock prediction algorithm as the algorithm depends on the assumption that all the vehicle s routes are known. This point will be addressed in the later section. 2. Using the vehicle route list, R, the location selection function is used to force the vehicle to move according to R. The original path of the vehicle is the shortest path from AutoMod. The reason for using location selection function is the ability to implement a new routing strategy and asking the vehicle to follow the route given by this new strategy. 3. At each intermediate control point besides the start and destination control point along the vehicle s route, the vehicle will call the deceleration ok function which in turn calls the predict_deadlock function to check whether it will have to signal the vehicle to stop at the approaching control point. If a deadlock is predicted, the vehicle will stop and wait at the control point until the deadlock clears. To check whether a deadlock has been cleared, the vehicle will have to invoke the leaving station procedure. This is discussed next. 4. Whenever a vehicle stops at a control point, the systems will check whether there is a process that needs to be executed first. If there are none, the leaving station procedure will be called. In the leaving station procedure, the predict_deadlock function will be called in discrete time steps of 0.2 seconds until the function returns that it is okay to

46 Chapter 5 Implementation 46 move into the next control point (node). This is the wait and proceed avoidance measure that is mentioned in the previous chapter. The detailed explanation of how the vehicle uses its vehicle procedures and functions is shown in Appendix A section 8.3. An example is given in the following (see Figure ), suppose that AGV1 wants to move into its next control point and is currently stopping at its current control point. When AGV1 is about to move into its next control point, it calls the leaving station procedure and this in turn calls the deadlock prediction algorithm. In this example, the deadlock prediction algorithm will return that a cyclic deadlock is predicted if AGV1 moves into its next control point. At this point in time, the leaving station procedure for AGV1 will repeatedly call the deadlock prediction algorithm in discrete time steps of 0.2 seconds (you can always change the time step) until no deadlock is predicted or no vehicle is blocking its next control point. Meanwhile, the rest of the vehicles are going about their assigned task. Figure : An illustration of an impending one-zone step deadlock situation. The small cubes represent the AGV while the bigger one represents that the AGV is carrying a load.

47 Chapter 5 Implementation 47 The same thing applies even if AGV1 is approaching the current control point (the control point shown in the figure ). The only difference is that the decelerate ok function will be called by AGV1. When it detects that a deadlock is predicted using the predict_deadlock function, the decelerate ok function instructs the vehicle to stop. When the vehicle stops at the current control point as shown in the figure , the next thing it looks for is whether a process is associated with it. In this example, there are no processes associated with this control point and the leaving station procedure is called, as the vehicle is about to leave its current control point. After this, it does the same thing as described previously Difficulties faced during the implementation in AutoMod In this section, a discussion of some of the difficulties encountered and how to resolve them during the implementation of the deadlock prediction-avoidance algorithm is described Idling vehicles at destination control points A problem encountered during the testing of the simulation is that if no work is assigned to the vehicle after it has delivered its container either to the storage yard or ship, it will sleep or park at that location. This results in a form of deadlock where the vehicle will not move off until a new job is assigned to it. Thus if there is another vehicle which its destination point is the point that the sleeping vehicle is, it will have to wait until the sleeping vehicle is assigned a new job and move away from the destination point. This results in wastage of time. To resolve this situation, an algorithm is presented that performs a bumping action. This bumping action is done when a vehicle wants to move into the location where the sleeping vehicle is positioned. The bumping vehicle will signal the sleeping vehicle to wake up and either sleep elsewhere or find a job to do. Each vehicle in the model has the same attributes as those declared for the loads. In this implementation, a load attribute called LABumpFlag is created. The vehicle uses this to determine if another vehicle has bumped it. By looking at this attribute, the bumped

48 Chapter 5 Implementation 48 vehicle knows whether it can park at that location or not. If it cannot park at that location, it will search for a next location in the park list provided by the user to park. If a vehicle is sleeping at a destination location (point A) of another vehicle, the second vehicle will not be able to move to that location. In most cases, the second vehicle comes no closer than the control point (point B) immediately upstream from the destination point. In this implementation, the sleeping vehicle will be bumped from that upstream control point i.e. point B. In order to perform this bumping action, the passing station function is used to test if a vehicle is at point B, and to test if there is a sleeping vehicle at point A. If there is a sleeping vehicle at point A, the bumping vehicle must change the attribute of the bumped vehicle such that the attribute will wake the vehicle up by calling another function called bumpavehic. This function in turns calls a C-function called wakeavehic, which is available in AutoMod C-library, to wake up the bumped vehicle. In short, this is how it works: 1. Whenever a vehicle passes a control point (passing station function), it checks whether it is upstream of any of the destination (point A). If it is, the bumpavehic function is called and this function checks whether there is a vehicle sleeping in that location. 2. If there is a sleeping vehicle at the destination control point, the function wakeavehic will be called. This function performs the task of waking up the vehicle. 3. This woken up vehicle then searches its work list for work and if there isn t any, it then proceeds to check its park list of a list of locations to park. The destination control point will be exempted from the park list by the attribute LABumpFlag. 4. In any circumstances, the sleeping vehicle wakes up and leaves the destination control point and the bumping vehicle can thus move into that point.

49 Chapter 5 Implementation 49 The details of how to create the attributes, work list, park list and AutoMod user defined functions, vehicle functions and procedures and internal function are found in [9] Multi-cycle deadlock Another deadlock situation might occur due to the one-zone step deadlock prediction and the wait and proceed avoidance algorithm. This form of deadlock is formed because of multiple loops sharing only one unoccupied node. An illustration is given in figure AGV2 Cycle 1 Next next node of AGV1 and AGV3 AGV1 Next node of AGV1, AGV2 and AGV3 Cycle 2 AGV3 Next next node of AGV2 Figure : An illustration of the multi-cycle deadlock situation. In the figure , we see that the AGV1 wants to enter the empty node. It s next next node the same as that of the next next node of AGV3. Now, AGV1 runs the deadlock prediction algorithm and finds an impending deadlock. According to wait and proceed, AGV1 waits for the deadlock to clear. This is the same for the AGV2 and AGV3 and their respective next next position is as shown. AGV2 and AGV3 will thus wait for the deadlock to clear before proceeding. Here, the cyclic deadlock is avoided by the wait and proceed measure but it in turn creates another deadlock, which is not cyclic, but has many cycles share a single empty resource. For this kind of a deadlock to occur, the following must be true: There must be more than one cycle. There must be a common empty node shared by the cycles.

50 Chapter 5 Implementation 50 The cycles must be unique i.e. different start node and end node (excluding the empty node). The next next position of the vehicle at the end of each cycle must be the start of another cycle. Simulations show that this kind of deadlock typically arises due to many vehicles entering an area in the berth. The avoidance measure for this deadlock is primarily one of the following: To have a routing schedule to take into account congestion i.e. the rerouting strategy described in chapter 4. Limit the number of vehicles entering an area on the berth at any time. Detection and resolution: To resolve the deadlock, we might want to check along the cycle and move the AGV s to into the working lanes to disperse the cycle and clear the deadlock situation. In the current implementation, the deadlock is resolved in the following way. AGV2 Cycle 1 Next next node of AGV1 and AGV3 AGV1 Next node of AGV1, AGV2 and AGV3 Cycle 2 AGV3 Node that does not cause a deadlock Next next node of AGV2 Figure : Resolution of Multi-Cycle Deadlock Take one of the AGV at the end of each cycle involved in this deadlock for e.g. AGV2. Check the forward stars of the common node.

51 Chapter 5 Implementation 51 For each forward stars, check whether AGV2 will enter a cyclic deadlock if it enters the common node. If no impending deadlock is detected, then reroute it through this forward star. Otherwise, check other forward stars. The method to resolve this is not a complete resolution of this multiple cycle deadlocks, it fails when all the forward stars of the common node is an impending cyclic deadlock. For our case, this form of deadlock occurs in the ship loading/unloading area where there are plenty of forward stars (i.e. each node can go to a lot of other nodes). Thus, the probability of entering a situation of all the forward stars having a impending cyclic deadlock is almost zero, provided that the number of vehicles in the berth area is kept at a reasonable value. This method was implemented and simulations have shown that this multiple cyclic deadlock is resolved Deadlock detection and resolution The earlier part of the document described deadlock prediction. Even though the prediction phase is theoretically fool proof, a deadlock may occur due to the uncertainty of the vehicle route during the loading and unloading process mentioned in section Take for example, a vehicle carrying a container reaches its destination and the unloading process (crane lifting the container) begins. During this period, the next job of the vehicle is still unknown. As it was not known how long the unloading process would take. Without a next job, there would be no start and destination points and thus no route for the vehicle. The simulation environment requires that all vehicles should have a starting and destination point for proper working of the algorithm. In order to resolve this kind of situation, a virtual next control point will have to be created for the vehicle during its loading and unloading process. With this virtual point, it is sure that if the actual route of the vehicle s next job is through this virtual point, a deadlock would not occur. If the actual route of the vehicle s next point is not through this virtual point, a deadlock might occur. If a deadlock is detected, a new route will be scheduled that consist of the virtual control point. Take for example, see figure

52 Chapter 5 Implementation 52 Let us assume that AGV1 is unloading its container at the present control point shown above. It does not have a new job and therefore has no associated route. A virtual control point is referenced for AGV1 at that position when other vehicles are running their deadlock prediction algorithm. Thus if AGV1 is to actually move to the virtual control point when it receive its new route, a deadlock will not occur. This is because that every move is expected since each vehicle runs its deadlock prediction function. If AGV1 does not move to the virtual control point and instead the next control point is the position of AGV2, then a deadlock occurs if there is a cyclic request of their next control points shown in the above figure. The cyclic request occurs between AGV 1, 2, 3, and 4. Thus in this case, AGV1 detects a deadlock and it will then re-route through the virtual control point. This will ensure that no deadlock will occur. Figure : An illustration of the problem encountered. The source code for the above mentioned functions i.e. the one-zone step deadlock prediction and the vehicle procedures and functions in needed to call upon this function to simulate the actual movement of the vehicles, the bumping algorithm and the deadlock detection and resolve are shown in Appendix D. The source code is written in AutoMod language [15].

53 Chapter 5 Implementation C - CODES AND INTERFACING This part of the report serves as a documentation for the software codes written for the project. The previous section described the Implementation details of the Deadlock prediction algorithm in AutoMod. This section describes the data structures used for implementing the deadlock-avoidance algorithm and also the implementation specific details of the algorithm Data structure The Network is very sparse and hence using an adjacency matrix to store the network information is prohibitively expensive. Also, the computational complexity of the shortest path algorithm becomes O(n 2 ) when an adjacency matrix is used which is much higher than O(m.n). Here, n is the number of nodes and m is the number of arcs. Hence to reduce the storage space and to improve the computational complexity, a data structure as shown in figure is used. AdjMatrix [n] Node Number Node Name Forward star [k] Forward star distance [k] Figure Data structure used to represent the Network The node name field has been included for interfacing the C program with AutoMod. Instead of using an Array for the forward star and the distance fields, a linked list can be used. An array is used to prevent memory management problems in AutoMod. The value of k is the size of the largest forward star. The Network is read from a data file that has the format as shown in figure The Network generator generates this data file. Node Number Node Name FS [1] Distance [1] FS [k] Distance [k] Figure : Data file format.

54 Chapter 5 Implementation 54 In the implementation of the Dijkstra s algorithm, a queue data structure is used and the queue is implemented as an array. A linked list is the best way to implement the queue but since AutoMod does memory management, an array is used to avoid memory related conflicts. The structure of the queue item is shown in figure The information regarding the previous and next node is held so as to allow two-way searching along the queue. The computed routes are stored in table and when there is a request for the next node, this table is looked up and the next node is returned. When there is a request for reroute, the new route is computed and this table is updated. Q_Item Node Number Distance from Origin Previous Node Next Node Figure : Structure of the Queue Item The arc weight updating is done every time there is a request for reroute. The arc weights are updated based on route table and then the shortest path is computed. After the computation is done, the arc weights are reset back to the original values. This is an improvement over the classical Dijkstra s algorithm as a dynamic component is added Implementation of Dijkstra s algorithm As mentioned in the previous section, the Dijkstra s algorithm is implemented with queue as the data structure. An important variation from the standard SPT algorithm is that in this implementation, the algorithm is stopped when the destination node is scanned i.e. permanently labeled. The Queue is first in first out (FIFO) and hence, we can easily find out when the destination node is scanned. For example, we can have a flag on the queue location where the destination node enters and when that node is popped out, we know that it is permanently labeled. The overall implementation also includes a network generator that creates the AGVS layout and writes the information into the data file.

55 Chapter 6 Results and Discussion 55 6 RESULTS AND DISCUSSION The one-zone step deadlock prediction and avoidance algorithm was implemented first in a small-scale model for testing and later scaled to the actual model. The actual model layout consists of four berths and 80 AGV s. The workload generated follows the simplified version of the load distribution mentioned in section The effectiveness of the algorithm on the small-scale algorithm is discussed first followed by the actual model. 6.1 EFFECTIVENESS OF THE ALGORITHM ON THE SMALL-SCALE MODEL The testing of the algorithm was done in a path layout shown in Figure with 8 vehicles. The workload distribution is random. The avoidance measure used in the model was the wait and proceed method. The model was simulated for 52 weeks and no incident of a cyclic deadlock occurred. If the deadlock prediction and avoidance algorithm was not imposed, the model runs into deadlock in 20 minutes. The AutoMod export file for the entire small-scale model is attached with the report. The small-scale model can be implemented in the student version of AutoMod itself. 6.2 EFFECTIVENESS OF THE ALGORITHM ON THE ACTUAL MODEL The layout for the actual model used in the simulation is shown in Figure There are 80 AGV s in the actual model. The workload distribution was simulated according to the information given in section Figure 6.2.1: Layout of the Actual model

SIMULATION STUDY OF A DYNAMIC AGV-CONTAINER JOB DEPLOYMENT SCHEME

SIMULATION STUDY OF A DYNAMIC AGV-CONTAINER JOB DEPLOYMENT SCHEME 1 SIMULATION STUDY OF A DYNAMIC AGV-CONTAINER JOB DEPLOYMENT SCHEME By Cheng Yong Leong B.Eng. Electrical Engineering National University of Singapore, 2000 SUBMITTED TO THE SMA OFFICE IN PARTIAL FULFILLMENT

More information

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

DEADLOCK AVOIDANCE AND RE-ROUTING OF AUTOMATED GUIDED VEHICLES (AGVS) IN FLEXIBLE MANUFACTURING SYSTEMS (FMS) DEADLOCK AVOIDANCE AND RE-ROUTING OF AUTOMATED GUIDED VEHICLES (AGVS) IN FLEXIBLE MANUFACTURING SYSTEMS (FMS) MD. Saddam Hussain 1, B. Satish Kumar 2, Dr. G.Janardhana Raju 3 Email: 1 Saddam.mohd321@gmail.com,

More information

Dispatching Automated Guided Vehicles in a Container Terminal

Dispatching Automated Guided Vehicles in a Container Terminal Dispatching Automated Guided Vehicles in a Container Terminal Yong-Leong Cheng, Hock-Chan Sen Singapore MIT Alliance Program Karthik Natarajan National University of Singapore Chung-Piaw Teo Sungkyunkwan

More information

AGV Path Planning and Obstacle Avoidance Using Dijkstra s Algorithm

AGV Path Planning and Obstacle Avoidance Using Dijkstra s Algorithm AGV Path Planning and Obstacle Avoidance Using Dijkstra s Algorithm 1, Er. Atique Shaikh, 2, Prof. Atul Dhale 1, (Department of Automobile Engg, Mumbai University, MHSSCOE, Mumbai - 400008. 2, (Associate

More information

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

Proceedings of the 2017 Winter Simulation Conference W. K. V. Chan, A. D'Ambrogio, G. Zacharewicz, N. Mustafee, G. Wainer, and E. Page, eds. Proceedings of the 2017 Winter Simulation Conference W. K. V. Chan, A. D'Ambrogio, G. Zacharewicz, N. Mustafee, G. Wainer, and E. Page, eds. DESIGN AND SIMULATION ANALYSIS OF : A MULTIPLE-LOAD AUTOMATED

More information

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

Robust Integration of Acceleration and Deceleration Processes into the Time Window Routing Method Robust Integration of Acceleration and Deceleration Processes into the Time Window Routing Method Thomas Lienert, M.Sc., Technical University of Munich, Chair for Materials Handling, Material Flow, Logistics,

More information

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

Optimal Design Methodology for an AGV Transportation System by Using the Queuing Network Theory Optimal Design Methodology for an AGV Transportation System by Using the Queuing Network Theory Satoshi Hoshino 1, Jun Ota 1, Akiko Shinozaki 2, and Hideki Hashimoto 2 1 Dept. of Precision Engineering,

More information

Scheduling and Routing Algorithms for AGVs: a Survey

Scheduling and Routing Algorithms for AGVs: a Survey 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

More information

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

MODELING AND CONTROL OF THE AGV SYSTEM IN AN AUTOMATED CONTAINER TERMINAL MODELING AND CONTROL OF THE AGV SYSTEM IN AN AUTOMATED CONTAINER TERMINAL Qin Li, Jan Tijmen Udding, and Alexander Yu. Pogromsky Mechanical Engineering Department Eindhoven University of Technology Eindhoven,

More information

Container Terminal Modelling in Simul8 Environment

Container Terminal Modelling in Simul8 Environment Acta Technica Jaurinensis Series Logistica Vol. 6. No. 4. 2013 Container Terminal Modelling in Simul8 Environment G. Bohács, B. Kulcsár, D. Gáspár Budapest University of Technology and Economics 1111 Budapest,

More information

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

Optimal Design, Evaluation, and Analysis of AGV Transportation Systems Based on Various Transportation Demands Optimal Design, Evaluation, and Analysis of Systems Based on Various Demands Satoshi Hoshino and Jun Ota Dept. of Precision Engineering, School of Engineering The University of Tokyo Bunkyo-ku, Tokyo 113-8656,

More information

ARCHITECTURE OF FMS. Typical Elements of FMS. Two Kind of Integration. Typical Sequence of Operation

ARCHITECTURE OF FMS. Typical Elements of FMS. Two Kind of Integration. Typical Sequence of Operation Typical Elements of FMS ARCHITECTURE OF FMS Versatile NC machines equipped with automatic tool changing and inprocess gauging, with capability to carry out a variety of operations An automated Material

More information

Design and Operational Analysis of Tandem AGV Systems

Design and Operational Analysis of Tandem AGV Systems Proceedings of the 2008 Industrial Engineering Research Conference J. Fowler and S. Mason. eds. Design and Operational Analysis of Tandem AGV Systems Sijie Liu, Tarek Y. ELMekkawy, Sherif A. Fahmy Department

More information

Simulation of Container Queues for Port Investment Decisions

Simulation of Container Queues for Port Investment Decisions The Sixth International Symposium on Operations Research and Its Applications (ISORA 06) Xinjiang, China, August 8 12, 2006 Copyright 2006 ORSC & APORC pp. 155 167 Simulation of Container Queues for Port

More information

Industrial Engineering Applications to Optimize Container Terminal Operations

Industrial Engineering Applications to Optimize Container Terminal Operations Industrial Engineering Applications to Optimize Container Terminal Operations Asela K. Kulatunga* & D.H. Haasis+ *glink Postdoctoral researcher, University of Bremen Germany Senior Lecturer, Faculty of

More information

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

Simulation-Based Dynamic Partitioning of Yard Crane Workload for Container Terminal Operations Simulation-Based Dynamic Partitioning of Yard Crane Workload for Container Terminal Operations Xi Guo, Shell Ying Huang, Wen Jing Hsu and Malcolm Yoke Hean Low School of Computer Engineering Nanyang Technological

More information

DISPATCHING TRANSPORT VEHICLES IN MARITIME CONTAINER TERMINALS

DISPATCHING TRANSPORT VEHICLES IN MARITIME CONTAINER TERMINALS DISPATCHING TRANSPORT VEHICLES IN MARITIME CONTAINER TERMINALS by Pyung-Hoi Koo Department of Systems Management and Engineering, Pukyong National University, Busan, Korea Yongsoro 45, Namgu, Busan, South

More information

SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES

SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES Al-Naimi Assistant Professor Industrial Engineering Branch Department of Production Engineering and Metallurgy University of Technology Baghdad - Iraq dr.mahmoudalnaimi@uotechnology.edu.iq

More information

Operation and supply chain management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology Madras

Operation and supply chain management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology Madras Operation and supply chain management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology Madras Lecture - 37 Transportation and Distribution Models In this lecture, we

More information

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

A SIMULATION MODEL FOR INTEGRATING QUAY TRANSPORT AND STACKING POLICIES ON AUTOMATED CONTAINER TERMINALS A SIMULATION MODEL FOR INTEGRATING QUAY TRANSPORT AND STACKING POLICIES ON AUTOMATED CONTAINER TERMINALS Mark B. Duinkerken, Joseph J.M. Evers and Jaap A. Ottjes Faculty of OCP, department of Mechanical

More information

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

Development of deterministic collision-avoidance algorithms for routing automated guided vehicles Rochester Institute of Technology RIT Scholar Works Theses Thesis/Dissertation Collections 9-1-008 Development of deterministic collision-avoidance algorithms for routing automated guided vehicles Arun

More information

PETRI NET VERSUS QUEUING THEORY FOR EVALUATION OF FLEXIBLE MANUFACTURING SYSTEMS

PETRI NET VERSUS QUEUING THEORY FOR EVALUATION OF FLEXIBLE MANUFACTURING SYSTEMS Advances in Production Engineering & Management 5 (2010) 2, 93-100 ISSN 1854-6250 Scientific paper PETRI NET VERSUS QUEUING THEORY FOR EVALUATION OF FLEXIBLE MANUFACTURING SYSTEMS Hamid, U. NWFP University

More information

Development of Material Control System for Next Generation Liquid Crystal Glass

Development of Material Control System for Next Generation Liquid Crystal Glass Vol. No. Development of Material Control System for Next Generation Liquid Crystal Glass HASEGAWA Fumio : Senior Researcher, Control System Project Department, Products Development Center, Corporate Research

More information

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

Storage Allocation and Yard Trucks Scheduling in Container Terminals Using a Genetic Algorithm Approach Storage Allocation and Yard Trucks Scheduling in Container Terminals Using a Genetic Algorithm Approach Z.X. Wang, Felix T.S. Chan, and S.H. Chung Abstract Storage allocation and yard trucks scheduling

More information

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

Path Planning for Multi-AGV Systems based on Two-Stage Scheduling Available online at www.ijpe-online.com vol. 13, no. 8, December 2017, pp. 1347-1357 DOI: 10.23940/ijpe.17.08.p16.13471357 Path Planning for Multi-AGV Systems based on Two-Stage Scheduling Wan Xu *, Qi

More information

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

DEVELOPMENT OF OPERATION STRATEGY TO IMPROVE EFFICIENCY FOR TWIN AUTOMATED TRANSFER CRANE IN AN AUTOMATED CONTAINER TERMINAL DEVELOPMENT OF OPERATION STRATEGY TO IMPROVE EFFICIENCY FOR TWIN AUTOMATED TRANSFER CRANE IN AN AUTOMATED CONTAINER TERMINAL Byung Joo PARK 1, Hyung Rim CHOI 2 1 Research Professor, Department of MIS,

More information

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

Hybrid search method for integrated scheduling problem of container-handling systems Hybrid search method for integrated scheduling problem of container-handling systems Feifei Cui School of Computer Science and Engineering, Southeast University, Nanjing, P. R. China Jatinder N. D. Gupta

More information

A Method of Container Terminal Resources Scheduling Simulation Research Li Mingqi, Zhang Peng*, Du Yuyue

A Method of Container Terminal Resources Scheduling Simulation Research Li Mingqi, Zhang Peng*, Du Yuyue Joint International Mechanical, Electronic and Information Technology Conference (JIMET 2015) A Method of Container Terminal Resources Scheduling Simulation Research Li Mingqi, Zhang Peng*, Du Yuyue College

More information

Chapter Five: Contents

Chapter Five: Contents Volume Three Modules 03 September 2003 i Chapter Five: Contents (Traffic Microsimulator 03 September 2003 LA-UR 00-1725 TRANSIMS 3.0) 1. INTRODUCTION...1 1.1 OVERVIEW... 1 1.2 TRAFFIC MICROSIMULATOR MAJOR

More information

Embedded EWM S/4HANA Basic vs. Advanced 1709FP1

Embedded EWM S/4HANA Basic vs. Advanced 1709FP1 Embedded EWM S/4HANA Basic vs. Advanced 1709FP1 March 2018 Basic Principles - Pricing of EWM S/4HANA Price EWM in S/4 only when customer uses advanced features List of advanced features Material Flow System

More information

AGV Controlled FMS. The ITB Journal. Fergus G. Maughan. Volume 1 Issue 1 Article 5

AGV Controlled FMS. The ITB Journal. Fergus G. Maughan. Volume 1 Issue 1 Article 5 The ITB Journal Volume 1 Issue 1 Article 5 2000 AGV Controlled FMS Fergus G. Maughan Follow this and additional works at: http://arrow.dit.ie/itbj Part of the Other Operations Research, Systems Engineering

More information

Blocking Effects on Performance of Warehouse Systems with Automonous Vehicles

Blocking Effects on Performance of Warehouse Systems with Automonous Vehicles Georgia Southern University Digital Commons@Georgia Southern 11th IMHRC Proceedings (Milwaukee, Wisconsin. USA 2010) Progress in Material Handling Research 9-1-2010 Blocking Effects on Performance of Warehouse

More information

Real-Time and Embedded Systems (M) Lecture 4

Real-Time and Embedded Systems (M) Lecture 4 Clock-Driven Scheduling Real-Time and Embedded Systems (M) Lecture 4 Lecture Outline Assumptions and notation for clock-driven scheduling Handling periodic jobs Static, clock-driven schedules and the cyclic

More information

Scheduling of Three FMS Layouts Using Four Scheduling Rules

Scheduling of Three FMS Layouts Using Four Scheduling Rules Scheduling of Three FMS Layouts Using Four Scheduling Rules Muhammad Arshad1 m.arshad8@bradford.ac.uk Milana Milana1 m.milana@student.bradford.ac.uk Mohammed Khurshid Khan1 M.K.Khan@bradford.ac.uk 1 School

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION 1 CHAPTER 1 INTRODUCTION 1.1 MANUFACTURING SYSTEM Manufacturing, a branch of industry, is the application of tools and processes for the transformation of raw materials into finished products. The manufacturing

More information

Container Terminal Simulation with Flexsim CT

Container Terminal Simulation with Flexsim CT Container Terminal Simulation with Flexsim CT 2007 Planning Example Trucks/week 10.000 Trucks/day 1.428 Trucks/hour 60 Interarrival time 1 min Static Deterministic (Excel, Queuing Theory) Service time

More information

University Question Paper Two Marks

University Question Paper Two Marks University Question Paper Two Marks 1. List the application of Operations Research in functional areas of management. Answer: Finance, Budgeting and Investment Marketing Physical distribution Purchasing,

More information

Examining and Modeling Customer Service Centers with Impatient Customers

Examining and Modeling Customer Service Centers with Impatient Customers Examining and Modeling Customer Service Centers with Impatient Customers Jonathan Lee A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF BACHELOR OF APPLIED SCIENCE DEPARTMENT

More information

DEADLOCK ANALYSIS IN FMS IN THE PRESENCE OF FLEXIBLE PROCESS PLANS A SIMULATION STUDY

DEADLOCK ANALYSIS IN FMS IN THE PRESENCE OF FLEXIBLE PROCESS PLANS A SIMULATION STUDY ISSN 1726-4529 Int. j. simul. model. 4 (2005) 2, 53-66 Original scientific paper DEADLOCK ANALYSIS IN FMS IN THE PRESENCE OF FLEXIBLE PROCESS PLANS A SIMULATION STUDY Jain, A. * ; Jain, P. K. ** & Singh,

More information

Clock-Driven Scheduling

Clock-Driven Scheduling NOTATIONS AND ASSUMPTIONS: UNIT-2 Clock-Driven Scheduling The clock-driven approach to scheduling is applicable only when the system is by and large deterministic, except for a few aperiodic and sporadic

More information

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

Routing automated guided vehicles in container terminals through the Q-learning technique DOI 0.007/s259-00-002-5 ORIGINAL PAPER Routing automated guided vehicles in container terminals through the Q-learning technique Su Min Jeon Kap Hwan Kim Herbert Kopfer Received: 23 August 200 / Accepted:

More information

Investigating the Influences of Automated Guided Vehicles (AGVs) as Material Transportation for Automotive Assembly Process

Investigating the Influences of Automated Guided Vehicles (AGVs) as Material Transportation for Automotive Assembly Process Journal of Mechanical Engineering Vol SI 4 (1), 47-60, 2017 Investigating the Influences of Automated Guided Vehicles (AGVs) as Material Transportation for Automotive Assembly Process Seha Saffar * Centre

More information

Discrete Event simulation

Discrete Event simulation Discrete Event simulation David James Raistrick Shrink Wrap Conveyor Line Submitted in partial fulfilment of the requirements of Leeds Metropolitan University for the Degree of Advanced Engineering Management

More information

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

FLEXIBLE APPOINTMENT BASED SYSTEM WITH ADAPTIVE RESPONSE TO TRAFFIC AND PROCESSING DELAYS FLEXIBLE APPOINTMENT BASED SYSTEM WITH ADAPTIVE RESPONSE TO TRAFFIC AND PROCESSING DELAYS Amrinder Arora, DSc NTELX Research and Development, 1945 Old Gallows Rd, Suite 700, McLean VA 22182, USA +1 703

More information

TRANSPORTATION PROBLEM AND VARIANTS

TRANSPORTATION PROBLEM AND VARIANTS TRANSPORTATION PROBLEM AND VARIANTS Introduction to Lecture T: Welcome to the next exercise. I hope you enjoyed the previous exercise. S: Sure I did. It is good to learn new concepts. I am beginning to

More information

Dispatching Policy Selection and Orbit Design in the Low Viaduct Rail Transportation System

Dispatching Policy Selection and Orbit Design in the Low Viaduct Rail Transportation System Page 1 of 14 ANZAM 2009 Dispatching Policy Selection and Orbit Design in the Low Viaduct Rail Transportation System Dr.DING Yizhong * and Dr.HAN Xiaolong Logistics Research Center, Shanghai Maritime University,

More information

Highly Efficient AGV Transportation System Management Using Agent Cooperation and Container Storage Planning

Highly Efficient AGV Transportation System Management Using Agent Cooperation and Container Storage Planning Highly Efficient AGV Transportation System Management Using Agent Cooperation and Container Storage Planning Satoshi Hoshino and Jun Ota Dept. of Precision Engineering, School of Engineering The University

More information

Design of an AGV Transportation System by Considering Management Model in an ACT

Design of an AGV Transportation System by Considering Management Model in an ACT Intelligent Autonomous Systems 9 Book Editors IOS Press, 2006 1 Design of an AGV Transportation System by Considering Management Model in an ACT Satoshi Hoshino a,1,junota a, Akiko Shinozaki b, and Hideki

More information

A MICROSCOPIC TRAFFIC SIMULATION BASED DECISION SUPPORT SYSTEM FOR REAL-TIME FLEET MANAGEMENT

A MICROSCOPIC TRAFFIC SIMULATION BASED DECISION SUPPORT SYSTEM FOR REAL-TIME FLEET MANAGEMENT A MICROSCOPIC TRAFFIC SIMULATION BASED DECISION SUPPORT SYSTEM FOR REAL-TIME FLEET MANAGEMENT City CEDM City Distribution CEDM Distribution Terminal Terminal LOGISTICS BASE Jaume Barceló Hanna Grzybowska

More information

Designing an Effective Scheduling Scheme Considering Multi-level BOM in Hybrid Job Shop

Designing an Effective Scheduling Scheme Considering Multi-level BOM in Hybrid Job Shop Proceedings of the 2012 International Conference on Industrial Engineering and Operations Management Istanbul, Turkey, July 3 6, 2012 Designing an Effective Scheduling Scheme Considering Multi-level BOM

More information

Performance Improvement of the Flexible Manufacturing System (FMS) with a Proper Dispatching Rules Planning

Performance Improvement of the Flexible Manufacturing System (FMS) with a Proper Dispatching Rules Planning Proceedings of the 2014 International Conference on Industrial Engineering and Operations Management Bali, Indonesia, January 7 9, 2014 Performance Improvement of the Flexible Manufacturing System (FMS)

More information

Graph Optimization Algorithms for Sun Grid Engine. Lev Markov

Graph Optimization Algorithms for Sun Grid Engine. Lev Markov Graph Optimization Algorithms for Sun Grid Engine Lev Markov Sun Grid Engine SGE management software that optimizes utilization of software and hardware resources in heterogeneous networked environment.

More information

A Framework for Integrating Planning Activities in Container Terminals

A Framework for Integrating Planning Activities in Container Terminals A Framework for Integrating Planning Activities in Container Terminals August 30th, 2007 S. H. Won and K. H. Kim Dept. of Industrial Engineering, Pusan National University, South Korea Contents 1 Introduction

More information

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

Design of an Automated Transportation System in a Seaport Container Terminal for the Reliability of Operating Robots Design of an Automated Transportation System in a Seaport Container Terminal for the Reliability of Operating Robots Satoshi Hoshino and Jun Ota Abstract For the design of an automated transportation system

More information

An Intelligent Decision Support System for Crane Scheduling in a Container Terminal

An Intelligent Decision Support System for Crane Scheduling in a Container Terminal An Intelligent Decision Support System for Crane Scheduling in a Container Terminal Guohua WAN Faculty of Business Administration, University of Macau, Taipa, Macao SAR, China E-mail: ghwan@umac.mo; Telephone:

More information

Scenario-based simulation of revenue loss at seismically damaged seaports

Scenario-based simulation of revenue loss at seismically damaged seaports 2 nd International Conference on Urban Disaster Reduction November 27~29, 2007 Scenario-based simulation of revenue loss at seismically damaged seaports U. J. Na *, S. R. Chaudhuri, M. Shinozuka 1 Department

More information

The Simulation Optimization of a Flexible Manufacturing System with Arena

The Simulation Optimization of a Flexible Manufacturing System with Arena The Simulation Optimization of a Flexible Manufacturing System with Arena Gaurav Kumar Department of Mechanical Engineering Sagar Institute of Research & Tech. Excellence, Bhopal, India Dr. Trilok Singh

More information

Ant Colony Optimization

Ant Colony Optimization Ant Colony Optimization Part 2: Simple Ant Colony Optimization Fall 2009 Instructor: Dr. Masoud Yaghini Outline Ant Colony Optimization: Part 2 Simple Ant Colony Optimization (S-ACO) Experiments with S-ACO

More information

Determination of the number of AGVs required at a semi-automated container terminal

Determination of the number of AGVs required at a semi-automated container terminal Determination of the number of AGVs required at a semi-automated container terminal Iris F.A. Vis, René de Koster, Kees Jan Roodbergen, Leon W.P. Peeters Rotterdam School of Management, Erasmus University

More information

Dynamic Scheduling of Automated Guided Vehicles in Container Terminals

Dynamic Scheduling of Automated Guided Vehicles in Container Terminals Department of Computer Science Dynamic Scheduling of Automated Guided Vehicles in Container Terminals Hassan Rashidi Haramabadi A thesis submitted for the degree of PhD Date of conferment: 27 April 2006

More information

Scheduling multiple yard cranes with crane interference and safety distance requirement

Scheduling multiple yard cranes with crane interference and safety distance requirement Scheduling multiple yard cranes with crane interference and safety distance requirement Author Wu, Yong, Li, Wenkai, Petering, Matthew E. H., Goh, Mark, de Souza, Robert Published 2015 Journal Title Transportation

More information

Chapter 1. Introduction. 1.1 Research motivation

Chapter 1. Introduction. 1.1 Research motivation Chapter 1 Introduction 1.1 Research motivation This thesis is about a more sophisticated timetable compilation and capacity analysis for a selected Dutch railway line compared to the existing tools applied

More information

A TABU SEARCH METAHEURISTIC FOR ASSIGNMENT OF FLOATING CRANES

A TABU SEARCH METAHEURISTIC FOR ASSIGNMENT OF FLOATING CRANES 1 st Logistics International Conference Belgrade, Serbia 28 - November 13 A TABU SEARCH METAHEURISTIC FOR ASSIGNMENT OF FLOATING CRANES Dragana M. Drenovac * University of Belgrade, Faculty of Transport

More information

א א א א א א א א

א א א א א א א א א א א W א א א א א א א א א 2008 2007 1 Chapter 6: CPU Scheduling Basic Concept CPU-I/O Burst Cycle CPU Scheduler Preemptive Scheduling Dispatcher Scheduling Criteria Scheduling Algorithms First-Come, First-Served

More information

Scheduling Quay Crane and Yard Equipment A case study of terminal in Central region

Scheduling Quay Crane and Yard Equipment A case study of terminal in Central region Thousand TEU Scheduling Quay Crane and Yard Equipment A case study of terminal in Central region Phong Ho Thanh Department of Industrial and Systems Engineering International University Vietnam National

More information

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

Hierarchical Traffic Control for Partially Decentralized Coordination of Multi AGV Systems in Industrial Environments Hierarchical Traffic Control for Partially Decentralized Coordination of Multi AGV Systems in Industrial Environments Valerio Digani, Lorenzo Sabattini, Cristian Secchi and Cesare Fantuzzi Abstract This

More information

Simulation Modeling as a Decision Analysis Support Tool at the Vancouver Container Terminal

Simulation Modeling as a Decision Analysis Support Tool at the Vancouver Container Terminal Simulation Modeling as a Decision Analysis Support Tool at the Vancouver Container Terminal by AIMEE(ZHIWEI) ZHOU B.Econ(World Economics), Fudan University 2000 A THESIS SUBMITTED IN PARTIAL FULFILMENT

More information

Container Transfer Logistics at Multimodal Container Terminals

Container Transfer Logistics at Multimodal Container Terminals Container Transfer Logistics at Multimodal Container Terminals Erhan Kozan School of Mathematical Sciences, Queensland University of Technology Brisbane Qld 4001 Australia e.kozan@qut.edu.au Abstract:

More information

Optimization Prof. Debjani Chakraborty Department of Mathematics Indian Institute of Technology, Kharagpur

Optimization Prof. Debjani Chakraborty Department of Mathematics Indian Institute of Technology, Kharagpur Optimization Prof. Debjani Chakraborty Department of Mathematics Indian Institute of Technology, Kharagpur Lecture - 39 Multi Objective Decision Making Decision making problem is a process of selection

More information

Simulation and Logistics

Simulation and Logistics Simulation and Logistics Rommert Dekker Professor of Operations Research Introduction Many Cases: Port, container stacking Elevator control Inventory control (optional) Conclusions 1 Logistics and transportation

More information

CROSS-DOCKING: SCHEDULING OF INCOMING AND OUTGOING SEMI TRAILERS

CROSS-DOCKING: SCHEDULING OF INCOMING AND OUTGOING SEMI TRAILERS CROSS-DOCKING: SCHEDULING OF INCOMING AND OUTGOING SEMI TRAILERS 1 th International Conference on Production Research P.Baptiste, M.Y.Maknoon Département de mathématiques et génie industriel, Ecole polytechnique

More information

LOAD SHARING IN HETEROGENEOUS DISTRIBUTED SYSTEMS

LOAD SHARING IN HETEROGENEOUS DISTRIBUTED SYSTEMS Proceedings of the 2 Winter Simulation Conference E. Yücesan, C.-H. Chen, J. L. Snowdon, and J. M. Charnes, eds. LOAD SHARING IN HETEROGENEOUS DISTRIBUTED SYSTEMS Helen D. Karatza Department of Informatics

More information

Fractal Exercise. Fractals, task farm and load imbalance

Fractal Exercise. Fractals, task farm and load imbalance Fractal Exercise Fractals, task farm and load imbalance 2 Contents 1 Introduction and Aims... 3 1.1 Mandelbrot Set... 3 2 Looking at the concepts... 4 2.1 What is a task farm?... 4 2.1.1 Using a task farm...

More information

CONGESTION-AWARE DYNAMIC ROUTING IN AUTOMATED MATERIAL HANDLING SYSTEMS

CONGESTION-AWARE DYNAMIC ROUTING IN AUTOMATED MATERIAL HANDLING SYSTEMS CONGESTION-AWARE DYNAMIC ROUTING IN AUTOMATED MATERIAL HANDLING SYSTEMS A Thesis Presented to The Academic Faculty by Kelly K. Bartlett In Partial Fulfillment of the Requirements for the Degree Doctor

More information

Parallel computing method for intermodal shipping network design

Parallel computing method for intermodal shipping network design University of Wollongong Research Online Faculty of Engineering and Information Sciences - Papers Faculty of Engineering and Information Sciences 2012 Parallel computing method for intermodal shipping

More information

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

DESIGN FOR A HYBRID SINGLE MULTI-LOAD AGV 1 SIMULATION SYSTEM WITH ARTIFICIAL INTELLIGENCE CONTROLLER artificial intelligence, Automated Guided Vehicles, transport control, simulation Grzegorz KŁOSOWSKI DESIGN FOR A HYBRID SINGLE MULTI-LOAD AGV 1 SIMULATION SYSTEM WITH ARTIFICIAL INTELLIGENCE CONTROLLER

More information

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

This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore. This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore. Title Dynamic space and time partitioning for yard crane workload management in container terminals Author(s)

More information

Job Batching and Scheduling for Parallel Non- Identical Machines via MILP and Petri Nets

Job Batching and Scheduling for Parallel Non- Identical Machines via MILP and Petri Nets Proceedings of the 2009 IEEE International Conference on Systems, Man, and Cybernetics San Antonio, TX, USA - October 2009 Job Batching and Scheduling for Parallel Non- Identical Machines via MILP and

More information

Optimizing Inplant Supply Chain in Steel Plants by Integrating Lean Manufacturing and Theory of Constrains through Dynamic Simulation

Optimizing Inplant Supply Chain in Steel Plants by Integrating Lean Manufacturing and Theory of Constrains through Dynamic Simulation Optimizing Inplant Supply Chain in Steel Plants by Integrating Lean Manufacturing and Theory of Constrains through Dynamic Simulation Atanu Mukherjee, President, Dastur Business and Technology Consulting,

More information

White Paper on the Terminal Capacity of Pier 300 with the Automation of the 41-acre Backland at Proposed Berth 306

White Paper on the Terminal Capacity of Pier 300 with the Automation of the 41-acre Backland at Proposed Berth 306 Appendix C2 White Paper on the Terminal Capacity of Pier 300 with the Automation of the 41-acre Backland at Proposed Berth 306 Berths 302-306 [APL] Container Terminal Project December 2011 ADP# 081203-131

More information

Optimizing appointment driven systems via IPA

Optimizing appointment driven systems via IPA Optimizing appointment driven systems via IPA with applications to health care systems BMI Paper Aschwin Parmessar VU University Amsterdam Faculty of Sciences De Boelelaan 1081a 1081 HV Amsterdam September

More information

Measure for measure. Comparing the quayside productivity levels of different terminals is not easy, writes Benedict Young

Measure for measure. Comparing the quayside productivity levels of different terminals is not easy, writes Benedict Young Measure for measure Comparing the quayside productivity levels of different terminals is not easy, writes Benedict Young For most container terminals, the productivity of the quayside is a measure of overall

More information

CASE STUDY: SIMULATION OF THE CALL CENTER ENVIRONMENT FOR COMPARING COMPETING CALL ROUTING TECHNOLOGIES FOR BUSINESS CASE ROI PROJECTION

CASE STUDY: SIMULATION OF THE CALL CENTER ENVIRONMENT FOR COMPARING COMPETING CALL ROUTING TECHNOLOGIES FOR BUSINESS CASE ROI PROJECTION Proceedings of the 1999 Winter Simulation Conference P. A. Farrington, H. B. Nembhard, D. T. Sturrock, and G. W. Evans, eds. CASE STUDY: SIMULATION OF THE CALL CENTER ENVIRONMENT FOR COMPARING COMPETING

More information

CPU scheduling. CPU Scheduling

CPU scheduling. CPU Scheduling EECS 3221 Operating System Fundamentals No.4 CPU scheduling Prof. Hui Jiang Dept of Electrical Engineering and Computer Science, York University CPU Scheduling CPU scheduling is the basis of multiprogramming

More information

Manzanillo International Terminal Partners with Tideworks to Implement Automatic Stacking Cranes and Optimize Yard Space

Manzanillo International Terminal Partners with Tideworks to Implement Automatic Stacking Cranes and Optimize Yard Space Manzanillo International Terminal Partners with Tideworks to Implement Automatic Stacking Cranes and Optimize Yard Space Manzanillo International Terminal (MIT) serves as a regional transshipment hub for

More information

Traffic Control of Internal Tractors in Port Container Terminal using Simulation

Traffic Control of Internal Tractors in Port Container Terminal using Simulation Proceedings of the 17th World Congress The International Federation of Automatic Control Traffic Control of Internal Tractors in Port Container Terminal using Simulation Henry Y. K. Lau* Nicole M. Y. Lee**

More information

The use of the Animate Transfer toolbar and various transportation-related modules will be illustrated in three examples in the sequel.

The use of the Animate Transfer toolbar and various transportation-related modules will be illustrated in three examples in the sequel. 316 Modeling Transportation Systems button of the Animate toolbar. A graphical Storage T-bar graphically depicts the entities in a storage facility. The Seize button allows the modeler to define a so-called

More information

Efficient messaging through cluster coordinators in decentralized controlled material flow systems

Efficient messaging through cluster coordinators in decentralized controlled material flow systems Efficient messaging through cluster coordinators in decentralized controlled material flow systems Christian Lieberoth-Leden 1, Daniel Regulin 2 and W. A. Günthner 1 1 Technical University of Munich, Institute

More information

Analysis and Modelling of Flexible Manufacturing System

Analysis and Modelling of Flexible Manufacturing System Analysis and Modelling of Flexible Manufacturing System Swetapadma Mishra 1, Biswabihari Rath 2, Aravind Tripathy 3 1,2,3Gandhi Institute For Technology,Bhubaneswar, Odisha, India --------------------------------------------------------------------***----------------------------------------------------------------------

More information

Modeling, Analysis, Simulation and Control of Semiconductor Manufacturing Systems: A Generalized Stochastic Colored Timed Petri Net Approach

Modeling, Analysis, Simulation and Control of Semiconductor Manufacturing Systems: A Generalized Stochastic Colored Timed Petri Net Approach Modeling, Analysis, Simulation and Control of Semiconductor Manufacturing Systems: A Generalized Stochastic Colored Timed Petri Net Approach Ming-Hung Lin and Li-Chen F u Dept. of Computer Science and

More information

RAILROAD & CO. +Street. Version 9. Manual

RAILROAD & CO. +Street. Version 9. Manual RAILROAD & CO. +Street Version 9 Manual September 2017 RAILROAD & CO. +Street Control of Car Systems Version 9 Manual September 2017 Copyright Freiwald Software 1995-2017 Contact: Freiwald Software Kreuzberg

More information

Industrial Automation course

Industrial Automation course Industrial Automation course Lesson 11 Petri Nets Modeling Politecnico di Milano Universidad de Monterrey, July 2015, A. L. Cologni 1 Introduction An automated production system is necessary to obtain

More information

Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture - 24 Sequencing and Scheduling - Assumptions, Objectives and Shop

More information

USING SIMULATION MODELING TO ASSESS RAIL TRACK INFRASTRUCTURE IN DENSELY TRAFFICKED METROPOLITAN AREAS

USING SIMULATION MODELING TO ASSESS RAIL TRACK INFRASTRUCTURE IN DENSELY TRAFFICKED METROPOLITAN AREAS Proceedings of the 22 Winter Simulation Conference E. Yücesan, C.-H. Chen, J. L. Snowdon, and J. M. Charnes, eds USING SIMULATION MODELING TO ASSESS RAIL TRACK INFRASTRUCTURE IN DENSELY TRAFFICKED METROPOLITAN

More information

A PETRI NET MODEL FOR SIMULATION OF CONTAINER TERMINALS OPERATIONS

A PETRI NET MODEL FOR SIMULATION OF CONTAINER TERMINALS OPERATIONS Advanced OR and AI Methods in Transportation A PETRI NET MODEL FOR SIMULATION OF CONTAINER TERMINALS OPERATIONS Guido MAIONE 1, Michele OTTOMANELLI 1 Abstract. In this paper a model to simulate the operation

More information

SimBa: A Simulation and Balancing System for Manual Production Lines

SimBa: A Simulation and Balancing System for Manual Production Lines 19 SimBa: A Simulation and Balancing System for Manual Production Lines Isabel C. Pra9a, Adriano S. Carvalho Faculdade de Engenharia da Universidade do Porto Instituto de Sistemas e Rob6tica - Grupo de

More information

standard component library

standard component library standard component library manual standard component library /21 standard component library manual 2/21 Table of Contents layouts Airport Baggage Handling High Volume Consumer Goods (HVCG) Packing Line

More information

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

The Preemptive Stocker Dispatching Rule of Automatic Material Handling System in 300 mm Semiconductor Manufacturing Factories Journal of Physics: Conference Series PAPER OPEN ACCESS The Preemptive Stocker Dispatching Rule of Automatic Material Handling System in 300 mm Semiconductor Manufacturing Factories To cite this article:

More information