Topics in Algorithms 2005 The Turnpike Problem Ramesh Hariharan.

Slides:



Advertisements
Similar presentations
Shortest Vector In A Lattice is NP-Hard to approximate
Advertisements

Splash Screen.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
The number of edge-disjoint transitive triples in a tournament.
Computational problems, algorithms, runtime, hardness
Asymptotic Growth Rate
Hardness Results for Problems P: Class of “easy to solve” problems Absolute hardness results Relative hardness results –Reduction technique.
Algorithm Design Techniques: Induction Chapter 5 (Except Sections 5.6 and 5.7)
Deciding Primality is in P M. Agrawal, N. Kayal, N. Saxena Slides by Adi Akavia.
1 Maximum matching Max Flow Shortest paths Min Cost Flow Linear Programming Mixed Integer Linear Programming Worst case polynomial time by Local Search.
Algorithm Design Techniques: Induction Chapter 5 (Except Section 5.6)
TECHNIQUES OF INTEGRATION
6/20/2015List Decoding Of RS Codes 1 Barak Pinhas ECC Seminar Tel-Aviv University.
Computational Complexity, Physical Mapping III + Perl CIS 667 March 4, 2004.
CS151 Complexity Theory Lecture 10 April 29, 2004.
On The Achromatic Number Problem Guy Kortsarz Rutgers University, Camden.
Hardness Results for Problems P: Class of “easy to solve” problems Absolute hardness results Relative hardness results –Reduction technique.
Hardness Results for Problems
The Simplified Partial Digest Problem: Hardness and a Probabilistic Analysis Zo ë Abrams Ho-Lin Chen
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
THE ELIMINATION METHOD Solving Systems of Three Linear Equations in Three Variables.
LIAL HORNSBY SCHNEIDER
Algebra Problems… Solutions
Polynomial Factorization Olga Sergeeva Ferien-Akademie 2004, September 19 – October 1.
1.1 Chapter 1: Introduction What is the course all about? Problems, instances and algorithms Running time v.s. computational complexity General description.
Review for Test 2.
Real Numbers and Their Properties รายวิชา ค ความรู้พื้นฐานสำหรับแคลคูลัส 1 ภาคเรียนที่ 1 ปีการศึกษา 2552.
Integration Techniques, L’Hôpital’s Rule, and Improper Integrals Copyright © Cengage Learning. All rights reserved.
Copyright © Cengage Learning. All rights reserved. 7 Techniques of Integration.
Chapter 10 Review: Matrix Algebra
1 Preliminaries Precalculus Review I Precalculus Review II
3208 Unit 2 Limits and Continuity
Chapter 1 Equations, Inequalities, and Mathematical Models
Great Theoretical Ideas in Computer Science.
Topics in Algorithms 2005 Constructing Well-Connected Networks via Linear Programming and Primal Dual Algorithms Ramesh Hariharan.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
Quantum Computing MAS 725 Hartmut Klauck NTU TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A.
Analysis of Algorithms
Chapter 3 Sec 3.3 With Question/Answer Animations 1.
Copyright © 2007 Pearson Education, Inc. Slide 7-1.
Chapter 8 With Question/Answer Animations 1. Chapter Summary Applications of Recurrence Relations Solving Linear Recurrence Relations Homogeneous Recurrence.
Copyright © 2014, 2010 Pearson Education, Inc. Chapter 2 Polynomials and Rational Functions Copyright © 2014, 2010 Pearson Education, Inc.
Advanced Algebraic Algorithms on Integers and Polynomials Prepared by John Reif, Ph.D. Analysis of Algorithms.
Copyright © 2013, 2009, 2005 Pearson Education, Inc. 1 3 Polynomial and Rational Functions Copyright © 2013, 2009, 2005 Pearson Education, Inc.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Great Theoretical Ideas in Computer Science.
Slide Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley.
Series Solutions of Linear Differential Equations CHAPTER 5.
Warm-Up. TEST Our Ch. 9 Test will be on 5/29/14 Complex Number Operations.
Limits to Computation How do you analyze a new algorithm? –Put it in the form of existing algorithms that you know the analysis. –For example, given 2.
Zero of Polynomial Functions Factor Theorem Rational Zeros Theorem Number of Zeros Conjugate Zeros Theorem Finding Zeros of a Polynomial Function.
Asymptotics and Recurrence Equations Prepared by John Reif, Ph.D. Analysis of Algorithms.
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
1 CSC 421: Algorithm Design & Analysis Spring 2014 Complexity & lower bounds  brute force  decision trees  adversary arguments  problem reduction.
NP-Completness Turing Machine. Hard problems There are many many important problems for which no polynomial algorithms is known. We show that a polynomial-time.
Quiz Simplify: 2. Simplify: Simplify (special pattern):
Young CS 331 D&A of Algo. NP-Completeness1 NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and.
Solving Quadratic Equations by Factoring
Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar Dr Nazir A. Zafar Advanced Algorithms Analysis and Design.
Factoring Quadratic Expressions Lesson 4-4 Part 1
Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar Dr Nazir A. Zafar Advanced Algorithms Analysis and Design.
MATRIKULASI MATEMATIKA
Polynomials and Factoring
MATH 374 Lecture 7 Linear Equations.
Analysis and design of algorithm
4.3 Solving Quadratic Equations by Factoring
Chapter 11 Limitations of Algorithm Power
Integration Techniques, L’Hôpital’s Rule, and Improper Integrals
Integration Techniques, L’Hôpital’s Rule, and Improper Integrals
Complexity Theory: Foundations
Presentation transcript:

Topics in Algorithms 2005 The Turnpike Problem Ramesh Hariharan

The Problem n points on a line these define n choose 2 distances given points, find distances: easy given distances, find points: not so easy

Example Distances

The Outside-In Algorithm Largest distance gives leftmost and rightmost points. Next largest distance defines the next inside point; should we put it on the left or on the right? 2 copies: both left and right; 1 copy: either is fine by symmetry Next largest distance defines the next inside point; should we put it on the left or on the right? 2 copies: both left and right; 1 copy: either is NOT fine as symmetry is already broken How do we choose the right one? Maybe there is no genuine choice, each choice leading to a distinct solution

The Outside-In Algorithm Choosing Left or Right Distances from new point to points in the SymBlock: doesn’t matter Remove these distances from consideration Distance x to the symmetry breaker : matters If x does not exist then place on left If x exists then: can’t say, maybe place on left and then x is realized by a later point along with a point in the symblock nl xSymBlock SymBreaker

The Outside-In Algorithm Algorithm Two choices at each step, sometimes locally undisambiguable Try both choices; take one first and then backtrack if you hit a dead end Time: 2^n backtracking alone with each step requiring a dead-end check dead end check: check if distances from this point to all previous points are available, and then mark these distances as unavailable, requires nlog n time Total Time: O(2^n nlog n)

Status of the Problem Backtracking 2^n nlogn is best known provable worst case solution Open Problem: Can one do better?

Special Cases Suppose the 2n-3 distances which come from endpoints are identified Easy Exercise??

Special Cases Suppose all distances are distinct? Not a Hard Exercise??

Hard Example Zhang’s Example: Backtracking is not of limited depth All distances between action blocks are available between the future anchor blocks and the sym blocks x x x action anchor sym

Special Cases Zhang’s Example: Solvable in polynomial time!!! hint: do 2 passes first pass: for each locus, identify whether or not it is symmetric second pass: do the actual placement How about these extended Zhang examples Why doesn’t the 2 pass work here? Open? Could be one way to approach the problem. action sym anchor

A Novel Approach Polynomial Representation d 1. … d m are the distances p 1 … p n are the point locations P(x) = Σ k x^{p k } Then P(x)P(1/x) = Σ k x^{p k } Σ k x^{-p k } = Σ i,j x^{p i -p j } = [ Σ m ( x^{d m } + x^{-d m }) ] + n, this is known, call it D(x) So turnpike comes down to factoring D(x) into factors P(x) and P(1/x) with integer or even 0/1 coefficients.

Turnpike via Polynomial Factorization Integer Polynomial Factorization runs in time polynomial in the degree Degree of D(x) is the largest distance So if the degree of D(x) is small, say poly in n, then we have a polynomial time algorithm for the turpike problem. What happens if the degree of D(x) is large? Degree could be exponential in n or even super exponential (I.e., 2^{n^2}) while keeping the problem size polynomial in n. So how do we factor high degree polynomials in time sub-exponential in the number of monomials rather than the degree??

Bounding Degrees Transform the given set of distances to a set of smaller distances so that the solution set does not change. Denote this transformation by T() Key Observation: Suffices to ensure that d i + d j = d k implies T( d i )+T( d j )=T( d k ) for all triples of distances d i d j d k Proof: Exercise?? Now one solves the above set of linear equations, numbers in the solution have size at most 6^{(n-1)/2} Proof: Exercise?? Hint, rewrite all equations in terms of just n-1 distances, I.e., those from the left endpoint; so this system has rank only n-1 and up to 6 terms in each equation; use cramer’s rule and hadamard’s ineq.

How Many Solutions? How many ways can an integer polynomial D(x) be factorized over integers into the form P(x)P(1/x)? Note D(x) is reversible, i.e., D(x) = deg(D(x)) D(1/x) D(x) is uniquely factorizable into irreducible factors over the integers. Proof: Exercise?? Each irreducible factor is either reversible or irreversible. If P i (x) is an irreversible factor, then P i (1/x) is also an irreversible factor Reversible factors must repeat an even number of times (provided there is a solution). The total number of distinct solutions is 2^{number of irreversible factors}. The number of irreversible factors is O(log n) So the number of distinct solutions is just polynomial in n!!!

Number of Irreversible Factors? Define a certain measure of a polynomial Show the measure of D(x) is small, i.e., bounded by not the degree but the number of terms, or the sum of absolute term coefficients, or sum of squares of these term coefficients. Show that the measure is multiplicative, so measure of product is product of measure when you multiply polynomials Show that an irreversible polynomial has measure at least 1+x for some fixed value x. This implies the bound of O(log n) irreversible factors.

So What The number of solutions to a turnpike instance is polynomial in n, which is roughly the input size. Such problems belong to the complexity class FewP which is likely to be a strict subset of NP. So Turnpike is unlikley to be NP-Hard Does it give a subexponential time algorithm?? Not yet. We have a algebraic number theoretic approach which yields a subexp algorithm, assuming a certain number theoretic fact. A overview in later classes.

References Skiena, Smith, Lemke: 95, show the bound on the number of solutions, must read paper, available on the web Special cases: Distances from endpoints identified Pandurangan,Ramesh: on my website Unique distances and the alg num th approach Mangesh, Naidu,Ramesh: being written up, also in Mangesh’s thesis

Thank You