I. Integer programming part of Clarkson-paper Randomized Algorithms-book

advertisement
I. Integer programming part of Clarkson-paper
II. Incremental Linear Programming, Section 9.10.1 in
Randomized Algorithms-book
presented by Jan De Mot
September 29, 2003
This presentation is based on: Clarkson, Kenneth L. Las Vegas Algorithms for Linear and Integer Programming When the Dimension
is Small. Journal of the ACM 42(2), March 1995, pp. 488-499. Preliminary version in Proceedings of the 29th Annual IEEE
Symposium on Foundations of Computer Science, 1988.
and Chapter 9 of: Motwani, Rajeev, and Prabhakar Raghavan. Randomized Algorithms. Cambridge, UK: Cambridge University
Press, 1995.
1/23
Outline
Part I: Integer Linear Programming (ILP)
• Previous work
• Algorithm for solving Integer Linear Programs [Clarkson 1995]
based on the mixed algorithm for LP (Susan)
– Concept
– Running Time Analysis
Part II: Incremental Linear Programming
• Concept
• SeideLP [Seidel 1991]
• BasisLP [Sharir and Welzl 1992]
2/23
Part I: Integer Linear Programming
3/23
Previous Work
•
•
•
[Lenstra 1983] showed how to solve an ILP in polynomial time
when the numbers of variables is fixed.
Subsequent improvements (e.g. by [Frank and Tardos 1987])
show that the fasted deterministic algorithm requires
operations on
-bit numbers.
Running time of new ILP algorithm:
This is substantially faster than Lenstra’s for
4/23
ILP Problem
•
Find the optimum of:
where
and
5/23
Notation and Preliminaries
•
Let:
–
–
•
denote the set of constraints defined by
and
denote the optimal solution of the ILP defined on
(not the corresponding LP relaxation).
Assume:
– Bounded solution by adding to
a new set of
constraints
:
where
and where we use a result by
[Schrijver 1986]: if an ILP has finite solution, then every coordinate
of that optimum has size no more than
where
is the facet
complexity of
– Unique solution by choosing the lexicographically largest point
achieving the optimum value.
6/23
ILP Algorithm: Concept
•
First it is established that an optimum is determined by a small
set ([Bell 1977] and [Scarf 1977]):
Lemma: There is a set
with
and with
•
ILP algorithms are variations on the LP algorithms, with sample
sizes using
rather than and using Lenstra’s algorithm in
the base case.
Here, we convert the mixed algorithm for LPs to a mixed
algorithm for ILPs, establishing the right sample sizes and
criteria for successful iterations in both the recursive and
iterative part of the mixed algorithm.
•
7/23
ILP Algorithm: Details
•
•
•
•
Lemma 2, related to the LP recursive algorithm, needs to be
redone due to the fact that
is not unique.
Reminder: why do we need lemma 2?
We want to make sure the set of violated constraints does not
become too big.
Lemma 2 (ILP version): Let
and let
be a
random subset of size
with
Let
be the set of constraints violated by
Then with
probability
Other necessary lemma’s remain valid or can be adapted easily,
yielding the following essential parameters for the ILP mixed
algorithm:
– Recursive part:
and require
– Iterative part:
of
use Lenstra’s algorithm for
for a successful iteration.
with a corresponding
bound
8/23
ILP Algorithm: Proof of Lemma 2 (ILP version)
•
Proof. Lemma 2 (ILP version): With probability
•
Assume is empty. For not empty: similar proof.
Let
and let
denote the
number of constraints in
violated by
We know that
for some
with
We want to find
such that the probability that
less then
This probability is bounded above by:
is
which is no more than:
9/23
ILP Algorithm: Proof of Lemma 2 (cont’d)
which is again no more than:
and using elementary bounds, this quantity is less than
for
10/23
ILP Algorithm: Running Time
•
We have the following theorem:
The ILP algorithm requires expected
row operations on
-bit vectors, and
expected operations on
-bit numbers, as
the constant factors do not depend on or
where
11/23
Part II: Incremental Linear Programming
12/23
Incremental LP
•
•
Randomized incremental algorithms for LP
Concept:
– add constraints in random order,
– after adding each constraint, determine the optimum of the
constraints added so far.
•
Two algorithms will be discussed:
– SeideLP
– BasisLP
13/23
Algorithm SeideLP
Input: A set of constraints
Output: The optimum of the LP defined by
0. if
output
1. Pick a random constraint
Recursively find
2.1. if
does not violate output
to be
the optimum
2.2. else project all the constraints of
onto
and
recursively solve this new linear programming problem;
14/23
SeideLP: Running Time
•
•
Let
denote an upper bound on the expected running
time for a problem with constraints in dimensions.
Then:
– First term: cost of recursively solving the LP defined by the
constraints
– Second term: checking whether violates
– Third term (with probability
): cost of projecting + recursively
solving smaller LP.
•
Theorem: There is a constant
satisfies the solution
such that the recurrence
15/23
SeideLP: Further Discussion
•
In Step 2.2. we completely
discard any information obtained
from the solution of the LP
•
From the above figure, it follows we must consider all
constraints in
But: Can we use
to “jump-start” the recursive call in
step 2.2.?
RESULT: Algorithm BasisLP
•
•
16/23
Algorithm BasisLP
Input:
Output: A basis
for
0. If
output
1. Pick a random constraint
BasisLP(
);
2.1. if does not violate
output
2.2. else output BasisLP( Basis(
Basis returns a basis for a set of
));
or fewer constraints.
17/23
BasisLP: Why does it work?
•
•
Each invocation of Basis occurs when the violation test in 2.1.
fails (i.e. does violate ).
What is the probability that we fail a violation test?
–
–
–
–
Let
Remember:
Pr( violates the optimum of
)
This probability decreases further if
contains some of the
constraints of
– This was indeed the motivation for modifying SeideLP to BasisLP.
18/23
BasisLP: Running Time
•
Notation:
– Given
enforcing in
– Let
denote
enforcing in
•
•
•
•
, we call
if
minus the number of constraints that are
is called the hidden dimension of
Lemma 1: If is enforcing in
then (i)
and (ii)
is extreme in all
such that
So, the probability that a violation occurs
can be bounded by
We establish that the
decreases by at least 1 at each
recursive call in step 2.2. It turns out
is likely to decrease
much faster.
Theorem: The expected running time of BasisLP is
19/23
BasisLP: Analysis Details
•
Proof of Lemma 1. If
– (i)
We have
subset of
– (ii) is extreme in all
Assume the contrary:
is enforcing in
then
which can not be true if
were a
such that
a
contradiction.
20/23
BasisLP: Analysis Details (Cont’d)
•
Lemma 2: Let
extreme constraint in
Then:
Let
and let
be a basis of
(i) Any constraint
that is enforcing in
(ii) is enforcing in
(iii)
be an
is also enforcing in
Proof:
– (i)
then:
– (ii) Since is extreme in
– (iii) Follows readily.
•
So, the numerator of
each execution.
decreases by at least 1 at
21/23
BasisLP: Analysis Details (Cont’d)
•
•
•
•
•
Show that this decrease is likely to be faster.
Given
and a random
we bound the
probability that violates
If it does, check the
probability distribution of the resulting hidden dimension.
Lemma 3: Let
be the extreme constraints of
that are not in
numbered so that
Then, for all and for
is enforcing in
Basis
(proof: immediate from lemma 2.)
In other words: when
then all of
will be
enforcing and the arguments of the recursive call will have
hidden dimension
Observation: since any
is equally likely to be
is uniformly
distributed on the integers in
and the resulting hidden
dimension is uniformly distributed on the integers in
22/23
BasisLP: Analysis Details (Cont’d)
•
•
•
Let
denote the maximum expected number of violation
tests for a call to BasisLP with arguments
where
and
We get:
This yields:
and consequently the expected running time of BasisLP is
Augmenting the analysis with Clarkson’s sampling technique
improves the running time of the mixed algorithm to
23/23
Download