SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
NP COMPLETENESS & APPROXIMATION
Partha P Chakrabarti
Indian Institute of Technology Kharagpur
Algorithm Design by Recursion Transformation
1. Initial Solution
a. Recursive Definition – A set of Solutions
b. Inductive Proof of Correctness
c. Analysis Using Recurrence Relations
2. Exploration of Possibilities
a. Decomposition or Unfolding of the Recursion Tree
b. Examination of Structures formed
c. Re-composition Properties
3. Choice of Solution & Complexity Analysis
a. Balancing the Split, Choosing Paths
b. Identical Sub-problems
4. Data Structures & Complexity Analysis
a. Remembering Past Computation for Future
b. Space Complexity
5. Final Algorithm & Complexity Analysis
a. Traversal of the Recursion Tree
b. Pruning
6. Implementation
a. Available Memory, Time, Quality of Solution, etc
 Algorithms and Programs
 Pseudo-Code
 Algorithms + Data Structures = Programs
 Initial Solutions + Analysis + Solution
Refinement + Data Structures = Final
Algorithm
 Use of Recursive Definitions as Initial
Solutions
 Recurrence Equations for Proofs and
Analysis
 Solution Refinement through Recursion
Transformation and Traversal
 Data Structures for saving past
computation for future use
Overview of Algorithm Design
1. Initial Solution
a. Recursive Definition – A set of Solutions
b. Inductive Proof of Correctness
c. Analysis Using Recurrence Relations
2. Exploration of Possibilities
a. Decomposition or Unfolding of the Recursion Tree
b. Examination of Structures formed
c. Re-composition Properties
3. Choice of Solution & Complexity Analysis
a. Balancing the Split, Choosing Paths
b. Identical Sub-problems
4. Data Structures & Complexity Analysis
a. Remembering Past Computation for Future
b. Space Complexity
5. Final Algorithm & Complexity Analysis
a. Traversal of the Recursion Tree
b. Pruning
6. Implementation
a. Available Memory, Time, Quality of Solution, etc
1. Core Methods
a. Divide and Conquer
b. Greedy Algorithms
c. Dynamic Programming
d. Branch-and-Bound
e. Analysis using Recurrences
f. Advanced Data Structuring
2. Important Problems to be addressed
a. Sorting and Searching
b. Strings and Patterns
c. Trees and Graphs
d. Combinatorial Optimization
3. Complexity & Advanced Topics
a. Time and Space Complexity
b. Lower Bounds
c. Polynomial Time, NP-Hard
d. Parallelizability, Randomization
Complexity: Order of Growth: Graphically
Problem Complexity Vs Algorithm
Complexity
Decidable / Undecidable Problems
Hard Problems / Easy Problems
Algorithms and Lower Bounds
Optimal Algorithms
Polynomial / Exponential Algorithms
NP Compete or NP Hard Problems
Optimization and Decision Problems
Decision Problems and Languages
The Class P (Problems with Polynomial Time Solutions)
Computer Architecture, Sample Instruction Set
Deterministic Turing Machines and Class P
Tractable Problems with Polynomial Time Algorithms
Intractable Problems
 Evaluation of a Game instance of Chess
 Cryptarithmetic Problem
 Time-Table Scheduling
 Boolean Satisfiability
 Vertex Cover
 Graph Colouring / Independent Set /
Max Clique
 Subset Sum / Knapsack
 Hamiltonian Cycle / Travelling
Salesperson
 Multiprocessor Task Scheduling
 Cutting and Packing Problems
Non-Deterministic Turing Machines and Class NP
Choose Instruction:
Choose(1:n)
Revisiting the Coins Problem
Revisiting the Coins Problem: Non-Deterministic Choice
Other Examples of Problems in NP
 Boolean Satisfiability
 Vertex Cover
 Graph Colouring / Independent Set /
Max Clique
 Subset Sum / Knapsack
 Hamiltonian Cycle / Travelling
Salesperson
 Multiprocessor Task Scheduling
 Cutting and Packing Problems
Other Examples of Problems in NP
 Boolean Satisfiability
 Vertex Cover
 Graph Colouring / Independent Set /
Max Clique
 Subset Sum / Knapsack
 Hamiltonian Cycle / Travelling
Salesperson
 Multiprocessor Task Scheduling
 Cutting and Packing Problems
Other Examples of Problems in NP
 Boolean Satisfiability
 Vertex Cover
 Graph Colouring / Independent Set /
Max Clique
 Subset Sum / Knapsack
 Hamiltonian Cycle / Travelling
Salesperson
 Multiprocessor Task Scheduling
 Cutting and Packing Problems
Class NP and Polynomial Time Verifiability
Class NP and Intractable Problems
P and NP
NP-Complete and NP-Hard Problems
Relating Coins Problem and 2-Processor Scheduling
NP-Completeness
Cook-Levine Theorem
(Boolean Satisfiability is NP-Complete)
Karp’s Reductions
Proving Travelling Salesperson is NP-Complete
Proving Max-Clique is NP-Complete
What does NP-Completeness Signify?
Polynomial Time Approximation Algorithms
Given an NP-Complete
Optimization Problem, can we
develop an algorithm that works in
Polynomial Time and guarantees a
worst-case / average-case bound
on the solution quality?
A Polynomial Time Approximation Scheme (PTAS) is an algorithm
which takes an instance of an optimization problem and a
parameter ε > 0 and produces a solution that is within a factor 1 +
ε of being optimal (or 1 – ε for maximization problems). For
example, for the Euclidean traveling salesman problem, a PTAS
would produce a tour with length at most (1 + ε)L, with L being the
length of the shortest tour.
The running time of a PTAS is required to be polynomial in the
problem size for every fixed ε, but can be different for different ε.
Thus an algorithm running in time O(n1/ε) or even O(nexp(1/ε)) counts
as a PTAS.
An efficient polynomial-time approximation scheme or EPTAS, in
which the running time is required to be O(nc) for a
constant c independent of ε.
A fully polynomial-time approximation scheme or FPTAS, which
requires the algorithm to be polynomial in both the problem
size n and 1/ε.
2-Approximation Algorithm for Euclidean TSP
ε Approximation for
General TSP is NP-Hard
2-Approximation Algorithm for Knapsack
(1+ε) -Approximation Algorithm for Knapsack
Thank you
Any Questions?

Mais conteúdo relacionado

Semelhante a FADML 09 PPC NP Completeness (1).pdf

Time and space complexity
Time and space complexityTime and space complexity
Time and space complexityAnkit Katiyar
 
Algorithms Design Patterns
Algorithms Design PatternsAlgorithms Design Patterns
Algorithms Design PatternsAshwin Shiv
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautzbutest
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautzbutest
 
Branch and bound technique
Branch and bound techniqueBranch and bound technique
Branch and bound techniqueishmecse13
 
Proving Lower Bounds to answer the P versus NP Question
Proving Lower Bounds to answer the P versus NP QuestionProving Lower Bounds to answer the P versus NP Question
Proving Lower Bounds to answer the P versus NP Questionguest383ed6
 
On the Numerical Solution of Differential Equations
On the Numerical Solution of Differential EquationsOn the Numerical Solution of Differential Equations
On the Numerical Solution of Differential EquationsKyle Poe
 
NP Hard Presentation
NP Hard Presentation NP Hard Presentation
NP Hard Presentation FoodieVlogger
 
Divide and Conquer Case Study
Divide and Conquer Case StudyDivide and Conquer Case Study
Divide and Conquer Case StudyKushagraChadha1
 
Limits of Computation
Limits of ComputationLimits of Computation
Limits of ComputationJoshua Reuben
 
The Limits of Computation
The Limits of ComputationThe Limits of Computation
The Limits of ComputationJoshua Reuben
 
P, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-HardP, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-HardAnimesh Chaturvedi
 

Semelhante a FADML 09 PPC NP Completeness (1).pdf (20)

Ds lesson plan
Ds lesson planDs lesson plan
Ds lesson plan
 
Time and space complexity
Time and space complexityTime and space complexity
Time and space complexity
 
Algorithms Design Patterns
Algorithms Design PatternsAlgorithms Design Patterns
Algorithms Design Patterns
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautz
 
Learning to Search Henry Kautz
Learning to Search Henry KautzLearning to Search Henry Kautz
Learning to Search Henry Kautz
 
Branch and bound technique
Branch and bound techniqueBranch and bound technique
Branch and bound technique
 
Particle filter
Particle filterParticle filter
Particle filter
 
Proving Lower Bounds to answer the P versus NP Question
Proving Lower Bounds to answer the P versus NP QuestionProving Lower Bounds to answer the P versus NP Question
Proving Lower Bounds to answer the P versus NP Question
 
On the Numerical Solution of Differential Equations
On the Numerical Solution of Differential EquationsOn the Numerical Solution of Differential Equations
On the Numerical Solution of Differential Equations
 
NP Hard Presentation
NP Hard Presentation NP Hard Presentation
NP Hard Presentation
 
Np completeness
Np completeness Np completeness
Np completeness
 
AA ppt9107
AA ppt9107AA ppt9107
AA ppt9107
 
Algoritmos aproximados
Algoritmos aproximadosAlgoritmos aproximados
Algoritmos aproximados
 
Divide and Conquer Case Study
Divide and Conquer Case StudyDivide and Conquer Case Study
Divide and Conquer Case Study
 
Limits of Computation
Limits of ComputationLimits of Computation
Limits of Computation
 
The Limits of Computation
The Limits of ComputationThe Limits of Computation
The Limits of Computation
 
Academic paper - Final
Academic paper - FinalAcademic paper - Final
Academic paper - Final
 
chap3.pdf
chap3.pdfchap3.pdf
chap3.pdf
 
P, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-HardP, NP, NP-Complete, and NP-Hard
P, NP, NP-Complete, and NP-Hard
 
Approximation algorithms
Approximation  algorithms Approximation  algorithms
Approximation algorithms
 

Último

BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxolyaivanovalion
 
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...Delhi Call girls
 
FESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdfFESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdfMarinCaroMartnezBerg
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...amitlee9823
 
ALSO dropshipping via API with DroFx.pptx
ALSO dropshipping via API with DroFx.pptxALSO dropshipping via API with DroFx.pptx
ALSO dropshipping via API with DroFx.pptxolyaivanovalion
 
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...amitlee9823
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxolyaivanovalion
 
Probability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter LessonsProbability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter LessonsJoseMangaJr1
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Valters Lauzums
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxolyaivanovalion
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysismanisha194592
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightCheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightDelhi Call girls
 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAroojKhan71
 
Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz1
 
Call me @ 9892124323 Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
Call me @ 9892124323  Cheap Rate Call Girls in Vashi with Real Photo 100% SecureCall me @ 9892124323  Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
Call me @ 9892124323 Cheap Rate Call Girls in Vashi with Real Photo 100% SecurePooja Nehwal
 

Último (20)

BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptx
 
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
Call Girls in Sarai Kale Khan Delhi 💯 Call Us 🔝9205541914 🔝( Delhi) Escorts S...
 
FESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdfFESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdf
 
Predicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science ProjectPredicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science Project
 
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Bommasandra Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
ALSO dropshipping via API with DroFx.pptx
ALSO dropshipping via API with DroFx.pptxALSO dropshipping via API with DroFx.pptx
ALSO dropshipping via API with DroFx.pptx
 
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Marol Naka Call On 9920725232 With Body to body massage...
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptx
 
Probability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter LessonsProbability Grade 10 Third Quarter Lessons
Probability Grade 10 Third Quarter Lessons
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptx
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysis
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightCheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
 
Sampling (random) method and Non random.ppt
Sampling (random) method and Non random.pptSampling (random) method and Non random.ppt
Sampling (random) method and Non random.ppt
 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
 
Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signals
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
(NEHA) Call Girls Katra Call Now 8617697112 Katra Escorts 24x7
 
Call me @ 9892124323 Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
Call me @ 9892124323  Cheap Rate Call Girls in Vashi with Real Photo 100% SecureCall me @ 9892124323  Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
Call me @ 9892124323 Cheap Rate Call Girls in Vashi with Real Photo 100% Secure
 

FADML 09 PPC NP Completeness (1).pdf

  • 1. NP COMPLETENESS & APPROXIMATION Partha P Chakrabarti Indian Institute of Technology Kharagpur
  • 2. Algorithm Design by Recursion Transformation 1. Initial Solution a. Recursive Definition – A set of Solutions b. Inductive Proof of Correctness c. Analysis Using Recurrence Relations 2. Exploration of Possibilities a. Decomposition or Unfolding of the Recursion Tree b. Examination of Structures formed c. Re-composition Properties 3. Choice of Solution & Complexity Analysis a. Balancing the Split, Choosing Paths b. Identical Sub-problems 4. Data Structures & Complexity Analysis a. Remembering Past Computation for Future b. Space Complexity 5. Final Algorithm & Complexity Analysis a. Traversal of the Recursion Tree b. Pruning 6. Implementation a. Available Memory, Time, Quality of Solution, etc  Algorithms and Programs  Pseudo-Code  Algorithms + Data Structures = Programs  Initial Solutions + Analysis + Solution Refinement + Data Structures = Final Algorithm  Use of Recursive Definitions as Initial Solutions  Recurrence Equations for Proofs and Analysis  Solution Refinement through Recursion Transformation and Traversal  Data Structures for saving past computation for future use
  • 3. Overview of Algorithm Design 1. Initial Solution a. Recursive Definition – A set of Solutions b. Inductive Proof of Correctness c. Analysis Using Recurrence Relations 2. Exploration of Possibilities a. Decomposition or Unfolding of the Recursion Tree b. Examination of Structures formed c. Re-composition Properties 3. Choice of Solution & Complexity Analysis a. Balancing the Split, Choosing Paths b. Identical Sub-problems 4. Data Structures & Complexity Analysis a. Remembering Past Computation for Future b. Space Complexity 5. Final Algorithm & Complexity Analysis a. Traversal of the Recursion Tree b. Pruning 6. Implementation a. Available Memory, Time, Quality of Solution, etc 1. Core Methods a. Divide and Conquer b. Greedy Algorithms c. Dynamic Programming d. Branch-and-Bound e. Analysis using Recurrences f. Advanced Data Structuring 2. Important Problems to be addressed a. Sorting and Searching b. Strings and Patterns c. Trees and Graphs d. Combinatorial Optimization 3. Complexity & Advanced Topics a. Time and Space Complexity b. Lower Bounds c. Polynomial Time, NP-Hard d. Parallelizability, Randomization
  • 4. Complexity: Order of Growth: Graphically Problem Complexity Vs Algorithm Complexity Decidable / Undecidable Problems Hard Problems / Easy Problems Algorithms and Lower Bounds Optimal Algorithms Polynomial / Exponential Algorithms NP Compete or NP Hard Problems
  • 7. The Class P (Problems with Polynomial Time Solutions)
  • 10. Tractable Problems with Polynomial Time Algorithms
  • 11. Intractable Problems  Evaluation of a Game instance of Chess  Cryptarithmetic Problem  Time-Table Scheduling  Boolean Satisfiability  Vertex Cover  Graph Colouring / Independent Set / Max Clique  Subset Sum / Knapsack  Hamiltonian Cycle / Travelling Salesperson  Multiprocessor Task Scheduling  Cutting and Packing Problems
  • 12. Non-Deterministic Turing Machines and Class NP Choose Instruction: Choose(1:n)
  • 14. Revisiting the Coins Problem: Non-Deterministic Choice
  • 15.
  • 16. Other Examples of Problems in NP  Boolean Satisfiability  Vertex Cover  Graph Colouring / Independent Set / Max Clique  Subset Sum / Knapsack  Hamiltonian Cycle / Travelling Salesperson  Multiprocessor Task Scheduling  Cutting and Packing Problems
  • 17. Other Examples of Problems in NP  Boolean Satisfiability  Vertex Cover  Graph Colouring / Independent Set / Max Clique  Subset Sum / Knapsack  Hamiltonian Cycle / Travelling Salesperson  Multiprocessor Task Scheduling  Cutting and Packing Problems
  • 18. Other Examples of Problems in NP  Boolean Satisfiability  Vertex Cover  Graph Colouring / Independent Set / Max Clique  Subset Sum / Knapsack  Hamiltonian Cycle / Travelling Salesperson  Multiprocessor Task Scheduling  Cutting and Packing Problems
  • 19. Class NP and Polynomial Time Verifiability
  • 20. Class NP and Intractable Problems
  • 23. Relating Coins Problem and 2-Processor Scheduling
  • 28. Proving Max-Clique is NP-Complete
  • 30. Polynomial Time Approximation Algorithms Given an NP-Complete Optimization Problem, can we develop an algorithm that works in Polynomial Time and guarantees a worst-case / average-case bound on the solution quality? A Polynomial Time Approximation Scheme (PTAS) is an algorithm which takes an instance of an optimization problem and a parameter ε > 0 and produces a solution that is within a factor 1 + ε of being optimal (or 1 – ε for maximization problems). For example, for the Euclidean traveling salesman problem, a PTAS would produce a tour with length at most (1 + ε)L, with L being the length of the shortest tour. The running time of a PTAS is required to be polynomial in the problem size for every fixed ε, but can be different for different ε. Thus an algorithm running in time O(n1/ε) or even O(nexp(1/ε)) counts as a PTAS. An efficient polynomial-time approximation scheme or EPTAS, in which the running time is required to be O(nc) for a constant c independent of ε. A fully polynomial-time approximation scheme or FPTAS, which requires the algorithm to be polynomial in both the problem size n and 1/ε.
  • 31. 2-Approximation Algorithm for Euclidean TSP ε Approximation for General TSP is NP-Hard