24
$\begingroup$

If I have a set of linear constraints in which each constraint has at most (say) 4 variables (all nonnegative and with {0,1} coefficients except for one variable that can have a -1 coefficient), what is known about the solution space? I am less concerned with an efficient solution (although please indicate if one is known) than with knowing how small the minimum of the objective function can be, as a function of the number of variables and number of constraints, and the number of variables per constraint.

More concretely, the program is something like

minimize t
  subject to
for all i, x_i is a positive integer
x1 + x2 + x3 - t < 0
x1 + x4 + x5 - t < 0
...
x3 + x6 - t ≥ 0
x1 + x2 + x7 - t ≥ 0
...

If a concrete question is needed, then is it the case that the minimum solution obeys t <= O(max{# of variables, # of constraints}), with the constant in the O() depending on the sparseness? But even if the answer is no, I am more interested in knowing what kind of textbook or paper to study for a discussion of such issues, and if there is an area of study devoted to this kind of thing but I just don't know the terms to search for. Thank you.

Update: With further reflection (and thinking through the rather simple reduction of 3SAT to ILP, which uses constraints with three variables), I realize that the issue of coefficients is critical (if there is going to be an efficient algorithm). More precisely, all x_i variables have 0 or 1 coefficients (with at most three 1 coefficients in any one constraint), and all t variables have -1 coefficients, and all comparisons have variables on the left and 0 on the right. I updated the above example to clarify.

$\endgroup$
5
  • $\begingroup$ Can you phrase your question more precisely? I am unsure whether the variable t is the one that counts as having a negative coefficient. $\endgroup$ Commented Aug 17, 2010 at 14:50
  • $\begingroup$ Yes, t is the variable with a negative coefficient, if all variables are required to be on the left side. Or, if you like, all coefficients are {0,1} but all x_i's appear on the left side and t appears on the right side of each constraint. $\endgroup$
    – Dave Doty
    Commented Aug 17, 2010 at 15:03
  • $\begingroup$ You have the constraints x_i ≥ 1 for all i, but do you also require that t ≥ 1? $\endgroup$ Commented Aug 18, 2010 at 23:53
  • $\begingroup$ Not explicitly, but since there are constraints of the form x_i + ... < t, it is the case that t >= 1 will be enforced. $\endgroup$
    – Dave Doty
    Commented Aug 19, 2010 at 18:35
  • 1
    $\begingroup$ You may want to check out a paper by D. Chakrabarty and myself dx.doi.org/10.1007/s00453-010-9431-z (it's also on the arXiv) where we survey and improve results on approximability of sparse integer programming, some of which were then improved by N. Bansal et al (springerlink.com/content/e705157852700g23 or arXiv) $\endgroup$
    – daveagp
    Commented Sep 23, 2010 at 10:17

3 Answers 3

12
$\begingroup$

The answer to this (at least to the concrete question about linearly bounding the solution) is no. This is part of the following paper: http://arxiv.org/abs/1011.3493. Theorem 5.1 was the motivation for this question.

The counterexample is this:

base case:

a_1'  + b_1'  - t ≥ 0
a_1'' + b_1'' - t ≥ 0
a_1   + b_1'  - t ≤ -1
a_1 ' + b_1'' - t ≤ -1

recursive case:

a_n'  + b_n'  + a_{n-1}   - t ≥ 0
a_n'' + b_n'' + a_{n-1}   - t ≥ 0
a_n   + b_n'  + a_{n-1}'' - t ≤ -1
a_n'  + b_n'  + a_{n-1}'' - t ≤ -1

along with requiring them all to be nonnegative.

You can prove by induction that any real solution must satisfy a_n'' >= a_n + 2^n. We change the "< 0"-inequalities into "≤ -1" because any integer solution satisfies "≤ -1" if and only if it satisfies "< 0".

So, the moral is that n inequalities of this form can have the property that all integer solutions have at least one integer at least exponential in n, certainly not linearly bounded as we originally suspected.

$\endgroup$
9
$\begingroup$

If the coefficient matrix is totally unimodular, then an efficient solution exists via ordinary linear programming. This holds for any ILP, not just sparse ones -- though you're more likely to be able to exploit this property for a sparse ILP such as yours.

I suspect you may know this already, so let me try and give you a better answer. Before thinking about the specifics too deeply, the answer to your concrete question is "yes", a bound exists. The the intersection of n inequalities in m variables defines a polytope. Because the coefficients are so well-behaved, we can work out an upper bound on the dimension of the coordinates of its vertices with a little arithmetic. This gives you a very easy upper bound on the dimension of any integer point within the polytope, and thus on a solution to your integer program. Have you tried this already?

Your problem in particular has quite a bit of structure (I'm curious, where does it come from?) so I'm confident that we can be much more precise than this if we discuss it further.

Now, for the more general question about finding information on this topic. This is the sort of problem that traditionally falls in the theory of linear and integer programming, a subset of mathematical programming.

It's quite an active area of research, but much of the work takes place in operations research departments under the headings of "optimization" and "mathematical programming" instead of computer science. There are many textbooks available covering the topic. You might consider the one by Wolsey, which we use at Berkeley. Here is an underused list of myths and counterexamples by Greenberg, including integer and linear programming, which may give you a sense of what things people consider in analyzing such problems. Wolsey is dense, but a reasonably good place to start -- there are a bevy of techniques for analyzing ILPs and improving problem formulations to the point of efficiency.

Let me add that if you do pursue the naive approach I suggest, by analyzing the geometry of the polytope, the terms to search for would concern bounding the size of the coordinates of the polytope's vertices. These terms come up more often in the mathematical literature about polytopes.

$\endgroup$
1
  • 2
    $\begingroup$ @Dave Doty: there is a stackexchange site for operations research or-exchange.com. $\endgroup$ Commented Nov 6, 2010 at 14:37
3
$\begingroup$

You may find this account of interest:

http://en.wikipedia.org/wiki/Polyhedral_combinatorics

and in particular the article by G. Ziegler:

Lectures on 0-1 polytopes

in:

Kalai, Gil; Ziegler, Günter M. (2000), Polytopes: Combinatorics and Computation, DMV Seminar, 29, Birkhäuser, ISBN 9783764363512 .

$\endgroup$
1
  • $\begingroup$ Thank you! That looks like exactly the kind of field that would study these sorts of results. $\endgroup$
    – Dave Doty
    Commented Nov 9, 2010 at 18:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.