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

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

MULTI-OBJECTIVE OPTIMIZATION FOR STOWAGE PLANNING OF LARGE CONTAINERSHIP

Proceedings of the 2010 Winter Simulation Conference B. Johansson, S. Jain, J. Montoya-Torres, J. Hugan, and E. Yücesan, eds.

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

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

The master bay plan problem: a solution method based on its connection to the three-dimensional bin packing problem

Rehandling Strategies for Container Retrieval

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

DUE to globalization, the world economy depends on

Container Terminal Modelling in Simul8 Environment

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

Metaheuristics for scheduling production in large-scale open-pit mines accounting for metal uncertainty - Tabu search as an example.

A TABU SEARCH METAHEURISTIC FOR ASSIGNMENT OF FLOATING CRANES

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

SOLVING THE 3D CONTAINER SHIP LOADING PLANNING PROBLEM BY REPRESENTATION BY RULES AND BEAM SEARCH

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

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

Berth Allocation Planning for Improving Container Terminal Performances

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

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

A NOVEL STRATEGY FOR STOWAGE PLANNING OF 40 FEET CONTAINERS IN CONTAINER TERMINALS

Segregating space allocation models for container inventories in port container terminals

Modeling and solving the train load planning problem in seaport container terminals

Research into container reshuffling and stacking problems in container terminal yards

Developing a hybrid algorithm for distribution network design problem

A Framework for Integrating Planning Activities in Container Terminals

Optimization and Simulation Approach for Empty Containers Handling

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

Berth allocation planning in Seville inland port by simulation and optimisation

Selecting the best layout for the container terminal using Modeling and Simulation Techniques

Management Science Letters

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

Enhancing Pendulum Nusantara Model in Indonesian Maritime Logistics Network

Applying Tabu Search to Container Loading Problems

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

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

Operations research methods in maritime transport and freight logistics

SHOP SCHEDULING USING TABU SEARCH AND SIMULATION. Mark T. Traband

Space-Sharing Strategy for Building Dynamic Container Yard Storage Considering Uncertainty on Number of Incoming Containers

DISPATCHING TRANSPORT VEHICLES IN MARITIME CONTAINER TERMINALS

The Challenges of Container Terminal Development. Ashebir Jacob, PE September 10, 2013

SPACE ALLOCATION AND LOCATION MATCHING IN CONTAINER TERMINALS

A PETRI NET MODEL FOR SIMULATION OF CONTAINER TERMINALS OPERATIONS

Fast slot planning using constraint-based local search

Dr. Konstantinos Galanis

On double cycling for container port productivity improvement

Simulation of Container Queues for Port Investment Decisions

Stowage Planning and Storage Space Assignment of Containers in Port Yards

A Case Study of Capacitated Scheduling

World Academy of Science, Engineering and Technology International Journal of Industrial and Manufacturing Engineering Vol:7, No:10, 2013

Maritime distribution of stone products

OPTIMIZATION OF THE WELDING IN THE ERECTION SCHEDULING OF A SUEZMAX TANKER SHIP

A novel strategy for stowage planning of 40 feet containers in container terminals

Software Next Release Planning Approach through Exact Optimization

TRANSPORTATION PROBLEM AND VARIANTS

Technical Data Sheet. Stowage Planning. Technical Data Sheet. General Features

Research on Multi-Objective Co-operation Optimization of Shipyard Berth Allocation System

Optimizing Dynamic Flexible Job Shop Scheduling Problem Based on Genetic Algorithm

AUTOMATED GUIDED VEHICLES (AGV) IN PRODUCTION ENTERPRISES

CHAPTER 4 PROPOSED HYBRID INTELLIGENT APPROCH FOR MULTIPROCESSOR SCHEDULING

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

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

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

Scheduling multiple yard cranes with crane interference and safety distance requirement

CROSS-DOCKING: SCHEDULING OF INCOMING AND OUTGOING SEMI TRAILERS

Barge rotation planning and quay scheduling in the port of Rotterdam Douma, A.; Schuur, P.C.; Schutten, J.M.J.

Metaheuristics. Approximate. Metaheuristics used for. Math programming LP, IP, NLP, DP. Heuristics

Proceedings of the 2010 Winter Simulation Conference B. Johansson, S. Jain, J. Montoya-Torres, J. Hugan, and E. Yücesan, eds.

Improving Productivity of Yard Trucks in Port Container Terminal Using Computer Simulation

Procedia - Social and Behavioral Sciences 109 ( 2014 ) Selection and peer review under responsibility of Organizing Committee of BEM 2013.

Routing in maritime logistics

A Viral Systems Algorithm for the Traveling Salesman Problem

Tactical Planning using Heuristics

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

An Evolutionary Solution to a Multi-objective Scheduling Problem

Locomotive Fuelling Problem (LFP) in Railroad Operations. Bodhibrata Nag 1 & Katta G.Murty 2

Multiobjective Optimization. Carlos A. Santos Silva May 29 st, 2009

Multiobjective Optimization. Carlos A. Santos Silva

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

Parallel computing method for intermodal shipping network design

Multi-objective Evolutionary Optimization of Cloud Service Provider Selection Problems

Efficient Container Security Operations at Transshipment Seaports

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

Crane Scheduling for ABB: Progress Report

Uncertain Supply Chain Management

A Genetic Algorithm for Order Picking in Automated Storage and Retrieval Systems with Multiple Stock Locations

Container Sharing in Seaport Hinterland Transportation

Tour Scheduling with Skill Based Costs

Solving the Empty Container Problem using Double-Container Trucks to Reduce Congestion

A Particle Swarm Optimization Algorithm for Multi-depot Vehicle Routing problem with Pickup and Delivery Requests

A Genetic Algorithm on Inventory Routing Problem

MBP1123 Project Scope, Time and Cost Management Prepared by Dr Khairul Anuar

The Efficient Allocation of Individuals to Positions

Research Article Integrated Production-Distribution Scheduling Problem with Multiple Independent Manufacturers

Structured System Analysis Methodology for Developing a Production Planning Model

Clock-Driven Scheduling

Real time disruption recovery for integrated berth allocation and crane assignment in container terminals

(12) Patent Application Publication (10) Pub. No.: US 2010/ A1

Inventory Routing Problem for the LNG Business

Production Planning under Uncertainty with Multiple Customer Classes

Transcription:

Randomized Algorithm with Tabu Search for Multi-Objective Optimization of Large Containership Stowage Plans Fan Liu, Malcolm Yoke Hean Low, Wen Jing Hsu, Shell Ying Huang, Min Zeng, Cho Aye Win School of Computer Engineering, Nanyang Technological University Nanyang Avenue, Singapore 639798 {liufan, yhlow, hsu, assyhuang, zengmin, wcaye}@ntu.edu.sg Abstract. This paper describes a randomized algorithm with Tabu Search for multi-objective optimization of large containership stowage plans. The algorithm applies a randomized block-based container allocation approach to obtain a Pareto set of stowage plans from a set of initial solutions in the first stage, and uses Tabu Search (TS) to carry out multi-objective optimization on the Pareto set of stowage plans in the second stage. Finally, a group of nondominated solutions is generated based on objectives such as the number of rehandles, the completion time of the longest crane, the number of stacks that exceed the weight limit, the number of slots killed, horizontal moment difference and cross moment difference. Experimental results based on real data show that the proposed algorithm is able to obtain better stowage plans compared with human planners. Keywords: stowage planning; multi-objective optimization; tabu search; nondominated solutions 1 Introduction Nowadays, approximately 90% of the commodity around the world are containerized and transported by containerships [4]. The stowage planning of containers onboard the ships is one of the most critical problems in shipping industry and it affects the shipping lines operating cost significantly. Existing stowage planning process is mainly carried out by human planners. The quality of the stowage plans prepared by human planners largely depends on their experience and intuition about the characteristics of containers and stowage requirements. However, to become a professional stowage planner, it takes years of training onboard containerships. Thus, there is a shortage of experienced planners in the shipping industry. Furthermore, the market of maritime transportation has been growing dramatically over the past 20 years. This requires larger containerships to cater to the increased demands from the customers. The largest containership available now has reached the size of 15,000 TEUs (Twenty-Foot Equivalent Unit) [7]. Therefore, shipping lines are facing increasing challenges in generating efficient and feasible

stowage plans for large containerships. In order to help the shipping industry cope with this increasing challenge, our research work aims to develop a fully automated stowage plan generation system for large containerships. The detailed architecture of the system can be found in our previous published work (Liu et al. 2010) [11]. In this paper, we proposed a randomized algorithm with Tabu Search for multi-objective optimization of large containership stowage plans in the automated stowage plan generation system. The remainder of the paper is organized as follows. Section 2 reviews some related literatures in the field of stowage planning. In Section 3, we present definitions of some key objectives in the stowage planning problem. Our proposed optimization algorithm in the automated stowage plan generation system is described in Section 4. In Section 5, study cases and experimental results are presented. Finally, Section 6 concludes this paper and outlines some future work. 2 Literature Review 2.1 Previous Research The Master Bay Plan Problem (MBPP, Ambrosino and Sciomachen, 2004) [1], which refers to the problem of deciding the stowage configuration of containers on a containership, has been studied by shipping companies and researchers since 1970. Initially the researchers tried to use traditional method to solve this problem. They mainly focused on establishing a set of 0-1 linear programming formulation which can translate the stowage planning problem including all the constraints and requirements into a mathematical model. If the linear programming formulations are well defined, theoretically an optimal solution can be obtained. However, the search space of the established mathematical model depends on the capacity of the ship, volume of containers and the complexity of the operational constraints. Even for a medium size containership, e.g. a 2000 TEUs vessel, the problem becomes a nontrivial one due to the large number of variables and inequalities needed for the formulations. Moreover, the stowage planning problem has been proven to be NP-complete in [2] [3]. It is very hard or even impossible to guarantee an optimal solution in a reasonable execution time for a real size commercial containership. On the other hand, the ship building industries have been growing dramatically over the years. Ships with new structures are coming out every year. It is sometimes difficult to establish a set of linear programming formulations to express the stowage planning problem due to the nature of the special structure of the ships. Thus, researchers have been trying to develop heuristics to provide feasible and efficient solutions. A brief review of some recent research works follows. The work by Ambrosino and Sciomachen in 2004 [1] described a strategy for solving the stowage planning problem. They proposed a heuristic approach before performing a 0-1 linear programming model. The idea is to take a set of heuristic preprocessing of containers and pre-stowing procedures to allow the relaxation of some constraints of the original 0-1 linear programming model, and finally reduce the

search space of the model. Although this strategy reduced the processing time to a reasonable level, about 20 minutes for one plan, some assumptions applied in the preprocessing stage made the problem unrealistic. For example, usually a containership has to visit several ports in one voyage. At each port some containers onboard have to be discharged and new containers have to be loaded. But in [1], they only considered the loading problem at the first port. Crane intensity, which stands for the utilization of quay cranes used to load and unload containers, was also not considered. Wilson and Roach (1999, 2000) [9] [10] developed a methodology for generating computerized stowage plan. In their approach, instead of establishing a 0-1 linear programming model, they proposed a two-step stowage planning procedure which consists of a strategic level and a tactical level. First in the strategic level, a branchand-bound algorithm was developed to assign generalized containers in each bay of a vessel. In the second tactical step, Tabu Search (TS) was applied to match each individual container into a proper location of one bay. Their approach is capable of obtaining a feasible solution but optimality is not guaranteed. Also, a single objective function is used for the optimization purpose. Kang and Kim (2002) [8] developed a method to divide the stowage planning problem into two sub-problems, one for allocating container groups into the cargo holds and one for determining the detailed allocation pattern of containers within each cargo hold. The first sub-problem was solved by a greedy search algorithm, while the second sub-problem was solved by a tree search method. A single objective function was developed to evaluate the solutions. These two sub-problems were solved iteratively until the objective value cannot be improved anymore. However, in this research they simplified the problem by only allowing 40Ft container to be stowed onto the ship. Because their approach still involved linear programming, the computation time was also relatively long compared with Wilson and Roach s approach (1999, 2000) [9] [10]. The stowage planning problem is inherently a multi-objective optimization problem that some of the objectives can be conflicting. In multi-objective optimization, the goal is to look for a set of solutions which represents trade-offs with respect to the constraints. But all the research work mentioned above simplified this requirement. They designed a single objective function which associated a weight to each objective factor of the problem and obtained a single value to evaluate the solution. Using such methodology, a solution with optimum value in term of a single objective function may not be the optimal in term of multi-objective optimization. Xiao et al. (2009) [12] proposed a block stowage algorithm to take the distribution of workload among quay cranes into consideration. This algorithm tried to optimize two important objectives, namely the number of re-handles and the quay cranes utilization at the same time. By setting tolerance factor to different levels, solutions with a low number of re-handles and a high quay crane utilization could be obtained. Although their work did not yet consider the issue of ship stability, their proposed framework contained a planned module to solve the ship stability problem. In their follow-up work (Liu et al. 2010) [11], besides the existing block stowage algorithm, they proposed a block selection algorithm to further consider the quay crane utilization and ship stability problem. In this block selection algorithm, they proposed two different approaches to cater to the requirements for quay crane

utilization and ship stability, namely the workload-based approach and the distancebased approach. The former was designed to obtain solutions with better quay crane utilization, while the latter was aimed at achieving better container weight distribution along the ship. The experimental results showed that the block selection algorithm exhibited good performance in terms of quality of the solutions and execution time. However, as the two proposed approaches were mutually exclusive, the quay crane utilization and the even distribution of containers weight may not be optimized at the same time. In this paper, we describe a randomized algorithm with Tabu Search for multiobjective optimization of large containership stowage plans, which is based on the research work of Xiao et al. [12] and Liu et al. [11]. 2.2 Tabu Search The initial idea of Tabu Search (TS) was introduced by Glover in 1977 [5], and in 1993 the principal method of TS was proposed by Glover, Taillard and de Werra in their research work [6]. They explained that a global optimum of an optimization problem could be obtained by making a sequence of moves from one feasible solution of an optimization problem. Each move from one solution to another is the best available, but some moves are defined as tabu or illegal at certain iterations to avoid cycling and getting stuck to the local optimum. However, in some circumstance a tabu move may be desirable and an aspiration criterion is needed to allow the move to be made. Since its introduction, this mechanism has been successfully used to solve optimization problems such as job scheduling, layout optimization, traveling salesman problem and vehicle routing problem. In this paper, we applied TS to solve the stowage planning optimization problem for large containerships. 3 The Stowage Planning Problem 3.1 Problem Description The stowage planning problem is to generate a stowage plan for a given containership at a port which will go on a given voyage. A containership contains a number of bays with bay index increasing from bow to stern. There are two kinds of bays, 40 foot and 20 foot bays, respectively. A 40 foot bay consists of two contiguous 20 foot bays. Each bay is formed by a number of rows across the width of the ship. Each row is a vertical stack of stowage locations from bottom to top. Bays are usually divided by hatches into two sections, on deck and under deck. Detailed introduction of containership structure can be found in [11]. The voyage of the containership is a sequence of the ports this ship will visit to unload and load containers. The stowage planner will also be given a list of containers that are to be loaded at the current port and to be unloaded at the various downstream ports along the voyage. There are mainly two types of containers defined by the physical size. The dimension of a 20 foot container is 8 feet wide, 8 feet 9 inches high and 20 feet long. A 40 foot

container is with the same width and height as a 20 foot container, but twice the length of it. Besides grouping the containers by their sizes, containers can be grouped based on their characteristics into general containers, reefers, high cubes and hazardous containers. For detailed information of the different types of containers, one can refer to [11]. A stowage plan needs to be generated which optimizes on a number of objectives. 3.2 Objectives to be considered in this research work The following objectives are considered. Number of re-handles Containers are stowed in vertical stacks on a containership, which is a LIFO (last in, first out) system. When a container is discharged from the ship, all the containers above it in the same stack must be discharged first. In some cases, if the container is located under a hatch, in order to access this container, all the other containers above the same hatch must be discharged as well. Re-handle happens when a container is supposed to remain on board at one port, but for some reasons, either discharging other containers or stowing in new containers under it, this container has to be discharged first and loaded back again. This kind of operations brings additional quay crane movements for containers, which results in extra cost in both time and money. Therefore, reducing the number of re-handles is one of the key objectives in our research work. It can be described as, (1) H denotes the set of all the hatches. denotes whether hatch h is opened. denotes number of re-handled containers under hatch h. denotes number of containers not being unloaded at the current port on hatch h. denotes number of re-handled containers on hatch h. denotes the set of bays contain hatch h. denotes the set of rows contain hatch h. denotes the set of tiers under deck in bay i row j. denotes the set of containers being unloaded at port p. is a variable indicating whether a container c is stowed in bay i row j tier k at port p. (3) denotes the set of tiers on deck in bay i row j. denotes the set of containers on board both before unloading and after loading at port p. (2) denotes the set of forced re-handled containers on hatch h. (4)

(5) (6) denotes the set of forced re-handled containers under hatch h. Completion time of the longest quay crane Quay cranes are used to discharge and load containers for the ships. At every port, a containership may be served by a given number (usually 3-5) of quay cranes. Each crane will be assigned to discharge and load containers in several bays. Due to the physical size of quay cranes, they are not able to operate simultaneously on adjacent bays. If two quay cranes are working too close to one another, one of them must stop and wait until the other crane moves to a bay with enough safety distance. The waiting time of a crane is called idle time. The ideal situation is for all the quay cranes to start and finish their workload at the same time with minimum idle time. However, it is usually impossible to achieve this in real world. Thus the completion time of the longest quay crane decides the utilization of the quay cranes. It can be described as, (8) denotes the completion time of crane i. denotes the time crane i spends on loading and unloading. denotes the time crane i spends on idling. denotes the time crane i spends on moving from one bay to another. denotes the set of cranes. Number of stacks that exceed weight limit Due to the structure of the containership, there is a limit for the total weight of each stack both on and under deck. This limit varies for different bays and rows. The total weight of all containers in one stack cannot exceed the maximum weight limit of it. Therefore, reducing the number of stacks that exceed their weight limit to 0 is the one of the objectives in stowage planning problem. It can be described as, (9) is the variable indicating whether the stack in bay i row j exceeds the weight limit or not, 1 for exceeds the weight limit, otherwise 0. Number of slots killed A slot killed represents an unusable empty stowage location on ship. It occurs in three different situations. First, a stack cannot be completely filled due to the weight of containers in that stack which has reached the stack weight limit.second, (7)

if a stack under deck stows at least one high-cube container, the top slot must be left empty otherwise the hatch cover cannot be closed. Third, for the empty slots under a hatch with containers stowed on top, in order to access these empty slots, extra re-handles are needed. A good stowage plan should maximize the use of all the stowage locations on a ship and hence minimize the number of slots killed. Horizontal moment difference The difference of weight distribution across the horizontal dimension of the ship can result in a heel angle. A large heel angle will have safety implication when the ship is sailing. Thus in a good stowage plan, the moment caused by the weight of containers on the starboard side (right) of the ship, including all the locations on deck and under deck, must be as close as possible to the moment caused by the weight of containers on the port side (left) of the ship. It can be described as, ) (10) denotes the set of rows in bay i on the left side of the ship. denotes the set of rows in bay i on the right side of the ship.. denotes the weight of the container c. denotes the distance from row j of bay i to the longitudinal center line of the ship. Cross moment difference The difference in weight distribution of containers across the longitudinal dimension of the ship causes a trim. For safety and fuel efficiency considerations, a target trim is desired for sailing. In this paper, we set the target trim to zero. Hence, one of the objectives in stowage planning is to make sure that the moment caused by the weight of containers on the bow part (front) of the ship, including all the locations on deck and under deck, must be as close as possible to the moment caused by the weight of containers on the stern part (back) of the ship. It can be described as, ) (11) denotes the set of aft bays of the ship. denotes the set of forward bays of the ship. denotes the distance from bay i to the transversal center line of the ship. 4 Randomized Algorithm with Tabu Search for Mulit-Objective Optimization of Large Containership Stowage Plans This section describes the proposed randomized algorithm with Tabu Search for multi-objective optimization of large containership stowage plans. This algorithm is a follow-up work based on the idea of Block Stowage proposed by Xiao et al. [12] and Block Assignment Strategy proposed by Liu et al. [11]. To help understanding, we present the block stowage heuristics below briefly:

Step 1. Divide all the stowage locations on the ship into several blocks based on their relative positions to the hatches. A block is defined as a group of locations which are under or on the same hatch covers. Step 2. Divide the containers in the loading list into different groups according to their physical sizes and PODs (Port of Destination). Step 3. Select a group of containers in a reverse order of the ports of destination, which means the group of containers going to the furthest port is selected first, and a block according to a set of heuristic rules. Then assign the containers in that group to the stowage locations in the selected block. Step 4. Terminate the procedure if all the groups of containers have been planned, else continue to Step 3. Figure 1. Block Stowage Heuristics Xiao et al. [12] and Liu et al. [11] described in their previous works that the quay cranes utilization and ship stability can be influenced through applying different heuristic rules in Step 3. However, due to the complex nature of this problem, no single heuristic is found to be adequate for obtaining a good stowage plan for multiobjectives optimization purpose. To overcome the drawback of such deterministic block selection approach, in this paper we propose a randomized two-stage multi-objective optimization algorithm with TS, in which not only one but a large number of stowage plans are generated in a randomized block selection way in the first stage, and then a small number of stowage plans with better characteristics such as quay crane utilization, number of slots killed and number of stacks that exceed weight limit are selected for further optimization in the second stage. TS is implemented in the second stage to optimize each stowage plan in terms of the number of stacks that exceed weight limit, horizontal moment difference and cross moment difference. The detailed description of the randomized two-stage multi-objective optimization algorithm with TS for the large containership stowage planning problem is given below: 4.1 Initial Stowage Patterns Generation Stage In this stage, the aim is not to generate a stowage plan which is ready for use by the decision maker, but to obtain some good stowage patterns for further optimization. Step 3 in Figure 1 is a critical step in Block Stowage. If a deterministic block selection heuristic rule is applied in this step, only one stowage pattern can be obtained through this procedure. Some other potential stowage patterns with better objective values are neglected. Thus, we propose a randomized approach in the block selection step. The idea is that we generate a large number of stowage patterns in a randomized way instead of generating a single stowage pattern in a deterministic way. Randomized here does not mean totally random. Following the basic heuristics proposed by Xiao et al. [12], the blocks selected should still satisfy the requirement of minimizing the number of re-handles. Sometimes there is more than one block that satisfies the block selection requirement. In this situation a decision must be made on which block to choose. We define this situation as a decision point. Randomized block selection only happens at each decision point. Choosing different blocks at different decision points can result in totally different stowage patterns. This is

because the consequence of a decision can propagate to a later decision point, and the number of combinations of different decisions can be quite large. For example, if there are 6 decision points with 3 choices for each, this results in different combinations. In order to speed up the process of generating such a large amount of stowage patterns, only physical size constraints, which includes constraints such as 20 foot containers must be stowed in 20 foot locations, 40 foot containers must be stowed in 40 foot locations, and no 20 foot containers are allowed to be stowed on top of 40 foot ones, are considered when assigning each individual container to a specified stowage location regardless of the weight of each container. Because at this stage only stowage pattern, which determines the number of re-handles, completion time of the longest crane and the number of slots killed, is important. All the other objectives relating to the weight of containers will be optimized in the next stage. After a desired number of stowage patterns are generated, Pareto sorting is performed on the stowage patterns based on three objectives: number of re-handles, completion time of the longest crane and number of slots killed. Then a Pareto set of stowage plans are obtained for further optimization in the next stage. 4.2 Solutions Optimization by Tabu Search A move is one of the important elements in TS, as the idea of TS is to explore the search space of feasible solutions by making a series of moves and finally reach an optimal solution. In our proposed optimization algorithm, a move in this problem is defined as a swap of two containers with the same size and port of destination. Merely moving one container from its original stowage location to another new empty slot on ship or swapping two containers with different sizes or ports of destination is not a legal move in our algorithm. This is because only a swap of two containers with the same size and port of destination can maintain the stowage pattern obtained from the first stage of the algorithm, which is already designed to optimize the number of rehandles, the completion time of the longest quay crane and the number of slots killed. All the other illegal moves will change the stowage pattern obtained from the first stage. There are two possible outcomes from a sequence of illegal move, 1. Result in a stowage pattern with more re-handles, longer completion time of the longest quay crane or more slots killed; 2. Result in another stowage pattern which has already been discovered in the first stage. Another reason for not allowing the move of a single container to an empty location or swapping two containers with different sizes or ports of destination is that it will significantly increase the size of the search space of feasible solutions. Since these kinds of moves will not improve the quality of stowage patterns, but only increase the computation complexity, it is necessary to forbid these moves. Tabu move is another critical element in TS. A move is defined as tabu when its reverse move has just been made recently. If a move is regarded as tabu in one iteration, it cannot be used as a legal move to lead to another solution in the neighborhood even if the solution is the best one available in that iteration. This

mechanism prevents the exploration process from being stuck in a local optimum, and allows some degradation moves to be made in order to explore new neighborhood which may contain global optimum. In our proposed algorithm, a tabu move is not only a reverse of a move which has just been made recently, which is not sufficient to allow the exploration process to escape from the local optimum. For example, there are four containers stowed in location respectively. Then given the following swaps: swaps with, swaps with, swaps with, swaps with, swaps with, and swaps with. After the sequence of moves, the four containers all return to their original locations. However, during the sequence of moves no reverse move occurs. Thus, we have redefined the move and reverse move for this problem. Each move consists of two half moves, each half contains the identity of the container and its newly assigned location. For instance, a move of in swapping with in is presented in the form of, the reverse move is a move to let two half moves and occur simultaneously. A tabu list of size is needed to record the moves made most recently, which prevents cycles of length less than or equal to from occurring in the search procedure. In our proposed algorithm a basic unit in the tabu list is a half move of a reverse move associated with the move performed recently. Therefore, a tabu list actually contains half moves. If both the two half moves of one move are found in the tabu list, the move is considered tabu and cannot be performed. This design prevents the above mentioned cycling case from happening. However, sometimes it is desirable to let a move marked as tabu to be carried out. Under this condition, an aspiration mechanism is needed to overrule the tabu status of the move, and allow it to happen. In this research we have defined an aspiration criterion to allow a tabu move to be made. The aspiration criterion is such that if the move can lead to a solution which dominates the best global solution found so far, then it can be made regardless of its tabu status. In this research we applied the TS for multi-objective optimization. Let A and B be two solutions for stowage planning. Objectives vectors and are obtained using solution A and solution B. Thus solution A is considered to dominate solution B (also written as ) if and only if. It means that each objective value of A is no greater than the corresponding value of B and there exists at least one objective value of A which is strictly less than that of B. The objectives being optimized in this stage are the number of stacks that exceed weight limit, horizontal moment difference and cross moment difference. The TS algorithm in this research also requires a termination condition. Otherwise this search procedure will run forever. Each time a solution that dominates the best global solution found so far is obtained, the best global solution will be updated with it. If the number of iterations performed since the best global solution last updated is greater than a pre-determined maximum number of iterations, the procedure terminates and the best global solution is regarded as the optimal or sub-optimal solution. The proposed TS algorithm is applied to each solution in the Pareto set obtained in the first stage. Pareto ranking will be applied to the set of solutions after TS again. The pseudo code of TS is presented in Figure 2. In this algorithm, K is a pre-

determined value used as the stopping condition. // Select an initial solution s from the Pareto set of solutions obtained in the first stage, // and assign it to the best global solution found so far S* S*:= s and k: =0 // Divide the containers in the load list according to their sizes, and ports of destinations into // n arrays, each array only contains containers of the same size and port of destination Create array[0],, array[n-1] and set i: =0 Create an empty FIFO (first in, first out ) tabu list of size While do Create a set M(s) = all possible moves in array[i] Define a move A For do // A move being applied to solution results a new solution If // dominates Then S*:=s, s: =s, and A: = m Else If and // dominates and does not exist in Then s: =s, A: = m End If End If End For // add A to the end of If the size of Then remove the first element in End If If S* is updated Then k: =0 Else k: =k+1 End If i:=i+1 // move to the next array If i >n-1 Then i: =0 // restart from array[0] End if End While Figure 2. Pseudo Code of the Tabu Search algorithm 5 Case Study In our study a containership with a capacity of 5436 TEUs is used in the tests. Six test cases are conducted to evaluate the performance of the proposed randomized algorithm with Tabu Search. These test cases are constructed using real containers data provided by a shipping company. The number of ports for the containers in the loading list ranges from 4 to 6. The loading volume in the loading list ranges from 900 to 1400 TEUs. The containers onboard take up 70% to 85% of the containership capacity. In these test cases, 500 randomized initial stowage plans are obtained in the first stage. Then the top n (n=max [20, number of non-dominated solutions]) are passed to the second stage. In the TS stage, the termination condition K is set to 100, the size of tabu list is set to 100. The algorithm is implemented by using JAVA language in this research work. All these experiments are run on an Intel Core2 PC with 2.66GHz CPU and 2 GB RAM. To evaluate the performance of the suggested algorithm, the stowage plans generated by an experienced human planner and by applying the basic block stowage heuristics which we developed in our previous works[11][12] are provided for comparison. The proposed algorithm shows very good

performance in terms of the computation efficiency and solutions quality for all 6 test cases. Two representative test cases are presented below. 5.1 Real World Case study In the first experiment, we used a set of real world data from a shipping company. The ship sails from port A to port B, and the stowage planning process is done at port B. Table 1 shows the statistics of containers load list at port B. Ports C to G are downstream ports ordered according to alphabetical order. Table 1. Containers Load List at Port B for Experiment 1 Port C D E F G 20Ft Number of Containers 143 18 0 109 0 Average Weight (ton) 23.17 16.37-21.22 - Standard deviation of weight(ton) 5.90 5.73-3.54-40Ft Number of Containers 166 73 69 39 158 Average Weight (ton) 18.47 15.85 4 26.67 4 Standard deviation of weight(ton) 7.53 7.16 0 4.81 0 It takes 361.0 seconds to obtain 500 initial solutions. Table 2 shows 8 nondominated solutions among the 500 initial solutions. It takes another 1968.907 seconds to apply TS to the top 20 solutions. Finally, 10 non-dominated solutions are obtained. Table 2. Objective Values of non-dominated Solutions Obtained after the First Stage for Experiment 1 Solution ID Completion Number of stacks time of longest that exceed crane (min) weight limit Number of slots killed Horizontal moment difference (ton m) Cross moment difference (ton m) 182 1262 23 350 513.0 76891.2 369 1266 34 290 495.2 34994.4 358 1274 45 315 1832.8 76032.0 333 1274 8 276 333.1 11538.2 446 1314 17 282 1369.3 52269.8 445 1371 19 236 2812.3 75833.6 126 1375 38 242 1742.3 47010.6 196 1376 27 233 1509.4 7917.0 Table 3 shows the objective values of the 10 non-dominated stowage plans generated by the stowage planning system. The stowage plans generated by an experienced human planner and by applying the basic block stowage heuristics are also shown in the last two rows of the table. The values related to weight are calculated based on a ship configuration with zero ballast. The number of stacks that exceed the weight limit, the number of re-handles and the horizontal moment difference (ton m) are not listed in the table as the plans generated by both the stowage planning system and human planner have no stack that exceeds the weight limit. For the number of re-handles, the 10 solutions generated by the stowage planning system manage to cause no re-handles, while the plan provided by the

human planner causes 11 re-handles at the current port. For the horizontal moment difference, all the 10 plans generated by the stowage planning system are able to obtain an even horizontal moment, while the plan provided by the human planner has a horizontal moment difference of 5736.4 ton m. Solutions with IDs 369, 446, 332, 126, 196 and 262 dominate the solution generated by the human planner for all objectives. Solutions with IDs 14, 369, 332, 126, 196 and 262 dominate the solution generated by applying the basic block stowage heuristics for all objectives. Table 3. Objective Values of Plans Generated by the Stowage Planning System and Human Planner at Port B for Experiment 1 Solution ID Completion time of longest crane (min) Number of slots killed Cross moment difference(ton m) 14 1262 332 20352.4 182 1262 324 64269.8 369 1266 282 18483.4 358 1274 278 60902.6 446 1314 270 33863.6 445 1371 220 61655.0 332 1373 226 0 126 1375 218 28460.0 196 1376 214 0 262 1412 214 1237.2 Human Planner 1567 288 39347.6 Basic Block Stowage 1428 376 30365.2 5.2 Syntactic Case Study Table 4. Containers Load List at Port D for Experiment 2 Port E F G H 20Ft Number of Containers 52 99 207 96 Average Weight (ton) 25 24.85 24.93 25 Standard deviation of weight(ton) 11.18 11.13 11.16 11.18 40Ft Number of Containers 245 6 37 - Average Weight (ton) 25.06 25 25.41 - Standard deviation of weight(ton) 11.20 9.57 11.29 - Because the average container weight in the first experiment which involves real data is not very heavy, it is relative easy to keep all the stacks within the weight limit. Thus, in the second experiment we obtained a set of real stowage planning data from a shipping company and only modified the weight of these containers, and expect to observe some stacks to exceed the weight limit after applying TS. We modified the weight of containers by dividing the containers into groups according to their sizes and destination ports. Four different weights of 10 tons, 20 tons, 30 tons and 40 tons were assigned to containers in each group with equal proportion. The ship sails from port C to port D, and the stowage planning process is done at port D. Table 4 shows the statistics of containers load list at port D. Ports E to H are downstream ports. It takes 285.171 seconds to obtain 500 initial solutions. Table 5 shows the 7 non-

dominated solutions among the 500 initial solutions. It takes 1830.75 seconds to apply TS to the top 20 solutions. Finally, 12 non-dominated solutions are obtained. Solution ID Completion time of longest crane (min) Table 5. Objective Values of non-dominated Solutions Obtained after the First Stage for Experiment 2 Number of stacks that exceed weight limit Number of slots killed Horizontal moment difference (ton m) Cross moment difference (ton m) 471 950 77 315 4447.5 8175.7 430 951 77 309 5147.5 32965.7 245 960 69 297 5887.5 20154.3 340 996 55 295 3617.5 11834.3 21 1056 65 293 4427.5 17635.7 383 1074 63 283 4637.5 2795.7 107 1134 61 281 4327.5 8105.7 Table 6 shows the objective values of the 12 non-dominated stowage plans generated by the stowage planning system. The number of re-handles is not listed in the table as all the plans cause no re-handle at the current port. The stowage plan generated by applying the basic block stowage heuristics is shown in the last row of the table. The human planner did not plan for the modified test case, so the stowage plan from human planner is not available in this case. It can be observed from the table that Solutions with IDs 471, 340, 370 dominate the solution generated by applying the basic block stowage heuristics for all objectives. Table 6. Objective Values of Plans Generated bythe Stowage Planning System for Experiment 2 Solution ID Completion time of longest crane (min) Number of stacks that exceed weight limit Number of slots killed Horizontal moment difference (ton m) Cross moment difference (ton m) 471 950 48 287-0.1 4.3 430 951 36 270 0 15145.7 99 960 0 240-0.1 39755.7 245 960 48 277-0.3 5.7 470 962 33 264 0 575.7 340 996 43 283-0.1 5.7 370 1012 34 270 0 5.7 383 1074 58 278-0.1 4.3 169 1082 31 264 0 3945.7 172 1097 56 272 0.7 4.3 448 1106 55 276-0.1 4.3 107 1134 34 256 0.1 5.7 Basic Block Stowage 1076 50 287 0.1 265.7 From these experiments we can see that the proposed algorithm is able to generate multiple (10 in Experiment 1 and 12 in Experiment 2 based on a setting of 500 randomized initial solutions being generated in the first stage) non-dominated solutions in a reasonable time period (less than 40 minutes). Compared with the previous research work and the human planners (it usually takes 2 hours to generate

one stowage plan by a human planner) this is faster. 60% of the non-dominated solutions dominate the plan provided by the human planner and also the stowage plan generated by applying basic block stowage heuristics in the first experiment. 25% of the non-dominated solutions dominate the plan generated by applying basic block stowage heuristics in the second experiment. Also, rather than only one stowage plan generated by applying basic block stowage heuristics, several (usually 10 based on a setting of 500 randomized initial solutions being generated in the first stage) nondominated solutions are obtained by the Randomized block stowage algorithm with Tabu Search. This provides more options that emphasize on different objectives for the shipping lines in the real world. The decision maker can choose one stowage plan from the non-dominated solutions (around 10 based on a setting of 500 initial solutions) as their final stowage guide giving more importance to one or a few objectives that they concern most. 6 Conclusion and Future Works In this paper, we proposed a randomized algorithm with Tabu Search for multiobjective optimization of large containership stowage plans. This algorithm exhibits very good performance in terms of plan quality and computational efficiency compared to the plans generated by human planners. By applying the algorithm proposed in this paper, we are able to generate multiple stowage plans while trying to optimize on different objectives. This could help the shipping lines make better decisions in the real world. In our future work, we will try to refine this algorithm to enable it to explore more possible solutions in a shorter execution time by employing parallel computing technology. References 1. Ambrosino, D., Sciomachen, A. and Tanfani, E., 2004. Stowing a Containership: the Master Bay Plan Problem, Transportation Research, 38, pp. 81-99. 2. Avriel, M., Penn, M., Shpirer, N. and Witteboon, S., 1998. Stowage planning for container ships to reduce the number of shifts, Annals of Operation Research, 76, pp 55-71. 3. Avriel, M., Penn, M., Shpirer, N., 2000. Containership stowage problem: complexity and connection capabilities, Discrete Applied Mathematics, 103, pp. 271-279. 4. Ebeling, C. E. (Winter 2009). "Evolution of a Box". American Heritage of Invention and Technology 23 (4): pp. 8 9. 5. Glover F., 1977. Heuristics for Integer Programming Using Surrogate Constraints, Decision Science 8, pp156-166. 6. Glover F., E. Taillard, and D. de Werra, 1993. A User Guide to Tabu Search. Annals of Operations Research 41, pp. 3-28. 7. http://www.maerskline.com/link/?page=brochure&path=/our_services/vessels, accessed on April 25th, 2011. 8. J-G Kang and Y-D Kim, 2002. Stowage Planning in Maritime Container Transportation, Journal of the Operational Research Society, 53, pp. 415-426. 9. Wilson, I.D. and Roach, P.A., 1999. Principles of combinatorial optimization applied to container-ship stowage planning, Journal of Heuristics, 5, pp. 403-418.

10. Wilson, I.D. and Roach, P.A., 2000. Container stowage planning: a methodology for generating computerized solutions, Journal of Operational Research Society, 51, pp. 1248-1255. 11. Liu F., Low M. Y. H., Huang S. Y., Hsu W. J., Zeng M., Win C. A., 2010. Stowage Planning of Large Containership with tradeoff between Crane Workload Balance and Ship Stability. Proceedings of the 2010 IAENG International Conference on Industrial Engineering. pp. 1537-1543. 12. Xiao X., Low M. Y. H., Liu F., Huang S. Y., Hsu W. J., Li Z., 2009. An Efficient Block- Based Heuristic Method for Stowage Planning of Large Containerships with Crane Split Consideration. Proceedings of the International Conference on Harbour, Maritime & Multimodal Logistics Modelling and Simulation, pp. 93-99.