finding the minimum-weight -path
DESCRIPTION
Finding the Minimum-Weight -path. Avinatan Hassidim, Orgad Keller , Moshe Lewenstein , Liam Roditty Bar- Ilan U niversity To appear in WADS`13. Problem. - PowerPoint PPT PresentationTRANSCRIPT
Finding the Minimum-Weight -pathAvinatan Hassidim, Orgad Keller, Moshe Lewenstein, Liam RodittyBar-Ilan UniversityTo appear in WADS`13
Problem
• Given an edge-weighted graph , parameter and a value where , our goal is to find the minimum-weight simple-path visiting vertices
1 2
3 4
2
2
2
3
𝑘=4
Previous Work
• Previous results only for finding a k-path (non-weighted graphs).
• Combinatorial:
• Alon, Yuster, Zwick (`95): • Can be generalized to the weighted case (minimum-weight)
• Kneis, Mölle, Richter, Rossmanith (`06): • Can be generalized to the weighted case (minimum-weight)
Previous Work
• Algebraic:
• Koutis (`08):
• Williams (`09):
• Björklund et al. (`10): for undirected graphs
• Algebraic methods do not seem to extend to the weighted variant
Open Question
• Open question raised in Williams [`09]:• Can the minimum-weight variant be solved in as well
• We answer yes, if the weights are small integers
• General variant is still open
Our Results
• Randomized algorithm for integer edge-weights running in time • A pseudo-polynomial dependency on M
• If the weights are reals in , a -approximation algorithm running in time
• Results can be extended to -tree problem: find a copy of a given k-node tree in a given graph• Same running times respectively for exact, approximate
Distance Matrix-Product
• Distance product:
• Let be a graph adjacency matrix
• is the minimum-weight -walk between and .
• Distance product can be simulated by matrix product for integers
3 2
5 2
𝑖𝑗
𝑡
𝑘−1
3
Simulation
• Let be an indeterminate variable• Define the polynomial adjacency matrix :
• is a polynomial on ;• Its minimum-degree with non-zero coefficient is the minimum-
weight -walk from to
• Problems: walks, not (simple) paths.
𝑧 3 𝑧 2
𝑧5 𝑧 2𝑖
𝑗
𝑘
𝐴2 [𝑖 , 𝑗 ]=𝑧5+ 𝑧7
𝑧 3
Intuition – Eliminate -walks
• Koutis’ and Williams’ method:
• Suppose we re-define B:•
• where is a variable for each vertex .
• Can we do the operation on some Algebraic structure where non-simple-walks cancel• i.e., where ?
Algebra
• Let be a multiplicative group and be a field• We define to be objects of the form: , where .
• Addition is component wise:
• Multiplication is convolution:
Algebra
• Define: • We’ll shorthand this as
• Define: • We’ll shorthand this as
• is a ring
Algebra
• Choose where • For all ,
• Choose , where multiplication is entry-wise addition modulo :• E.g., • So • For all , if and only if
Definition
• We define a family of polynomial adjacency matrices for :
• Our operations will be done on Indeterminate Variable for each vertex
A random value
Main Polynomial
• Define
• is a sum on all k-walks in the graph
𝑖1 𝑖5𝐵[ 𝑖1 ,𝑖2]𝐵[𝑖2 , 𝑖3]𝐵[𝑖3 , 𝑖4 ] 𝐵[𝑖4 ,𝑖5]
𝑖2 𝑖3 𝑖4
Main Polynomial
• is a sum on all -walks in the graph
𝑖1 𝑖5𝐵[ 𝑖1 ,𝑖2]𝐵[𝑖2 , 𝑖3]𝐵[𝑖3 , 𝑖4 ] 𝐵[𝑖4 ,𝑖5]
𝑖2 𝑖3 𝑖4
Algorithm
• Pick the random values for
• Pick random vectors (i.e., random vector for each vertex)
• Compute
• Return the lowest degree having a non-zero coefficient in (if such exists), or output “no -path in graph” otherwise
Propositions
• Non-simple paths vanish (=)
• Simple paths where the corresponding vectors are linearly independent do not vanish
• Simple paths where the corresponding vectors are linearly dependent vanish (=)• Happens with low probability
• Simple paths where the corresponding vectors are linearly independent survive w.h.p. when summed-up
Minimum-Degree of
• In particular, let d’ be the minimum degree of P. We’ll focus on the coefficient of , denoted as
• Then does not vanish w.h.p. and therefore the lowest-degree term corresponds to the minimum-weight -path
Running Time
• Dominated by multiplying two polynomials in of degree at most .• Can be done in by using multi-dimensional FFT
• Running time is
Approximation
• For real weights in , we give a -approximation algorithm.
• Lemma: for integer edge-weights, there is an algorithm that finds a -path of weight at most , or returns that no such path exists. • Proof outline: in the previous algorithm, truncate degrees that
are when multiplying polynomials
• Call this algorithm
Idea
• Let be the number of edges in a -path
• Let be lower and upper bounds on .• Initially set and
• Iteratively, we will fine-tune L,U until the ratio .
• Main idea: use adaptive scaling of the edge weights.• Scaling factor is different in each iteration
Fine-Tuning
While :• Let • Define (this is the scaling coefficient)• Define a new graph with edge weights
• “Try” to test if or not by running • Result is not necessary correct because of floor function!
Loss of Precision
• Loss of precision is , per edge, or equiv. per k-path
• If =“no” then
• But if =“yes” then
𝑋𝐿 𝑋+𝛿𝑈 𝑈
𝑋𝐿 𝑋+𝛿𝑈 𝑈
⏟𝑤(𝑂𝑃𝑇 )
⏟𝑤(𝑂𝑃𝑇 )
Fine-Tuning
• Loss of accuracy is , per edge, or equiv. per k-path
• If =“no” then • Update
• But if =“yes” then • Update
𝑋𝐿 𝑋+𝛿𝑈 𝑈
𝑋𝐿 𝑋+𝛿𝑈 𝑈𝑈
𝐿
Algorithm
• The ratio decreases (we will show convergence later)
• Once :• Define a new graph G’ with edge weights • Return the output of • (so loss of precision here is per -path)
Running Time
• Let be the values of at start of iteration • It can be shown that in both cases (when , when )
• So iterations until • Each call to costs (since )
• Final call to costs
• Overall running time is
Correctness
• The invariant is maintained throughout
• Let be the path returned by the algorithm• (By the call to )
• Then:
Thanks!