This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.

Search for Publication

Year(s) from:  to 
Keywords (separated by spaces):

Dilemma First Search for Effortless Optimization of NP-Hard Problems

J. Weissenberg and H. Riemenschneider and R. Dragon and L. Van Gool
International Conference on Pattern Recognition (ICPR)
December 2016


To tackle the exponentiality associated with NP-hard problems, two paradigms have been proposed. First, Branch & Bound, like Dynamic Programming, achieve efficient exact inference but requires extensive information and analysis about the problem at hand. Second, meta-heuristics are easier to implement but comparatively inefficient. As a result, a number of problems have been left unoptimized and plain greedy solutions are used. We introduce a theoretical framework and propose a powerful yet simple search method called Dilemma First Search (DFS). DFS exploits the decision heuristic needed for the greedy solution for further optimization. DFS is useful when it is hard to design efficient exact inference. We evaluate DFS on two problems: First, the Knapsack problem, for which efficient algorithms exist, serves as a toy example. Second, Decision Tree inference, where state-of-the-art algorithms rely on the greedy or randomness-based solutions. We further show that decision trees benefit from optimizations that are performed in a fraction of the iterations required by a random-based search.

Download in pdf format
  author = {J. Weissenberg and H. Riemenschneider and R. Dragon and L. Van Gool},
  title = {Dilemma First Search for Effortless Optimization of NP-Hard Problems},
  booktitle = {International Conference on Pattern Recognition (ICPR)},
  year = {2016},
  month = {December},
  keywords = {}