LATEST TRENDS on SYSTEMS (Volume II)
Optimization of Re-handling and Load/Unload Operations in Small Container Terminal Operated by Reachstackers ADAM GALUSZKA1, KRZYSZTOF DANIEC2 Institute of Automatic Control Silesian University of Technology Akademicka16, 44-100 Gliwice POLAND 1
[email protected],
[email protected]
Abstract :- In this paper efficient in time methods for support decision-making processes in small container terminal operated by reachstackers are proposed. Two main problems are considered: first, minimization the number of loading/unloading operations between container trains and bays, second, minimization the number of re-handing operations within container bays. in Gliwice, Poland to model the problem of loading and unloading containers in small container terminal in Gliwice, Poland. For the first problem it is assumed that containers are represented by blocks and reachstackers are represented by robot arms. Then so called STRIPS representaion is used to model and solve loading/unloading planning problem. For the second problem a heuristic algorithm that meets technical limitation of reachstackers is introduced. The problem data are assumed for small container terminal in Gliwice, Poland. Key-Words :- Container Terminal, STRIPS System, Computational efficiency, Heuristic Algorithm, WiMax
1 Introduction
Table 1. General data of the terminal Data Currently Project Area 30.000 m2 74.000 m2 Capacity 1.700 TEU 3.000 TEU Track length 620m 620m Number of tracks 2 6
Decision problems at container terminals are very complex and divided into several groups: arrival of a ship (train), unloading and loading of a ship (train), transport of containers from and on a ship (train), stacking of containers (see e.g. www.ikj.nl/container/decisions.html). Since arrival of a ship (train) and containers transport are usually treated as scheduling and allocation problems (e.g. Imai et al. 2001, Bish et al. 2001), problems of loading and unloading and container stacking can be treated as planning problems (e.g. Avriel et al. 1998). Exemplary heuristics that for re-handlings analysis at sea container terminals can be found in Kap and Kim (2002) and Kap and Hong (2006). In our paper we propose a heuristic that finds bays configuration minimizing number of re-handlings under some assumptions (see section heuristic). It should be noted that such approach can be applied in terminals that operate using reachstackers (not cranes). Our intention is also to propose efficient in time method for support loading/unloading processes in small container terminal in Gliwice, Poland (www.ptkholding.pl). In table 1 general technical data of this terminal are presented.
ISSN: 1792-4235
The loading-unloading situation is schematically shown in the fig.1 and the reachstacker technical data are presented in table 2. It should be noted that all operations are performed only by reachstackers. There is an operational difference between cranes that are usually considered in literature (see e.g. Kim and Kim 2002), and reachstackers. In case of cranes, when a driver of an outside truck requests an inbound container that has other containers on top of it, a crane must remove the containers on top of the target container (it is called ‘re-handling’ operation). In case of reachstackers, also all containers between reachstacker and target container must be removed (compare fig.1). It implies that the number of re-handling operations increases. It is important to minimize re-handlings in order to increase performance of the terminal. We
616
ISBN: 978-960-474-214-1
LATEST TRENDS on SYSTEMS (Volume II)
planning problems (Nilson 1980, Boutilier and Brafman 2001, Kraus et al. 1998, Smith and Weld 1998, Slaney and Thiebaux 2001) because of complex operator interactions and simple physical interpretation. Starting from 1970s STRIPS formalism introduced by Nilson (1980) is popular for planning problems (Weld 1999). Planning problems are PSPACE-complete in general case (see e.g.: Bylander 1994, Baral et al. 2000), even in Block World environment are not easy (here the problem of optimal planning is NP-complete – Gupta and Nau 1992).
propose to model this problem using STRIPS representation.
Fig 1. Loading-unloading situation (www.ptkholding.pl)
3 STRIPS Representation for load/unload operations
Table 2. Reachstacker technical data Quantity currently: 2 project: 4 Lifting capacity 1st rank - 45 tons 2st rank - 31 tons 3st rank - 15 tons Stocking height 5 levels
In general, STRIPS language is represented by four lists (C; O; I; G) (Bylander 1994, Nilson 1980): - a finite set of ground atomic formulas (C), called conditions; - a finite set of operators (O); - a finite set of predicates that denotes initial state (I); - a finite set of predicates that denotes goal state (G). Initial state describes physical configuration of the blocks. Description should be complete i.e. should deal with every true predicate corresponding to the state. Goal state is a conjunction of predicates. Predicates in I and G are ground and function free. In multi-agent environment each agent defines own goal. This description does not need to be complete. The solution of the planning problem is an ordered set of operators (i.e. action sequence) that transforms an initial state into a goal situation. The optimal solution is the shortest action sequence. Operators O in STRIPS representation consist of three sublists: a precondition list (pre), an add list (add) and a delete list (del). Formally an operator o ∈ O takes the form pre(o) → add(o), del(o). The precondition list is a set of predicates that must be satisfied in world-state to perform this operator. The delete list is a set of predicates that become false after executing the operator and the add list is a set that become true. Two last lists show effects of the operator execution in the problem state. To model the operation of moving containers by reachstacker we assumed following set of conditions:
The goal of the project is to efficient (in time) plan the reachstacter moves in the terminal, assuming that the target containers are reached and the number of re-handlings is minimalised. The size of the planning problem (the container bay) and rails placement is shown in the fig 2. To improve communication between reachstackers and planning module the WiMax communication technology can be used (Wang et al. 2008).
Fig.2. Container bay and rails – top view 2 Theoretical background In the paper loading/unloading problem has been modeled as Block World with STRIPS representation. This domain is often used to model
ISSN: 1792-4235
C = { clear(x) – there is no container on container x,
617
ISBN: 978-960-474-214-1
LATEST TRENDS on SYSTEMS (Volume II)
clear_side(x) – there is no container between reachstacker and container x, on(x,y) – container x is placed on container y, before(x,y) – container x is before container y, reachstacker_empty(index) – reachstacker arm of ‘index’ reachstacker is empty holding(x, index) – reachstacker ‘index’ is holding container x },
terminal: to load containers from the bay to the train, or to unload containers from the train to the bay. The initial state of the first planning problem (I) is the initial configuration of the bay and the goal is: G = {on_train(x1) ˄ on_train(x2) ˄.... ˄ on_train(xn)}, (1) where xi, for i = 1,2...n denotes container, and ' ' denotes conjunction. The second planning problem is inverted situation:
where x,y,z denotes containers or bay positions and ‘index’ is an index of reachstacker. The operator that removes container x that is before z from y by ‘index’ reachstacker can be defined using STRIPS representation as follow (Galuszka and Skrzypczyk 2008):
G_inv = I, I_inv = G.
The problem (C, O, I, G) is called invertible (Koehler and Hoffmann 2000) if and only if
Ustack(x,y,z,index): precondition list & delete list: clear(x), clear_side(x), on(x,y), before(x,z), reachstacker_empty(index) add list: clear(y), clear_side(z), holding(x,index).
∀s : ∀P O : ∃P
O
O
: Result ( Result ( s , P O ), P ) = s (3)
where Result( S, ) = S, Result( S, ) = (S ∪ add(o)) \ del(o) if pre(o) ⊆ S S in the opposite case, Result( S, ) = Result( Result( S, ), ),
To rebuild the bay and load-unload the train three additional operators are needed: Stack – to stack container on other container within the bay, Load_train – to load the container on the train and, finally, Unload_train. Definitions are presented below:
O
and P is called an inverted plan. Now an inverse operator is introduced following (Koehler and Hoffmann 2000). An operator o ∈ O is called inverse if and only if it has the form pre ( o ) → add ( o ), del ( o ) and satisfies the conditions:
Stack(x,y,z,index): precondition list: clear(y), clear_side(z), holding(x,index), before(y,v), on(z,v) delete list: clear(y), clear_side(z), holding(x,index) add list: clear(x), clear_side(x), on(x,y), before(x,z), reachstacker_empty(index).
1. pre(o) ⊆ pre(o) ∪ add (o) \ del (o) 2. add (o) = del (o)
(4)
3. del (o) = add (o) . Under closed world assumption applying an inverse operator leads back to the previous state. It is proved by Koehler and Hoffmann (2000) that if for each operator there exist an inverse operator, then the problem is invertible. It is easy to see that planning problems in the terminal are invertible. This property will be used in next section. As it was mentioned above planning with STRIPS representation is a difficult computational problem.
Unload_train(x,index): precondition list & delete list: on_train(x), reachstacker_empty(index) add list: holding(x,index). Load_train(x,index): precondition list & delete list: holding(x,index) add list: on_train(x), reachstacker_empty(index). There are considered 2 planning problems in the
ISSN: 1792-4235
(2)
618
ISBN: 978-960-474-214-1
LATEST TRENDS on SYSTEMS (Volume II)
It was shown (Bylander 1994) that computational complexity class of searching for the solution (optimal or non-optimal) depends of the number of predicates in operator definition (in presented case the problem is P-SPACE complete). Because of this complexity, to plan in the terminal efficiently subgoals serialization operation can be applied (Galuszka 2009).
4 Minimization operations
of
Fig.4. The influence of a bay configuration to the number of re-handligs
re-handling
It should be noted that small changes in a bay configuration have significant influence on the number of re-handings necessary to reach the target container. It implies that is worth to consider different bay configurations for decreasing the number of re-handlings. In fig. 5 an exemplary configurations and corresponding average rehandling numbers are presented.
As it was mentioned earlier, there are some limitations when operating by reachstackers. In fig. 3 one can find an illustration of (partial order) plan diagram for reaching target container.
a) Fig.3. Plan diagram for reaching a target container within a bay These limitations have been wider described in our work using so called Block World environment with STRIPS representation characteristic for artificial intelligence planning problems (Galuszka and Skrzypczyk 2008). In fig. 4 the influence of a bay configuration to the number of re-handligs is schematically shown. It should be noted that small changes in a bay configuration have significant influence on the number of re-handings necessary to reach the target container. It implies that is worth to consider different bay configurations for decreasing the number of re-handlings. In fig. 5 an exemplary configurations and corresponding average rehandling numbers are presented.
ISSN: 1792-4235
b)
c) Fig.5. An exemplary configurations and corresponding average re-handling numbers
619
ISBN: 978-960-474-214-1
LATEST TRENDS on SYSTEMS (Volume II)
Under the notions: k – number of stacks in a bay, n – number of stack (n = 1,2…k), h(n) – height of the n-th stack (also the number of containers in n-th stack), N – number of stack with target container, p – place of the target container, r(n) – number of not moved containers in n-th stack, g(n) – number of moved containers in n-th stack, G – sum of the re-handling operations for the bay with target container, the formula for calculating the number of not moved containers for requested target container is:
Fig.6. Technical limitations of used reachstackers The analysis of possible configurations leads to conclusion that if the number of stored containers does not reach the capacity of the terminal bays then it is worth to search for the bay configurations that minimize the average number of re-handlings. Such approach will lead to minimization of real number of re-handlings if the probability that a container is a target container is the same for all containers within a bay. Such assumption (and simplification) is justified since the complete container data are often unknown when the decision of stacking must be done (Steenken et al. 2004). Tests for the efficiency of the heuristic have been performed for 3 capacities of the terminal: 1000, 2000 and 4000 containers and corresponding number of bays: 50, 100, 200.
then:
So the formula for calculating the average number of re-handlings for the bay in the general case (when operating by reachstackers) takes the form:
In table 3 the numbers of not moved containers for the target container indicated by (N,p) is presented. These numbers are direct implication of technical limitations of used reachstackers schematically shown in fig 6.
5 Conclusion In the paper the problem of moving containers by reachstackers in small terminal is modeled as block world environment with STRIPS representation. Two planning problems are defined. It is also shown that two planning problems in the terminal are invertible. This property is useful in searching for the plan. The problem of moving containers by reachstackers in small terminal is presented and analyzed. The heuristic that finds the optimal bay configurations in such terminal is presented.
Table 3. Number of not moved containers for the target container (N,p) h(N), r(N) r(N−1) r(N−2) r(N−3) 5 p 0 0 0 4 p 2 0 0 3 p 2 1 0 2 p 1 1 0 1 p 1 1 0
Acknowledgement This work is a result of educational and research co-operation between PTK Holding SA Container Terminal, Poland and Institute of Automatic Control of Silesian University of Technology, Poland. The
For the situation presented in this figure the G = 10. This number can be also calculated basing using the general formula introduced earlier:
ISSN: 1792-4235
620
ISBN: 978-960-474-214-1
LATEST TRENDS on SYSTEMS (Volume II)
research presented here were done as a part of research and development project no. OR00013409 and this work has been supported by Polish Ministry of Science and Higher Education funds in the years 2009 - 2010.
[10] Joslin, D. and J. Roach. 1989. „A Theoretical Analysis of Conjunctive-Goal Problems.” Artificial Intelligence, 41: 97-106. [11] Kim K.H and H.B. Kim.2002. The optimal sizing of the storage space and handling facilities for import containers, Transportation Research B 36, 821—835 [12] Klir G.J., T.A. Folger. 1998. Fuzzy sets, uncertainty, and information, Prentice-Hall International, Inc. USA [13] Koehler J., Hoffmann J. 2000. On Reasonable and Forced Goal Orderings and their Use in an Agenda-Driven Planning Algorithm. Journal of Artificial Intelligence Research 12, 339--386 [14] Kraus S., Sycara K., Evenchik A. 1998. Reaching agreements through argumentation: a logical model and implementation. Artificial Intelligence 104, 1--69 [15] Nilson N.J. 1980. Principles of Artificial Intelligence. Toga Publishing Company, Palo Alto [16] Slaney J., Thiebaux S. 2001. Block World revisited. Artificial Intelligence 125, 119--153 [17] Slavin T. 1996. Virtual port of call. New Scientist (June 1996) 40--43 [18] Swierniak A., A. Galuszka. 1999. Betweenness and indistinguishability in modelling and control of uncertain systems, Proc. of 18th IASTED Conference Modelling, Identification and Control, (Innsbruck 1999), 56—58 [19] Wang F. , A. Ghosh, C. Sankaran, P. J. Fleming, F. Hsieh, S. J. Benes. (2008). Mobile WiMAX systems: performance and evolution. Communications Magazine, IEEE, Vol. 46, No. 10. (2008), pp. 41-49. [20] Weld D.S., Anderson C.R., Smith D.E. 1998. Extending Graphplan to Handle Uncertainty and Sensing Actions. Proc. 15th National Conf. on AI, 897--904 [21] Weld D.S. 1999. Recent Advantages in AI Planning. Technical Report UW-CSE-98-10-01, AI Magazine
References: [1] Avriel, M., Penn, M., Shpirer, N., Witteboon, S. 1998. Stowage planning for container ships to reduce the number of shifts, Annals of Operations Research 76, 55--71 [2] Baral Ch., Kreinovich V., Trejo R. 2000. Computational complexity of planning and approximate planning in the presence of incompleteness. Artificial Intelligence 122, 241-267 [3] Bish, E.K., Leong, T.Y., Li, C.L., Ng, J.W.C., Simchi-Levi, D. 2001. Analysis of a new vehicle scheduling and location problem, Naval Research Logistics 48, 363--385 [4] Bylander T. 1994. The Computational Complexity of Propositional STRIPS Planning. Artificial Intelligence 69, 165--204 [5] Gałuszka A., Skrzypczyk K.2008. Moving containers in small terminal as STRIPS planning problem – preliminary results. Proc. Int. North American Simulation Technology Conference. Montreal, Canada, August 13-15 2008, str. 107109 [6] Galuszka A. 2009. Moving Containers in Small Terminal as STRIPS Planning Problem. [in] Simulation, Modelling and Optimization. Mathematics and Computers in Science and Engineering. A series of Reference Books and Textbooks (ed. Rudas I. et al.), ISBN 978-960474-113-7, pp. 248-253 [7] Gupta N., Nau D.S. 1992. On the complexity of Blocks-World Planning. Artificial Intelligence 56(2-3), 223--254 [8] Howe A.E., Dahlman E. 2002. A Critical Assessment of Benchmark Comparison in Planning. Journal of Artificial Intelligence Research 17, 1--33 [9] Imai, A., Nishimura, E., Papadimitriou, S. 2001. The dynamic berth allocation problem for a container port, Transportation Research B 35, 401—417
ISSN: 1792-4235
621
ISBN: 978-960-474-214-1