1 Meta-Scheduling using Dynamic Scheduling Knowledge Jürgen Sauer Universität Oldenburg, FB Informatik Postfach 2503, D-26111 Oldenburg e-mail: Sauer@Informatik.Uni-Oldenburg.DE published in: J. Dorn, K. Froeschl: „Scheduling of Production Processes“, Ellis Horwood, Chicester, 1993. Abstract When solving scheduling problems a crucial task is the selection or creation of the appropriate scheduling algorithm. An approach is presented that combines the use of meta-scheduling knowledge to select the appropriate strategy and the use of dynamic scheduling knowledge for the flexible creation of scheduling algorithms. The method is based on the decomposition of scheduling algorithms into their underlying strategies and heuristic rules for selection of appropriate orders, variants, operations or resources. The strategies are represented by means of planning skeletons and the heuristic rules in terms of rules. The refinement of abstract operators within a skeleton with the rules for selection generates again a scheduling algorithm. Therefore a huge library of different scheduling approaches is available due to the various possibilities for the dynamic combination of skeletons and rules. Meta-knowledge is used to select the appropriate skeleton and rules to be used within the skeleton regarding the given problem situation. The implementation leads to a hybrid scheduling system, providing the description and integration of different scheduling approaches and the support in selecting the appropriate ones. 1. Scheduling The goal of scheduling is the temporal assignment of orders (e.g. for manufacturing pro- ducts) to resources (e.g. machines) where a number of conditions have to be regarded. Schedu- ling covers the creation of a schedule of the production process over a longer period (predictive scheduling) and the correction of an existing schedule (or plan) due to actual events in the planning/ scheduling environment (reactive scheduling or rescheduling). Nearly the same information is needed for scheduling and rescheduling and the same conditions must hold for the result, e.g. concerning the goals to be fulfilled. A scheduling problem can be described by the tuple (R, P, O, HC, SC) with: - a set of resources R = {R 1 , ..., R r } like machines - a set of products P = {P 1 , ..., P p } with information about variants, operations, machines - a set of orders O = {O 1 , ..., O o } to manufacture products - a set of hard constraints HC = {H 1 , ..., H h } (e.g. production requirements), that have to be fulfilled, and - a set of soft constraints SC = {S 1 , ..., S s } (e.g.meeting due dates), that should be fulfilled but may be relaxed. Result of scheduling is a schedule (or plan) showing the temporal assignment of operations of orders to the machines that shall be used.