Readspeaker menu

» Home » AE?

Algorithm Engineering?

This term is relatively new,
But without further ado:
Upon being asked to concisely define,
I'm sorry, I have to decline.

Algorithm Engineering focuses on the gap between the purely theoretical analysis of Algorithms and the practical runtime performance. Such gaps may arise, e.g., by hiding huge constants in the Big-O-notation; or by using the traditional von Neumann memory/machine model, even though current computers tend to have a deep memory hierarchy (caches, RAM, HDD) with different access speeds. Also, certain analysed worst-case scenarios may be irrelevent for practical applications, and certain potentially beneficial input properties were not exploited.

Especially - and this is the main research focus of this group - when considering NP-hard optimization problems, it often turns out that by using suitable techniques, computing provable optimal solutions may not be as practically intractable as expected…

For a more in-depth introduction into this growing research field, see, e.g.:
[M. Chimani and K. Klein. Algorithm Engineering: Concepts and Practice. Chapter in: Experimental Methods for the Analysis of Optimization Algorithms. T. Bartz-Beielstein, M. Chiarandini, L. Paquete, M. Preuss (Eds.), Springer 2010. (preprint)]