Professional Documents
Culture Documents
A New Algorithm For MINLP Applied To Gas Transport Energy Cost Minimization
A New Algorithm For MINLP Applied To Gas Transport Energy Cost Minimization
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
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.
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.
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.
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)
∂ρ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
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
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
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
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:
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
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
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.
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
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.
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.
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
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
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
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
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
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
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
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 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)
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
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
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
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
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