Scheduling theory is concerned with the optimal allocation of scarce resources (for instance, machines, processors, robots, operators, etc.) to activities over time, with the objective of optimizing one or several performance measures. The study of scheduling started about fifty years ago, being initiated by seminal papers by Johnson (1954) and Bellman (1956). Since then machine scheduling theory have received considerable development. As a result, a great diversity of scheduling models and optimization techniques have been developed that found wide applications in industry, transport and communications. Today, scheduling theory is an integral, generally recognized and rapidly evolving branch of operations research, fruitfully contributing to computer science, artificial intelligence, and industrial engineering and management. The interested reader can find many nice pearls of scheduling theory in textbooks, monographs and handbooks by Tanaev et al. (1994a,b),