Download as pdf or txt
Download as pdf or txt
You are on page 1of 33

A New Algorithm for MINLP Applied to Gas

Transport Energy Cost Minimization

Björn Geißler, Antonio Morsi, and Lars Schewe

Abstract In this article, we present a new algorithm for the solution of noncon-
vex mixed-integer nonlinear optimization problems together with an application
from gas network optimization, the gas transport energy cost minimization prob-
lem. Here, the aim is to transport gas through the network at minimum operating
cost. The proposed algorithm is based on the adaptive refinement of a new class of
MIP-relaxations and has been developed within an industry project on gas network
optimization. Since therefore the implementation is not as general as it could be,
our computational results are restricted to instances from gas network optimization
at this point of time. However, as these problems are real-world applications and
turn out to be rather hard to solve with the aid of state-of-the-art MINLP-solvers we
believe that our computational results reveal the potential of this new approach and
motivate further research on the presented techniques.

1 Introduction

In Martin Grötschel’s work, the development of the theory of mixed-integer linear


programming was always pushed forward in tandem with the solution of application
problems. A rich source for such problems was the design of networks, with the
primary application being the design of communication networks [9–13].
In this article, we build on the vast improvements in the understanding and al-
gorithmic tractability of mixed-integer linear programs. This solid foundation on
which we build would not be available without the work of Martin Grötschel and
his coauthors.

B. Geißler (B) · A. Morsi · L. Schewe


Department Mathematik, Friedrich-Alexander-Universität Erlangen-Nürnberg, Cauerstr. 11,
91058 Erlangen, Germany
e-mail: bjoern.geissler@math.uni-erlangen.de
A. Morsi
e-mail: antonio.morsi@math.uni-erlangen.de
L. Schewe
e-mail: lars.schewe@math.uni-erlangen.de

M. Jünger, G. Reinelt (eds.), Facets of Combinatorial Optimization, 321


DOI 10.1007/978-3-642-38189-8_14, © Springer-Verlag Berlin Heidelberg 2013
322 B. Geißler, A. Morsi, and L. Schewe

The problem we consider, though a rather special mixed-integer nonlinear pro-


gram, offers interesting structure regularly found in other problems. We aim at op-
timizing flow in a natural gas network with supplies and demands. The problem
structure then is essentially determined by conservation laws from physics, tailored
to the commodity natural gas. The objective is to route the gas through the network
with the help of compressors such that the energy cost for the operation of the com-
pressors is minimized. An essential simplification we will make here is to consider
the stationary case as in e.g. [22, 30]. This is justified in so far as it can be of interest
for planning purposes of a network operator to get good solutions for the general
supply/demand scenario without taking into account transient fluctuations.
We propose an algorithm for the solution of nonconvex mixed-integer nonlinear
optimization problems, i.e., optimization problems of the form below, where even
after relaxing the integrality restrictions the remaining nonlinear problem remains
nonconvex. This property precludes the use of standard branch-and-bound tech-
niques as the underlying nonlinear optimization problem is already hard to solve
on its own. The general thrust of our approach is to reformulate the problem in such
a way that we replace the difficult nonconvexities in the original problem with com-
paratively well-understood nonconvexities, namely integrality restrictions. In short,
we reformulate the mixed-integer nonlinear problem as mixed-integer linear prob-
lem. We have already shown such a reformulation [8] that was a proper relaxation
of the underlying mixed-integer nonlinear program. The main problem of this ap-
proach was, however, that we had to fix the precision of the relaxation a priorily
and, thus, had to compute a relaxation of the problem that achieves this bound over
the whole domain. In this article, we show how to extend this approach to be able
to refine the given problem adaptively. This allows us to start with a rather coarse
relaxation of the underlying problem and to refine the relaxation only where needed.
Optimization problems in the design and operation of natural gas networks have
already been considered in the optimization and the engineering literature since the
1960s. Specifically, the minimization of operating costs has been an active topic of
research. For a thorough overview over the literature we refer to the survey [29] and
to the overviews in [16] and [28].
There are a variety of possible solution approaches to general mixed-integer non-
linear programming problems. For an excellent overview we refer to [33]. The al-
gorithm described in [17] is probably closest to our approach. The main difference
is that there the nonconvexities are not expressed via integrality restrictions but are
instead tackled mainly via branching.
We compare our approach to two state-of-the-art general mixed-integer nonlinear
programming solvers: Baron [32] and SCIP [1, 21, 33]. Both use the same general
solving paradigm: Spatial branch-and-bound using linear programming relaxations.
They differ in the way the LP relaxations of the problems are built.
We will first discuss a mixed-integer nonlinear programming model for the gas
transport energy cost minimization problem. The next section is then devoted to
describe the basic relaxation approach from [8]. Building on that, we will describe
our adaptive approach and conclude with computational results on real-world test
instances.
A MINLP Algorithm for Gas Transport 323

Fig. 1 Technical symbols of the network components

2 MINLP-Model
In this section, we derive an MINLP model for the Gas Transport Energy Cost Min-
imization Problem. The model we give is an extended version of the model that is
used to model the problem of validating a nomination, i.e. a vector of supplies and
demands. For a more thorough introduction we refer to [16] or [28]. The difficulty
of the problem has two sources: Nonconvex nonlinear constraints and integrality
constraints. The former are mainly needed to model the physics of the gas flow in
the pipes, the compressors, and the resistors. The integrality constraints are needed
to model switching behavior introduced through valves and furthermore through
restrictions on the possible operation modes of subnetworks. As all of these com-
ponents have a non-negligible influence on the solution of the problem, we have to
model it as a mixed-integer nonlinear programming problem and cannot get by with
a simpler model.

2.1 Network Model

We model a gas network by means of a directed finite graph G = (V, A). The set A
of arcs is partitioned into the set AP of pipes, the set AS of shortcuts, the set AR
of resistors, the set AV of valves, the set ACV of control valves and the set ACS of
compressors. Each control valve a ∈ ACV is part of a so-called control valve station
and each compressor a ∈ ACS is part of a so-called compressor station. Compressor
stations and control valve stations are series-parallel subgraphs of G. We denote the
set of control valve stations by HCV and the set of compressor stations by HCS .
Compressor and control valve stations have pairwise disjoint arc sets, i.e., for all
S, S  ∈ HCV ∪ HCS with S = S  , we have A(S) ∩ A(S  ) = ∅. A summary of the
technical symbols of the components is given in Fig. 1.
The set V of nodes consists of the set VS of entries, the set VD of exits and the set
VI of intersection points of segments, which are neither entries nor exits. Entries are
considered as gas delivering points and exits reflect gas demands, specified by the
quantities flow and pressure. In the following, the gas flow on an arc a = (i, j ) ∈ A
is denoted by qa and the pressure at a node v ∈ V is denoted by pv . We associate
positive gas flow with flow in arc direction, i.e., if gas flows from node i to node j ,
we have qa ≥ 0 and if gas flows from node j to node i we have qa < 0. Gas flow and
pressure are the most important variables. In our model, pressure is measured in bar
and gas flow is given in thousands of standard cubic meters, which is the most com-
monly used unit for flow in gas economy. One standard cubic meter of gas denotes
324 B. Geißler, A. Morsi, and L. Schewe

the quantity of gas, which has a volume of one cubic meter under standard condi-
tions, i.e., at 1.01325 bar, 0 ◦ C and 0 % of humidity according to ISO 2533 or DIN
1343. Nevertheless, in the remainder of this section, we assume all physical values
given in coherent SI units [3], in order to avoid confusing constants in the formulas,
which are due to unit conversions. In our model, we do not distinguish between dif-
ferent gas mixtures. All parameters depending on the chemical composition of the
gas are considered constant.
For each node v ∈ V of the network, we assume minimal and maximal pressure
values pv− and pv+ , the height hv of the node in terms of meters above mean sea
level and a lower and upper bound dv− and dv+ on the demand dv in terms of gas
flow as given. To model a node, we bound the pressure variable pv and the demand
flow variable dv from below and above.

pv− ≤ pv ≤ pv+ ∀v ∈ V, (1)


dv− ≤ dv ≤ dv+ ∀v ∈ V. (2)

Further, the first law of Kirchhoff must hold. This physical law ensures that the
amount of gas flowing into a node v is equal to the amount of gas flowing away
from v minus the amount of gas taken out of the network at v.
 
qe − qe = dv ∀v ∈ V. (3)
e∈δ − (v) e∈δ + (v)

We remark that according to our definition of different node types dv− is non-
negative for exits v ∈ VD , dv+ is non-positive for entries v ∈ VS and dv− = dv+ = 0
for intersection points v ∈ VI .
For each arc a ∈ A of the network, we assume lower and upper bounds qa− , qa+
for the gas flow to be given and bound the corresponding flow variables.

qa− ≤ qa ≤ qa+ ∀a ∈ A. (4)

We proceed with a detailed description of each type of network arc starting with
pipes.

2.2 Pipes

Pipes are the main components of a gas network. A pipe a = (i, j ) ∈ AP is spec-
ified by its length La , diameter Da and the roughness ka of the pipe wall. In our
model, we assume all pipes to be straight and of cylindrical shape. Gas flow in such
a pipe is governed by the system of Euler equations supplemented by a suitable
equation of state. Since pipes in Germany are typically at least one meter beneath
the ground, it is reasonable to assume the temperature T to be constant. In such a sit-
uation, isothermal flow is an appropriate model. Taking into account a non-ideal gas
A MINLP Algorithm for Gas Transport 325

behavior, the relevant equations reduce to the continuity and momentum equation,
together with the equation of state for real gases [4]. The continuity equation
∂ρ ∂ρv
+ =0 (5)
∂t ∂x
states that the rate of change of gas density ρ in time is proportional to the mass flow

M = ρ0 q (6)

across the pipe boundaries. Here,


ρ0 q
v= (7)
Aa ρ
D2 π
denotes the velocity of the gas, where Aa = 4a is the cross sectional area of the
pipe and ρ0 the gas density under standard conditions.
Since our model is intended to be used from a planner’s perspective, where in
contrast to, e.g., real-time optimal control problems for gas networks transient ef-
fects can be safely neglected. Here, a stationary model for the gas flow, where all
time derivatives are zero, is reasonable.
In this case the continuity equation simplifies to
∂ρv ρ0 ∂q ∂q
= =0 ⇔ =0 (8)
∂x Aa ∂x ∂x
meaning that gas flow is constant within a pipe. The momentum equation

∂ρv ∂ρv 2 ∂p dh λa
+ + + gρ + ρ|v|v = 0 (9)
∂t ∂x ∂x dx 2Da
relates all forces acting on gas particles to each other. Here, g denotes the constant
dh
acceleration due to gravity, dx is the slope of the pipe and λa is the so-called friction
factor. Investigating the addends on the left-hand side of the momentum equation
from left to right, the first term represents the flow rate change over time. The sec-
ond term is the so-called impact pressure, followed by the pressure gradient. The
fourth term represents the impact of gravitational forces, which are influenced by
the slope of the pipe. Finally, the last term is the most important one. It represents
the friction forces acting on the gas particles due to rough pipe walls. These forces
are responsible for the major part of pressure drop within pipes. To calculate the
friction factor λa , we use the formula of Nikuradse [27]
   −2
Da
λa = 2 log10 + 1.138 , (10)
ka
which is suitable for large Reynolds numbers. Since we want to perform optimiza-
tion on large transport networks, where we typically have to deal with highly turbu-
lent flows, Nikuradse’s formula matches our requirements [25]. Moreover, for the
326 B. Geißler, A. Morsi, and L. Schewe

derivation of an algebraic pressure loss equation, we have to introduce the equation


of state linking gas pressure and density
ρ0 z0 T0 p
ρ= . (11)
p0 z(p, T )T
Here, T0 and p0 are the standard temperature and standard pressure. The com-
pressibility factor (also called z-factor) z(p, T ) characterizes the deviation of a real
gas from ideal gas. The compressibility factor under standard conditions is denoted
by z0 . The z-factor depends on gas pressure and temperature. Since there is no exact
formula to compute the z-factor, we use the so-called Papay Formula

z(p, T ) = 1 − 3.52pr e−2.26Tr + 0.247pr2 e−1.878Tr (12)

in our model, which is suitable for pressures up to 150 bar [18]. The relative pressure
pr = ppc and the relative temperature Tr = TTc are calculated using the pseudocritical
pressure pc and the pseudocritical temperature Tc . Below the pseudocritical temper-
ature, a gas may be liquefied under pressure. Above the pseudocritical temperature,
this is impossible. At the pseudocritical point (Tc , pc ) in a pressure-temperature
phase diagram, differences between the aggregate phases vanish. Altogether this
enables us to derive an algebraic equation from the Momentum Equation (9) that
describes pressure loss along a pipe.
 
eSa − 1 −Sa
pj = pi − Λa |qa |qa
2 2
e ∀a ∈ AP . (13)
Sa
The constants used in Eq. (13) are given by
ρ0 z0 T0
Sa = 2g(hj − hi ) , (14)
p0 zm T
 2
4 La λa ρ0 p0 zm T
Λa = , and (15)
π Da5 z0 T0
 
min{pi− , pj− } + max{pi+ , pj+ }
zm = z ,T , (16)
2
for each pipe a = (i, j ) ∈ AP . For a derivation of Eq. (13), we refer to [2, 19].
A specialized type of pipe with negligible pressure loss are so-called shortcuts.
Shortcuts do not exist in reality, but are widely used by practitioners to obtain more
descriptive network models. Moreover, they are numerically more stable than using
very short pipes and less error prune for the modeler than using pipes with length
La = 0 for that purpose. The explicit introduction of shortcuts also has the major
advantage to easily separate between pipes that introduce additional complexity and
shortcuts which actually do not affect the complexity. To model a shortcut, we just
require the pressure values at its endpoints to be equal

pi = pj ∀(i, j ) ∈ AS . (17)
A MINLP Algorithm for Gas Transport 327

2.3 Resistors

Besides pipes and shortcuts a gas network contains further passive, i.e., non-
controllable elements like measuring stations, filtration plants, gas-preheaters and
gas-coolers. The only property of these facilities, relevant for our model is that due
to their viscous drag, they cause a loss of pressure. In the following, we subsume all
these elements under the term resistor.
The set of resistors AR = ARv ∪ ARf is further subdivided into the set ARv
of resistors with variable, i.e., flow dependent pressure drop and the set ARf of
resistors causing a fixed loss of pressure.
Each resistor with variable pressure loss a = (i, j ) ∈ ARv is given together with
its drag factor ξa and diameter Da . According to [18], the pressure loss caused by
such a resistor is given by
⎧ 2
⎨ca qa z(pi ,Ti ) for q ≥ 0
pi
p i − pj = ∀a = (i, j ) ∈ ARv , (18)
⎩−c qa2 z(pj ,Tj )
for q ≤ 0
a pj

and with ca = π8ρ2 z0 pT0 ξDa T4 . Similar to the case of pipes, we assume constant temper-
0 0 a
ature Ta = T , for a = (i, j ), and approximate the z-factors z(pi , Ti ) and z(pj , Tj )
by a mean z-factor zm as defined in Eq. (16). Since pressure loss depends on the
flow direction, we introduce a binary variable oa ∈ {0, 1} indicating whether there is
a flow in the opposite direction of a or not. Thus the variable oa should be equal to
zero, if gas flows in direction of the arc a, i.e., qa > 0, and the variable oa should be
set to one if gas flows in the opposite direction, i.e., qa < 0. To reflect the pressure
loss according to (18) we add

pi2 − pj2 + |Δa |Δa = 2ca zm |qa |qa , (19)


Δa = pi − pj , (20)

pi − pj ≤ pi+ − pj− (1 − oa ), (21)

pj − pi ≤ pj+ − pi− oa , (22)

qa+ (1 − oa ) ≥ qa , and (23)


qa− oa ≤ qa (24)

to our model. Here, Δa can be considered as an auxiliary variable for pressure loss.
For each resistor with constant pressure loss a = (i, j ) ∈ ARf , pressure loss
equals an a priori given constant Δa , if there is a non-negligible positive flow
qa ≥ qε through the resistor. If there is a non-negligible negative flow qa ≤ −qε ,
then pressure loss is equal to −Δa . For an absolute flow value less than qε pressure
loss is a linear interpolation between those two values −Δa and Δa . In particular,
there is no pressure loss if the flow is zero. The pressure loss equation for resistors
328 B. Geißler, A. Morsi, and L. Schewe

with fixed pressure loss is summarized by




⎨Δa for q ≥ qε
p i − pj = Δ a + Δa
qε (q − qε ) for qε ≥ q ≥ −qε ∀a = (i, j ) ∈ ARf . (25)


−Δa for q ≤ −qε

To model the relationship according to (25), in the most general form, i.e., for
qa− < −qε and qa+ < qε , we use a univariate piecewise linear function with four
breakpoints (qa− , −Δa ), (−qε , −Δa ), (qε , Δa ), (qa+ , Δa ). The parameter qε > 0 in-
dicates an almost zero flow and is typically chosen as 10−2 . The piecewise linear
function is then modeled using the incremental model, which means to introduce
auxiliary continuous variables δa,1 , δa,2 , δa,3 and binary variables za,1 , za,2 and link
them with additional constraints
 
qa = qa− + qε − qa− δa,1 + 2qε δa,2 + qa+ − qε δa,3 , (26)
Δij = −Δa + 2Δa δa,2 , (27)
δa,2 ≤ za,1 ≤ δa,1 , (28)
δa,3 ≤ za,2 ≤ δa,2 , (29)
δa,1 ≤ 1, (30)
δa,3 ≥ 0. (31)

2.4 Valves

The simplest type (at least from a discrete point of view) of controllable elements in
a gas network is a valve. Valves can either be open or closed. An open valve causes
no pressure drop, while a closed valve restricts gas from passing. The pressures at
the end nodes of the valve are decoupled in this case.
To model the state of a valve a = (i, j ) ∈ AV , we introduce a switching variable
sa ∈ {0, 1}. The variable sa is equal to one, if and only if the valve is open. A valve
is represented in our model as follows:

qa+ sa ≥ qa , (32)
qa− sa
≤ qa , (33)
 +
pj − pi− sa + pj − pi ≤ pj+ − pi− , (34)
 +
pi − pj− sa + pi − pj ≤ pi+ − pj− . (35)
A MINLP Algorithm for Gas Transport 329

Fig. 2 A control valve station

2.5 Control Valves

For example, when gas is transported from a large conveyor pipeline into a regional
subnetwork, it is necessary to reduce pressure manually. For that purpose, control
valves are usually located at such transition points.
Just like a valve, a control valve can be either closed or open. When it is closed,
gas cannot pass and the pressure values at its incident nodes are decoupled. With
an open control valve, pressure can be reduced within a given range [Δ− +
a , Δa ]. As
in case of a valve, we introduce a binary variable sa ∈ {0, 1} for all control valves
a = (i, j ) ∈ ACV , to model whether it is open or closed. To reflect the properties of
control valves in our model, we add the following constraints:

qa+ sa ≥ qa ∀a = (i, j ) ∈ ACV , (36)


qa− sa ≤ qa ∀a = (i, j ) ∈ ACV , (37)
 +
pj − pi− + Δ− +
a sa + pj − pi ≤ pj − pi

∀a = (i, j ) ∈ ACV , (38)
 +
pi − pj− − Δ+ +
a sa + pi − pj ≤ pi − pj

∀a = (i, j ) ∈ ACV . (39)

We remark that control valves are unidirectional elements, i.e., qa− ≥ 0 and that it is
only possible to reduce pressure in flow direction. Moreover, in real-world networks
(and not necessarily in our model) a control valve is always located within a so-
called control valve station.
A control valve station S ∈ H is a series-parallel subgraph of G that consists of a
parallel circuit of a valve (bypass valve) and a series circuit of a valve (inlet valve),
a resistor (inlet resistor), a control valve, a resistor (outlet resistor) and a valve (out-
let valve). Such a subgraph is depicted in Fig. 2. Pressure drop due to vicious drag
of fittings and facilities like, e.g., gas pre-heaters at the inlet and outlet of a con-
trol valve is represented by the inlet and outlet resistor. The bypass valve is used
to transport gas without pressure reduction in both directions. The inlet and outlet
valves are used since each active control valve requires a minimum inlet pressure
− +
pS,in and a maximum outlet pressure pS,out . Altogether a control valve station has
three valid states. It might be active, which means the bypass valve is closed, the
inlet and outlet valves and the control valve are open. It might be in bypass, which
means that the inlet and outlet valves are closed and the bypass valve is open. Fi-
nally, the station might be closed, which means that all three valves are closed. Not
330 B. Geißler, A. Morsi, and L. Schewe

all combinations of these states are valid. They are subject to further restrictions. In
larger subnetworks, e.g., plants with multiple compressors and valves, only a subset
of possible states can actually be used. These further restrictions are discussed in
Sect. 2.7.

2.6 Compressors

Since pressure gets lost due to friction, a large gas transport network needs to con-
tain some kind of facilities to compensate for pressure losses. Those facilities are
called compressors. In reality, the operating range of a compressor is defined by its
characteristic diagram, which is given by a set of curves obtained by (bi)quadratic
least squares fits from measured data points. Here, as in [5, 22, 24, 26], we restrict
ourselves to a so-called idealized compressor model, where we describe the operat-
ing range of a compressor by an approximation of its characteristic diagram in terms
of bounds for the compression ratio, pressure increase, and power consumption. The
process of compression is considered adiabatic. Adiabatic compression means that
no heat transfer between the gas and its surroundings takes place [23].
We assume each compressor a = (i, j ) ∈ ACS to be given together with its adi-
abatic efficiency ηad,a . According to [26], the power Pa a compressor consumes to
bring a certain amount of gas to a higher pressure level is given by
 γ 
pj
Pa = ca Ti z(pi , Ti ) − 1 qa ∀a = (i, j ) ∈ ACS , (40)
pi

with ca = γ ηρad,a
0R
m and γ = κ . Here, the adiabatic exponent κ is the ratio of heat
κ−1

capacity at constant pressure to heat capacity at constant volume, m is the molec-


ular weight of gas and R is the universal gas constant. Again, we assume constant
p − +p +
temperature Ti = T , substitute z(pi , Ti ) by an approximation z˜i = z( i 2 i , T ),
and add the continuous variables Pa for the compressors’ power together with the
constraints
γ
Pa,1 = pj , (41)
−γ
Pa,2 = pi , (42)
Pa,3 = Pa,1 Pa,2 , (43)
1
Pa = qa (Pa,3 − 1), (44)
ca T z˜i
for all a = (i, j ) ∈ ACS to our model. The auxiliary continuous variables Pa,1 , Pa,2 ,
Pa,3 are here used to express the trivariate power function by a recursive composi-
tion of univariate and bivariate nonlinear subexpressions. Just like a control valve,
a compressor may be either closed or open. If it is closed, no gas flows through
the compressor and the pressures at its inlet and outlet are decoupled. Obviously,
A MINLP Algorithm for Gas Transport 331

a closed compressor cannot increase pressure and therefore consumes no power.


Whenever a compressor is open, it consumes power while it increases the pressure
of gas flowing in arc direction, i.e., pj ≥ pi and qa ≥ 0. Flow against the direction
of a compressor arc is impossible.
In order to model the different states of a compressor, we introduce a binary vari-
able sa for each compressor a ∈ ACS , where sa = 1 means that a is open and sa = 0
means that a is closed. Besides the set of equations for the power consumption (41)–
(44), the following constraints are added to our model to describe the approximated
characteristic diagram together with the combinatorial aspects of a compressor:

qa ≥ sa qa− ∀a ∈ ACS , (45)


qa ≤ sa qa+ ∀a ∈ ACS , (46)
Pa ≥ sa Pa− ∀a ∈ ACS , (47)
Pa ≤ sa Pa+ ∀a ∈ ACS , (48)

pj − p i ≥ Δ−a sa + pj− − pi+ (1 − sa ) ∀a = (i, j ) ∈ ACS , (49)
 + −
pj − p i ≤ Δ+ a sa + pj − pi (1 − sa ) ∀a = (i, j ) ∈ ACS , (50)

pj ≥ ra− pi − (1 − sa ) ra− pi+ + pj− ∀a = (i, j ) ∈ ACS , (51)

pj ≤ ra+ pi − (1 − sa ) ra+ pi− − pj+ ∀a = (i, j ) ∈ ACS . (52)

Here, Pa− and Pa+ are bounds for the power consumption of an active compressor.
The minimum and maximum pressure increases are denoted by Δ− +
a and Δa . Fi-
− pj +
nally, the compression ratio is bounded by ra ≤ pi ≤ ra , whenever the compressor
is running. Similar to control valves, a compressor is not a stand-alone element.
Typically, a couple of compressors, together with a bypass valve allowing backward
flow, form a so-called compressor station.
Likewise a control valve station, a compressor station S = (V(S), A(S)) ∈ HCS
is a series-parallel subgraph of G. It consists of a parallel circuit of a valve (bypass
valve) and a series circuit of a valve (inlet valve), a resistor (inlet resistor), a parallel
circuit of one or more configurations, a resistor (outlet resistor), and a valve (outlet
valve). A configuration again is a series composition of a valve, one or more com-
pressor stages, and a valve. Finally, a compressor stage is a parallel composition
of one or more compressors. An example of a compressor station with two config-
urations is given in Fig. 3. One configuration consists of a single stage with two
parallel compressors, while the second configuration has two stages, with a single
compressor unit in each of them.
Also, exactly as in case of a control valve station, each compressor station

S ∈ HCS is given together with a minimum inlet pressure pS,in and a maximum
+
outlet pressure pS,out . Whenever any configuration in CS is active, pressure at the

tail node of the inlet resistor must not fall below pS,in and pressure at the head node
+
of the outlet resistor must not exceed pS,out . Again, we do not enforce these restric-
332 B. Geißler, A. Morsi, and L. Schewe

Fig. 3 A compressor station with two configurations

tions by additional constraints, but rather use them to strengthen the corresponding
variable bounds. This is possible due to the existence of the inlet and outlet valves.
A compressor station is either closed, in bypass mode, or exactly one of its con-
figurations is active. In turn, a compressor is active if and only if the configuration
it is contained in is active. These decisions are again subject to further restrictions,
which are detailed in the next section.

2.7 Combinatorics of Subnetwork Operation Modes

We have seen that with compressor and control valve stations, there are subgraphs of
gas networks forming kind of functional units. In addition, a number of compressor
(stations), control valve (stations) or valves may form so-called decision groups.
Roughly speaking, a decision group can be considered as a set of network elements
sharing the property that each single element can be opened and closed, but not all
combinations of open and closed elements are possible. These restrictions usually
are given by practitioners to avoid solutions which are not practically realizable due
to technical restrictions or which are not reasonable according to the current contract
situation. A third reason for introducing a decision group is symmetry breaking,
like in the trivial example with two parallel valves. These two valves can be in four
different switching states, but from a physical point of view it makes no difference
whether one valve is open and the other one is closed or whether both valves are
open. Thus, it would be reasonable to introduce a decision group containing both
valves, where only two switching states are allowed, namely that both valves are
closed and for example both valves are open.
Formally, we denote the set of decision groups by G and every decision group
consists of a number of control valves, compressors and valves, together with a set
of admissible switching states, i.e., each decision group D = (n, B) ∈ G, is a tuple,
where n = (n1 , . . . , nkD ) with ni ∈ ACV ∪ ACS ∪ AV , for i = 1, . . . , kD , is a vec-
tor containing the respective network elements and B = (b1 , . . . , blD ) ⊂ {0, 1}kD
is a sequence of binary decision vectors describing the possible switching states
A MINLP Algorithm for Gas Transport 333

of the elements in n. We further introduce the index sets N0D (j ) := {i : bij = 0}


containing the indices i of binary decision vectors, where nj has to be closed
if decision i is chosen and the set N1D (j ) := {i : bij = 1} contains the indices
i of binary decision vectors, where nj has to be open, if decision i is chosen
for i = 1, . . . , lD and j = 1, . . . , kD . Here, bij denotes the j -th component of bi .
To model restrictions on the decisions, we introduce binary variables biD ∈ {0, 1}
for each D ∈ G and i = 1, . . . , lD and extend our model by the following con-
straints:

snj ≤ biD ∀D ∈ G, j ∈ AD
V ∪ ACV ∪ ACS ,
D D
(53)
i∈N1D (j )

(1 − snj ) ≤ biD ∀D ∈ G, j ∈ AD
V ∪ ACV ∪ ACS .
D D
(54)
i∈N0D (j )

Here, AD V := {1, . . . , kD } ∩ {k : nk ∈ AV } is the set of valves belonging to decision


group D. The set AD CV := {1, . . . , kD } ∩ {k : nk ∈ ACV } contains all control valves
belonging to decision group D and analogously AD CS := {1, . . . , kD } ∩ {k : nk ∈
ACS } is the set of all compressors of decision group D for all D ∈ G. Constraints
(53) state that each valve, control valve, or compressor nj can only be open if a
decision is chosen in which it is allowed to be open. Inequalities (54) cause that a
valve, control valve, or compressor can only be closed if a decision is chosen, where
it is allowed to be closed. Finally, exactly one decision has to be chosen per decision
group,


lD
biD = 1 ∀D ∈ G. (55)
i=1

With the aid of these groups it is then also possible to enforce the valid states of
control valve stations, namely to be closed, active, or in bypass. Therefore we just
introduce a single decision group DS = (nS , BS ) for each such station S ∈ HCV ,
where nS consists of the bypass valve, the inlet and outlet valve, and the control
valves of the station. The only allowable binary states of these four elements are then
BS = {(0, 0, 0, 0), (0, 1, 1, 1), (1, 0, 0, 0)}. The first binary vector reflects the closed
state of the station, the second one the active state, and the third one represents the
bypass mode of the station.
Similarly, the valid states of a compressor station graph S ∈ HCS are modeled by
a decision group DS = (nS , BS ). Recall that a compressor station might be closed,
in bypass, or exactly one of its configurations is active. If a configuration is active,
all compressors contained in that configuration are active and the inlet and outlet
valves of the configuration are open. In the following, we denote the number of
configurations of a compressor station by mS . To reflect these states the vector nS
334 B. Geißler, A. Morsi, and L. Schewe

of the decision group consists of the bypass valve, the inlet and outlet valves of the
station, and the inlet and outlet valves and compressors of each configuration. The
set of admissible binary vectors is then given by

BS = (0, 0, 0, . . . , 0),
(1, 0, 0, 0, . . . , 0, . . . , 0, . . . , 0),
   
config 1 config mS

(0, 1, 1, 1, . . . , 1, . . . , 0, . . . , 0),
   
config 1 config mS

...,

(0, 1, 1, 0, . . . , 0, . . . , 1, . . . , 1) ,
   
config 1 config mS

representing the states that the station is closed, in bypass mode, or exactly one of
its configuration is active.

2.8 Objective Function

We would like to find a control, which is optimal in the sense of practical interest.
Practitioners are interested in finding an operating cost minimal control. Operating
costs arise due to energy costs caused by active compressors. Thus we assume that
for each compressor a ∈ ACS an energy cost coefficient ca ≥ 0 is given. The most
obvious form is to just use ca = 1 and minimize the overall power consumption of
the compressors. In general, energy costs may vary from compressor to compressor
due to different types of drives. For example, so-called turbo compressors are usu-
ally driven by gas turbines, whereas piston compressors are typically shipped with
electric or gas driven motors. With such given energy cost coefficients the objective
is to minimize the overall energy costs:

min ca Pa
a∈ACS

subject to (P)
(P, p, q, d, s, o, b) satisfies
(1)–(4), (13), (17), (19)–(24), (26)–(39), (41)–(55).

For the sake of clarity we explicitly remark that due to the finiteness of all variables
bounds the Gas Transport Energy Cost Minimization Problem (P) is bounded by
definition.
A MINLP Algorithm for Gas Transport 335

3 Basic MIP-Relaxation
In this section, we will introduce a framework for the construction of MIP-
relaxations of the MINLP-model for the problem introduced in Sect. 2. The basis of
our discussion is the approach described in [8], which we review here for complete-
ness.
We will first construct piecewise linear approximations for each nonlinearity
present in the system of constraints of Problem (P). In a second step we will show
how to construct an MIP-model from such an approximation which constitutes a
proper relaxation of the underlying MINLP. In addition, we will explain how to
make these MIP-relaxations comply to any a priori given bound ε > 0 on the ap-
proximation error.
As starting point for our considerations, we assume the following situation: Let
D ⊆ Rd and f : D → R be some continuous function. Further, let φ : P → R be
a piecewise linear approximation of f over some convex polytope P ⊆ D. We as-
sume φ to interpolate f on the vertices of some triangulation of P. Thus, for a
triangulation with simplex set S, we can define affine functions φi : x → aTi x + bi
for each simplex Si ∈ S with φi (x) = f (x) for every vertex x of Si such that we can
write φ(x) = φi (x) for x ∈ Si . To construct such an approximation satisfying some
a priori given error bound, we suggest Algorithm 1.
It is easy to see that Algorithm 1 always terminates with a triangulation S that
corresponds to a piecewise linear function φ, that interpolates f on the vertices of S.
Since the projection of S onto the space of the x-variables yields a triangulation of
P and since the error bound ε is satisfied for any S ∈ S, the function φ approximates
f such that the approximation error is less than or equal to ε for every x ∈ P.
So once we are able to control the approximation error within a simplex, we
are able to control the overall approximation error. What remains unclear is how to
compute maxx∈Si |f (x) − φi (x)| together with a point, where the maximum error is
attained. For explaining how this can be done, we denote the maximum interpolation
error of a function f over a simplex S by ε(f, S) = max{εu (f, S), εo (f, S)}, where
εu (f, S) = max{f (x) − φ(x) : x ∈ S} and εo (f, S) = max{φ(x) − f (x) : x ∈ S} are
the maximum underestimation and the maximum overestimation of f by its linear
interpolation φ at the vertices of S.
Since the maximum overestimation εo (f, S) of f over S with respect to φ is
equal to the maximum underestimation εu (−f, S) of −f over S with respect to
−φ, we only show how to compute the maximum overestimation in the remainder
of this section. To this end, we introduce the notion of a convex underestimating
function.

Definition 1 The elements of U(f, S) := {μ : S → R : μ convex and μ(x) ≤


f (x), ∀x ∈ S} are called convex underestimators of f over S and the function
vexS [f ] : S → R, defined as vexS [f ](x) := sup{μ(x) : μ ∈ U(f, S)} is called the
convex envelope of f over S.

Obviously, vexS [f ] is the tightest convex underestimator of f over S. Accord-


ing to Theorem 1 [6, 8], the maximum overestimation εo (f, S) can be computed
336 B. Geißler, A. Morsi, and L. Schewe

Algorithm 1: Adaptive piecewise linear interpolation


Input : A convex polytope P ⊂ D ⊆ Rd , a continuous function
f : D ⊂ Rd → R, and an upper bound ε > 0 for the approximation
error.
Output: A triangulation S of P corresponding to a piecewise linear
interpolation φ of f over P with φ(x) = f (x) for all vertices x of
simplices in S and φ = φi for Si ∈ S and i = 1, . . . , n.

Set V = {x ∈ Rd : x is a vertex of P};


Construct an initial triangulation S of V and the corresponding piecewise
linear interpolation φ of f with φ(x) = φi (x) for x ∈ Si for all Si ∈ S;
while ∃Si ∈ S, Si unmarked do
if maxx∈Si |f (x) − φi (x)| > ε then
Add a point where the maximum error is attained to V;
Set S ← S \ {Si };
Update S w.r.t. V;
else
Mark Si ;
end
end
return S

by solving a convex optimization problem in d variables once vexS [f ] is known.


Again, from [6] we known that this is indeed the case for all nonlinearities occur-
ring in the MINLP-model from Sect. 2.

Theorem 1 Let Mo := {x ∈ S : φ(x) − f (x) = εo (f, S)} be the set of global max-
imizers for the overestimation of f by φ over S and let No := {x ∈ S : φ(x) −
vexS [f ](x) = εo (vexS [f ], S)} be the set of global maximizers for the overestima-
tion of the convex envelope of f by φ over S. Then we get εo (f, S) = εo (vexS [f ], S)
and No = conv(Mo ).

It has also been shown in [6, 8] that a point, where the maximum overestimation
is attained can be computed by solving at most d convex optimization problems in
dimension less than or equal to d.
So once Algorithm 1 has been terminated with a triangulation S = {S1 , . . . , Sn },
we are ready to replace each nonlinear expression y = f (x) from (P) by the mixed-
integer linear constraint set (56)–(62) that is a slightly modified version of the well-
A MINLP Algorithm for Gas Transport 337

known incremental model for piecewise linear functions [6, 8, 20].


n 
d
 Si S S
x = xS01 + x j − x 0 i δj i , (56)
i=1 j =1

S

n 
d
 Si S
y = y 0i + y j − y 0i δj + e, (57)
i=1 j =1


d
δjSi ≤ 1, for i = 1, . . . , n, (58)
j =1


d
S
δj i+1 ≤ zi , for i = 1, . . . , n − 1, (59)
j =1

zi ≤ δdSi , for i = 1, . . . , n − 1, (60)

δjSi ≥ 0, for i = 1, . . . , n and j = 1, . . . , d, (61)


zi ∈ {0, 1}, for i = 1, . . . , n − 1. (62)

The main difference to the traditional incremental model lies in the fact that an
extra variable e is added to the right-hand side of Eq. (57). This additional variable
is intended to express the approximation errors, which can be achieved by adding
the inequalities


n−1

εu (f, S1 ) + zi εu (f, Si+1 ) − εu (f, Si ) ≥ e, (63)
i=1


n−1

−εo (f, S1 ) − zi εo (f, Si+1 ) − εo (f, Si ) ≤ e. (64)
i=1

Note that for every feasible solution to the constraints (56)–(64) there is some index
j with zi = 1 for all i < j and zi = 0 for all i ≥ j . This means that all terms εu (f, Si )
on the left-hand side of (63) and all terms εo (f, Si ) on the left-hand side of (64) with
i = j either cancel out or are multiplied by 0. Therefore, we get −εo (f, Sj ) ≤ e ≤
εu (f, Sj ) as desired.
The projection of the polytope described by (56)–(64) onto the (x, y)-hyperplane
can be interpreted as a piecewise polyhedral envelope of the graph of f . An illus-
trative example for the case of the expression c|q|q appearing in the pressure loss
equations for pipes is given in Fig. 4. The feasible set of the MIP-relaxation is given
by the union of the parallelograms depicted with dotted lines.
338 B. Geißler, A. Morsi, and L. Schewe

Fig. 4 MIP-relaxation of
c|q|q with c = 0.25 on
[−4, 4] with 5 breakpoints

4 Adaptive Refinement of the Relaxation

In order to solve Problem (P) our idea is to first construct some initial MIP-
relaxation as described in Sect. 3 which satisfies some a-priori given (poten-
tially coarse) error bound. After that, we compute optimal solutions to a sequence
(Π i )i∈Z+ of successively refined MIP-relaxations until all nonlinear constraints are
satisfied up to the desired accuracy ε > 0. These steps are summarized in Algo-
rithm 2.
Since Π i is a relaxation of P , Algorithm 2 never detects infeasibility erroneously.
Moreover, for ε → 0, Algorithm 2 converges to a global optimum of P if one exists
[6, 7].
The detailed steps necessary to perform the local refinement of the approxi-
mations depend on the chosen triangulation algorithm. For the computations pre-
sented in Sect. 5 we applied an incremental algorithm for Delaunay triangula-
tions [31]. The refinement step in iteration i is performed such that all simplices
S with a distance min{xiopt − y2 : y ∈ S} < δ are refined by adding an element of
arg max{|f (x) − φS (x)| : x ∈ S} to the set of breakpoints, i.e., to the vertices of the
triangulation. Here φs denotes the linear interpolation of f on the vertices of S and
δ > 0. Fur further details we again refer to [6, 7].
In addition, we try to further enhance the performance of Algorithm 2 by ap-
plying a heuristic procedure to obtain high quality feasible solutions as early as
possible. To this end, we set up an auxiliary NLP-model every time the upper bound
of the current MIP-relaxation improves. The NLP-model is constructed from the un-
derlying MINLP by fixing the integer variables to their respective values in the new
incumbent solution of the current MIP-relaxation. This auxiliary NLP is thereafter
solved with an algorithm for convex nonlinear programming. Thus, whenever the
NLP-solver converges to a feasible point which has an objective value that is lower
A MINLP Algorithm for Gas Transport 339

Algorithm 2: Adaptive refinement of MIP-relaxations


Input : An instance P of Problem (P) and an upper ε > 0 on the absolute
constraint violation.
Output: If there exists a point which satisfies all constraints of Problem (P) up
to ε, an optimal solution to Problem (P) is returned. Otherwise
infeasibility is reported.
1 Compute an initial MIP-relaxation Π 0 of P ;
2 Solve Π 0 ;
3 Set i ← 0;
4 while Problem Π i has an optimal solution xiopt with finite objective value do
5 if xiopt satisfies all constraints of Problem P up to ε then
6 return xiopt ;
7 else
8 Find the set F of nonlinear constraints which are violated by xiopt by
more than ε;
9 Construct Π i+1 by refining the approximations of f ∈ F locally
around xiopt ;
10 end
11 i ← i + 1;
12 end
13 return “P is infeasible”;

than the one of the best feasible solution found so far, a new incumbent solution for
the MINLP has been found.
Finally Algorithm 2 is preceded by a bound strengthening procedure, where the
bounds of the flow- and pressure variables are propagated according to the flow
conservation constraints (3) and according to the natural interval extension of the
nonlinear pressure loss equations (13), (18), (25). Further details on these prepro-
cessing steps are again given in [6].

5 Computational Results
In this section we describe the computational results obtained for three test instances
of the gas transport energy cost minimization problem. We investigate one rather
small network, a medium-sized network, and one large real-world instance. An
overview of the sizes of the networks is given in Table 3. Schematic plots of the
network topologies are given in Figs. 5, 6, 7, where entries are depicted as discs and
exits are drawn as circles.
The first test network is given in Fig. 5. It consists of thirteen pipes and three
compressor stations CS1, CS2, and CS3. Altogether 1,348,000 m3 /h of gas have to
340 B. Geißler, A. Morsi, and L. Schewe

Fig. 5 The first test network

Fig. 6 The second test network

be transported from the two entries S1 and S2 located to the left to the four cus-
tomers represented by the exits T1, T2, T3, and T4. In front of exit T3, a control
valve station CV is located in order to reduce pressure if necessary. Compressor sta-
tion CS1 can be operated in three different configurations, while both other stations
CS2 and CS3 only have a single configuration. Gas is at a pressure level of at most
70 bar at the entries, while it has to be delivered to the exits T1 and T2 with at least
62 bar and to T3 and T4 with at least 70 bar. Pressure at exit T2 must also not exceed
63 bar.
A MINLP Algorithm for Gas Transport 341

Fig. 7 The third test network

Our second test network is made up of the most important transport pipelines
of Open Grid Europe’s northern German network for the transport of high caloric
natural gas. Besides some minor simplifications, only a couple of regional subnets
have been cut off from the real network in order to create this test instance (cf.
Fig. 7). With 69 pipes, 67 shortcuts, 8 resistors, 3 compressor stations and 7 control
valve stations it already has a considerable degree of complexity. Gas is fed into the
network at 26 entries and customers withdraw gas from the network at 14 exits.
Compressor station CS1 can be operated in 14 different configurations. For the
compressor stations CS2 and CS3 on the right-hand side of Fig. 6 we have to choose
between two distinct configurations. The nomination considered for the second test
network is given in Table 1. All nodes for which no data is provided in the table nei-
342 B. Geißler, A. Morsi, and L. Schewe

Table 1 The nomination considered for the second test network


v p− p+ d v p− p+ d

T1 43 56 8056 T12 16 69 35964


T2 2 85 96698 T13 67 80 157166
T3 2 85 241509 T14 1 121 338487
T4 75 82 529532 S1 66 79 −232710
T5 72 85 141345 S6 1 122 −396757
T6 75 82 1070961 S14 2 90 −141976
T7 2 85 19772 S15 2 90 −257181
T8 41 85 52015 S18 2 91 −100031
T9 65 78 15317 S19 78 91 −1530962
T10 65 78 137653 S23 2 82 −275755
T11 71 85 418477 S24 44 57 −327580

ther feed in nor withdraw gas in the considered nomination. In Table 1 the columns
labeled p − and p + contain the lower and upper bounds for the pressure values at
the respective nodes in bar. The columns labeled with d contain the demands of the
nodes in terms of m3 /h.
Our third test network is given in Fig. 7. It is the complete northern German
network for the transport of high caloric gas of the Open Grid Europe GmbH. It
consists of 452 pipes, 98 shortcuts, 9 resistors, 23 control valve stations, 6 compres-
sor stations and 34 valves. Gas is fed into the network at 31 entries and customers
have the possibility to withdraw gas at 129 exits. The overall length of the pipelines
is approximately 1,241 km. The nomination considered for this network is given in
Table 2. The basic properties of the three test networks are summarized in Table 3.
To solve these problems we employ Algorithm 2 from Sect. 4 and compare our
results with those obtained from the state-of-the-art general purpose MINLP-solvers
Baron 10.2.0 [32] and SCIP 2.1.1 [1, 21, 33].
All computations presented in this section are carried out using at most 4 cores
of a machine with two six core AMD Opteron™2435 processors with 64 GB of
main memory. The installed Linux operating system is Debian Squeeze with kernel
version 2.6.32-5-amd64. As MIP-solver within Algorithm 2 we use Gurobi 5.0 [14],
where all parameters are set to their default values. The occurring NLP-problems
are solved with Ipopt 3.10 [34, 35] with ma27 [15] as linear solver. The number of
Ipopt iterations is limited to 300. We compare our results to those obtained from the
MINLP-solvers Baron 10.2.0 [32] and SCIP 2.1.1 [1, 21, 33].
For all computations, we employ a time limit of 2 hours. In Algorithm 2, we
choose 10.0 bar as upper bounds for the initial linearization errors for the pressure
loss equations and 10 MW for the equations describing the power consumption of
the compressors. The parameter controlling the refinement step is set to δ = 10−6 .
The maximal constraint violation is set to ε = 10−4 .
The results obtained with SCIP, Baron, and Algorithm 2 for the three test in-
stances are given in Table 4. The columns labeled lb(x) and ub(x) contain the best
A MINLP Algorithm for Gas Transport 343

Table 2 The nomination considered for the third test network


v p− p+ d v p− p+ d

T1 1 122 149935 T33 2 8 2325


T2 2 86 156454 T34 11 41 116
T3 41 68 108800 T35 2 41 652
T4 2 86 1213451 T36 4 41 2634
T5 2 86 138000 T37 2 41 36
T6 3 8 15525 T38 2 41 107
T7 2 86 284 T39 2 695 3322
T8 2 86 47 T40 9 51 561
T9 2 8 2470 T41 26 51 19678
T10 5 9 2624 T42 16 51 25
T11 5 9 3890 T43 36 69 9608
T12 2 86 1223 T44 2 69 11031
T13 3 9 177 T45 2 69 448
T14 5 9 177 T46 2 51 8200
T15 2 9 102 T47 2 85 87347
T16 5 9 324 T48 2 71 33483
T17 5 9 8120 T49 51 74 6775
T18 5 9 33 T50 41 68 68713
T19 5 9 1425 T51 41 85 5823
T20 5 9 3790 T52 74 81 7362
T21 5 9 2739 T53 2 85 14352
T22 5 9 3035 T54 41 85 165022
T23 2 5 907 T55 41 85 28650
T24 2 5 71 T56 16 69 14385
T25 2 5 2090 T57 2 86 1259051
T26 2 5 215 S1 2 86 −46268
T27 2 5 233 S2 2 86 −1213451
T28 2 5 629 S3 2 86 −1347
T29 2 41 3340 S4 2 86 −3281
T30 6 41 1149 S5 2 50 −204090
T31 6 41 2193 S6 2 50 −489212
T32 2 8 1012 S7 2 84 −1616521

Table 3 Numbers of network elements and overall pipe length of the three test networks

Net |VS | |VD | |VI | |AP | |AS | |ACS | |ACV | |AV | |AR | a∈AP La

1 2 4 11 13 1 3 1 0 0 620 km
2 3 5 16 20 4 3 1 0 1 820 km
3 31 129 432 452 98 6 23 34 9 1241 km
344 B. Geißler, A. Morsi, and L. Schewe

Table 4 Results obtained with SCIP, Baron and Algorithm 2 after 2 hours
Net lb(SCIP) lb(Baron) lb(MIP) ub(SCIP) ub(Baron) ub(MIP) gp(SCIP) gp(Baron) gp(MIP)

1 456.23 467.85 462.45 467.85 467.85 467.85 2.55 % 0.00 % 1.17 %


2 1484.10 1259.02 1529.78 1571.16 1610.67 1568.68 5.87 % 27.93 % 2.54 %
3 0.00 0.00 453.79 – – 517.96 ∞ ∞ 14.10 %

Fig. 8 Bounds for the 1st net (SCIP)

Fig. 9 Bounds for the 1st net (Baron)

lower bound and the best feasible solution obtained from solver x after 7200 sec-
onds. The entries of the last three columns are the relative optimality gaps, which
have been computed as (ub − lb)/lb.
For the small test network Baron was able to prove optimality of a solution with
objective value 467.85 within 7 s. Although all three approaches find the optimal
solution within a second (cf. Figs. 8, 9, 10), SCIP and our new approach are not able
to prove optimality within the time limit. However, the lower bound obtained from
Algorithm 2 is slightly better than the lower bound obtained from SCIP. We believe
A MINLP Algorithm for Gas Transport 345

Fig. 10 Bounds for the 1st net (Algorithm 2)

Fig. 11 Bounds for the 2nd net (SCIP)

that the very short running time of Baron in this case results from the application
of a variety of bound strengthening techniques, which are not yet implemented in
our new algorithm. For the two larger test networks none of the three algorithms
was able to prove optimality of a solution but the best lower and upper bounds are
obtained with Algorithm 2. For the large real-world instance neither SCIP nor Baron
were able to even find a feasible solution and both were not able to push the lower
bound significantly above the trivial lower bound of zero within the time limit. In
contrast, with our new approach significantly tighter lower bounds were obtained
rather quickly. A more detailed view on how the lower and upper bounds evolve
over time is given in Figs. 8–16 for all test instances and solvers. A comparative
view on the evolution of the relative optimality gaps is presented in Figs. 17, 18, 19.
One important detail to point out is the seemingly piecewise constant develop-
ment of the lower bound during a run of Algorithm 2. This is mainly due to the fact
that we cold-start the MIP-solver after each iteration and can thus not benefit from
all the information inherent to the branch-and-bound tree computed in the preceding
iteration. At this point, there is clearly space for improvements. However, the lower
bounds obtained from Algorithm 2 are systematically better than those obtained
346 B. Geißler, A. Morsi, and L. Schewe

Fig. 12 Bounds for the 2nd net (Baron)

Fig. 13 Bounds for the 2nd net (Algorithm 2)

Fig. 14 Bounds for the 3rd net (SCIP)


A MINLP Algorithm for Gas Transport 347

Fig. 15 Bounds for the 3rd net (Baron)

Fig. 16 Bounds for the 3rd net (Algorithm 2)

Fig. 17 Gap for the 1st net


348 B. Geißler, A. Morsi, and L. Schewe

Fig. 18 Gap for the 2nd net

Fig. 19 Gap for the 3rd net

from SCIP and despite for the small test network the same holds in comparison
with Baron. Moreover, we are able to determine feasible solutions even for the large
real-world instance and better feasible solutions for the medium-sized instance. We
believe that the latter is mainly possible due to the tightness of the employed type of
MIP-relaxations. Since these relaxations are nonconvex, they are potentially tighter
than any existing convex relaxation and we do not have to rely on (spatial) branch-
ing alone to obtain high accuracy solutions in regions of interest. This is due to
the fact that the nonconvexities are modeled via integrality restrictions only. Thus,
also polyhedral techniques could be exploited to determine a feasible assignment,
especially for the discrete variables of the underlying MINLP.
Finally, we would like to give insight into the complexity of the MIP-relaxation
models solved during the iterations of Algorithm 2. For the first network this is sum-
marized in Table 5. For the two other networks the same information is given in Ta-
ble 6 and Table 7. Here, the i-th row corresponds to the i-th iteration of Algorithm 2,
i.e., to the solution of a single MIP-relaxation. The iteration number is given in the
first column. In iteration 0 the initial MIP-relaxation is solved. The second column
A MINLP Algorithm for Gas Transport 349

Table 5 Log of Algorithm 2


on the 1st net i ref bins reals cons nodes sec

0 0 56 379 812 1 1
1 17 82 423 890 36 3
2 15 106 465 962 5128 6
3 15 134 515 1046 7580 8
4 15 172 581 1160 123092 28
5 13 194 619 1226 45709 19
6 14 219 664 1301 103132 36
7 14 244 709 1376 30377 12
8 10 268 753 1448 65018 30
9 13 296 805 1532 222502 73
10 8 315 842 1589 221772 82
11 10 338 887 1658 243782 90
12 8 363 936 1733 712089 342
13 8 382 973 1790 2457946 980
14 6 397 1002 1835 596648 263
15 8 418 1043 1898 1102106 503
16 7 435 1076 1949 365960 159
17 7 453 1110 2003 887336 420
18 4 463 1130 2033 2172757 1235
19 4 475 1154 2069 >4533060 >2889

contains the number of nonlinear expressions, whose piecewise polyhedral outer


approximations have been refined in the end of iteration i. The three subsequent
columns contain the number of binary and continuous variables and the number of
linear constraints of the respective MIP-relaxation, while the last two columns show
the number of branch-and-bound nodes and the number of seconds needed to solve
the i-th MIP-relaxation.
Clearly, with each iteration a number of refinement steps are performed and thus
the number of rows and columns is strictly increasing with the iteration number.
As one might expect, the number of branch-and-bound nodes as well as the num-
ber of seconds needed to solve the MIP-relaxations also tends to increase with
the number of iterations. However, the number of refinement steps is mainly de-
creasing from iteration i to i + 1 such that the number of additional rows and
columns tends to decrease with i. The latter shows an extremely favorable prop-
erty of Algorithm 2. Although in early iterations, where the global optimum of a
(rather coarse) relaxation is typically far away from an optimum of the underlying
MINLP, a lot of refinement steps are performed, after a while the optimum of the
relaxation approaches an MINLP-optimum and the remaining refinements are typ-
ically performed in the neighborhood of this point. From there on the number of
rows and columns of the MIP-relaxations do not increase significantly anymore. Of
350 B. Geißler, A. Morsi, and L. Schewe

Table 6 Log of Algorithm 2


on the 2nd net i ref bins reals cons nodes sec

0 0 292 2027 4070 818 10


1 73 367 2104 4295 1242 10
2 74 442 2181 4520 2057 12
3 79 525 2272 4769 3960 33
4 75 606 2361 5012 6992 42
5 75 683 2440 5243 12281 53
6 68 759 2524 5471 4671 37
7 69 832 2605 5690 4178 56
8 64 900 2681 5894 17423 104
9 55 961 2750 6077 17061 68
10 49 1014 2811 6236 19045 115
11 35 1055 2860 6359 55620 179
12 51 1107 2914 6515 53281 186
13 30 1143 2960 6623 107601 447
14 24 1175 3002 6719 175484 554
15 53 1231 3062 6887 43167 239
16 47 1279 3112 7031 453691 1554
17 23 1308 3153 7118 33625 225
18 39 1349 3198 7241 973103 2721
19 13 1368 3225 7298 >62765 >535

Table 7 Log of Algorithm 2


on the 3rd net i ref bins reals cons nodes sec

0 0 907 4487 9848 302932 1523.61


1 221 1142 4738 10553 72778 735.76
2 216 1367 4979 11228 323738 2694.89
3 207 1582 5210 11873 >291328 >2242.0

course one might construct problems where it takes arbitrary long to arrive at this
point, but at least for the problems considered here this does not seem to be the
case.

6 Discussion

The computational results obtained with our algorithm are extremely encouraging:
Our approach outperforms the state-of-the-art MINLP-solvers Baron and SCIP on
the two larger problems. We stress that we did not incorporate any problem specific
A MINLP Algorithm for Gas Transport 351

knowledge in the algorithm so far to keep the comparison with the solvers fair. We
also have not yet implemented more refined preprocessing techniques except for a
straight-forward bound strengthening.
In our view, the problem we studied has special structure that makes it par-
ticularly amenable to our approach. Most of the nonlinear functions that appear
are low-dimensional. The pressure loss equation for pipes also can be seen to be
convex on one half of the real line and concave on the other. This also makes
the problem comparatively well-structured. We also note that the problem is far
more difficult than just checking the feasibility of a nomination, the so-called
nomination validation problem [28]. The main additional difficulty is the descrip-
tion of the compressors, especially their power requirement (40). We, neverthe-
less, think that the approach outlined here can be generalized to other problems,
which we will tackle in future work. The hope is generally that we will, in the fu-
ture, identify a large class of mixed-integer nonlinear problems, that is solvable in
practice. The way will involve looking at special cases and general insight about
the structure of the problems, just as in the case of mixed-integer linear prob-
lems.

Acknowledgements The authors are grateful to Alexander Martin for fruitful discussions and
comments. We thank our industry partner Open Grid Europe GmbH and the other partners of the
ForNe project. The work was partially funded by the German Federal Ministry of Economics and
Technology under grant number 0328006B.

References
1. Achterberg, T.: Constraint integer programming. Ph.D. thesis, TU Berlin (2007)
2. Bales, P.: Hierarchische Modellierung der Eulerschen Flussgleichungen in der Gasdynamik.
Master’s thesis, Technische Universität Darmstadt (2005)
3. Bureau International des Poids et Mesures: The International System of Units (SI), 8th edn.
(2006)
4. Domschke, P., Geißler, B., Kolb, O., Lang, J., Martin, A., Morsi, A.: Combination of nonlin-
ear and linear optimization of transient gas networks. INFORMS J. Comput. 23(4), 605–617
(2011)
5. Ehrhardt, K., Steinbach, M.C.: Nonlinear optimization in gas networks. In: Bock, H.G.,
Kostina, E., Phu, H.X., Ranacher, R. (eds.) Modeling, Simulation and Optimization of Com-
plex Processes, pp. 139–148. Springer, Berlin (2005)
6. Geißler, B.: Towards globally optimal solutions of MINLPs by discretization techniques with
applications in gas network optimization. Ph.D. thesis, FAU Erlangen-Nürnberg (2011)
7. Geißler, B., Martin, A., Morsi, A., Schewe, L.: Solving MINLPs using adaptively refined MIPs
(2012, to be published)
8. Geißler, B., Martin, A., Morsi, A., Schewe, L.: Using piecewise linear functions for solving
MINLPs. In: Lee, J., Leyffer, S. (eds.) Mixed Integer Nonlinear Programming. The IMA Vol-
umes in Mathematics and Its Applications, vol. 154, pp. 287–314. Springer, New York (2012)
9. Grötschel, M., Monma, C., Stoer, M.: Polyhedral approaches to network survivability. In:
Reliability of Computer and Communication Networks, New Brunswick, NJ, 1989. DIMACS
Ser. Discrete Math. Theoret. Comput. Sci., vol. 5, pp. 121–141. Am. Math. Soc., Providence
(1991)
352 B. Geißler, A. Morsi, and L. Schewe

10. Grötschel, M., Monma, C.L., Stoer, M.: Computational results with a cutting plane algorithm
for designing communication networks with low-connectivity constraints. Oper. Res. 40(2),
309–330 (1992). doi:10.1287/opre.40.2.309
11. Grötschel, M., Monma, C.L., Stoer, M.: Facets for polyhedra arising in the design of commu-
nication networks with low-connectivity constraints. SIAM J. Optim. 2(3), 474–504 (1992).
doi:10.1137/0802024
12. Grötschel, M., Monma, C.L., Stoer, M.: Design of survivable networks. In: Network Models.
Handbooks Oper. Res. Management Sci., vol. 7, pp. 617–672. North-Holland, Amsterdam
(1995). doi:10.1016/S0927-0507(05)80127-6
13. Grötschel, M., Monma, C.L., Stoer, M.: Polyhedral and computational investigations for
designing communication networks with high survivability requirements. Oper. Res. 43(6),
1012–1024 (1995). doi:10.1287/opre.43.6.1012
14. Gurobi Optimization, Inc.: Gurobi Optimizer Reference Manual. Version 5.0. Gurobi Opti-
mization, Inc., Houston, TX, USA (2010)
15. HSL: a collection of Fortran codes for large scale scientific computation (2011). www.hsl.rl.
ac.uk
16. Koch, T. (ed.): From simulation to optimization: evaluating gas network capacities (2012, in
preparation)
17. Leyffer, S., Sartenaer, A., Wanufelle, E.: Branch-and-refine for mixed-integer nonconvex
global optimization. Technical report ANL/MCS-P1547-0908, Mathematics and Computer
Science Division, Argonne National Laboratory (2008)
18. LIWACOM Informations GmbH and SIMONE Research Group s.r.o.: Gleichungen und Meth-
oden. Benutzerhandbuch (2004)
19. Lurie, M.V.: Modeling of Oil Product and Gas Pipeline Transportation. Wiley-VCH, Wein-
heim (2008)
20. Markowitz, H.M., Manne, A.S.: On the solution of discrete programming problems. Econo-
metrica 25, 84–110 (1957)
21. Martin, A.: Integer programs with block structure. Habilitation treatise, Zuse Institute Berlin
(1999)
22. Martin, A., Möller, M., Moritz, S.: Mixed integer models for the stationary case of gas network
optimization. Math. Program., Ser. B 105, 563–582 (2006)
23. Menon, E.: Gas Pipeline Hydraulics. Taylor & Francis, Boca Raton (2005)
24. Möller, M.: Mixed integer models for the optimisation of gas networks in the stationary case.
Ph.D. thesis, Technische Universität Darmstadt (2004)
25. Moody, L.: Friction factors for pipe flow. Trans. Am. Soc. Mech. Eng. 66(8), 671–677 (1944)
26. Moritz, S.: A mixed integer approach for the transient case of gas network optimization. Ph.D.
thesis, Technische Universität Darmstadt (2007)
27. Nikuradse, J.: Strömungsgesetze in rauhen Rohren. Forschungsheft auf dem Gebiete des In-
genieurwesens. VDI-Verlag, Düsseldorf (1933)
28. Pfetsch, M.E., Fügenschuh, A., Geißler, B., Geißler, N., Gollmer, R., Hiller, B., Humpola,
J., Koch, T., Lehmann, T., Martin, A., Morsi, A., Rövekamp, J., Schewe, L., Schmidt, M.,
Schultz, R., Schwarz, R., Schweiger, J., Stangl, C., Steinbach, M.C., Vigerske, S., Willert,
B.M.: Validation of nominations in gas network optimization: models, methods, and solutions.
Technical report ZR 12-41, ZIB (2012)
29. Ríos-Mercado, R.Z., Borraz-Sánchez, C.: Optimization problems in natural gas transmission
systems: a state-of-the-art survey. Technical report ZR 12-41, ZIB (2012)
30. Ríos-Mercado, R.Z., Wu, S., Scott, L.R., Boyd, E.A.: A reduction technique for natural gas
transmission network optimization problems. Ann. Oper. Res. 117(1), 217–234 (2002)
31. Shewchuk, J.: Triangle: engineering a 2D quality mesh generator and Delaunay triangulator.
In: First ACM Workshop on Applied Computational Geometry (1996)
32. Tawarmalani, M., Sahinidis, N.V.: A polyhedral branch-and-cut approach to global optimiza-
tion. Math. Program. 103(2), 225–249 (2005)
33. Vigerske, S.: Decomposition in multistage stochastic programming and a constraint integer
programming approach to mixed-integer nonlinear programming. Ph.D. thesis, Humboldt-
A MINLP Algorithm for Gas Transport 353

Universität zu Berlin (2012). www.math.hu-berlin.de/~stefan/diss.pdf


34. Wächter, A., Biegler, L.T.: Line search filter methods for nonlinear programming: motivation
and global convergence. SIAM J. Optim. 16(1), 1–31 (2005)
35. Wächter, A., Biegler, L.T.: On the implementation of an interior-point filter line-search algo-
rithm for large-scale nonlinear programming. Math. Program., Ser. A 106, 25–57 (2006)

You might also like