This paper presents a review of the use of advanced computer based tools, .... is like the SPT rule but puts jobs that have been waiting over-long to the top of.
EXPERT SYSTEMS AND SIMULATION IN SCHEDULING D Toal 1, T Coffey 1, P Smith 2. 1. Department of Electronics and Computer Engineering University of Limerick. Limerick, Ireland 2. School of Computing and Information Systems University of Sunderland Sunderland, United Kingdom
ABSTRACT
Production planning and control within modern manufacturing enterprises is a very complex process. The planning process encompasses decision making that spans from the macro level, such as market forecasting and master production scheduling, down to detail planning on the shop floor, such as the dispatching and sequencing of individual parts orders on a particular machining centre. This paper presents a review of the use of advanced computer based tools, namely expert systems and simulation, to enhance the complex production scheduling function. The use of expert systems and simulation technology within production scheduling is becoming more common place. Expert systems are often used for real time decision support for negotiating the complexities of scheduling. Simulation can be used for testing and validation of schedules guaranteeing that they can be successfully implemented.
1
INTRODUCTION
Production planning and control is an involved and complex process which lies at the heart of operations for manufacturing companies. The successful operation of production planning and control systems (PPCS) is crucial to the survival of manufacturing organisations in the increasingly competitive consumer driven markets which prevail in most manufacturing sectors. Because of the market driven economy, gone are the good old days when companies held high stocks of raw materials, components, and assemblies and used rather inflexible production planning techniques based on stock control and long range forecasting.. Now-a-days companies find they have to operate in a much more dynamic mode, offering ever-more customer options in products with greatly reduced life cycles and far greater product complexity. They have to be able to supply 'Just in Time' and introduce new product ranges very rapidly. All this has had a great effect on the way production facilities are designed and managed with large changes in manufacturing systems, in levels of automation and in the application of computer based technology at all levels of the company. This paper reviews some of the changes that have come about in the areas of production planning and control systems (PPCS) and scheduling, In particular the paper reviews the application of advanced computing techniques such as Discrete Event Simulation and Expert Systems to production scheduling.
2
SCHEDULING
Production scheduling in it's broadest sense spans all the levels of production planning and control from the forecasting of future sales volumes and market demand through master production scheduling (MPS) and down to detailed materials requirements planning and shop floor scheduling. At each of these levels scheduling involves the matching of work against resources on a phased time basis at either a planning level, such as opening a new manufacturing site to cater for growth, or an implementation level for MPS and shop floor scheduling. Each of these broad levels of scheduling impact on the others. 2.1
Shop-Floor Scheduling
Shop-floor scheduling is a multi-dimensional problem. It involves the sequencing of jobs against resources on the shop floor in an effort to meet the due-dates in the companies order book. Master Production Scheduling (MPS) and detailed shop floor scheduling cannot be done in isolation and sequentially as they are inextricably inter-linked in their effects. The MPS can be unrealisable if developed without considering lower level constraining factors. The success of Japanese manufacturing systems approaches such as JIT and paradigms such as OPT, ref [8], and the re-emergence of Group Technology (GT) philosophies, ref [3], all point to the fact that the success of detailed shop floor scheduling in meeting the order book or MPS deadlines depends very much on a clear understanding of the manufacturing systems in the company and good manufacturing systems design. Not withstanding this point, the rest of this section looks at detailed shop-floor scheduling techniques. 2.2
Scheduling Techniques
An overview of scheduling is given in McMahon and Browne [14]. Commonly used scheduling techniques include the following. Gantt chart Operations Research Approaches Algorithms Heuristic approaches Expert Systems Criteria or performance measures often used within scheduling for ranking jobs into a processing order include, earliest due-date, minimum processing time, shortest waiting time, lateness, idle-time, number of waiting jobs, processing cost etc., and of course do the job the boss wants. A Gantt Chart is a commonly used manual scheduling tool. The chart consists of a row for each machine and a time axis along the bottom. Jobs are loaded on to machines using coloured blocks in the operation sequences of the various jobs. By shuffling the sequence of jobs on individual machines, gaps (idle periods) in the schedule can be reduced. The technique is intuitive but limited to small numbers of both jobs and machines. Computer based Gantt chart type scheduling packages are available. Operations research methods of scheduling, such as 'dynamic programming' or 'branch and bound' techniques , by searching through multi-dimensional spaces for the 'best' solutions, will give optimal results for the given decision criteria. As long as the decision criteria are weighted correctly the results will be valid. Unfortunately the assigning of weightings, such as cost or set-up time is often arbitrary and relies on value judgements. So the results are often less than optimal. Another problem with this approach to scheduling is that the computational efforts can be vast due to reasons of combinatorial explosion. The computational load can approach that of complete enumeration of the search space. Scheduling algorithms have been developed but in general they are only applicable to a small number of scheduling problems. Algorithms, including Johnson's and Moore's algorithms, have been developed for single machine, two or three machine and job-shop scheduling problems, but not for more complicated systems which are typical in the modern manufacturing
environment. These algorithms could however be used in the multi-machine set-up in the circumstance that one of the machines is a bottleneck to production for example, or where two machines are very closely associated based on product routings. The algorithms could then be applied to the appropriate machine and the rest of the schedule developed around this core by forward and backward scheduling. For most manufacturing systems with large numbers of machines and many jobs with various routings competing for the various resources an algorithmic solution to the scheduling problem is not possible. In these instances heuristics or 'rules of thumb' are often used for scheduling. These rules of thumb evolve over time through trial and error and based on past experience of what worked. For large scheduling problems 'the best' solution can not be found within real-world time constraints. So the heuristic approach is to develop a schedule based on experience which will work and will also be better than a random or unplanned schedule, a situation which may prevail in some situations e.g. where operators are free to chose the next job which improves their bonus chances based on an piece-work incentive scheme. Heuristic approaches can take considerable computer power and processing time. Examples of individual heuristics would include, the first in first out (FIFO) heuristic, the shortest processing time (SPT) heuristic where jobs are queued in order of ascending processing times, or the modified SPT heuristic which is like the SPT rule but puts jobs that have been waiting over-long to the top of the queue, or the earliest due-date heuristic where jobs are processed in order of due-dates. NINQ & WINQ. The use of expert systems within scheduling can be seen as an extension of the use of heuristics, where the selection of the rules to apply are suggested by the ES based on the encoding of an experts domain specific knowledge. This allows the non-expert to apply the heuristics as the expert scheduler would. By eliciting the expertise of certain key individuals, such as for example a section foreman, and encoding this expertise within a set of rules the expertise can be called upon repeatedly and reliably even when the said foreman goes on holidays. Modern scheduling approaches often use expert systems front end software linked to possibly more conventional scheduling heuristics or algorithms for developing detailed schedules. The expert systems may often act as expert scheduler assistant rather than a stand alone 'expert' scheduler. The systems may suggest search heuristics to the scheduler / operator in certain conditions, then the system would carry out the heuristic search with possibly an algorithmic base to kick off.
3
EXPERT SYSTEMS
'An expert system is a computing system capable of representing and reasoning about some knowledge-rich domain with a view to solving problems and giving advice', Jackson [11]. Most commonly used expert systems are PC based (approximately 80%) and are built with commercial shells (pre -fabricated expert systems without domain knowledge). Others systems are often written in an AI language, such as PROLOG or LISP, while others are written in languages such as C. The three basic components of an expert system are a knowledge base (where the knowledge is stored), an inference engine (which controls reasoning with the knowledge) , and a user interface. In developing an expert system the following phases are important. Knowledge acquisition is the transfer and transformation of potential problem solving expertise from some knowledge source to a program, Buchanan [2]., Knowledge representation is the encoding of knowledge in data structures for symbolic (non-numeric) data, such as rule sets, generalised graphs and predicate logic. Knowledge application deals with how and when to use the knowledge using metta-knowledge or knowledge about knowledge. 3.1
Manufacturing Expert Systems
Expert systems have been used for many purposes in manufacturing. 'KnowledgeBased Manufacturing Management' by Kerr [12] gives a good cross section of such systems in manufacturing. Smith et al [17], review the use of expert systems within manufacturing in
Britain and Europe. Such applications include monitoring, scheduling, decision support, process control, and quality control. Production control and scheduling has become one of the primary areas of use of expert systems in manufacturing. Expert system technology works best in domains where there is a substantial body of empirical knowledge connecting situations to actions which is a situation that exists with production scheduling. There are three main formalisms of Expert Systems (ES) namely production rule ES, structured object ES and predicate logic ES, ref [11]. The most commonly used formalism used for production scheduling is the production rule ES. The term 'production rule' as used in ES has nothing to do with production which can be misleading. A production rule is simply a condition action pair, meaning, if - CONDITION is met do - ACTION, rather like IF, THEN, ELSE statements. Of the papers Smith et al [17] review the following relate specifically to scheduling; 'A Shop Floor Expert Advice System', ref [9], deals with the development of an expert system to advise shop floor workers on the control of machinery and the state of the production line for a company with a continuous 24-hour, 365 days per year production process. The system aims to give immediate problem-solving, such that disruption may be minimised. 'An Interactive Knowledge-Based Shop Floor Control System in a Small Manufacturing Enterprise Environment', ref [1], details a BRITE / EURAM project whose purpose was to develop efficient, user-friendly Shop Floor Control system (SFC) software, aimed at improving the productivity of Small Manufacturing Enterprises (SMEs). The system was designed to permit continuous monitoring of the Shop Floor, generate realistic schedules, and handle a workshop's entire information flow. 'Knowledge-Based Real Time Supervision in Computer Integrated Manufacture', ref [7], was an ESPRIT project which used knowledge-based techniques to develop a dynamic scheduling system for a factory. This was intended to provide a link between real-time shop floor conditions and the large planning horizons of logistic systems such as CPOICS and MRP II. Such systems were eventually used on the shop floor, by companies involved in their development; e.g. Pirelli Spa (first KBS), and Philips Forschungslabor (CIM production line workcell controllers, and quality/maintenance controllers).
4
SIMULATION
'The technique of imitating the behaviour of some situation or system by means of an analogous situation, model or apparatus, either to gain information more conveniently or to train personnel' is a definition of simulation from the Oxford English Dictionary. In the context of manufacturing simulation usually means computer based Discrete Event Simulation. A good introduction to manufacturing simulation is given by Carrie [4]. Discrete event simulation has long been used as a support tool in manufacturing, particularly in the USA. Initially the use of simulation was restricted to large companies because of the expertise required to develop and validate simulation experiments. This situation has begun to change over the last number of years with the emergence of medium priced graphics based simulation development tools, which often obviate the need for low level programming. There are many examples in the literature of the use of simulation technology in the design of manufacturing systems and facilities. Examples would include using simulation in the design of FMS to guarantee production throughput and decide on the number of automated guided vehicles (AGV's) that are required. In more recent times simulation software has been used for production planning and control. Linked with scheduling software, simulation can be used to model or test the effectiveness of the schedule. 4.1
Simulation and Scheduling
In recent times much research has been carried out in the area of using simulation software within scheduling.
Dar-El and Feuer [5] describe a job shop simulation-based scheduler SIBS. The system addresses the problem of finite capacity short-term scheduling applied to a high technology (highly automated) job shop using an interactive simulation-based scheduler. The simulation language used is SIMAN and the simulation provides a look ahead capability so that the results of various schedule decisions with six independent decision variables can be predicted. The system gave good results within a user company. Ling-Lang Tang et al. [13] describe a study of decision rules used for scheduling an FMS. "The control of FMS's is more complex than transfer lines or job shops because of the flexibility of machines and operations". The paper focuses on scheduling as distinct from planning. The plan is taken as a given and in this respect the paper does not address the interdependencies of planning and scheduling. It merely deals with the routing and sequencing of parts within the FMS. Dispatching rules (e.g. FIFO) for machines, AGV's and parts are evaluated with simulation (SIMAN) using multi-criteria performance indices which involve ;- time in system , mean tardiness, max tardiness, system utilisation, no of machines locked, buffer size and WIP. "The Taguchi method was used in the simulation experiments to study the relationship between the principal performance measures and the dispatching rules" A nine-factor experimental design was developed in the pilot study for simulation experiments, including six factors of decision points and three factors of system configurations. This forms a more comprehensive study of scheduling problems than is common in the research where often only three or four different decision points with various dispatching rules are studied. In reality, the authors say, there are more than five decision points among parts, machines and AGV's to be dealt with in FMS scheduling. The paper shows how based on the measurement criteria used, e.g. time in system, different selection rules will give best results. Comparing different measuring criteria, different combinations of rules give better results. A combination index is used as a measure of system performance. Weighting factors are used to give multi criteria results.
5 SCHEDULING SYSTEMS RESEARCH INCORPORATING SYSTEMS & SIMULATION
BOTH
EXPERT
In recent times combined systems have been used within the domain of production scheduling. As the use of disparate modern computer based tools have matured, systems are emerging which combine the different programming approaches and the overlapping areas of application, to yield composite systems which combine the strengths of the different technologies in solving complex tasks De-Li Yang [6], describes a combined simulation / expert system developed in China. The system was implemented in a chemical and dye plant which could be described as a process type industry. Operations research (OR) and linear programming (LP) techniques are used for yearly production planning with the results of the LP being modelled. The model generation stage in the software interfaces at the knowledge-base and data-base level and the plan is developed itteratively. Hence the user / planner need not become an expert in LP formulation techniques. The user / planner is assisted in the development of the production plans with the linear programming by an Expert System linked to the data bases and the model bases. Monthly production planning is done with a rule based Expert System with four different rule sets. The inference engine uses a combination of forward and backward chaining in a two stage rule application. the first pass gives 'rough alternatives' and this is followed by the application of adjusting rules to optimise the resultant production plan. As this system is being used in a process type industry planning need not be more detailed than monthly. The system greatly reduces the time taken to develop production plans and also gives better, more optimal plans than before.
Huber [10] details an expert system which schedules part sequences and controls an FMS (FFL flexible flow line). The FMS assembles car radios. It consists of a main line with nine side lines. The expert system model includes a
simulation model and a temporal model. The implementation is in Common Lisp using the AI tool KEE. Among his reasons for supporting the need for knowledge based technology in scheduling is the following ;- "Most of the conventional MRP II packages use a production scheduling technique known as infinite capacity scheduling. This technique ignores the capacity constraints of the equipment and may result in schedules that overload the production stages. If the capacities of the overloaded cells cannot be increased to the schedule the production schedule is infeasible. This means that production due dates will not be met. Some MRP II systems include a function called capacity requirements planning which is to detect overload (and also underload) conditions. However, these add-ons do not suggest alternative schedules to overcome this situation." The scheduler reschedules every time a job is finished, a machine breaks down or every time a new order is received Moon and Moodle [15] describe an intelligent manufacturing cell control system (IMCCS). The system proposes the real tie control of a cell with three sub-models of control ;Finite State Controller (FSC), Historical Case Pool (HCP) and a Knowledge-Base System (KBS). A blackboard architecture is adopted for the knowledge-based module and object oriented programming is used. The control strategy would be applicable at the cell level on the shop floor or to FMS. For routine situations cell control is based on the states of components. State table containing states and corresponding desirable actions are used in the decision making in a hierarchical structure. "The basic function of each FSC is to receive commands from a higher FSC, to report the status to a higher FSC, to give commands to lower FSC's, to receive the status reports from lower FSC's, and to find the appropriate rule and execute it. Each level in the cell hierarchy has one or more FSC's." The knowledge for an FSC can be expressed in production rules. "No inference ability is assumed so that the fastest response time can be achieved" FSC
KBS
HCP
Cell
remedy
WS diagnosis
Deals with usual events
(learning module) Both deal with unusual events
Fig 1. Sub-Models of IMCCS.
Unexpected events would usually require operator intervention and new state-action pairs to be added. In this paper the authors propose adding a KBS and a HCP. In the instance of unexpected or unusual states control or decision making is switched to KBS to infer action. The HCP stores past unusual state-action pairs with frequency above a threshold. This helps avoid blowing through searches in the knowledge base that have occurred before. Fig # shows the submodels of IMCCS which was implemented in Smalltalk-80 on a Sun-3 workstation.
The authors are investigating the integration of expert systems and simulation within production planning [18]. The work is at an early stage using MODSIM, the object oriented simulation language and TIRS, the integrated reasoning shell. Zhicheng et al [19] describe an expert simulation system for the master production schedule using the PC Plus expert system building tool with SIMAN, Fortran 77 and dBase III Plus. There are many more examples of combined ES and simulation approaches to scheduling in the literature.
6
CONCLUSIONS
This paper has taken a brief look at some of the work on-going in the area of production scheduling. In recent times software tools such as expert systems and discrete event simulation have been integrated within production management systems and scheduling software. Some systems are now emerging which combine both expert systems approaches and simulation with production planning and control systems such as MRP II. The expert systems are usually rule based and help in the selection of possible scheduling heuristics. Simulation can then test in detail the effect of a certain scheduling decision. In an iterative fashion this approach can yield improved scheduling of operations Much of the recent work in scheduling research has concentrated on parts of the 'big picture' such as job-shop scheduling while not addressing other aspects e.g. planning. The effects of these sub-tasks of production planning and control can not be isolated from one another which means optimising the parts in isolation will not lead to an overall optimum. This is an area of potential development with the application of simulation and expert system approaches to all aspects of production management in a structured and integrated fashion.
REFERENCES
1
BRITE/EURAM Programme: Synopsis of Current Projects 1989 - 1990 (1990), Publication No. EUR 12600 of the Commission of the European Communities.
2
Buchanan B G, et al, Constructing an Expert System, Eds. Hayes-Roth, Waterman and Lenat, 1983.
3
Burbidge J L, Group Technology in the Engineering Industry, London, Mechanical Engineering Publisher, 1979.
4
Carrie A, Simulation of Manufacturing Systems, Wiley, England, 1988.
5
Dar-El E M & Feuer Z, SIBS - a job shop simulation-based scheduler, Computer Integrated Manufacturing Systems, Vol 5 No 1, Feb 1992, pp 15 - 20.
6
De-Li Yang, A Computer Aided Planning System in Manufacturing -- An Integrated Simulation Approach, Proc. 1990 European Simulation multi Conference, 1990, pp 339343
7
Esprit: Synopses of Computer Integrated Manufacturing Projects and Exploratory Actions Vol 6, Sept 1990.
8
Goldratt E M & Cox J, The Goal, Excellence in manufacturing, North River Press Incorporated, US, 1984.
9
Hajsadr S M & Steward A P (1990), An Approach to Knowledge Elicitation of Manufacturing Skills and Production Behaviour in an Industrial Environment, Proc UKIT90 Conference, IEE, London.
10
Huber A., Knowledge-Based Production Control for a Flexible Flow Line in a Car Radio Manufacturing Plant, Proc. 6th Int. Conf. Flexible Manufacturing Systems, Nov 1987, pp 3 - 20.
11
Jackson P, Introduction to Expert Systems, 2nd edition, Addison-Wesley, England, 1990.
12
Kerr R, Knowledge-Based Manufacturing Management, Applications of Artificial Intelligence to the effective management of manufacturing companies, Addison-Wesley, Australia, 1991.
13
Ling-Lang Tang, et al., A Study on Decision Rules of a Scheduling Model in an FMS Computers in Industry, 22 (1993), pp 1-13
14
McMahon C, Browne J, CADCAM, From principles to practice, Addison-Wesley, England, 1993.
15
Moon Y.B., Moodle C.L. Intelligent Manufacturing Cell Control System (IMCCS) In;- Recent Developments in Production Research., ed. Mital A, Elsevier Science Publishers B.V., Amsterdam, 1988.
16
Ranky P G, Manufacturing Database Management and Knowledge Based Expert Systems, CIMware Limited, England, 1990.
17
Smith P, et al, Expert Systems in Manufacturing in Europe, The World Congress on Expert Systems, Lisbon, 1994.
18
Toal D, Smith P, Integrating Expert Systems with Simulation for Production Planning, The World Congress on Expert Systems, Lisbon, 1994.
19
Zhicheng li et al , An Expert Simulation System for the Master Production Schedule, Computers in Industry, No 19, 1992, pp 127 - 133.