Table Of ContentParametric Integer Programming in Fixed
8
0 Dimension
0
2
n
Friedrich Eisenbrand and Gennady Shmonin
a
J
8 InstitutfürMathematik, UniversitätPaderborn, D-33095Paderborn,Germany
2
]
C
Abstract
O
. Weconsider the following problem: Given a rational matrix A∈Qm×n and
h
t arational polyhedron Q⊆Rm+p,decideifforallvectorsb∈Rm,forwhich
a
m there exists an integral z∈Zp such that (b,z)∈Q, the system of linear in-
equalities Ax 6 b has an integral solution. We show that there exists an
[
algorithm that solves this problem in polynomial time if p and n are fixed.
1
v This extends a result of Kannan (1990) who established such an algorithm
6 forthecasewhen,inadditionto pandn,theaffinedimensionofQisfixed.
3
3 As an application of this result, we describe an algorithm to find the maxi-
4
mumdifferencebetweentheoptimumvaluesofanintegerprogrammax{cx:
.
1 Ax6b,x∈Zn} and its linear programming relaxation over all right-hand
0
sides b, for which the integer program is feasible. The algorithm is poly-
8
0 nomial if n is fixed. This is an extension of a recent result of Hos¸ten and
:
v Sturmfels (2003) who presented such an algorithm for integer programs in
i standardform.
X
r
a
1 Introduction
Central to this paper is the following parametric integer linear programming
(PILP)problem:
Given a rational matrix A ∈ Qm×n and a rational polyhedron Q ⊆
Rm+p, decide if for all b ∈ Rm, for which there exists an integral
z ∈ Zp such that (b,z)∈Q, the system of linear inequalities Ax 6 b
hasan integralsolution.
1
In otherwords, weneed tocheck that forallvectorsb in theset
Q/Zp :={b∈Qm :(b,z)∈Qfor somez∈Zp}
thecorresponding integer linear programmingproblem Ax6b, x∈Zn has a fea-
sible solution. The set Q/Zp is called the integer projection of Q. Using this
notation, we can reformulate PILP as the problem of testing the following ∀∃-
sentence:
∀b∈Q/Zp ∃x∈Zn : Ax6b. (1)
ItisworthnoticingthatanypolyhedronQ⊆Rm aswellasthesetofintegralvec-
torsin Qcan beexpressedbymeans ofintegerprojectionsofpolyhedra. Indeed,
Q=Q/Z0 and Q∩Zm ={(b,b):b∈Q}/Zm.
In its general form, PILP belongs to the second level of the polynomial hier-
archyandisP p-complete;see(Stockmeyer,1976)and(Wrathall,1976). Kannan
2
(1990) presented a polynomial algorithm to decide the sentence (1) in the case
when n, p and the affine dimensionof Q are fixed. This result was applied to de-
duceapolynomialalgorithmthatsolvestheFrobeniusproblemwhen thenumber
ofinputintegersis fixed,see(Kannan, 1992).
Kannan’salgorithmproceedsinseveralsteps. Weinformallydescribeitatthis
point as a way to decide ∀∃-statements (1) in the case p =0. First Kannan pro-
videsanalgorithmwhichpartitionsthesetofright-handsidesQintopolynomially
many integer projections of partially open polyhedra S ,...,S , where each S is
1 t i
obtainedfrom a higher-dimensionalpolyhedronby projectingout afixed number
of integer variables. Each S is further equipped with a fixed number of mixed
i
integer programs such that for each b ∈S the system Ax 6b is integer feasible,
i
if and only if one of the fixed number of “candidate solutions” obtained from
pluggingb intheseassociatedmixedintegerprograms,isafeasibleintegerpoint.
To decide now whether (1) holds, one searches within the sets S individually
i
for a vector b for which Ax6b has no integral solution. In other words, each of
thecandidatesolutionsassociatedtobmustviolateatleastoneoftheinequalities
in Ax 6 b. Since the number of candidate solutions is fixed, we can enumerate
the choices to associate a violated inequality to each candidate solution. Each of
thesepolynomiallymanychoicesyieldsnowamixed-integerprogramwithafixed
numberofintegervariables. Thereexistsab∈S suchthatAx6bhasnointegral
i
solutionif and only if one of these mixed-integerprograms is feasible. The latter
can bechecked withthealgorithmofLenstra(1983)in polynomialtime.
2
Contributions of this paper
WemodifythealgorithmofKannan toruninpolynomialtimeundertheassump-
tion that only n and p are fixed. This is achieved via providing an algorithm
that computes for a matrix A ∈ Qm×n a set D ⊆ Zn of integral directions with
the following property: for each b ∈ Rm, the lattice width (see Section 2) of the
polyhedron P ={x:Ax6b} is equal to the width of this polyhedron along one
b
of the directions in D. This algorithm is described in Section 3 and runs in poly-
nomial time if n is fixed. The strengthening of Kannan’s algorithm to decide
∀∃-statements of the form (1) if n and p is fixed followsthen by using this result
intheproofofTheorem 4.1in (Kannan, 1992).
Wethenapplythisresulttofind themaximumintegerprogramminggapfora
familyofintegerprograms. Theintegerprogramminggapofan integerprogram
max{cx:Ax6b,x∈Zn} (2)
isthedifference
max{cx:Ax6b}−max{cx:Ax6b,x∈Zn}.
Given a rational matrix A∈Qm×n and a rational objective vector c∈Qn, g(A,c)
denotes the maximum integer programming gap of integer programs of the form
(2), where the maximum is taken over all vectors b, for which the integer pro-
gram (2) is feasible. Our algorithm finds g(A,c) in polynomial time if n is fixed.
Thisextendsarecent resultofHos¸tenand Sturmfels (2003), who proposedan al-
gorithm to find the maximum integer programming gap for a family of integer
programsinstandardformifnis fixed.
Related work
Kannan’s algorithm is an extension of the polynomial algorithm for integer lin-
ear programming in fixed dimension by Lenstra (1983). Barvinok andWoods
(2003) presented an algorithm for counting integral points in the integer projec-
tion Q/Zp of a polytope Q ⊆ Rm+p. This algorithm runs in polynomial time if
p and m are fixed, and uses Kannan’s partitioning algorithm, which we extend
in this paper. In particular, their algorithm can be applied to count the number
of elements of the minimal Hilbert basis of a pointed cone in polynomial time
if the dimension is fixed. We remark that a polynomial test for the Hilbert basis
propertyin fixed dimensionwas first presented by Cook etal. (1984). Extensions
3
of Barvinok’s algorithm to compute counting functions for parametric polyhedra
were presented in (Barvinok and Pommersheim, 1999; Verdoolaegeet al., 2007)
and in (Köppeand Verdoolaege, 2007). These counting functions are piecewise
step-polynomialswhichinvolveroundupoperations. Withthesefunctionsathand
one can very efficiently compute the number of integer points in P via evalua-
b
tionat b. It is howevernot knownhowto usesuch piecewisestep-polynomialsto
decide∀∃-statementsefficientlyin fixed dimension.
Hos¸tenand Sturmfels (2003) proposed an algorithm to find the maximum in-
teger programming gap for a family of integer programs in standard form, i.e.,
max{cx : Ax = b,x > 0,x ∈ Zn}. Their algorithm exploits short rational gen-
erating functions for certain lattice point problems, cf. Barvinok (1994) and
Barvinokand Woods (2003), and runs in polynomial time if the number n of
columns of A is fixed. However, the latter implies also a fixed number of rows
inA,aswecanalwaysassumeAtohavefullrowrank. Wewouldliketopointout
thatourapproach doesnot relyon rationalgenerating functionsat all.
Basic definitions and notation
ForsetsV andW in Rn and anumbera wedenote
V +W :={v+w:v∈V,w∈W} and a W :={a w:w∈W}.
It is easy to see that if W is a convex set containing the origin and a 6 1, then
a W ⊆W. IfV consistsofonevectorvonly,wewrite
v+W :={v+w:w∈W}
and say that v+W is the translate ofW along the vector v. The symbol ⌈a ⌉ de-
notesthesmallestintegergreaterthanorequaltoa ,i.e.,a roundedup. Similarly,
⌊a ⌋standsforthelargest integernotexceedinga , hencea roundeddown.
In thispaperweestablishanumberofpolynomialalgorithms,i.e.,algorithms
whose running time is bounded by a polynomial in the input size. Following the
standard agreements, we define the size of a rational number a = p/q, where
p,q∈Zarerelativelyprimeandq>0,asthenumberofbitsneededtowritea in
binaryencoding:
size(a ):=1+⌈log(|p|+1)⌉+⌈log(q+1)⌉.
The size of a rational vector a=[a ,...,a ] is the sum of the sizes of its compo-
1 n
nents:
n
(cid:229)
size(a):=n+ size(a ).
i
i=1
4
Atlast, thesizeofarationalmatrixA=[a ]∈Qm×n is
ij
m n
(cid:229) (cid:229)
size(A):=mn+ size(a ).
ij
i=1j=1
An open half-spacein Rn is the set of the form {x:ax<b }, where a∈Rn is
a row-vector and b is a number. Similarly, the set {x:ax6b } is called a closed
half-space. A partially open polyhedron P is the intersection of finitely many
closed or open half-spaces. If P can be defined by means of closed half-spaces
only, we say that it is a closed polyhedron, or simply a polyhedron. We need
the notion of a partially open polyhedron to be able to partition the space (this is
definitely impossible by means of closed polyhedra only). At last, we say that a
partially open polyhedron is rational if it can be defined by the system of linear
inequalitieswithrationalcoefficients and rationalright-handsides.
Linear programming is about optimizing a linear function cx over a given
polyhedronP in Rn:
max{cx:x∈P}=−min{−cx:x∈P}.
Ifxis required tobeintegral,itisan integer linearprogrammingproblem
max{cx:x∈P∩Zn}=−min{−cx:x∈P∩Zn}.
Fordetailsonlinearandintegerprogramming,wereferto(Schrijver,1986). Here
weonlymentionthata linearprogrammingproblemcan besolvedin polynomial
time, cf. (Khachiyan, 1979), while integer linear programming is NP-complete.
However, if the number of variables is fixed, integer programming can also be
solved in polynomial time, as was shown by Lenstra (1983). Moreover, Lenstra
presented an algorithm to solve mixed-integer programming with a fixed number
of integer variables. We remark that both algorithms—of Khachiyan (1979) and
of Lenstra (1983)—can be used to solve decision versions of integer and linear
programmingon partiallyopenpolyhedra.
An integral square matrixU is called unimodular if |det(U)|=1. Clearly, if
U is unimodular, thenU−1 is also unimodular. A matrix of full row rank is said
tobein Hermitenormalform ifithas theform [H 0], whereH =[h ] isa square
ij
non-singularnon-negativeupper-triangularmatrixsuchthath >h forall j>i.
ii ij
Given a matrix A of full row rank, we can find in polynomial time a unimodu-
lar matrixU such that AU is in Hermite normal form; see (Kannanand Bachem,
1979). We remark that the Hermite normal form of an integral vector c is the
5
vector a e , where a is the greatest common divisor of the components of c and
1
e is the first unit vector. The unimodular matrix U such that cU = a e can be
1 1
obtaineddirectlywhileexecutingtheEuclideanalgorithmtocomputethegreatest
commondivisor.
2 Flatness theorem
We briefly review the algorithm to solve integer linear programming in fixed di-
mension, as its basic ideas will be used in the following sections. Intuitively,if a
polyhedron contains no integral point, then it must be “flat” along some integral
direction. Inordertomakethisprecise,weintroducethenotionof“latticewidth.”
Thewidthw (K)ofaclosedconvexset K along adirectionc∈Rn is defined as
c
w (K):=max{cx:x∈K}−min{cx:x∈K}. (3)
c
The lattice width w(K) of K (with respect to the standard lattice Zn) is the mini-
mumofitswidthsalongall non-zero integraldirections:
w(K):=min{w (K):c∈Zn\{0}}.
c
An integral row-vector c attaining the aboveminimumis called a width direction
of theset K. Clearly, w(v+a K)=a w(K) for any rational vectorv and any non-
negative rational number a . Moreover, both sets K and v+a K have the same
widthdirection.
Applicationsoftheconcept oflatticewidthin algorithmicnumbertheory and
integerprogrammingrelyupontheflatnesstheorem,whichgoesbacktoKhinchin
(1948) whofirst provedit forellipsoidsin Rn. Here westateit forconvex bodies,
i.e.,boundedclosed convexsets ofnon-zero volume.
Theorem 2.1(Flatnesstheorem). Thereisa constantw (n),dependingonlyonn,
suchthatanyconvexbodyK ⊆Rn withw(K)>w (n)containsanintegralpoint.
Theconstantw (n)inTheorem2.1isreferred toastheflatnessconstant. Thebest
known upper bound on w (n) is O(n3/2), cf. (Banaszczyk etal., 1999), although
alineardependenceon n was conjectured, e.g., by Kannan andLovász(1988). A
linearlowerbound on w (n)was shownbyKantor(1999)and Sebo˝ (1999).
Throughoutthispaperwewillmostlydealwithrationalpolyhedraratherthan
general convex bodies. In this case, assumptionsof non-zero volume and bound-
ednesscansafelyberemovedfromthetheorem’sstatement. Indeed,ifP⊆Rn isa
6
rationalpolyhedronofzerovolume,thenithaswidth0alonganintegraldirection
orthogonal to its (rational) affine hull. Further, letC be the characteristic cone of
P:
C:={y:x+y∈P forallx∈P}.
IfC={0}, thenP isalready bounded. IfC isfull-dimensional,thenthesetx+C
trivially contains an integral point, for any x ∈ P (we can always allocate a unit
box insidea full-dimensionalcone). At last, ifC is not full dimensional, then we
can choose a sufficiently large box B ⊆ Rn such that w(P) =w(P∩B) and both
P and P∩B have the same width direction, which is orthogonal to the (rational)
affine hull of C. If w(P) > w (n), then P∩B, and hence P, contains an integral
pointbyTheorem 2.1.
How can we use this theorem to check whether a given rational polyhedron
containsanintegralpoint? Theanswerisinthefollowinglemma,whichisalmost
adirect consequenceoftheflatness theorem.
Lemma 2.2. Let P⊆Rn be a rationalpolyhedronof finite latticewidth and let c
beitswidthdirection. Let
b :=min{cx:x∈P}. (4)
Then P containsan integralpointif andonlyifthepolyhedron
P∩{x:b 6cx6b +w (n)}
containsan integralpoint.
Proof. Ifw(P)<w (n),then thereisnothingto prove,since
P⊆{x:b 6cx<b +w (n)}.
Suppose that w(P)>w (n) and let P=y+Q, where y is an optimum solution of
thelinearprogram (4)andQ is thepolyhedroncontainingtheorigin,
Q:={x−y:x∈P}.
Wedenote
Q′ := w (n)Q and P′ :=y+Q′.
w(P)
In other words, Q is P translated to contain the origin, Q′ is obtained from Q by
scaling it down, and P′ is Q′ translated back to the original position. It is easy to
seethat
min{cx:x∈P′}=cy=b .
7
P′ P
cx=b cx=b +w (n)
Figure1: Illustrationfor theproofofLemma2.2
Since w (n) 61 and Q is convex, we have Q′ ⊆Q. This implies P′ ⊆P. Yet, we
w(P)
havew(P)=w(Q),and therefore, w(P′)=w(Q′)=w (n).
By Theorem 2.1, P′ contains an integral point, say z. But then z also belongs
toP and
cz6max{cx:x∈P′}=b +w (n).
Thiscompletestheproof.
Supposethat weknowawidthdirectioncofapolyhedron
P={x:Ax6b}⊆Rn. (5)
Since c is integral, the scalar product cx must be an integer for any integral point
x ∈ P. Together with Lemma 2.2, it allows us to split the original problem into
w (n)+1integerprogrammingproblemson lower-dimensionalpolyhedra
P∩{x:cx=⌈b ⌉+ j}, j=0,...,w (n)
whereb isdefined by (4).
The components of c must be relatively prime, as otherwise we could scale
c, obtaining a smaller width of P. Therefore its Hermite normal form is a unit
row-vector e . We can find a unimodular matrixU such that cU =e , introduce
1 1
new variables y :=U−1x and rewrite the original system of linear inequalities
Ax 6 b in the form AUy6 b. Since U is unimodular, the system Ax 6 b has an
integral solution if and only if the system AUy6b has an integral solution. But
the equation cx = ⌈b ⌉+ j turns into e y = ⌈b ⌉+ j. Thus, the first component
1
8
of y can be eliminated. All together, we can proceed with a constant number of
integer programming problems with a smaller number of variables. If n is fixed,
thisyieldsapolynomialalgorithm.
An attempt to generalize this approach for the case of varying b gives rise to
the following problems. First, the width directions of the polyhedron (5) depend
onbandthereforecanalsovary. Furthermore,evenifawidthdirectioncremains
the same, it is not a trivial task to proceed recursively. The point is that b , as it
is defined in (4), also depends on b and the hyper-planes {x : cx = ⌈b ⌉+ j} are
not easy to construct with b being a function of b. In the following sections we
basically resolve these two problems and adapt the above algorithm for the case
ofvaryingb.
3 Lattice width of a parametric polyhedron
A rational parametric polyhedron P defined by a matrix A ∈Qm×n is the family
ofpolyhedraoftheform
P :={x:Ax6b},
b
where the right-hand side b is allowed to vary over Rm. We restrict our attention
only to those b, for which P is non-empty. For each such b, there is a width
b
directioncofthepolyhedronP . WeaimtofindasmallsetC ofnon-zerointegral
b
directionssuchthat
w(P )=min{w (P ):c∈C}
b c b
for all vectors b for which P is non-empty. Further on, the elements of the setC
b
arereferredtoaswidthdirectionsoftheparametricpolyhedronP. Itturnsoutthat
suchasetcan becomputedinpolynomialtimewhen thenumberofcolumnsinA
isfixed.
Let A∈Qm×n beamatrixoffull columnrank. Givenasubsetofindices
N ={i ,...,i }⊆{1,...,m},
1 n
we denote by A the matrix composed of the rows i ,...,i of A. We say that N
N 1 n
is a basis of A if A is non-singular. Clearly, any matrix of full column rank has
N
at leastonebasis. Each basisN defines alineartransformation
F :Rm →Rn, F b=A−1b , (6)
N N N N
whichmapsright-handsidesbtothecorrespondingbasicsolutions. Wecanview
F as an n×m-matrix of rational numbers. If the point F b satisfies the system
N N
9
Ax6b, then it is a vertex of the polyhedron {x:Ax6b}. From linear program-
mingdualityweknowthattheoptimumvalueofanyfeasiblelinearprogram
max{cx:Ax6b}
is finite if and only if there is a basis N such that c = yA for some row-vector
N
y>0. In other words, c must belong to the cone generated by the rows of matrix
A . Moreover, if it is finite, there is a basis N such that the optimum value is
N
attainedat F b. It givesusthefollowingsimplelemma.
N
Lemma 3.1. Let P be a parametricpolyhedrondefined by a rationalmatrixA. If
thereexistsa vector b′ suchthatthepolyhedron
P ={x:Ax6b′}
b′
hasinfinitelatticewidth,thenw(P ) isinfiniteforallb.
b
Proof. SupposethatthelatticewidthofP isfiniteforsomebandletcbeawidth
b
direction. Thenbothlinearprograms
max{cx:Ax6b} and min{cx:Ax6b}
are bounded and therefore there are bases N and N of A such that c belongs to
1 2
bothcones
C :={yA :y>0} and C :={−yA :y>0} (7)
1 N 2 N
1 2
generatedbytherowsofmatricesA and−A ,respectively. Butthenthelinear
N N
1 2
programs
max{cx:Ax6b′} and min{cx:Ax6b′}
arealso bounded,whencew (P ) isfinite.
c b′
The above lemma shows that finite lattice width is a property of the matrix A. In
particularP has finitelatticewidthifand onlyifP has finitelatticewidthforall
0 b
b. Conversely,ifP hasinfinitelatticewidth,thenP alsohasinfinitelatticewidth
0 b
andthereforecontainsanintegralpointforallb. Wecaneasilyrecognizewhether
P has infinite lattice width. For instance, we can enumerate all possible pairs of
0
basesN andN andcheckifthecones(7)haveacommonintegralvector. Further
1 2
we shall not deal with this “trivial”case and shall consider only those parametric
polyhedra, for which w(P ) is finite, and therefore w(P ) is finite for any b. We
0 b
sayin thiscasethattheparametricpolyhedronP hasfinitelatticewidth.
10