Each plant and/or service provider performs several tasks to satisfy customer demand. Every task consumes several resources in order to be completed. Scheduling deals with the allocation of limited resources to tasks over time. Because the resources used in manufacturing activities are very limited, scheduling becomes a very important concept in managerial decision-making. This importance draws the attention of both practitioners and academicians to scheduling.