Computational Combinatorial Optimization : Optimal or Provably Near-Optimal Solutions