(Incremental) priority algorithms
SODA '02 Proceedings of the thirteenth annual ACM-SIAM symposium on Discrete algorithms
How well can primal-dual and local-ratio algorithms perform?
ICALP'05 Proceedings of the 32nd international conference on Automata, Languages and Programming
Hi-index | 0.00 |
Undergraduate (and graduate) algorithms courses and texts often organize the material in terms of “algorithmic paradigms”, such as greedy algorithms, backtracking, dynamic programming, divide and conquer, local search, primal-dual, etc. (but not etc. etc.). We seem to be able to intuitively describe what we have in mind when we discuss these classes of algorithms but rarely (if ever) do we attempt to define precisely what we mean by such terms as greedy, dynamic programming, etc. Clearly, a precise definition is required if we want to defend a statement such as “This is a difficult optimization problem.... in particular, there is no greedy algorithm that provides a good approximation for this problem”. In the context of combinatorial search and optimization problems, I will present precise models for some common basic paradigms. In a sense what we would really like to have are algorithmic models (e.g. for a greedy optimization algorithm) that are as widely accepted as the Church-Turing definition for “computable function”. While this goal is probably much too ambitious, we would at least like to have models that capture most of the algorithms that fit within these common paradigms. This talk is based on results from a number of papers. In particular, I will present precise definitions for greedy and greedy-like algorithms [2], simple dynamic programming and backtracking [3], and basic primal-dual/local ratio algorithms [1].