9.4 Dealing with NP-hard problems Flashcards
Will Quantum Computers, P=NP, externalities etc. reasonably help you solve your NP hard problem by next week?
Nope.
What options do you have to solve NP-hard problems?
- Approximate solution
- Exploit properties to give a polynomial solution
- Try a slower than polynomial algorithm (sub exponential)
- Otherwise use a SAT solver
What are the benifits / challenges of solving an NP-hard problem using an approximate solution?
+ Some problems like minimum vertex cover can be found within a factor of 2 (poly time)
- Others are NP hard within factor of n^0.9999 (independent set)
What are some exploitable parameters in graph problems?
- Few edges
- Constant max degree
- Look like tree
- Randomness
- Low tree-width
What are parameterised problems (and what are fixed-parameter tractable problems), and how is efficiency defined for them
- Parameterised problem is a special case where a certain parameter is fixed: eg: low max degree
- Use Δ to represent parameter
- Ideally g(Δ) * n^c
- FPT are parameterised problems solvable in poly time. And W[1] hardness is the version of NP-hardness (ie intractable)
What is a planar graph?
- Can be drawn without 2 edges overlapping (ex drawing on a map)
- Any non-planar graph has a subform of the below 2
How can planar graphs help us (by finding a worse than polynomial time algorithm). And what is the Exponential Time Hypothesis?
- Instead of a^n it is often 2^sqrt(n), which in practice can be much better than exponential
Why is using a SAT solver not always a bad idea?
- In the real world can often solve 10s of thousands of variables (exploiting some magical property)