Algoritmi on-line e risoluzione di problemi complessi Carlo Fantozzi

Slides:



Advertisements
Similar presentations
Approximation Algorithms
Advertisements

Generalization and Specialization of Kernelization Daniel Lokshtanov.
Reducibility Class of problems A can be reduced to the class of problems B Take any instance of problem A Show how you can construct an instance of problem.
Approximation Algorithms for TSP
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Concept of Completeness and hardness for a complexity class Definition.
CS774. Markov Random Field : Theory and Application Lecture 17 Kyomin Jung KAIST Nov
Umans Complexity Theory Lectures Lecture 15: Approximation Algorithms and Probabilistically Checkable Proofs (PCPs)
PCPs and Inapproximability Introduction. My T. Thai 2 Why Approximation Algorithms  Problems that we cannot find an optimal solution.
Minimum Spanning Trees Kun-Mao Chao ( 趙坤茂 ) Department of Computer Science and Information Engineering National Taiwan University, Taiwan
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Computability and Complexity 23-1 Computability and Complexity Andrei Bulatov Search and Optimization.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Approximation Algoirthms: Semidefinite Programming Lecture 19: Mar 22.
Computational problems, algorithms, runtime, hardness
1 Optimization problems such as MAXSAT, MIN NODE COVER, MAX INDEPENDENT SET, MAX CLIQUE, MIN SET COVER, TSP, KNAPSACK, BINPACKING do not have a polynomial.
Formal Complexity Analysis of Mobile Problems & Communication and Computation in Distributed Sensor Networks in Distributed Sensor Networks Carla P. Gomes.
Analysis of Algorithms CS 477/677
[1][1][1][1] Lecture 2-3: Coping with NP-Hardness of Optimization Problems in Practice May 26 + June 1, Introduction to Algorithmic Wireless.
Time Complexity.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
1 Combinatorial Dominance Analysis Keywords: Combinatorial Optimization (CO) Approximation Algorithms (AA) Approximation Ratio (a.r) Combinatorial Dominance.
Vertex cover problem S  V such that for every {u,v}  E u  S or v  S (or both)
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
Approximation Algorithms Motivation and Definitions TSP Vertex Cover Scheduling.
Hardness Results for Problems P: Class of “easy to solve” problems Absolute hardness results Relative hardness results –Reduction technique.
Hardness Results for Problems
Approximation Algorithms
1 Chapter 11 Approximation Algorithms Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.
1 Chapter 11 Approximation Algorithms Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Bold Stroke January 13, 2003 Advanced Algorithms CS 539/441 OR In Search Of Efficient General Solutions Joe Hoffert
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
1 Approximation Through Scaling Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij.
APPROXIMATION ALGORITHMS VERTEX COVER – MAX CUT PROBLEMS
Design Techniques for Approximation Algorithms and Approximation Classes.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Advanced Algorithm Design and Analysis (Lecture 13) SW5 fall 2004 Simonas Šaltenis E1-215b
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
Approximation Algorithms
CSC 413/513: Intro to Algorithms NP Completeness.
CSC 172 P, NP, Etc. “Computer Science is a science of abstraction – creating the right model for thinking about a problem and devising the appropriate.
DP TSP Have some numbering of the vertices We will think of all our tours as beginning and ending at 1 C(S, j) = length of shortest path visiting each.
Polynomial-time reductions We have seen several reductions:
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 28, 2014.
Princeton University COS 423 Theory of Algorithms Spring 2001 Kevin Wayne Approximation Algorithms These lecture slides are adapted from CLRS.
Computer Science Day 2013, May Distinguished Lecture: Andy Yao, Tsinghua University Welcome and the 'Lecturer of the Year' award.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
Although this may seem a paradox, all exact science is dominated by the idea of approximation. Bertrand Russell Approximation Algorithm.
Unit 9: Coping with NP-Completeness
Non-Approximability Results. Summary -Gap technique -Examples: MINIMUM GRAPH COLORING, MINIMUM TSP, MINIMUM BIN PACKING -The PCP theorem -Application:
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 30, 2014.
1 Chapter 11 Approximation Algorithms Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.
1 Approximation algorithms Algorithms and Networks 2015/2016 Hans L. Bodlaender Johan M. M. van Rooij TexPoint fonts used in EMF. Read the TexPoint manual.
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.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
Approximation algorithms
Introduction to Approximation Algorithms
Optimization problems such as
Maximum Matching in the Online Batch-Arrival Model
Approximation Algorithms
Computability and Complexity
Approximation Algorithms
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
Approximation Algorithms
Presentation transcript:

Algoritmi on-line e risoluzione di problemi complessi Carlo Fantozzi

Summary & Caveats From Professor Ausiello’s course Structure of the talk:  approximation algorithms (core)  on-line algorithms (a few words) 16:1 compression ratio! Heterogeneous audience (& dumb speaker) No details: only the framework of the course

Complexity Theory What is efficiently computable? Efficient = “Polynomial time” Decision problems: yes/no answer The P class: poly-time solution The NP class: poly-time verification Poly-time (Karp) reductions  NP-hard problems  NP-complete problems P  NP; is it also P=NP?

Optimization problems Optimization problem: a quadruple  Set of instances I  Set of feasible solutions S  Cost function m(x,y), x  I, y  S  min/MAX We are interested in optimal solutions Example: min vertex cover

Optimization: 3 Approaches Decision problem: “is there a solution with cost  m?  m?” Evaluation problem: “find optimal value of cost function” Constructive optimization problem: “find the optimal solution” Approaches are not (proved to be) equivalent. They are equivalent whenever the decision problem is NP-complete.

Complexity Revised (1) Solutions have polynomial size Cost function computable in poly time PO class: poly-time algorithm returns optimal solution and optimal cost NPO class: poly-time verification alg. for feasible solutions PO  NPO; is it also PO=NPO?

Complexity Revised (2) Poly-time Turing reductions; P1  T P2 if there exists an algorithm for P1 which queries an oracle for P2 NP-hard optimization problem: every decision problem is T-reducible to it in poly time PO=NPO if and only if P=NP: do not hope for poly-time algs…

Approximation Algs (1) Poly-time algs that give approx solutions Guaranteed performance (1970s): maximum “distance” from optimum over all problem instances Absolute approximation: cost within an additive constant from opt. Relative error: E(x,y)=|opt(x)-m(x,y)|/MAX{opt(x),m(x,y)} Performance ratio: R(x,y)=MAX{m(x,y)/opt(x),opt(x)/m(x,y)}

Approximation Algs (2) r-approximate algorithm: R(x,y)  r  x, i.e. cost is at most r times the optimum Example: min vertex cover (NP-hard)  Pick an edge  Include nodes of the edge into the cover  Remove nodes from the graph; repeat Greedy algorithm is 2-approximate

Approximation classes Sometimes things are not so easy Some problems are “more approximable” than others Many approximation classes exist  The APX class  The PTAS class  The FPTAS class These classes form a hierarchy if P  NP

The APX class Class of all NPO problems that admit a poly-time r-approximate algorithm The general TSP is not in the APX class (unless P=NP) The metric TSP is in the APX class (best algorithm: Cristofides', with a 3/2 performance ratio)

The PTAS class Class of NPO problems that admit a poly-time approximation scheme An approximaxion scheme is a tunable alg: can trade running time for performance An algorithm is a PTAS for P if it gives an r-approx. solution in poly time for any r>1 The metric TSP is not in the PTAS class: no (129/128)-approximate algorithm exists The Euclidean TSP is in the PTAS class

The FPTAS class The approximation scheme must be polynomial in both |x| and r Problems in this class are optimally solvable for most practical purposes The Euclidean TSP is not in FPTAS Maximum Knapsack is in FPTAS Not many problems belong to FPTAS

Class Hierarchy NPO e.g. TSP APX e.g. MTSP PTAS e.g. ETSP FPTAS e.g. Knapsack

Approximation Techniques Greedy approach Linear programming Dynamic programming Randomization Computational geometry A compendium of NPO problems:

On-Line Algorithms An on-line algorithm  does not know entire input in advance  must take a decision each time it receives an input piece; each decision has a cost  total cost must be maximized/minimized The constraint on the input makes these optimization problems much more difficult! Off-line algorithm: knows entire input as usual

Performance Evaluation Competitive analysis: compare on-line solution & optimal off-line sol. On-line algorithm A is c-competitive if there exists a constant a such that Worst-case analysis: A may perform much better on real-world inputs m A (x)  cm OPT (x)+a  x

Examples Ski rental problem: for how long should a novice skier rent skis before buying? Buy when the total cost of rental becomes higher than the cost of skis Greedy strategy is 2-competitive Task scheduling problem Graham’s algorithm (1966): assign new task to the less loaded processor Greedy strategy is (2-1/p)-competitive if the durations of tasks are known in advance