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
posted @ 2019-10-27 02:08  EvanMeetTheWorld  阅读(37)  评论(0)    收藏  举报