9
Discrete Optimization Formulations for a problem of petroleum transportation Luiz Aizemberg , Hugo Harry Kramer, Artur Alves Pessoa, Eduardo Uchoa Production Engineering Department, Fluminense Federal University, Rua Passo da Pátria 156, 24210-240 Niterói, RJ, Brazil article info Article history: Received 11 March 2013 Accepted 19 January 2014 Available online 27 January 2014 Keywords: Mixed Integer Programming Transportation problem Column generation-based heuristic abstract Oil tankers play a fundamental role in every offshore petroleum supply chain and due to its high price, it is essential to optimize its use. Since this optimization requires handling detailed operational aspects, complete optimization models are typically intractable. Thus, a usual approach is to solve a tactical level model prior to optimize the operational details. In this case, it is desirable that tactical models are as pre- cise as possible to avoid too severe adjustments in the next optimization level. In this paper, we study tactical models for a crude oil transportation problem by tankers. We did our work on the top of a pre- vious paper found in the literature. The previous model considers inventory capacities and discrete lot sizes to be transported, aiming to meet given demands over a finite time horizon. We compare several formulations for this model using 50 instances from the literature and proposing 25 new harder ones. A column generation-based heuristic is also proposed to find good feasible solutions with less computa- tional burden than the heuristics of the commercial solver used. Ó 2014 Elsevier B.V. All rights reserved. 1. Introduction Oil tankers play a fundamental role in every offshore petroleum supply chain. Its optimization is usually divided in three levels: strategic, tactical and operational. Strategic decisions deal with fleet sizing, facility location and capacity sizing. Tactical decisions deal with production and distribution planning, transportation mode selection, storage allocation and order picking strategies. Finally, operational decisions deal with shipment and vehicle dispatching (Ghiani, Laporte, & Musmanno, 2004). When dealing with a planning level, all decisions made in the previous levels are assumed to be known. Since each level considers more details than the previous ones, past decisions usually have to be adjusted. Hence, it is important to make both the strategic and tactical mod- els as detailed as possible to guarantee low adjustments in the operational level. In this paper, we study a tactical optimization model for crude oil distribution by tankers. The problem consists of scheduling the shipments through routes linking platforms (offshore production sites) and terminals (onshore consumer sites). The objective is to ship the products from the platforms to supply the terminals with minimum transportation cost for a finite planning horizon. For each site, the inventory levels must lie between a lower and an upper bound to avoid the lack or excess of product. Also, for each site, the demand or the production is given for the whole planning horizon. The products are shipped only by oil tankers and we assume that the global capacity of the fleet is unlimited. For each transportation, one has to decide the route, the lot size and the delivery day. This problem has already been addressed in Rocha (2010) and Rocha, Grossmann, and Poggi de Aragão (2011). This paper has two aims. The first aim is to compare mathemat- ical formulations for the transportation problem proposed in Rocha et al. (2011). Firstly, a basic formulation is given, where the inven- tory level for each day in each site is represented by a continuous variable and the shipments are represented by binary variables. This formulation is similar to many others found in the literature. We refer to Sawik (2011) for an overview of such papers. We also test several variations of the formulation proposed in Rocha et al. (2011), referred to as Knapsack Cascading. Lastly, we devise a new formulation that outperforms all previous ones when given to a Mixed Integer Programming (MIP) solver. The second aim of this paper is to propose a column generation- based heuristic approach. We note that, for difficult instances, the commercial solver used is not capable of finding good feasible solutions at the beginning of the branch-and-bound algorithm tree. Finding a good feasible solution at the very beginning of the tree is crucial to reduce the search by cutting off nodes of such tree, increasing the probability of proving the optimality in a reasonable computational time. We did our work on the top of a previous paper found in the lit- erature (Rocha et al., 2011). The instances used to test the formu- lations are those proposed by Rocha et al. Our paper shows a clear evolution concerning the results as the formulations are improved, leading to the generation of new and harder instances (based on the existent ones) to evaluate the potential of such formulations. 0377-2217/$ - see front matter Ó 2014 Elsevier B.V. All rights reserved. http://dx.doi.org/10.1016/j.ejor.2014.01.036 Corresponding author. Tel.: +55 2126295708. E-mail addresses: [email protected] (L. Aizemberg), hugoharry @gmail.com (H.H. Kramer), [email protected] (A.A. Pessoa), uchoa@prod ucao.uff.br (E. Uchoa). European Journal of Operational Research 237 (2014) 82–90 Contents lists available at ScienceDirect European Journal of Operational Research journal homepage: www.elsevier.com/locate/ejor

Formulations for a Problem of Petroleum Transportation

Embed Size (px)

DESCRIPTION

Formulations for a Problem of Petroleum Transportation

Citation preview

Page 1: Formulations for a Problem of Petroleum Transportation

European Journal of Operational Research 237 (2014) 82–90

Contents lists available at ScienceDirect

European Journal of Operational Research

journal homepage: www.elsevier .com/locate /e jor

Discrete Optimization

Formulations for a problem of petroleum transportation

0377-2217/$ - see front matter � 2014 Elsevier B.V. All rights reserved.http://dx.doi.org/10.1016/j.ejor.2014.01.036

⇑ Corresponding author. Tel.: +55 2126295708.E-mail addresses: [email protected] (L. Aizemberg), hugoharry

@gmail.com (H.H. Kramer), [email protected] (A.A. Pessoa), [email protected] (E. Uchoa).

Luiz Aizemberg ⇑, Hugo Harry Kramer, Artur Alves Pessoa, Eduardo UchoaProduction Engineering Department, Fluminense Federal University, Rua Passo da Pátria 156, 24210-240 Niterói, RJ, Brazil

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

Article history:Received 11 March 2013Accepted 19 January 2014Available online 27 January 2014

Keywords:Mixed Integer ProgrammingTransportation problemColumn generation-based heuristic

Oil tankers play a fundamental role in every offshore petroleum supply chain and due to its high price, itis essential to optimize its use. Since this optimization requires handling detailed operational aspects,complete optimization models are typically intractable. Thus, a usual approach is to solve a tactical levelmodel prior to optimize the operational details. In this case, it is desirable that tactical models are as pre-cise as possible to avoid too severe adjustments in the next optimization level. In this paper, we studytactical models for a crude oil transportation problem by tankers. We did our work on the top of a pre-vious paper found in the literature. The previous model considers inventory capacities and discrete lotsizes to be transported, aiming to meet given demands over a finite time horizon. We compare severalformulations for this model using 50 instances from the literature and proposing 25 new harder ones.A column generation-based heuristic is also proposed to find good feasible solutions with less computa-tional burden than the heuristics of the commercial solver used.

� 2014 Elsevier B.V. All rights reserved.

1. Introduction

Oil tankers play a fundamental role in every offshore petroleumsupply chain. Its optimization is usually divided in three levels:strategic, tactical and operational. Strategic decisions deal withfleet sizing, facility location and capacity sizing. Tactical decisionsdeal with production and distribution planning, transportationmode selection, storage allocation and order picking strategies.Finally, operational decisions deal with shipment and vehicledispatching (Ghiani, Laporte, & Musmanno, 2004). When dealingwith a planning level, all decisions made in the previous levelsare assumed to be known. Since each level considers more detailsthan the previous ones, past decisions usually have to be adjusted.Hence, it is important to make both the strategic and tactical mod-els as detailed as possible to guarantee low adjustments in theoperational level.

In this paper, we study a tactical optimization model for crudeoil distribution by tankers. The problem consists of scheduling theshipments through routes linking platforms (offshore productionsites) and terminals (onshore consumer sites). The objective is toship the products from the platforms to supply the terminals withminimum transportation cost for a finite planning horizon. Foreach site, the inventory levels must lie between a lower and anupper bound to avoid the lack or excess of product. Also, for eachsite, the demand or the production is given for the whole planning

horizon. The products are shipped only by oil tankers and weassume that the global capacity of the fleet is unlimited. For eachtransportation, one has to decide the route, the lot size and thedelivery day. This problem has already been addressed in Rocha(2010) and Rocha, Grossmann, and Poggi de Aragão (2011).

This paper has two aims. The first aim is to compare mathemat-ical formulations for the transportation problem proposed in Rochaet al. (2011). Firstly, a basic formulation is given, where the inven-tory level for each day in each site is represented by a continuousvariable and the shipments are represented by binary variables.This formulation is similar to many others found in the literature.We refer to Sawik (2011) for an overview of such papers. We alsotest several variations of the formulation proposed in Rocha et al.(2011), referred to as Knapsack Cascading. Lastly, we devise a newformulation that outperforms all previous ones when given to aMixed Integer Programming (MIP) solver.

The second aim of this paper is to propose a column generation-based heuristic approach. We note that, for difficult instances, thecommercial solver used is not capable of finding good feasiblesolutions at the beginning of the branch-and-bound algorithm tree.Finding a good feasible solution at the very beginning of the tree iscrucial to reduce the search by cutting off nodes of such tree,increasing the probability of proving the optimality in a reasonablecomputational time.

We did our work on the top of a previous paper found in the lit-erature (Rocha et al., 2011). The instances used to test the formu-lations are those proposed by Rocha et al. Our paper shows a clearevolution concerning the results as the formulations are improved,leading to the generation of new and harder instances (based onthe existent ones) to evaluate the potential of such formulations.

Page 2: Formulations for a Problem of Petroleum Transportation

L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90 83

1.1. Literature review

Several models for optimizing the transportation of petroleumproducts are found in literature, considering different characteris-tics. In Colvin and Maravelias (2011), the authors consider taskselection, scheduling, and resource planning decisions, exploringrisk management methods, and develop a multi-stage stochasticprogramming model. To optimize such models, Mixed Integer Pro-gramming is the most used technique. In Magatão, Arruda, andNeves (2004) and Boschetto et al., 2010, MIP is applied to schedulethe activities in a real oil pipeline network. The former uses illustra-tive instances with four products, while the latter uses large in-stances, where more than 14 oil derivatives and ethanol aretransported. In Moro and Pinto (2004), MIP is used to optimize theshort-term crude oil scheduling. The authors deal with the separa-tion of brine from the oil, interface separation between differenttypes of oil, and energy consumption in the crude distillation units.MIP is also used in a real-time approach to dispatch petroleum tanktrucks (Brown & Graves, 1981) and to optimize the long-term oilderivative scheduling under uncertainty (MirHassani, 2008). Final-ly, in Banaszewski, Tacla, Pereira, Arruda, and Enembreck (2010)and Aizemberg et al. (2011), the authors deal with the medium-term planning of oil derivatives transportation in the Brazilian oilindustry multimodal supply chain network. The former applied anauction based multiagent algorithm, while the latter applied MIP.

Column generation based heuristics (CGH) are found in litera-ture to deal with many different problems: multi-item scheduling(Bahl, 1983), vehicle routing (Mourgaya & Vanderbeck, 2007), cut-ting stock (Furini, Malaguti, Durain, Persiani, & Toth, 2012), sensorplacement (Yavuz, Aras, Kuban, & Ersoy, 2010), generalized assign-ment (Moccia, Cordeau, Monaco, & Sammarra, 2009) and manyothers. In general, such approaches share similar main characteris-tics. First, the linear programming relaxation is solved by columngeneration. Then, a feasible solution is constructed for the originalproblem using the obtained columns. For example, in Choi andTcha (2007) the authors apply a column generation heuristic forthe heterogeneous fleet vehicle routing problem which consistsof three steps: (i) solve the continuous relaxation; (ii) set the vari-ables of the final restricted master as binaries; and (iii) solve theresulting MIP problem. In Joncour, Michel, Sadykov, Sverdlov, andVanderbeck (2010), the authors review generic classes of columngeneration-based heuristics.

1.2. Paper organization

The remainder of the paper is organized as follows. Section 2presents the problem definitions and the mathematical formula-tions, including the Dantzig–Wolfe decomposition formulationused by the proposed heuristic. Section 3 shows the column gener-ation-based heuristic procedure, including dynamic programmingalgorithm for the pricing subproblem. Section 4 discusses the ob-tained results. At last, Section 5 contains the conclusions of thiswork.

2. Mathematical formulations

This section presents the mathematical formulations consid-ered for the problem in study.

The optimization problem defined in Rocha et al. (2011) is thefollowing. Let P be the set of platforms and T the set of terminals.The planning horizon consists of D days. A unique product shouldbe shipped from platforms to terminals to satisfy given demands.The inventory levels of platforms and terminals are limited by alower and an upper bound, i.e., the lack or surplus of the productis not allowed at any point of the network. Oil tankers are grouped

in classes according to their capacities. Let C be the set of all tankerclasses. It is assumed that only oil tankers with fulfilled capacitiesare used in the transportation. The objective is to minimize the to-tal transportation costs.

The formulations described in the next subsections consider thefollowing notation:

Indices:

� p: Platform, p 2 P;� t: Terminal, t 2 T;� c: Class of tanker, c 2 C;� d: day, d 2 f1; . . . ;Dg.

Subsets:

� TðpÞ# T: Terminals allowed to send tankers to a platformp 2 P;

� PðtÞ# P: Platforms allowed to receive tankers from a termi-nal t 2 T;

� CðpÞ# C: Classes of tankers allowed to pick up oil from plat-form p 2 P.

Input data:

� ep;0: Initial inventory at platform p 2 P;� et;0: Initial inventory at terminal t 2 T;� Pp;d P 0: Production at platform p 2 P, in day d;� Ct;d P 0: Consumption at terminal t 2 T , in day d;� CAPp;d: Maximum inventory capacity at platform p 2 P, in

day d;� CAPt;d: Maximum inventory capacity at terminal t 2 T , in day

d;� Vc: Capacity of a tanker of class c 2 C;� Fc: Transportation cost per day for a tanker of class c 2 C

(tankers must travel back from the platform to the terminalafter each transportation);

� Dp;t: Transportation time between a platform p 2 P and a ter-minal t 2 T in days.

Other definitions will be added as needed by each formulation.

2.1. Natural formulation

For this model the decision variables are defined as follows.zc;d

p;t 2 f0;1g is a binary variable indicating if a tanker of class c 2 Cis assigned to ship the product from platform p 2 P to terminalt 2 T at day d. The variables ep;d 2 Rþ and et;d 2 Rþ represent theinventory levels at platform p 2 P and terminal t 2 T at day d, respec-tively. Thus, the natural formulation (NF ) is given by the following:

ðNFÞ minXp2P

Xt2TðpÞ

Xc2CðpÞ

XD

d¼1

2FcDp;tzc;dp;t ; ð1Þ

subject to

ep;d¼ ep;d�1þPp;d�X

t2TðpÞ

Xc2CðpÞ

Vczc;dp;t 8p2 P; d2f1; . . . ;Dg; ð2Þ

et;d¼ et;d�1�Ct;dþX

p2PðtÞ

Xc2CðpÞ

Vczc;d�Dp;tp;t 8t 2 T; d2f1; . . . ;Dg; ð3Þ

06 ep;d6CAPp;d 8p2 P; d2f1; . . . ;Dg; ð4Þ06 et;d 6CAPt;d 8t 2 T; d2f1; . . . ;Dg; ð5Þzc;d

p;t 2f0;1g 8p2 P; t2 TðpÞ; c2CðpÞ; d2f1; . . . ;Dg: ð6Þ

The objective function (1) aims to minimize the total transpor-tation costs. Constraints (2) calculate the inventory balance at eachplatform, while constraints (3) calculate the inventory balance ateach terminal. Constraints (4) and (5) assure that inventory levels

Page 3: Formulations for a Problem of Petroleum Transportation

84 L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90

at each platform and terminal at each day will not be less thantheir minimum storage capacity nor greater than their maximumstorage capacity.

Some of the problem assumptions deserve discussion:

� no more than one tanker of each class can be used in each routeand day: this assumption is not realistic, we just followed theprevious paper. But it is easy to drop this assumption, just set-ting the binary variables as integer;� unlimited number of tankers in each class: we believe this

assumption is realistic because it is based on a real problemwhere the oil company rents the tankers;� the instances use no realistic transportation and (un)loading

times: we could use realistic values, but this will not changethe formulation performance.

The NF is the starting point for a second formulation, whichneeds some additional definitions listed on the following. DefineLp as the greatest common divisor (GCD) of all the shipping capac-ities of all classes of tankers that are allowed to pick up oil fromplatform p. Let kminðp; dÞ be minimum number of lots of size Lp thatshould be shipped before day d from platform p to avoid its max-imum inventory capacity to be exceeded. This number is givenby the formula:

kminðp; dÞ ¼ACp;d � CAPp;d

Lp

� �;

where ACp;d is the accumulated amount of product at platform pfrom day 0 to day d and is given by:

ACp;d ¼ ep;0 þXd

s¼1

Pp;s:

Also, let kmaxðp; dÞ be the maximum number of lots of size Lp

allowed to be shipped until day d from platform p avoiding itsinventory level to be less than zero. Such number is calculated by:

kmaxðp;dÞ ¼ACp;d

Lp

� �;

With the definitions given above, constraints (4) are replacedwith:

ACp;d � kmaxðp;dÞLp 6 ep;d 6 ACp;d � kminðp;dÞLp 8p 2 P;

d 2 f1; . . . ;Dg: ð7Þ

Now, define Lt as the GCD of all the shipping capacities of allclasses of tankers that are allowed to supply terminal t. Letkminðt; dÞ be the minimum number of lots of size Lt that must be re-ceived by terminal t until day d such that its inventory level is notnegative. This number is given by:

kminðt;dÞ ¼�ACt;d

Lt

� �;

where ACt;d is the accumulated amount of product at terminal tfrom day 0 to day d and is given by:

ACt;d ¼ et;0 �Xd

s¼1

Ct;s:

Let kmaxðt; dÞ be the maximum number of lots of size Lt allowedto be received by terminal t until day d without exceeding itsinventory capacity. Such quantity is calculated by the followingformula:

kmaxðt;dÞ ¼CAPt;d � ACt;d

Lt

� �;

Given this, constraints (5) are replaced with:

ACt;dþkminðt;dÞLt 6 et;d6ACt;dþkmaxðt;dÞLt 8t 2 T; d2f1; . . . ;Dg: ð8ÞWith the substitutions suggested above, the second formulation

for the problem, which will be called Basic Formulation (BF ), isgiven by the objective function (1) subject to constraints (2), (3),(7), (8) and (6).

2.2. Knapsack cascading formulation

For this third formulation, which is adapted from Rocha et al.(2011), some of the previous definitions are considered plus othersthat follow.

DAp;d ¼ ACp;d � CAPp;d;

DAt;d ¼ CAPt;d � ACt;d:

Thus, the Knapsack Cascading (KC) formulation is given by:

ðKCÞ minXp2P

Xt2TðpÞ

Xc2CðpÞ

XD

d¼1

2FcDp;tzc;dp;t ; ð9Þ

subject to

Xt2TðpÞ

Xd

s¼1

Xc2CðpÞ

Vczc;sp;t 6ACp;d 8p2 P; d2f1; . . . ;Dg; ð10Þ

Xt2TðpÞ

Xd

s¼1

Xc2CðpÞ

Vczc;sp;t P DAp;d 8p2 P; d2f1; . . . ;Dg; ð11Þ

Xp2PðtÞ

Xd

s¼1

Xc2CðpÞ

Vczc;s�Dp;tp;t P�ACt;d 8t2 T; d2f1; . . . ;Dg; ð12Þ

Xp2PðtÞ

Xd

s¼1

Xc2CðpÞ

Vczc;s�Dp;tp;t 6DAt;d 8t2 T; d2f1; . . . ;Dg; ð13Þ

zc;dp;t 2f0;1g 8p2 P; t2 TðpÞ;c2CðpÞ; d2f1; . . . ;Dg: ð14Þ

The objective function (9) minimizes the total transportationcost. Constraints (10) avoid the inventory levels at each platformto be less than the minimum capacity. Constraints (11) ensure thatthe inventory levels at each platform never exceed their maximuminventory capacity. Constraints (12) avoid the inventory levels ateach terminal to be less than the minimum capacity and con-straints (13) ensure that the inventory levels at each terminalnever exceed their maximum inventory capacity. Finally, the zvariables are defined by (14) as binaries.

From the KC formulation, it is possible to derive a fourth formu-lation replacing constraints (10) and (11) by the new constraints(15) and (16) that follow:

Xt2TðpÞ

Xd

s¼1

Xc2CðpÞ

Vczc;sp;t 6 kmaxðp;dÞLp 8p2 P; d2f1; . . . ;Dg ð15Þ

Xt2TðpÞ

Xd

s¼1

Xc2CðpÞ

Vczc;sp;t P kminðp;dÞLp 8p2 P; d2f1; . . . ;Dg ð16Þ

and substituting (12) and (13) by (17) and (18) below:

Xp2PðtÞ

Xd

s¼1

Xc2CðpÞ

Vczc;s�Dp;tp;t 6 kmaxðt;dÞLt 8t2 T; d2f1; . . . ;Dg ð17Þ

Xp2PðtÞ

Xd

s¼1

Xc2CðpÞ

Vczc;s�Dp;tp;t P kminðt;dÞLt 8t2 T; d2f1; . . . ;Dg: ð18Þ

The resulting formulation will be called Rounded KnapsackCascading (RKC) formulation.

Page 4: Formulations for a Problem of Petroleum Transportation

L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90 85

2.3. Accumulated rounded cascading formulation

The variables of this newly proposed formulation are defined asfollows: xc;d

p;t is an integer variable representing the number oftankers of class c 2 CðpÞ leaving platform p 2 P to terminalt 2 TðpÞ from day 1 to day d. The zc;d

p;t variables are also consideredas previously defined. Let xc;0

p;t ¼ 0. The Accumulated RoundedCascading (ARC) formulation is given by:

ðARCÞ minXp2P

Xt2TðpÞ

Xc2CðpÞ

2FcDp;txc;Dp;t ; ð19Þ

subject to

xc;dp;t ¼ xc;d�1

p;t þzc;dp;t 8p2 P; t 2 TðpÞ;c2CðpÞ; d2f1; . . . ;Dg; ð20ÞX

t2TðpÞ

Xc2CðpÞ

Vcxc;dp;t 6 kmaxðp;dÞLp 8p2 P; d2f1; . . . ;Dg; ð21Þ

Xt2TðpÞ

Xc2CðpÞ

Vcxc;dp;t P kminðp;dÞLp 8p2 P; d2f1; . . . ;Dg; ð22Þ

Xp2PðtÞ

Xc2CðpÞ

Vcxc;d�Dp;tp;t 6 kmaxðt;dÞLt 8t 2 T; d2f1; . . . ;Dg; ð23Þ

Xp2PðtÞ

Xc2CðpÞ

Vcxc;d�Dp;tp;t P kminðt;dÞLt 8t 2 T; d2f1; . . . ;Dg; ð24Þ

xc;dp;t 2Zþ 8p2 P; t 2 TðpÞ; c2CðpÞ; d2f1; . . . ;Dg; ð25Þ

zc;dp;t 2f0;1g or ½0;1� 8p2 P; t 2 TðpÞ; c2CðpÞ; d2f1; . . . ;Dg: ð26Þ

The objective function (19) is to minimize the total transporta-tion cost. Constraints (20) define the x variables in terms of the zvariables. Constraints (21) and (22) ensure that the inventory levelin each platform p at day d is not less than the minimum inventorycapacity and does not exceed the maximum inventory capacity.Constraints (23) and (24) avoid the inventory level in each terminalt at day d to exceed the maximum inventory capacity and to be lessthan zero. At last, constraints (25) define the x variables as nonneg-ative integers and constraints (26) define the z variables as binariesor continuous variables in the range zero and one. Note that con-straint (20) ensures the integrality of variables z regardless of theirdefinitions.

Proposition 2.1. BF ; RKC and ARC have the same linearrelaxation.

Proof. We will prove the proposition in two steps. First, we willshow that RKC is obtained from BF without changing its linearrelaxation solution set over the z variables. Second, we will showthat ARC is obtained from RKC without changing its linear relax-ation solution set over the z variables. Now, consider the BF . Giventhe constraints (2) and expanding ep;d�1, we will have:

ep;d ¼ ACp;d �X

t2TðpÞ

Xd

s¼1

Xc2CðpÞ

Vczc;sp;t 8p 2 P; d 2 f1; . . . ;Dg

From (7),

ACp;d�kmaxðp;dÞLp6ACp;d�X

t2TðpÞ

Xd

s¼1

Xc2CðpÞ

Vczc;sp;t 6ACp;d�kminðp;dÞLp

8p2 P; d2f1; . . . ;Dg

which is equivalent to (15) and (16). The same procedure can beused to prove that (3) and (8) have the same linear relaxation solu-tion set of (17) and (18) over the z variables. Thus, RKC has thesame linear relaxation solution set over the z variables as BF .Now, consider the RKC. Define the x variables as follows:

xc;dp;t ¼

Xd

s¼1

zc;sp;t

and replace the right-hand side of the previous equality by xc;dp;t in

the RKC. Including the constraints (20), we obtain the ARC

formulation, proving that it has the same linear relaxation solutionset as the RKC over the z variables. h

The same proof can be applied for NF ; KC and AC, where AC isthe accumulated cascading formulation without rounding, leadingto the following proposition:

Proposition 2.2. NF ; KC and AC have the same linear relaxation.

2.4. Dantzig–Wolfe decomposition

Here, we present a Dantzig–Wolfe decomposition (DWD)(Dantzig & Wolfe, 1960) for the problem using the (RKC) formula-tion as starting point. The resulting reformulation is primarily usedto derive improved lower bounds for the original problem via Col-umn Generation (CG). The results obtained with this formulationare used as a benchmark to analyze the linear relaxation of theimplemented formulations of this paper. Furthermore, we observethat the stronger linear relaxation provided byDWD helps to selectz variables that are suitable for building good feasible solutions.Motivated by this observation, we propose a CG based heuristicin Section 3 which demonstrates the importance of the DWDformulation.

The following notation is considered for the reformulation: letSp be the set of all feasible solutions for a platform p 2 P, let Vt;d

p;s

be the amount of product shipped from a platform p 2 P to termi-nal t 2 TðpÞ at a day d in a solution s 2 Sp, and let Cp;s be the cost of asolution s 2 Sp for a platform p 2 P. Binary variables kp;s indicate if asolution s 2 Sp for a platform p 2 P is used. The reformulation ob-tained after applying the Dantzig–Wolfe decomposition, the socalled Dantzig–Wolfe Master ðDWMÞ, is the following:

ðDWMÞ minXp2P

Xs2Sp

Cp;skp;s; ð27Þ

subject toXs2Sp

kp;s¼1 8p2P; ð28Þ

Xp2P

Xs2Sp

Xd

s¼1

Vt;s�Dp;tp;s kp;s P

�ACt;d

Lt

� �Lt 8t2T; d2f1; . . . ;Dg; ð29Þ

Xp2P

Xs2Sp

Xd

s¼1

Vt;s�Dp;tp;s kp;s6

CAPt�ACt;d

Lt

� �Lt 8t2T; d2f1; . . . ;Dg; ð30Þ

kp;s 2f0;1g 8p2P; s2 Sp: ð31Þ

The objective function (27) aims to minimize the sum of trans-portation costs. Constraints (28) ensure that exactly one solutions 2 Sp variable is chosen for each platform p 2 P. Constraints (29)avoid the inventory level at each terminal to be less than zero. Con-straints (30) ensure that the maximum inventory capacity of eachterminal will not be exceeded. Finally, constraints (31) define the kvariables as binaries.

2.4.1. Pricing subproblemGiven the large number of variables inDWM formulation, its di-

rect use is impractical for large instances. To overcome this issue, aColumn Generation (GC) procedure is often used in order to solvethe linear programming relaxation of DWM. This procedure isstarted by considering only a subset of its variables. The problemwith such subset of variables is called the Restricted Master Prob-lem (RMP). At each iteration of the CG procedure, the RMP is solvedand the dual variables of its optimal solution are used to generatenew k variables by solving the Pricing Subproblem. A new k variableis added to RMP if its reduced cost, given by the objective functionvalue of the Pricing Subproblem, is negative. If, at a given iteration,it is no longer possible to generate a k variable with negative re-duced cost, the procedure is finished and the current solution forRMP is the optimal solution for the linear relaxation of DWM.

Page 5: Formulations for a Problem of Petroleum Transportation

Fig. 1. Dynamic programming with two lot sizes.

Table 1Dealing with fractional production.

Originalproduction

Accumulatedproduction

Originalcapacity

Adjustedcapacity

Adjustedproduction

2.75 2.75 6 5 22.75 5.5 6 5 32.75 8.25 6 5 32.75 11 6 6 32.75 13.75 6 5 2

86 L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90

Let pp be the vector containing the dual variables associated toconstraints (28), ht;d be the vector containing the dual variablesassociated to constraints (29), and rt;d be the vector containingthe dual variables associated to constraints (30). The binary vari-able zc;d

p;t indicates if the platform p sends a tanker of class c to ter-minal t at day d. Thus, for each platform p, a Pricing Subproblem isdefined as follows.

ðSPpÞ minX

t2TðpÞ

Xc2CðpÞ

XD

d¼1

ð2FcDp;t�Vcðht;dþDp;t þrt;dþDp;t ÞÞzc;dp;t �pp; ð32Þ

subject to

Xt2TðpÞ

Xd

s¼1

Xc2CðpÞ

zc;sp;t Vc 6ACp;d 8d2f1; . . . ;Dg; ð33Þ

Xt2TðpÞ

Xd

s¼1

Xc2CðpÞ

zc;sp;t Vc P DAp;d 8d2f1; . . . ;Dg; ð34Þ

zc;dp;t 2f0;1g 8t2 TðpÞ; c2CðpÞ; d2f1; . . . ;Dg: ð35Þ

The purpose of the Pricing Subproblem is to generate a k vari-able to be added to the RMP with the lowest reduced cost, whichis represented by the objective function (32). Constraints (33)avoid the inventory level at each platform to be less than zero. Con-straints (34) ensure that the maximum inventory capacity at eachplatform will not be exceeded. At last, z variables are defined asbinary by (35). Even though the Pricing Subproblem is presentedas an Integer Linear Program, it can be solved more efficiently bydynamic programming.

3. Column generation-based heuristic

This section presents the column generation-based heuristic(CGH). First, we show the dynamic programming algorithm tosolve the subproblems faster than the MIP of subSection 2.4.1.Next, we show the heuristic procedure.

3.1. Pricing algorithm

In the following definitions we assume that the elements of theset C are arbitrarily numbered from 1 to jCj. We define our dynamicprogramming cost table for platform p with Costpðd; c; eÞ being thesmallest partial reduced cost from day d to the end of the timehorizon, considering only the tanker classes c; . . . ; jCj at day d(and all classes for the next days), and inventory level e at thebeginning of day d. Let Costpðd; c; eÞ ¼ 0 for d ¼ Dþ 1. The dynamicprogramming recursion is the following:

Costpðd;c;eÞ¼

mina2P1;p;c;d;e

Costp d;cþ1;eþPp;d�Xt2T

Vcat

!þXt2T

Cc;dp;t at

( ); c¼1

mina2P2;p;c;d;e

Costp d;cþ1;e�Xt2T

Vcat

!þXt2T

Cc;dp;t at

( ); 1< c< jCj

mina2P3;p;c;d;e

Costp dþ1;1;e�Xt2T

Vcat

!þXt2T

Cc;dp;t at

( ); c¼ jCj;

8>>>>>>>>>><>>>>>>>>>>:

where

P1;p;c;d;e ¼ fa 2 f0;1gjTjj0 6 eþ Pp;d �Xt2T

Vcatg;

P2;p;c;d;e ¼ fa 2 f0;1gjTjj0 6 e�Xt2T

Vcatg;

P3;p;c;d;e ¼ fa 2 f0;1gjTjj0 6 e�Xt2T

Vcat 6 CAPpg;

and Cc;dp;t ¼ 2FcDp;t � Vcðht;dþDp;t þ rt;dþDp;t Þ. The optimal reduced cost

for platform p is given by Costpð1;1; ep;0Þ.The Dynamic Programming algorithm is pseudopolynomial. Its

computational complexity depends on the maximum inventory

capacity of the platforms. For the harder class of instances, its per-formance is quite superior to when a MIP is used. Fig. 1 shows anexample with two lot sizes ðC ¼ f1;2gÞ. The daily production is al-ways integer. There are two terminals with route to all platforms.Each lot size can be sent only once per day, for each terminal. Inthis example, the inventory capacity of the platform is CAPp ¼ 4units, the daily production is Pp;d ¼ 2 units, d 2 f1;2;3g, which isadded between the first and the second lot size, and the initialinventory is 2 units. The first lot has size V1 ¼ 1 unit and costs1.5. The second lot has size V2 ¼ 2 units and costs 2. Both can besent to all terminals, with the same cost. If there are two or moreterminals to send a lot size with different costs, the algorithmchooses always the cheapest one according to the reduced costs.

In Fig. 1, the costs for each inventory level, day and lot size arerepresented by the circles. At d ¼ 1 and c ¼ 1, there is an initialinventory of 2 units and the lowest cost is Costpð1;1;2Þ ¼ 4, whichis also the optimal cost. From d ¼ 1 and c ¼ 1 to d ¼ 1 and c ¼ 2,there are three possibilities: (i) to send one lot (at ¼ 1, for some t),resulting in inventory of 3 units and cost 3þ 1:5; (ii) to send two lots(at ¼ 1;8t 2 T), resulting in inventory of 2 units and cost 2þ 3; or(ii) do not send a lot ðat ¼ 0; 8t 2 TÞ, resulting in inventory of 4units and cost 4. The third option is chosen. From d ¼ 1 andc ¼ 2 to d ¼ 2 and c ¼ 2, no lot is sent. Then, one lot is sent fromd ¼ 2 and c ¼ 2 to d ¼ 3 and c ¼ 1, and from d ¼ 3 and c ¼ 2,resulting in an inventory of 4 units at the end of the time horizon.

The main advantage of the dynamic programming procedure isthat the economy of scale on the lot sizes does not impact on theruntime, differently of the MIP formulation where we observe amajor impact. This happens because the magnitude of the econ-omy of scale only affects the reduced cost values, not the numberof calculations made by the algorithm.

For the case where the daily production is fractional in at leastone day, we need to do a preprocessing step. We accumulate thedaily productions, and if the accumulated value is fractional, wedecrease the inventory capacity by one unit to have space for thefractional part. The adjusted daily production is the integer partof the accumulated production, not added yet to the inventory.Table 1 shows an example with fractional production where theinventory capacity has 6 units. The first column shows the dailyoriginal production, which is fractional and equal 2.75 for all days.The second column shows the accumulated production. Note thatthere is only one integer value. Third column shows the originalcapacity, 6 units. Fourth column shows the adjusted capacity,

Page 6: Formulations for a Problem of Petroleum Transportation

L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90 87

which is equal the original capacity if the accumulated productionis integer, or equal the original capacity minus one, if the accumu-lated capacity is fractional. The fifth column shows the adjustedproduction, which is equal the integer part of the accumulated pro-duction not yet added to the inventory.

3.2. Column generation-based heuristic procedure

The proposed heuristic uses the column generation proceduredescribed in SubSection 2.4 with the pricing algorithm presentedin the previous subsection to choose only some z variables ofARC with good chance to appear in the optimal solution. Thisreduction in the number of variables allows the branch-and-boundalgorithm to find fast a feasible solution, or prove that no solutioncan be found with these variables.

Such Column Generation-based heuristic is shown in Algorithm1. First, the linear relaxation of the DWM formulation is solved bycolumn generation (line 1). Next, the reduced costs of all columnspresent in the final RMP are calculated using the values of the dualvariables in the last iteration of the column generation algorithm(line 2). As these columns must have non-negative reduced costs,we then sort such columns in ascending order according to theirreduced costs (line 3). The parameters min and max are initializedin line 4. In line 5, the parameter k is initialized. This parameterindicates that the kth first columns of the final RMP must be con-verted into variables of ARC. At each iteration of the main loop(lines 6–16), the ARC formulation is populated with only the zvariables corresponding to the k columns with least positive re-duced costs in the final RMP (line 7). The ARC formulation runfor up to five seconds (line 8). If a new feasible solution is obtained(line 9), we keep the solution if it improves the best found so far. Ifthe branch-and-bound enumeration was not completed within thegiven five seconds (line 12), we finish the loop. Otherwise, we in-crease k by ten (line 15).

It may happen that some platform has no chosen z variable inthe reduced ARC formulation. If this is the case, the resultingMIP will be trivially infeasible and a larger value for k will be tried.When k is larger than the number of RMP columns with reducedcost zero, every platform will have at least one converted column.

The time limit used in line 8 has been chosen based on preli-minary experiments where we observed that most best feasiblesolutions found by the algorithm were attained when solving aMIP exactly in less than five seconds. Thus, this time limit seemsto give a good compromise between solution quality and runtime.

Algorithm 1. Column Generation based heuristic

1: Run column generation to solve linear relaxation of DWM2: Calculate the reduced cost of the columns using the dual

variables of the last iteration3: Sort the columns according to their reduced costs4: min 30; max 1505: k min6: while k 6 max do7: Convert k columns of DWM with least positive reduced

costs into variables of ARC8: Run ARC for up to five seconds9: if feasible solution found then10: Keep the solution if the best found11: end if12: if enumeration incomplete within five seconds then13: Exit while14: end if15: k kþ 1016: end while

4. Computational results

In this section we show the results obtained by the describedformulations using the instances proposed in Rocha et al. (2011)and a new set of harder instances. All the tests, including thosefor the formulation with the best performance proposed by Rochaet al. (2011) (HullRel), were run in a PC with an Intel Core 2 QuadQ8300 2.50 gigahertz CPU, 2 gigabytes RAM under Windows 7 OSusing ILOG CPLEX 12.1. All instances have 9 platforms and 2 termi-nals, and are divided into 4 classes of 25 instances each with thefollowing characteristics:

� only one lot size (easy);� one lot size per route (medium);� two lot sizes per route (hard);� five lot sizes per route and all platforms are allowed to send

product to all terminals (harder new instances).

In this work, the results obtained for the first class of instances(easy) will not be reported, due to the fact that such instances areeasily solved by BF combined with a commercial solver. The re-sults for each instance class are shown separately. The tables con-tain, for each formulation, the average results obtained. Among theresults, two performance measures are shown, given by:

gapLB ¼ 100� UBb � LBf

UBb; ð36Þ

gapUB ¼ 100� UBf � UBb

UBb; ð37Þ

where UBb is the best integer feasible solution found among all for-mulations, LBf is the lower bound for a given formulation, and UBf isthe best integer feasible solution found by a given formulation.

The results obtained for the medium and hard classes of in-stances are shown in Tables 2 and 3, respectively. In the tables,the column Formulation shows the formulations tested. The for-mulation ARCbin is the ARC formulation with z variables as bina-ries, ARCcont is the ARC formulation with z variables ascontinuous between 0 and 1 and AC is the ARC formulation with-out rounding the inventory. Column Time (seconds) shows theaverage execution time in seconds for each class of instances. Forall tests performed, the maximum execution time allowed for eachinstance is 720 seconds. Column gapLB rootlp (%) shows the aver-age gapLB at the root node before CPLEX cuts, calculated using thegapLB of each instance given by (36) considering LBf as the lowerbound at the root node before CPLEX cuts. Column gapLB root(%) shows the average gapLB at the root node after CPLEX cuts, alsocalculated using the gapLB of each instance given by (36) consider-ing LBf as the lower bound at the root node after CPLEX cuts.Column gapLB final (%) contains the average gapLB at the end ofthe execution time of each instance and it is also calculated by(36), where LBf is the lower bound at the end of the execution timeof each instance. Column gapUB (%) shows the average gapUB ob-tained at the end of executions and calculated by (37) for each in-stance. Column No. of nodes contains the average number ofnodes solved at the branch-and-bound algorithm. Finally, columnInst. solved shows the number of instances of each class solvedto optimality.

Concerning the gapLB rootlp, the results include the CPLEXpreprocessing routines. If they were not used, NF ; KC and AC(see Proposition 2.2) would provide the same relaxation at rootnode of the branch-and-bound tree, and the same would happenwith BF ; RKC and ARC (see Proposition 2.1). Indeed, for themedium and hard instance classes, the average values of the linearprogramming relaxation of the rounded formulations are 0.42 and3.04, respectively, and for the formulations without rounding are

Page 7: Formulations for a Problem of Petroleum Transportation

Table 2Average results and number of instances solved for the mathematical formulations and results taken from Rocha et al. (2011) (HullRel) for the medium class of instances.

Formulation Time (seconds) gapLB rootlp gapLB root (%) gapLB final (%) gapUB (%) No. of nodes Inst. solved

NF 720 1.41 1.19 0.83 – 2,595,996 0BF 685.47 0.36 0.30 0.24 – 3,944,016 2KC 405.50 0.35 0.23 0.12 0.00 569,080 11RKC 405.50 0.35 0.23 0.12 0.00 785,543 11AC 30.65 0.34 0.19 0.00 0.00 17,288 24ARCbin 31.76 0.33 0.20 0.00 0.00 12,319 24ARCcont 30.61 0.33 0.18 0.00 0.00 14,663 24DWM – 0.33 – – – – –HullRel 351.53 – – – 0.04 – 13

Table 3Average results and number of instances solved for the mathematical formulations and results taken from Rocha et al. (2011) (HullRel) for the hard class of instances.

Formulation Time (seconds) gapLB rootlp gapLB root (%) gapLB final (%) gapUB (%) No. of nodes Inst. solved

NF 720.00 3.14 2.74 1.98 – 1,294,071 0BF 720.00 2.98 2.62 1.95 – 1,326,605 0KC 687.51 2.84 1.76 1.11 1.07 157,950 2RKC 664.28 2.84 1.76 1.11 1.07 156,079 2AC 103.93 2.38 1.32 0.77 0.04 55,632 22ARCbin 111.13 2.38 1.30 0.77 0.04 52,975 22ARCcont 102.94 2.38 1.30 0.77 0.04 57,962 22DWM – 1.24 – – – – –HullRel 691.40 – – – 1.24 – 1

Table 4Size of all formulations for an instance of the harder class.

NF BF KC RKC ARC

Number of variables 3030 3030 2700 2700 5400Number of constraints 330 330 660 660 3360a

Number of nonzero coefs 6060 6060 167,400 167,400 18,900b

a 80% of these constraints are in constraints (20).b 43% of these variables are in constraints (20).

88 L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90

1.47 and 3.19. Without CPLEX preprocessing, DWM would havethe best gapLB rootlp for all instance classes. Yet, for the hard classof instances, DWM found the best average gapLB at the root nodeeven when the CPLEX preprocessing routines and cuts are usedfor the other formulations.

In Tables 2 and 3 one can observe that the NF and BF have theworst performance in comparison with the others. The gapUB ofthem is not shown because these formulations found few feasiblesolutions, so average value is not appropriate. The BF was capableof solving only two instances to optimality, both of the mediumclass. This fact impacts in the average execution time for this for-mulation, which is close to the maximum allowed for each in-stance. For the hard class of instances, as this formulation wasnot able to solve any instance to optimality, the average time is ex-actly equal to the maximum allowed for each instance. The NF didnot solve any instance, so the average time is exactly 720 for bothclasses of instances. On the other hand, since these are more com-pact formulations with respect to the remaining ones in the sensethat it has less nonzero coefficients in the matrix, a significantlylarger number of nodes were solved at the branch-and-boundalgorithm.

Comparing KC with RKC and AC with ARCcont , the performanceare similar. We can conclude that formulation NF is dominated byBF but the effect of the inventory rounding in KC and AC is notnoticeable, even for GCD of lot sizes greater than one.

In comparison with BF , the RKC formulation achieved a betterperformance, being able to solve 13 out of 50 instances, where 11instances belong to the medium class and 2 are hard instances.This occurs because in the RKC formulation the constraints(10)–(13) are recognized by CPLEX as knapsack constraints(for (11) and (12) all binary variables are replaced with theircomplements to derive equivalent knapsack constraints). As aresult, CPLEX is able to add specialized cuts, e.g. cover cuts. Thiseffect can be observed by comparing the root lower bounds ofBF and RKC in Tables 2 and 3.

The best performance was obtained by the ARC formulation,outperforming the literature results reported in Rocha et al.(2011). This formulation was able to solve 24 instances of the med-ium class and 22 hard instances in a significantly small average

execution time. For the 4 instances not solved by this formulation,it found 3 of the best known feasible solutions. For the 49 remain-ing instances, the gapUB is equal to zero. Thus, the average gapUB isequal to zero for the medium class of instances and close to zerofor the hard instances.

The success of this formulation can be explained by threemain reasons: (i) the number of nonzero coefficients in ARC ismuch smaller than in RKC (and comparable to that of BF ) be-cause each x variable in the constraints (21)–(24) replaces asum of many z variables; (ii) as in the RKC, CPLEX recognizesthe constraints (21)–(24) as knapsack constraints; and (iii) thex variables are more suitable for branching. To explain the item(i), we observe that the number of nonzero coefficients ofNF ; BF and ARC is OðjPkTkCjDÞ while for KC and RKC isOðjPkTkCjD2Þ. Table 4 compares the sizes of all formulations foran instance of the harder class. To explain the item (iii), we referto Fig. 2. The graph of Fig. 2(a) represents the z variables associ-ated to one route for the whole time horizon: the arcs representthe variables, the first column of nodes represents the sourceplatform and the second column of nodes represents thedestination terminal. Now, assume that z15 has a fractional valuein a relaxed solution for the RKC formulation. If z15 is selectedas a branching variable and forced to assume the value one,the relaxed solution will probably change significantly. However,when z15 is forced to be zero, it is likely that the relaxation givesthe same lower bound if there is sufficient slack in the invento-ries of both p1 and t1 to send the same amount of product oneday latter, i.e. to set z16 to the same value as z15 had before

Page 8: Formulations for a Problem of Petroleum Transportation

Fig. 2. (a) Representation of a set of z variables corresponding to the same route andtanker class. (b) Branching on z variables. (c) Branching on x variables.

Table 6Average results and number of feasible solutions found for the column generation-based heuristic with and without violation allowed in terminals for the harder class ofinstances generated.

Formulation Time (seconds) gapUB (%) Feasible found

CGH with violation 11.5 0.12 16CGH no violation 13.2 0.40 14

L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90 89

branching. This observation is depicted in Fig. 2(b). This charac-teristic, when replicated in several parts of the solution, gener-ates an undesirable symmetry that prevents finishing thebranch-and-bound enumeration even in instances where the rootgap is very small. As shown in Fig. 2(c), the use of x variablesbreaks this symmetry. Because of that, the ARC formulationwas tested in two ways: with the z variables as binaries(ARCbin), and with these variables as continuous between zeroand one (ARCcont). Comparing both ways in Tables 2 and 3, onecan see that the ARCcont formulation shows a slight improvementregarding the average gapLB at the root node in medium and hardinstances, and a little improvement concerning the average finalgapLB in the hard instances. Thus, although the difference betweenthe two assumptions for the z variables is not expressive, we con-sider that the ARCcont formulation obtained the best results for theinstances of the medium and hard classes.

The results obtained for all formulation for the harder class ofinstances are shown in Table 5. For this class of instances, we testthe original ARC and a modified version of this formulation. Themodification consists of allowing both inventory shortages andmaximum inventory capacities violations in the consumption sites,keeping the violation cost high enough to avoid changing the opti-mal solution. For this modification, we include two new sets ofcontinuous variables:

� violmaxt;d : maximum capacity inventory violation at terminal

t and day d,� violmin

t;d : inventory shortage at terminal t and day d.

Let Cviol be the cost of inventory violations. As we do not want tochange the optimal solution, we use a large enough value. The newobjective function will be as follows:

Table 5Average results and number of instances solved for the mathematical formulations for the

Formulation Time (seconds) gapLB rootlp gapLB root (%)

BF 720.00 8.49 7.50RKC 720.00 8.26 6.53ARC 637.64 7.81 5.88ARCv iol 642.36 7.81 5.89DWM – 4.74 –

MinXp2P

Xt2TðpÞ

Xc2CðpÞ

2FcDp;txc;Dp;t þ

Xt2T

XD

d¼1

Cviol violmint;d þ v iolmax

t;d

� �ð38Þ

We also include the new variables violmaxt;d in the constraints (23)

and violmint;d in the constraints (24), as follows:X

p2PðtÞ

Xc2CðpÞ

Vcxc;d�Dp;tp;t �violmax

t;d 6 kmaxðt;dÞLt 8t2 T; d2f1; . . . ;Dg ð39Þ

Xp2PðtÞ

Xc2CðpÞ

Vcxc;d�Dp;tp;t þviolmin

t;d P kminðt;dÞLt 8t 2 T; d2f1; . . . ;Dg ð40Þ

For the harder class of instances, the GCD is always one. Round-ing the inventory just drops the fractional part of the accumulatingproduction or consumption. So, we show only the results of therounding formulations. To find optimal or near optimal solutionsfor all instances of this class (to be used as the UBb value), werun each instance for many hours, using as initial feasible solutionthe best solution found in previous tests. Again the ARC has thebest performance. Comparing this formulation with and withoutviolation, we can see a good improvement in the quality of thefeasible solutions. This occurs because, when allowing violation,the number of feasible solutions increases, facilitating the CPLEXheuristic procedures to construct and improve feasible solutions.Only the knapsack cascading formulations find feasible solutionsfor all instances, but the average gapUB of the ARC is better becausewhen this formulation finds a feasible solution for an instance, itusually improves the solution faster than the knapsack cascadingformulations.

Concerning the DWM, it obtained the best average root relaxa-tion, even when the CPLEX preprocessing routines and cuts areconsidered for the other formulations. Without CPLEX preprocess-ing and cuts, the average value of the linear programming relaxa-tion for all formulations is 8.82.

The results obtained for the column generation-based heuristicare shown in Table 6 for the harder class of instances. ColumnFeasible Found shows the number of instances where the heuris-tic finds a feasible solution, and column gapUB (%) shows theaverage gapUB for these solutions. We also test the heuristic includ-ing violation in the ARC. Comparing the CGH with and withoutviolation, we can see a good improvement when the violation isallowed. This occurs because the number of feasible solutions in-creases. The average gapUB for both cases shows that, as expected,the heuristic finds good feasible solutions. For the instances wherethe heuristic finds feasible solutions, the gapUB of the ARCviol for-mulation is 0.69. Moreover, this formulation reaches feasibilityfor 6 out of the 9 instances where the heuristic fails to find feasiblesolutions. However, the average time to obtain a feasible solution

harder class of instances generated.

gapLB final (%) gapUB (%) No. of nodes Inst. solved

6.37 – 562,356 05.34 10.9 107,204 05.16 6.20 137,416 35.19 1.85 110,018 3– – – –

Page 9: Formulations for a Problem of Petroleum Transportation

90 L. Aizemberg et al. / European Journal of Operational Research 237 (2014) 82–90

in these cases is 245.9 seconds. The average run time of bothvariants of the heuristic is low, with a minimum of 7 secondsand a maximum of 16.78 seconds.

One may think that, as the knapsack cascading formulationfinds feasible solutions for all instances, the heuristic should beused with this formulation. But our tests show that theaccumulated cascading formulation has a better performance. Thishappens because the heuristic decreases the variable set, so it iseasier to find a feasible solution. Comparing both formulations,when ARC finds a feasible solution, usually the solution is betterthan RKC.

5. Conclusions

This work presented a modeling study for the oil transportationproblem. Three classes of instances taken from the literature wereused to test the formulations. Given the good results obtained, anew class was generated with harder instances.

Six formulations were devised: the Natural Formulation (NF ),the Basic Formulation (BF ), the Knapsack Cascading Formulation(KC), the Rounded Knapsack Cascading Formulation (RKC), theAccumulated Rounded Cascading Formulation (ARC), and theDantzig–Wolfe Master Formulation (DWM). The first five formula-tions were tested with the CPLEX branch-and-cut algorithm, andthe best results found used the ARC formulation and its variants.Without the CPLEX cuts, the DWM formulation achieved the bestlower bounds, which motivated the development of a column gen-eration-base heuristic.

In comparison with the results reported by Rocha et al. (2011),the results obtained in this work show a good improvement. Thisachievement is due only to a better understanding of the problem,incorporated in the mathematical formulation, reducing the com-putational effort.

Rounding the inventories improves the formulation only forNF , not being noticeable when applied in RKC and ARC.

The harder class of instances has been used to evaluate the abil-ity of the best formulations to find good feasible solutions whenthe optimality could not be proved. In this case, the ARC formula-tion achieved the best performance when allowing inventorycapacity violation in the demand sites, but keeping the violationcost high enough to ensure that the cost of the optimal solutionwill not change. The column generation-based heuristic used forthe harder class of instances found good feasible solutions in asmall computational time. We showed that it is also possible to im-prove the quality of the feasible solutions found by this heuristicallowing inventory capacity violations.

References

Aizemberg, L., Uchoa, E., Pessoa, A., Rocha, R., Coutinho, R., & Paula, U. C., Jr. (2011).Optimisation Model for the problem of oil transportation with local search by

MIP and simulation. In Proceedings of XLIII SBPO 2011, Ubatuba–SP, Brazil, inPortuguese.

Bahl, H. C. (1983). Column generation based heuristic algorithm for multi-itemscheduling. IIE Transactions, 15(2), 136–141. http://dx.doi.org/10.1080/05695558308974624.

Banaszewski, R. F., Tacla, C. A., Pereira, F. R., Arruda, L. V., & Enembreck, F. (2010).Planning transport of crude oil derivatives with simultaneous auctions. In 2010IEEE international conference on systems man and cybernetics (SMC)(pp. 2820–2827). IEEE.

Boschetto, S. N., Magatão, L., Brondani, W. M., Neves, F., Jr., Arruda, L. V. R., Barbosa-Póvoa, A. P. F. D., et al. (2010). An operational scheduling model to productdistribution through a pipeline network. Industrial & Engineering ChemistryResearch, 49(12), 5661–5682.

Brown, G., & Graves, G. (1981). Real-time dispatch of petroleum tank trucks.Management Science, 27(1), 19–32.

Choi, E., & Tcha, D.-W. (2007). A column generation approach to the heterogeneousfleet vehicle routing problem. Computers & Operations Research, 34(7),2080–2095.

Colvin, M., & Maravelias, C. T. (2011). R&D pipeline management: Taskinterdependencies and risk management. European Journal of OperationalResearch, 215(3), 616–628. http://dx.doi.org/10.1016/j.ejor.2011.06.023. ISSN0377-2217.

Dantzig, G. B., & Wolfe, P. (1960). Decomposition principle for linear programs.Operations Research, 8(1), 101–111.

Furini, F., Malaguti, E., Durain, R. M., Persiani, A., & Toth, P. (2012). A columngeneration heuristic for the two-dimensional two-staged guillotine cuttingstock problem with multiple stock size. European Journal of OperationalResearch, 218(1), 251–260. http://dx.doi.org/10.1016/j.ejor.2011.10.018. ISSN0377-2217.

Ghiani, G., Laporte, G., & Musmanno, R. (2004). Introduction to logistics systemsplanning and control (Vol. 14). Wiley.

Joncour, C., Michel, S., Sadykov, R., Sverdlov, D., & Vanderbeck, F. (2010). Columngeneration based primal heuristics. Electronic Notes in Discrete Mathematics,36(0), 695–702. http://dx.doi.org/10.1016/j.endm.2010.05.088. ISSN 1571-0653.

Magatão, L., Arruda, L. V. R., Neves, F., et al. (2004). A mixed integer programmingapproach for scheduling commodities in a pipeline. Computers & ChemicalEngineering, 28(1–2), 171–185.

MirHassani, S. (2008). An operational planning model for petroleum productslogistics under uncertainty. Applied Mathematics and Computation, 196(2),744–751.

Moccia, L., Cordeau, J.-F., Monaco, M. F., & Sammarra, M. (2009). A columngeneration heuristic for a dynamic generalized assignment problem. Computers& Operations Research, 36(9), 2670–2681. http://dx.doi.org/10.1016/j.cor.2008.11.022. ISSN 0305-0548.

Moro, L., & Pinto, J. (2004). Mixed-integer programming approach for short-termcrude oil scheduling. Industrial & Engineering Chemistry Research, 43(1), 85–94.

Mourgaya, M., & Vanderbeck, F. (2007). Column generation based heuristic fortactical planning in multi-period vehicle routing. European Journal ofOperational Research, 183(3), 1028–1041. http://dx.doi.org/10.1016/j.ejor.2006.02.030. ISSN 0377-2217.

Rocha, R. (2010). Petroleum supply planning: models, reformulations and algorithms,Ph.D. thesis, Departamento de Informática, PUC-Rio.

Rocha, R., Grossmann, I. E., & Poggi de Aragão, M. V. S. (2011). Cascading knapsackinequalities: Reformulation of a crude oil distribution problem. Annals ofOperations Research, 1–18.

Sawik, T. (2011). Scheduling in supply chains using mixed integer programming. Wiley.ISBN 9781118029091. <http://books.google.com.br/books?id=BuOLXKt7cKsC>.

Yavuz, B., Aras, N., Kuban, I., & Ersoy, C. (2010). A column generation based heuristicfor sensor placement, activity scheduling and data routing in wireless sensornetworks. European Journal of Operational Research, 207(2), 1014–1026. http://dx.doi.org/10.1016/j.ejor.2010.05.020. ISSN 0377-2217.