CSE6140 NP问题初步框架
CSE6140 NP问题初步框架
NP1:
- why should we care about NP problems?
- optimization and decision problems?
- class P problem?
- tractable and intractable problems?
- class NP problems?
- nondeterministic algorithm and what is NP algorithms?
- the difference between solving a problem and verifying a candidate solution? (using hamiltonian cycle as an example)
- is P = NP?
- NPC?
- reductions and polynomial reductions?
- The implications of polynomial time reductions
- Three ways of reduction strategies?(reduction by simple equivalence, reduction from special case to general case, reduction by encoding with gadgets)
NP2:
- vertex cover reduces to set cover
NP3:
- NPC and how to establishing NPC.
- prove that if Y is NPC, iff P=NP so Y can be solve in poly-time
- P and 相关follow up被证明是NPC的.
- 展示NPC问题的广泛性和影响深远
NP4:
- satisfiability problem(SAT) CNF satisfiability, 3SAT, 3CNF
- showing that 3SAT is NPC by reduction
- the relations of some NPC problems(including set cover, vertex cover, maximum cut, 3SA and so on)
- six basic genres of NPC problems and paradigmatic examples(so far we have covered three of them)
NP5:
- four basic reduction strategies(we are gonna to discuss the fourth strategy of this which is 3SAT ≤ p \leq_p ≤p INDEPENDENT SET)
- approvement of 3SAT ≤ p \leq_p ≤p INDEPENDENT SET using reduction by encoding with gadgets.
- 证明某问题是NPC问题需要三步,下面以vertex cover decision problem为例 and prove it is NPC
- 3SAT reduces to vertex cover
- Clique和vertex cover相互之间的 reduce to 的证明
- directed hamiltonian cycle reduce to hamiltonian cycle 的证明。
- 3SAT reduces to directed hamiltonian cycle的证明
- ham-cycle reduce to TSP问题的证明
- 3SAT reduce to longest-path问题的证明
- directed hamiltonian cycle reduces to longest path的证明
NP6:
- 3SAT reduce to 3-color问题证明
Coping with NPC-1:
- 应对NPC问题的六种常见思想: branch&bound, approximation, local search, restriction, randomization, parameterized algs. 这些方法或多或少牺牲了一些方面去得到合适的解。
- NPC问题具体三种解决方法:exhaustive search, backtracking, branch&bound. 以及这三种方法解决具体问题示例。
Coping with NPC-2:(branch and bound)
- 详细叙述了TSP的branch&bound解
Coping with NPC-3:(branch and bound/local search)
- Heuristic/Local search
- Local Search algs
Coping with NPC-4:(local search/empirical analysis of algorithms)
- Symm TSP问题的解题策略以及其优化版本(hill climbing algorithm)
- 优化版本的优缺点
- stochastic local search algs 及其优缺点, stochastic local search for walkSAT.
- Simulated annealing(SA)及其伪代码. SA for TSP
- Tabu Search. tabu search for SAT
- Iterate local search. iterate local search for TSP
Coping with NPC-5:(local search/approximation)
- TSP construction: nearest neighborhood, closest insertion, farthest insertion, cheapest insertion, random insertion.
- approximation algorithms: performance bounds, categories of approximability(3)
- approximation algorithms examples: load balancing
Coping with NPC-6 (approximation algorithms):
- approximation algorithms examples NO.2: clustering(center selection)
Coping with NPC-7:(empirical analysis)
- empirical analysis of algorithms(what’s the difference between theoretical and empirical analysis)
- what’s the goals of empirical analysis? what’s the issues about empirical analysis?
- what are the benchmark of selection?
- what is the difference between CPU time and elementary operations?(how to measure run time and what are the issues?)
- examples: Las Vegas algorithms.
- two definitions of Run time distribution(RTD)
- How to empirically measuring RTDs?
- how to do optimization on RTDs?(after optimal, it called Qualified RTDs)
- what is SQDs?(solution quality distributions)
- and others, we will talk about it later

浙公网安备 33010602011771号