A Domain Description Language for Job-Shop Scheduling

As part of the tosca project undertaken for Hitachi Limited, the Articial Intelligence Applications Institute at the University of Edinburgh has produced a Domain Description Language for job-shop scheduling. The DDL enables the testbed dataset (based on real factory data) used in that project to be speci ed and also provides a base which could be extended to provide a more generic descriptive capability for factory scheduling problems. 1 1 A Domain Description Language for the H1 Model tosca [Beck 93] is an opportunistic scheduling system designed to address job-shop scheduling problems of a realistic scale and constraint complexity. As part of the tosca project undertaken for Hitachi Limited, the Arti cial Intelligence Applications Institute at the University of Edinburgh has produced a Domain Description Language for job-shop scheduling. The DDL enables the testbed dataset used in that project (based on real factory data) to be speci ed and also provides a base which could be extended to provide a more generic descriptive capability for factory scheduling problems. This document provides the following: a description of the generic job-shop scheduling problem, a characterisation of the speci c nature of the Model H1 problem, a detailed description of the components of the Domain Description Language, and a syntax for the Domain Description Language. The full Model H1 is con dential; this document provides an outline of the model. 1.1 Scope of the Document At present there is no universally accepted scheduling domain description language. The need for a language is however very real, both for the development of a generic scheduling tool and as a basis for the exchange of research ideas and data. This paper is intended to document the features of job shop scheduling domains in order that particular problems and relevant factory descriptions can be speci ed to future schedule generation systems, such as tosca. The scope of the language should be tested against a range of factory types applying various test data suites. An example of such a test data suite is that published by the scheduling group at the Robotics Institute, Carnegie-Mellon University [Chiang et al 89]. Unlike Hitachi's Model H1 dataset, the CMU data is very limited in detail and clearly not based on a real factory scheduling problem, but does provide a useful testbench for a scheduling system and a scheduling input language. The DDL will be driven by the range of factory models to which it is applied; currently, the language is driven primarily by the needs of the Model H1 data. Given the diversity of manufacturing scheduling, it should be expected that extensions and revisions to the language will be necessary when other models are explored. The language should evolve to provide completeness of description, as far as possible, but in its early form the ddl will, at minimum, act as a feature checklist. Di culty or failure to express some requirement in the language will however provide valuable information on the potential for assessing the descriptive power of a generic formalism. 1.2 Scheduling Elements At the heart of the description are the following key scheduling elements: 2 Production: the manufacturing process concerned with the transformation of materials into end-products. Associated with each product is a set of process plans. Each process plan describes a method of production (i.e., a set of temporally ordered operation types). Demand for Production: imposed by the orders accepted and predicted by the manufacturing system. Demands are descriptions of the obligations for production that the manufacturing system has undertaken. The term load is used synonymously in the manufacturing production literature. Capacity to Produce: the factory resources and production plans. The capacity of the factory resources are described by their capabilities, corresponding to the various operation types which they can process, and their speed of processing. Production Constraints: conditions which must be satis ed for a schedule to be valid. Overall schedule objectives (e.g., minimise Work-in-Process) are a special type of constraint in that they apply across the entire schedule. Achieving such global constraints necessarily involves large numbers of inter-related decisions. 1.3 Distinctive features of the approach to de ning the DDL The DDL is intended to be a language independent of implementation details and scheduler strategies, but in a form which can be readily understood by the user and a scheduling system. The structure of the language will be centred about descriptive tables, as would be used in a typical computer database. In that the prime interest is to allow the language to be used for knowledge-based scheduling, the language should make provision for the full complexity of the factory environment and not rely on simplifying assumptions. Examples of simplifying assumptions commonly adopted in manufacturing resource planning systems include: (i) restricting the search space by not representing alternatives, (ii) ignoring constraints, and (iii) prebatching orders into higher level production units such as lots. (i) No representation of alternatives: scheduling systems commonly simplify the resource allocation problem by pre-de ning default selections for resources and process plans. Where alternatives do exist they should be represented and selections left to the scheduling system. (ii) Ignoring constraints: complex constraints (e.g., setup limitations) may be omitted leaving potential scheduling problems to be handled on the shop oor. The knowledge-based scheduling approach aims to model all relevant constraints on production. This also includes the representation of overall scheduling objectives. (iii) Pre-batching orders into lots: the de nition of lots (i.e., setting production quantities, release dates and due dates) signi cantly de nes the production schedule, and limits what can additionally be achieved by the operation schedule. For this reason, the separation of lot de nition and the operation scheduling steps should not be assumed. 3 Problem Allocate resources and start times to operations. Inputs Production Demand for Production Capacity to Produce Constraints Constraints Resource capacity Temporal relationships between operations Figure 1: Description of the Generic Job-Shop Scheduling Problem Also, the approach adopted must make provision for extension and elaboration in the language and implementation. 2 Characterising Job Shop Scheduling as a Generic Problem The job-shop scheduling problem involves the allocation of resources and start times to a set of operations subject to a number of constraints. The primary constraints handled by Manufacturing Resource Planning1 systems relate to the demand and capacity of the factory resources and material. In the generation of operation schedules, the availability of material is normally assumed and the focus is on demand for capacity and the capacity constraints. The goal of the factory is the manufacture of products. The basic scheduling problem is the satisfaction of production requirements given the available factory capacity. The modelling of operation scheduling involves these core elements: (i) production plans, (ii) factory demand and (iii) factory capacity. Figure 1 provides an outline of elements of the generic job-shop scheduling problem. 1MRP-II 4 2.1 Production Production refers to the de nition of processes and materials required to manufacture products. The steps of production for a single product is referred to as a process plan. These steps may consist of primitive or compound operations which may or may not be temporally ordered with respect to each other, i.e. operations may have a strict ordering (before or after) or may happen in parallel. Process plans are typically represented by networks, or graphs, showing the precedence relationships between substeps. Linear plans are strict sequences of steps. Process plans may carry overall plan information and requirements, such as estimated processing and production lead times, overall material usage, cost, etc. This information may be valuable at a high level of scheduling or schedule analysis, or for making decisions about which process plan, from a possible set of plans, should be chosen as the most suitable production method. Multiple alternative process plans o ers additional exibility to manufacturing planning ad scheduling systems but they introduce signi cant computational complexity. 2.2 Demand for Production Demand is imposed by the orders accepted or predicted by the factory. These orders (make-to-order or make-to-stock) are for speci ed quantities of products by a speci c date. During the Material Requirements Planning phase of production scheduling, orders may be combined or split for the purposes of production into \units of production" or lots | a quantity of items produced together. This step of transforming orders to lots and selecting lot sizes can have a signi cant impact on inventory costs, setup costs, capacity requirements and scheduling exibility. The demand for capacity is normally assessed in relation not to the demand for products or for lots, but in terms of the demand for resources required to process the required lots. This involves, for each lot, selecting a process plan and thus de ning the set of operations to be performed. Scheduling demand is then calculated on the basis of aggregated operation demand for resources. Figure 2 shows the relationships between orders, lots, and operations. The lot de nition step | the selection of lot sizes, release date and internal due date | is undertaken by the Manufacturing Requirements Planner. The process plan selection step is undertaken by the operation scheduler. 2.3 Capacity to Produce For most operation scheduling problems, the capacity of the factory is essentially equated with the capacity of each of the individual machines. This assumption regard