Optimisation vs. Approximation

A decision problem decides whether a solution exists or not. A optimisation problem tries to identify the best and most optimal solution.

For problems such as SAT, Halting, Hamiltonian Cycles, and Isomorphism it makes little sense to find the “most optimal solution”. However, problems such as Clique, Vertex Cover and the TSP (this week) are optimisation problems.

Optimisation Problems

Formal definition of optimisation problems

When looking at these problems, we can formalise them as such:

  • The solution space,
  • A cost function, where
    • We define a global maximum,
    • Likewise a local maximum,
Link to original

Travelling Salesman Problem

General Travelling Salesman Problem

Given an input which is a complete weighted graph, where is a distance function. The output is the shortest Hamiltonian cycle visiting all vertices. Formalising this problem, we find:

Link to original

We can also define this as a decision problem by adding an additional input , and output true if and only if contains a Hamiltonian cycle such that the .

TODO: add algorithms

Approximation Ratio

Approximation ratio

The approximation ratio for a given approximation algorithm on input is the real value such that:

  • Where is the cost of the approximate solution.
  • Where is the cost of the optimal solution.
Link to original

-approximable problems

R-approximable problem

A language or problem is said to be -approximable if there is some polynomial-time approximation algorithm such that for all .

Link to original

Unapproximable Problem

A language or problem is said to be unapproximable if is not R-approximable for any fixed value . Or otherwise, any poly-time approximation algorithm must give arbitrarily bad solutions for some inputs.

Link to original