# Decision Support for Flexible Liner Shipping

Authors: Johan Oppen
Journal: Advances in Operations Research
 (2016)

---

## Abstract

We present a transportation problem representing a combination of liner and tramp shipping, where using other modes of transportation is also an option. As an example, we consider transportation of palletized frozen fish from Russia and Norway to terminals in Norway, the Netherlands, and the UK. We present a mathematical model for the planning problem associated with each tour and show that problem instances of realistic size can be solved to optimality using standard software.


---

## Body

## 1. Introduction

Maritime transportation is the major mode of transport used for international freight. According to the United Nations Conference on Trade and Development [1], worldwide ocean cargo in 2013 reached almost 9.6 billion tons. Other modes of transportation also carry large amounts of goods, but, especially for low value-per-ton commodities over long distances, seaborne shipping is dominant. It is common to distinguish between three different modes of operation in maritime transportation: industrial, liner, and tramp shipping [2]. In industrial shipping, the cargo owner also owns or controls the ships used, and the objective is then to carry out the needed cargo transportation at minimum costs. Tramp shipping can be viewed as a taxi system for cargo, where ship operators maximize profit by performing transportation tasks. Liner shipping can be compared to a bus system; the ships follow a published itinerary and schedule. An overview of ship routing and scheduling problems can be found in [2].Many real-world planning problems in maritime transportation fit into one of the modes of operation described above, but ships can also be operated in ways that do not fit into any of the standard modes. In this paper, we address a planning problem where liner shipping is the main concept, but where known models for decision making need to be extended and adjusted to fit the real world. The reason for this is that, in periods of high demand, the operator of the shipping line faces time and capacity restrictions which make it necessary to use other modes of transportation or even skip port calls and leave cargo behind, in order to avoid delays.A large body of research exists for planning problems related to liner shipping; the major part of this research is devoted to strategic or tactical issues. Strategic planning in liner shipping deals with designing the optimal fleet and route network; see, for example, [3]. Tactical planning includes assignment of vessels to routes [4] and path selection for cargo routing [5]. The literature on operational planning problems in liner shipping is scarce. This is just as one would expect, as the very nature of liner shipping indicates that the same schedule should be followed on every journey and that this schedule is published and valid for a relatively long time period (months or years) into the future. A classification scheme for routing and scheduling problems in liner shipping is suggested in [6]; this work also clearly reflects the dominance of strategic and tactical planning problems in liner shipping.The problem presented in this paper, on the other hand, is clearly operational, as it deals with the planning of each single journey. A published schedule or timetable tells when a vessel leaves the port of origin, which ports may be visited, and at which times, along the route, and it tells when the vessel will arrive at the port of destination. For most shipping lines, the published schedule is such that all ports are, or can be, visited on every trip. This is not the case in the current problem. The schedule contains too many ports to allow for all of them to be visited on every journey. This is because the demand is seasonal, and in periods with low demand, only a subset of the ports actually has demand for transport.Decision makers in liner shipping are often facing problems like fluctuating demand creating capacity problems and delays due to congested ports, strikes, and inclement weather. For industrial customers, such disturbances may have severe consequences because goods in transit are increasingly used as pipeline inventory in global supply chains where buffers are kept at a minimum to reduce costs. Currently, a common solution to the problem is introducing slack in the sailing schedule, resulting in a longer pipeline for the customers, and demanding more vessels for the same capacity; see [7]. An alternative might beflexible liner shipping, using a tighter schedule, but having flexibility in terms of the opportunity to skip some port calls and leave some cargo behind. Some of the ports skipped might still be served via a visited port using various modes of pre- or posttransportation (i.e., feeder service by barge and truck), given that vessel capacity allows for it.Intermodal transportation “reflects the combination of at least two modes of transport in a single transport chain, without a change of container for the goods” [8, page 400], and this field of research has received increased attention during the last decade. Reference [8] provides an overview of operation research models used and modelling problems that need to be handled; [9] presents an overview of planning decisions and a classification scheme for the associated planning problems. Several researchers emphasize the need for more focus on intermodal transportation.The focus in this paper is the problem of selecting which ports to pass by and what cargo to pre- or posttransport by road transportation in periods with high demand, due to restrictions with respect to time and vessel capacity. Similar decision problems are reported from other liner shipping services using flexible routing supported by land transportation as a strategy, including ad hoc changes in the port call sequence, or skipping of ports [7]. This type of decision problem also shares some properties with tramp shipping problems, as, in both cases, it has to be decided which ports to visit, which cargoes to transport, and in which order the chosen ports should be visited. Many shipping companies operating in the tramp market have a mix of contracted cargoes that have to be shipped, and optional cargoes which the company can ship if they can do so in a profitable way. A decision support system for vessel fleet scheduling, mainly aiming at tramp shipping, is described in [10].The same type of decisions also have to be made in some variants of the Vehicle Routing Problem (VRP). In the standard version of the VRP, one has to find the best possible set of routes for a fleet of vehicles to serve a set of customers with a given demand. The VRP is a well-studied problem; an overview of models and solution methods can be found in [11]. Some common properties of both tramp shipping and the problem discussed here are also found in variants of the VRP. TheOpen Vehicle Routing Problem is a VRP where vehicles do not have to return to the depot; this property is also common in maritime routing, as a vessel is seldom required to return to a depot. The open VRP is solved both by exact methods and heuristics; see, for example, [12, 13]. TheOrienteering Problem is a routing problem where the nodes in a network have prizes or profits associated with them; the objective is to visit a subset of the nodes to collect the highest possible total profit, subject to constraints [14]. This is frequently observed also in ship routing, as one has to choose which nodes to visit and which to skip whenever time and/or capacity constraints make it impossible to serve all demand.We claim that the problem presented here, like many other real-world transportation planning problems, cannot be handled by standard and well-known models and solution methods from the literature. Most of the time, a concrete planning problem faced by an industrial actor is quite complex and constitutes a combination of several problem types. This means that manual planning can be very time consuming; in addition, it is not likely that one will always find very good solutions without support from an automated planning system. Historically, the maritime sector has had a tradition for manual planning based on experience [15], but with an increasing variety of available models, solution methods, and software systems for planning, this is likely to change.We have developed a mathematical model for the flexible liner shipping problem. In many cases, it is not possible to know in advance if an exact method will be able to do the job, or if a heuristic approach is needed. We try to answer this question by doing computational testing to find out approximately how large problem instances can be solved to optimality using standard software.The remainder of the paper is organized as follows. The problem is presented in more detail, and a mathematical model is introduced, in Section2. Computational testing is described in Section 3, followed by conclusions and suggestions for future research in Section 4.


## 2. Problem Definition

In this section, we first describe the real-world problem providing the basis for the problem description. Then we describe the problem more formally, followed by the formulation and explanation of a mathematical model.


### 2.1. Example Application

The flexible liner shipping problem modelled and solved in this paper is based on a real-world application where palletized frozen fish is transported from Russia and Norway to terminals in Norway, the Netherlands, and the UK. Reefer vessel is the main transportation mode used, but road transportation is also used when needed. The schedule for the reefer vessel can, to some extent, be viewed as a liner shipping schedule, as many port calls are fixed in advance, and the route is repeated on a regular basis. On the other hand, many ports are often not visited due to low demand, and the visiting order of ports within a small geographical region may be different from one trip to the next. This means that the planning problem in this case can be viewed as a variant of liner shipping with aspects of intermodal transport and operational routing decisions added. The decision problem presented here occurs in the transportation of fish caught in the East Atlantic and Barents Sea by an international fleet of fishing vessels. Due to the long distance to the markets, the fish is conserved by freezing at sea. A substantial proportion of the total catch is landed and palletized at terminals on the long Norwegian coast bordering these rich waters. Most of the terminals are small, with no infrastructure for container handling. The palletized fish is transported by reefer vessel or by truck to terminals in Western Norway, the Netherlands, or the UK, either to be used as raw material in the Norwegian or EU seafood processing industry or for containerization and further transportation with feeder vessels and intercontinental container carriers to lower labor cost processors in the Far East. Figure1 shows an example of a route starting in Murmansk, visiting some terminals in Norway and the Netherlands, and finally arriving at Grimsby in the UK. It should be noted that a route with only eight stops is not a realistic case; it is shown here only for illustrative purposes. Also note that we use the terms node, port, and terminal interchangeably; in this setting they all mean the same.Figure 1
Vessel route from Murmansk to Grimsby.A major actor within this transportation chain operates a shipping line using three 2500 dwt reefer vessels to serve the route along the Norwegian coast to ports in the EU on a weekly schedule. The fishery is highly seasonal, and so are the requirements for transportation. In the high season, the vessels are struggling with two simultaneous bottlenecks. One bottleneck is cargo capacity, and another is time, as there are more than 50 terminals or other locations generating freight, with each extra stop taking additional time. As the vessel time utilization approaches 100%, the schedule becomes more vulnerable to delays which may cause high extra costs if the vessel misses time windows for entering EU ports or misses time windows for delivering pallets for stuffing into containers at intermediate terminals before further transportation with feeder vessels to intercontinental container ports.One way to improve reefer vessel operation is to save time by decreasing the number of terminals visited, replacing some terminal stops by pre- or posttransportation using trucks. This can also relieve the capacity problem by pretransporting the cargo to a terminal where the vessel will be unloading, hence freeing up capacity.The problem of selecting which terminals to pass by and what cargo to pre- or posttransport changes from trip to trip, because several factors including the migratory movement of the fish resources result in a geographically volatile demand pattern and might be too complex to solve to optimality with the ad hoc manual approaches which are currently used in the reefer shipping company. Decision support based on a mathematical model could hence be a good idea from a practical point of view. If the demand from all ports along the route is known with a reasonable degree of certainty before the vessel leaves the port of origin, Murmansk in this particular case, one could run the model with the given demand data and get a suggested route plan as output. It is important to notice that the output from the solver should be viewed as asuggestion; a human decision maker should review the suggested plan and make the final decision. In the work presented here, we assume the demand is known in advance. If the demand is highly uncertain, one would have to view the problem as a stochastic optimization problem. Other techniques for modelling and solving the problem would then have to be considered, which is outside the scope of this paper.


### 2.2. Mathematical Model

We now present a mathematical model for the intermodal transportation problem presented in the previous sections; the notation used is summarized in the Notation section at the end of the paper. To increase readability, we use calligraphic letters for sets, uppercase letters for data, and lowercase letters for variables.LetN=1,2,…,N be the set of nodes or terminals, where 1∈N is the start node (Murmansk in this particular case) and N∈N is the end node (Grimsby in this case). Some of the terminals need to be visited; these constitute the set R⊂N ofrequired nodes.Five types of links or connections are considered in the network. To restrict the model size and the number of variables, we do not define links (and thus neither variables on these links) that are never used, for example, long links headed to the north.LD⊂(N×N) aredemand links, representing origin-destination pairs where there may be demand for goods to be shipped from the origin to the destination. Two types of demand may be associated with each demand link; DijCOMP representscompulsory demand, that is, demand that has to be met, for example, because goods were left behind on the previous trip, or because one or both of the terminals are considered to be particularly important customers for the shipping line. The second type of demand is theoptional demandDijOPT, representing demand that may be left behind, if necessary, due to time and/or capacity restrictions. The customers pay Pij per ton/pallet of frozen fish shipped from i to j.The link setLS⊂LD, referred to assea links, contains all pairs of nodes where the reefer vessel may travel directly from the origin to the destination. Any link passing by a required node by a substantial distance can be left out of LS, as the vessel has to stop at all nodes in R.The link setLR⊂LD containsroad links, which are the links that the shipping company may use for road transportation whenever time and capacity constraints make it necessary. For terminals within close proximity of each other, these links may be used to transport goods without using the reefer vessel at all. The two last link sets are combinations of sea and road transportation; LPRE⊂(LR×N) is the set ofpretransport links, where trucks are used for the first leg of the trip and the reefer vessel is used for the remaining legs. Similarly, the links in LPOST⊂(N×LR) areposttransport links, where trucks are used for the last leg.Distances on links are given for both sea (Sij) and road links (Rij); the distances are given in different units (nautical miles and kilometers); in addition, the actual distances may differ quite much by sea and road between two given terminals. As an example, two terminals located on opposite sides of a fjord may be close in terms of sea distance, but long in terms of road distance if there is no ferry route or bridge nearby. On the other hand, two terminals on each side of an isthmus may be close neighbours by road, while the distance by sea may be substantial.We follow the approach of the transportation cost model presented in [16] and consider only fuel cost CS per nm for the vessel; this is because the total time and the crew size for the journey is fixed, so these costs will not depend on the routing. The model could also include speed optimization; see, for example, [17]. Fuel cost would then be approximated by a cubic function, and vessel speed would be a variable instead of a parameter, possibly for each separate sailing leg. We have chosen not to extend the model in this direction, as the model allows for some flexibility also when the speed is fixed to the maximal cruising speed. Whenever there is time slack in the plan, the captain may slow down at sea or wait in a port. For road transportation, we assume a fixed cost CF for hiring a truck, a cost CR per km for operating the truck, and a cost CL per ton for loading and unloading. We assume no road transport tasks need more than one truck; this is according to information from the shipping operator.The time needed to visit a terminal is split into a fixed timeTF for a port call; this is assumed to be the same for all terminals. In addition, a handling time TiH per ton of goods loaded/unloaded at the terminal is added; the handling time depends on the equipment available and other characteristics of the terminal.Some of the terminals inR may have a time window in terms of a deadline for when the vessel must be finished unloading. This is because some of the load of frozen fish is stuffed into containers and transferred to a container feeder vessel with a fixed departure time. In addition, there are two time windows at the final terminal because the vessel needs to arrive in Grimsby when the tide is sufficiently high.We need several sets of variables to represent decisions for each trip of the reefer vessel.aij is the total quantity of goods (in tons) shipped along the demand link (i,j), the quantity transported by ship is qij, and the quantity transported by truck is rij. The amounts of goods transported along the pre- and postlinks are equal to wijk and zijk, respectively. The load on board the reefer vessel when it leaves terminal i is equal to li. For each terminal, variables tia, tih, and tid represent arrival time, time spent in the port, and departure time, respectively.Binary indicator variables keep track of the actual route taken by the vessel and which road links are used by trucks. We useρij to indicate if the reefer vessel travels directly from node i to node j; ϕij is used to indicate if a road link is used by a truck. Finally, we use variables σijk to indicate if the pretransport link from i via j to k is used; in the same way δijk is used for the posttransport link from i via j to k.


### 2.3. Model Formulation

In this subsection, we present the model formulation together with explanations and comments:(1)max∑i,j∈LDaijPij-∑i,j∈LSρijSijCS-∑i,j,k∈LPREσijkCF+RijCR+wijkCL-∑i,j,k∈LPOSTδijkCF+RjkCR+zijkCL-∑i,j∈LRϕijCF+RijCR+rijCLsubject  to(2)aij≤DijCOMP+DijOPT,i,j∈LD,(3)aij≥DijCOMP,i,j∈LD,(4)qij=aij-∑i,k,j∈LPREwikj+∑k,i,j∈LPREwkij-∑i,k,j∈LPOSTzikj+∑i,j,k∈LPOSTzijk,i,j∈LD∖LR,(5)qij=aij-∑i,k,j∈LPREwikj+∑k,i,j∈LPREwkij-∑i,k,j∈LPOSTzikj+∑i,j,k∈LPOSTzijk-rij,i,j∈LR,(6)Mϕij≥rij,i,j∈LR,(7)Mσijk≥wijk,i,j,k∈LPRE,(8)Mδijk≥zijk,i,j,k∈LPOST,(9)∑i,j∈LSMρij≥∑i,j∈LDqij,i∈N∖N,(10)∑i,j∈LSMρij≥∑i,j∈LDqij,j∈N∖1,(11)l1=∑1,j∈LDq1j,(12)li≤Q,i∈N,(13)li+∑j,k∈LDqjk-∑k,j∈LDqkj≤M1-ρij+lj,i,j∈LS,(14)∑i,j∈LSρij=1,i∈R∪1,(15)∑j,i∈LSρji=∑i,j∈LSρij,i∈N∖1∪N,(16)tid+SijV≤M1-ρij+tja,i,j∈LS,(17)tih≥TF+∑i,j∈LDqij+∑j,i∈LDqjiTiH,i∈N∖1∪N,(18)tid=tia+tih,i∈N∖1∪N,(19)tid≤TiLD,i∈N∖N,(20)tNa≥TEA,(21)tNa≤TLA,(22)aij,qij,rij≥0,i,j∈LD,(23)ρij∈0,1,i,j∈LS,(24)ϕij∈0,1,i,j∈LR,(25)σijk∈0,1,wijk≥0,i,j,k∈LPRE,(26)δijk∈0,1,zijk≥0,i,j,k∈LPOST,(27)li,tid≥0,i∈N∖N,(28)tia≥0,i∈N∖1,(29)tih≥0,i∈N∖1∪N.The objective function (1) maximizes profit, calculated as the sum of income minus transportation costs. The first term is the sum of revenue collected from customers, the second term is cost for all sea legs sailed. The three remaining terms account for road transportation associated with pretransport, posttransport, and “pure” road transport, respectively.The constraint sets (2) and (3) ensure that the shipped quantity between any pair of terminals is at least the compulsory demand, at most the sum of compulsory and optional demand. The constraints in (4) and (5) compute the amounts transported by sea and by truck. In the first set, all links except road links are considered; road links are handled in (5). For all links, the quantity transported by sea equals the total amount shipped minus the quantity transported by road. The road transport may be pre- or posttransport on part of the distance given by the variables w and z, respectively, or it may be road transport all the way from origin to destination given by r.The constraint sets (6), (7), and (8) ensure that all binary decision variables that indicate transportation along a given road, pre- or posttransport link, are set to 1 whenever the link is used. In the same fashion, the constraints in (9) and (10) ensure that the vessel visits all terminals where goods are picked up or delivered.The load of the vessel when leaving each terminal is set by the constraint sets (11), (12), and (13). Equation (11) ensures that the load when leaving the first terminal is equal to the total quantity shipped from Murmansk, (12) ensures that the vessel is not overloaded, and (13) computes the load when leaving any terminal except the first. The term M(1-ρij) is used to make the constraints valid for any link not actually travelled by the vessel.The constraints in (14) and (15) deal with the routing of the vessel. According to (14), the vessel must leave the start node and all required nodes, and (15) ensures that, for all nodes, except the first and last, the vessel has to arrive and leave the same number of times. Together, these two constraint sets lead to a route where the vessel leaves Murmansk, visits some terminals, and ends up in Grimsby.Constraint set (16) computes the arrival time for each visited terminal except the start node. The arrival time is set to be greater than or equal to the departure time for the previous terminal plus the travel time between the terminals. Again, the term M(1-ρij) is used to cancel out the constraint for any link not used. In (17), the port time at each terminal is computed as the sum of the fixed time TF plus the time needed to load and unload the vessel. Note that we allow for some slack or waiting time both between terminals (slowing down) and at each terminal (waiting). The departure time is then computed in (18). The constraints in (19) ensure that the vessel always leaves a terminal in time, and (20) and (21) deal with the arrival time restrictions due to tide in Grimsby. Finally, variable domains are given in constraints (22) through (29).


## 2.1. Example Application

The flexible liner shipping problem modelled and solved in this paper is based on a real-world application where palletized frozen fish is transported from Russia and Norway to terminals in Norway, the Netherlands, and the UK. Reefer vessel is the main transportation mode used, but road transportation is also used when needed. The schedule for the reefer vessel can, to some extent, be viewed as a liner shipping schedule, as many port calls are fixed in advance, and the route is repeated on a regular basis. On the other hand, many ports are often not visited due to low demand, and the visiting order of ports within a small geographical region may be different from one trip to the next. This means that the planning problem in this case can be viewed as a variant of liner shipping with aspects of intermodal transport and operational routing decisions added. The decision problem presented here occurs in the transportation of fish caught in the East Atlantic and Barents Sea by an international fleet of fishing vessels. Due to the long distance to the markets, the fish is conserved by freezing at sea. A substantial proportion of the total catch is landed and palletized at terminals on the long Norwegian coast bordering these rich waters. Most of the terminals are small, with no infrastructure for container handling. The palletized fish is transported by reefer vessel or by truck to terminals in Western Norway, the Netherlands, or the UK, either to be used as raw material in the Norwegian or EU seafood processing industry or for containerization and further transportation with feeder vessels and intercontinental container carriers to lower labor cost processors in the Far East. Figure1 shows an example of a route starting in Murmansk, visiting some terminals in Norway and the Netherlands, and finally arriving at Grimsby in the UK. It should be noted that a route with only eight stops is not a realistic case; it is shown here only for illustrative purposes. Also note that we use the terms node, port, and terminal interchangeably; in this setting they all mean the same.Figure 1
Vessel route from Murmansk to Grimsby.A major actor within this transportation chain operates a shipping line using three 2500 dwt reefer vessels to serve the route along the Norwegian coast to ports in the EU on a weekly schedule. The fishery is highly seasonal, and so are the requirements for transportation. In the high season, the vessels are struggling with two simultaneous bottlenecks. One bottleneck is cargo capacity, and another is time, as there are more than 50 terminals or other locations generating freight, with each extra stop taking additional time. As the vessel time utilization approaches 100%, the schedule becomes more vulnerable to delays which may cause high extra costs if the vessel misses time windows for entering EU ports or misses time windows for delivering pallets for stuffing into containers at intermediate terminals before further transportation with feeder vessels to intercontinental container ports.One way to improve reefer vessel operation is to save time by decreasing the number of terminals visited, replacing some terminal stops by pre- or posttransportation using trucks. This can also relieve the capacity problem by pretransporting the cargo to a terminal where the vessel will be unloading, hence freeing up capacity.The problem of selecting which terminals to pass by and what cargo to pre- or posttransport changes from trip to trip, because several factors including the migratory movement of the fish resources result in a geographically volatile demand pattern and might be too complex to solve to optimality with the ad hoc manual approaches which are currently used in the reefer shipping company. Decision support based on a mathematical model could hence be a good idea from a practical point of view. If the demand from all ports along the route is known with a reasonable degree of certainty before the vessel leaves the port of origin, Murmansk in this particular case, one could run the model with the given demand data and get a suggested route plan as output. It is important to notice that the output from the solver should be viewed as asuggestion; a human decision maker should review the suggested plan and make the final decision. In the work presented here, we assume the demand is known in advance. If the demand is highly uncertain, one would have to view the problem as a stochastic optimization problem. Other techniques for modelling and solving the problem would then have to be considered, which is outside the scope of this paper.


## 2.2. Mathematical Model

We now present a mathematical model for the intermodal transportation problem presented in the previous sections; the notation used is summarized in the Notation section at the end of the paper. To increase readability, we use calligraphic letters for sets, uppercase letters for data, and lowercase letters for variables.LetN=1,2,…,N be the set of nodes or terminals, where 1∈N is the start node (Murmansk in this particular case) and N∈N is the end node (Grimsby in this case). Some of the terminals need to be visited; these constitute the set R⊂N ofrequired nodes.Five types of links or connections are considered in the network. To restrict the model size and the number of variables, we do not define links (and thus neither variables on these links) that are never used, for example, long links headed to the north.LD⊂(N×N) aredemand links, representing origin-destination pairs where there may be demand for goods to be shipped from the origin to the destination. Two types of demand may be associated with each demand link; DijCOMP representscompulsory demand, that is, demand that has to be met, for example, because goods were left behind on the previous trip, or because one or both of the terminals are considered to be particularly important customers for the shipping line. The second type of demand is theoptional demandDijOPT, representing demand that may be left behind, if necessary, due to time and/or capacity restrictions. The customers pay Pij per ton/pallet of frozen fish shipped from i to j.The link setLS⊂LD, referred to assea links, contains all pairs of nodes where the reefer vessel may travel directly from the origin to the destination. Any link passing by a required node by a substantial distance can be left out of LS, as the vessel has to stop at all nodes in R.The link setLR⊂LD containsroad links, which are the links that the shipping company may use for road transportation whenever time and capacity constraints make it necessary. For terminals within close proximity of each other, these links may be used to transport goods without using the reefer vessel at all. The two last link sets are combinations of sea and road transportation; LPRE⊂(LR×N) is the set ofpretransport links, where trucks are used for the first leg of the trip and the reefer vessel is used for the remaining legs. Similarly, the links in LPOST⊂(N×LR) areposttransport links, where trucks are used for the last leg.Distances on links are given for both sea (Sij) and road links (Rij); the distances are given in different units (nautical miles and kilometers); in addition, the actual distances may differ quite much by sea and road between two given terminals. As an example, two terminals located on opposite sides of a fjord may be close in terms of sea distance, but long in terms of road distance if there is no ferry route or bridge nearby. On the other hand, two terminals on each side of an isthmus may be close neighbours by road, while the distance by sea may be substantial.We follow the approach of the transportation cost model presented in [16] and consider only fuel cost CS per nm for the vessel; this is because the total time and the crew size for the journey is fixed, so these costs will not depend on the routing. The model could also include speed optimization; see, for example, [17]. Fuel cost would then be approximated by a cubic function, and vessel speed would be a variable instead of a parameter, possibly for each separate sailing leg. We have chosen not to extend the model in this direction, as the model allows for some flexibility also when the speed is fixed to the maximal cruising speed. Whenever there is time slack in the plan, the captain may slow down at sea or wait in a port. For road transportation, we assume a fixed cost CF for hiring a truck, a cost CR per km for operating the truck, and a cost CL per ton for loading and unloading. We assume no road transport tasks need more than one truck; this is according to information from the shipping operator.The time needed to visit a terminal is split into a fixed timeTF for a port call; this is assumed to be the same for all terminals. In addition, a handling time TiH per ton of goods loaded/unloaded at the terminal is added; the handling time depends on the equipment available and other characteristics of the terminal.Some of the terminals inR may have a time window in terms of a deadline for when the vessel must be finished unloading. This is because some of the load of frozen fish is stuffed into containers and transferred to a container feeder vessel with a fixed departure time. In addition, there are two time windows at the final terminal because the vessel needs to arrive in Grimsby when the tide is sufficiently high.We need several sets of variables to represent decisions for each trip of the reefer vessel.aij is the total quantity of goods (in tons) shipped along the demand link (i,j), the quantity transported by ship is qij, and the quantity transported by truck is rij. The amounts of goods transported along the pre- and postlinks are equal to wijk and zijk, respectively. The load on board the reefer vessel when it leaves terminal i is equal to li. For each terminal, variables tia, tih, and tid represent arrival time, time spent in the port, and departure time, respectively.Binary indicator variables keep track of the actual route taken by the vessel and which road links are used by trucks. We useρij to indicate if the reefer vessel travels directly from node i to node j; ϕij is used to indicate if a road link is used by a truck. Finally, we use variables σijk to indicate if the pretransport link from i via j to k is used; in the same way δijk is used for the posttransport link from i via j to k.


## 2.3. Model Formulation

In this subsection, we present the model formulation together with explanations and comments:(1)max∑i,j∈LDaijPij-∑i,j∈LSρijSijCS-∑i,j,k∈LPREσijkCF+RijCR+wijkCL-∑i,j,k∈LPOSTδijkCF+RjkCR+zijkCL-∑i,j∈LRϕijCF+RijCR+rijCLsubject  to(2)aij≤DijCOMP+DijOPT,i,j∈LD,(3)aij≥DijCOMP,i,j∈LD,(4)qij=aij-∑i,k,j∈LPREwikj+∑k,i,j∈LPREwkij-∑i,k,j∈LPOSTzikj+∑i,j,k∈LPOSTzijk,i,j∈LD∖LR,(5)qij=aij-∑i,k,j∈LPREwikj+∑k,i,j∈LPREwkij-∑i,k,j∈LPOSTzikj+∑i,j,k∈LPOSTzijk-rij,i,j∈LR,(6)Mϕij≥rij,i,j∈LR,(7)Mσijk≥wijk,i,j,k∈LPRE,(8)Mδijk≥zijk,i,j,k∈LPOST,(9)∑i,j∈LSMρij≥∑i,j∈LDqij,i∈N∖N,(10)∑i,j∈LSMρij≥∑i,j∈LDqij,j∈N∖1,(11)l1=∑1,j∈LDq1j,(12)li≤Q,i∈N,(13)li+∑j,k∈LDqjk-∑k,j∈LDqkj≤M1-ρij+lj,i,j∈LS,(14)∑i,j∈LSρij=1,i∈R∪1,(15)∑j,i∈LSρji=∑i,j∈LSρij,i∈N∖1∪N,(16)tid+SijV≤M1-ρij+tja,i,j∈LS,(17)tih≥TF+∑i,j∈LDqij+∑j,i∈LDqjiTiH,i∈N∖1∪N,(18)tid=tia+tih,i∈N∖1∪N,(19)tid≤TiLD,i∈N∖N,(20)tNa≥TEA,(21)tNa≤TLA,(22)aij,qij,rij≥0,i,j∈LD,(23)ρij∈0,1,i,j∈LS,(24)ϕij∈0,1,i,j∈LR,(25)σijk∈0,1,wijk≥0,i,j,k∈LPRE,(26)δijk∈0,1,zijk≥0,i,j,k∈LPOST,(27)li,tid≥0,i∈N∖N,(28)tia≥0,i∈N∖1,(29)tih≥0,i∈N∖1∪N.The objective function (1) maximizes profit, calculated as the sum of income minus transportation costs. The first term is the sum of revenue collected from customers, the second term is cost for all sea legs sailed. The three remaining terms account for road transportation associated with pretransport, posttransport, and “pure” road transport, respectively.The constraint sets (2) and (3) ensure that the shipped quantity between any pair of terminals is at least the compulsory demand, at most the sum of compulsory and optional demand. The constraints in (4) and (5) compute the amounts transported by sea and by truck. In the first set, all links except road links are considered; road links are handled in (5). For all links, the quantity transported by sea equals the total amount shipped minus the quantity transported by road. The road transport may be pre- or posttransport on part of the distance given by the variables w and z, respectively, or it may be road transport all the way from origin to destination given by r.The constraint sets (6), (7), and (8) ensure that all binary decision variables that indicate transportation along a given road, pre- or posttransport link, are set to 1 whenever the link is used. In the same fashion, the constraints in (9) and (10) ensure that the vessel visits all terminals where goods are picked up or delivered.The load of the vessel when leaving each terminal is set by the constraint sets (11), (12), and (13). Equation (11) ensures that the load when leaving the first terminal is equal to the total quantity shipped from Murmansk, (12) ensures that the vessel is not overloaded, and (13) computes the load when leaving any terminal except the first. The term M(1-ρij) is used to make the constraints valid for any link not actually travelled by the vessel.The constraints in (14) and (15) deal with the routing of the vessel. According to (14), the vessel must leave the start node and all required nodes, and (15) ensures that, for all nodes, except the first and last, the vessel has to arrive and leave the same number of times. Together, these two constraint sets lead to a route where the vessel leaves Murmansk, visits some terminals, and ends up in Grimsby.Constraint set (16) computes the arrival time for each visited terminal except the start node. The arrival time is set to be greater than or equal to the departure time for the previous terminal plus the travel time between the terminals. Again, the term M(1-ρij) is used to cancel out the constraint for any link not used. In (17), the port time at each terminal is computed as the sum of the fixed time TF plus the time needed to load and unload the vessel. Note that we allow for some slack or waiting time both between terminals (slowing down) and at each terminal (waiting). The departure time is then computed in (18). The constraints in (19) ensure that the vessel always leaves a terminal in time, and (20) and (21) deal with the arrival time restrictions due to tide in Grimsby. Finally, variable domains are given in constraints (22) through (29).


## 3. Computational Experiments

The computational experiments described here have two purposes. One is to check that the model is correct with respect to the problem description given in this paper, and the other is to find out approximately how large instances can be solved to optimality with standard optimization software packages. The MIP model presented in Section2.2 was coded in Pyomo and solved with Gurobi 6.0.0 on a 2.7 GHz PC with 8 GB of RAM.


### 3.1. Test Data

The sailing distances were derived from log data downloaded from the navigation system of one of the reefer vessels, giving the vessel position, speed, and course each sailing minute since the reefer vessel was launched two years earlier. Goods tracking data were used to determine the cargo handling parameters at each terminal. A more detailed description of the data derivation process can be found in [18].Road distances were calculated using a web-based travel-planner for road transportation [19]. The cost data were found in a recent study on cost models for transportation and logistics [16]. The cost model includes reefer vessels and termo-trucks and gives time and distance dependent costs for the means of transportation in addition to loading and unloading costs per ton and per consignment as well as port fees. Even though we, unfortunately, do not have access to real-world data, we have been able to construct a set of realistic test instances as described in the next subsection.


### 3.2. Problem Instances

We have used 16 problem instances of four different sizes in our experiments. For each instance size, we assembled one instance where the parameter values regarding demand, vessel speed, and time needed for each port call are according to available real-world data, except that demand is chosen so that a small amount of goods has to be left behind due to vessel capacity restrictions. The three other instances in each set are based on the first one; one has higher demand in order to force the model to leave more cargo behind, in the next we reduce the vessel speed so that time becomes a bottleneck, and in the last instance we have both higher demand and lower speed, meaning that we face both time and capacity problems. The smallest instances have ten terminals with demand, and the larger instances have 16, 20, and 25 terminals, respectively.


### 3.3. Results

Solution times are listed in Table1. The column headers “Basic,” “Time,” “Cap,” and “TimeCap” refer to the instance characteristics described in Section 3.2.Table 1
Solution times.
Terminals
Basic
Time
Cap
TimeCap
10
0.1 sec
0.1 sec
0.1 sec
0.1 sec
16
31 sec
69 sec
76 sec
97 sec
20
24 sec
20 min
11 min
11 min
25
8 hrs
3 d 8 hrs
9.5 hrs
5 d 20 hrsThe instances with ten terminals were all solved in about 0.1 seconds; with 16 terminals it took from 15 to 80 seconds to find an optimal solution. The instance with both reduced vessel speed and increased demand (“TimeCap”) was the hardest among the 16 terminal instances. The reduced speed makes it necessary to use trucks for pre- and posttransport, and some demand was left behind due to vessel capacity restrictions. In Figure2, we can see a typical situation whenever time or capacity constraints hit: some of the terminals in the Ålesund region are served by truck, as the distances between them are quite short. Straight lines at sea indicate the vessel route, and lines following the roads indicate truck routes.Figure 2
Local transportation in the Ålesund region.Even though the solution time increased quite much when six more terminals were added, this size is still handled quite easily. As expected, the solution times continue to increase when the problem size is increased to 20 terminals. It now took 20 seconds to solve the “Basic” instance; the three more constrained instances needed between ten and sixteen minutes to solve. Finally, we managed to solve only two of the 25 terminal instances in less than 10 hours; the two other instances needed between 3 and 6 days of solution time.The 20 terminal instances represent a realistic problem size for our example application, but occasionally up to 25 terminals are included in a single journey. This means that, for this particular shipping line, our exact solution approach might run into problems during the high season, and thus a heuristic solution method should probably be considered if the shipping company decides to implement a decision support system. For many other shipping lines operating in a similar way, 20 stops are more than they normally have on a single tour, and thus optimal solutions for tour planning are reachable in reasonable time.


## 3.1. Test Data

The sailing distances were derived from log data downloaded from the navigation system of one of the reefer vessels, giving the vessel position, speed, and course each sailing minute since the reefer vessel was launched two years earlier. Goods tracking data were used to determine the cargo handling parameters at each terminal. A more detailed description of the data derivation process can be found in [18].Road distances were calculated using a web-based travel-planner for road transportation [19]. The cost data were found in a recent study on cost models for transportation and logistics [16]. The cost model includes reefer vessels and termo-trucks and gives time and distance dependent costs for the means of transportation in addition to loading and unloading costs per ton and per consignment as well as port fees. Even though we, unfortunately, do not have access to real-world data, we have been able to construct a set of realistic test instances as described in the next subsection.


## 3.2. Problem Instances

We have used 16 problem instances of four different sizes in our experiments. For each instance size, we assembled one instance where the parameter values regarding demand, vessel speed, and time needed for each port call are according to available real-world data, except that demand is chosen so that a small amount of goods has to be left behind due to vessel capacity restrictions. The three other instances in each set are based on the first one; one has higher demand in order to force the model to leave more cargo behind, in the next we reduce the vessel speed so that time becomes a bottleneck, and in the last instance we have both higher demand and lower speed, meaning that we face both time and capacity problems. The smallest instances have ten terminals with demand, and the larger instances have 16, 20, and 25 terminals, respectively.


## 3.3. Results

Solution times are listed in Table1. The column headers “Basic,” “Time,” “Cap,” and “TimeCap” refer to the instance characteristics described in Section 3.2.Table 1
Solution times.
Terminals
Basic
Time
Cap
TimeCap
10
0.1 sec
0.1 sec
0.1 sec
0.1 sec
16
31 sec
69 sec
76 sec
97 sec
20
24 sec
20 min
11 min
11 min
25
8 hrs
3 d 8 hrs
9.5 hrs
5 d 20 hrsThe instances with ten terminals were all solved in about 0.1 seconds; with 16 terminals it took from 15 to 80 seconds to find an optimal solution. The instance with both reduced vessel speed and increased demand (“TimeCap”) was the hardest among the 16 terminal instances. The reduced speed makes it necessary to use trucks for pre- and posttransport, and some demand was left behind due to vessel capacity restrictions. In Figure2, we can see a typical situation whenever time or capacity constraints hit: some of the terminals in the Ålesund region are served by truck, as the distances between them are quite short. Straight lines at sea indicate the vessel route, and lines following the roads indicate truck routes.Figure 2
Local transportation in the Ålesund region.Even though the solution time increased quite much when six more terminals were added, this size is still handled quite easily. As expected, the solution times continue to increase when the problem size is increased to 20 terminals. It now took 20 seconds to solve the “Basic” instance; the three more constrained instances needed between ten and sixteen minutes to solve. Finally, we managed to solve only two of the 25 terminal instances in less than 10 hours; the two other instances needed between 3 and 6 days of solution time.The 20 terminal instances represent a realistic problem size for our example application, but occasionally up to 25 terminals are included in a single journey. This means that, for this particular shipping line, our exact solution approach might run into problems during the high season, and thus a heuristic solution method should probably be considered if the shipping company decides to implement a decision support system. For many other shipping lines operating in a similar way, 20 stops are more than they normally have on a single tour, and thus optimal solutions for tour planning are reachable in reasonable time.


## 4. Conclusions and Future Work

This paper has presented a combined sea/road transportation problem where road transportation is used to relieve a liner shipping route due to capacity and time restrictions. A mathematical model for the associated decision problem is presented together with optimal solutions for small and medium sized problem instances.Future research on this problem includes further development of the model to ensure that all important aspects of the real-world problem are included. More work is needed to find out how optimal solutions can be found for larger instances and if heuristic solution methods are needed for real-world instances.



---

*Source: 8710916-2016-01-10.xml*