||During the past decades scheduling has been among the most studied op- mization problemsanditisstillanactiveareaofresearch!Schedulingappears in many areas of science, engineering and industry and takes di?erent forms depending on the restrictions and optimization criteria of the operating en- ronments . For instance, in optimization and computer science, scheduling has been de?ned as "the allocation of tasks to resources over time in order to achieve optimality in one or more objective criteria in an e?cient way" and in production as "production schedule, i. e. , the planning of the production or the sequence of operations according to which jobs pass through machines and is optimal with respect to certain optimization criteria. " Although there is a standardized form of stating any scheduling problem, namely "e?cient allocation ofn jobs onm machines -which can process no more than one activity at a time- with the objective to optimize some - jective function of the job completion times", scheduling is in fact a family of problems. Indeed, several parameters intervene in the problem de?nition: (a) job characteristics (preemptive or not, precedence constraints, release dates, etc. ); (b) resource environment (single vs. parallel machines, un- lated machines, identical or uniform machines, etc. ); (c) optimization criteria (minimize total tardiness, the number of late jobs, makespan, ?owtime, etc. ; maximize resource utilization, etc. ); and, (d) scheduling environment (static vs. dynamic,intheformerthenumberofjobstobeconsideredandtheirready times are available while in the later the number of jobs and their charact- istics change over time).