Using multi-agent architecture in FMS for dynamic scheduling KHALID KOUISS, 1* HENRI PIERREVAL 1 and NASSER MEBARKI 2 1 Laboratoire de Recherche en Syste ` mes de Production, Institut Franc ¸ais de Me ´canique Avance ´e, Campus des Ce ´zeaux, BP 265, 63175 Aubie `re Cedex, France 2 Laboratoire PRISMa, Universite ´ Claude Bernard, Ba ˆ t 710, 43 Boulevard du 11 Novembre, 69622 Villeurbanne Cedex, France Received July 1995 and accepted June 1996 The proposed scheduling strategy is based on a multi-agent architecture. Each agent of this architecture is dedicated to a work centre (i.e. a set of resources of the manufacturing system); it selects locally and dynamically the most suitable dispatching rules. Depending on local and global considerations, a new selection is carried out each time a predefined event occurs (for example, a machine becomes available, or a machine breaks down). The selection depends on: (1) primary and secondary performance objectives, (2) the operating conditions, and (3) an analysis of the system state, which aims to detect particular symptoms from the values of certain system variables. We explain how the scheduling strategy is shared out between agents, how each agent performs a local dynamic scheduling by selecting an adequate dispatching rule, and how agents can coordinate their actions to perform a global dynamic scheduling of the manufacturing system. Each agent can be implemented through object-oriented formal- isms. The selection method is improved through the optimization of the numerical thresholds used in the detection of symptoms. This approach is compared with the use of SPT, SI X , MOD, CEXSPT and CR/SPT on a jobshop problem, already used in other research works. The results indicate significant improvements. Keywords: Dynamic scheduling, dispatching rules, flexible manufacturing systems, multi-agent system, simulation-optimization, object-oriented models 1. Introduction The dynamic scheduling of manufacturing systems is con- cerned with the allocation of jobs to the resources in real time. This allocation is made according to the state of the shopfloor (e.g. breakdown of a machine, availability of a resource, or existence of bottlenecks) and the production objectives (e.g. reduce the number of jobs in progress, or reduce the tardiness). One of the most common approaches to dynamic scheduling of the jobs to process is to use dis- patching rules (DRs). Dispatching rules can be very simple or extremely complex. Examples of simple dispatching rules are: ‘select a job at random’ or ‘select the job with the longest waiting time’. A more complex example might be ‘select the job with the shortest due date whose customer’s inventory is less than a specific amount’. Numerous DRs exist, but research in recent decades has demonstrated that there is no one DR that is globally better than the others (Blackstone et al., 1982; Kiran and Smith, 1982; Montazeri and van Wassenhove, 1990). Their eciency depends on the performance criteria considered, and on the operating conditions (e.g. shop load, tightening of due dates, or existence of bottlenecks). We propose an approach based on a multi-agent archi- tecture. Each agent selects locally and dynamically the DR that seems the most suited to the operating conditions, to the production objectives, and to the current shop status. Because the shop status changes over time, each agent analyses the system state each time an event occurs (e.g. a machine becomes available, or an urgent job arrives). In this paper, we first present the general principles of multi-agent systems, and we focus on the benefits of this approach in the production management area. Next, we present the way in which the dynamic scheduling deci- sions can be shared between agents, and the role of these * Author to whom all correspondence should be addressed. Journal of Intelligent Manufacturing (1997) 8, 41 – 47 0956-5515 Ó 1997 Chapman & Hall