Assuming P does not equal NP, there are no polynomial time algorithms for any NP-complete problem. This however still leaves a huge gap between anything super-polynomial and the exponential run times of trivial exhaustive search. The study of exact (exponential time) algorithms that aims to breach this gap is as old as Theoretical Computer Science (TCS) itself: Already in the 1960's, researchers found elementary (for modern standards) algorithms that greatly improve exponential the run times. But over time, TCS seems to have hit a brick wall: Somewhat embarrassingly, as of 2018 the run times of these classic algorithms are still the best known for many classic problems.
This project aims to strike at the heart of this issue by designing the next generation of exact exponential time algorithms. To obtain these algorithms, we consider the most famous NP-complete problems such as the Traveling Salesman Problem (TSP), CNF-Sat and Knapsack, and we challenge ourselves to improve the classic currently best algorithms for them.
These problems have served as a prototypical test bed for many algorithmic techniques with extensive applications, and thus their study provides an excellent road map towards our aim.
During the project, we made considerable progress on this challenge and delivered more efficient algorithms for these classical problems such as faster approximation algorithms for Euclidean TSP, a faster exact algorithm for Bipartite TSP and a more space efficient algorithm for Knapsack. Many of these results break through a long-standing barrier and provided new algorithmic tools and structural insights on the hardness of NP-complete problems.