118
Master’s Thesis Disruption Management in Liner Shipping Introducing the Vessel Schedule Recovery Problem By Jakob Dirksen Supervisor: David Pisinger Co-supervisors: Christian Plum Berit Løfstedt Bo Vaaben Company: Maersk Line Submission date: June 27, 2011

Disruption Management in Liner Shippingetd.dtu.dk/thesis/278558/JakobDirksen_MasterThesis.pdf · to disruption management in the liner shipping industry and to the best of my knowledgeitisthefirstliteraturepresentedonthetopic

  • Upload
    doannhu

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Master’s Thesis

Disruption Management in Liner ShippingIntroducing the Vessel Schedule Recovery Problem

By Jakob Dirksen

Supervisor: David PisingerCo-supervisors: Christian Plum

Berit LøfstedtBo Vaaben

Company: Maersk Line

Submission date: June 27, 2011

This thesis is done by

Name: Jakob DirksenStudy id: s062220Address: Schleppegrellsgade 10, 1.th, 2200 Kbh N, DK

Mail: [email protected] / [email protected]: dirksen.nu

Phone: (+45) 28 55 11 15

Project Info

Master’s ThesisTitle: Disruption Management in Liner Shipping

School: Technical University of DenmarkCredit: 30 ECTS Points

Project start: February 3, 2011Last revision: June 24, 2011

Submission date: June 27, 2011Supervisor: David Pisinger

Co-supervisors: Christian PlumBerit LøfstedtBo Vaaben

Company Contact

Company: Maersk LineContact: Christian Plum

Mikkel Mühldorf SigurdDaniel Bruun

Student Signature

Jakob Dirksen June 24, 2011

Cover graphic by Joseph Spademan - www.jojopops.co.uk - The painting shows the vessel EmmaMaersk being attacked by a giant octopus, which would cause a significant disruption.

AbstractThis project presents a mathematical model on recovery strategies for disruptionmanagement in liner shipping. During a disruption, important vessels deviate sig-nificantly from the operational planning implying that decisions need to be takenregarding the future operation. The status of vessels and container flows in a dis-rupted situation is the input to the model, and a strategy of how to return to theplanned operations with minimum impact on containers and costs is the output. Inthe literature no former research in this area exists. The problem solved is namedthe Vessel Schedule Recovery Problem and is shown to be NP-complete.

The mathematical model is inspired from the established models used to handledisruptions in the airline industry. Especially, the current state of the art solutions tothe Aircraft Schedule Recovery Problem are an evident source of inspiration.The model is a flow model formulated on a time-space network. Building the graphis where the majority of the computational time is used.

In the thesis, four cases from a major international liner shipping company (ML) areused to test the model. The model is capable of generating competitive solutions forall of the cases in very short time. The experienced operators at ML are convincedthat a real-time decision support tool, built on top of the models, would have greatvalue. To ensure that the general computational time allows implementation in areal-time tool, a generic way of generating recovery problems is stated, and testsshow that the model solves the problem fast enough for all instances of relevant size.Thoughts are given on the findings and future work.

Page i

AcknowledgementsFirst, I would like to thank Berit Løfstedt(1), Christian Plum(1,2), and Bo Vaaben(1,3)

for suggesting the project to me. Without their initial inputs, trust and support theproject would not have been possible.

I want to thank Christian especially for his continuous support and clear interestin the project. He has throughout the project given valuable feedback on my workand shared essential information on Maersk Line. Berit deserves a bunch of flowersfor being a recurring source of inspiration, for providing relevant literature, and forgiving irreplaceable feedback. Bo’s insight into the success of disruption managementbased on operations research in the airline industry has been very motivating, andhe deserves extra thanks for the good discussions on the initial part of the modeling.

I would also like to thank my supervisor David Pisinger(1) for the good counselingand constant encouragement. David’s inputs have helped to maximize the academiccontribution in this work. Furthermore, his cheerful mood transmits, and makes theworking hours much better.

I thank Mikkel Sigurd(2) and Steffen Conradsen(2) for prioritizing time and resourcesto the project. Especially the resulting effort from Daniel Bruun(2) has been crucial.Daniel has provided insight into the recovery problems in liner shipping and helpedevaluate the optimized solutions. I appreciate his help and effort enormously. Withoutthe combined support from the people at Maersk Line this thesis would not exist.

In the end my good friends Marco Bender(4) and Morten Ib Nielsen(5) also deservethank. Each has helped with discussions and insight in their respective field ofexpertise. Marco is a mathematical wiz and Morten Ib a constant support in thedomain of computer science.

Finally, I would like to state that I take full responsibility for whatever errors andmisunderstandings that remain.

Thank You

————————————1. Technical University of Denmark

2. Maersk Line

3. Jeppesen

4. Technische Universität Kaiserslautern

5. PA Consulting

Page iii

ContentsAbstract i

Acknowledgements iii

Contents iv

1 Introduction 11.1 Hypothesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Reading Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.4 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Problem Domain 92.1 Liner Shipping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Disruption Management in Transportation . . . . . . . . . . . . . . . 132.3 Related Literature . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.4 From Airline to Liner Shipping . . . . . . . . . . . . . . . . . . . . . 222.5 Project Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3 Problem Analysis 253.1 Objective during Recovery (Costs) . . . . . . . . . . . . . . . . . . . 253.2 Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.3 Current Solution Approach . . . . . . . . . . . . . . . . . . . . . . . 313.4 Problem Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.5 The Vessel Schedule Recovery Problem in Words . . . . . . . . . . . 36

4 Modeling 374.1 Graph Presentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.2 Growing the Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.3 The Vessel Schedule Recovery Problem in Math . . . . . . . . . . . . 424.4 Mathematical Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.5 Complexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5 Decision Support Software 575.1 Daily Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575.2 Generating Multiple Good Solutions in Theory . . . . . . . . . . . . 60

6 Generated Recovery Strategies 656.1 Solution Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656.2 Overall Results for the Cases . . . . . . . . . . . . . . . . . . . . . . 666.3 Detailed Results for the Cases . . . . . . . . . . . . . . . . . . . . . . 676.4 Generating Multiple Good Solutions . . . . . . . . . . . . . . . . . . 756.5 Stress Testing the Solution Approach . . . . . . . . . . . . . . . . . . 81

Page iv

CONTENTS

7 Closure 877.1 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 877.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897.3 Returning to the Hypothesis . . . . . . . . . . . . . . . . . . . . . . . 93

8 Conclusion 95

Bibliography 97

List of Figures 101

List of Tables 102

A Appendix 103A.1 Press Releases from ML . . . . . . . . . . . . . . . . . . . . . . . . . 103A.2 Outline of Implementation . . . . . . . . . . . . . . . . . . . . . . . . 105A.3 Impact of Number of Ports in Generated Instances . . . . . . . . . . 106A.4 Computational Times for Generic Instances . . . . . . . . . . . . . . 107A.5 Changing the OTD Penalty . . . . . . . . . . . . . . . . . . . . . . . 110

Page v

1IntroductionThe operation of a global shipping network is complex and unreliable. This especiallygoes for liner shipping of containers. The complexity stems from the large set of origin-destination pairs (where containers are transported between) and the unpredictabledemand. The network is unreliable due to disruptions such as delayed vessels andclosed ports. Vessel delays may be caused by bad weather, congestions, or mechanicalproblems, and ports may be closed due to political instabilities, extreme weatherconditions, congestions, or strikes. The aim of this project is to mitigate the negativeeffect of these disruptions using optimization. An implementable mathematical modelwith promising computational results is presented.

Handling the daily disruptions in the network is an important task. It needs to bedone by personnel with an extensive insight into the operations, with a profoundunderstanding of the recovery objective, and access to detailed information aboutthe operations.

To exemplify; think of a global network where a vessel transporting containers fromAsia to Europe is delayed with 24 hours. This is considered a significant delay andneeds to be handled. The operator will have to decide among a number of recoveryoptions. One alternative could be to speed up the vessel using extra fuel, and anotherto omit the first port call in Europe to keep the remaining schedule. The preferredoption depends on several costs and customer service related target objectives. The

Figure 1.1: Container vessels loading and unloading at Bremerhaven in Europe.

Page 1

CHAPTER 1. INTRODUCTION

most important costs are the fuel cost, the infused cost from affecting containers,and the cost of calling ports and moving containers. The primary objective is notnecessarily related to costs, but might instead depend on key client relations andcustomer demand of on time delivery. This makes the problem complex with a seriesof stakeholders. In real life the operator has a high number of possible actions tochoose from, and the impact of each possible action (for each stakeholder) may behard to evaluate.

This raises the need for decision support software. The basic idea is that a computerevaluates all of the possible actions and presents the best options. If none of thepresented options are acceptable the operator may modify the input and compute anew set of alternatives. Such systems have been proven very valuable when handlingdisruptions in the airline industry. This project presents a novel method to applyto disruption management in the liner shipping industry and to the best of myknowledge it is the first literature presented on the topic.

This project is based on problem and data input from a major global liner shippingcompany (Maersk Line), hereafter ML. The operated fleet of ML comprises morethan 600 vessels and close to 2 million containers. ML handles severe disruptions ona daily basis. These span from delays due to weather to major disruptions causedby political issues such as the revolutions in Egypt, Algeria and Liberia or theproblems caused by the tsunami in Japan both taking place in the spring of 20111.ML has contributed to this project by defining the problem and the current solutiontechniques, and by evaluating the suggested solutions. The modeling and evaluationis based on four disruption problems (cases) from the first quarter of 2011. Theseproblems are picked by experienced personnel at ML to represent the most frequentdisruption scenarios. A large part of the project has been to retrieve the necessarydata for the instances, and to retrieve knowledge about the daily operations fromthe personnel at ML.

The four real life instances from ML have been solved using an optimization softwarepackage on a standard computer. The cases involve between 1 and 10 vessels, upto 8000 transported containers, and vary significantly in structure. The presentedmodel is capable of handling all four instances and the resulting recovery strategiescan compete with the decisions made by ML during the disruptions2. The instancessolve to optimality within a few (< 5) seconds each and are thereby applicable tosupport the operators at ML in real-time.

The present chapter introduces the project’s hypothesis, and an overview of thecontributions and the remaining part of the thesis is given.

1See Appendix A.1 with press releases from ML concerning the big disruptions.2In two of the four cases the mathematical model based solutions outperform the strategy chosen

by ML, in one the model agree with the strategy by ML, and in the last the strategy by ML isoutside the scope of this project. See Chapter 6 for more details.

Page 2

1.1. HYPOTHESIS

1.1 Hypothesis

The aim of this research is to support or contradict the following hypothesis:

Decision support for disruption management in liner shippingbased on methods in operations research is

both feasible and desirable.

To be feasible, a decision support system has to provide solutions within minutes,evaluate the cost connected to suggested solutions, take all relevant actions intoaccount, and be applicable for most disruptions. The evaluation of the two latter isbased on input from domain experts within liner shipping. Furthermore, it is essentialthat the relevant data to solve the problem is accessible.

For a decision support system to be desirable it has to be easy to use, and has toanalyze and create new information for handling a problem that is otherwise hard tosolve. Handling disruptions is in fact a hard and time consuming task today. Theease of use will not be assessed in this project.

The methods used are based on operations research. A careful introduction includingthe general theory used in this thesis is given by Nemhauser and Wolsey (1988). InSection 7.3 the findings of the project in terms of the hypothesis are presented.

1.2 Contributions

This project is primarily a master’s thesis to obtain theMaster of Science in IndustrialMathematics (M.Sc.) degree at the Technical University of Denmark. However, theproject also represents value for the academic society by

• Introducing the Vessel Schedule Recovery Problem (VSRP).

• Proving that the VSRP is NP-complete.

• Presenting a network flow model for the VSRP that is solvable for real lifeinstances in short time.

• Presenting modifications allowing obtaining several/all Pareto efficient solutionsbased on the theory within multi-criteria optimization.

• Presenting a method to get multiple good solutions based on the knowledge ofthe operator and variable fixing.

• Presenting a method to generate generic instances of the VSRP.

Page 3

CHAPTER 1. INTRODUCTION

• Discuss future extensions of the problem and the model.

and to ML by

• Presenting results for real life instances based on mathematical modeling.

• Showing that the concept of decision support based on operations research mayimprove handling of disruptions in liner shipping.

• Presenting an overview of future work needed to implement a decision supportsoftware solution.

I hope that the project will be valuable both for the academic society and for ML.

1.3 Reading Guide

As readers with different backgrounds may have interest in the project, an overview ofthe thesis is given allowing readers to concentrate on the relevant parts. However, therecommendation is to read the project in its entirety as central concepts are definedthe first time they appear. In the next section a glossary is given as a reference whenreading the thesis. Furthermore, the figures and tables in the thesis are listed onrespectively page 101 and 102.

First, in Chapter 2 the domain of liner shipping, the setting of disruption management,applicable research, and the project scope are presented.In Chapter 3 the cases from ML are presented and the VSRP is formally defined.The first part of the chapter is used to introduce the costs adding to the objective ofthe VSRP.Chapter 4 is used to present a mathematical model for the VSRP, and prove theNP-completeness of the problem.In Chapter 5 the idea of a decision support system based on the mathematicalmodeling is described and modifications improving the applicability of the model arepresented. Different ways to obtain multiple good solutions are stated.Next, Chapter 6 presents computational results and Chapter 7 rounds off the thesiswith a discussion of the project and ideas for future work.A conclusion on the project is given in Chapter 8.

Page 4

1.4. GLOSSARY

1.4 Glossary

This section gives an overview and definition of the most central concepts whenhandling disruptions in liner shipping. The concepts are listed in alphabetic order.The glossary is meant as a reference when reading the thesis.

Concept Definition

Back haul Most services have a back haul direction where vesselsare far from full and the liner company merely seeksto cut costs. The majority of the buffer time on around trip is during the back haul sailing. The backhaul sailings stem from the imbalance in world trade.

Berth The physical area in the port where vessels are placedduring port calls.

Berth prioritization This term is used when it is necessary to prioritizethe order of calls at a given port for two (or more)vessels.

Buffer time Extra time included in the proforma schedule of avessel to allow planned operation despite small dis-ruptions and delays.

Bunker Fuel used by container vessels.Call See “Port call”.Delay A delay for a vessel is that the vessel is forced to devi-

ate significantly from the planned proforma schedule.A delay for containers leads to OTD-impact.

Feeder A small vessel used to transport a small quantum ofcargo between all ports within a geographical region.See also “Hub&Spoke”.

Head haul Most services have a head haul direction where vesselsare almost full. Transporting cargo in the head hauldirection is the reason to have the service and wherethe majority of the revenue is generated. To staycompetitive vessels sail fast with little buffer in thehead haul direction.

Hub A large port where cargo is collected in order to utilizemother and feeder vessels. This is also known as atransshipment port. See also “Hub&Spoke”.

Hub&Spoke A network design where feeder vessels are used tobring cargo from small ports (spokes) to a nearbylarge transshipment port (hub), and mother vesselstransport the cargo over long distances between trans-shipment ports.

Idle vessel An idle vessel is an operational vessel that has notbeen assigned to a schedule and therefore lay still.Vessels are normally only idle for a short period oftime after returning from maintenance.Continued on next page. . .

Page 5

CHAPTER 1. INTRODUCTION

Continued from last page. . .

Concept Definition

Leg A leg is a possible sailing to a given port. For ascheduled port call a number of legs might exist cor-responding to arriving at different times and withvarious speeds. A leg is also referred to as a sailing.

Maximum speed The fastest possible a vessel can sail in fair conditions.MC-impact MC-impacting a container means to operate such that

the container miss-connects along its journey.Minimum speed Engines in vessels cannot sail arbitrarily slow. They

are built to perform at a given level. If a vessel hasspare time it cannot slow further down than theminimum speed, but has to wait at the destination.

Miss-connection A container is miss-connected if it arrives in a trans-shipment port later than the scheduled transship-ment to another service. This will always lead toOTD-impact, and may incur extra costs.

Mother vessel A large vessel used to transport a large quantumof cargo between transshipment ports. See also“Hub&Spoke”.

Omit port Omitting a port call means that a given vessel doesnot visit the port as planned. Containers destinedfor an omitted port will have to be re-flowed andcontainers supposed to be picked up will have to waitfor the next vessel.

On Time Delivery On Time Delivery (OTD) is by ML defined to be de-livering cargo on the day after the scheduled deliverytime at the latest.

OTD-impact OTD-impacting a container means to operate suchthat the container does not arrive at the destinationin time.

Port call A port call means to go to a port in order to loadand unload cargo.

Port swap If the sequence, in which ports are visited by a vessel,is changed this corresponds to swapping the ports.

Proforma The proforma schedule is the original planned sched-ule for a vessel. This schedule is optimized to providethe correct level of customer service as cheaply aspossible. All recoveries are aimed at returning to theproforma schedule.

Re-flowing Re-flowing is the action of assigning an alternativeroute from the current position to the destination fora container.

Route A route is the way a vessel sails. This is most often around trip used to constitute a service.

Sailing See “Leg”.Service A weekly served round trip. The service has a route

for which each port is visited weekly. A number ofvessels are deployed on the service.Continued on next page. . .

Page 6

1.4. GLOSSARY

Continued from last page. . .

Concept Definition

Slow steaming In order to save bunker fuel and the environment mostvessels slow down. This is known as slow steaming.

Spoke A small port which only handles import and exportcargo from feeder vessels. See also “Hub&Spoke”.

Swap See “Port swap”.Transshipment The movement of a container from one vessel to an-

other. Transshipments are most commen in hubs.Transshipment port See “Hub”.Utilization A measure of how much cargo a vessel is carrying rel-

ative to the capacity. Utilization determines whethereconomies of scales are achieved or not. Good uti-lization is essential to the liner shipping companies’revenue streams.

VSRP The Vessel Schedule Recovery Problem.

Table 1.1: Central concepts in recovery management for liner shipping.

Page 7

2Problem DomainThe first part of this chapter is dedicated to a careful introduction to the domain ofliner shipping. This is important since disruption management based on mathematicalprogramming has not previously been applied within the field. A good understandingof the setting is essential. The second part is a brief introduction to the establishedfield of disruption management within the airline industry. Section 2.3 gives aliterature review within the two mentioned fields. Similarities and differences betweenthe disruption problems in the airline industry and the liner shipping industry arecovered. Finally, a formal project scope for the thesis is presented.

2.1 Liner Shipping

Liner shipping of containers is the backbone of world trade. Continuously more andmore cargo is containerized and shipped, for example from the world’s factories inthe east to consumers in the west. Stopford (2009) gives a broad introduction to thefield of liner shipping and documents the continuous growth in the sector. Even ascontainerization simplifies the operations and minimizes the cost per transported unit,the earned return is less than 10% on assets (Stopford, 2009). The general marketis very competitive and relatively easy to enter. To enter the container shippingmarket and compete on a given route the only necessary asset is a single vessel. Thepast years’ financial crisis has only made the competition in the market even moreintense. Customers demand fast and reliable delivery, while the shipping companiesconstantly search to cut costs. These issues have motivated major investments inimproving the daily operations at large shipping companies (Notteboom, 2006, p.32).

The idea in liner shipping is similar to what is known from a scheduled bus network1.The shipping company publishes a plan consisting of routes to sail and the frequencyeach port is visited on a particular route. Containers travel through the network aspassengers in a bus network often combining several routes. A number of vessels aredeployed on each route called a service. A typical service could connect Asia andEurope with a weekly departure. The route would be a round trip picking up cargo inAsia to transport to Europe. In Europe the cargo would be unloaded and new cargo(or empty containers) would be transported back. Such a round trip typically takes10 weeks for a vessel implying that 10 vessels are needed on that particular route toensure weekly service. In recent years major companies have lowered the speed ofvessels demanding more vessels to cover a round trip, but significantly lowering thevariable cost and limit the environmental damage (Løfstedt et al., 2011; Rosenthal,2010; Maersk, 2010).

1The connection to the well-known bus network is valuable when first working with liner shipping.Please keep this connection in mind when miss-connections etc. are defined later.

Page 9

CHAPTER 2. PROBLEM DOMAIN

Asia - Europe (AE7) - Westbound

Arrives

TUE

THU

SAT

SUN

FRI

SAT

SUN

THU

SAT

WED

Departs

MON

TUE

FRI

SUN

MON

FRI

SUN

MON

FRI

MON

THU

Transit

--

1

3

5

6

11

26

27

31

33

36

Port

Shanghai, China

Ningbo, China

Xiamen, China

Hong Kong, Hong Kong

Yantian, China

Tanjung Pelepas, Malaysia

Port Tangier, Morocoo

Algeciras, Spain

Rotterdam, Netherlands

Felixstowe, United Kingdom

Bremerhaven, Germany

Asia - Europe (AE7) - Westbound

BremerhavenFelixstowe Rotterdam

NingboShanghai

XiamenYantian

Hong Kong

Tanjung Pelepas

Algeciras

Port Tangier

Figure 2.1: The head haul part of a Asia-Europe round trip. Cargo is collected in trans-shipment ports in Asia, sailed to transshipment ports in the Strait of Gibraltar, and on totransshipment ports in northern Europe. The round trip takes ≈63 days implying that 9vessels is required to maintain a weekly service. [maerskline.com]

To stay competitive, research has been focused on designing the network to operateas efficiently as possible. For most shipping companies, the network has a so-calledhub and spoke design (Christiansen et al., 2007, chap. 3.3.2). The idea is thatlarge vessels (denoted mother vessels) transport cargo over long distances betweenlarge transshipment ports (denoted hubs), and small vessels (denoted feeder vessels)transport the cargo between the large transshipment ports and the actual place ofrespectively origin and destination (denoted spokes). An example of a mother vesselservice is given in Figure 2.1. Feeder vessels operate between any pair of ports withina geographical region.

The motivation for this kind of network is to benefit from the economies of scale.Containers are transported between a huge number of origins and destinations,implying that it is impossible to provide direct transportation for each. Instead,containers are gathered at hubs and loaded onto large efficient vessels with a low unittransportation cost when full. The network design makes it necessary to transshipcontainers between vessels, which is a growing practice adding to the operationalcomplexity and to the implications of disruptions. The utilization of a vessel describeshow much cargo it carries relative to the maximum capacity. A high utilization resultsin efficient transportation and a low cost per transported unit.

To give an example; a container from California (USA) to the small island Mut-samudu (Comoros) outside Madagascar (Africa), could be transported as follows.The customer’s sealed container is picked up by a truck at the customer’s facilitiesand transported directly to the transshipment port (hub) in Los Angeles. At thismajor port the container is loaded onto a mother vessel on a trans-Pacific routefrom America to Asia. The container is transshipped at the hub in Tanjung Pelepas

Page 10

2.1. LINER SHIPPING

Durban

Arrives

MON

SUN

WED

SAT

THU

SUN

TUE

FRI

MON

WED

FRI

SUN

WED

MON

Departs

FRI

MON

THU

SUN

FRI

MON

THU

SAT

TUE

THU

SAT

TUE

SAT

FRI

Transit

--

2

2

2

4

2

1

1

2

1

1

1

1

2

Port

Durban, South Africa

Toliara, Madagascar

Tolagnaro, Madagascar

Toamasina, Madagascar

Port Louis, Mauritius

Reunion, Reunion

Victoria, Seychelles

Antsiranana, Madagascar

Longoni, Comores

Mutsamudu, Comores

Nosy Be hell Ville, Madagascar

Mahajanga, Madagascar

Maputo, Madagascar

Durban, South Africa

UAFL ISLANDS EAF - SAF

TolagnaroReunion

Port Louis

MutsamuduLongoni

Victoria

MaputoToliara

Toamasina

AntsirananaNosy Be Hell Ville

Mahajanga

Figure 2.2: Example of a feeder route. Feeder vessels are used to connect all ports in ageographical area. In this example the feeder vessels collect containers in the hubs in Durban(South Africa) and Port Louis (Mauritius), and transport them to their destinations aroundMadagascar. [maerskline.com]

(Malaysia) outside Singapore to another mother vessel connecting Asia and the south-ern part of Africa. At the hub in Durban (South Africa) the container is transshippedto the Madagascar feeder (Figure 2.2) that brings it the last part of the seabornejourney. Finally, a truck picks up the container and delivers it to the customer.

This way of transporting containers does not minimize the distance the containerstravel, but minimizes the total cost due to the effect of economies of scale at themother vessels with high utilization. However, customers’ demand of fast deliverymight imply that they choose the shipping company presenting the route with theleast transshipments (Notteboom, 2006). This complicates the design of the linernetwork as costs, sailing times, and customer requirements need to be taken intoaccount.

Typically, it is not possible to design a network with balanced demand. That is, anetwork where the same capacity is required on all parts of each round trip. This isdue to the imbalance of world trade. Some regions are mostly exporting and othersmostly importing general cargo. Liner shipping companies operate with a head hauland a back haul direction. In the head haul direction vessels are almost full, and inthe back haul direction they are far from full. In the Asia-Europe example the headhaul is transporting cargo from Asia to Europe, where around 80% of the revenue isgenerated2. To stay competitive companies focus on fast delivery in the head haulpart of the round trip, whereas more buffer time is added to the back haul part.

2Estimated number by ML.

Page 11

CHAPTER 2. PROBLEM DOMAIN

The most important variable costs in this kind of network is the bunker cost (thecost of fuel for the vessels), the cost of using passageways such as the Suez andPanama canals, and the cost of calling ports to load and unload cargo. The fixedcost of operating a network is also major due to asset costs on vessels, containers,and equipment.

Whenever a vessel fails to operate in accordance with the original schedule it is hurtingthe shipping company’s business (and the business of their customers) (Notteboom,2006). The utilization of vessels will often be affected negatively as containers miss-connect, resulting in a higher cost per transported unit. Furthermore, it might benecessary to arrange alternative transport for the miss-connected units also addingto the cost. Finally, the customers’ demand a reliable service and expect on timedelivery. A major concern is therefore how to handle disruptions when they occur.

Disruption Management in Liner Shipping

Disruptions occur often in a global liner network. According to Notteboom (2006)approximately 70-80% of vessel round trips experience delays in at least one port.The common causes are bad weather, strikes in ports, congestions in passagewaysand ports, and mechanical failures. More exceptional causes include piracy and crewstrikes on the vessels. Depending on the severity of the disruption it can significantlyhurt the performance of the network. Due to the network design each container is onaverage transshipped more than two times3.

A container transported from port A to port B with a single transshipment in portT from vessel vAT to vessel vTB might miss-connect. That is, the container mightnot be ready for vTB in T in time due to a delay of vAT , and will therefore have towait for the next vessel from T to B (normally seven days later)4. The container issaid to be MC-impacted. Even though the transshipment in T is successful, delaysmay propagate and result in delivering the container too late in B. The effect ofdelays has to be mitigated as they significantly harm the business. Notteboom (2006)describes the effects and concludes “Lost minutes result in lost dollars for shippinglines and their clients”. ML aims at delivering 95% of the containers no later thanthe following day of the promised delivery time (called “On Time Delivery” or OTD).If this is not possible the container is said to be OTD-impacted.

When disruptions occur, the operator at the shipping companies manually decideswhat action to take. Different techniques can be used to recover. For a single delayedvessel on the head haul journey, a simple approach could be to speed up. However,the cost of bunker fuel is exponentially growing with the speed (Alderton, 2004,chap. 3) and vessels speeds are limited. In recent years liner companies have hadan increased focus on minimizing the bunker consumption (both to maintain an

3Estimated number by ML.4The miss-connection corresponds to if a bus passenger misses a bus and has to wait for the

next.

Page 12

2.2. DISRUPTION MANAGEMENT IN TRANSPORTATION

image of being environmental friendly and to minimize the operational costs (Maersk,2010)). As an alternative to speeding up on the head haul and deliver the cargo ontime, it is possible to recover on the back haul where the vessels have the majorityof the buffer time on a round trip. This would result in delivering the cargo toolate and thereby harm customer satisfaction. ML has put a strategic penalty onOTD-impacting containers to objectively evaluate the trade-off between customerservice and bunker consumption.

Even with the comparable costs and penalties it is a difficult task to find the bestway to recover. Often disruptions affect more than one ship, and often it is complexto evaluate the OTD-impact and MC-impact for each alternative. Currently, themost obvious recovery scenarios are manually evaluated by personnel at ML (whoare often in contact with various stakeholders agitating for one particular solutioneach) under intense time pressure. It is hard to evaluate whether the best possibledecisions are taken.

A standardized way of handling disruptions based on mathematical grounded decisionsupport would make it easier to implement strategic decisions. Furthermore, it maysignificantly lower the cost of handling disruptions as seen in the airline industry(Rakshit et al., 1996; Yu et al., 2003). However, to the best of my knowledge noformer research has focused on this problem within liner shipping. The presentedwork is therefore the first to investigate disruption management in liner shippingwhere the impact is expected to be at least as positive as in other industries.

2.2 Disruption Management in Transportation

Decision support systems based on operations research have been developed tohelp the daily operations in a number of industries. In the process of developing adisruption management framework for liner shipping it is obvious to benefit fromformer research. However, it is important to find an industry (and a disruptionproblem) that matches the setting of liner shipping as much as possible. Two intuitiveplaces to search for usable research are disruption problems at other modes offreight transportation and at industries in connection with liner shipping. Withinthe transportation sector several studies have documented significant effect of toolsbased on mathematical programming (Álvarez, 2009).

Christiansen et al. (2007) look at similarities between general shipping and aircraft,truck, train and pipeline transportation. A modified overview of their survey isgiven in Table 2.1. From a disruption point of view the most interesting is theoperational uncertainty. Here transportation by aircraft and vessel stands out with alarge uncertainty, while the other modes of transport are relatively stable.

Furthermore, the cost structure and competitive nature of airborne transportationhas core similarities to liner shipping. Both have high fixed costs, no benefit fromempty slots, variable fuel costs, and high complexity with units (or passengers) using

Page 13

CHAPTER 2. PROBLEM DOMAIN

ModeOperational Liner GeneralCharacteristic Shipping Shipping Aircraft Truck Train

Fleet variety small large small small smallPower unit is an integral partof the transportation unit

yes yes yes often no

Transportation unit size fixed fixed fixed usuallyfixed

variable

Operating around the clock yes usually seldom seldom usuallyTrip (or voyage) length weeks days-

weekshours-days

hours-days

hours-days

Pays port fees yes yes yes no no

Route tolls often possible none possible possibleDestination change while un-derway

possible possible no no no

Operational uncertainty large large large small small

Table 2.1: Comparison of operational characteristics of freight transportation modes (modi-fied version of table by Christiansen et al. (2007)).

several connections. The developed disruption techniques in the airline industry arean evident source of inspiration.

The research within disruption management in industries connected to liner shippingis sparse. In the literature review (Section 2.3) two conference proceedings on theBerth Scheduling Problem under disruptions are mentioned. However, theresearch is not applicable to the problem of this thesis as the output of the recoverydiffers substantially. The models used in the airline industry are much better suitedto the Vessel Schedule Recovery Problem (VSRP).

Disruption Management in the Airline Industry

The airline industry is one of the most evident sources of success in applyingoperations research. This goes for most parts of the operational planning processfor both airlines and airports, but also within revenue management and disruptionmanagement effective decision support systems have been implemented.

Airlines experience disruptions on a daily basis due to causes as airport closuresand bad weather. Whenever disruptions occur, the airline operators have multipleoptions to mitigate the impact (delay flights, cancel flights, swap aircraft, etc.).The preferred recovery strategy is dependent on the impact on aircraft, crews, andpassengers. However, no decision support is capable of solving the full problemintegrated. Instead the current approach is a sequential optimization where aircraft,crews and passengers are recovered in turn (Clausen et al., 2009). Systems based onthis approach have been proven extremely valuable.

Page 14

2.3. RELATED LITERATURE

How can Jeppesen Disruption Management deliver solutions that benefit both crew, fleet and passengers?Jeppesen Disruption Management integrates the tools for control and recovery of !eet, crew and passengers. In a disrupted situation all the three tools can be called to provide an integrated solution. Together the three tools produces solutions that are both feasible and ef"cient for all three resource areas.

How can the tools work in an environment of continuous change?The most important factor is that the tools are very fast. Major changes are unlikely to occur while the optimizers are running. However, if changes do occur during the optimiza-tion run which makes parts of the solution invalid, the user has three options: accept part of the solution and repair it manually, accept part of the solution and repair it with the optimizer, or reject the solution in its entirety and start a new optimization.

What value can optimization bring on day of operation?The main bene"t from introducing optimization is that it provides control. The controller’s role is changed from simply reacting to individual alerts to being in control of the consequences of different recovery strategies. The optimizer can also be used proactively to analyze the stability of the current operation, for example to detect !ight delays or cancellations and thereby avoid major problems later that same day. By combining the three tools a solution is generated that protects the business objectives regarding costs and passenger re-accomodation service.

If you have any questions about Jeppesen Disruption Management, please contact us at [email protected]

2010

110

3 Jeppesen Systems AB, PO box 192, Odinsgatan 9, Göteborg, Sweden.Phone +46 31 720 81 00, fax +46 31 720 81 20. Contact us at [email protected] if you would like to know more.

www.jeppesen.com

Que

stio

ns &

Ans

wer

s

This is an integrated view that shows !eet, crew and passenger consequences.

This view shows alerts for a set of delayed !ights.Figure 2.3: Screenshot from the airline disruption management developed by Jeppesen. Eachline represent an aircraft, and the operator can drag-and-drop the blue flight segments tochange the schedule. After possible recoveries are generated the operator can access a detailedoverview of the concequences of each of the suggested strategies. [jeppesen.com]

An example is an advanced system developed by Jeppesen (Figure 2.3). Theirsystem allows the operator to handle disruptions by drag-and-drop in a graphicaloverview of all flights. The software is capable of suggesting a number of interestingrecovery alternatives, and calculates the impact on aircraft, crews, and passengers ineach scenario. The system is integrated in a number of international airlines dailyoperations.

2.3 Related Literature

This review begins at the literature within liner shipping. The work by Stopford (2009,chap. 13) gives a thorough description of the history, the economical aspects, and theoperational aspects of liner shipping. Also the network design and competitive natureof the market is covered. The market is very competitive and in constant development.A complimentary brief overview is given by Alderton (2004, chap. 12). His focus ison the organization of liner shipping companies, the growth in the market, and the

Page 15

CHAPTER 2. PROBLEM DOMAIN

competitive nature of the market including inter-company agreements. He mentionsthat the operating unit in a liner shipping company has to “combat the problemsof delays, strikes, breakdowns and the annual dry-dock”. Whereas the annual dry-docking is incorporated in the strategic planning steps, the other issues are unforeseendisruptions and need to be handled.

Notteboom (2006) focuses on disruptions in liner shipping and describes the negativeeffects. It is documented that disruptions are a major problem considering directcosts, but also considering the costs inferred on customers. Further, he presents theactions used to mitigate the effects of disruptions5. The recent paper by Notteboomand Vernimmen (2009) demonstrates how the increased bunker price has a significantimpact on the liner shipping business (and in particular the network design). The costof fuel is a dominant cost driver when transporting containers, nevertheless shippingcompanies are willing to burn extra fuel to arrive according to the schedule. Thistrade-off is what makes disruption management an important issue. Notteboom andVernimmen also argue that the increased price on bunker has resulted in loweringthe speed of vessels to save fuel, which in turn gives the vessels more buffer time andthe operators more possibilities when handling a disruption.

Historically, the focus on optimization within maritime transportation has beenlimited. Christiansen et al. (2007) mention four reasons for the low attention. Thearea has low visibility as few companies operate their own vessels and as vessels arenot an integrated part of the everyday life such as trucks and trains are. Secondly,the ocean shipping industry has a long tradition resulting in conservatism andconsolidated routines. Furthermore, the planning problems in shipping are seldomgeneric, but rather special for each type of cargo to transport (with containerscounting as one type of cargo). The most interesting point in Christiansen et al.’sreasoning, from this project’s point of view, is that maritime operations have muchmore uncertainty than other modes of transport. The companies engaged withmaritime transportation constantly experience delays due to the above mentionedcauses of disruptions. In particular the considerations by Christiansen et al. hold forliner shipping of containers. Løfstedt et al. (2011) adds that the competitive natureof maritime transportation tends to make it hard for academic researchers to get thenecessary insight and data.

Later in the handbook, Christiansen et al. (chap. 6.3) mention the demand of tools fordisruption management, but no further details are given. Even though the researchwithin maritime transportation has gained increased focus in the last decades, thereexists no literature devoted to disruption management in (liner) shipping. This canbe caused by various things; firstly as mentioned the usage of mathematical modelingin maritime transportation is still limited and secondly the market of liner shippingis extremely competitive. The development of decision support software will often becarried out for a major player in the market and therefore not necessarily published.

5These are described in Section 3.3.

Page 16

2.3. RELATED LITERATURE

Operational planningTactical planningStrategic planning

Network Design

Fleet sizeand mix

Cargobooking

Fleet deployment

Figure 2.4: Steps in the planning process of liner shipping (Christiansen et al., 2004).

However, the work by Yang et al. (2010) and Li et al. (2009) addresses disruptionmanagement for berth allocation in container terminals. To the best of my knowledgethis is the only published research addressing the problems arising from disruptionsin container vessels sailings. Their papers are focused on how to recover the berthingschedules when vessels are delayed. Yang et al. presents an Integer Linear Modeland a heuristic solution approach. The problem handled is far from that of vesselrecovery and therefore the applicability of their research in this project is limited.

The remaining of this review concerns planning in liner shipping and disruptionmanagement in the airline industry.

Planning in Liner Shipping

This review continues with the literature on planning in liner shipping6. The mostrecent overview of research within planning of maritime shipping is by Christiansenet al. (2004). They cover literature in routing and scheduling ranging over 50 years(from the pioneering work of Dantzig and Fulkerson in 1954 concerning tankerdeployment and to the research in 2004). The main focus is on literature from 1994 to2004. In the paper literature within all types of planning in maritime transportationis covered. Here the focus is on strategic, tactical and operational planning withinliner shipping, even though Christiansen et al. (2007) note the paucity of researchwithin these areas. An overview of the planning process described by Christiansenet al. (2004) is seen in Figure 2.4. Despite the importance of liner shipping, theliterature dedicated to the planning is scarce. The review (by Christiansen et al.)only includes three papers on the fleet deployment, which have very limited interestwhen looking at disruptions. Unpublished research has resulted in an implementedmodel for optimizing cargo flows on the operational planning level at ML. Since thereview in 2004 some articles, within the field of interest, have been published.

The strategic planning level in liner shipping is the topic of the benchmark articleby Løfstedt et al. (2011). The motivation of their paper is to make the problemsof network design in liner shipping available for the operations research communityto increase the focus within the area. The paper includes a careful review on the

6The research within fleet deplotment and within repositioning of empty containers is excludedas the applicability in a disruption setting is limited.

Page 17

CHAPTER 2. PROBLEM DOMAIN

setting of liner shipping, the problem of network design, and the models suggestedin the literature. The liner shipping network design problem is argued to be stronglyNP-hard and an unsolvable comprehensive model is given.

The most interesting models for network design of container vessels in the literatureare by Álvarez (2009) and by Agarwal and Özlem Ergun (2008). Álvarez statesthat the complexity of joint routing and fleet deployment cannot be overstated.Nevertheless, a model is presented that seeks to minimize the operating expenses of aliner company doing both network design and fleet deployment. The planner can inputa set of possible services, or the model can generate them during the optimization.No structure of the resulting network is enforced. For small instances the modelcan be solved exactly (up to 10 ports), but for larger instances the computationalproblem becomes too large. Álvarez (2009) presents a heuristic capable of generatinggood solutions for instances with up to 120 ports.

The paper by Agarwal and Özlem Ergun (2008) presents an integrated model to vesselscheduling and cargo routing. In this paper, the NP-completeness of the integratedproblem is mathematically proven by reduction from the Knapsack Problem. Theiralgorithm exploits the separability of the problem and iteratively generates goodroutes for vessels and then optimizes the flow of cargo. Various solution techniques arepresented based on a greedy heuristic, column generation, and Benders decomposition.None of the presented techniques are capable of generating optimal solutions and thecomputational times exceed an hour for the concluded best approach when solvingan instance with 100 vessels and 20 ports.

In conclusion, the literature within planning in liner shipping is very limited, andthe potential for future research is vast. To the best of my knowledge no work ispublished on implemented network design systems within liner shipping.

Disruption Management in the Airline Industry

Decision support for disruption management has been heavily researched within theairline industry as a contradiction to liner shipping. The motivation is the frequentdelays (namely in the USA) and the severe economical impact of delays. In 2008 theJoint Economic Committee under the U.S. Congress published a report estimatingthe infused cost to the American society to more than $40 billion (JEC, 2008). Inthe report, a significant growth in the number of flights and total delay hours from1988-2007 is documented7. The order of magnitude of the cost of disruptions isconfirmed in a more theoretically profound study by Ball et al. (2010) even thoughtheir final estimate is ≈ 20% lower. In general, it is clear that airline delays are asignificant problem.

7With 2002 the only year showing a real decline compared to the year before.

Page 18

2.3. RELATED LITERATURE

The paper by Rakshit et al. (1996) documents a significant saving by implementing areal-time decision support system to handle the daily disruptions at United Airlines8.The implemented system has a number of user interfaces and underlying models. Themodels are in general capable of presenting results to the user in less than 5 seconds.The users choose the best solution from a list of alternatives. Yu et al. (2003) looksat a decision support system developed for Continental Airlines to do crew recoveryduring disruptions. The system has implied major cost savings, while improving thequality of operation from a customer’s point of view (Continental Airlines was rankednumber one in on-time performance in the first year of operating the system). During12 months of operation the savings are estimated to $40 million when handling majordisruption.

The book by Yu and Qi (2004) gives a general introduction to disruption management.A chapter is devoted to disruption management for flight scheduling. The text givesa good introduction and presents the most used models - the time-space model,the time-band model, and the set packing model. Another good introductory textis found in the paper by Kohl et al. (2007). They present the planning steps ofairline operations in general and the topic of disruption management in great detail.An exceptionally comprehensive and detailed description of the domain of irregularoperations at airlines is given in the handbook by Ball et al. (2007). They present allthe characteristic of disrupted airline operation along with the developed models.

A recent and comprehensive review of the airline disruption management problem isgiven by Clausen et al. (2009). They cover literature on the management of aircraft,crews, and passengers when disruptions occur. To date, no integrated model is capableof dealing with all of these resources. Researchers focus on including all aspects of theproblem in one optimization, but with the current computer power and algorithms itis not possible to generate (good) solutions (Clausen et al., 2009). Instead, systemsat airlines typically deal with the problems in a sequential way. First, a recoveryplan for aircraft is generated, then issues with the crews are handled, and finally newitineraries for impacted passengers are made. As this approach does not guaranteegood solutions for passengers and crews directly, the process is iterated with allstakeholders.

From the liner shipping point of view, the interesting parts concern the aircraftrecovery (≈ vessel recovery) and the recovery of passenger itineraries (≈ containerrecovery). The aircraft recovery problem has been heavily researched, whereas theliterature for the passenger recovery problem is rather sparse. I review the literaturewithin these two areas. A broader review of literature and models in the airlineindustry (including the planning process and the crew recovery problem) is given byDienst (2010) and Barnhart (2009a,b). Dienst presents the connection between theplanning problems and the systems for disruption management.

8The described setup of control units is similar to what is seen in the liner shipping industry.

Page 19

CHAPTER 2. PROBLEM DOMAIN

The Aircraft Schedule Recovery Problem

The first model on the Aircraft Schedule Recovery Problem, presented inthe literature, is a network flow model by Teodorović and Guberinić (1984) solvingthe problem with minimal impact on passengers. The model presented covers allscheduled flight with a subset of aircraft available. The method does not take passengerconnections into account and no computational results are published. Even thoughTeodorović and Stojković extended the model in later papers, the simplificationsare so strong that the model is not applicable for decision support. However, thepioneering work has been followed by extensive research.

Jarrah et al. (1993) presented the first research applicable for decision support. Theydeveloped two network based models to recover schedules during an aircraft shortage- one model delaying flights and another model cancelling flights. The models aretested on real-life instances from the United Airlines and show great potential. (Themodel is the foundation of the decision support system which impact is described byRakshit et al. (1996).) However, a natural improvement was the development of amodel capable of combining delays and cancellations.

The first integrated model, capable of handling delays and cancellations, was presentedby Yan and Yang (1996). Their model is based on a time-space representationof possible flights. The model handles a homogeneous fleet of aircraft withoutmaintenance included. It is tested on real data from a major airline. The solutionapproach is a Lagrangian relaxation with the subgradient method due to the fastconvergence. For the real-life instances, the model is capable of presenting near-optimal solutions within minutes9.

The current state-of-the-art models can be categorized by modeling and solutionapproach (Clausen et al., 2009). The current models, based on the time-spaceformulation, are presented by Thengvall et al. (2000, 2001, 2003) and utilized byDienst (2010). The work is based on the work by Yan et al. (1996, 1997) and the modelis capable of handling multiple fleets, passenger itineraries, complicated disruptions,and punishments on deviations from the original schedules. The solution approachby Thengvall et al. is a heuristic based on the LP-relaxation. The computationaltimes are sufficiently low to allow implementing the model in a real-time decisionsupport system. Dienst extends the model to optimize on the aircraft level ratherthan the fleet level. This allows incorporating aircraft specific maintenance. He solvesthe problem exact by mathematical solvers. The model by Thengvall et al. has beenimplemented with great success.

Another approach is the models based on the time-band representation of thedisruption problem. The idea is well documented in the paper by Bard et al. (2001).Their model is tested on a high number of cases from Continental Airlines and theresults are promising. The approach has been extended to handle aircraft specific

9Yan and ping Tu (1997) extend the model to handle multi-fleet problems and Yan and Young(1996) adds multi-stop flights.

Page 20

2.3. RELATED LITERATURE

maintenances. Rosenberger et al. (2003) describe an approach based on set packing.The basic idea is to let the model choose from a set of feasible schedules for eachaircraft. This allows handling aircraft specific maintenance. To improve the solutiontimes, a heuristic is used to determine a subset of aircraft to reroute. A completeheuristic solution approach is given by Løve et al. (2005)10. The underlying model isbased on a network and allows cancellations, delays and ferry flights. Weights areadded to the objective allowing it to present several good solutions. The heuristicis capable of solving full day instances from British Airways within few seconds.Additional work (based on set-packing, time-band networks and heuristics) aredescribed by Clausen et al. (2009).

The Passenger Recovery Problem

The problem of passenger recovery is the least researched within recovery of airlinedisruptions, despite that the costs infused due to delayed passengers are major (Kohlet al., 2007). If passenger recoveries are handled poorly the airline needs to pay forhotel nights, food coupons, and even tickets issued by competitors. Furthermore,it may harm the reputation of the airline significantly and thereby impact futurebusiness. The reason for the limited focus on passenger recovery might be thatpassengers are not as crucial to the operation of an airline as aircraft and crews. Inaddition, a solution would demand integration with the aircraft and crew recoveryalong with information concerning competitor flights and availability.

Bratu and Barnhart (2006) present two integrated models with focus on betterpassenger recovery. These are capable of re-flowing passengers, but cannot solveinstances sufficiently fast to allow implementation in a real-time support system.Where former models have solely minimized the delays on single flights Bratuand Barnhart look at the entire itinerary of each passenger. This is a significantimprovement as miss-connected passengers in general are rebooked to other flights.In the paper, Bratu and Barnhart suggest a model where multiple possible itinerariesfor each passenger are inputted resulting in on-the-fly rebooking as part of theoptimization. To reach this, the authors are forced to include the capacity of flightand more. The resulting model is a flow model similar to the one suggested byThengvall et al. (2003).

Bratu and Barnhart’s paper is based on the PhD thesis by Bratu (2003) presentingmuch more details. Due to the computational severity of the problem, Bratu presentsmethods to eliminate dominated edges (flights) in the graph. Future research couldbe to adapt these to the model for vessel recovery of the present thesis.

10The work is part of the DESCARTES project described in Kohl et al. (2007)

Page 21

CHAPTER 2. PROBLEM DOMAIN

2.4 From Airline to Liner Shipping

The disruption management developed for airlines is based on the general planningprocess. The original idea was todo selected steps of the optimized planning based onthe new/disrupted starting point. For liner shipping this approach would correspondto looking at re-solving the general network design and flow problem to determine,which services to operate under a given set of circumstances.

However, the general planning is a complex problem which for large shipping compa-nies has not been solved to optimality and is not solved using optimization tools. Inparticular it is not possible to cope with this problem within the limited time wheredecisions regarding a disruption need to be taken (Agarwal and Özlem Ergun, 2008;Løfstedt et al., 2011).

Instead, this study focuses on utilizing the findings in disruption management tools forthe airline industry. The airline and liner shipping businesses have evident similarities,but also some core differences (Christiansen et al., 2004). Both aircraft and vesselscan be accelerated giving an extra fuel cost, both have units (passengers or containers)connecting to proceeding transport, both intend to operate based on an originalschedule, and the two industries have similar cost structures.

The main difference is that container vessels are never empty. With aircraft it iscommon to cover a scheduled flight for a delayed aircraft with another aircraft of thesame type (Dienst, 2010). For vessels it seldom makes sense to have another vesselcovering a number of port calls, as containers on the scheduled vessel will most oftenneed to get off. Furthermore, shipping companies operate their vessels constantlyand in general does not have available vessels on hold in the ports. It also impliesthat it is not possible to cancel a sailing due to disruptions. Delays are carried in thesystem until all vessels have caught up with the originally planned schedule (calledproforma schedule).

Additional differences include that vessels can speed up significantly more thanaircraft, that ports have more limited capacity than airports and therefore oftenneed to be booked prior to arrival, that loading and unloading of vessels takes longtime, that loading and unloading is expensive, that the order of some port calls canbe changed (port swaps), that vessels operate around the clock, and that it can takemuch longer time to recover disruptions in liner shipping (due to the afore mentionedreasons).

If a container fails to connect to a succeeding vessel the impact will often be moresevere than it is for airline passengers. International airports have a number of dailydepartures for a given destination presenting the option to rebook passengers with aslight delay. For liner shipping a missed connection will normally result in a majordelay (often up to 7 days), and might even imply that some containers are left onthe port after the following sailing due to capacity issues.

Page 22

2.5. PROJECT SCOPE

These similarities and differences are carefully considered when utilizing the findingsin the airline industry.

2.5 Project Scope

This study develops and evaluates a model to do decision support for frequently seendisruptions in liner shipping. The approach is based on the models used in the airlineindustry, but is significantly modified to fit the liner shipping context. My focus is toutilize the findings for aircraft recovery when recovering vessels. Figure 2.5 showsthe relation between the currently used recovery framework in the airline industryand the scope of this thesis.

The recovery of containers is outside the scope. Recovering MC-impacted containerscan be done with the current booking systems at ML, but future work might lookinto integrating the two steps or generating an iterative approach.

In general, the scope excludes all decisions connected to changing the cargo flow(denoted re-flowing). That is, re-flowing cargo in omitted ports and re-flowing of cargothat has missed a connection. Completely ignoring these issues would constitute asignificant problem as the applicability of the suggested solutions would be doubtful.Instead these issues are handled implicitly by giving a punishment to the objectivefunction. Re-flowing of cargo is excluded as it is expected to increase the complexityof the problem very much. This corresponds to the approach in the airline industry,where aircraft recovery is handled before re-flowing passengers.

Aircraft Recovery

Crew Recovery

Passenger Recovery

Vessel Recovery

ContainerRecovery

Iterative Optimization

Project Scope

Air

line

Lin

er S

hip

pin

g

ContainerRecovery

PortClearing

Figure 2.5: The relationship between the idea of the used disruption management in theairline industry and the suggestion for the liner shipping industry. Crews are living on thevessels implying that crew recovery is no concern in liner shipping. Instead port clearingbecomes an important part of the vessel recovery.

Page 23

CHAPTER 2. PROBLEM DOMAIN

As re-flowing is excluded it follows that the capacity and utilization of vessels is alsooutside the scope. This implies that it is not possible to assess whether or not avessel is capable of entering a given port at a given time (some ports can only handlevessels when they are almost empty or during high tide). In general it is assumedthat planned ports can be accessed independent of chances11.

From an operational point of view it is important to limit the impact of the recoveryon the network. Theoretically, a delay could be handled by delaying all other vesselsensuring fluent operation without miss-connected containers. However, such a changewould be impossible to implement. A recovery strategy should affect as few vesselsas possible. In the cases from ML, the recovery horizons for vessels are geographical.Vessels that are sailing according to their proforma schedules are only allowed todelay a single port call due to other vessels delays12. This limits the solution spacesignificantly and ensures that the resulting recovery strategies are in fact acceptablefrom an operational point of view. Furthermore, allowing the delay of a single portcall is an improvement compared to the current manual planning where only thedelayed vessels are considered.

Often when a disruption occur it results in one or more vessels missing the plannedtime to call a port. It follows that new port calls need to be planned. As the portsin general are busy it is necessary to contact the ports to book a new time for thedisrupted vessels. This issue is outside the scope of this project. It will be assumedthat ports in general are available at any time. However, it is known that portshave limited capacity. Therefore the model will be extended with the possibility toprioritize which vessel should call a port first (denoted berth prioritization). Thefinal decision support tool could in the future be an iterative system where actionsare suggested and a planner afterwards check if the ports are available and otherwiseimpose additional constraints before re-solving.

Even with the above exclusions this study provides a valuable assessment of thehypothesis. Future studies should seek to extent the model to incorporate more ofthe actual problem. To evaluate the findings of this study, four test cases will beassessed. Each case is presented in Section 3.2 with a list of the actions that themodel must be able to evaluate.

11In the suggested decision support system the user will be able to input restriction when needed.12To give an example consider a single delayed vessel v. The vessel carry containers that have to

connect to other vessels. One of these is vessel u that sails according to the proforma schedule. Inthe model it is allowed to delay u in the transshipment port to wait for the containers from v. Toavoid a cascading effect of delays the vessel u is forced to arrive at the ports before and after thetransshipment according to the proforma schedule.

Page 24

3Problem AnalysisIn this chapter four concrete cases from ML are presented with a list of possiblerecovery strategies to give an insight into the recovery problem of liner shippingcompanies. The current solution approach is investigated more generally and therecovery options considered by an operator are described. The important data neededto describe a disruption is presented in more detail. Summing up the chapter is adefinition of the Vessel Schedule Recovery Problem.

3.1 Objective during Recovery (Costs)

When defining the disruption problem for liner shipping it is important to have anoverview of the objective. The costs, included in the mathematical model of theVSRP, stem from sailing costs (bunker cost and cost of calling ports) and containerdelay costs. While the cost of sailings stem from actual expenses, the costs fromcontainers delays are merely a punishment for OTD-impacting containers and anadditional punishment for MC-impacting containers. The cost of assets, the cost ofloading and unloading containers, and the cost of using passageways are ignored inthe model, as these are independent of the chosen recovery options.

• Bunker CostBunker expenses are the largest variable cost for shipping companies (Notte-boom, 2006). With the increasing fuel prices this is truer than ever. Vessels arebuilt to sail at a given design speed (sd) with a resulting design consumption(ud). For a given speed s, the bunker consumption can be estimated using(Alderton, 2004, p. 78):

u = ud

(s

sd

)3

For the vessel Maersk Sarnia the bunker curve is presented in Figure 3.1. Thevessel cannot sail faster than the max speed smax = 24.5 knots or slower thansmin = 10 knots (due to a restriction on the engine).The bunker usage translates directly into a cost by multiplying with the price.In reality the bunker price fluctuates constantly and varies from port to port.For simplicity, an average price of c[Bunker] = $519 per ton is used in thisproject.

• Cost of Using PortsThe second largest part of the variable costs is fees to passage ways and forcalling ports. Calling a port has a fixed cost and a variable cost for movingcontainers, and using passage ways has a fixed cost. As containers will have tobe moved at some point and as passage ways will have to be used, the presentedmodel only needs to take the fixed port fee into account.

Page 25

CHAPTER 3. PROBLEM ANALYSIS

Bunker Usage of Maersk Sarnia

Speed (knots)

Bun

ker

Usa

ge (

ton/

day)

10 21.5 24.5

010

030

0u d

smin sd smax

Figure 3.1: Bunker curve for Maersk Sarnia.

• Costs from Impacting ContainersTo be able to include both sailing costs and customer satisfaction when com-paring recovery strategies, ML has put a strategic cost on OTD-impacting acontainer. The strategic cost of OTD-impacting a single container is

c[OTD]−

and consequently the cost of OTD-impacting a container group c composed ofnc containers is

c[OTD]c = c

[OTD]− nc .

That is, ML would spend up to c[OTD]− extra on sailing expenses to avoid OTD-

impacting a single container and up to 3 c[OTD]− to avoid OTD-impacting three

containers. The penalty for OTD-impacting stems from the level of customersatisfaction that ML aims at, and has been set during a complicated strategicanalysis. The actual value of the OTD-penalty is confidential.Delayed containers receive the fixed OTD-penalty if delivered after the dayafter promised delivery and no penalty if delivered before. A discussion of thissimple way to punish OTD-impacted containers (with a constant punishmentif delivery time passes a fixed deadline) is given in Section 7.1. More naturalways to punish late arrivals are easy to incorporate in the model.According to ML, all decisions should be based on the cost of sailing and thepenalty of OTD-impacted containers alone. However, there are actual expensesconnected to miss-connecting a container as it often leads to extra containermovements, to storage fees in the container ports, and finally might cause futurecontainers to be miss-connected due to capacity issues. This has motivatedan additional penalty in the present project. The penalty for MC-impacting acontainer is

c[MC]− (either $0 or c[OTD]

− )and as above the MC-impact for container group c becomes

c[MC]c = c

[MC]− nc .

Page 26

3.2. CASES

The penalty of $0 corresponds to the general setup at ML, while the penalty ofc

[OTD]− can (in the ML perspective) be justified by arguing that MC-impactinga container will often lead to additional OTD-impacted containers. The reasonis that if a container is MC-impacted it has to be transported next week and ifthe next vessel is full it will imply that another container is forced to wait1.MC-impacts might therefore imply several OTD-impacts making an extra costof c[OTD]

− a conservative estimate. When arguing outside the ML perspectiveit is clear that miss-connecting containers imply extra costs and should bepunished harder than containers arriving at the destination delayed.

3.2 Cases

The cases used to evaluate the VSRP are based on historical events at ML. They areselected to represent the most common disruption scenarios and recovery options.Each case includes information about vessel schedules, port distances, containermovements, recovery options, vessel speeds, and costs. ML handles these types ofdisruptions on a daily basis. The purpose of the cases is to test the suggested model,but also to clarify typical disruptions and how they are currently handled.

An overview of the cases is given followed by a detailed presentation of each. Thecases are respectively

1. A Delayed VesselThe vessel Maersk Sarnia is delayed out of Asia due to bad weather. The vesselis, filled with cargo, about to cross the Pacific Ocean and unload in Mexicoand Panama.

2. A Port ClosureThe port Le Havre in France is closed due to a strike. The vessel MaerskEindhoven arriving with cargo from Asia can either wait for the port to open(giving an expected 48 hour delay) or omit the call in Le Havre.

3. A Berth PrioritizationThe port in Jawaharlal Nehru (India) does not have the capacity for a ME3-service vessel and a MECL1-service vessel to port at the same time2. Asthe MECL1-service vessel is delayed and the vessels will arrive at the portsimultaneously, it is necessary to decide which vessel to handle first (denotedberth prioritizing).

4. Expected CongestionThe feeder vessel Maersk Ravenna is planned to call three Colombian ports.

1ML would never allow a container to be delayed more than a week if it is possible to avoid.2The ME3-service is an important connection between Middle-East and Europe. The MECL1-

service is an important service between the Middle-East and USA.

Page 27

CHAPTER 3. PROBLEM ANALYSIS

Due to port maintenance at the last port to call, a delaying congestion isexpected if arriving as planned. ML has to decide if the plan should be changedto avoid the congestion.

The above numbering and names of the cases will be used throughout the thesiswhen referring to a specific case. Below each of the cases are described in details.Two of the disruptions (Case 1 and 3) arise from vessel delays while the other (Case2 and 4) arise from problems in ports.

1. A Delayed Vessel

During the pick-up of cargo in Asia, the vessel Maersk Sarnia is delayed due to badweather. Maersk Sarnia is a mother vessel deployed on the AC2 service, which ispresented in Figure 3.2. The vessel leaves Kwangyang (South Korea) 39 hours after

Figure 3.2: Maersk Sarnia (AC2) round trip. [maerskline.com]

the proforma schedule and is thereby OTD-impacted. Normally the vessel wouldsail to Yokohama (Japan) to load more cargo and then cross the Pacific Ocean anddispatch the cargo in Lazaro Cardenas (Mexico) and Balboa (Panama). The lastport is a vital transshipment port. The sailing is an important head haul sailingcarrying a large number of valuable containers.

The possible actions that the model should be able to evaluate are

• Catch up with proforma before Yokohama (not possible due to max speedlimitation)

• Catch up when crossing the pacific ocean after calling Yokohama (very expensivedue to bunker consumption)

Page 28

3.2. CASES

• Catch up when crossing the pacific ocean after calling BalboaSolution chosen by ML

• Omit the Yokohama call

• Omit the Lazaro Cardenas call

• Swap the Lazaro Cardenas and Balboa calls to reach Balboa on time

For each option the model should evaluate the OTD-impact, the MC-impact, savedport expenses, and the bunker cost.

The experts at ML decided to call Yokohama to pick up a number of important keyclient containers. The impacted key client manager followed the decision processclosely. This decision implied that all cargo in Lazaro Cardenas and Balboa wasOTD-impacted. On Sarnia’s back haul journey from Balboa the disruption wasrecovered by using the buffer time and speeding up.

2. A Port Closure

The vessel Maersk Eindhoven is supposed to call the port in Le Havre (France) uponarrival to Europe (from Asia) to unload cargo. As Le Havre is closed due to a strike,this is not possible at the scheduled time. According to the proforma schedule thevessel is continuing to Rotterdam (to unload import cargo), to Hamburg, and backto Rotterdam (to load export cargo) after Le Havre. It is expected that Le Havrewill be closed for two days (48 hours). This means that the Le Havre cargo will beOTD-impacted regardless of the decision taken. The vessel is forced to reach theSuez Canal according to the proforma schedule after leaving Europe as this has beenbooked (defining the recovery horizon). Missing the convoy sailing through the SuezCanal will lead to a new significant delay (Notteboom, 2006, p. 31). ML demandsplanning arrival in Port Said, north of the Suez Canal, at least 12 hours before thescheduled time to join the convoy.

The possible actions that the model should be able to evaluate are

• Wait outside Le Havre and delay all calls in Europe. This will give OTD-impacted cargo to all ports in Europe.

• Skip Le Havre and continue according to the proforma schedule to the succeedingports. This will give MC-impacted cargo in Le Havre.

If choosing to omit the Le Havre call the model has to take the saved port cost intoaccount. Generally speaking, it is costly to call ports and omitting a port call canpotentially give a significant saving. However, the downside is that containers willbe both OTD- and MC-impacted. Only the fixed port call is taken into account asomitting a port will not lower the total number of container movements.

Page 29

CHAPTER 3. PROBLEM ANALYSIS

The experts at ML actually decided to wait outside Le Havre, skip the first Rotterdamcall, go to Hamburg, and then extent the second Rotterdam call to handle bothimport and export. This would give Rotterdam import and Le Havre OTD-impactedcargo, but no cargo will become MC-impacted. This solution is considered outsidethe scope of this thesis as it is based on re-flowing the Rotterdam import cargo tothe second call.

3. A Berth Prioritization

Two westbound mother vessels (Nedlloyd Oceania and Maersk Utah) are setting outto call Jawaharlal Nehru in India. One vessel is heading to Europe on the ME3-serviceand the other is heading towards the United States on the MECL1-service. TheMECL1-service vessel is delayed implying that the two vessels will arrive in Indiasimultaneously. It is only possible for the port to handle one of the vessels at a time.As the port is a central export port it is not possible to omit any of the calls. Itis necessary to decide which vessel to service first and which to delay. Again therecovery horizon is given by enforcing that both vessels reach the Suez Canal in time.

The possible actions that the model should be able to evaluate are

• Let the ME3 vessel call Jawaharlal Nehru firstSolution chosen by ML

• Let the MECL1 vessel call Jawaharlal Nehru first

Again the OTD-impact is the most important cost. But also the bunker cost mustbe included. The vessels must get back on track as fast as possible.

The operations center at ML chose to let the ME3 vessel call the port first. Thisresulted in on time service of the ME3 service and only a slight extra delay for theMECL1 service. When passing the Suez Canal both vessels where sailing accordingto the proforma schedule.

4. Expected Congestion

The vessel Maersk Ravenna is operating on the feeder service in Middle Americashown on Figure 3.3. It left Manzanillo (Panama) as planned heading towardsColombia to call Cartagena, Barranquilla and Santa Marta. However, congestions areexpected in Santa Marta at the proforma scheduled time to call the port. Therefore,it needs to be assessed whether the order of the port calls in Colombia should bechanged. In total, a 24 hour delay is expected if Santa Marta is called at the plannedtime. It is important that the ship returns to Manzanillo on time. It has been decidedthat no port calls can be omitted.

Page 30

3.3. CURRENT SOLUTION APPROACH

Figure 3.3: Maersk Ravenna (Expreso) round trip. [maerskline.com]

The possible actions that the model should be able to evaluate are

• All permutations of the calls

In each scenario the bunker usage (based on sailed distance and speed) and theOTD-impact should be included. ML decided to swap the order completely callingSanta Marta first and then respectively Barranquilla and Cartagena. This gives OTDimpacted cargo in Cartagena, but no additional cost. It was the only alternativepermutation that was considered by the operator, as it naturally keeps the distancesailed to a minimum.

3.3 Current Solution Approach

Each of the historical cases has been handled by the experts at ML. This sectionwill list the options that are considered when handling disruption and mention thedrawbacks of the current approach. The options used by ML correspond to theoptions presented in the literature (Notteboom, 2006). In general it is clear that allpossible recovery scenarios will affect the stakeholders of the vessel in different ways.This introduces the risk, that the action chosen might be based on pressure fromstakeholders rather than cost. Furthermore, when disruptions occur it is important tomake fast decisions. Defining and evaluating a possible recovery strategy can be verytime consuming which tends to significantly limit the number of strategies evaluated.

Page 31

CHAPTER 3. PROBLEM ANALYSIS

The applied techniques to recover disruptions are

• Speed up vesselVessels can be accelerated. For most vessels the speed can be significantlyincreased on the back haul whereas it is sailing close to the maximum speedon the head haul. Speeding up increases the bunker cost.

• Speed up port callWhen ports are booked, the planned time in the port is based on the expectedmaximum number of containers to handle. However, often vessels have fewercontainers when calling a port and can therefore finish faster. When disruptionsoccur it might also be possible to use more cranes and work faster in the port.In some cases speeding up a port call will have an additional cost as more crewand cranes will be used.

• Cut-and-RunLoading and unloading containers takes a long time. A method to reduce theport time is to cut some container moves away, i.e. leave the port withoutloading and unloading all of the containers originally planned. The affectedcontainers need to be re-flowed. This recovery option is mostly used in portswhere tides restrict the access. Cutting container moves can be used to avoidwaiting for the next high tide.

• Omit port callAnother way to catch up with delays is to omit a scheduled port call. This isa very effective way as it can potentially save several days. However, all thecontainers that should be unloaded at the omitted port and all the containersthat needed to be pick-up will be MC-impacted. After omitting, the impactedcontainers must be re-flowed.

• Swapping port callsIn various situations it might be desired to change the order of port calls. Thiscould be to reach an important transshipment port on time despite a delay.Swapping can be done with numerous ports within a geographical region. Thecost from swapping will most often only come from OTD-impacted cargo andbunker costs.

• Insert idle vesselsIf a vessel experiences extreme delays it might be possible to insert an idlevessel instead (if such a vessel is available). The idea is that the delayed vesselcontinues to slow steam (that is, sail with a minimal bunker consumption) untilall containers are unloaded. Meanwhile, an idle vessel is put into the rotationat the proforma time at some port. After the delayed vessel has been emptiedit goes idle.

In Section 4.4, a mathematical model is presented that can include three of the aboveactions. The suggested model cannot handle speeding up port calls, cut-and-run,

Page 32

3.4. PROBLEM DATA

and insertion of idle vessels. These issues have to be assessed on a case by case basis.Firstly, speeding up port calls needs to be managed in close contact with the ports.The second issue of cut-and-run does not have a practical use when not includingthe accessibility of ports. Finally, insertion of idle vessels is seldom an option whenrecovering. Due to the high cost of vessels, they are used intensively and only idlewhen returning from maintenance waiting a short period of time before entering aservice.

Mathematical modeling can more effectively cope with the remaining aspects of theproblem. An operator that manually handle a disruption only considers the mostobvious of the remaining recover strategies, whereas the automated approach allowto consider and combine all of them.

Furthermore, the operator will only look at the delayed vessels to limit the complexity,whereas the automated modeling can include the vessels to which containers aretransshipped. The reason to include succeeding vessels is that, an alternative tospeeding up a large mother vessel (the delayed vessel) with a high extra bunker costis to pass on the delay to smaller feeder vessels that can speed up much cheaper.This can easily be done if the operator also owns the feeder vessels.

The suggested model will be able to produce impartial and uninfluenced solutionsthat reflect the strategic decision on a top management level. This is ensured viathe standardized solution process where all costs are quantified. In the last yearsML has tried to align all decisions after the global strategy by e.g. setting a coston OTD-impacted containers. Nevertheless, the usage of the model will require thecontrol and input from an experienced operator.

3.4 Problem Data

In this section the input data for the VSRP will be presented. The data includeinformation about vessels, containers and ports. Furthermore, it consists of costparameters. Besides a presentation of the data needed, comments are given on howeasy the data is to access at ML. Extensions to the model can increase the need ofdata - for instance, the capacity of vessels is necessary if including re-flowing.

Data for Vessels

For each vessel that will be included in the model the following data is needed:

• Characteristics of vesselMinimum speed, maximum speed, and bunker usage at each possible speed.This data is available at ML. To simplify the data loading, the bunker usage isapproximated with the formula presented by Alderton (2004).

Page 33

CHAPTER 3. PROBLEM ANALYSIS

• Proforma scheduleThe originally planned schedule for the vessel. This data is publicly availablefor most liner shipping companies, and in particular ML.

• Alternative schedulesTo handle the recovery, it is necessary to know which ports that may be omittedand which that may be swapped. My implementation uses a set of orderingsof calls that are allowed for each vessel. This could for instance be a schedulewhere a particular port call is omitted and/or a schedule where some portsare swapped. Alternatively, it is possible to allow all possible changes to theschedule.

• Actual positionInformation on where the vessels are located at the moment of handling thedisruption. In the cases handled this is historical data, but will in an actualapplication need on-line updating (e.g. by GPS tracking). Both kinds of dataare accessible at ML.

• Recovery horizonIt is necessary to determine a recovery horizon for each vessel. That is, alocation and time where the vessel returns to the proforma schedule. It has tobe decided by the operator.

Data for Containers

For each group of containers (where a group is defined as a set of containers withidentical itinerary within the recovery horizon), the following data is needed:

• Number of containers in groupContainers come in various sizes but strategy wise ML does not differ, betweenthe types of containers, when making recovery decisions. Hence, the totalnumber of containers in a given group is sufficient. However, if one was interestedin varying the type of containers this would be possible by splitting the containergroups. Then key client or refrigerated containers could give higher penalties ifdelayed.

• Planned delivery timeThe container group will have a delivery deadline (OTD-deadline). For contain-ers staying on the vessels after the recovery horizon, this deadline is ignored.However, for containers supposed to arrive at their destination within thehorizon, the OTD-impact needs to be assessed.

• Itinerary (including all transshipments)As mentioned earlier containers are seldom transported from the origin tothe destination directly. Normally containers will need to be transshippeda number of times. For each container group all transshipments within the

Page 34

3.4. PROBLEM DATA

recovery horizon must be known. A transshipment is constituted by an arriving(unloading) vessel, a departing (loading) vessel, and the transshipment port.

It is currently not possible to get these data at ML. For a given vessel it is notpossible to get the future connections for the containers on board easily. In thisproject the loaded containers on the vessels have been combined with the standardway to ship them from their origin to destination and aggregated to container groupsinstead. It is currently a complex and doubtful process to get the needed information.To build a working decision support system for the VSRP at ML getting the relevantdata for the containers is a major obstacle. Effective disruption management requireseasy accessible precise knowledge of container flows.

Data for Ports

For the ports that are visited within the recovery horizon, the following data isrequired:

• Sailing distances between portsUsed to estimate bunker cost of different solutions. These are available at MLlistings and on-line at Dataloy (2011).

• Transshipment time for containersThe minimum time required from containers arrive in the port and until theyare loaded onto the next vessel. This data is not listed at ML but can bededucted from the proforma schedules of the connecting vessels.

Cost Parameters

The costs are crucial and need to be defined to generate optimized solutions. Thecost setting has been described in Section 3.1. Here it is noted that informationregarding bunker cost, OTD-impact, MC-impact and fixed port fee is needed. Thisinformation is easily accessible at ML.

The relative level of the various costs is important to evaluate. However, the costsgiven by ML have been thoroughly tested. Within this scope we will therefore acceptthe costs as presented. The values are confidential and will not be stated in thisthesis.

Page 35

CHAPTER 3. PROBLEM ANALYSIS

3.5 The Vessel Schedule Recovery Problem in Words

In this section the VSRP will be stated more formally, but still in words. The abovecases are examples of real life instances of the problem.

The problem is based on the data described above and presented below:

The Vessel Schedule Recovery Problem

Given: A set of ports, a set of vessels, the current location of eachvessel, a recovery horizon for each vessel, a proforma schedulefor each vessel, a set of alternative schedules for each vessel,a set of container groups, and costs. Furthermore, a numberof additional constraints can be included.

Return: If a valid solution exists; return the valid solution that mini-mizes the sum of the cost of sailing, the cost of OTD- andMC-impacted containers, and the port fees. To be valid thesolution must contain:

• A sailing for each vessel starting at its current locationand ending at the recovery horizon according to theproforma schedule.

• A plan of transportation for each container group givingOTD-impact if arriving too late or MC-impact if failingto connect to the destination.

Obviously, the solution must also respect any additionalconstraints.

Though the definition is broad, it is clear that the scope of the problem correspondsto the scope of the thesis. The problem does not include decisions regarding there-flowing of miss-connected containers and does not allow changes to the network(i.e. network design).

In Section 4.3 the problem is defined formally in mathematics based on the graphrepresentation of the solution space, and in Section 4.5 the problem is shown tobe NP-complete both when omitting ports (by reduction from the KnapsackProblem) and when all ports are visited (by reduction from the SymmetricTravelling Salesman Problem).

Page 36

4ModelingTo model the disrupted situation in liner shipping and the possible actions used whenrecovering a time-space network is introduced. This corresponds to the approach byThengvall et al. (2000, 2001, 2003) and Dienst (2010) applied in the airline industry.The good results and strong intuition in their models make it an obvious startingpoint when trying to develop a similar model for liner shipping. The network is usedas a natural representation of the sailings of vessels. Based on the network the VSRPis formally defined and a Mixed Integer Linear Model is presented. Finally, theNP-completeness of the corresponding decision problem is proven.

4.1 Graph Presentation

The time-space network is commonly used in operations research. This probablyemerges from the simplicity and direct interpretation. In a time-space network thefirst axis corresponds to a point in time within the given planning horizon, andthe second axis corresponds to a geographical position. Whereas the time is ideallycontinuous, the geographical position is discretized. In this project (as commonlydone) the time is also discretized to make the graph finite. Each node in the networkrepresents a possible position and time for a unit (e.g. an aircraft or a vessel). Edgesbetween nodes represent possible connections.

A simple example of a time-space network is presented in Figure 4.1(a). Here twogeographical positions are given and a unit can connect from the initial position A tothe next position B with three different speeds. The edges represent possible sailingsfor a vessel between two port calls. Notation wise a node corresponding to callingport A at time t is written (A, t) and a sailing from (A, t) to B arriving at time t′ iswritten (A, t)→ (B, t′) [or (a, b) where a is the node (A, t) and b is the node (B, t′)].

In the network edges exist that starts and ends at the same geographical position atdifferent times. These are denoted ground edges and are widely used within aircraftrecovery as aircraft wait in the airport until their next assignment (Dienst, 2010).For vessels the duration of a port call is fixed. This makes it possible to remove theground edges by including them in the connection edges1. This is visualized in Figure4.1(b). In mathematics a ground edge at port B is an edge

(B, t)→ (B, t′) with the times t′ > t

and it is removed by changing the time coordinate of inbound edges. For an edgefrom port A at time t0 to port B at time t this gives:

[(A, t0)→ (B, t)] +[(B, t)→ (B, t′)

]becomes (A, t0)→ (B, t′) .

1The ground edges in the VSRP corresponds to the turnaround time described by Thengvallet al. (2001). These edges are also omitted in the aircraft recovery problem.

Page 37

CHAPTER 4. MODELING

Adjusting speed

Time (days)

Pos

ition

(P

ort)

0 2 4 6 8 10

BA

AcceleratedNormal speedSlowed

(a) Edges connecting two ports with various sail-ing speed.

Integrated sailing and call

Time (days)

Pos

ition

(P

ort)

0 2 4 6 8 10

BA

SailingPort callCombined

(b) An edge combining sailing and port call edge.

0 2 4 6 8 10

Ommiting a port

Time (days)

Pos

ition

(P

ort)

CB

A

All callsOmitting port B

(c) Edge corresponding to omitting a port call.

0 2 4 6 8 10

Altering order

Time (days)

Pos

ition

(P

ort)

CB

A

Original planSwapping calls

(d) Edges corresponding to changing the order ofport calls.

Figure 4.1: Included moves in the time-space network model. Ground edges are gray.

When building the problem graph for a given instance each unit has a source and asink node, where the unit respectively enters and leaves the network. The sourcescorrespond to the current position of vessels and the sinks correspond to the proformaposition at the end of the recovery horizon. This horizon can merely be based on time,but can also have a geographical dimension ensuring that the disruption does notspread to the entire network. A unit will typically have a large number of potentialpaths connecting the source and the sink.

The commonly used actions to recover are

• Adjusting vessel speed (Figure 4.1(a))Delayed vessels might be able to speed up significantly. In the time-spacenetwork this corresponds to a number of connections from one port to anotherwith different time usage. In some cases it might also be possible to slow vesselsdown to save bunker fuel. In many ports vessels are only allowed to arrive at

Page 38

4.1. GRAPH PRESENTATION

certain time points, which give a natural discretization of the possible speeds.In other ports a similar discretization is done to limit the number of possibleedges. Formally, two edges connecting port A and B with different speeds are

(A, t0)→ (B, t) and (A, t0)→ (B, t′) where t 6= t′ ,

and both edges are only included in the graph if t′ − t = K · δ, where δ is theduration between allowed calls and K is a positive integer.

• Omitting a port call (Figure 4.1(c))Vessels might omit port calls. This could be used to recover a delay or simply tosave the port cost. Omitting port calls will result in miss-connected containers,meaning that this is seldom a good possibility at large transshipment ports.In the time-space network omitting a port call corresponds to using a sailingdirectly from the port call before to the port call after. Allowing omitting portB on a sailing from port A via port B to port C corresponds to having an edge

(A, tA)→ (C, tC) where tC − tA corresponds to the sailing time.

• Swap order of calls (Figure 4.1(d))In some cases, a delayed vessel needs to call a number of ports close to each other.It might be possible to skip the first ports to call the remaining at the scheduledproforma time, and then return to the first planned ports afterwards. This isknown as swapping ports and can be done with all ports within a geographicalarea. In the time-space network this is included by adding omitting edges andedges going back.

In the daily recovery problems, a combination of the above actions (or moves) mightgenerate the cheapest possible recovery. For instance, the best option might be toslow a vessel and omit a call, or speed up a vessel and swap the order of two portcalls.

Figure 4.2 gives an example of a full time-space network for a small test instance2. Intotal three vessels are affected by the delay of the green mother vessel. The red vesselwould typically be a feeder distributing containers from the delayed vessel, whereasthe blue might be another mother vessel exchanging containers with the green vessel.

The example will be used to define the graph more formally. The set of vessels is

V = {green, red, blue} = {g, r, b}

and for each vessel a set of port calls is given. These are

Hg = {P1, P2, P3, S2}Hr = {S1, P2, S2}Hb = {S1, P3, P2, S2}

2The ground edges are removed as shown in 4.1(b)

Page 39

CHAPTER 4. MODELING

Sea

Port3

Port2

Port1

Sea

0 20 40 60 80 100 120 140

Spac

e [p

orts

]

Time [hours]

Time Space network

Mother vesselFeeder vessel

Delayed vessel

Figure 4.2: Example of a time-space network for a test problem with three vessels, sinksand sources, three ports, speed adjusting edges, and port swap for the green vessel. In thenetwork only the edges taking part in a feasible path are shown.

where Pi is Port i and Si corresponds to onward sailing according to schedule. Foreach of the port calls h ∈ Hv a set of possible sailings (denoted legs) (Lh) coveringthe call is given. As an example vessel g has the set of four possible sailings/legscovering the call in Port 2:

L(g,P2) = { (P1, 0)→ (P2, 38) , (P1, 60)→ (P2, 48) ,

(P1, 0)→ (P2, 58) , (P3, 62)→ (P2, 98) } .

The weight on each of these edges is the sum of the bunker cost from sailing withthe necessary speed between the ports and the cost of calling Port 2. The cost ofusing leg (P1, 0)→ (P2, 38) is higher than the cost of using leg (P1, 0)→ (P2, 58) asthe sailing time is smaller (38 < 58) resulting in a higher sailing speed.

The problem has characteristics that are not directly reflected in the graph. Theseare the flow of containers, limits on the capacity of a port, and port closure in aperiod of time. The port capacity issue can be modeled by constraining the numberof vessels arriving (or used legs) at each port in each given time interval. Port closuresare included by removing all edges corresponding to arriving at a port while it isclosed. Edges corresponding to calling a port while it is available obviously need tobe preserved.

Given a network displaying the possibilities in a disrupted situation the task is tofind a set, consisting of a path for each vessel, minimizing the costs. The costs are ofcourse rising from the bunker usage, the port fees, whether connections of containersare possible (MC), and to what extend containers are delivered on time (OTD). TheVSRP and objective is formalized in the subsequent sections.

Page 40

4.2. GROWING THE GRAPH

4.2 Growing the Graph

The graph of the problem is not given as an input. It has to be generated as part ofsolving the problem. This is denoted growing the graph. This step is done separatelyfor each vessel v growing a graph Gv = (Nv, Ev) of possible sailings.

A node corresponds to a position for a given vessel. A position is defined by a port calland a time. Two nodes sv and ev is added to the graph corresponding to respectivelythe starting and ending position of vessel v, and a set of nodes to investigate ζv = {sv}is initiated. Afterwards the graph is generated in a loop examining one node at atime until all nodes have been investigated. For the green vessel in the example above(Figure 4.2) the initial nodes sg = (P1, 0) and eg = (S2, 120) are generated, and theset of nodes to investigate in the growing loop is initially ζg = {sg}.

While ζv 6= ∅, the next node nv is retrieved from the set. The vessel v has a set ofcalls allowed to follow nv, denoted Hnv ⊂ Hv, derived from the possible schedules.For each of the possible succeeding port calls h ∈ Hnv the earliest (ehnv) and latestarrival times (lhnv) are calculated. This is given from the maximum and minimumspeed of the vessel3 and the distance to the next port. If the earliest arrival is laterthan the time of ev, no new nodes are generated and the growing procedure continuesto investigate the next call in Hnv . If the latest arrival time is later than the time ofev, the latest arrival is updated to be the time of ev4.

It is possible to call port h at any point in time between ehnv and lhnv . This leadspotentially to an infinite number of edges. However, it is chosen to have a fixedtime difference δ between the possible port calls. This makes the number of possiblesailings finite. The justification is that most ports only accept vessels at given times5,and that the uncertainty in the environment makes it impossible to operate accordingto a continuous plan. Starting with the earliest arrival time and taking steps ofsize δ towards the latest possible arrival new nodes and edges are now generatedcorresponding to going from the current point to the next port at a given speed.That is, nodes

n0h = (h, ehnv), n1

h = (h, ehnv + δ), . . . , nqh = (h, ehnv + q δ)

(with q such that ehnv + q δ ≤ lhnv and ehnv + (q + 1) δ > lhnv) are added to the graphand ζv if they are not in the graph already, and edges

nv → n0h , nv → n1

h , . . . , nv → nqh

are added to the graph. Next the procedure continues with the next of the possibleproceeding ports or returns to the while loop.

3The vessels could also be allowed to go slower than the operating minimum speed. This wouldcorrespond to wait outside the next port.

4The updating of the earliest and latest arrival times is done to limit the number of generatedsailings that are not part of a feasible sailing.

5For instance most European ports only accepts vessels arriving at time 0:00, 6:00, 12:00, 18:00.

Page 41

CHAPTER 4. MODELING

In the example, the possible succeeding ports for the green vessel after sg areHsg = {P2, P3} ⊂ Hg. The earliest and latest arrival times are calculated to

eP2sg = 38 , lP2

sg = 58 and eP3sg = 42 , lP3

sg = 65 .

With a step size between possible calls of δ = 10 and port P3 closed until t = 60,this results in the four possible arrivals depicted in the graph. The set of nodes toexamin would be updated to ζg = {(P2, 38), (P2, 48), (P2, 58), (P3, 62)}.

It is clear that the loop will terminate as each new node is later in time than theprevious and as no nodes are allowed to be generated after the time to recover.After the growing algorithm terminates, the graph will hold nodes corresponding tocalling the ports on all possible points in time within the planning horizon and edgescorresponding to all possible sailings. However, from a number of nodes in the graphno feasible path to ev will exists. In the presented solution approach the graph iscleaned by removing such nodes.

Future research includes techniques to limit the size of the graph. A desirableapproach would be to grow the graph dynamically only generating the edges neededto formulate the optimal solution. In practice this is seldom possible, but advancedtechniques can often limit the number of edges in the final graph significantly.The computational time might also benefit from methods to remove dominated edgesfrom the graph. The PhD thesis by Bratu (2003) presents techniques to excludedominated flights from the graph in aircraft recovery. These techniques present avaluable source of inspiration, when considering the sailings of vessels in the VSRP,even though they are not directly applicable.

4.3 The Vessel Schedule Recovery Problem in Math

To define the VSRP formally, the graph and the container information constitute thestarting point. Given a weighted, directed graph of possible sailings for |V| vessels (atime-space network as described above), say

G = (N,E) =(⋃v∈V

Nv,⋃v∈V

Ev

)

where Nv and Ev are respectively the set of nodes and the set of edges for vessel v.And given the weight function mapping edges to the cost of sailing in real values

w : E → R+

and the time function mapping edges to the time it takes to sail in real values

t : E → R+ .

Page 42

4.3. THE VESSEL SCHEDULE RECOVERY PROBLEM IN MATH

The weight of a feasible sailing s(v) = 〈sv, n1, n2, . . . , nk, ev〉 from source sv ∈ Nv tosink ev ∈ Nv for vessel v ∈ V visiting k (n1, . . . , nk ∈ Nv) intermediate ports is

w(s(v)) = w(sv, n1) +k∑i=2

w(ni−1, ni) + w(nk, ev)

and gives the cost of bunker fuel and port fees. To be feasible the sum of the usedtime must be less than or equal to the recovery time of the vessel tv, i.e.

t(s(v)) = t(sv, n1) +k∑i=2

t(ni−1, ni) + t(nk, ev) ≤ tv .

A set of feasible sailings for all vessels is denoted

S = {s(v1), s(v2), . . . , s(v|V|)}

with total sailing cost (bunker cost and port fees) given by

Ws(S) =∑s∈S

w(s) .

On top of this cost comes the penalties for MC- and OTD-impacting containers.Given a set of container groups with itineraries and promised delivery times and avalid sailing for all vessels (S) it is possible to deduce which containers should takepenalties. This is a mapping from the chosen sailings to a real value

Wc(S) : S → R+

and gives the last part of the cost function.

The VSRP is to find a feasible sailing for each vessel that minimizes the combinedcost. The objective value is given by

σ ={

minS∈G{Ws(S) +Wc(S)} if a valid sailing exists for all vessels

∞ otherwise

and the optimal solution is S that gives a cost of σ. By the notation minS∈G

is meant tominimize over all valid S in the graph G. As described in Section 5.2 the two termsto minimize turns the problem into a multiobjective combinatorial optimization.

Page 43

CHAPTER 4. MODELING

Variable Domain Descriptionxl {0, 1} 1 if vessel v ∈ V cover port call h ∈ Hv using leg l ∈ Lhzh {0, 1} 1 if vessel v ∈ V omits port call h ∈ Hv

yc {0, 1} 1 if container group c ∈ C is MC-impactedoc {0, 1} 1 if container group c ∈ C is OTD-impacted

Table 4.1: Variables used in the mathematical model.

Set DescriptionV Set of vesselsHv Set of port calls for vessel vLh Set of possible legs to cover port call h ∈ Hv

C Set of container groupsIc Ordered set (I1

c , . . . , Imc ) of transshipments for container groupc ∈ C. Here Iic = (hiv, hiw) ∈ (Hv,Hw) is a pair of calls for differentvessels (v, w ∈ V|v 6= w) constituting a transshipment. Containergroup c has m transshipments.

Ic Set of the first and last port call (IFc , ILc ) = (hv, hw) ∈ (Hv,Hw)[v, w ∈ V] for container group c ∈ C.

Mlc Set of all on-connecting edges of l ∈ Lh that result in miss-

connection of container group c ∈ C

P Set of berthsT Set of timeslots

N Set of all nodes. Here n− and n+ is used to denote respectively thein going and out going edges of node n.

Nv ⊂ N Set of all nodes for vessel v ∈ V.

Table 4.2: Sets used in the mathematical model.

Page 44

4.4. MATHEMATICAL MODEL

Parameter Domain Description

c[Sail]l R+ Cost of using leg l ∈ Lh including bunker and port fee

c[OTD]c R+ Cost of OTD-impacting container group c ∈ Cc

[MC]c R+ Extra cost of MC-impacting container group c ∈ C on

top of the OTD-penalty.

Ocl {0, 1} 1 iff container group c ∈ C is OTD impacted whenarriving by leg l ∈ LILc

Uptl {0, 1} 1 iff leg l ∈ Lh occupy berth p ∈ P in timeslot t ∈ TSnv {−1, 0, 1} Is used to set sink and source constraints. The value is

1 if vessel v ∈ V is initially placed at node n ∈ N , -1 ifvessel v is terminating in node n, and zero otherwise.

Mc R+ A number so large that all transshipments for all con-tainers are allowed to miss-connect.

Table 4.3: Data parameters used in the mathematical model.

4.4 Mathematical Model

The mathematical model is inspired by the work within aircraft recovery based on thetime-space network (Thengvall et al., 2001, 2003; Dienst, 2010). However, changeshave been made to fit the setting of the VSRP. The largest difference being that themodeling is done on the vessel level rather than at the fleet level. The model is aMixed Integer Linear Programming model with binary variables based on thegraph described above. In essence it is a flow model where the decisions correspondto “flowing” vessels through the network.

The decision variables of the problem are presented in Table 4.1, the sets used arepresented in Table 4.2, and finally the parameters are presented in Table 4.3.

The model has a binary variable (xl) for each leg/edge (l) in the graph denotingwhether the sailing is used or not. Furthermore, it has a binary variable (zh) foreach port call (h) for each vessel taking the value 1 if the particular call is omitted.Finally, to register if a container group (c) are OTD-impacted or MC-impacted twobinary variables are used (respectively oc and yc)6.

6As argued below it is not necessary to require zh and oc to be binary. This follows directly fromxl ∈ B and yc ∈ B.

Page 45

CHAPTER 4. MODELING

Full Model

The model presented below is neatly simple. The objective function minimizes thecombined cost of sailing and penalty from containers not arriving as planned. Twosets of constraints ensure that only feasible flows are considered. Finally, a part ishandling the containers and ensures that for a feasible sailing for all vessels MC- andOTD-impacted containers incur the correct (strategic) penalty to the objective.

Minimize: ∑v∈V

∑h∈Hv

∑l∈Lh

c[Sail]l xl +

∑c∈C

[c[MC]c yc + c[OTD]

c oc]

(4.1)

Subject To:∑l∈Lh

xl + zh = 1 ∀v ∈ V, h ∈ Hv (4.2)

∑l∈n−

xl −∑l∈n+

xl = Snv ∀v ∈ V, n ∈ Nv (4.3)

yc ≤ oc ∀c ∈ C (4.4)∑l∈LILc

Ocl xl ≤ oc ∀c ∈ C (4.5)

∑h∈Ic∪Ic

zh ≤Mc yc ∀c ∈ C (4.6)

xl +∑λ∈Ml

c

xλ ≤ 1 + yc ∀c ∈ C, l ∈ Lh|h ∈ Ic ∪ Ic (4.7)

xl ∈ B+ yc ∈ B ∀v ∈ V, h ∈ Hv, l ∈ Lh,∀c ∈ Czh ∈ R+ oc ∈ R+ ∀v ∈ V, h ∈ Hv,∀c ∈ C

The objective function and each of the constraints are presented in more detailsbelow. Some real life instances might require additional constraints, such as the berthprioritization constraint (4.8).

The variables xl and yc are required to be binary, whereas the remaining variablesare only required to none negative. That xl is binary combined with (4.2) impliesthat zh will also take binary values. Furthermore, that xl and yc are binary combinedwith the minimization, (4.4) and (4.5) imply that oc is binary.

Objective Function

In the VSRP, the objective function is complicated as it has to correctly appraisethe effect of bunker usage, OTD- and MC-impact, and port fees. As the different

Page 46

4.4. MATHEMATICAL MODEL

objectives are somewhat conflicting this is a case of multi-criteria optimization. Therelative size of the various terms in the cost function will determine which recoveryis considered to be optimal.

The most intuitive objective function is the aggregated objective function where theconflicting parts are added together. This objective function (4.1) has two parts. Thefirst is the cost of operating vessels and the second is the punishment from delayingor miss-connecting cargo.

Minimize: ∑v∈V

∑h∈Hv

∑l∈Lh

c[Sail]l xl︸ ︷︷ ︸

Ws(S)

+∑c∈C

[c[MC]c yc + c[OTD]

c oc]

︸ ︷︷ ︸Wc(S)

(4.1)

This objective has been used in the majority of the presented testing, but the field ofmultiobjective combinatorial optimization is utilized to generate multiple significantlydifferent good solutions (see Section 5.2). The operator has contact to the stakeholdersduring a recovery and will be able to appraise the importance of the various termsin the objective function if presented with several good solutions. The weighted sumscalarization and the ε-constraint method are presented (Ehrgott, 2005), and thesetechniques is shown to perform well.

An interesting extension to the objective could be to add a Unit Action Penalty asin the thesis by Dienst (2010). The basic idea is to reduce the cost of using alreadyplanned edges to make them favorable. This will tend to give solutions that are closerto the original schedule which is desired of natural reasons. However, it might bedifficult to find the correct value of the reward for using a planned sailing.

Problem Constraints

Each of the six sets of constraints in the model is presented below. The feasibilityconstraints for vessel flows in the graph are:∑

l∈Lh

xl + zh = 1 ∀v ∈ V, h ∈ Hv (4.2)

∑l∈n−

xl −∑l∈n+

xl = Snv ∀v ∈ V, n ∈ Nv (4.3)

Here (4.2) ensures that, for each port call for each vessel, either a sailing covering thecall is used or the call is omitted. These constraints are general Set-Partitioningconstraints. The next set of constraints (4.3) is classical Flow-Conservationconstraints. For the source and sink it ensures that exactly one vessel respectivelyleaves and arrives, and for the remaining nodes it ensures that iff a vessel arrives itwill also leave again (flow conservation). Combined with ensuring binary variables(for xl and zh) these define feasible vessel flows through the time-space network.

Page 47

CHAPTER 4. MODELING

To punish container OTD- and MC-impact the following constraints are needed toset the yc and oc variables correctly.

yc ≤ oc ∀c ∈ C (4.4)∑l∈LILc

Ocl xl ≤ oc ∀c ∈ C (4.5)

∑h∈Ic∪Ic

zh ≤Mc yc ∀c ∈ C (4.6)

xl +∑λ∈Ml

c

xλ ≤ 1 + yc ∀c ∈ C, l ∈ Lh|h ∈ Ic ∪ Ic (4.7)

It has been chosen to handle the MC-impact with an extra cost on top of the OTD-impact - that is, MC-impacted containers are by definition also OTD-impacted. Itfollows that (4.4) is enforced.

Each container group has a planned arrival time. Based on this it is possible tosay whether or not a given sailing to the destination will cause the containers tobe OTD-impacted. This gives rise to (4.5) where Ocl takes the value 1 iff containergroup c is OTD-impacted when arriving with sailing l. The right hand side does nothave to be multiplied despite the number of summed variables may be larger thanone due to the cover constraint (4.2).

Here (4.6) ensures that if one of the port calls, where a container group is loadedor unloaded, is omitted the container group is MC-impacted. It is an aggregationof zh ≤ yc∀c ∈ C, h ∈ Ic ∪ Ic. The big-M notation is used to allow multiple vesselsto omit port calls that are part of a given containers journey. In general the big-Mnotation is renowned for increasing the computational complexity of problems, andtherefore the value of M needs to be as small as possible (Williams, 1990, chap. 10).Here the optimal choice is to make a parameter for each container group with thevalue

Mc =∑

h∈Ic∪Ic

1 ∀c ∈ C .

If the constraint is not aggregated it follows that it is not necessary to require yc ∈ Bexplicitly in the formulation. However, it is chosen to use the aggregated version tolimit the total number of constraints.

The next set of constraints (4.7) handles container groups’ miss-connections due tolate arrivals in transshipment ports. For each of the possible inbound sailings of acontainer transshipment a constraint is generated. On the left-hand side the decisionvariable corresponding to a given sailing is added to the sum of all decision variablescorresponding to having onward sailing resulting in miss-connections. The constraintis presented in Figure 4.3. When implementing the constraint some aggregation isdone, so that the variables corresponding to inbound sailings are also summed.

Page 48

4.4. MATHEMATICAL MODEL

Miss−connection Constraint

Time (days)

Pos

ition

(P

ort)

0 2 4 6 8

TB

A

vAT

vTB

1,1 1,2 1,3

2,1 2,2 2,3 2,4

A container group transship from vessel vATto vessel vTB at port T . It has three in-bound (x1,1, x1,2, x1,3) and four outbound(x2,1, x2,2, x2,3, x2,4) opportunities. The miss-connection constraint gives the followingthree equations:

x1,1 +x2,3 + x2,2 + x2,1 ≤ y + 1x1,2 +x2,3 + x2,1 + x2,2 ≤ y + 1x1,3 + x2,1 + x2,2 + x2,3 ≤ y + 1

Figure 4.3: Example of the miss-connection constraint (4.7).

Given the relevant data and a derived problem graph the above constraints define afeasible solution handling the vessel and container flow.

Additional Constraints

The model can be extended to incorporate additional features of a given probleminstance.

One additional constraint, which can be added on top of the model, is the berthoccupation constraint given in (4.8). A berth is one of the physical areas in a givenport where vessels moor. The layout of ports differs, but can be split into a numberof berths with a given length each. The size of vessels that can moor at a berth isgiven by the length. The parameter Uptl takes the value 1 iff sailing l occupy berthp ∈ P (the set of berths) in some port at time period t ∈ T (the set of time slots).

∑v∈V

∑h∈Hv

∑l∈Lh

Uptl xl ≤ 1 ∀p ∈ P, t ∈ T (4.8)

The constraint ensures that only a single vessel can enter and use a berth at a giventime. For berths in ports that can handle several vessels at the same time the righthand side can be increased. The constraint could also be changed into a numericalconstraint adding up the length of each vessel at the berth and forcing it below thelength of the berth. Another option is to make this kind of constraint for each type ofvessel, e.g. allowing a berth to have two feeder vessels and one mother vessel callingat the same time.

Another additional constraint is (4.9), which can be used to enforce a feasible planof port calls when omissions are allowed. It is outside the scope to assess whethera vessel can call a port at a given time. However, the user can input the following

Page 49

CHAPTER 4. MODELING

constraint to ensure that feasible operations are suggested in one specific setting.The user gives a set of port calls Hv for vessel v ∈ V where at least one needs to becarried out if calling ξ. That is ∑

l∈Lh|h∈Hv

xl ≥∑l∈Lξ

xl . (4.9)

This constraint can be used in Case 2 (A Port Closure) where the draft of MaerskEindhoven restricts the vessel from sailing into Hamburg unless some containers havebeen unloaded. This means that the vessel should call either Le Havre or Rotterdambefore going to Hamburg7.

4.5 Complexity

In this section it is proven that the VSRP is NP-complete. First, it is shown that it ispossible to evaluate a solution to the problem in polynomial time, and afterwards, theKnapsack Problem (KP) and the Symmetric Travelling Salesman Problem(STSP) are reduced to the VSRP. In the first reduction the resulting VSRP allowsomitting any subset of the ports while the order of port calls are fixed, whereas in thesecond reduction the VSRP allows calling the ports in any order while container flowsensure that no ports are omitted. With either setting the VSRP is NP-complete.

Evaluable in Polynomial Time

To prove that the VSRP is NP-complete the initial step is to prove that it is verifiablein polynomial time by a deterministic Turing machine (∈ NP). This means that anysolution needs to be verifiable in polynomial time. Given a candidate solution to themathematical formulation of the problem presented in Section 4.4, X = (x, z, y, o), itis necessary to evaluate order

O(|V| ·maxv

(|Hv|) + |V| · |N |+ 3 · |C|+ |C| ·maxh

(|Lh|)) = O(n2)

constraints8, where n = max(|N |, |C|,max(|Lh|)) is an integer rising from the size ofthe problem instance. It is seen that |V| < n as each vessel has at least two nodes,and that |Hv| ≤ n as each call for each vessel has at least one node. Clearly, it ispossible to verify a solution’s feasibility in polynomial time. Let σ(X ) denote theobjective value of X . It is then possible to check if σ(X ) ≤ K for some K ∈ R inpolynomial time by insertion.

Hence, the VSRP ∈ NP.

7Here Hv is the calls in Rotterdam and Le Havre, while ξ is the call in Hamburg.8The order of constraints comes directly from the definition of the problem.

Page 50

4.5. COMPLEXITY

Reduction from the Knapsack Problem

The NP-completeness of the VSRP with allowed omissions is proven by a polynomialtime reduction of the NP-complete 0-1 Knapsack Problem (KP) (Garey andJohnson, 1990). The result is an instance of the VSRP with a single vessel and nocontainers. The KP with n items to choose from is

maximize :∑

i=1,...,npi xi

subject to :∑

i=1,...,nωi xi ≤ b

xi ∈ {0, 1}

where xi are binary variables taking the value 1 iff item i with profit pi ≥ 0 andweight ωi ≥ 0 is put into the knapsack with capacity b ≥ 0. The objective is tomaximize the combined profit of all items in the knapsack.

Take a vessel v with a proforma schedule visiting n + 2 ports. The first port is asource, the last is a sink, and each port in between corresponds to a knapsack item.The vessel is allowed to omit any subset of the ports, but cannot change the orderof port calls. That is, the vessel needs to choose ports (items) to visit. The costsneed to be set so that the optimal sailing corresponds to the optimal packing of theknapsack. The maximal profit of any knapsack item Z = max(pi) is used to negatethe objective function from the KP’s maximization to the VSRP’s minimization.

The cost of an edge (Pi, t)→ (Pj , t′) going from port (item) i to port (item) j needsto be set in a creative way. It has two parts. Firstly, the cost of calling port j that isset to Z − pj , and secondly, the cost of bunker fuel that is given by the product ofthe number of ports omitted by the edge (ol = j − i− 1) and Z. For instance, thecost of an edge from port 2 to port 5 ((P2, t)→ (P5, t

′)), bypassing port 3 and 4, willhave cost

w((P2, t), (P5, t′)) = (Z − p5)︸ ︷︷ ︸

Port Cost

+ol︷ ︸︸ ︷

|{3, 4}| ·Z︸ ︷︷ ︸Bunker Cost

= Z − p5 + 2Z = 3Z − p5 .

The maximum and minimum speed of the vessel is 1, and the distance between twoports is given by the weight of the destination item. In the example that is

t((P2, t), (P5, t′)) = t′ − t = w5

and only one sailing starting at (P2, t) going to P5 exists. The vessel v must recoverbefore time tv = b, that is

∑i ωi xi ≤ b.

Page 51

CHAPTER 4. MODELING

The knapsack capacity is the specified time to recover. Each item can only be putinto the knapsack once, as the order of ports is fixed. The connection between thedecision variables is ∑

l∈Li

xl︸ ︷︷ ︸V SRP

=∑Lixi︸ ︷︷ ︸KP

∀i

and between the objectives is

max

∑l∈Li

[(Z − pi) + (ol Z)]xl

= nZ −min

∑l∈Li

pi xl

︸ ︷︷ ︸

V SRP

= nZ −minn∑i=1

pi xi︸ ︷︷ ︸KP

where ol is the number of ports omitted by edge l. As each port is either omitted byexactly one edge (adding cost Z) or visited exactly once (adding cost Z − pi) thefirst equality is valid. An example of the KP turned into a time-space network viathis reduction is given in Figure 4.4.

During the reduction n port costs, n2 bunker costs, and n2 distances is calculatedusing constant time each. Futhermore, it is necessary to determine the maximum profitof any item using O(n) time. In total the running time is O(n+n2 +n2 +n) = O(n2).By this simple reduction, the KP can be solved as a VSRP. As the conversion canbe done in polynomial time it follows that

the VSRP allowing omissions is NP-complete.

Consider the 0-1 Knapsack Problem

maximize : 3x1 + 2x2 + 2x3subject to : 7x1 + 5x2 + 2x3 ≤ 11

which can be transformed into a VSRPwith a single vessel. The resulting problemgraph is displayed to the right. The optimalsolution is clearly to include x1 and x3 in theknapsack, which corresponds to the shortestpath respecting the time constraint (omittingitem 2) in the graph.

The numbers on the edges in the graphare the calculated costs.

Time−Space of Knapsack

Weight

Item

0 2 4 6 8 10 12 14

12

3

0+0

1+0

2+02+3

1+3

2+0

2+6

0+60+3

PossibleOptimalNot feasible

Figure 4.4: Example of Knapsack Problem solved as VSRP.

Page 52

4.5. COMPLEXITY

Reduction from the Symmetric Travelling Salesman Problem

As the KP is only weakly NP-complete9 and as the above only proves that theVSRP with multiple omissions is NP-complete, a polynomial time reduction fromthe strongly NP-complete Symmetric Travelling Salesman Problem (STSP)is presented. The result is a simple VSRP with a single vessel with containers to bepicked up in all ports. The decision version of the Travelling Salesman Problem(TSP) is

Definition of the Travelling Salesman ProblemInstance:Set C of m cities, distance d(ci, cj) ∈ Z+ for each pair ofcities ci, cj ∈ C, a positive integer B.Question:Is there a tour of C having length B or less, i.e., a permu-tation

⟨cπ(1), cπ(2), . . . , cπ(m)

⟩of C such that

(m−1∑i=1

d(cπ(i), cπ(i+1)))

+ d(cπ(m), cπ(1)) ≤ B ?

(Garey and Johnson, 1990, p. 211)

which directly translates into a minimization problem aiming for the tour of minimumlength. The STSP stems from the TSP having the same cost from ci to cj as from cjto ci. Let the decision variable x(i,j) denote going from ci to cj in the STSP tour.

The reduction is as follows: Each port represents a city and an arbitrary city, sayc1, is duplicated into cS1 and cE1 . A single vessel v, starting in port cS1 at time 0 andfinishing in port cE1 at time m, is generated. The full set of port calls for the vessel is

Hv = {cS1 , c2, c3, . . . , cm, cE1 }

which corresponds to the set of cities C with the first city added in the end. Swappingall intermediate calls is allowed, meaning that the ports c2, . . . , cm can be visited inany order.

The distance between any pair of ports is 1, and the vessel’s minimum and maximumspeeds are 1. That is, the unique travelling time of the only existing sailing betweentwo cities is 1. The cost of sailing leg l from ci to cj is

c[Sail]l = d(ci, cj) .

The decision variable xl (in the VSRP) is equal to the decision variable x(i,j) (in theSTSP) and corresponds to travelling from i to j with the given contribution to theobjective function.

9The KP can be solved by a dynamic programming algorithm in polynomial time of themagnitudes of input data - the number of items and the size of the knapsack (Garey and Johnson,1990, p. 96).

Page 53

CHAPTER 4. MODELING

It remains to ensure that all ports are visited by vessel v. This is done by addingcontainers to pick up. The cost of OTD-impacts (c[OTD]

− ) and MC-impacts (c[MC]− ) is

chosen to be 12 . In each port vessel v needs to pick up θ containers, where θ is chosen

large enough to make it uncompetitive to omit the port. For instance choosing

θ =

∑(i,j)∈C|i 6=j

d(ci, cj)

c[OTD]− + c

[MC]−

=∑

(i,j)∈C|i 6=jd(ci, cj)

will ensure that the cheapest and thereby the optimal solution will be a sailing callingall ports, and thereby a feasible STSP tour. In fact any upper bound for the STSPwill give a usable θ. Figure 4.5 shows graphically the conversion from STSP to VSRP.

The reduction proves that an instance of the STSP can be reduced to an instance ofthe VSRP in polynomial time10 and space and hence:

the Vessel Schedule Recovery Problem is NP-complete.

In fact the problem is Strongly NP-complete. Note that adding more vessels, containergroups, and additional constraints to the problem only makes it more complex.

10Setting up the distance matrix of the VSRP with distance 1 between all ports takes orderO(m2), generating the sailing costs takes order O(m2), and finally θ generated with the suggestedsimple approach takes order O(m2). The rest of the computations is done in linear time of the sizeof the STSP implying a total reduction can be done in order O(m2).

STSP VSRP

c1

c2

c3

c4

Space

Time

The connection betweenthe STSP with fourcities (c1, . . . , c4) and thegraph representation ofthe VSRP.

Sailings to the sinknot corresponding to afeasible STSP has beenremoved from the VSRPgraph. To ensure that allcities are visited exactlyonce containers to pickup is used.

Figure 4.5: Example of Symmetric Travelling Salesman Problem solved as VesselSchedule Recovery Problem.

Page 54

4.5. COMPLEXITY

The proof of NP-completeness imply that the problem is computational hard to solvefor larger instances. Often meta-heuristics need to be applied to generate near-optimalsolutions within reasonable time. However, the cases from ML correspond to smallinstances that can be solved to optimality using optimization software. Section 6.1gives details on the solution approach and Section 6.5 stress test the computationaleffort for larger instances. With the presented modeling approach the computationalcomplexity of the problem is primarily connected to setting up the problem graph.

Page 55

5Decision Support SoftwareThe road from the above model to an implemented software solution is long andbulky. In this chapter core aspects of the usability are covered and ways to improvethe value of a tool are considered. Firstly, the general idea of the software is described.Secondly, the focus is on changes to the objective function resulting in a number ofgood (but not too similar) recovery strategies. Tests of the suggested modificationsare included with the other computational results in Chapter 6.

5.1 Daily Usage

This section is the outcome of a number of meetings with the personnel at MLhandling the daily disruptions. At each meeting the usability of the above model andthe results has been discussed. In general the feedback has been positive and theoperators clearly trust that a decision support software solution would be valuable.However, to be able to handle as many of the varying disruptions as possible, thesoftware needs to be very flexible and run based on a series of user inputs. Furthermore,it needs to run iteratively giving the user the opportunity to change some parametersettings or add additional information.

A basic idea to a program flow for a decision support software system is given in thefollowing bullets.

1. The user activates the software and chooses from a list of standard disruptions.The list could include “One delayed vessel”, “Berth prioritization”, and “Portclosure”, but should also have a default option corresponding to an unknownkind of disruption.

2. Dependent on the user’s choice a guide takes him or her through a series ofsteps to define the scenario. For instance for “One delayed vessel” the guideshould ask the user to identify the delayed vessel, whether or not additionalvessels should be allowed to be affected, when the vessel must recover, andfinally ask if any additional constraints exist (such as a port being unavailableat specific times). All guides should allow the user to include a large amountof extra information (see “User Input” below).

3. The software automatically retrieves all the necessary data from ML systems.

4. The software builds the problem network and displays it to the user.

5. If the user accepts the network the software solves the problem and presents anumber of good solutions to the user (ways to generate multiple good solutionsare covered in Section 5.2). Else, the software returns to a modification of step2.

Page 57

CHAPTER 5. DECISION SUPPORT SOFTWARE

6. For each suggested solution, the user can get information on bunker cost,OTD-impact, MC-impact, vessel schedules, number of impacted vessels, andnew port calls to confirm.

7. The user chooses either the best of the suggested solutions or returns to step 2.

8. For the chosen solution, the software generates a prioritized list of port calls toclear (see “Berth Availability” below).

9. The user starts to clear the port calls one at a time. Every time a port call iscleared the user ticks it off in the list. If a port call cannot be cleared the userinputs this constraint, whereafter the software resolves searching for a solutionsimilar to the one previously chosen (go-to step 7).

10. After all port calls have been cleared, the disruption has been handled and thesoftware presents a detailed plan of the changes to the schedules, the recoverycost, and the impact on the containers.

11. Outside the software the user re-flows all MC-impacted containers. The usermay input the actual cost of re-flowing containers (in step 2) and generate anew recovery.

A number of the challenges in developing the above software have already beenhandled in this project. However, major obstacles include automating the processof getting data and developing a usable user interface. Finally, much more testingneeds to be done to ensure that the performance of the model is sufficiently robustand good. Section 7.2 gives a more careful overview of future work.

User Input

To allow the program to present usable solutions to the operator it is important tolet the user control the underlying model. This is done by making it possible forthe user to input a large amount of controlling information. First the user needs toidentify the affected vessels and the recovery horizon, but also

• Earliest arrival time in port(s). In some ports, arriving too early will meanthat part of the export cargo is not ready. The earliest time to pick up cargoshould be defined for each container group.

• Latest arrival time in port(s).

• Possible waiting time in port(s) if arriving later than a given dead-line. Often arriving after a planned slot will mean that vessels need to waituntil the port is available.

Page 58

5.1. DAILY USAGE

• Minimum buffer to given ports. ML does not allow planning sailingsarriving just-in-time at selected ports. For instance, at the entrances to theSuez Canal, ML will always include buffer time in the sailings. This is done toensure that the vessels arrive in time for their scheduled convoy.

• Effect of miss-connections. Sometimes MC-impacts will not have any costas the network has capacity enough to re-flow without delay, but other timeshigh penalties should be given.

• Potential port(s) for omission or swaps.

• Time interval where port(s) are unavailable.

All of the above inputs would be possible to include into the suggested model. Thiswill just require minor adjustments. The impact is major as it allows the operatorto use prior knowledge to help the model come up with the best possible recoverysolutions. However, a complicated input process might be a barrier when persuadingoperators to use the software.

Berth Availability

One of the important issues when handling disruptions in liner shipping is the berthavailability, i.e. does the port have the required capacity to have a vessel calling ona given time. As the container terminals in the ports are operated by independentcompanies1 it is not possible to include the berth allocation planning when handlingdisruptions. This gives a significant obstacle, as it is not possible to ensure that thegenerated recovery plans are actually applicable. The operator can normally only becertain that calling ports at the originally planned times are possible.

The operators at ML claim that no general rules can be made to assess whetheror not a port can be called at a given time. This is dependent on the competitors’vessels, on maintenance within the container terminal, and on the number of workersin the port. Therefore, an iterative solution strategy is suggested where the operatorverifies each of the suggested calls by phoning the ports. In case it is not possibleto call a port on a given time, it has to be inputted to the model, whereafter thesoftware resolves the problem. Big disruptions can naturally lead to a large numberof port calls to verify. (By introducing the Unit Action Penalty as touched upon inSection 4.4, the number of port calls to verify can be limited as more vessels willtend to use the proforma slots.)

1Even though the owner of ML also owns and operates container terminals no information istransferred between the two subsidiaries.

Page 59

CHAPTER 5. DECISION SUPPORT SOFTWARE

One central question is which port calls to clear first and which to clear latest. Heretwo possible strategies are suggested:

1. Verify the ports in the order they are visited.

2. Verify the ports in order of how busy they each are in general.

The operators at ML already have an intuition allowing them to clear the mostimportant calls first. It is an interesting point of future research to investigate howgood their performance is, and whether the software is capable of generating betterpriorities of port clearing. As it has not been possible to get any reliable data forimpacts on the order of verifying ports no more attention will be given to this issue.

5.2 Generating Multiple Good Solutions in Theory

It is impossible to quantify the recovery process completely and therefore not possibleto guarantee that a computer will always present the single best option. This is alsoclear due to the multi-criteria nature of the objective function and the influence ofthe many stakeholders. To make the modeling more useful it is therefore of interestto be able to present a series of good (and not too similar) solutions. In this sectionthree simple approaches are covered. The first two are based on the theory of multi-criteria optimization, whereas the last is based on the intuition and knowledge ofthe operators. Each of the approaches has been tested for the problem instancesprovided by ML (Section 6.4).

Note that solving the problem to optimality, removing a sailing used in the optimalsolution, and re-solving the problem, is not an applicable approach. Even though twodifferent (and good) solutions will be generated, these will normally be extremelysimilar. The aim is to find solutions that differ substantially.

Multi-Criteria Optimization

The first approaches are based on the theory on multiobjective combinatorial op-timization. An exhaustive presentation of the field is given by Ehrgott (2005). Hefocuses on the mathematical theory and the used methods. The aim is to be able topresent the Pareto frontier of recovery options for the user. The Pareto frontier isdefined by a set of Pareto efficient recovery options.

Page 60

5.2. GENERATING MULTIPLE GOOD SOLUTIONS IN THEORY

A rigid definition of the two dimensional Pareto efficient solution is2:

A solution to an multiobjective problem

min {∆(y),Λ(y) | y ∈ Y}

with two conflicting objectives (∆(y) and Λ(y)) is Pareto efficient iff it is notpossible to improve the solution with respect to one objective without harmingthe other. That is:

y ∈ Y is Pareto efficient ⇔ @y ∈ Y

∣∣∣∣∣∣∣[∆(y) ≤ ∆(y) ∧ Λ(y) < Λ(y)]

∨[∆(y) < ∆(y) ∧ Λ(y) ≤ Λ(y)]

Allowing the user to choose between the Pareto efficient options will ensure that thebest possible recovery option is used. A graphical representation of the expectedbehavior of the Pareto frontier for the VSRP is given in Figure 5.1. The graph isstepwise due to the discrete nature of OTD- and MC-impacts. Either the vessel sailsfast enough to deliver a container group as planned, or it might as well slow down asmuch as possible without affecting other containers.

The Weighted Sum Scalarization

An idea of how to generate two diverse, but still good, solutions would be to makeone run minimizing the bunker usage and port fees (ignoring the containers), andanother run minimizing the container penalty (ignoring the cost of sailing). Eachof these solutions would be perfect if only looking at the minimized parameter, but

2The definition can be extended to multiple dimentions.

λ = 0

λ=

1

ε

Container Penalties (Wc)

Sai

ling

Cos

t (W

s)

Feasible Area

● Pareto Efficient

Figure 5.1: Representation of the Pareto frontier of solutions for the VSRP.

Page 61

CHAPTER 5. DECISION SUPPORT SOFTWARE

in most cases they would not present the best alternative for the operator. A fairassumption is that the best solution will take both sailing cost and container penaltiesinto account. Furthermore, two solutions with minimal sailing costs but differentcontainer impact might exist.

Instead of making only two extreme runs, an obvious extension would be to makea number of runs (say γ runs) putting different weight on the container penaltiesand the sailing costs. This is the weighted sum scalarization method presented byEhrgott (2005). Here, the objective function (4.1) is changed to minimize the followingexpression

λ

∑v∈V

∑h∈Hv

∑l∈Lh

c[Sail]l xl

+ (1− λ)[∑c∈C

[c[MC]c yc + c[OTD]

c oc]]

(5.1)

where different values of λ ∈ ]0, 1[ is used to generate different solutions. It followsthat λ→ 1 is the extreme case where only the sailing costs are taken into account andthat λ→ 0 is the other extreme only looking at containers. Note, that not allowingλ = {0, 1} ensures that the presented solutions are Pareto efficient. For λ = 0.5 theobjective will lead to the same solutions as the original objective (4.1). To makeseveral good solutions with this approach, the problem needs to be optimized fordifferent values of λ. For instance, γ runs can be made by optimizing the problemfor each λ ∈ { 1

µ ,1

γ−1 ,2

γ−1 , . . . ,γ−2γ−1 ,

µ−1µ } where µ� γ.

The problem with this approach is that it is not necessarily possible to generate allefficient solutions (Ehrgott, 2005, p. 203), however it can generate a number of goodsolutions fast. The NP-complete VSRP needs to be solved to optimality multipletimes, but for the presented instances the majority of the computational time is usedon building the problem graph. This graph only has to be built once, even thoughvarious objectives are tested. Furthermore, in general the problem instances fromML have resulted in relatively small instances that can be solved fast (see Chapter6). A last comment is that this approach actually produces good solutions that differin structure.

The ε-constraint Method

Another approach is to control one of the objectives by a constraint while minimizingthe other. This is the ε-constraint method (Ehrgott, 2005). In the case with twoobjectives

min{∆(y),Λ(y) | y ∈ Y}

one of the objectives is forced below a threshold ε. The optimization problem becomes

min{∆(y) | y ∈ Y,Λ(y) < ε}

and varying ε allows obtaining all Pareto efficient solutions. In Figure 5.1 the combinedpenalty of OTD- and MC-impacting containers are kept below ε, whereafter thesailing cost is minimized.

Page 62

5.2. GENERATING MULTIPLE GOOD SOLUTIONS IN THEORY

For the VSRP it is possible to put either the sailing cost or the penalties fromimpacting containers into a constraint. In this project, the objective function ischanged to ∑

v∈V

∑h∈Hv

∑l∈Lh

c[Sail]l xl (5.2)

and the constraint ∑c∈C

[c[MC]c yc + c[OTD]

c oc]< ε (5.3)

is added to the problem. The discrete nature of the penalty from impacting cargo hasmotivated this split. Solving the problem iteratively and updating ε to the currentvalue of the container penalty will generally result in significantly changed solutions,whereas if the sailing cost was put into a constraint it might generate solutions verysimilar.

The drawback of this approach is that the added constraint might affect the com-putational behavior of the problem, for instance a multi-objective Shortest PathProblem is turned into the NP-complete Resource Constrained ShortestPath Problem (Ehrgott, 2005). Furthermore, it might not be trivial to find goodvalues of ε. The extreme runs in the weighted sum scalarization method can be usedto get the minimum and maximum values of ε to consider. Again the VSRP needs tobe solved multiple times but the graph only needs to be built once.

The method has been used to find all Pareto efficient solutions for each case but doesnot present structurally new solutions compared to the weighted sum scalarization.Furthermore, the number of Pareto efficient is potentially growing exponentially withthe size of the problem and the observed computational times are larger than for theweighted sum scalarization.

Enforced Structural Differences

The operator handling a disruption has experience into known recovery solutionsavailable for the situation at hand. This is the foundation of the current manualsolution approach. An automated solution could also benefit from this knowledge, asit could be taken into account when trying to find a number of good solutions.

Normally, the alternatives that the operator considers have core structural differences.This could in one recovery problem be that the operator is considering if a given portshould be omitted or not. This corresponds to two solutions differing in structure. Inanother recovery problem, the operator might consider if two port calls should beswapped which again gives rise to two structurally different solutions.

In defining the problem, the user can input these central structural characteristics ofgood solutions. By simple variable fixing it is afterwards possible to run the programa number of times and present the best solution in each structural setting.

Page 63

CHAPTER 5. DECISION SUPPORT SOFTWARE

Yet again one problem with this approach is that the VSRP needs to be solvedmultiple times, however as with the multi-criteria optimization the problem graphonly needs to be built once. An advantage of this approach is that it will allow thesoftware to present the solutions that the user is interested in beforehand, while adisadvantage is that the user might restrict the software from presenting the solutionthat is actually the best. It follows that there is no guarantee for Pareto efficientsolutions.

Page 64

6Generated Recovery StrategiesThis chapter presents all of the recovery strategies generated based on the mathemat-ical programming. Focus is on the solution quality and the computational time. Thequality of the solutions has been discussed with the most experienced operators at MLalong with senior staff. The solutions are compared with the solutions implementedby ML and relative costs are given1.

First, the solution approach is described. Optimal solutions are generated via mathe-matical optimization software. The recovery strategies for the cases are described ingeneral and in details for each. The modifications used to generate multiple goodsolutions, described in Section 5.2, are tested on the cases. The final part of thechapter is a stress testing of the model and solution approach. Based on genericinstances of varying size, the development of the computational time is assessed.

6.1 Solution Method

In this thesis an exact method has been used to solve the problem instances tooptimality. Based on the input data, the time-space network has been generated forthe instance, whereafter a mathematical solver has been used to find the optimalsailings. A graphical outline of the implementation is given in Appendix A.2.

The model has been implemented using Java 6, IBM ILOG CPLEX 12.2.0.0, andConcert to connect the two former. For a given instance, data is loaded into Java,where the problem graph is build2. Afterwards the graph is cleaned, i.e. all nodesand edges not part of a feasible sailing is removed (only nodes and edges part ofpossible sailings are considered afterwards). The computational time of these stepsconstitute the majority of the total computational time in the testing carried out3.At this point Java initiates CPLEX, via the Concert interface, and defines allvariables and constraints (including any additional constraints). CPLEX solves theinstance to optimality using default settings. For the small instances from ML thisstep takes short time. The program has been run on a MacBook Pro with 2.26 GHzprocessor and 2 GB of memory running Mac OSX.

The fast solution times by Java and CPLEX can be explained by the size of theproblem instances. As these instances have been selected to represent the mostcommon disruptions, the computational complexity of the VSRP does not seem tolead to trouble. However, in future research one might extend the planning horizon

1The absolute values of the costs of sailing and impacting containers are confidential.2Using the JGraphT repository to store the graph.3The mean fraction of the time used to load data is 6%, to build the graph is 68%, and to

optimize with CPLEX is 26%. These numbers are based on all runs. In general for bigger instancesthe fraction of time used to build the graph grows.

Page 65

CHAPTER 6. GENERATED RECOVERY STRATEGIES

or add additional aspects of the problem. This has motivated the stress testing ofthe model in Section 6.5.

6.2 Overall Results for the Cases

To assess the hypothesis of this thesis four cases from ML are used. For decisionsupport for disruptions in liner shipping based on operations research to be feasible,it is important that solutions of high quality can be generated in short time. Thecomputational results for the cases are promising. In general, good recovery strategieshave been generated in limited time. The fast execution times allow implementing themodel in a real-time decision support tool that could be used in the daily operationsat ML. The overall results are presented whereafter details for each case is given inthe next section.

To generate solutions of high quality, the cases have been optimized with twoparameter settings (giving two objective functions). The first run has no miss-connection penalty (c[MC]

− = $0) and corresponds to the strategic costs used internallyin ML (hereafter Run1). Unfortunately, with this cost setting the model tends tocreate unusable solutions, where important ports are omitted, as the cost of sailingbecomes dominant. This has motivated the more realistic objective, where miss-connections are penalized with an extra OTD-penalty (c[MC]

− = c[OTD]− )(hereafter

Run2). A more thorough discussion on the motivation of this objective change isgiven in Section 3.1 and Section 7.1. For each of the cases the problem graph isgrown with possible arrival times at each port separated by δ = 3 hours steps.

The results from the optimized runs have been compared to the solution by ML(hereafter SBML). SBML is the realized sailings for the affected vessels and therealized impact on containers. This recovery strategy has been chosen by the operatorsat ML based on the current manual solution approach. All presented costs are relativeto the theoretical sailing cost of the SBML in each case due to confidentiality.

Sailing Cost OTD-impact MC-impact SolveSBML Run2 SBML Run2 SBML Run2 Time Best

Case

1 1,000,000 914,063 (2449) (0) (26) (400) 4.529 Run22 1,000,000 977,392 (3111) (3111) (58) (58) 0.718 SBML3 1,000,000 1,000,000 (687) (687) (0) (0) 0.681 Equal4 1,000,000 1,033,334 (222) (0) (0) (0) 0.518 Run2

Table 6.1: Overview of results for the cases. The costs are relative, the container impactin units, and the time to solve in seconds. The best-column shows which solution the MLexperts would prefer today.

Page 66

6.3. DETAILED RESULTS FOR THE CASES

Case 1 2 3 4

Loading data 0.122 0.149 0.128 0.060Building graph 2.092 0.114 0.072 0.118

CPLEX 2.315 0.455 0.437 0.340

Total 4.529 0.718 0.681 0.518

Table 6.2: Computational time in seconds for each of the cases.

The results clearly show potential in the mathematical model. An overview is givenin Table 6.1. The experts at ML have indicated that in two out of the four casesthey would prefer the optimization based recovery strategy (from Run2), in one theoptimization based recovery strategy is the same as SBML (Run2 = SBML), andin the last SBML is preferred. However, in the case where SBML is preferred, theirrecovery strategy is based on re-flowing cargo and is thereby outside the scope ofthis thesis.

The results indicate that it is possible to improve the current handling of disruptions.Even though significant time has been spent on manually handling the disruptionsat ML, they do not in general come up with the best recoveries. In the followingthe different recovery strategies for each of the cases are described more carefully.The tendency is clearly that the model generates competitive solutions and would bea substantial support to the operator resulting in better recoveries using less time.However, based on just four cases it is not reasonable to conclude that the optimizedsolutions in general are superior.

The computational time used to solve each of the cases is generally low. The timeusage is shown in greater detail in Table 6.2. As the model is completely deterministic,the presented times stem from a single run. A significant portion of the time usedby CPLEX is to initiate the system. The longer time to solve Case 1 (A DelayedVessel) is due to the long planning horizon. As Maersk Sarnia crosses the PacificOcean twice within the recovery horizon, the number of potential sailings becomesmuch larger than in the other cases.

6.3 Detailed Results for the Cases

In this section details of the results for each of the cases are presented. Each generatedrecovery option has been discussed with the experts at ML whom rigorously checkedthat the suggested solution was in fact valid. All of the compared costs are calculatedbased on the same theoretical model (using the estimated bunker cost presented inSection 3.1). Not using the actual costs for the SBML ensures that a comparison ispossible.

Page 67

CHAPTER 6. GENERATED RECOVERY STRATEGIES

Kwangyang

Yokohama

LazaroCardenas

Balboa

OtherPorts

0 200 400 600 800 1000

Time [hours]

Sailings for Maersk Sarnia and On-Carrying Vessels In Transshipment Ports

Figure 6.1: Time-space network for Case 1 (A Delayed Vessel). Maersk Sarnias possiblesailings is red, whereas other ML vessels’ possible sailings have other colors.

1. A Delayed Vessel

Within the planning horizon [of Case 1 (A Delayed Vessel)] Maersk Sarnia deliverscontainers to a single ML vessel in Lazaro Cardenas and seven ML vessels in Balboa(the sailing is depicted in Figure 3.2, page 28). As these vessels are operated byML, it is possible to delay each of them around the originally planned arrival time.As Maersk Sarnia has four port calls (Yokohama, Lazaro Cardenas, Balboa andYokohama) and crosses the Pacific Ocean twice within the recovery horizon, thenumber of feasible sailings becomes large. The time-space network for this instanceis presented in Figure 6.1. The vessel Maersk Sarnia is allowed to omit Yokohamaand to omit either Lazaro Cardenas or Balboa. Not allowing the vessel to omit bothLazaro Cardenas and Balboa ensures that it crosses the Pacific Ocean.

Both of the runs give solutions that in structure differ from the recovery chosen by theexperts at ML (SBML). The solutions are plotted in Figure 6.2 and data describingthe solutions is given in Table 6.3. ML has chosen to call all ports and catch up byspeeding significantly up, however the speed-up has not been enough to reach thehead haul ports in time. The first run (where no cost is put on miss-connection whenoptimizing) gives a result where both Yokohama and the large hub in Balboa areomitted. This corresponds directly to minimizing the sailing cost.

This solution is not applicable for ML as almost all of the containers are MC-impacted,increasing the total cost on the busy trans-Pacific string. Vessels from Asia to America

Page 68

6.3. DETAILED RESULTS FOR THE CASES

Kwangyang

Yokohama

LazaroCardenas

Balboa

0 200 400 600 800 1000

Time [hours]

Chosen optimal sailings for Maersk Sarnia

Possible sailingsML Solution

Optimized Solution (OTD)Optimized Solution (OTD+MC)

Figure 6.2: Suggested recovery solutions for Case 1 (A Delayed Vessel) the time-spacenetwork. The additional vessels is omitted to make the graph easier to overview.

SBML Run 1 Run 2Sailing Cost 1,000,000 406,144 914,063

OTD-impacts (2449) (445) (0)MC-impacts (26) (4561) (400)

Run 1 Objective 1,251,988 915,822 954,789Run 2 Objective 1,254,635 1,380,194 995,514

Table 6.3: Details for each of the three solutions for Case 1 (A Delayed Vessel). The costsare relative and the counts of impacted containers are in units.

are in general fully loaded implying that MC-impacting all cargo will influence thenetwork in multiple weeks going forward. It seems that the strategic customer servicepenalty for OTD-impacting the cargo is too low relative to bunker costs and portfees. To overcome this without going into a discussion of ML’s strategic costs theadditional miss-connection penalty is introduced.

In the second run (where the miss-connection penalty is added) the optimal recoverystrategy is to omit Yokohama. After Yokohama the vessel calls Lazaro Cardenas andBalboa slightly earlier than SBML to avoid OTD-impacting the cargo. The suggestedsolution is competitive to the action implemented by ML.

Page 69

CHAPTER 6. GENERATED RECOVERY STRATEGIES

LeHavre

Rotterdam

Hamburg

Zeebrugge

SuezCanal

OtherPorts

400 450 500 550 600 650 700 750

Time [hours]

Sailings for Maersk Eindhoven and On-Carrying Vessels in Transshipment Ports

Figure 6.3: Time-space network for Case 2 (A Port Closure). Maersk Eindhovens possiblesailings are red, whereas other ML vessels’ possible sailings have other colors.

The optimized solutions are more cost efficient with both of the cost settings. For thecost settings used by ML in the daily operations without miss-connection penalty,SBML is in fact the most expensive. Here the extra cost, relative to the result ofRun 2, amounts to 24%. When including the additional miss-connection penalty, thesavings by using the optimized solution (from Run 2) is 21%. According to the expertsat ML the number clearly shows that Yokohama should have been omitted. However,the decision process was influenced by a key client manager and the operators werenot capable of presenting convincing data. In this case a decision support tool wouldhave kept a single stakeholder from dictating the decision and place more emphasisand support on the operators decision.

2. A Port Closure

For Case 2 (A Port Closure) where Le Havre is closed for an expected 48 hours, thegeneral way to grow the graph does not apply. Structural information is added asthe setting is that either Le Havre is called 48 hours delayed or Rotterdam is calledat the proforma time. This gives raise to two nodes and two sailing edges, whereafterthe remaining part of the graph is grown as usual.

Maersk Eindhoven delivers containers to five ML feeders but none in Le Havre. How-ever, in Le Havre 649 containers need to be loaded and 1911 need to be unloaded. Thetime-space network of the case is presented in Figure 6.3. An interesting observation

Page 70

6.3. DETAILED RESULTS FOR THE CASES

PortKlang

LeHavre

Rotterdam

Hamburg

Zeebrugge

SuezCanal

450 500 550 600 650 700 750

Time [hours]

Chosen optimal sailings for Maersk Eindhoven

Possible sailingsML Solution

Optimized Solution (OTD)Optimized Solution (OTD+MC)

Figure 6.4: Suggested recovery solutions for Case 2 (A Port Closure) in the time-spacenetwork.

SBML Run 1 Run 2Sailing Cost 1,000,000 938,517 977,392

OTD-impacts (3111) (0) (3111)MC-impacts (58) (2560) (58)

Run 1 Objective 1,454,359 1,305,560 1,431,751Run 2 Objective 1,462,962 1,672,603 1,440,067

Table 6.4: Details for each of the three solutions for Case 2 (A Port Closure). The costsare relative and the counts of impacted containers are in units.

is that some feeders are not leaving until far after Maersk Eindhoven has visitedRotterdam, which limits the container impact of a late arrival. This information isnot included when the operators at ML solve the problem.

Again the two runs result in structural different solutions, also compared to theML solution (Figure 6.4). However, as noted earlier SBML is based on re-flowingcontainers and therefore this solution is not included in neither the scoping of thisproject or the possible outcome of the model.

Surprisingly, the data for the suggested solutions, in Table 6.4, shows that theoptimized runs are again suggesting a better alternative with respect to cost. Unfor-tunately, the cost savings stem from the fact that Le Havre was actually closed for

Page 71

CHAPTER 6. GENERATED RECOVERY STRATEGIES

almost 72 hours instead of the 48 hours anticipated. If the model is forced to callLe Havre and 72 hours delay is added, the solution is inferior to SBML where theRotterdam calls are merged.

The conclusion for this case is therefore that the model approach was not capable ofpresenting all relevant solutions, but that the model suggests competitive solutionswithin the scope of this project.

Note that in fact it would be possible to allow the model to obtain the solution usedby ML by allowing the first Rotterdam call and the Hamburg call to swap. However,this is considered re-flowing and would raise the question of how to handle sailingswithout distance. Even though it is possible, it is considered outside the scope ofthis project.

3. A Berth Prioritization

In Case 3 (A Berth Prioritization), the additional berth occupation constraint (4.8) isadded to ensure that the vessels call the port in India one at a time. A node is addedfor each vessel at each of times where the berth is available. Sailings connecting thevessels current locations and these are added, whereafter the graph is grown as usualfrom the possible berthing times in India.

PortQasim

JawaharlalNehru

Pipavav

Salalah

JebelAliDubai

SuezCanal

OtherPorts

0 100 200 300 400 500 600

Time [hours]

Sailings for Affected Vessels and On-Carrying Vessels In Transshipment Ports

ME3MECL1

Figure 6.5: Time-space network for Case 3 (A Berth Prioritization) where the ME3-vessel(red) or the MECL1-vessel (green) calls Jawaharlal Nehru in India first.

Page 72

6.3. DETAILED RESULTS FOR THE CASES

MECL1 ME3 TotalSailing Cost 519,537 480,463 1,000,000

OTD-impacts (687) (0) (687)MC-impacts (0) (0) (0)

Objective 776,139 480,463 1,256,602

Table 6.5: Details for the solution to Case 3 (A Berth Prioritization). The costs are relativeand the counts of impacted containers are in units.

The berth prioritization case is interesting as four of the additional ML vessels aremother vessels sailing long distances. This makes it possible to delay these vesselssignificantly. However, again it is seen that the time between the two implicated vesselsarrive and until containers are transported onwards is large for most connections.The time-space network for this case is given in Figure 6.5.

The two runs with varying objectives give the exact same decision, which in turn isthe same as SBML. The solution is presented in Figure 6.6 and Table 6.5.

That the mathematical model consistently generates the same solution as ML isregarded a big success. It can be used to confirm that the model works, but moreimportantly that the solution, generated iteratively in a hectic, time consumingprocess inside ML, theoretically could have been generated in a few seconds.

PortQasim

JawarhalalNehru

Pipavav

Salalah

JebelAliDubai

SuezCanal

0 50 100 150 200 250 300 350 400 450

Time [hours]

Chosen optimal sailings

Possible sailingsMECL1 ML Solution

ME3 ML SolutionMECL1 Optimized Solution

ME3 Optimized Solution

Figure 6.6: Suggested recovery solutions for Case 3 (A Berth Prioritization) the time-spacenetwork.

Page 73

CHAPTER 6. GENERATED RECOVERY STRATEGIES

4. Expected Congestion

The last case where a feeder vessel is expecting port congestions in the last portdiffers completely from the other cases (the sailing is depicted in Figure 3.3, page31). The feeder only carries direct import and export cargo to and from Colombia,meaning that no additional vessels need to be taken into account.

The expected port delay (of 24 hours if Santa Marta is called after t = 100) combinedwith the possibility of calling the three ports in Colombia in any order defines theproblem. The time-space network of possible sailings along with the solutions is givenin Figure 6.7.

ML decided to alter the order of the port calls to ensure that Santa Marta wasvisited long before the expected congestion. This resulted in OTD-impacting thecargo in Cartagena. Contrary to SBML, the optimized solution suggests continuingas planned, but speeding up to arrive at Santa Marta before the expected congestion.This solution displays slightly increased bunker cost but ensures that all containersare delivered on time. According to the experts at ML, the optimized solutions shouldhave been implemented. The costs are presented in Table 6.6 revealing a savingamounting to approximately 58%.

One issue with the optimized solution is that short delays often occur in small ports.A threat is therefore that short delays in Cartagena and Barranquilla propagate so

Manzanillo(P)

Cartagena

Barranquilla

SantaMarta

0 50 100 150 200

Time [hours]

Chosen optimal sailings for Maersk Ravenna

Possible sailingsML Solution

Optimized Solution

Figure 6.7: Suggested recovery solutions for Case 4 (Expected Congestion) in the time-spacenetwork.

Page 74

6.4. GENERATING MULTIPLE GOOD SOLUTIONS

SBML RunSailing Cost 1,000,000 1,033,334

OTD-impacts (222) (0)MC-impacts (0) (0)

Objective 2,454,440 1,033,334

Table 6.6: Details for each of the two solutions to Case 4 (Expected Congestion). The costsare relative and the counts of impacted containers are in units.

that the vessel arrives in Santa Marta after time 100. Before applying this recoverystrategy ML would contact the captain at Maersk Ravenna and the three Colombianports to make sure that the plan is in fact possible to carry out. Generating morerobust solutions is an attractive field of further research.

6.4 Generating Multiple Good Solutions

The results above show that the mathematical model is capable of generatingcompetitive recovery strategies within short time. However, as argued earlier the ideais to develop a decision support tool where the user is presented with multiple goodand not too similar solutions. In this section, the recovery strategies generated bymodifying the weights in the objective, by introducing constraints on the containerimpacts, and by enforcing structural differences, are presented. For a description ofthe theoretical ideas see Section 5.2.

The Weighted Sum Scalarization

The approach, where the weights on respectively the cost of sailing (λ) and thepenalty from impacting containers (1− λ) are varied, has been tested on each of thecases. The results presented here are based on tests with γ = 10 and µ = γ2 = 100giving

λ ={

1100 ,

19 ,

29 , . . . ,

89 ,

99100

}.

The running time has been reduced by only building the graph and initiating themodel in CPLEX once. In a loop, the model has been optimized for each value of λand the results have been printed.

The γ = 10 runs for Case 1 (A Delayed Vessel) results in four different recoverystrategies, but two of the four have the same structure as only the additionalfeeder sailings are changed slightly. When optimizing Case 2 (A Port Closure),the two structural different solutions seen above are returned. In Case 3 (A BerthPrioritization), two solutions with similar structure and varying feeder planning areobtained, and in Case 4 (Expected Congestion), two structurally different solutions

Page 75

CHAPTER 6. GENERATED RECOVERY STRATEGIES

are obtained. Details are given for Case 1 (A Delayed Vessel) as it presents the mostinteresting results.

Table 6.7 shows the running time for each of the four cases with γ = 10. As expectedonly the computational time used in CPLEX has increased. The increase is limitedas the optimal solution from the last iteration is used as a starting point whenoptimizing and as the problem is only initiated a single time. The computationaltimes are applicable for real-time decision support.

The three structurally different solutions for Case 1 are respectively to call all ports(focused on minimizing container impact), to omit Yokohama (looking at both sailingcost and container impact), and to omit both Yokohama and Balboa (focused onminimizing sailing costs). The solutions are depicted in Figure 6.8 and the valuesfor the solutions in Table 6.8. For this case, the suggested approach is capable ofpresenting the solutions that the operators in ML would actually consider and inreasonable time.

Two of the solutions correspond to the results seen above (from run 1 and run 2). Thelast is quite interesting as the model suggests catching up before calling Yokohamathe first time (λ ∈

]0, 3

9

]). Theoretically this is possible by sailing at the maximum

speed the entire journey from Kwangyang to Yokohama, however in reality this wasnot an option due to the weather conditions. Suggestions on how to avoid this kindof solutions and ensure more robust solutions are given in the closing discussion(Section 7.1). The basic idea is to plan recoveries using a lower maximum speed.

Case 1 2 3 4

Loading data 0.040 0.093 0.127 0.046Building graph 2.031 0.124 0.070 0.115

CPLEX 11.166 0.751 0.482 0.520

Total 13.237 0.968 0.679 0.681

Table 6.7: Computational time in seconds for each of the cases with varying weights in theobjective. In total the model is optimized 10 times for each case.

SBML λ ∈]0, 3

9

]λ ∈

[49 ,

59

]λ ∈

[69 , 1[

Sailing Cost 1,000,000 1,066,270 914,063 406,144OTD-impacts (2449) (0) (0) (445)MC-impacts (26) (0) (400) (4561)

Run 1 Objective 1,251,988 1,066,270 954,789 915,822Run 2 Objective 1,254,635 1,066,270 995,514 1,380,194

Table 6.8: Details for each of the three solutions obtained by varying the objective weights.The costs are relative and the counts of impacted containers are in units.

Page 76

6.4. GENERATING MULTIPLE GOOD SOLUTIONS

Kwangyang

Yokohama

LazaroCardenas

Balboa

0 200 400 600 800 1000

Time [hours]

Chosen optimal sailings for Maersk Sarnia

Possible sailingsML Solution

Min OTD/MC ImpactMin Overall (Sailing + OTD/MC Impact)

Min Sailing (Bunker + Port fee)

Figure 6.8: Suggested recovery solutions for Case 1 (A Delayed Vessel) in the time-spacenetwork for varying objective weights.

The weighted sum scalarization is an evident way to generate multiple good recoverysolutions. Even though it is not possible to guarantee that all Pareto efficient solutionsare generated, the ones of interest have been generated for the cases.

The ε-constraint Method

The ε-constraint method has been used to obtain all Pareto efficient solutions foreach of the cases. This has been done by the algorithm outlined in the pseudo codebelow (Algorithm 1). The sailing cost is minimized repeatedly, while the penaltyfrom impacting containers is forced to decrease. The algorithm terminates when theminimization problem becomes infeasible.

The ε-constraint method generates solutions that are similar to the solutions generatedusing the weighted sum scalarization. More solutions were generated for cases 1, 2 and4, but none that structurally differed from the ones already seen. The computationaltimes and number of Pareto efficient solutions generated are displayed in Table 6.9.It is again clear that Case 1, where Maersk Sarnia crosses the Pacific Ocean twice, iscomputationally harder to handle than the other cases.

As each container group has three possible stages (OTD-impacted, MC-impacted, ordelivered as planned), the number of Pareto efficient recovery solutions is potentially3|C|. This implies that, in an actual implementation one should not seek to present

Page 77

CHAPTER 6. GENERATED RECOVERY STRATEGIES

LoadProblemDataG ← BuildProblemGraphΘ ← BuildOptimizationProblem(G)S ← Minimize(Ws(S)|S ∈ Θ)ε←Wc(S)StillFeasible ← truewhile StillFeasible do

StillFeasible ← falseΘ← AddConstraintToProblem(Θ,Wc(S) < ε)if Θ is feasible then

StillFeasible ← trueS ← Minimize(Ws(S)|S ∈ Θ)ε←Wc(S)

endend

Algorithm 1: Generating all Pareto efficient recovery solutions using theε-constraint method.

Case 1 2 3 4

Loading data 0.107 0.136 0.139 0.126Building graph 3.627 0.213 0.090 0.119

CPLEX 52.764 0.979 0.882 0.733

Iterations (19) (4) (2) (5)

Total 56.498 1.328 1.011 0.980

Table 6.9: Computational time in seconds for each of the cases where all efficient solutionsare generated using the ε-constraint method. The number of iterations corresponds to thenumber of solutions generated.

all Pareto efficient solutions. The weighted sum scalarization is simpler and generatesmultiple solutions faster. For the purpose of showing that the model can be usedto generate multiple good solutions based on theoretical techniques, the presentedresults for the two methods are convincing.

Enforced Structural Differences

When each of the cases was presented thoroughly (Section 3.2), a list of recoveryoptions that the model should consider was given. This list stems from input fromthe operators at ML based on their intuition. The operator’s intuition is the startingpoint when trying to generate enforced structurally varying solutions.

Page 78

6.4. GENERATING MULTIPLE GOOD SOLUTIONS

The idea is presented for each of the cases putting emphasis on the solutions notobtained so far. As the ε-constraint method has been used to obtain all Paretoefficient solutions the remaining solutions are inferior. Therefore, the focus is on howto obtain all relevant solutions by enforcing structural differences rather than on theobtained solutions.

In Case 1 (A Delayed Vessel), the model has not suggested to omit Lazaro Cardenas(LZC) or to swap the call in LZC and in Balboa (BLB). Omitting the call in LZCcan easily be enforced by fixing zLZC = 1. Enforcing a swap between the LZC andthe BLB call can be done by fixing zLZC = zBLB = 0 (ensuring that both ports arecalled) and fixing all variables xl = 0|l : (LZC→ BLB). The idea is that all sailingsfrom LZC to BLB are prohibited forcing Maersk Sarnia to sail from BLB to LZC.Looking into Case 2 (A Port Closure), both of the structurally different solutionshave already been presented but could also arise from variable fixing on the firstsailings for Maersk Eindhoven.

Case 3 (A Berth Prioritization) and Case 4 (Expected Congestion) will be given moreattention. In both of these cases an operator might not be convinced by the abovesuggested solutions as they do not represent all the relevant structural differences. Infact, in Case 3 the ME3 vessel calls the port first in all solutions and in Case 4 theorder of the ports visited stays the same.

An operator (and other stakeholders) would most often demand to get informationon both of the possible solutions in Case 3 (i.e. to let either vessel call the port inIndia first). By fixing the variables for the first sailings of each vessel this is easy toobtain. Costs for the two options are given in Table 6.10. The solution chosen byML and the initial optimization is clearly superior to the alternative. The sailing ischeaper and the OTD-impact is half as large. The situation arose since the MECL1vessel was delayed implying that it will have OTD-impacted cargo in India despitebeing the first to call the port.

Looking into Case 4, the vessel Maersk Ravenna calls Cartagena (C), Barranquilla(B), and Santa Marta (S). Enforcing solutions with all permutations of the orderof calls will give 3! = 6 different runs. Each of the solutions can be obtained eitherby changing the graph or by variable fixing. The variable fixing is preferred as the

ME3 First MECL1 FirstMECL1 ME3 Total MECL1 ME3 Total

Sailing Cost 519,537 480,463 1,000,000 437,953 779,877 1,217,830OTD-impacts (687) (0) (687) (687) (637) (1324)MC-impacts (0) (0) (0) (0) (0) (0)

Objective 776,139 480,463 1,256,602 694,530 1,017,803 1,712,333

Table 6.10: Details for the solution to Case 3 (A Berth Prioritization). The costs arerelative and the counts of impacted containers are in units.

Page 79

CHAPTER 6. GENERATED RECOVERY STRATEGIES

CBS CSB SCB BCS BSC SBC

Sailing Cost 1,033,334 1,149,113 1,184,858 1,276,789 1,052,989 1,188,134OTD-impacts (0) (0) (0) (0) (222) (222)

Objective 1,033,334 1,149,113 1,184,858 1,276,789 2,507,429 2,642,574

Table 6.11: Details for each of the structurally different solutions to Case 4 (ExpectedCongestion). The costs are relative and the counts of impacted containers are in units. Notethat the actual sailing by ML is slightly cheaper as they left Manzanillo earlier than planned.

network only needs to be built once. As an example, the order of port calls chosenby ML (S → B → C) can be obtained by adding constraints∑

l:S→Bxl = 1 and

∑l:B→C

xl = 1

or by fixing all variables corresponding to sailings not in this order to zero (e.g.xl = 0∀l : C → B). The six structurally different solutions are shown in Figure 6.9and Table 6.11. The first observation is that the model has proven to be capable ofgenerating all solutions. The next observation is that ML surprisingly has chosenthe most expensive solution. A hypothesis is that the planner had only consideredthe most intuitive alternative, i.e. to change the order of calls completely to maintainthe same distance to sail. An optimization based decision support software solution

Manzanillo(P)

Cartagena

Barranquilla

SantaMarta

0 50 100 150 200

Time [hours]

Chosen optimal sailings for Maersk Ravenna with each port order

Possible sailingsOptimized Solution with Fixed Order

ML SolutionOptimized Solution

Figure 6.9: All of the structurally different solutions to Case 4 (Expected Congestion) inthe time-space network.

Page 80

6.5. STRESS TESTING THE SOLUTION APPROACH

would in short time be able to convince the planner to choose one of the alternativerecovery options.

6.5 Stress Testing the Solution Approach

All instances from ML are solved in very short time. This suggests concluding thatthe proposed model and solution technique are applicable in a real-life decisionsupport tool. However, as it has been shown that the VSRP is NP-complete (Section4.5), one might suspect that the short computational times for the four cases arecoincidental. To make a more valid assessment of the computational time of solvingthe VSRP, results are given for generic randomly generated instances.

An approach to generate random standardized problem instances is presented where-after the computational solution times of simulated problems of varying sizes arereported. Larger and more complex instances are generated to test how the solutionalgorithm scales.

Generating Generic Random Instances

Standardized simulations based on the network of ML would give strong results.However, it is a complex process to retrieve the data and will in practice turn outas designing test instances one at a time. This will not be a true stress testing ofthe model’s capabilities. Another suggestion is to generate instances based on thecases from ML (for instance, by combining the cases or by copying the schedule ofthe vessels several times). However, as the cases have a very special structure theresults would be difficult to generalize. A final suggestion could be to extent therecovery horizon in each of the cases. This approach has all the disadvantages ofboth of the others. Instead, it is chosen to generate problem instances based on ageneric shipping network.

Hence, a structure of ports needs to be generated. A simple approach is to lay out η2

ports in a squared grid. However, the hub-and-spoke structure of the network needsto be included. Figure 6.10(a) presents such a grid. The ports in the diagonal of thegrid are considered as hubs. The distance between any pair of ports is given by theEuclidean distance.

Next a series of vessels is generated. For each vessel a schedule of ports to callis generated by drawing κ < η2 ports randomly from the set of ports withoutreplacement. For a given vessel with κ = 5 in a network with η = 8 a set of port callsconstituting a schedule could be

HLightBlue = {P8,1, P7,2, P7,3, P6,5, P8,8}

which is plotted as light blue arrows along with four other vessels in Figure 6.10(b).The proforma schedule (planned sailing times) is calculated directly from the distances

Page 81

CHAPTER 6. GENERATED RECOVERY STRATEGIES

P1,1

P1,8

P8,1

P8,8

(a) Generated port in a grid with η = 8. The redand black dots corresponds to respectively hubsand spokes.

P1,1

P1,8

P8,1

P8,8

(b) The network of ports added sailings for |V| =5 vessels visiting κ = 5 ports each.

Figure 6.10: Graphical explanation of the standard way random instances of the VSRP aregenerated.

between the ports and the design speed of the vessels. The vessels are allowed toswap and omit intermediate port calls (these are P7,2, P7,3 and P6,5 for the light bluevessel).

At this point, ports and vessels have been randomly generated. The next issueis container itineraries. These are generated in the simple nested loops presentedin Algorithm 2. For each intermediate call for each vessel an arriving containergroup is added with probability πhOTD. In ports where two vessels meet, a containergroup planned to transship between the vessels is added with probability πhMC. Theprobabilities depend on the type of port as hubs are more likely to have arriving

foreach h ∈ Hv ∀v ∈ V doif ORD(h) /∈ {1, κ} then

With probability πhOTD generate a container group with a randomnumber of units planned to arrive in port h at the proforma time.foreach ϕ ∈ (V \ {v}) do

if ϕ calls h after v according to the proforma thenWith probability πhMC generate a container group with a randomnumber of units connecting from vessel v to vessel ϕ.

endend

endend

Algorithm 2: Generating container connections randomly.

Page 82

6.5. STRESS TESTING THE SOLUTION APPROACH

containers and to handle transshipments.

Finally, each vessel is randomly delayed in the first port with probability πD. In-creasing any of η, |V|, κ, πhMC, π

hOTD and πD will result in generated instances of the

VSRP that are more complex. This has been done during the testing. Generatingrecovery problems with a generic method can be used to benchmark different solutiontechniques. Alternative methods and models developed in future studies can be testedon these generic instances.

Test Results

The base case is instances generated with 64 ports and 5 vessels visiting 5 ports each.The number of vessels and port calls per vessel is chosen such that it corresponds to thelargest instances from ML. The number of ports has been chosen to allow increasingthe total number of calls without generating completely unrealistic instances whereall sailings of vessels mingle multiple times (a discussion is given in Appendix A.3).Containers with OTD-impact have been added for all hub calls (πHub

OTD = 1) andin half of the other calls (πSpoke

OTD = 0.5). The same probabilities are used whengenerating transshipments. The probability of a vessel being delayed is πD = 0.3.These probabilities and the distribution of delays stem from ML and are fixed.

In turn, the number of vessels and the number of calls per vessel have been altered.Based on five replications with each setting, the average running time is determined.Before each replication the memory has been cleared. A detailed list of all runningtimes is presented in Appendix A.4. The problem has been solved to optimality forall instances. The time to load the data is in all tests constant and in-significant.

050

010

0015

00

Calls Per Vessel

Tim

e [s

]

5 8 12 16 20

10

TotalLoading DataBuilding GraphRunning Cplex

(a) The computational times.

1e−

011e

+01

1e+

03

Calls Per Vessel

Tim

e [lo

g(s)

]

5 8 12 16 20

10

TotalLoading DataBuilding GraphRunning Cplex

(b) The computational times plotted on a logorit-mic scale.

Figure 6.11: Computational times for generic generated problems with varying number ofport calls per vessel. The times are average values based on 5 repeated runs.

Page 83

CHAPTER 6. GENERATED RECOVERY STRATEGIES

05

1015

2025

Number of Vessels

Tim

e [s

]

5 8 12 16 20 25 36

10

TotalLoading DataBuilding GraphRunning Cplex

(a) The computational times.

0.1

0.5

2.0

5.0

20.0

Number of Vessels

Tim

e [lo

g(s)

]

5 8 12 16 20 25 36

10

TotalLoading DataBuilding GraphRunning Cplex

(b) The computational times plotted on a logorit-mic scale.

Figure 6.12: Computational times for generic generated problems with varying number ofvessels. The times are average values based on 5 repeated runs.

First the effect of increasing the number of port calls for each vessel is investigated.This corresponds to enlarging the recovery horizon. Five port calls for each vesselwill correspond to all calls in a local area for a mother vessel whereas including 20port calls for each vessel corresponds to including full round trips. Testing has beendone for 5, 6, 8, 12, 16, and 20 port calls. The resulting computational times areplotted in Figure 6.11.

The time used to build the graph and to run CPLEX grow significantly when thenumber of calls per vessel is increased. Within 10 seconds, which is a fair upper limiton computational times in real-time decision support software, it is possible to solvethe problem with up to eight calls for each of the five vessels (giving a total of 40 portcalls). Handling five vessels calling eight ports each corresponds to significantly largerand more complex disruptions than the cases from ML. A disruption including fivefull strings (with 20 port calls each) that mingle together is not possible to handlewith the suggested approach within a real-life decision support system. The highnumber of possible swaps and omissions makes the size of the graph blow up.

Looking into the effect of increasing the number of vessels reveals a similar result.Adding more vessels corresponds to handling more complicated disruptions. Theruns have been conducted with 5, 6, 8, 12, 16, 20, 25, and 36 vessels. The times areplotted in Figure 6.12.

Within the threshold of 10 seconds it is possible to handle disruptions including 10vessels with 5 port calls each. The time it takes to build the graph grows fast andthe evolution of the time to solve the mathematical model by CPLEX seems to havean exponential tendency. The computational times do not evolve as rapidly as whenthe number of port calls is increased. This might be because the number of possibleswaps and omissions is growing linearly with the number of vessels and exponentiallywith the number of calls per vessel.

Page 84

6.5. STRESS TESTING THE SOLUTION APPROACH

020

040

060

080

0

Number of Vessels and Calls

Tim

e [s

]

5 6 8 10 12

10

TotalLoading DataBuilding GraphRunning Cplex

(a) The computational times.

1e−

011e

+00

1e+

011e

+02

1e+

03

Number of Vessels and Calls

Tim

e [lo

g(s)

]

5 6 8 10 12

10

TotalLoading DataBuilding GraphRunning Cplex

(b) The computational times plotted on a logorit-mic scale.

Figure 6.13: Computational times for generic generated problems with varying number ofvessels and port calls per vessel. The times are average values based on 5 repeated runs.

Increasing both the number of vessels and the number of port calls reveals a trueexponential growth. Testing has been done with respectively 5, 6, 8, 10, and 12vessels and calls per vessel. The computational times are seen in Figure 6.13. Thesemi-logarithmic plot in Figure 6.13(b) shows a clear tendency towards exponentiallydeveloping running times.

A single run has been conducted with 100 ports, 50 vessels and 10 port calls pervessel. This corresponds to solving a disruption problem including a delayed mothervessel on each major service of ML with a recovery horizon corresponding to half aroundtrip (either head or back haul). The solution time was more than 8 hours. Suchdisruptions are extremely unlikely and would not be handled by operators usingstandard techniques. However, this run shows that it is possible to generate solutionsfor very large instances.

The computational results support the proof ofNP-completeness. For larger instancesthe suggested solution approach is not applicable in real-time software. However,based on the input from the operators at ML it seems that the iterative decisionsupport is feasible for the real-life problems. The instances possible to solve within 10seconds are much larger than the cases from ML. Still, improving the computationaltime may be an interesting point of future research.

Page 85

7ClosureThe closure of the thesis gives a discussion of the findings and a perspective on futurework before returning to the hypothesis.

7.1 Discussion

The present section gives a discussion of the findings of the thesis. The possibledrawbacks of the model are in focus and ways to overcome these are given.

To make rational decisions one have to weight benefits against cost, however, thesetting of recovery management only focuses on minimizing the cost (and impacton containers) while ignoring the revenue. This is natural, as transportation ofcontainers have already been arranged and billed, however it might skew the recoveryresults towards cancelling entire sailings. If for instance Maersk Sarnia (in Case 1)was allowed to omit both Lazaro Cardenas and Balboa, it would tend to do so tosave the large amount of fuel burned when crossing the Pacific Ocean. However, thesolution of not sailing at all is only attractive because the revenue of the containersis not included. In reality “the service crossing the Pacific Ocean is actually makingmoney”.

When using the model to generate recovery strategies the issue of generating solutionsthat are not applicable can be overcome in several ways. In the example of MaerskSarnia, the operator can disallow the vessel to omit the two port calls or simplyincrease the penalty of miss-connecting containers. A parameter testing could beused to find good levels of the penalties for OTD- and MC-impacting cargo. Thesecould also be set as part of an iterative solution process as described in the Section7.2.

The system is dependent on an experienced operator (as seen above). If a suggestedsolution omits all port calls, the operator needs to input constraints and run theoptimization again. Furthermore, the operator needs to insert good estimates of theparameter values for e.g. the MC-penalty. This value is dependent on whether ornot the vessel next week is expected to be full, whether or not it will cost multipleextra transshipments, and whether or not leaving containers in a port will causecongestions. The operator of the program needs to have an overview of these thingsas the current model must be guided to present valid solutions.

It is important to note that the model still presents great value for the operator.Especially with the modifications that allow to present several good solutions. It canpresent data on all recovery solutions the operator considers and even suggest somenew ideas within a matter of seconds. This is a major step forward compared to thecurrent manual approach where only the most obvious recoveries are considered and

Page 87

CHAPTER 7. CLOSURE

solutions are not based on explicit analyses.

The project has been well scoped. Extending the model is expected to increase thecomplexity considerably without a comparable significant effect on performance. Inthe context of proof-of-concept of decision support when handling recoveries in theliner shipping industry, this study gives a strong insight.

The work with the project has given valuable knowledge of the operations at ML.It has been discovered that vessels in general sail longer and use significantly morebunker than the theory prescribes. The reason is that vessels often take detours dueto weather and streams. This insight needs to be included when handling disruptionsso that robust solutions are generated. An easy way to implement this is to reducethe allowed maximal speed when solving recoveries. This idea has a number ofdesirable impacts. The two most important are that vessels can still follow therecovery schedule despite extended sailing times, and that vessels will not arrive inports just in time but can speed up before calling a port to be sure to meet theOTD-time and catch connections.

One important issue is the data for the model. In this project, the focus has been onhistorical events allowing high quality data. In reality it is hard to get good qualitylive data in the liner industry. It is . . .

. . . hard to get proper estimates on the number of containers to pick up in futureports. Often customers deliver the containers just in time and often containersbooked never show up.

. . . hard to estimate the exact bunker consumption and sailing times. As mentionedit implies that some sailings might be much more expensive (and take longertime) than expected when planning.

Furthermore, new disruptions may occur during the time when an earlier disruptionis handled. All of this makes the system unpredictable. Decreasing the maximalspeed of vessels when planning a recovery will ensure that the model generate robustsolutions but might exclude some solutions of high quality. A bonus is that decreasingthe maximum speed when planning will reduce the size of the graph and thereby thecomputational time.

The punishment for OTD-impacting containers is peculiar. ML has decided to put afixed cost on “large” delays, however one would expect that customer satisfactionis different for containers delayed a single day as opposed to seven days. Figure7.1 presents two alternative ways to punish delayed delivery where this is takeninto account. Each can be implemented in the model with a slight change (seeAppendix A.5 for more detail). The model also allows ML to vary the OTD-penaltyfor different types of containers. Key client containers and refrigerated containersholding perishable goods are respectively more important and more vulnerable todelays and should therefore induce a higher penalty if delayed.

Page 88

7.2. FUTURE WORK

Time

12 18 00 06 12 18 00 06 12

Planned Delivery OTD Deadline

OT

D P

enal

ty

MLSuggestion 1Suggestion 2

Figure 7.1: Ideas to more sufisticated functions to penalies container delays. Each of themcan easily be implemented in the suggested model.

The computational results in this project are based on facilitating CPLEX to dothe optimization. This approach might not be feasible when implementing a multi-user system in a liner shipping company, as it would be costly to buy licenses forall users1. Given the small problem instances from ML and the resulting shortcomputational times, it is obvious to consider other options. Firstly, one shouldtest free mathematical solvers, and secondly, it might be possible to build a simpleoptimization algorithm for these small instances. Both are expected to perform wellif implemented and would minimize the operational cost of a decision support tool.Furthermore, significant work can be put into improving the speed of the currentapproach. A starting point could be the PhD thesis by Bratu (2003) where ways toremove dominated edges in the time-space network are given.

7.2 Future Work

The areas of future work can be categorized into modeling aspects, software aspects,and testing. The future work within modeling aspects is modifications of the modelto handle the disruptions better. Within the software aspects, the future workcorresponds to the steps needed to make a functioning software solutions, and thework needed to ensure that the software become as useful as possible. This primarilyhas interest for ML. Finally, testing is an everlasting source of future work.

1Even though the cash flow of major liner shippings companies would allow such investments, itmight not be prioritized if avoidable.

Page 89

CHAPTER 7. CLOSURE

Modeling

The scoping of this project excludes the re-flowing cargo, the capacity of vessels2,and the utilization of vessels. Furthermore, it is not possible to assess whether ornot it is possible to call the ports in the suggested recovery strategies 3. All of theseissues give rise to areas of further research.

Generating plans for alternative routing of containers during the recovery wouldincrease the value of a decision support tool significantly. However, it implies thata much larger part of the transportation network needs to be considered and thatthe capacity of all vessels is known. Lately more focus has been on including there-flowing of passengers in the mathematical models used to handle disruptions inthe airline industry. So far, it has resulted in instances that cannot be solved in areal-time system (Clausen et al., 2009). For liner shipping, the number of containersand possible connections is significantly higher, implying that integrated models inthis domain are expected to be even more complex to optimize. A flight passengerwill most often follow a path close to the original plan whereas containers might betransported the other way around the world. On the other hand, if feasible modelsfor solving the general recovery and re-flowing problem were invented, it would leadto the ultimate goal of a completely automated planning and disruptions tool forliner shipping. This is definitely one of the interesting areas to look into.

A good starting point might be to use a sequential and iterative approach similar towhat is currently applied for airlines. That is, iteratively the vessels are recovered,the impact on containers is evaluated, and the costs are updated. After an optimalrecovery of vessels has been generated, using the presented model, all MC-impactedcontainers are re-flowed. The actual costs connected to re-flowing the containers(from additional container moves, storage fees, future delays, and congestions) arethen returned to the VSRP as the penalty of miss-connecting the containers (c[MC]

− ).2If a vessel is planned to unload a significant amount of containers in a port, but decides to omit

it, it might imply that the vessel do not have sufficient space available to load containers at the nextports.

3If a vessel is planned to unload a significant amount of containers in a port, but decides to omitit, it might imply that the vessel cannot enter the next port due to restrictions on the draft.

Vessel Recovery

ContainerRecovery

Iter

ativ

e S

olu

tio

nA

pp

roac

h

ContainerRecovery

S(The optimal set of sailings)

c (The actual cost of re-flowing

container group c)

^

[MC]c

Figure 7.2: Suggestion to iterative solution approach, that can be implemented based on thepresented model and the current tool to flow containers.

Page 90

7.2. FUTURE WORK

New solutions might then arise due to the updated cost setting. The idea is depictedin Figure 7.2. The iterative process would allow high quality solutions taking there-flowing of containers into account. It can be done using the current setting butwould impact the time used to generate recovery decisions as re-flowing containers iscurrently time consuming.

Even without a component capable of re-flowing containers, it would add value toinclude capacity and utilization of vessels in the model. Including the capacity wouldimply that some infeasible solutions could be ignored and including utilization wouldallow the system to better estimate if a port call can be omitted or not. The challengein this extension is that it implies that it is necessary to model all containers’ flowsexplicitly, i.e. one has to model where containers miss-connect. The utilization ofvessels translates directly into the draft and thereby an assessment of whether or nota vessel can call a given port at a given time.

Still, being able to call a port cannot translate directly into a port call as ports arebusy. More research should be put into investigating the process of berth clearings.Such research might benefit significantly from including the container terminalspersonnel. The berth clearing part of the software is inappropriate and improving theinsight into the problem is an important step towards a more automated approach.

An interesting extension is to include the possibility of swapping vessels. Swappingvessels is used if another vessel on a service is returning from maintenance. It isnot possible to swap within hours, but sometimes idle vessels can start the nextroundtrip on time and the delayed vessel can go idle. This corresponds to the aircraftswap in the airline recovery problems, but is substantially different as the delayedvessel needs to continue until all containers have been dispatched. Allowing vesselswaps (when idle vessels are available) would make a more realistic model. On thecontrary this option is seldom available and rarely used.

Disruptions arise from the fact that the operation of vessels is unreliable. As describedabove this also holds after decisions have been made regarding a disruption. It couldtherefore be interesting to look into making robust recoveries. A way to do thiswould be to include buffer time in the model and award having buffer cleverly spreadthroughout the recovery horizon. Planning with vessels arriving in the last second orsailing big distances with maximum speed might not be possible in real life. Dataactually suggests a significant discrepancy when estimating sailing times and bunkerconsumption.

Page 91

CHAPTER 7. CLOSURE

Software

The suggested model is supposed to lead to an interactive support tool for theoperators in liner shipping. This raises the demand of a high quality user interface.In fact, the key to a successful implementation of a decision support tool for recoveryproblems is a computer graphics environment that makes the optimization techniqueseasily available for the operator (Mathaisel, 1996). For the VSRP this is especiallytrue due to the high dependence on user interaction. It is therefore essential to focuson developing the software flow and design the user interactions. An example of asuccessful implementation in an organization similar to the one at ML is given byRakshit et al. (1996).

Another area of focus, when developing a software solution, is to make it as generalas possible. The recovery models may be applicable on related problems within theliner shipping business. This could be support when considering canceling a sailing orwhen planning feeder schedules on a daily basis. By extending the area of applicationof the software, it will be more attractive to the operators and thereby easier toimplement in the organization of ML.

Testing

An evident source of additional work is testing the model. In this project the modelhas been tested on four historical disruptions and on generic randomly generatedproblem instances. The model needs to be tested on more of the historical disruptionsfrom ML and in real-life during the actual recovery of a disruption. This will give amore profound insight into the capabilities of the model and can be an important stepin order to involve the operators at ML in the development of a software solution.

One of the assumptions in the project is that disruptions are not allowed to spreadinto the shipping network. It could be interesting to test the cost of this rule ofthumb, by comparing solutions allowing the disruptions to spread with solutionsbased on the restriction. Computational wise it is also interesting to test if the modelis capable of allowing the disruptions to spread more.

Page 92

7.3. RETURNING TO THE HYPOTHESIS

7.3 Returning to the Hypothesis

Decision support for disruption management in liner shipping based on methods inoperations research is feasible as:

• The presented model allows solving recovery problems in seconds. (The fastsolution times allow an iterative solution approach and that multiple goodsolutions can be presented to the user.)

• The costs of recovery scenarios can be calculated to a satisfying extent. Currentlythe cost of re-flowing containers is estimated.

• The relevant recovery actions can be included in the presented model4.

• All of the presented disruptions scenarios can be modeled and solved.

However, it has been difficult to retrieve the required data. This is partly dueto the unpredictable future operations and partly due to the systems at ML. Aneffective decision support tool is dependent on easy accessible good estimates offuture container flows and sailing times.

The insight into the daily operations at ML has confirmed that a decision supporttool is desirable. The operators at ML show great interest in the project. However,for a system to be valuable a high quality interface, allowing the operator to modifythe algorithm, is required.

4In one case a desired recovery was not included in the model, however according to the expertsat ML this does not constitute a problem and furthermore slight adjustments of the model will allowit to present all of the seen recoveries.

Page 93

8ConclusionThe ambition of this thesis was to assess the possibilities of creating decision supportfor handling disruptions in liner shipping based on operations research. The scopewas to utilize the models used for disruption management in the airline industry.Information on disruption management in liner shipping has been obtained viaa number of meetings with experienced personnel at ML and from the literature.Getting an insight into the domain of vessel recovery and getting data from ML’ssystems has been a part of the project.

The Vessel Schedule Recovery Problem has been presented and proven tobe NP-complete by reduction from the Knapsack Problem and the SymmetricTravelling Salesman Problem. A Mixed Integer Liner Programmingmodel inspired by the models known from the Aircraft Schedule RecoveryProblem has been presented and used to solve the problem. The model is based ona time-space network presentation of the possible sailings within a given recoveryhorizon. To test the model, four real-life instances from ML and a number of genericinstances have been solved. In all runs the model has been solved to optimality usinga mathematical solver.

The four instances from ML were based on historical disruptions and chosen byexperienced personnel to represent the most typical disruptions. In general the modelwas able to generate competitive solutions within seconds allowing implementationin a real-time decision support system. In two of the four instances the model gavesolutions that were significantly better than the recovery solution implemented byML. These two cases, combined with the simplified and standardized process ofhandling recoveries, makes it reasonable to expect a substantial cost saving if adecision support system was developed and used. Slight modifications allow themodel to present multiple structurally different recovery alternatives.

Testing the model on generic problem instances revealed that the model is capableof solving instances more complicated and larger than seen in the instances fromML in short time. However, as the size and complexity of the instances grow, thecomputational times develop almost exponentially. If the problem is extended totackle more of the disruption problem (for instance by including container re-flowing),the computational times might turn out to be an issue and necessitate a more efficientsolution technique.

Extending the model to include additional aspects of the problem is one of themost prominent sources of future research. The suggested model is not capable ofre-flowing containers or of handling vessel capacities. With respect to re-flowingmiss-connected containers a sequential approach is an interesting option, which basedon combining the current systems with the developed model, is expected to performwell. Integrated models have computational difficulties when applied in the airlineindustry as the problems become too complex to solve. Vessel capacities are also

Page 95

CHAPTER 8. CONCLUSION

interesting to include in the model to be able to assess whether a port call is possibleat a given time (with a given load) and to include the utilization in the optimization.

Another branch of future research is the solution method. In this thesis all possiblesailings for all affected vessels have been generated and a mathematical solver hasbeen used to reach optimality. The uncertain data might make it interesting togenerate near-optimal solutions fast using a heuristic approach. Furthermore, it is ofgreat interest to find methods to generate robust solutions.

To conclude, the concept of decision support for liner shipping based on operationsresearch has been proven valuable. The operators at ML have shown great interestin the solutions generated by the model and it was possible to solve the instances inshort time. I am convinced that a decision support system based on the ideas in thisthesis will help mitigating the consequences of disruptions significantly. However, aconsiderable amount of research still needs to be done.

Page 96

BibliographyRicha Agarwal and Özlem Ergun. Ship scheduling and network design for cargorouting in liner shipping. Transportation Science, 42(2):175–196, May 2008.

Patrick M Alderton. Sea Transport: Operation and Economics. Reeds, 5 edition,September 2004.

José Fernando Álvarez. Joint routing and deployment of a fleet of container vessels.Maritime Economics & Logistics, 11(2):186–208, June 2009.

Michael Ball, Cynthia Barnhart, George Nemhauser, and Amedeo Odoni. Handbooksin Operations Research & Management Science: Transportation, volume 14, chapter1: Air Transportation - Irregular Operations and Control. Elseview, 2007.

Michael Ball, Cynthia Barnhart, Martin Dresner, Mark Hansen, Kevin Neels, AmedeoOdoni, Everett Peterson, Lance Sherry, Antonio Trani, and Bo Zou. Total delayimpact study - a comprehensive assessment of the costs and impacts of flight delayin the united states. Technical report, National Center of Excellence for AviationOperations Research (NEXTOR), October 2010.

Jonathan F. Bard, Gang Yu, and Michael F. Argüello. Optimizing aircraft routingsin response to groundings and delays. IIE Transactions, 33(10):931–947, 2001.

Cynthia Barnhart. The Global Airline Industry, chapter 7: Airline Schedule Opti-mization. Peter Belobaba, Amedeo Odoni, and Cynthia Barnhart for John Wileyand Sons, 2009a.

Cynthia Barnhart. The Global Airline Industry, chapter 9: Irregular Operations -Schedule Recovery and Robustness. Peter Belobaba, Amedeo Odoni, and CynthiaBarnhart for John Wiley and Sons, 2009b.

Stephane Bratu. Airline Passenger On-Time Schedule Reliability: Analysis, Algo-rithms and Optimization Decision Models. PhD thesis, Massachusetts Institute ofTechnology, 2003.

Stephane Bratu and Cynthia Barnhart. Flight operations recovery: New approachesconsidering passenger recovery. Journal of Scheduling, 9:279–298, June 2006.

Marielle Christiansen, Kjetil Fagerholt, and David Ronen. Ship routing and schedul-ing: Status and perspectives. Transportation Science, 38(1):1–18, 2004.

Marielle Christiansen, Kjetil Fagerholt, Bjørn Nygreen, and David Ronen. Handbooksin Operations Research & Management Science: Transportation, volume 14, chapter4: Maritime Transport. Elseview, 2007.

Jens Clausen, Allan Larsen, Jesper Larsen, and Natalia J. Rezanova. Disruptionmanagement in the airline industry - concepts, models and methods. Technical

Page 97

BIBLIOGRAPHY

report, Informatics and Mathematical Modelling, Technical University of Denmark,DTU, 2009.

Dataloy. Ddt dataloy distance table. Internet Database, 2011. Link: http://www.dataloy.com on April 20, 2011.

Dominik Dienst. Airline disruption management: Exact methods for the aircraftrecovery problem. Master’s thesis, Technical University of Denmark, August 2010.

Matthias Ehrgott. Multicriteria Optimization. Springer, second edition, 2005.

Michael R. Garey and David S. Johnson. Computers and Intractability; A Guide tothe Theory of NP-Completeness. W. H. Freeman & Co., 1990.

Ahmad I. Z. Jarrah, Gang Yu, Nirup Krishnamurthy, and Ananda Rakshit. A decisionsupport framework for airline flight cancellations and delays. TransportationScience, 27(3):266–280, August 1993.

JEC. Your flight has been delayed again - flight delays cost passenger, airlines, andthe u.s. economy billions. Technical report, Joint Economic Committee (JEC),Maj 2008. Chairman, Senator Charles E. Schumer. Vice Chair, Rep. Carolyn B.Maloney.

Niklas Kohl, Allan Larsen, Jesper Larsen, Alex Ross, and Sergey Tiourine. Airlinedisruption management–perspectives, experiences and outlook. Journal of AirTransport Management, 13(3):149–162, 2007.

Qiang Li, Shiqi Tong, Chunxia Yang, and Nuo Wang. Optimization of operationscheme of container terminal based on disruption management. InternationalConference on Transportation Engineering 2009 (Conference Proceeding Paper),pages 3477–3482, 2009.

Berit Løfstedt, J. Fernando Alvarez, Christian Edinger Munk Plum, David Pisinger,and Mikkel Mühldorf Sigurd. An integer programming model and benchmark suitefor liner shipping network design. Technical report, DTU Management Engineering,Technical University of Denmark and Maersk Line, Copenhagen, 2011.

Michael Løve, Kim Riss Sørensen, Jesper Larsen, and Jens Clausen. Using heuristicsto solve the dedicated aircraft recovery problem. Central European Journal ofOperations Research, 13:189–207, 2005.

Maersk. Slow steaming here to stay. News on Maersk Homepage,September 1, 2010. Link: http://www.maersk.com/AboutMaersk/News/Pages/20100901-145240.aspx on June 1, 2011.

Dennis F. X. Mathaisel. Decision support for airline system operations control andirregular operations. Comput. Oper. Res., 23:1083–1098, November 1996.

George L. Nemhauser and Laurence A. Wolsey. Integer and combinatorial optimiza-tion. Wiley-Interscience, 1988.

Page 98

BIBLIOGRAPHY

Theo E. Notteboom. The time factor in liner shipping services. Maritime Economicsand Logistics, 8(1):19–39, 2006.

Theo E. Notteboom and Bert Vernimmen. The effect of high fuel costs on linerservice configuration in container shipping. Journal of Transport Geography, 17:325–337, 2009.

Ananda Rakshit, Nirup Krishnamurthy, and Gang Yu. System operations adviser:A real-time decision support system for managing airline operations at unitedairlines. Interfaces, 26:50–58, March-April 1996.

Jay M. Rosenberger, Ellis L. Johnson, and George L. Nemhauser. Rerouting aircraftfor airline recovery. Transportation Science, 37:408–421, November 2003.

Elisabeth Rosenthal. Slow trip across sea aids profit and environment. The NewYork Times, February 16, 2010. Link: http://www.nytimes.com/2010/02/17/business/energy-environment/17speed.html on March 17, 2011.

Martin Stopford. Maritime Economics. Routledge, 3 edition, February 2009.

Dusan Teodorović and Slobodan Guberinić. Optimal dispatching strategy on anairline network after a schedule perturbation. European Journal of OperationalResearch, 15(2):178–182, February 1984.

Benjamin G. Thengvall, Jonathan F. Bard, and Gang Yu. Balancing user preferencesfor aircraft schedule recovery during irregular operations. IEE Transactions, 32:181–192, 2000.

Benjamin G. Thengvall, Gang Yu, and Jonathan F. Bard. Multiple fleet aircraftschedule recovery following hub closures. Transportation Research Part A: Policyand Practice, 35(4):289–308, 2001.

Benjamin G. Thengvall, Jonathan F. Bard, and Gang Yu. A bundle algorithmapproach for the aircraft schedule recovery problem during hub closures. Trans-portation Science, 37:392–407, November 2003.

Hilary Paul Williams. Model building in mathematical programming. J. Wiley, thirdedition, 1990.

Shangyao Yan and Yu ping Tu. Multifleet routing and multistop flight scheduling forschedule perturbation. European Journal of Operational Research, 103(1):155–169,November 1997.

Shangyao Yan and Dah-Hwei Yang. A decision support framework for handlingschedule perturbation. Transportation Research Part B: Methodological, 30(6):405–419, 1996.

Shangyao Yan and Hwei-Fwa Young. A decision support framework for multi-fleetrouting and multi-stop flight scheduling. Transportation Research Part A: Policyand Practice, 30(5):379–398, 1996.

Page 99

BIBLIOGRAPHY

Chunxia Yang, Nuo Wang, and Bing Zhao. A berth scheduling problem under sailingschedule disruption. ICCTP 2010: Integrated Transportation Systems (ConferenceProceeding Paper), pages 1529–1536, 2010.

Gang Yu and Xiangtong Qi. Disruption Management: Framework, Models andApplications. World Scientific Publishing Company, October 2004.

Gang Yu, Michael Argüello, Gao Song, Sandra M. McCowan, and Anna White. Anew era for crew recovery at continental airlines. Interfaces, 33:5–22, January2003.

Page 100

List of Figures1.1 Container vessels loading and unloading . . . . . . . . . . . . . . . . . . . . . . . 1

2.1 Mother vessel head haul sailing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2 Feeder vessel sailing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3 Screenshot from the disruption management system from Jeppesen . . . . . . . . 152.4 Steps in planning in liner shipping . . . . . . . . . . . . . . . . . . . . . . . . . . 172.5 Project Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.1 Bunker curve for Maersk Sarnia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.2 Case 1: Maersk Sarnia round trip . . . . . . . . . . . . . . . . . . . . . . . . . . 283.3 Case 4: Maersk Ravenna round trip . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.1 Moves in the time-space network model . . . . . . . . . . . . . . . . . . . . . . . 384.2 Example of a time-space network for a test problem . . . . . . . . . . . . . . . . 404.3 Miss-connection constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494.4 Knapsack Problem solved as Vessel Schedule Recovery Problem . . . 524.5 Symmetric Travelling Salesman Problem solved as VSRP . . . . . . . . . 54

5.1 Representation of the Pareto frontier of solutions for the VSRP. . . . . . . . . . 61

6.1 Case 1: Time-space network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686.2 Case 1: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696.3 Case 2: Time-space network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 706.4 Case 2: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716.5 Case 3: Time-space network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726.6 Case 3: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736.7 Case 4: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746.8 Case 1: Solutions for the weighted sum scalarization method . . . . . . . . . . . 776.9 Case 4: Solutions with enforced structural differences . . . . . . . . . . . . . . . 806.10 Generating random generic sailings . . . . . . . . . . . . . . . . . . . . . . . . . 826.11 Computational times increasing the number of port calls per vessel . . . . . . . 836.12 Computational times increasing the number of vessels . . . . . . . . . . . . . . . 846.13 Computational times increasing both the number of vessels and the number of

calls per vessels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

7.1 Ideas to more sufisticated penalties for delays . . . . . . . . . . . . . . . . . . . . 897.2 Iterative solution approach for disruptions in liner shipping . . . . . . . . . . . . 90

A.1 Computational times increasing the number of ports . . . . . . . . . . . . . . . . 106

Page 101

List of Tables1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.1 Characteristics of freight transportation modes . . . . . . . . . . . . . . . . . . . 14

4.1 Variables used in the mathematical model. . . . . . . . . . . . . . . . . . . . . . 444.2 Sets used in the mathematical model. . . . . . . . . . . . . . . . . . . . . . . . . 444.3 Data parameters used in the mathematical model. . . . . . . . . . . . . . . . . . 45

6.1 Overview of results for the cases . . . . . . . . . . . . . . . . . . . . . . . . . . . 666.2 Computational time in seconds for each of the cases. . . . . . . . . . . . . . . . . 676.3 Case 1: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 696.4 Case 2: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716.5 Case 3: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736.6 Case 4: Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756.7 Computational times for the weighted sum scalarization method . . . . . . . . . 766.8 Case 1: Solutions for the weighted sum scalarization method . . . . . . . . . . . 766.9 Computational times for the ε-constraint method . . . . . . . . . . . . . . . . . . 786.10 Case 3: Solutions with enforced structural differences . . . . . . . . . . . . . . . 796.11 Case 4: Solutions with enforced structural differences . . . . . . . . . . . . . . . 80

A.1 Computational times for generic instances. . . . . . . . . . . . . . . . . . . . . . 109

Page 102

AAppendix

A.1 Press Releases from ML

The following are press releases posted on www.maerskline.com in the spring of 2011concerning major disruptions.

General operational status in Egypt - Update 1500 hours CET - 14February 2011

Operational activities in Port Said terminal are back to full speed after two weeks ofdisruptions. The rest of the Egyptian ports are also operational. Maersk Line hasbeen open for business to and from Egypt during the turmoil uninterrupted, andMaersk Line offices are now open during normal working hours.

Some cargo has been held back in transshipment or in export ports before being loadedto Port Said, while other vessels have been diverted to alternative Mediterraneanports for discharge. The cargo affected is being brought to Egypt or - where possible- direct to its destination with first available feeder or mothervessel.

Global Situation RoomMaersk Line HeadquartersCopenhagen

Maersk Line operations in Japan - update - 21 March 2011

In light of the recent earthquake and tsunami which has devastated life and propertyin Northern Japan, we would like to declare that we are committed to serving theJapanese market as long as it is deemed safe. We have a long tradition and strongrelationship with Japan, and we take our responsibility in terms of securing a lifelinefor its population seriously.

We do realise that bringing goods and food supplies to Japan is more vital than everin the face of the current crisis. That is why all Maersk Line operations are runningas normal with the exception of certain ports like Sendai, Onahama, and Hachinohewhich suffered severe damages.

We remain committed to serving you with the usual standards of reliability that youare accustomed to.

In case of any further questions, please contact your local Maersk Line representative.

Page 103

APPENDIX A. APPENDIX

Earthquake in Japan - Maersk Line operations latest update - 8April 2011

Maersk Line is committed to service Japan - not least to assist the people and thegovernment of Japan to maintain supplies and business essential for the immediaterelief, but also for re-building of the country. As long as it is considered safe for thecrew, Maersk Line will continue calling Japanese ports.

Port operations / Acceptance

All our offices in Japan including Tokyo, Yokohama, Nagoya, Osaka and Kobeare open and fully staffed. Services to and from Sendai, Hachinohe, and Onahamacontinue to be suspended and there is no acceptance of cargo in these ports. Thereare no other commercial restrictions in booking transportation to or from Japanimposed by Maersk Line.

Health and safety

To protect crew and vessels a safety navigation zone has been established and none ofour vessels are getting within 140 nautical miles to the Fukushima plant. At this timeno radiation level measurement at the ports we call has exceeded - or been even closeto safety limits set by among others the International Maritime Dangerous GoodsCode (IMDG) and the International Atomic Energy Agency (IAEA). Therefore,there are no plans to cease calling Japanese ports in operation.

Page 104

A.2. OUTLINE OF IMPLEMENTATION

A.2 Outline of Implementation

This section presents an outline of the implementation of the model used to solvethe test instances. The programming has been done in Java using the Concertenvironment to call CPLEX 12.2.0.0 directly.

Vessel dataCargo data Port data Cost data

Data

Datavalidation

Parameters

Processing

CPLEX

Evalutationand results

Data is collected from several sys-tems at ML. The data includeschedules, container movementsfor each vessel, and cost informa-tion.

The data is checked for inconsis-tencies.

The problem network is build.Infeasible edges is removed. Thenetwork is prepared for CPLEXby defining variables, constraints,and objective.

The IBM ILOG CPLEX 12.2.0.0solver is used to solve the prob-lem to optimality.

The solution from CPLEX istranslated into an understand-able solution. For instance atime-space plot of the optimalsailings is outputtet and a list ofimpacted containers is printed.

In order to make a working decision support software solution the most importantchange to this setup is to fully automate the data collection step.

Page 105

APPENDIX A. APPENDIX

A.3 Impact of Number of Ports in GeneratedInstances

It is hard to see a general trend in the number of ports impact on the complexityof the instances of the VSRP. It can be explained as adding more ports has twocounter acting effects. On one hand it implies that the distances to travel for vesselsincreases resulting in additional speed-up edges, but on the other hand it reducesthe connectivity in the network as the vessels are less likely to call the same port.

The computational times when increasing the number of ports are seen in Figure A.1.The time to load the data is growing slightly, but if this growth is disregarded thecomputational time is more or less stable. With few ports CPLEX uses the majorityof the time to handle all the connections, whereas for instances with more portsgrowing the graph is the most time consuming step.

In the testing it has been chosen to use a setup with 64 ports. The motivation isthat for the larger instances (with more vessels and port calls per vessel) to resemblea realistic recovery scenario the number of ports needs to be quite large. For smallerinstances, this might have a tendency to give unrealistic short solving times forCPLEX and too long computational time to build the graph.

0.0

0.2

0.4

0.6

0.8

Number of Ports

Tim

e [s

]

9 25 36 49 64 81 100

TotalLoading DataBuilding GraphRunning Cplex

Figure A.1: Computational times for generic generated problems with varying number ofports. The times are average based on 5 repeated runs.

Page 106

A.4. COMPUTATIONAL TIMES FOR GENERIC INSTANCES

A.4 Computational Times for Generic Instances

Time (ms)Run η2 |V| |Hv| Data Graph CPLEX Total

1 64 5 5 106 479 258 8432 64 5 5 101 392 181 6743 64 5 5 168 404 220 7924 64 5 5 112 350 193 6555 64 5 5 109 310 193 6126 64 5 6 101 965 302 13687 64 5 6 106 1089 366 15618 64 5 6 134 754 262 11509 64 5 6 105 810 235 115010 64 5 6 105 933 315 135311 64 5 8 101 6147 1586 783412 64 5 8 106 2926 722 375413 64 5 8 111 5575 1323 700914 64 5 8 107 5416 971 649415 64 5 8 113 4982 2350 744516 64 5 12 116 60067 11832 7201517 64 5 12 112 84401 17642 10215518 64 5 12 114 71140 15104 8635819 64 5 12 109 87020 24141 11127020 64 5 12 115 72394 10504 8301321 64 5 16 151 359811 106199 46616122 64 5 16 246 295075 61101 35642223 64 5 16 288 475448 80197 55593324 64 5 16 240 445378 103002 54862025 64 5 16 246 436625 76170 51304126 64 5 20 130 1891130 165559 205681927 64 5 20 140 1537194 127440 166477428 64 5 20 135 1615991 123442 173943329 64 5 20 135 1923332 174311 209764330 64 5 20 135 1714162 146499 186079631 64 6 5 118 460 253 83132 64 6 5 109 538 207 85433 64 6 5 108 478 193 77934 64 6 5 112 500 248 86035 64 6 5 117 531 259 90736 64 8 5 108 733 291 113237 64 8 5 191 731 212 113438 64 8 5 108 1086 309 150339 64 8 5 115 759 286 116040 64 8 5 116 750 242 1108

Continued on next page. . .

Page 107

APPENDIX A. APPENDIX

Continued from last page. . .

Time (ms)Run η2 |V| |Hv| Data Graph CPLEX Total

41 64 12 5 119 1227 363 170942 64 12 5 105 2026 387 251843 64 12 5 119 1656 398 217344 64 12 5 115 1804 401 232045 64 12 5 221 1682 378 228146 64 16 5 261 4024 1536 582147 64 16 5 120 3370 435 392548 64 16 5 124 2337 384 284549 64 16 5 115 2896 433 344450 64 16 5 128 3899 511 453851 64 20 5 122 5314 2079 751552 64 20 5 118 4726 594 543853 64 20 5 122 5812 764 669854 64 20 5 121 5994 661 677655 64 20 5 123 3677 494 429456 64 25 5 117 10382 1733 1223257 64 25 5 125 8668 1688 1048158 64 25 5 110 10722 1060 1189259 64 25 5 119 10157 1106 1138260 64 25 5 128 8669 1036 983361 64 36 5 131 22011 5995 2813762 64 36 5 130 24358 2947 2743563 64 36 5 131 19485 6637 2625364 64 36 5 121 25223 2812 2815665 64 36 5 132 23940 1229 2530166 100 20 10 221 1155335 83753 123930967 100 50 10 233 27156017 2080437 2923668768 9 5 5 20 195 322 53769 9 5 5 48 197 304 54970 9 5 5 17 198 309 52471 9 5 5 27 216 300 54372 9 5 5 21 118 437 57673 16 5 5 13 149 362 52474 16 5 5 18 126 474 61875 16 5 5 17 100 317 43476 16 5 5 15 160 331 50677 16 5 5 49 119 354 52278 25 5 5 42 222 212 47679 25 5 5 30 264 276 57080 25 5 5 26 282 261 56981 25 5 5 33 221 233 487

Continued on next page. . .

Page 108

A.4. COMPUTATIONAL TIMES FOR GENERIC INSTANCES

Continued from last page. . .

Time (ms)Run η2 |V| |Hv| Data Graph CPLEX Total

82 25 5 5 35 169 251 45583 36 5 5 43 181 456 68084 36 5 5 47 226 303 57685 36 5 5 39 228 271 53886 36 5 5 42 240 237 51987 36 5 5 47 256 198 50188 49 5 5 73 258 217 54889 49 5 5 81 411 215 70790 49 5 5 74 414 202 69091 49 5 5 71 443 220 73492 49 5 5 71 320 335 72693 81 5 5 141 418 204 76394 81 5 5 161 485 260 90695 81 5 5 141 524 232 89796 81 5 5 155 510 213 87897 81 5 5 177 548 325 105098 100 5 5 220 482 195 89799 100 5 5 209 583 274 1066100 100 5 5 192 369 213 774101 100 5 5 217 487 259 963102 100 5 5 206 431 219 856103 64 6 6 109 1460 433 2002104 64 6 6 104 1566 339 2009105 64 6 6 116 2069 960 3145106 64 6 6 116 1208 336 1660107 64 6 6 116 1132 446 1694108 64 8 8 134 12796 4138 17068109 64 8 8 126 15827 3055 19008110 64 8 8 121 14893 5011 20025111 64 8 8 106 16867 2291 19264112 64 8 8 117 9723 2758 12598113 64 10 10 141 93846 14047 108034114 64 10 10 122 131939 16088 148149115 64 10 10 118 124710 25029 149857116 64 10 10 119 120955 12088 133162117 64 10 10 125 111391 9203 120719118 64 12 12 135 727544 83101 810780119 64 12 12 132 844823 69931 914886120 64 12 12 127 660452 38113 698692121 64 12 12 122 786060 90260 876442122 64 12 12 129 840938 80505 921572

Table A.1: Computational times for generic instances.

Page 109

APPENDIX A. APPENDIX

A.5 Changing the OTD Penalty

Better solutions are expected to be generated when using a more sophisticatedpenalty for delivering cargo too late. In the presented mathematical model (Section4.4) this can be implemented with small changes.

The variable oc is changed from a binary variable taken that value 1 iff containergroup c ∈ C is OTD-impacted to a continuous variable taken values [0, 1]. Here thevalue 0 corresponds to delivering on time and 1 corresponds to 7 days delay (e.g. amiss-connection). Any fractional value gives the relative delay, and multiplied with 7days the absolute delay of a container group is given.

Combining the changed variable with changing the parameter Ocl correspondinglyallows the model to linearly increasing the punishment of delays. Non-linear devel-opment in punishments can be included by adding extra variables and constraintsapproximating these.

Page 110