You are on page 1of 17

European Journal of Operational Research 235 (2014) 350–366

Contents lists available at ScienceDirect

European Journal of Operational Research


journal homepage: www.elsevier.com/locate/ejor

MIRPLib – A library of maritime inventory routing problem instances:


Survey, core model, and benchmark results
Dimitri J. Papageorgiou a,⇑, George L. Nemhauser b, Joel Sokol b, Myun-Seok Cheon a, Ahmet B. Keha a
a
Corporate Strategic Research, ExxonMobil Research and Engineering Company, 1545 Route 22 East, Annandale, NJ 08801, United States
b
H. Milton Stewart School of Industrial and Systems Engineering, Georgia Institute of Technology, 765 Ferst Drive NW, Atlanta, GA 30332, United States

a r t i c l e i n f o a b s t r a c t

Article history: This paper presents a detailed description of a particular class of deterministic single product Maritime
Available online 18 December 2013 Inventory Routing Problems (MIRPs), which we call deep-sea MIRPs with inventory tracking at every
port. This class involves vessel travel times between ports that are significantly longer than the time
Keywords: spent in port and require inventory levels at all ports to be monitored throughout the planning horizon.
Benchmark library After providing a comprehensive literature survey of this class, we introduce a core model for it cast as a
Inventory routing mixed-integer linear program. This formulation is quite general and incorporates assumptions and fam-
Lot-sizing
ilies of constraints that are most prevalent in practice. We also discuss other modeling features com-
Maritime transportation and logistics
Mixed-integer linear programming
monly found in the literature and how they can be incorporated into the core model. We then offer a
Survey unified discussion of some of the most common advanced techniques used for improving the bounds
of these problems. Finally, we present a library, called MIRPLib, of publicly available test problem
instances for MIRPs with inventory tracking at every port. Despite a growing interest in combined routing
and inventory management problems in a maritime setting, no data sets are publicly available, which
represents a significant ‘‘barrier to entry’’ for those interested in related research. Our main goal for MIRP-
Lib is to help maritime inventory routing gain maturity as an important and interesting class of planning
problems. As a means to this end, we (1) make available benchmark instances for this particular class of
MIRPs; (2) provide the mixed-integer linear programming community with a set of optimization problem
instances from the maritime transportation domain in LP and MPS format; and (3) provide a template for
other researchers when specifying characteristics of MIRPs arising in other settings. Best known compu-
tational results are reported for each instance.
Ó 2013 Elsevier B.V. All rights reserved.

1. Introduction Inventory routing problems (IRPs) involve the integration and


coordination of two components of the logistics value chain:
In 2011, the international shipping industry handled over 80% inventory management and vehicle routing. Maritime inventory
of the volume of world trade, of which bulk goods were a primary routing problems are a special class of IRPs that arise in a maritime
component. Indeed, of the nearly 9 billion tons of goods in interna- setting. IRPs have come to prominence because they are an integral
tional seaborne commerce traded in 2011, bulk goods such as coal, component in vendor managed inventory (VMI), a policy in which
crude oil, iron ore, and liquefied natural gas accounted for well a central decision maker coordinates both the inventory and its
over 50% of this quantity and easily represented several hundreds distribution within a supply chain (Campbell, Clarke, Kleywegt, &
of billions of US dollars in value (UNCTAD, 2012). With such colos- Savelsbergh, 1998). The survey paper on combined inventory man-
sal figures expected to grow over future decades, effective mari- agement and vehicle routing problems by Andersson, Hoff, Chris-
time transportation is of utmost importance. In this paper, we tiansen, Hasle, and Løkketangen (2010) provides a summary of
study a particular maritime transportation planning problem research on IRPs in road and maritime settings. Coelho, Cordeau,
known as the Maritime Inventory Routing Problem (MIRP), which and Laporte (in press) also review IRPs with more focus given to
plays an integral role in global bulk shipping. methodological aspects. The book chapter by Christiansen, Fager-
holt, Nygreen, and Ronen (2007) provides an overview of maritime
transportation along with many references.
⇑ Corresponding author. Tel.: +1 908 730 2338. Despite the importance of maritime transportation, the applica-
E-mail addresses: dimitri.j.papageorgiou@exxonmobil.com (D.J. Papageorgiou), tion of operations research (OR) techniques within this area has
gnemhaus@isye.gatech.edu (G.L. Nemhauser), jsokol@isye.gatech.edu (J. Sokol), not yet gained widespread acceptance. There are three primary
myun-seok.cheon@exxonmobil.com (M.-S. Cheon), ahmet.b.keha@exxonmobil.com
indicators of this underdevelopment. First, in industry, there are
(A.B. Keha).

0377-2217/$ - see front matter Ó 2013 Elsevier B.V. All rights reserved.
http://dx.doi.org/10.1016/j.ejor.2013.12.013
D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 351

only a handful of publicly reported OR-based decision support sys- port is classified as a loading port, where product is produced and
tems being used for maritime applications compared with dozens loaded onto vessels, or as a discharging port, where product is con-
used in road-based ones. Second, compared to other modes of sumed, typically after being discharged from vessels or from an
transportation, there are very few special-interest groups in major alternative source (e.g., a pipeline). Product can be stored in inven-
OR societies devoted to the maritime industry. Third, in academia, tory at both types of ports. Each port has: exactly one classification
there are no publicly available benchmark instances on which type, ‘‘loading’’ or ‘‘discharging’’; a variable inventory capacity; a
researchers can test their algorithms (Christiansen, Fagerholt, Ny- fixed number of berths limiting the number of vessels that can
green, & Ronen, 2013). One possible explanation for the latter issue simultaneously load or discharge in a given time period; lower
as it pertains to maritime inventory routing is that there is no sin- and upper bounds on the amount of product that can be loaded
gle well-defined problem definition for a MIRP. Instead, there are or discharged in a period; and deterministic, but possibly non-con-
many variants that address particular aspects of a specific indus- stant, per-period bounds on the rate of production or consumption.
trial application (Andersson, Hoff, et al., 2010). Christiansen et al. If the bounds in a single period coincide, then the rate is fixed. Each
(2013) define a MIRP as ‘‘a planning problem where an actor has discharging port has a deterministic, but possibly non-constant,
the responsibility for both the inventory management at one or per-period unit price for the quantity discharged. Port operations,
both ends of the maritime transportation legs, and for the ships’ such as time to berth and time to set up equipment for loading
routing and scheduling.’’ While this definition is both reasonable or discharging, are not explicitly modeled.
and concise, it leaves ample room for interpretation and variation. To transport the product, the planners control or charter a fleet
In recent years, there have been several appeals to create a set of heterogeneous vessels. Each vessel belongs to a particular vessel
of benchmark instances for maritime transportation problems for class and has a fixed capacity, a cruising speed, and a travel cost.
the research community. Andersson, Hoff, et al. (2010) urge Vessels make voyages between ports by picking up inventory at
authors, in collaboration with industrial partners, to make their one or more ports and delivering inventory to one or more ports.
data available along with a full and rich description of the model Vessels may partially load and discharge so that two or more ports
so that other can reproduce it. Similarly, Christiansen and Fager- of the same type (loading or discharging) may be visited in succes-
holt Christiansen and Fagerholt (2011) write ‘‘. . . there are still sion. In general, a vessel will fully discharge before loading at an-
not any published sets of benchmark problems for maritime trans- other port, but this is not required in the model. A berth is only
portation problems, while there are numerous in land-based trans- occupied by a vessel when loading or discharging. Thus, there
port.’’ A primary goal of this paper is to help fill this void by can be more vessels at a port than there are berths. Using the
introducing a set (or ‘‘library’’) of benchmark instances for a partic- nomenclature of Andersson, Hoff, et al. (2010), this core MIRP mod-
ular class of single product MIRPs. By doing so, we hope to help el can be classified as a deterministic, finite-horizon, split-pickup
maritime inventory routing gain maturity as an important and and split-delivery problem. The solution of this planning problem
interesting class of planning problems and to spur the develop- specifies routes, i.e., the sequence and times of ports visited, for
ment of better mathematical models and more advanced algo- each vessel as well as the quantity of product loaded or discharged
rithms. We call this library MIRPLib in the spirit of other libraries in each time period by each vessel.
in the OR community such as TSPLib (Reinelt, 1991), MIPLib (Koch Having discussed the basic characteristics of a MIRP, we now at-
et al., 2011), ORLib (Beasley, 1990), MineLib (Espinoza, Goycoolea, tempt to distinguish this problem from the class of road-based
Moreno, & Newman, 2013), and LINER-LIB (Brouer, Alvarez, Plum, IRPs, which have received far more attention in the literature. MIR-
Pisinger, & Sigurd, in press), which have been used for the traveling Ps possess several noteworthy idiosyncrasies that differentiate
salesman problem, mixed-integer linear programming (MILP), OR, them from an IRP typically encountered in road-based applications
open-pit mining, and liner shipping network design, respectively. (see, e.g., Andersson, Hoff, et al., 2010). First, the classical IRP as-
In order to create the first publicly available library of MIRP in- sumes that a fleet of vehicles are located at a central depot (a single
stances, we scoped the problem to be interesting and accessible. supplier) and are dispatched to customers to satisfy demand before
We study a core model that involves the distribution of a single returning to the depot in the same period. In a maritime setting,
product and requires that inventory levels at all loading and dis- the notion of a single central depot is conspicuously absent. Like-
charging ports must stay within prespecified bounds during every wise, vessels are typically traveling long distances and around
time period throughout the entire planning horizon. It is assumed the clock making the time dimension of the problem very impor-
that vessel travel times between ports are significantly longer than tant. Second, the planning horizon is typically longer in a maritime
the time spent in port so that port operations need not be explicitly setting due to time-consuming port operations and long travel
modeled. We refer to this class of problems as deep-sea MIRPs with times. On the other hand, with shorter planning horizons, models
inventory tracking at every port. We believe that this class of prob- for road-based applications typically require finer granularity.
lems is a suitable starting point for a library since it most closely Third, in a maritime setting, vessels typically visit relatively few
resembles the traditional concept of VMI in which a central entity (3 or fewer) ports in succession when loading or discharging,
is tasked with maintaining inventory levels at all suppliers and whereas traditional IRPs may involve tens of customers to visit
customers, while simultaneously managing the distribution of with a small quantity (relative to vehicle capacity) being loaded
the inventory. at each visit. A notable exception to this difference is in the fuel
Our emphasis on a core model is in line with what Christiansen distribution problem where it is a common assumption that trucks
and Fagerholt (2011) describe as ‘‘a need to direct the research on should not visit more than 2 or 3 gas stations (see, e.g., Cornillier,
maritime transportation towards more basic research.’’ By focusing Boctor, Laporte, & Renaud, 2008).
on a core model that lies at the intersection of many of the models It is also important to distinguish maritime inventory routing
seen in the literature, we believe that researchers can compare problems from a closely related class of problems known as cargo
their algorithms in a meaningful way without having to under- routing problems. As discussed in Al-Khayyal and Hwang (2007),
stand a detailed variant of this base model. Meanwhile, this does cargo routing problems are mainly constrained by the cargo, which
not discount the importance of rich models. We hope researchers is usually defined by the loading and discharging ports, and by time
can use this library as a template before making their data avail- windows for loading and discharging. Inventory routing problems
able to the community. are constrained by inventory requirements such that the inventory
The single product MIRP that we study as our core model is best level of products at ports should be maintained. In general, cargo
described in terms of its main components: ports and vessels. Each routing is performed under more restrictive constraints since the
352 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

time windows to load and discharge are usually narrow and the library. Finally, we provide best known results for the instances
quantities to be loaded and discharged are known in advance. In currently in the library in Section 5.
contrast, in a MIRP, the number of calls (i.e., visits) at a given port
over the planning horizon, the quantity to be loaded or discharged
at each port call, as well as the port pickup and delivery pairings 2. Literature review
are not specified in the data. Thus, due to the larger solution space,
it can be argued that maritime inventory routing is often more In this section, we present a review of the papers and solution
challenging computationally than traditional cargo routing. methods for MIRPs with inventory tracking at all ports. A survey
Even within the class of MIRPs, such problems are typically of applications, problems, and algorithms in maritime routing
classified along several axes. The first axis concerns the type of and scheduling can be found in Christiansen et al. (2013). Table 1
planning: strategic, tactical, and/or operational. In a maritime set- attempts to categorize the papers discussed below.
ting, strategic planning involves decisions over a long time horizon Before surveying the literature, it is important to define two
of one to twenty years. Tactical planning usually involves several concepts that appear frequently. Mathematical programming for-
months, possibly up to a year, of vessel routing and product distri- mulations for MIRPs are usually classified along at least two
bution decisions. Operational planning requires the finest granu- dimensions: discrete-time vs. continuous-time formulations and
larity and typically focuses on a planning horizon of several arc-flow vs. path-flow formulations. Discrete-time models discret-
weeks or a few months. The second axis is the type of shipping ize the planning horizon and assume that events (e.g., loading
environment: industrial, tramp, or liner (Lawrence, 1972; Ronen, product onto vessels) may only take place at fixed points in time.
1993). Industrial operators own or control both the vessels and In contrast, continuous-time models treat time as a continuum
cargo to be transported, and focus on minimizing their transport and do not restrict events to take place at fixed time points. Contin-
costs. Tramp shipping is analogous to a taxi service, as the vessels uous-time models appear to be more commonly used when pro-
go after cargoes that become available in the market. Liner ship- duction and consumption rates change infrequently over the
ping, for which there are virtually no MIRP applications in the lit- planning horizon. Hybrid models with both continuous- and dis-
erature, resembles bus line operations since the vessels follow crete-time components are also possible (see, e.g., Agra, Christian-
published itineraries and schedules. In practice, MIRP applications sen, & Delgado, 2013). Meanwhile, whereas arc-flow formulations
may involve elements from both industrial and tramp shipping include decision variables to model the movement of vessels be-
(see, e.g., Andersson, 2011). The third axis distinguishes between tween ports, path-flow formulations include decision variables
deep-sea and short-sea shipping. Deep-sea shipping pertains to representing the entire sequence of ports visited by each vessel.
intercontinental trips through deep seas in which travel times In some models, a more detailed definition of a path is used to cap-
are much longer than the time required to load and discharge at ture additional information, e.g., the amount of product loaded or
ports. Short-sea shipping typically refers to short regional trips discharged at each port visit.
having travel times that are likely to be shorter than the time As mentioned in Section 1, Christiansen (1999) studies a single
requirements at a port, and therefore port operations and service product MIRP from the ammonia industry. Although the problem
constraints are necessary to adequately model reality. that she considers does not satisfy the strict definition of our core
To reiterate, in this paper, we focus exclusively on strategic and MIRP model, it is important to mention this work as it is one of the
tactical deep-sea MIRPs in which inventory levels at all loading and most cited papers in maritime routing and scheduling, and its
discharging ports must stay within prespecified bounds during model provides the basis of several other models seen in subse-
every time period throughout the entire planning horizon. MIRPs quent papers. A company owns both production and consumption
with explicit time windows constraints in place of constraints on facilities and must route a fleet of vessels so that inventory bounds
inventory levels are not considered. Of course, there are other are never breached. Continuous-time arc- and path-flow models
interesting types of MIRPs that have been studied. For example, are formulated and a branch-and-price algorithm is developed.
in the liquefied natural gas (LNG) industry, it is sometimes the case Extending the model of Christiansen (1999) and Al-Khayyal and
(see, e.g., Section 4 in Andersson, Christiansen, & Fagerholt (2010)) Hwang (2007) study an arc-flow model in which multiple liquid
that a producer is responsible for ensuring that inventory bounds bulk products are shipped by heterogeneous vessels, each of which
are strictly enforced at a liquefaction plant while fulfilling a set has a dedicated compartment for a subset of the products; each
of long-term customer contracts. This problem is a MIRP. However, compartment is dedicated to the same product throughout the
since inventory level constraints are not stated in every time per- planning horizon. Computational experiments reveal that the time
iod for the customers, we do not include it here. Similarly, Chris- required to solve their model directly using a commercial solver in-
tiansen (1999) discusses a real-world problem faced by a creases exponentially in the number of vessels and time periods
company that trades ammonia with internal and external custom- considered. Li, Karimi, and Srinivasan (2010) study a MILP model
ers (ports). Although inventory bounds are explicitly stated for similar to that of Christiansen (1999) and Al-Khayyal and Hwang
each internal port in every time period, load and discharge (2007), but at an operational level with finer granularity. For exam-
amounts with external ports are based on negotiations and are, ple, they ensure that inventory bounds are satisfied at every mo-
therefore, specified with time windows. Once again, since ment in time, rather than just at the beginning and end of each
inventory constraints are not stated in every time period for all loading and discharging event (or time period in our core model).
customers, this problem is an extension of the core model pre- Like Christiansen (1999), their model involves internal and exter-
sented here. Note that, as long as time window constraints are nal ports. However, unlike Christiansen, external sites act solely
not included as a proxy for inventory level constraints, we allow as external suppliers of raw materials that no other site produces,
for lower and upper inventory bounds at some ports to be ignored inventory levels at external sites are ignored, and no time windows
as this is equivalent to setting these bounds to 1 and þ1, are specified. Whereas Al-Khayyal and Hwang (2007) and Li et al.
respectively. (2010) assume that compartments are dedicated for certain prod-
The outline of this paper is as follows. In Section 2, we review ucts, i.e., it is not permissible to assign a product to a compartment
the literature on MIRPs with inventory tracking at all ports. In Sec- that has been used previously by other products, Siswanto, Essam,
tion 3, we present an arc-flow MILP formulation of a core MIRP and Sarker (2011) relax this assumption and study a MIRP with
along with extensions to handle other features frequently encoun- undedicated compartments. Multiple heuristics are applied to gen-
tered in the literature. In Section 4, we discuss how to use the erate feasible solutions.
D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 353

Table 1
Summary of relevant MIRP papers. Affiliation(s) = primary affiliation(s) of the authors (Aveiro = University of Aviero, Portugal; BIT = Blekinge Institute of Technology, Sweden;
CUPB = Chinese University of Petroleum – Beijing, China; DEU = Dokuz Eylul University, Turkey; GT = Georgia Tech; Molde = Molde University College, Norway; NUS = National
University of Singapore; NTNU = Norwegian University of Science and Technology; PBR = Petrobras; UMSL = University of Missouri-St. Louis, USA; UNSW = University of New
South Wales; XOM = ExxonMobil); App = primary application motivating the paper or the computational instances (‘‘L. bulk’’ = ‘‘liquid bulk’’; LNG = Liquefied natural gas;
VGO = Vacuum gas oil); Plan Level = primary planning level considered; Time = continuous-time (C) and/or discrete-time (D) model; Model(s) = arc- and/or path-flow model(s);
Method(s) = solution method(s) applied (ADP = Approximate Dynamic Programming; BC = Branch-and-Cut; BP = Branch-and-Price; BPC = Branch-Price-and-Cut; BPGS = Branch-
and-Price Guided Search; CG = Column Generation, and in contrast to Branch-and-Price, includes only a priori generated columns, i.e., a pricing problem is never solved;
Lagrangian = Lagrangian relaxation); B stands for ‘‘Branching’’ and denotes whether any special branching procedures are discussed; C stands for ‘‘Cuts’’ or ‘‘Constraints’’ and
denotes whether any valid inequalities were derived to improve the model; jVj = number of vessels; jJ j = number of ports; jJ P j (jJ C j) number of loading (discharging) ports;
jT j = number of time periods for discrete-time models or the length of the planning horizon in time units for continuous-time models; Unit = time unit (‘‘d’’ = days, ‘‘m’’ = months,
‘‘⁄h’’ = ⁄-hour time intervals); jKj = number of products. In the rightmost seven columns (excluding the Unit column), the largest value reported for each parameter is shown,
although an instance with these values may not exist.

Author(s) Affiliation(s) App Plan level Time Model(s) Method(s) B C jVj jJ j jJ P j jJ C j jT j Unit jKj

Agra, Andersson, et al. (2013) Aviero,NTNU L. bulk Tactical D Arc BC U U 5 6 – – 60 12 h 1


Agra, Christiansen, et al. (2013) Aviero,NTNU Fuel Oil Operational C, D Arc BC U U 4 7 – – 12 d 4
Al-Khayyal and Hwang (2007) GT L. bulk Tactical C Arc Default U 4 4 – – 10 d 3
solver
Andersson (2011) NTNU Pulp Tactical D Path BP 3+ 27 4 23 147 8h 30
Andersson, Christiansen, et al. NTNU LNG Tactical D Path Model – – – – – – –
(2010) only
Bilgen and Ozkarahan (2007) DEU Wheat Strategic D Path Default – 6 4 2 3 m 8
solver
Christiansen (1999) NTNU Ammonia Tactical C Arc, Path BP 5 16 – – 36 d 1
Christiansen and Fagerholt (2009) NTNU General Tactical C Arc Model – – – – – – –
only
Christiansen et al. (2011) NTNU Cement Tactical – – Genetic 5 61 12 49 28 d 11
alg
Christiansen et al. (2007) NTNU General Tactical C, D Arc, Path Model – – – – – – –
only
Dauzère-Pérès et al. (2007) Molde Slurry Tactical D Arc Memetic 17 11 1 10 84 d 16
alg
Engineer et al. (2012) GT,XOM VGO Tactical D Path BPC U U 6 10 6 4 60 d 1
Fodstad et al. (2010) SINTEF LNG Tactical D Arc Default 8 7 4 6 181 d 1
solver
Furman et al. (2011) XOM VGO Tactical D Arc Model – – – – – d 1
only
Goel et al. (2012) XOM LNG Strategic D Arc MILP- 69 11 1 10 365 d 1
based LS
Grønhaug and Christiansen (2009) NTNU LNG Tactical D Arc, Path Default 5 6 3 3 60 d 1
solver
Grønhaug et al. (2010) NTNU LNG Tactical D Path BP U U 5 6 3 3 75 d 1
Hewitt, Nemhauser, Savelsbergh, GT,XOM VGO Tactical D Arc BPGS 6 10 6 4 60 d 1
and Song (2013)
Li et al. (2010) NUS L. bulk Operational C Arc Default 5 8 – – 80 d 2
solver
Papageorgiou, Cheon, et al. GT,XOM L. bulk Strategic D Arc ADP 70 13 1 12 360 d 1
(submitted for publication)
Papageorgiou, Keha, et al. GT,XOM L. bulk Tactical D Arc Benders- U U 17 13 4 9 60 d 1
(submitted for publication) like
Persson and Göthe-Lundgren BIT Bitumen Tactical D Arc, Path CG; U U 3 18 15 3 42 6h 4
(2005) Heuristic
Rocha et al. (2013) PBR Crude Tactical D Arc Default U – 11 9 2 30 d 1
solver
Ronen, 2002 UMSL L. bulk Tactical D Arc Default – 7 2 5 30 d 5
solver
Shao et al. (submitted for XOM LNG Strategic D Arc MILP- 69 11 1 10 365 d 1
publication) based LS
Shen et al. (2011) CUPB Crude Strategic D Path Lagrangian – 11 1 10 12 m 1
Siswanto et al. (2011) UNSW L. bulk Operational C Arc Heuristic 3 4 – – 15 d 2
Song and Furman (2013) XOM VGO Tactical D Arc MILP- U U 6 8 4 4 60 d 1
based LS
Uggen et al. (2013) SINTEF LNG Tactical D Arc Fix-and- 8 10 – – 181 d 1
relax

Ronen (2002) addresses a multi-product MIRP faced by produc- tion to their alternative formulation, their main contributions are
ers of liquid bulk products in which each product must be stored several types of valid inequalities, which can further strengthen
and shipped in separate compartments of a vessel. Vessels are the models, and the use of priority branching to accelerate the
chartered to make voyages that visit a single loading port and a solution process. All valid inequalities are generated before the
single discharging port, while possibly carrying multiple products. branch-and-cut algorithm is launched, although some of these cuts
A simple heuristic is suggested. Agra, Andersson, Christiansen, and are added to a cut pool rather than going directly into the con-
Wolsey (2013) study a general MIRP and propose two discrete- straint matrix. Papageorgiou, Keha, Nemhauser, and Sokol (submit-
time formulations to solve it: an arc-flow formulation and a ted for publication) consider instances involving company-owned
fixed-charge network flow formulation. They show that the latter and time-chartered vessels and apply a two-stage decomposition
formulation is much tighter than the arc-flow formulation. In addi- algorithm, similar in spirit to Benders decomposition for MILP, in
354 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

which vessels are first routed between regions and then intra-re- hood search to an arc-flow model that extends the ideas
gional loading/discharging and routing decisions are made. While introduced in Savelsbergh and Song (2008). In particular, after an
the first-stage master problem provides useful bounds, an effective initial solution is generated, a local search procedure, akin to a 2-
construction heuristic to generate good solutions quickly is pre- opt procedure, is applied in which the decision variables associated
sented along with extensions to the local search neighborhoods with all but two vessels are fixed and an exact optimization algo-
presented in Hewitt, Nemhauser, Savelsbergh, and Song (2013). rithm is called to locally optimize the decisions for these two ves-
 
Whereas Papageorgiou, Keha, et al. (submitted for publication) at- sels. This procedure is applied for up to jVj
2
iterations, where jVj is
tempts to find good primal and dual solutions to tactical planning the number of vessels and vessel pairs are chosen randomly in each
problems of up to 60 periods (days), Papageorgiou, Cheon, Nemha- iteration. We refer to this type of algorithmic approach as MILP-
user, and Sokol (submitted for publication) focus exclusively on based local search as a small MILP model is solved during each lo-
finding good primal solutions using approximate dynamic pro- cal search phase. Working off of a simpler problem than the one
gramming to a class of planning problems of up to 360 periods considered in Furman et al. (2011) and Song and Furman (2013),
in a short amount of time (i.e., minutes). Engineer, Furman, Nemhauser, Savelsbergh, and Song (2012) for-
Several case studies also appear in the literature. Dauzère-Pérès mulate a path-flow model and apply a branch-cut-and-price ap-
et al. (2007) describe a case study in VMI involving a Norwegian proach for solving the problem. Three types of valid inequalities
supplier of calcium carbonate slurry, a product used in paper man- are suggested that generalize valid inequalities presented in previ-
ufacturing. The supplier is responsible for routing a fleet of heter- ous work. Hewitt, Nemhauser, Savelsbergh, and Song (2013) also
ogeneous vessels and for maintaining sufficient inventory levels of attempt to generate good solutions quickly for the instances con-
up to sixteen products at ten tank farms in Northern Europe. sidered in Engineer et al. (2012) with branch-and-price guided
Ensuring that inventory remains within bounds at both the supply search (BPGS) (Hewitt, Nemhauser, & Savelsbergh, 2013), a tech-
point and the tank farms is imperative; moreover, these bounds are nique that systematically searches restricted neighborhoods of a
rather tight. While vessel voyages are relatively simple (each vessel MILP using information from an extended formulation in the mas-
travels from the supply point to a single tank farm before fully dis- ter problem. They consider a much richer set of local search neigh-
charging), the decision of which vessel to use and how much of borhoods than previously studied and show that, after parallelizing
each product to load on the chosen vessel is challenging. A memet- their code on four processors, BPGS is quite effective at find-
ic algorithm, a population-based approach that combines local ing high-quality solution in 30 min for the MIRP instances
search heuristics with crossover operators, is used to generate considered.
solutions within the decision support tool. Note that even though Persson and Göthe-Lundgren (2005) also consider a multi-prod-
inventory bounds are not enforced at the supplier, we consider this uct MIRP for an oil refinery company in Sweden. They formulate
problem to be a MIRP with inventory tracking since the lower and both arc- and path-flow models on a time–space network. To solve
upper inventory bounds at the supply port can be considered 1 the problem, they suggest a heuristic that uses column generation
and þ1, respectively. Christiansen et al. (2011) present a MIRP and variable fixing within a partial branch-and-bound search.
encountered by a major cement producer involving bulk ships with Shen, Chu, and Chen (2011) devise a Lagrangian relaxation ap-
multiple compartments that transport multiple non-mixable ce- proach to solve a crude oil transportation problem involving char-
ment products. While a mathematical programming formulation tered vessels and pipelines that are used to transport product from
is not provided, a construction heuristic embedded in a genetic a central supplier to a number of customers. Agra, Christiansen,
algorithmic framework is used as a solution method. Andersson et al. (2013) investigate a short-sea fuel oil distribution problem
(2011) studies a maritime inventory routing subcomponent of in the archipelago of Cape Verde with a short-term planning hori-
the supply chain of Södra Cell AB, one of the largest producers of zon of 12 days. This operational problem involves multiple prod-
pulp in the world. The problem is complicated by the availability ucts and includes time window constraints for loading and
of several modes of transportation for distributing the pulp. Along discharging since ports have restricted opening hours. Time spent
with trucks, trains, and barges, a fleet of long-term time-chartered in port is a crucial aspect of the problem and is modeled in detail.
vessels are used, but additional vessels can also be chartered on the Dedicated and undedicated tanks on vessels are considered. Sev-
spot market. A path-flow model is formulated and solved using a eral MILP formulations are introduced and bound tightening, ex-
branch-and-price methodology. Bilgen and Ozkarahan (2007) pres- tended formulations, and valid inequalities are discussed. Rocha,
ent a MILP model for a multi-product bulk grain blending and ship- Grossmann, and de Aragão (2013) describe a crude oil distribution
ping problem faced by a company that manages a wheat supply problem in which a single type of crude oil is shipped from plat-
chain. The salient characteristic of their model that differentiates forms to terminals. The problem studied is described as a subprob-
it from other models listed here is the ability to blend multiple lem in a petroleum supply chain planning problem at Petrobras, a
products to meet customer demand requirements. Although their vertically integrated petroleum company. The routing component
routing decisions may be slightly complicated by the presence of is relatively simple as the authors assume an unlimited number
split pickups, they include a simplifying assumption that all voy- of tankers are available in each vessel class and vessels always
ages begun in a period (a month) end in the same period. make direct deliveries with full loads from a platform to a terminal.
Another stream of research emerged from a class of tactical On the other hand, inventory tracking at platforms and terminals is
planning problems within vacuum gas oil (VGO) transportation. important to avoid hitting capacity limits on platforms and stock-
This class of single product MIRPs is a tramp shipping application ing out at terminals. The main contribution is a reformulation of
involving voyage chartered vessels or spot charters, i.e., vessels the original model to provide tighter dual bounds by exploiting
that are chartered for a single voyage from a loading region to a the discrete lot-sizing structure that emerges from the inventory
discharging region. Furman, Song, Kocis, McDonald, and Warrick balance constraints when coupled with the ‘‘full load’’ assumption.
(2011) present a rich arc-flow MILP model embedded in a decision Inventory tracking models have also been studied for MIRPs
support tool used to aid decision-makers in the routing and inven- arising in the distribution of LNG, sometimes referred to as LNG-
tory management of VGO at ExxonMobil. This case study describes IRPs. Grønhaug and Christiansen (2009) are the first to study an
many real-world constraints and techniques for modeling vessels LNG-IRP and introduce arc- and path-flow models that also include
with a complicated cost structure. Driven by a need to generate features idiosyncratic to LNG shipping, e.g., boil-off and
good solutions quickly to models similar to those described in Fur- cargo tanks. Because larger instances of the arc- and path-flow
man et al. (2011), Song and Furman (2013) apply a large neighbor- models are difficult to solve with a commercial solver,
D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 355

Grønhaug, Christiansen, Desaulniers, and Desrosiers (2010) intro- 3. A core maritime inventory routing problem
duce a branch-and-price method where the master problem
handles the inventory management and the port capacity con- In this section, we provide an arc-flow MILP formulation of our
straints, while the subproblems generate the ship route columns. core MIRP. This model, or a close variant, has been considered in
Different accelerating strategies are implemented. Andersson, Agra, Andersson, et al. (2013), Furman et al. (2011), Grønhaug
Christiansen, et al. (2010) present a path-flow formulation of a and Christiansen (2009), Papageorgiou, Keha, et al. (submitted for
planning problem faced by a vertically integrated LNG company. publication), and Song and Furman (2013). The model is a dis-
The company is responsible for the inventory management at all crete-time model involving an underlying time–space network.
liquefaction plants and regasification terminals in addition to the Its primary purpose is to identify optimal routing decisions for a
transportation between these plants; no computational experi- fleet of heterogeneous vessels and optimal loading and discharging
ments are performed. Fodstad, Uggen, Rømo, Lium, and Stremersch amounts by each vessel in each time period to ensure that inven-
(2010) study arguably the richest version of an LNG-IRP discussed tory remains within prespecified bounds.
in the literature as it involves contract management and spot mar- It is worth contrasting this model with other prominent mod-
ket trading. To solve their LNG-IRP model, Fodstad et al. (2010) els that appear in the literature. In their introduction to mari-
solve a MILP directly, while Uggen, Fodstad, and Nørstebø (2013) time inventory routing, Christiansen and Fagerholt (2009)
present a fix-and-relax heuristic. Goel, Furman, Song, and El-Bakry describe a continuous-time arc-flow model for a single product
(2012) study an arc-flow model of a similar LNG-IRP with a single- MIRP, which they call a ‘‘basic ship inventory routing problem,’’
pickup and single-delivery assumption. They present a construc- with constant production and consumption rates. Their model
tion heuristic and adapt the local search procedure of Song and also takes place on a network, but it is quite different from
Furman (2013) to generate solutions to instances with 365 time the one presented below. Although arc-flow formulations are
periods. Their main algorithmic contribution is to show how vessel more prevalent, path-flow models are also studied (see column
pairs should be chosen to improve solution quality and reduce to- Model of Table 1 for references). Grønhaug et al. (2010) claim:
tal solution time. Shao, Furman, and Goel (submitted for publica- ‘‘The advantages of path-based models are that . . . intricate
tion) extend this work by introducing more advanced and nonlinear constraints and costs can easily be incorporated
construction heuristics and neighborhood searches. They claim when generating the paths.’’
that the combination of multiple computationally inexpensive
heuristics is an effective strategy for generating good solutions to 3.1. An arc-flow mixed-integer linear programming model
this class of LNG-IRPs.
Table 1 summarizes those papers in the literature whose focus Some of the sets, parameters, and decision variables introduced
is on modeling or solving a MIRP with inventory tracking at all below are not used in the standard formulation, but will be used
ports. The final six columns roughly describe the size of the larg- later, so we include them here for ease of reference. Sets are repre-
est instance in each paper, where the size is measured coarsely in sented using capital letters in a calligraphic font, such as T and V.
terms of the number jVj of vessels, the number jJ j of ports, the Where possible, parameters are denoted with capital letters in ita-
number of loading and discharging ports (jJ P j and jJ C j, respec- lic font or with Greek characters; however, some deviations are
tively), the number jT j of time periods for discrete-time models made to express constraints more easily, e.g., inventory balance
or the length of the planning horizon in time units for continu- constraints. Decision variables are always lower case.
ous-time models, and the number jKj of products. Note that the Indices and sets
largest value reported for each parameter is shown, but there t2T set of time periods with T ¼ jT j
may not be an instance corresponding to the values shown. For v 2 V ðv c 2 VCÞ set of vessels (vessel classes)
example, Grønhaug et al. (2010) consider instances with up to
j 2 J P (r 2 RP ) set of production, a.k.a. loading, ports
75 time periods, but they do not have an instance with the (regions)
parameters shown in the table. Not all papers include a computa- set of consumption, a.k.a. discharging, ports
j 2 J C (r 2 RC )
tional study. (regions)
Table 1 reveals that over two-thirds of the papers on MIRPs
j 2 J (r 2 R) set of all ports (regions): J ¼ J P [ J C and
with inventory tracking at all ports are affiliated with Norwegian
research at the Norwegian University of Science and Technology R ¼ RP [ RC
(NTNU), the Norwegian Foundation for Scientific and Industrial Re- n2N set of regular nodes or port-time pairs:
search (SINTEF), and/or the Norwegian Marine Technology Re- N ¼ fn ¼ ðj; tÞ : j 2 J ; t 2 T g
search Institute (MARINTEK); or with ExxonMobil (XOM) and n 2 N 0;Tþ1 set of all nodes (including a source node n0
Georgia Tech (GT). We also see that the motivating applications and a sink node nTþ1 )
are rather diverse as are the solution techniques to solve the mod- a2A set of all arcs
els. More than half of the papers have some connection to the pet- a 2 Av set of arcs associated with vessel v 2 V
rochemical industry as they were inspired by the distribution of a 2 FS vn forward star associated with node
crude, fuel oil, bitumen, VGO, or LNG. It appears that arc-flow mod- n ¼ ðj; tÞ 2 N 0;Tþ1 and vessel v 2 V
els are far more common than path-flow models, which we attri- a 2 RS vn reverse star associated with node
bute (at least partially) to the fact that the number of routes per n ¼ ðj; tÞ 2 N 0;Tþ1 and vessel v 2 V
vessel that are often generated is extremely large since there are Data
no time windows, as there are in cargo routing problems, to dras- Bj number of berths (berth limit) at port j 2 J
tically reduce the number of routes to consider. Most instances
C va cost for vessel v 2 V to traverse arc
considered in the literature involve fewer than 5 vessels and no
a ¼ ððj1 ; t1 Þ; ðj2 ; t2 ÞÞ 2 Av
more than 10 ports. (Recall that Table 1 shows only the maximum
Dmin (Dmax minimum (maximum) number of units that
number of vessels, ports, and time periods considered over all in- j;t j;t )
can be produced/consumed at port j 2 J in
stances.) Roughly one-third of the applications involve multiple
period t 2 T
products. Other commonalities pertaining to branching strategies
(column B) and valid inequalities (column C) are discussed in Sec- (continued on next page)
tion 3, after we present our core model.
356 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

Dj an indicator parameter taking value +1 if the sink node denotes that the vessel is not used in the solution.
j 2 J P and 1 if j 2 J C A source arc from the source node to a regular node represents
minimum (maximum) amount of product the arrival of a vessel to its initial destination. Since a vessel may
F min
j;t (F max
j;t )
that can be loaded/discharged not be available at all ports from the outset of the planning horizon
at port j from a single vessel in time period (e.g., a vessel may be en route to a port), not all source arcs shown
t2T in Fig. 1 may exist in the network. A sink arc from a regular node to
the sink node conveys that a vessel is no longer being used and has
Qv capacity of vessel v 2 V
exited the system. A waiting arc from a port j in time period t to the
Rj;t the unit sales revenue for product
same port in time period t þ 1 represents that a vessel stays at the
discharged at port j 2 J in time period t 2 T
same port in two consecutive time periods. Finally, a travel arc
Smin (Smax lower bound (capacity) at port j 2 J in time
j;t j;t ) from a regular node n1 ¼ ðj1 ; t 1 Þ to a regular node n2 ¼ ðj2 ; t 2 Þ with
period t 2 T
j1 – j2 represents travel between two distinct ports. The set of
sj;0 initial inventory at port j 2 J
incoming and outgoing arcs associated with vessel v 2 V at node
sv0 initial inventory on vessel v 2 V
n 2 N 0;Tþ1 are denoted by RS vn (for reverse star) and FS vn (for for-
Decision variables ward star), respectively.
dj;t (continuous) amount to produce/consume The network structure affords great flexibility in modeling and
at port j 2 J in period t 2 T embeds a significant amount of data in it. First, note that the travel
v
fj;t (continuous) amount loaded/discharged at duration between two distinct ports on a travel arc is given by the
port j 2 J in period t 2 T from vessel v 2 V length (t 2  t 1 ) of the arc and this duration may be time-depen-
sj;t (continuous) number of units of inventory at dent, e.g., it may take longer to travel from China to Europe during
port j 2 J available at the end of period a particular season. Second, in some applications, all vessels may
t2T not be able to visit all ports because of physical restrictions at
svt (continuous) number of units of inventory the port. Such vessel-port incompatibilities can easily be handled
on vessel v 2 V available at the end of period in this network by simply not including arcs in the respective sets.
t2T For example, if vessel v cannot visit port j, then the sets FS vn and
xva (binary) takes value 1 if vessel v 2 V uses arc RS vn are empty for all n ¼ ðj; tÞ and t 2 T .
a incident to node n ¼ ðj; tÞ 2 N Core model
zvj;t (binary) takes value 1 if vessel v 2 V can
load or discharge product at node X X XX v
max Rj;t fj;tv  C a xva ; ð1aÞ
n ¼ ðj; tÞ 2 N v 2V a2Av
n¼ðj;tÞ2N v 2V
8
X X < þ1 if n ¼ n0 ;
>
s:t: v
xa  v
xa ¼ 1 if n ¼ nTþ1 ; 8n 2 N 0;Tþ1 ; 8v 2 V; ð1bÞ
Network a2FS vn a2RS vn
>
:
0 if n 2 N ;
The core model takes place on an underlying time–space net- X
work first introduced in Song and Furman (2013). The network sj;t ¼ sj;t1 þ Dj dj;t  Dj fj;tv ; 8n ¼ ðj;tÞ 2 N ; ð1cÞ
has a set N 0;Tþ1 of nodes and a set A of directed arcs. The node v 2V
X
set is shared by all vessels, while each vessel has its own arc set sv ¼ sv
t t1 þ Dj fj;tv ; 8t 2 T ; 8v 2 V; ð1dÞ
Av . The set N 0;Tþ1 of nodes consists of ‘‘regular’’ nodes or port-time X
fn¼ðj;tÞ2N g

pairs, which represent a potential visit by one or more vessels to zvj;t 6 Bj ; 8n ¼ ðj;tÞ 2 N ; ð1eÞ
port j 2 J in time period t 2 T , as well as a source node n0 and a v 2V
X
sink node nTþ1 . zvj;t 6 xva ; 8n ¼ ðj;tÞ 2 N ; 8v 2 V; ð1fÞ
Associated with each vessel v is a set Av of arcs, which can be a2RS vn
subdivided further as shown in Fig. 1. An arc from the source to

Fig. 1. Example of time–space network structure for a single vessel.


D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 357

F min v v max v
j;t zj;t 6 fj;t 6 F j;t zj;t ; 8n ¼ ðj;tÞ 2 N ; 8v 2 V; ð1gÞ vertically integrated supply chains may wish to determine produc-
tion and consumption rates, e.g., (Goel et al., 2012; Grønhaug &
Dmin
j;t 6 dj;t 6 Dmax
j;t ; 8n ¼ ðj;tÞ 2 N ; ð1hÞ
Christiansen, 2009), we model dj;t as decision variables.
Smin max
j;t 6 sj;t 6 Sj;t ; 8n ¼ ðj;tÞ 2 N ; ð1iÞ It is also worth noting some not-so-obvious features and con-
0 6 sv 6 Q v ;
t 8v 2 V; 8t 2 T ; ð1jÞ straints that are not stated (implicitly or explicitly) in the Core
Model (1). First, although the notion of a region is not mentioned,
xva 2 f0;1g; 8v 2 V; 8a 2 Av ; ð1kÞ
in our library of instances, we assume that each port belongs to a
zvj;t 2 f0;1g; 8n ¼ ðj;tÞ 2 N ; 8v 2 V: ð1lÞ prespecified region of the same type, i.e., loading or discharging.
Deep-sea shipping problems typically involve multiple regions
The objective function is stated in the form of a profit maximization and it may be possible to exploit this additional problem structure.
where revenue is earned at the time product is delivered to a port. On the other hand, if regional information is not specified in the
However, the objective function appears in many different forms. problem, one can create an artificial region for each port. Second,
Some authors prefer to count revenue as being earned at the time it is assumed that if a vessel travels from port i to port j, the vessel
product is consumed, e.g., (Andersson, Christiansen, et al., 2010; will attempt to load/discharge at port j (and, therefore, incurs a
P P
Grønhaug et al., 2010) replace the terms n¼ð j;tÞ2N v 2V Rj;t fj;tv with port fee). This will always happen in an optimal solution because
P
n¼ð j;tÞ2N Rj;t dj;t . Other authors, e.g., (Agra, Andersson, et al., 2013; the data for the instances of interest all satisfy the triangle inequal-
Al-Khayyal and Hwang, 2007; Engineer et al., 2012; Uggen et al., ity, i.e., it is cheaper to travel from port a to port c than to travel
2013), prefer to omit the revenue component and simply minimize from a to b and then b to c. Note that the port fee is paid only once.
transportation costs and the loading/discharge costs, which include That is, if a vessel attempts to load at port j in period t, remains at
port operations, duties, etc. We assume that these costs are all cap- port j in period t þ 1 (but, perhaps, abandons the berth in this per-
tured in the parameter C va . The costs incorporated in source and sink iod), and then attempts to load again at port j in period t þ 2, only
arcs can also vary, but we use the calculations provided in Table 2. one port fee is incurred.
Still other authors, e.g., (Goel et al., 2012; Papageorgiou, Keha, et al.,
submitted for publication; Ronen, 2002), include penalty terms for 3.2. Common side constraints and additional model features
violating inventory bounds at ports. Inventory costs are not in-
cluded in the objective function because we assume that the ship- 3.2.1. ‘‘Travel at capacity’’ constraints
per owns both the production and consumption sites. Many authors include constraints that require a vessel to travel
Constraints (1b) require flow balance for every vessel, that is, if at capacity from a loading region to a discharging region and
a vessel enters node n 2 N , it must also exit node n 2 N . Con- empty from a discharging region to a loading region (Goel et al.,
straints (1c) are inventory balance constraints at the end of each 2012; Grønhaug and Christiansen, 2009; Grønhaug et al., 2010;
time period at loading and discharging ports. Constraints (1d) Papageorgiou, Keha, et al., submitted for publication; Papageorgiou,
maintain inventory balance at the end of each time period on each Cheon, et al., submitted for publication; Rocha et al., 2013):
vessel. Constraints (1e) limit the number of vessels that can at-
svt P Q v xva ; 8v 2 V; 8a ¼ ððj1 ; tÞ; ðj2 ; t0 ÞÞ 2 Av : j1 2 J P ;
tempt to load/discharge at a port in a given time period. Con-
straints (1f) ensure that a vessel does not attempt to load/ j2 2 J C [ fnTþ1 g; ð2aÞ
discharge at a node unless the vessel is actually at that node. Con-
straints (1g) state that if a vessel attempts to load/discharge at svt 6 Q v ð1  xva Þ; 8v 2 V; 8a ¼ ððj1 ; tÞ; ðj2 ; t 0 ÞÞ 2 Av : j1 2 J C ;
node n ¼ ðj; tÞ, then the actual amount loaded/discharged is within j2 2 J P [ fnTþ1 g: ð2bÞ
predetermined port-specific bounds ½F min max
j;t ; F j;t . Constraints (1h)
ensure that the amount produced or consumed in each period is Although these ‘‘travel full’’ constraints (2a) are usually justified on
within prespecified bounds. Constraints (1i) require ending inven- the basis that vessel capacity is a scarce resource and therefore a
tory in each time period at each port to be within prespecified vessel’s capacity should always be fully utilized when making long
bounds. voyages, there are applications in which it has been shown that
Regarding the timing of operations, inventory levels on vessels such an assumption may not always be optimal (see, e.g., Fodstad
and at ports are only monitored at the end of each period as is typ- et al., 2010). On the other hand, in virtually all MIRPs discussed in
ical in strategic and tactical discrete-time planning models. Since the literature, vessels fully discharge before reloading. This is in
this could lead to ambiguities, we assume that, in a given time contrast to what occurs in liner shipping where vessels load and
period, production occurs before loading takes place and consump- discharge containers regularly without ever fully discharging. Final-
tion occurs after discharging takes place. Consequently, in a single ly, note that constraints (2a) and (2b) require vessels to leave the
time period, it may be possible for a vessel to load or discharge system empty or full.
more inventory than a port’s capacity. For example, suppose a
discharging port j consumes 25 units of product per period and 3.2.2. Differentiating among similar solutions
has a constant capacity of 250 units. Then, 275 units could be It may be useful to include several features into the Core Model
discharged in a single period. This could occur if port j has 0 (1) in order to give slight preference to some solutions over what
inventory at the end of period t, i.e., sj;t ¼ 0, and a vessel carrying would otherwise be considered almost identical solutions.
at least 275 units of inventory arrives in period t þ 1 and dis- When a vessel visits a port, there may be multiple time periods
charges 275 units, 25 of which satisfy demand in period t þ 1 while in which it can load or discharge product. In reality, we prefer a
the remaining 250 units are stored in inventory. This example also vessel to load or discharge as few times as possible to minimize
shows the coarseness of a discrete-time formulation since inven- the duration and cost of port operations associated with that ves-
tory bounds are only required to be satisfied at the end of each sel. In addition, we prefer a vessel to load or discharge as soon as
period. it arrives at a port, assuming the port has a berth available and en-
In a number of models used for tactical or operational planning, ough inventory or capacity to do so. To accommodate these sec-
the decision variables dj;t , which denotes the production and con- ondary goals without affecting the primary goals of managing
sumption rates at each port over the planning horizon, are deter- inventory and routing vessels, we may choose to associate a negli-
ministic inputs to the model, rather than decision variables. In gible cost tz with each binary decision variable zvj;t , where z is a
this case, we have that Dmin max
j;t ¼ Dj;t . Since some models used for small nonnegative parameter representing the cost to load or
358 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

discharge and t is the time period. If a nonzero z parameter is use constraints (4) in place of constraints (1c). The objective func-
specified, the objective function in the Core Model (1) should in- tion in the Core Model (1) should also be amended to penalize
clude the additional term the use of the a decision variables.
XXX If aj;t variables are included in the model, then we may include
 ðtz Þzvj;t : ð3Þ other side constraints as well:
v 2V j2J t2T
aj;t 6 amax
j;t ; 8j 2 J ; 8t 2 T ; ð5aÞ
Note that by using the coefficient ðtz Þ instead of z , solutions in X
which a vessel attempts to load or discharge sooner rather than la- aj;t 6 amax
j ; 8j 2 J : ð5bÞ
t2T
ter are preferred.
Because the Core Model (1) is a finite-horizon model, a second Constraints (5a) bound the amount of violation that may occur in a
useful modeling feature is to give a small value to vessels for ‘‘exit- single period by a constant amax
j;t . Constraints (5b) limit the amount
ing the system’’ as soon as they are no longer needed. In terms of of cumulative violation that may occur at each port over the entire
the Core Model (1), this means that we would like vessels to take planning horizon by a constant amax .
j
a sink arc once it is no longer necessary or profitable for them to
engage in other activities. Without such a feature, a solution in 3.2.4. Draft limits
which vessel v discharges all of its product at port j in time period The draft of a vessel is the distance between the waterline and
t and remains empty at that same port until the end of the planning the bottom of the vessel and is a function of the load onboard. Draft
horizon is valued as highly as a nearly identical solution in which limit constraints are sometimes necessary to ensure that larger
vessel v fully discharges at port j in period t and then exits the sys- vessels can only enter, reside in, or exit certain harbors if they
tem immediately by taking the sink arc from node ðj; tÞ to the sink are not fully loaded (Christiansen et al., 2011; Furman et al.,
node. Indeed, we prefer the latter solution since vessel v will be 2011; Song & Furman, 2013). Such constraints may also affect
available sooner for service at the start of the next planning hori- the sequence of port visits made by a vessel. Assuming we can
zon. To accomplish this, we introduce a reward q per unit time compute the draft associated with a certain inventory level on a
for a vessel that finishes early. This reward is built into the cost vessel, we can write draft limit constraints as
of a sink arc, which is discussed in Section 4.3, so that the Core
Model (1) remains the same. svt1 6 DRAFTvj ;in þ ðQ v  DRAFTvj ;in Þð1  zvj;t Þ; 8v 2 V; 8j 2 J ;
8t 2 T ; ð6aÞ
3.2.3. Soft inventory bounds and a simplified spot market
representation
svt 6 DRAFTvj ;out þ ðQ v  DRAFTvj ;out Þð1  zvj;t Þ; 8v 2 V; 8j 2 J ;
In certain strategic and tactical planning models, the inventory
bound constraints (1i) at ports may be considered soft, i.e., they 8t 2 T ; ð6bÞ
should ideally be satisfied, but are permitted to be violated with v ;in v ;out
where DRAFTj and DRAFTj denote the maximum permissible
a penalty. There are several reasons why this ‘‘soft’’ interpretation
draft for vessel v when entering and exiting port j. These con-
may be beneficial or necessary from a modeling standpoint. First,
straints are enforced both before (port inlet) and after (port outlet)
the inventory bounds in constraints (1i) may be overly conserva-
loading has been completed and before discharge has begun. Draft
tive in order to make the solution more robust by preventing ports
limits often apply to port-vessel combinations.
from running out of inventory or exceeding capacity due to uncer-
tainty in the data (Dauzère-Pérès et al., 2007; Furman et al., 2011).
In this case, it may be acceptable to penalize a small bound viola- 3.2.5. Cruising speed as a decision variable
tion if it is impossible or unfavorable for a vessel to reach the port Depending on the age of a vessel, fuel costs typically constitute
before the violation occurs. Second, soft constraints may help mit- 15–20% of a vessel’s total annual cost (Stopford, 2008) and as much
igate unwanted effects of the time discretization used in the plan- as 60% of a vessel’s daily cost (Ronen, 1993). To date, virtually all
ning model. For example, suppose that it takes a vessel 9.5 days to maritime inventory routing research has assumed that vessels tra-
travel from port i to port j, but that a daily time discretization is vel at a single speed, presumably because most models have been
used requiring the travel time to be modeled as 10 days. Then, at the strategic or tactical level, not an operational one. Today, with
while in reality it might be possible for the vessel to arrive a a growing interest to reduce greenhouse gases and to better utilize
half-day early at port j just in time to prevent a stockout, a daily an existing fleet of vessels, making cruising speed a decision vari-
time discretization may necessitate that a partial stockout take able in planning models has received attention.
place. Third, in some planning models, it may be interesting to When a vessel is designed, naval architects optimize the hull
experiment with different fleet compositions in which case the and power plant to a prescribed design speed (Stopford, 2008). This
proper mix of vessels may not be available to meet all inventory is the speed typically assumed in planning models. In reality, ves-
requirements in every period Goel et al. (2012). sels are capable of traveling at various speeds in order to meet
To account for these possibilities, it is convenient to incorporate deadlines and to satisfy customer service levels. With the choice
a simplified spot market representation into the model. Mathemat- in speed comes a tradeoff. Faster speeds result in shorter travel
ically, let aj;t be a nonnegative decision variable representing the times allowing vessels to make more trips over the planning hori-
amount of product that port j purchases from (when j 2 J C ) or sells zon, but at the expense of increased fuel consumption and a larger
to (when j 2 J P ) the spot market in time period t. Then, we can re- environmental impact. On the other hand, slower speeds are more
write the port inventory balance constraints (1c) as environmentally friendly as they result in reduced fuel usage and
! costs, but lead to longer travel times and usually increase operating
X costs as the crew is sailing for a longer period time. Relevant papers
sj;t ¼ sj;t1 þ Dj dj;t  v
fj;t  aj;t ; 8n ¼ ðj; tÞ 2 N : ð4Þ
addressing emissions issues include (Bektasß & Laporte, 2011 & Fag-
v 2V
erholt et al., Fagerholt, Laporte, & Norstad, 2010).
Note that with the addition of a simplified spot market, there is no A common, but coarse approximation is to assume that fuel
backlogging of inventory. Rather, inventory bounds at ports are sat- consumption is a quadratic or cubic function of a vessel’s cruising
isfied at the end of each time period t. For example, Goel et al. speed. With this assumption, Ronen (1993) points out that reduc-
(2012) and Papageorgiou, Keha, et al. (submitted for publication) ing a vessel’s cruising speed by 20% can reduce the daily fuel
D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 359

consumption by 50%. For a more detailed analysis of the tradeoff 3.3. Common modeling enhancements
between speed, cost, and emissions, Lindstad, Asbjørnslett, and Jul-
lumstrø (2013) present an assessment that accounts for vessel en- Having introduced a basic model, our next goal is to summarize
gine power and sea conditions (e.g., wave height and wind) among two modeling enhancements that can be used to tighten it. These
other things. techniques have been used in previous papers, but, with the excep-
One way of handling this added flexibility in the Core Model (1) tion of Agra, Andersson, et al. (2013) and Agra, Christiansen, et al.
is to include additional inter-port travel arcs into the network. Spe- (2013), have not been described in a uniform manner or have not
cifically, in addition to a design speed, vessels have lower and been identified as a common strategy. Our aim here is to unify
upper limits on the cruising speed that can be achieved. Thus, gi- our understanding of these enhancements.
ven a minimum and maximum speed for each vessel, we can com-
pute upper and lower bounds (smax ij and smin
ij , respectively) on the 3.3.1. Advanced branching techniques
time required to travel between two distinct ports i and j. These Column B of Table 1 lists the authors that have used some form
assumptions were recently used in a liner shipping network design of advanced branching strategy to improve algorithmic efficiency.
problem (Brouer et al., in press). Since time is discretized in the It appears that this technique was first applied to a MIRP in Chris-
Core Model (1), for each time period in the time interval tiansen and Nygreen (1998). In its current form, the Core Model (1)
½smin
ij ; sij
max
, we can compute the optimal average cruising speed contains two types of binary decision variables: x variables repre-
that minimizes fuel cost while allowing the vessel to arrive in senting the flow of a particular vessel along a particular arc and z
the desired period; the fuel cost associated with this speed is used variables representing an attempt to load or discharge at a
when computing the cost of this arc. With these additional arcs, particular port and time by a particular vessel. After solving the
the Core Model (1) can be solved ‘‘as-is’’ and an optimal solution LP relaxation at a node of the branch-and-cut tree, a MILP solver
will specify the arcs taken by each vessel, and, therefore, the aver- will branch on a binary decision variable that takes a fractional va-
age speed of the vessel between each pair of ports. lue in the LP relaxation. Unfortunately, branching on the existing
binary decision variables in the model can have little impact
due to the symmetry of many solutions. For example, if vessel v
3.2.6. Multiple products
is not allowed to travel along an arc beginning in time period t
It is easy to extend the Core Model (1) to handle multiple prod-
due to a branching decision made by the solver, it may be able
ucts. For simplicity, here we discuss a particular setting in which
to delay starting its travel until the subsequent time period
we assume that three parameters are enforced at the aggregate le-
t þ 1. Thus, the solver may just shift a fractional value to differ-
vel, rather than on each product: (i) bounds on amounts loaded or
ent variables in time without ever improving the bound. The
discharged at a port, (ii) inventory bounds at ports, and (iii) inven-
motivation behind advanced branching strategies is to overcome
tory bounds on vessels. In other words, constraints (1g), (1i), and
this ineffectual branching by branching on more significant
(1j) still hold without being modified to apply to each specific
decisions.
product. A general classification of multi-compartment delivery
Priority branching relies on the fact that certain decisions are
problems is proposed in Coelho and Laporte (submitted for publi-
more influential than others. The problem is that some higher pri-
cation). See (Agra, Christiansen, et al., 2013; Al-Khayyal & Hwang,
ority decisions may not be explicitly modeled in the existing for-
2007; Christiansen et al., 2011) for maritime inventory routing
mulation. Some examples of high-level decisions not modeled as
models when dedicated compartments are needed. Other relevant
decision variables in the Core Model (1) are: (i) the number of ves-
bulk shipping papers dealing with multiple compartments are Fag-
sels that visit a particular port in a specific time interval (Grønhaug
erholt and Christiansen (2000) and Hvattum, Fagerholt, and
et al., 2010; Papageorgiou, Keha, et al., submitted for publication);
Armentano (2009).
(ii) the number of times a particular vessel visits a particular port
Let K denote the set of products. Let Dmin max
j;t;k and Dj;t;k denote lower (Agra, Andersson, et al., 2013; Agra, Christiansen, et al., 2013);
and upper bounds on the amount of product k produced or con-
and (iii) the number of voyages from a particular loading port/re-
sumed at port j in period t. Let Rj;t;k be the unit sales revenue for
gion to a particular discharging port/region in a specific time inter-
product k discharged at port j 2 J C in period t. We retain all of
val. It can be argued that determining the number of vessels that
the decision variables currently in the model, but include addi-
visit a particular port over the entire planning horizon is more
tional ones to keep track of product-specific decisions. Namely, de-
v ; s , and sv to correspond to the important than knowing the precise times of the visits.
fine decision variables dj;t;k ; fj;t;k j;t;k t;k Advanced branching can usually be accomplished in at least
original variables dj;t ; fj;t ; sj;t , and svt , but now they are specific to
v
two ways. We use item (i) stated above when illustrating these
product k. Constraints (1c), (1d), and (1h) can be modified to
procedures. A first approach, which is straightforward to imple-
X ment, is to include auxiliary decision variables in the Core Model
sj;t;k ¼ sj;t1;k þ Dj dj;t;k  v ;
Dj fj;t;k 8n ¼ ðj; tÞ 2 N ; 8k 2 K; ð7aÞ (1) that represent the number of visits summed over all vessels
v 2V
X to port j over the entire planning horizon. All of the leading com-
svt;k ¼ svt1;k þ D fv ;
j j;t;k 8t 2 T ; 8v 2 V; 8k 2 K; ð7bÞ mercial MILP solvers allow the user to assign a higher branching
fn¼ðj;tÞ2N g
priority to these variables first so that if one of these variables
Dmin max
j;t;k 6 dj;t;k 6 Dj;t;k ; 8ðj; tÞ 2 N ; 8k 2 K: ð7cÞ takes a fractional value in the LP relaxation at a node in the
branch-and-cut tree, the solver will choose to branch on one of
Several constraints to link the variables are needed: these variables before all other decision variables taking a
X X X fractional value. Alternatively, instead of including additional inte-
fj;tv ¼ v ;
fj;t;k sj;t ¼ sj;t;k ; svt ¼ svt;k ; 8ðj; tÞ 2 N ; ger variables into the model, a second approach is to implement a
k2K k2K k2K
callback that effectively accomplishes the same task, but without
8v 2 V; 8k 2 K: ð8Þ increasing the number of decision variables in the model. In this
P v P approach, one writes a callback to check if the number of visits
Finally, the term n¼ðj;tÞ2N v 2V Rj;t fj;t in the objective function of
the Core Model (1) becomes to a particular port is fractional. If so, a port is identified and two
X XX local cuts are written with respect to the original decision vari-
v :
Rj;t;k fj;t;k ables. This approach requires more effort from the user, but may
n¼ðj;tÞ2N v 2V k2K yield additional efficiency.
360 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

3.3.2. Lot-sizing based constraints  Option 1: After ignoring the upper bound constraint st 6 smax in
The LP relaxation of the Core Model (1) can be weak and of- set (10) and fixing t 1 and t 2 , we obtain the continuous 0–1 knap-
n P o
ten results in many binary variables taking fractional values so sack set ðs; yÞ 2 R1þ  f0; 1gn : nj¼1 aj yj 6 b þ s , for which sev-
as to incur only a fraction of the fixed costs. Using the language
eral families of strong valid inequalities are known (see, e.g.,
of maritime inventory routing, this means that only a fraction of
Pochet & Wolsey, 2006). Specifically, we obtain the set
a vessel may travel along an arc and/or only a fractional attempt n P2 o
to load/discharge is made at a port. One way to obtain better Þ 2 R1þ  f0; 1gt2 t1 þ1 : tu¼t
ðs; y u 6 b þ s
Cuy where
1

bounds can be achieved if the problem is reformulated as a sin- Pt2


u ¼ ð1  yu Þ for u 2 ½t 1 ; t 2 ; b ¼ u¼t C u  d½t1 ;t2  , and s ¼ st1 1 .
y 1
gle commodity fixed charge network flow problem that includes
To our knowledge, no attempt at applying valid inequalities
f variables on the arcs instead of the nodes (Agra, Christiansen,
for the continuous 0–1 knapsack set has been reported. On
et al., 2013). Another way of overcoming this deficiency is to in-
the other hand, if a MILP solver is able to detect this structure,
clude additional constraints involving the binary variables to en-
then it has several cuts (e.g., mixed-integer rounding cuts, flow
sure, for example, that ports are visited with a minimum and
cover cuts, and potentially flow path cuts) that it may use to
maximum frequency. This can be at least partially accomplished
tighten the formulation during the branch-and-cut process.
using lot-sizing relaxations based on the standard lot-sizing
 Option 2: Here we describe the most typical valid inequalities
model which we briefly review here for sake of completeness.
that appear in the MIRP literature. Until recently (Agra, Anders-
Table 1 column C lists the authors that have used some form
son, et al., 2013; Agra et al., 2013; Papageorgiou, Keha, et al.,
of valid inequalities that can be derived from the standard lot-
submitted for publication; Rocha et al., 2013), these inequalities
sizing model.
were not derived from lot-sizing arguments, but instead based
Consider the standard capacitated lot-sizing set (see, e.g.,
on logic deductions (Engineer et al., 2012; Grønhaug et al.,
Pochet & Wolsey (2006), whose notation we use here) in which
2010; Persson & Göthe-Lundgren, 2005). Replacing st with its
one must decide in what periods to produce an item and how
upper bound, we obtain the pure binary set
much to produce, given demand data dt , initial inventory s0 ,
constant storage capacity smax , and capacities C t on production in X
t2

period t of a finite planning horizon T : C u yu P d½t1 ;t2   smax


t1 1 ; 81 6 t1 6 t2 6 T;
u¼t 1

yt 2 f0; 1g; 8t 2 T ;
st1 þ xt ¼ dt þ st ; 8t 2 T ; ð9aÞ
0 6 xt 6 C t y t ; 8t 2 T ; ð9bÞ where smax
0 ¼ s0 and smax
t ¼ smax for all t 2 T . Replacing the coeffi-
yt 2 f0; 1g; 8t 2 T ; ð9cÞ cients C u with an upper bound C max
½t1 ;t 2  in each interval ½t 1 ; t 2  leads
to the set of valid inequalities
0 6 st 6 smax ; 8t 2 T : ð9dÞ & ’
X
t2
d½t1 ;t2   smax t 1 1
yu P ; 81 6 t1 6 t2 6 T: ð11Þ
The decision variables are: st , the stock (inventory) in period t; xt , u¼t 1 C max
½t 1 ;t 2 
the amount produced in period t; and yt , a binary decision variable
taking value 1 if production takes place in period t and 0 otherwise. In the context of the Core Model (1), these valid inequalities have a
For any time interval ½t 1 ; t 2 , we can sum over constraints (9a) and nice interpretation: They require a minimum number of attempts to
apply inequalities (9b) and (9d) to obtain the lot-sizing relaxation load or discharge at a port during a set of time intervals.
More generally, one can consider a variety of coefficients C ½t1 ;t2  > 0
X
t2
and perform the Chvátal-Gomory procedure to obtain valid
st1 1 þ C u yu P d½t1 ;t2  ; 81 6 t 1 6 t2 6 T; ð10aÞ
u¼t 1
inqualities
t2    
yt 2 f0; 1g; 8t 2 T ; ð10bÞ X Cu d½t1 ;t2   smax t 1 1
yu P ; 81 6 t 1 6 t2 6 T: ð12Þ
0 6 st 6 smax ; 8t 2 T ; ð10cÞ u¼t 1
C ½t1 ;t2  C ½t1 ;t2 
P2
where d½t1 ;t2  ¼ tu¼t 1
du is the demand in the time interval. For example, replacing the coefficients C u with F max u , Agra, Anders-
Before describing valid inequalities that can be applied directly son, et al. (2013) use the different vessel capacities Q v in place of
to set (10), we give an example of how the capacitated lot-sizing the coefficients C ½t1 ;t2  to generate valid inequalities for their prob-
set (9) naturally arises in the Core Model (1). Consider a discharg- lem prior to invoking the solver.
ing port j 2 JC and suppose that  Option 3: Whereas constraints (11) and (12) are stated solely in
dj;t ¼ Dj;t ¼ Dj;t ; F j;t ¼ Smin
min max min max
j;t ¼ 0; F j;t ¼ F max
t (a constant), and terms of binary variables and were derived from the set (10) by
P
Smax
j;t ¼ Smax (a constant) for all t 2 T . Let fj;t ¼ v 2V fj;tv be the total relaxing the continuous decision variables st to their upper
P
amount of product discharged in time period t; zj;t ¼ v 2V zvj;t be bounds smaxt , it is also possible to derive a potentially stronger
the number of vessels attempting to discharge in time period t, set of valid inequalities by applying another relaxation to the
and assume that port j has exactly one berth so that zj;t is binary. set (10). This approach does not relax each st variable to its
Coupling these assumptions with constraints (1c) and (1g), and upper bound smax t , but instead keeps the continuous variables
omitting the subscript j, we obtain the set in the model and replaces the coefficients C u by a constant
upper bound C.
st1 þ ft ¼ dt þ st ; 8t 2 T ;
Before describing this relaxation, we need to define the mixing
0 6 ft 6 F max
t zt ; 8t 2 T ; set, the facets of which are useful for capacitated lot-sizing
zt 2 f0; 1g; 8t 2 T ; models. Consider the mixing set defined by K inequalities:
0 6 st 6 Smax ; 8t 2 T ;  
which is identical to the capacitated lot-sizing set (9). An analogous
X MIX
K ¼ ðs; yÞ 2 Rþ  ZK : s þ yk P bk ; 8k ¼ 1; . . . ; K : ð13Þ
set can be derived for each loading port j 2 J P after making a It is well known that the K simple mixed-integer rounding (SMIR)
change of variable commonly used in lot-sizing problems. inequalities
From the mixed-binary set (10), it is possible to generate sev-
eral types of valid inequalities. s þ fbk yk P fbk dbk e; 8k ¼ 1; . . . ; K; ð14Þ
D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 361

where fbk ¼ bk  bbk c is the fractional part of bk , are valid and facet- Each instance is given in three formats: a ‘‘data only’’ format, LP
defining for X MIX
K . However, they do not suffice to give the convex format, and MPS format. LP and MPS file formats are standard in
hull of X MIX
K when K > 1. In this case, we need the mixing inequali- the MILP computational community as they provide a common
ties (see Proposition 8.4 and Theorem 8.5 of Pochet & Wolsey format for reading LP and MILP models. Although LP and MPS for-
(2006)). mats are useful for comparing solver performance, they are some-
Returning to our derivation, consider a variant of set (10), known as what limiting as they impose a specific MILP model on the user, a
the constant capacitated lot-sizing relaxation, in which each C t is re- model which may not be ideal for generating good solutions or
placed by a constant C so that constraints (10a) become bounds. Since other models and techniques may be superior, we
also provide instance data in a ‘‘data only’’ format. As shown in
X
t2
Fig. 2, each data set consists of four data objects: metadata, port
st1 1 þ Cyu P d½t1 ;t2  ; 81 6 t1 6 t 2 6 T: data, vessel class data, and vessel data. When an instance is stated
u¼t 1
in ‘‘data only’’ format, five files are provided corresponding to each
½t ;t  ¼ d½t1 ;t2  , and y Pt 2
Letting st ¼ sCt ; d 1 2 C ½t1 ;t2  ¼ u¼t1 yu , the constant
of the aforementioned data objects, but with port data further bro-
capacity version of set (10) can be rewritten as ken down into loading port data and discharging port data. A dis-
cussion of each data object is provided below.
½t ;t  ;
st1 1 þ y½t1 ;t2  P d 81 6 t 1 6 t 2 6 T; ð15aÞ Several notes are needed. The basic unit in which inventory and
1 2
capacities are measured is kilotons. The basic unit of the objective
0 6 y½t1 ;t2   y½t1 ;t2 1 6 1; 8t 1 2 T ; 8t 2 ¼ t 1 þ 1; . . . ; T; ð15bÞ
function coefficients is US $1000. Note that all data on the MIRPLib
y½t;t 6 1; 8t 2 T ; ð15cÞ website start indexing from 0, not 1. Consequently, a 60-
y½t1 ;t2  2 Zþ ; 81 6 t1 6 t2 6 T; ð15dÞ period instance with 10 ports means that T ¼ f0; . . . ; 59g and
J ¼ f0; . . . ; 9g. The data type, e.g., int, double, string, etc., asso-
st P 0; 8t 2 T : ð15eÞ
ciated with each entry in Fig. 2 is given on the website.
This is an instance of a mixing set (13) in which additional side con-
straints appear,but are of the form By 6 d with B the arc-node inci-
4.1. Metadata
dence matrix of a digraph (network) and where d is an integral
vector. Thus, all nontrivial facets of the convex hull of solutions to
Metadata includes high-level information for an instance. Most
the constant capacitated lot-sizing relaxation are the mixing
of the parameters are self-explanatory, but we describe each for
inequalities (see p. 280 of Pochet & Wolsey (2006)). Engineer
the sake of completeness. In all instances, g ¼ 24 hours per period.
et al. (2012) applied a subset of the SMIR inequalities, which they
The number of periods jT j refers to the maximum number of
called ‘‘port capacity cuts,’’ to a model similar to the Core Model
periods for which the instance is defined. That is, a data file may
(1) and found that these inequalities tightened the relaxation and
state that jT j ¼ 360 implying that data, e.g., production and con-
improved the bound. To our knowledge, no attempt at applying
sumption rates, are specified for at most 360 periods. We only
the mixing inequalities has been made.
use the first 45 or 60 periods worth of data to solve a 45- or 60-per-
iod problem. However, users may be interested in solving longer
Finally, note that if the capacitated lot-sizing set (9) also in-
horizon problems.
cludes constraints C min
t yt 6 xt for all t 2 T , i.e., forcing a minimum
As previously mentioned, ports belong to regions. Thus, in addi-
amount to produce if production takes place, then applying the
tion to specifying the number of loading regions jRP j and discharg-
same arguments as above, analogous sets and valid inequalities
ing regions jRC j, we also provide the number of ports in each
can be derived. For example, analogous to constraints (11), one
region. In particular, if the number of loading regions jRP j is 2, then
can bound the maximum number of attempts to load or discharge
the data fjJ r jgr2RP following ‘‘Number of loading ports’’ is a list of
at a port in different time intervals. Another possible way to gener-
two positive integers denoting the number of loading ports in each
ate valid inequalities is to simultaneously consider lot-sizing relax-
of the two loading regions. The same is true for ‘‘Number of dis-
ations involving not just one, but a subset of ports. This approach is
charging ports.’’ The number of vessel classes and vessels per ves-
used in Papageorgiou, Keha, et al. (submitted for publication).
sel class is listed next. For example, if there are 3 vessel classes,
then the number of vessels per vessel class will be a sequence of
4. Using MIRPLib

Instances and results for each instance are maintained at mirp-


lib.scl.gatech.edu/. The current instances are inspired by
characteristics of real-world MIRPs, but do not represent any par-
ticular real-world data set. Since our focus is on a core model that
lies at the intersection of many real-world models, we believe this
choice is justified. We hope to include additional instances and re-
sults as they become available.
As mentioned from the outset, our major goals with this library
are: (1) to present benchmark instances for a particular class of
MIRPs; (2) to provide the mixed-integer linear programming com-
munity with a set of optimization problem instances from the mar-
itime transportation domain; (3) to provide a template for other
researchers when specifying characteristics of MIRPs arising in
other settings; and (4) to accelerate the development of advanced
algorithms. In this section, we describe the information provided in
a data instance and, in so doing, address goals (1), (2), and (3). This
information helps explain many of the major details of a maritime
inventory routing problem. Fig. 2. Data objects.
362 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

3 positive integers, e.g., ‘‘2 3 4’’, implying that there are 2 vessels in to port j before departing from the region, then three port fees
the first vessel class, 3 in the second, and 4 in the third. are incurred: pj þ pk þ pj . See the travel cost calculation in Table 2.
A spot market price per unit and discount factor are also in- Whereas discharging ports always have a berth limit of Bj ¼ 1,
cluded. The purpose of the spot market discount factor cspot is to loading ports may have multiple berths. In reality, discharging
delay the use of the spot market until the last possible time period ports may also have multiple berths, but having fewer berths typ-
in which it is needed. Specifically, if aj;t decision variables are in- ically results in more challenging instances.
cluded in the model (see Constraints (4)), then we also include Rather than varying the port inventory capacity Smax j;t and the
PP
the following additional penalty term  j t P t aj;t into the model, minimum and maximum loading/discharging amounts per period,
spot t spot
where Pt ¼ ðc Þ P for all t 2 T . Notice that if the spot market F min
j and F maxj , these values are fixed to a single value throughout
discount factor cspot 2 ð0; 1Þ and Pspot > 0, then fP t gt2T is a decreas- the planning horizon. Values for these parameters were chosen
ing sequence, meaning that it is always cheaper to purchase from so that F min
j was roughly 50 units at discharging ports, but some-
the spot market as late as possible. A similar idea was used in Goel times higher at loading ports, and F max j was almost always greater
et al. (2012). than one-half of the largest vessel class’s capacity. Note that it is
As discussed in Section 3.2.2, negligible positive parameters z possible for F maxj to be larger than Smax
j . At a discharging port with
and q are included in some instances to give vessels an incentive zero inventory in the beginning of a period, this might allow larger
to load or discharge as few times as possible and to exit the system vessels to discharge the amount consumed in that period plus the
as soon as it is no longer necessary or profitable for them to engage amount Smax j needed to bring the inventory up to capacity in the
in service. The precise use of z is shown in Eq. (3). Table 2 shows end of the period. The minimum inventory level Smin j at all ports
how q is incorporated into the sink arc cost. is zero.
The final parameters provided in the metadata are nonnegative Initial inventory levels at each port are given and were selected
parameters j1a and jsum a and are associated with the right hand side in connection with the starting position of vessels. Although the
values of Constraints (5a) and (5b), discussed in Section 3.2.3, production and consumption rates may be constant in some in-
when a simplified spot market representation is used. If the deci- stances, a list fdj;t gt2T is specified for each port j. Likewise, a list
sion variables aj;t should be included in the model, then they of revenues fRj;t gt2T is given for each discharging port j 2 J C . For
should include a variable upper bound, i.e., Constraints (5a) should instances with two loading regions, production and consumption
be used with amax j;t ¼ j1a dj;t for all j 2 J and t 2 T . If Constraints (5b) rates were chosen so that solutions in which the same subset of
are included in the model, then amax j a dj;0 for all j 2 J . We use
¼ jsum discharging regions is served by a single loading region is avoided.
dj;0 since, for the current instances, it is approximately equal to the In other words, we tried to avoid instances in which the problem
average of the dj;t variables over most planning horizons starting at could be decomposed with the same vessels always returning to
time 0. For example, j1a ¼ 0:5 means that, in any period, the the same loading region.
amount of product bought from or sold to the spot market is at The port capacity-to-rate ratio Smax =d , where d
 is the average
j j j
most one-half of the amount produced/consumed in that period, rate at port j, is one of the factors that determines how tightly
and jsuma ¼ 1 implies that the cumulative amount of product constrained an instance is since smaller ratios require a port to
bought from or sold to the spot market over the entire planning be visited more frequently. Production and consumption rates
horizon may not exceed (roughly) the average amount produced/ and capacities at individual ports were generated so that the
consumed in any one period. capacity-to-rate ratios of ports within a region are typically dis-
We now describe how to use the constants j1a and jsum a . First, if tinct integer values. This makes it less likely to encounter opti-
either parameter is not listed, assume it is 0. Second, they work in mal solutions in which two ports are repeatedly visited in a
tandem. The rules, expressed in pseudocode, for using these periodic manner. For example, suppose ports i and j belong to
parameters are: If j1a 6 0, then the decision variables aj;t should the same region, are close to one another, have low inventory
not be included in the model; else if j1a > 0 and jsum a 6 0, then capacities relative to that of most vessel classes, and have iden-
the decision variables aj;t should be included in the model, but tical capacity-to-rate ratios, respectively. Then it seems reason-
Constraints (5b) should not be included; else (i.e., j1a > 0 and able to expect solutions in which these vessels are visited by a
jsum
a > 0), then the aj;t variables with Constraints (5a) and (5b) single vessel during each visit to the region. On the other hand,
should be included in the model. if the capacity-to-rate ratios are distinct, then it seems less likely
that these two ports will always be visited by the same vessel
4.2. Port data during a visit to the region.

Each port is defined by the following information: Each port has 4.3. Vessel class data
an integer index j 2 f0; . . . ; jJ j  1g and a type ‘Loading’ or ’Dis-
charging’. Since ports belong to regions, each port is assigned a re- Each vessel belongs to a particular vessel class v c 2 VC, which
gion index (an integer r 2 f0; . . . ; jRj  1g). Each region is classified has a fixed capacity Q v c , a design cruising speed rvknc in knots, a tra-
as a loading region or a discharging region, but not both. All ports vel cost C vkmc per km, and a discount parameter cv c for traveling
within a region have the same classification as the region. empty. The meaning of each parameter is given below. As previ-
Each port j is given x and y coordinates on a two-dimensional ously mentioned, we use the term vessel class to refer to vessels
plane. The distance dij between two distinct ports i and j is the with the same aforementioned parameters. Thus, two Panamax
Euclidean distance between the two ports calculated using the x vessels may be in different vessel classes if their parameters are
and y coordinates provided. The travel time between two distinct different.
ports depends on the vessel class and is discussed below. The travel time svij c between two distinct ports i and j using a
Each port has a port fee pj 2 f10; . . . ; 100g, which is incurred vessel in vessel class vc is calculated as svij c ¼ dgdij =rvkm=h
c
e, where
every time a port is visited, not every time an attempt to load or dij is the Euclidean distance between ports i and j and
discharge is made. For example, if a vessel arrives at port j in time rvkm=h
c
¼ ð1:852Þrvknc is the design speed in kilometers per hour of a
period 1, attempts to load in time period 2, waits outside the port vessel in vessel class vc.
in period 3 and then departs for another port, the port fee is in- The formulas for calculating arc costs for each vessel class are
curred just once. On the other hand, if a vessel arrives at port j in shown in Table 2. Stopford (2008) partitions the cost of operating
period 1, then visits port k in the same region, and then returns a vessel into five components: operating costs, e.g., day-to-day
D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 363

Table 2 US $75. Using these figures as a starting point, we created other


Arc cost calculations for each vessel class vc. vessel classes.
Arc type Example arc a Cost C va c

Source a ¼ ðn0 ; ðj; tÞÞ pj 4.4. Vessel data


Sink a ¼ ððj; tÞ; nTþ1 Þ ðjT j  tÞq
Waiting a ¼ ððj; tÞ; ðj; t þ 1ÞÞ 0 As mentioned above, each vessel v 2 V belongs to a particu-
Inter-port a ¼ ððj1 ; t 1 Þ; ðj2 ; t2 ÞÞ C vkm
c
dj1 ;j2 ð1  cv c Þ þ pj2 if j1 2 J C ; j2 2 J P
vc
lar vessel class v c 2 VC. In addition, a vessel has an initial inven-
C km dj1 ;j2 þ pj2 otherwise
tory on board sv0 . Since these instances involve company owned
or long-term time-chartered vessels, the starting port j and the
first time sv0 the vessel is available to attempt to load or dis-
charge is also specified. Note that sv0 > 0 means the vessel is
crew costs and daily vessel maintenance costs; periodic mainte-
en route to its starting port at the outset of the planning prob-
nance costs when a vessel is dry-docked for major repairs; voyage
lem. Vessels originating in loading regions initially have zero
costs, e.g., fuel costs, port fees, and canal dues; capital costs; and
inventory, while those beginning in discharging regions start full
cargo-handling cost, e.g., the cost of loading, stowing, and dis-
(at capacity).
charging cargo. Here we consider a much simpler cost structure,
Voyage chartered vessels are not considered in the current set
which does not include period maintenance costs, capital costs, ca-
of instances. However, these instances would not specify the start-
nal dues, or cargo-handling costs. Instead, we assume that the
ing port and time available. Instead, we might place bounds on the
parameter C vkmc captures the fuel cost and operating costs per kilo-
number of vessels that can be chartered in a given time interval.
meter associated with a nearly full vessel. In addition, we assume
that a port fee pj is incurred if port j is visited, independent of
whether or not an attempt to load or discharge at that port is made. 5. Current instances and best known results
Thus, as shown in Table 2, the cost of traveling from a loading port
j1 to a discharging port j2 is the total fuel and operating costs There are two sets of instances, called Group 1 and Group 2
C vkmc dj1 ;j2 over the entire voyage plus the port fee pj2 at the destina- instances. Group 1 instances involve a 45- or 60-period planning
tion port j2 . Although a vessel may not be near capacity when trav- horizon for a tactical MIRP studied in Papageorgiou, Keha, et al.
eling between two loading or discharging ports, the same (submitted for publication). Group 2 instances, treated in Papa-
calculation is used. On the other hand, since vessels almost always georgiou, Cheon, et al. (submitted for publication), involve a
travel empty from a discharging port to a loading port, we assume 120-, 180-, and 360-period planning horizon for a strategic MIRP
that a vessel will save fuel on such a voyage; hence, we discount with a single loading port and multiple discharging ports, each
the total fuel and operating costs C vkmc dj1 ;j2 by the factor ð1  cv c Þ. of which belongs to a distinct region. For the results provided,
For example, if cv c ¼ 0:2, then the travel component of the arc cost it is assumed that a vessel will only travel from a loading region
is discounted by 20%. to a discharging region and vice versa; a vessel will never visit
A vessel cruising at an average speed of 15 knots travels approx- two regions of the same type in succession. Thus, for Group 2
imately 667 km per day. Assuming an average operating cost of US instances, vessels only make out-and-back trips from the load-
$50,000 per day, this implies that the travel cost per km is roughly ing port to a discharging port. All instances are solved as

Table 3
Best known results for Group 1 instances with a 45- and 60-period planning horizon.

Instance Periods Objval Bound Rel. Gap (%) Abs. Gap


LR1_1_DR1_3_VC1_V7a 45 13,272 14,410 8.57 1138
LR1_1_DR1_4_VC3_V11a 45 11,239 12,994 15.61 1755
LR1_1_DR1_4_VC3_V12a 45 10,732 12,329 14.89 1598
LR1_1_DR1_4_VC3_V12b 45 9069 9578 5.62 509
LR1_1_DR1_4_VC3_V8a 45 5106 6153 20.51 1047
LR1_1_DR1_4_VC3_V9a 45 6891 8242 19.60 1351
LR1_2_DR1_3_VC2_V6a 45 11,134 12,763 14.63 1629
LR1_2_DR1_3_VC3_V8a 45 12,010 13,625 13.45 1615
LR2_11_DR2_22_VC3_V6a 45 9718 10,802 11.16 1084
LR2_11_DR2_33_VC4_V11a 45 14,017 16,445 17.32 2428
LR2_11_DR2_33_VC5_V12a 45 18,423 20,668 12.18 2245
LR2_22_DR2_22_VC3_V10a 45 24,789 27,803 12.16 3014
LR2_22_DR3_333_VC4_V14a 45 21,952 27,216 23.98 5264
LR2_22_DR3_333_VC4_V17a 45 21,286 27,628 29.79 6342
LR1_1_DR1_3_VC1_V7a 60 16,675 17,847 7.03 1172
LR1_1_DR1_4_VC3_V11a 60 13,257 15,020 13.30 1763
LR1_1_DR1_4_VC3_V12a 60 11,040 12,832 16.23 1792
LR1_1_DR1_4_VC3_V12b 60 10,053 11,287 12.27 1234
LR1_1_DR1_4_VC3_V8a 60 5191 6691 28.90 1500
LR1_1_DR1_4_VC3_V9a 60 7552 9383 24.25 1831
LR1_2_DR1_3_VC2_V6a 60 13,532 15,841 17.06 2309
LR1_2_DR1_3_VC3_V8a 60 14,652 17,379 18.61 2727
LR2_11_DR2_22_VC3_V6a 60 12,655 14,198 12.19 1543
LR2_11_DR2_33_VC4_V11a 60 15,387 19,565 27.15 4178
LR2_11_DR2_33_VC5_V12a 60 22,730 25,988 14.33 3258
LR2_22_DR2_22_VC3_V10a 60 32,627 35,873 9.95 3246
LR2_22_DR3_333_VC4_V14a 60 26,873 33,503 24.67 6630
LR2_22_DR3_333_VC4_V17a 60 27,000 33,909 25.59 6909
364 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

Table 4
Best known results for Group 2 instances solved with a 120-, 180-, and 360-period planning horizon.

Instance Periods Objval Bound Rel. Gap (%) Abs. Gap


LR1_DR02_VC01_V6a 120 33,809 33,809 0.00 0
LR1_DR02_VC02_V6a 120 74,982 74,982 0.00 0
LR1_DR02_VC03_V7a 120 40,446 38,482 4.86 1964
LR1_DR02_VC03_V8a 120 43,721 43,717 0.01 4
LR1_DR02_VC04_V8a 120 41,657 41,277 0.91 380
LR1_DR02_VC05_V8a 120 36,659 36,077 1.59 582
LR1_DR03_VC03_V10b 120 92,941 77,436 16.68 15,505
LR1_DR03_VC03_V13b 120 124,921 118,706 4.98 6215
LR1_DR03_VC03_V16a 120 82,837 71,605 13.56 11,232
LR1_DR04_VC03_V15a 120 73,743 71,985 2.38 1758
LR1_DR04_VC03_V15b 120 117,812 102,019 13.41 15,793
LR1_DR04_VC05_V17a 120 72,876 71,343 2.10 1533
LR1_DR04_VC05_V17b 120 108,061 84,602 21.71 23,459
LR1_DR05_VC05_V25a 120 105,328 102,755 2.44 2573
LR1_DR05_VC05_V25b 120 137,107 123,723 9.76 13,384
LR1_DR08_VC05_V38a 120 166,615 158,423 4.92 8192
LR1_DR08_VC05_V40a 120 180,903 171,236 5.34 9667
LR1_DR08_VC05_V40b 120 200,746 188,570 6.07 12,176
LR1_DR08_VC10_V40a 120 185,538 180,098 2.93 5440
LR1_DR08_VC10_V40b 120 206,315 195,480 5.25 10,835
LR1_DR12_VC05_V70a 120 279,526 267,587 4.27 11,939
LR1_DR12_VC05_V70b 120 308,555 293,753 4.80 14,802
LR1_DR12_VC10_V70a 120 283,511 273,938 3.38 9573
LR1_DR12_VC10_V70b 120 295,126 284,884 3.47 10,242
LR1_DR02_VC01_V6a 180 52,167 50,749 2.72 1418
LR1_DR02_VC02_V6a 180 129,372 116,332 10.08 13,040
LR1_DR02_VC03_V7a 180 64,148 58,692 8.51 5456
LR1_DR02_VC03_V8a 180 69,115 65,639 5.03 3476
LR1_DR02_VC04_V8a 180 66,144 65,233 1.38 911
LR1_DR02_VC05_V8a 180 59,445 57,203 3.77 2242
LR1_DR03_VC03_V10b 180 125,953 97,810 22.34 28,143
LR1_DR03_VC03_V13b 180 165,764 130,684 21.16 35,080
LR1_DR03_VC03_V16a 180 159,435 120,195 24.61 39,240
LR1_DR04_VC03_V15a 180 119,027 116,125 2.44 2902
LR1_DR04_VC03_V15b 180 189,989 153,903 18.99 36,086
LR1_DR04_VC05_V17a 180 119,005 115,275 3.13 3730
LR1_DR04_VC05_V17b 180 159,670 124,004 22.34 35,666
LR1_DR05_VC05_V25a 180 171,620 167,592 2.35 4028
LR1_DR05_VC05_V25b 180 205,368 184,379 10.22 20,989
LR1_DR08_VC05_V38a 180 274,244 261,036 4.82 13,208
LR1_DR08_VC05_V40a 180 296,760 283,528 4.46 13,232
LR1_DR08_VC05_V40b 180 337,559 293,243 13.13 44,316
LR1_DR08_VC10_V40a 180 304,261 297,136 2.34 7125
LR1_DR08_VC10_V40b 180 331,775 303,887 8.41 27,888
LR1_DR12_VC05_V70a 180 460,566 443,276 3.75 17,290
LR1_DR12_VC05_V70b 180 491,160 460,880 6.16 30,280
LR1_DR12_VC10_V70a 180 466,975 453,782 2.83 13,193
LR1_DR12_VC10_V70b 180 470,172 454,337 3.37 15,835
LR1_DR02_VC01_V6a 360 108,141 106,901 1.15 1240
LR1_DR02_VC02_V6a 360 283,031 268,194 5.24 14,837
LR1_DR02_VC03_V7a 360 134,058 120,216 10.33 13,842
LR1_DR02_VC03_V8a 360 165,354 138,758 16.08 26,596
LR1_DR02_VC04_V8a 360 139,562 137,415 1.54 2147
LR1_DR02_VC05_V8a 360 123,336 120,923 1.96 2413
LR1_DR03_VC03_V10b 360 261,970 187,202 28.54 74,768
LR1_DR03_VC03_V13b 360 318,517 234,742 26.30 83,775
LR1_DR03_VC03_V16a 360 354,632 267,593 24.54 87,039
LR1_DR04_VC03_V15a 360 255,834 248,524 2.86 7310
LR1_DR04_VC03_V15b 360 358,323 277,477 22.56 80,846
LR1_DR04_VC05_V17a 360 252,894 247,725 2.04 5169
LR1_DR04_VC05_V17b 360 320,943 249,665 22.21 71,278
LR1_DR05_VC05_V25a 360 368,628 362,894 1.56 5734
LR1_DR05_VC05_V25b 360 420,868 376,275 10.60 44,593
LR1_DR08_VC05_V38a 360 596,969 575,369 3.62 21,600
LR1_DR08_VC05_V40a 360 652,380 623,686 4.40 28,694
LR1_DR08_VC05_V40b 360 709,713 629,944 11.24 79,769
LR1_DR08_VC10_V40a 360 663,245 649,885 2.01 13,360
LR1_DR08_VC10_V40b 360 724,513 651,195 10.12 73,318
LR1_DR12_VC05_V70a 360 1,021,389 982,619 3.80 38,770
LR1_DR12_VC05_V70b 360 1,093,013 980,410 10.30 112,603
LR1_DR12_VC10_V70a 360 1,024,399 1,002,624 2.13 21,775
LR1_DR12_VC10_V70b 360 1,001,541 985,670 1.58 15,871
D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366 365

minimization problems, i.e., we minimize the negative of the instances may not be ideal. Indeed, we hope that better models
objective function in the Core Model (1), so dual bounds refer and solution methods are developed in the future.
to lower bounds. In all instances, it is assumed that vessels must
travel at capacity from a loading port to a discharging port and
empty from a discharging port to a loading port; that is, con- 6. Future research and extensions
straints (2a) and (2b) are enforced. Moreover, all instances in-
clude soft inventory constraints (5) and constraints (4) in lieu There are many opportunities for future research in maritime
of constraints (1i). Whereas in Group 1 instances, the amount inventory routing as it is still a growing field. In terms of future
of cumulative violation amax allowed is small making feasibility research on the core problem presented here, an obvious exper-
j
an issue, in Group 2, the amount of cumulative violation allowed iment that might shed light on how best to approach MIRPs is a
is infinite making it simple to find feasible solutions. In Group 2 comparison of arc- and path-flow models. Path-flow models are
instances, revenues Rj;t are zero making the goal to minimize tra- more prominent in cargo routing problems in which narrow
vel costs and spot market usage. time windows for when cargo must be loaded or discharged
Our convention for naming instances is based on the number greatly reduce the number of paths that need to be considered.
of loading and discharging regions, the number of ports, the However, as shown in Table 1, arc-flow models are more preva-
number of vessel classes, and the number of vessels. This con- lent in inventory routing problems as the flexibility in loading
vention is best understood with an example. Consider an in- and discharging times gives rise to an astronomical number of
stance named LR2_12_DR3_123_VC4_V14c. LR2 means that paths. Comparing these algorithmic approaches and determining
there are two loading regions. 12 means that there is one port when one approach is better than another would be beneficial.
in the first loading region and two ports in the second loading Second, there is also a need for techniques that can produce bet-
region. If no numbers are included immediately after LR*, then ter bounds. In compiling results for this paper, we have focused
each loading region has exactly one port. DR3 means that there primarily on generating good primal solutions, even though dual
are three discharging regions. 123 means that there is one port solutions are also useful in quantifying the degree of suboptimal-
in the first discharging region, two in the second, and three in ity. Third, it would be interesting to study instances involving
the third. If no numbers are included immediately after DR*, time- and voyage-chartered vessels, time-dependent travel
then each discharging region has exactly one port. VC4 means times, multiple products, and other details discussed in Section 3.
that there are four vessel classes. V14 means that there are a to- We hope that others can use our format as a template for such
tal of 14 vessels (with at least one vessel belonging to each ves- extensions.
sel class). Finally, if a letter is included at the end, this is to As far as future research for maritime inventory routing as a
distinguish this instance from other instances. component of decision support systems is concerned, there are
Tables 3 and 4 show the current best known objective function at least two pressing needs: modeling end effects and generating
value, bound, relative optimality gap (Rel. Gap %), and absolute robust solutions. Although the model presented here is a finite-
optimality gap (Abs. Gap) for each instance. The relative optimality horizon problem with a definitive ending period, most
gap is computed as ðz  zBound Þ=z (and is then expressed as a per- real-world applications have no ending period as operations
centage), where z is the best known objective function value and are expected to continue indefinitely. Nevertheless, several suc-
zBound is the best known lower bound. The objective function values cessful case studies have proven that finite-horizon models are
in Table 3 were computed using the Zoom algorithm described in still valuable. The challenge is to formulate a model that is de-
Papageorgiou, Keha, et al. (submitted for publication), while those tailed enough to generate good solutions that are not disturbed
in Table 4 were computed running Gurobi 5.0 for 24 hours with by end effects, but that can still be solved in a reasonable
emphasis on feasibility after warmstarting the solution procedure amount of time.
with the best solution found using the approach described in Papa- Robustness is another challenge. As with most planning prob-
georgiou, Cheon, et al. (submitted for publication). The best bounds lems encountered in real-world applications, the data is rarely
for all instances, which are currently rather weak and, therefore, known with certainty. In maritime applications, two primary
open to improvement, were computed running Gurobi 5.0 for sources of uncertainty are in demand rates at consumption sites
24 hours with default emphasis using the Core Model (1). The solu- and in travel times for vessels from port to port. There is a need
tions corresponding to the best known objective function value are to develop solutions that are immune to small and large perturba-
available on the website. Results will be updated on the website as tions in the data. Both stochastic programming and robust optimi-
best known solutions and bounds are improved. zation approaches are worthy of consideration. Incorporating
It is worth mentioning two experiments that we conducted on vessel speed decisions in the model may be useful since disruptions
the 60-period Group 1 instances in Table 3 in order to give poten- are random events that appear dynamically and one way to over-
tial users a barometer of current solver capabilities. All computa- come small disruptions is to have vessels travel faster or slower
tions were carried out on a Linux machine with kernel 2.6.18 on particular voyages.
running on a 64-bit x86 processor equipped with two Intel Xeon
E5520 chips, which run at 2.27 gigahertz, and 48 gigabytes of
RAM. In the first experiment, we loaded the MPS file for each Acknowledgments
Group 1 instance into Gurobi 5.0 with default emphasis and let
the solver work for 24 hours. Gurobi could not find a feasible solu- Lots of thanks (pun intended) to Laurence Wolsey for sug-
tion to any instances in this time limit. In a second experiment, we gesting an investigation of well known lot-sizing inequalities
modified the model to allow an unlimited amount of spot market during his visit to Georgia Tech in Spring 2011. The first author
to be purchased (as in Group 2 instances), but with a high penalty would like to thank Prof. Kjetil Fagerholt for useful discussions
if the cumulative amount of spot market purchased violated the while the paper was in preparation, and Berit Brouer for a thor-
bounds set in the data. This time, Gurobi found truly feasible solu- ough review and helpful suggestions on a preliminary version of
tions to five of the instances, while the others had more units pur- this paper. We are grateful to two anonymous referees for their
chased from the spot market than is permitted. The purpose of incisive comments that helped improve the quality of the paper.
reporting these experiments is to highlight the fact that using We wish to thank ExxonMobil Research and Engineering
the Core Model (1) to generate solutions and bounds to large Company for financial support of this research.
366 D.J. Papageorgiou et al. / European Journal of Operational Research 235 (2014) 350–366

References Fodstad, M., Uggen, K. T., Rømo, F., Lium, A., & Stremersch, G. (2010). LNGScheduler:
A rich model for coordinating vessel routing, inventories and trade in the
liquefied natural gas supply chain. Journal of Energy Markets, 3(4), 31–64.
Agra, A., Andersson, H., Christiansen, M., & Wolsey, L. (2013). A maritime inventory
Furman, K. C., Song, J., Kocis, G. R., McDonald, M. K., & Warrick, P. H. (2011).
routing problem: Discrete time formulations and valid inequalities. Networks,
Feedstock routing in the ExxonMobil downstream sector. Interfaces, 41(2),
62(4), 297–314.
149–163.
Agra, A., Christiansen, M., & Delgado, A. (2013). Mixed integer formulations for a
Goel, V., Furman, K. C., Song, J.-H., & El-Bakry, A. S. (2012). Large neighborhood
short sea fuel oil distribution problem. Transportation Science, 47(1), 108–124.
search for LNG inventory routing. Journal of Heuristics, 18(6), 821–848.
Al-Khayyal, F., & Hwang, S. (2007). Inventory constrained maritime routing and
Grønhaug, R., & Christiansen, M. (2009). Supply chain optimization for the liquefied
scheduling for multi-commodity liquid bulk, part I: Applications and model.
natural gas business. Innovations in Distribution Logistics, Lecture Notes in
European Journal of Operational Research, 176(1), 106–130.
Economics and Mathematical Systems, 619, 195–218.
Andersson, H. (2011). A maritime pulp distribution problem. INFOR, 49(2), 125–138.
Grønhaug, R., Christiansen, M., Desaulniers, G., & Desrosiers, J. (2010). A Branch-
Andersson, H., Christiansen, M., & Fagerholt, K. (2010). Transportation planning and
and-Price method for a liquefied natural gas inventory routing problem.
inventory management in the LNG supply chain. In Energy. Natural resources and
Transportation Science, 44(3), 400–415.
environmental economics (pp. 427–439). Springer.
Hewitt, M., Nemhauser, G. L., & Savelsbergh, M. W. P. (2013). Branch-and-price
Andersson, H., Hoff, A., Christiansen, M., Hasle, G., & Løkketangen, A. (2010).
guided search for integer programs with an application to the multicommodity
Industrial aspects and literature survey: Combined inventory management and
fixed-charge network flow problem. INFORMS Journal on Computing, 25(2),
routing. Computers & Operations Research, 37(9), 1515–1536.
302–316.
Beasley, J. E. (1990). OR-Library: Distributing test problems by electronic mail.
Hewitt, M., Nemhauser, G. L., Savelsbergh, M. W. P., & Song, J.-H. (2013). A Branch-
Journal of the Operational Research Society, 41(11), 1069–1072.
and-Price guided search approach to maritime inventory routing. Computers &
Bektasß, T., & Laporte, G. (2011). The pollution-routing problem. Transportation
Operations Research, 40(5), 1410–1419.
Research Part B: Methodological, 45(8), 1232–1250.
Hvattum, L. M., Fagerholt, K., & Armentano, V. A. (2009). Tank allocation problems in
Bilgen, B., & Ozkarahan, I. (2007). A mixed-integer linear programming model for
maritime bulk shipping. Computers & Operations Research, 36(11), 3051–3060.
bulk grain blending and shipping. International Journal of Production Economics,
Koch, T., Achterberg, T., Andersen, E., Bastert, O., Berthold, T., Bixby, R., et al. (2011).
107(2), 555–571.
MIP Lib 2010. Mathematical Programming Computation, 3(2), 103–163.
Brouer, B. D., Alvarez, J. F., Plum, C. E. M., Pisinger, D., & Sigurd, M. M. (in press). A
Lawrence, S. A. (1972). International sea transport: The years ahead. Lexington, MA:
base integer programming model and benchmark suite for liner-shipping
Lexington Books.
network design. Transportation Science (2012). http://dx.doi.org/10.1287/
Li, J., Karimi, I., & Srinivasan, R. (2010). Efficient bulk maritime logistics for the
trsc.2013.0471.
supply and delivery of multiple chemicals. Computers & Chemical Engineering,
Campbell, A., Clarke, L., Kleywegt, A., & Savelsbergh, M. W. P. (1998). The inventory
34(12), 2118–2128.
routing problem. In T. G. Crainic & G. Laporte (Eds.), Fleet management and
Lindstad, H., Asbjørnslett, B. E., & Jullumstrø, E. (2013). Assessment of profit, cost
logistics (pp. 95–113). Kluwer.
and emissions by varying speed as a function of sea conditions and freight
Christiansen, M. (1999). Decomposition of a combined inventory and time
market. Transportation Research Part D: Transport and Environment, 19(0), 5–12.
constrained ship routing problem. Transportation Science, 33(1), 3–16.
Papageorgiou, D. J., Cheon, M.-S., Nemhauser, G. L., & Sokol, J. (submitted for
Christiansen, M., & Fagerholt, K. (2009). Maritime inventory routing problems. In C.
publication). Approximate dynamic programming for a class of long-horizon
A. Floudas & P. M. Pardalos (Eds.), Encyclopedia of optimization (2nd ed.,
maritime inventory routing problems (2013).
pp. 1947–1955). Springer-Verlag.
Papageorgiou, D. J., Keha, A. B., Nemhauser, G. L., & Sokol, J. (submitted for
Christiansen, M., & Fagerholt, K. (2011). Some thoughts on research directions for
publication). A two-stage decomposition algorithm for single product maritime
the future: Introduction to the special issue in maritime transportation. INFOR,
inventory routing (2013).
49(2), 75–77.
Persson, J. A., & Göthe-Lundgren, M. (2005). Shipment planning at oil refineries
Christiansen, M., Fagerholt, K., Flatberg, T., Haugen, O., Kloster, O., & Lund, E. H.
using column generation and valid inequalities. European Journal of Operational
(2011). Maritime inventory routing with multiple products: A case study from
Research, 163(3), 631–652.
the cement industry. European Journal of Operational Research, 208(1), 86–94.
Pochet, Y., & Wolsey, L. A. (2006). Production planning by mixed integer programming.
Christiansen, M., Fagerholt, K., Nygreen, B., & Ronen, D. (2007). Maritime
Springer series in operations research and financial engineering. Springer.
transportation. In C. Barnhart & G. Laporte (Eds.), Transportation. Handbooks in
Reinelt, G. (1991). TSP Lib – A traveling salesman problem library. ORSA Journal on
operations research and management science (Vol. 14, pp. 189–284). Elsevier.
Computing, 3(4), 376–384.
Christiansen, M., Fagerholt, K., Nygreen, B., & Ronen, D. (2013). Ship routing and
Rocha, R., Grossmann, I. E., & de Aragão, M. V. P. (2013). Cascading knapsack
scheduling in the new millennium. European Journal of Operational Research,
inequalities: reformulation of a crude oil distribution problem. Annals of
228(3), 467–483.
Operations Research, 203(1), 1–18.
Christiansen, M., & Nygreen, B. (1998). A method for solving ship routing problems
Ronen, D. (1993). Ship scheduling: The last decade. European Journal of Operational
with inventory constraints. Annals of Operations Research, 81(0), 357–378.
Research, 71(3), 325–333.
Coelho, L. C., & Laporte, G. (submitted for publication). Classification, models and
Ronen, D. (2002). Marine inventory routing: Shipments planning. Journal of the
exact algorithms for multi-compartment delivery problems (2013).
Operational Research Society, 53(1), 108–114.
Coelho, L. C., Cordeau, J.-F., & Laporte, G. (in press). Thirty years of inventory routing.
Savelsbergh, M. W. P., & Song, J. (2008). An optimization algorithm for the inventory
Transportation Science (2013). http://dx.doi.org/10.1287/trsc.2013.0472.
routing problem with continuous moves. Computers & Operations Research,
Cornillier, F., Boctor, F. F., Laporte, G., & Renaud, J. (2008). A heuristic for the multi-
35(7), 2266–2282.
period petrol station replenishment problem. European Journal of Operational
Shao, Y., Furman, K. C., & Goel, V. (submitted for publication). Improved large
Research, 191(2), 295–305.
neighborhood search for LNG inventory routing (2013).
Dauzère-Pérès, S., Nordli, A., Olstad, A., Haugen, K., Koester, U., Myrstad, P. O., et al.
Shen, Q., Chu, F., & Chen, H. (2011). A Lagrangian relaxation approach for a multi-
(2007). Omya hustadmarmor optimizes its supply chain for delivering calcium
mode inventory routing problem with transshipment in crude oil
carbonate slurry to european paper manufacturers. Interfaces, 37(1), 39–51.
transportation. Computers & Chemical Engineering, 35(10), 2113–2123.
Engineer, F. G., Furman, K. C., Nemhauser, G. L., Savelsbergh, M. W. P., & Song, J.-H.
Siswanto, N., Essam, D., & Sarker, R. (2011). Solving the ship inventory routing and
(2012). A Branch-Price-And-Cut algorithm for single product maritime
scheduling problem with undedicated compartments. Computers & Industrial
inventory routing. Operations Research, 60(1), 106–122.
Engineering, 61(2), 289–299.
Espinoza, D., Goycoolea, M., Moreno, E., & Newman, A. (2013). MineLib: A library of
Song, J.-H., & Furman, K. C. (2013). A maritime inventory routing problem: Practical
open pit mining problems. Annals of Operations Research, 206(1), 93–114.
approach. Computers & Operations Research, 40(3), 657–665.
Fagerholt, K., & Christiansen, M. (2000). A travelling salesman problem with
Stopford, M. (2008). Maritime economics (3rd ed.). New York, NY: Taylor & Francis.
allocation, time window and precedence constraints – An application to ship
Uggen, K., Fodstad, M., & Nørstebø, V. (2013). Using and extending fix-and-relax to
scheduling. International Transactions in Operational Research, 7(3), 231–244.
solve maritime inventory routing problems. TOP, 21(2), 355–377.
Fagerholt, K., Laporte, G., & Norstad, I. (2010). Reducing fuel emissions by
UNCTAD (2012). Review of maritime transport. United Nations, New York and
optimizing speed on shipping routes. Journal of The Operational Research
Geneva.
Society, 61(3), 523–529.

You might also like