ARTICLE IN PRESS
Int. J. Production Economics 99 (2006) 117–130 www.elsevier.com/locate/ijpe
Comparison of negotiation protocols in dynamic agent-based manufacturing systems Jihad Reaidya,, Pierre Massottea,b, Daniel Diepa a
Laboratoire de Ge´nie Informatique et Inge´nierie de Production, Ecole des Mines d’Ale`s, Parc Scientifique George Besse, 30035 Nıˆmes, France b IBM Academy of Technology, La Gaude, France Available online 28 January 2005
Abstract This paper proposes a negotiation methodology based on multi-agent system for heterarchical and complex manufacturing control systems. This approach has been selected to implement new paradigms based on ‘‘coopetition ¼ co-operation+competition’’ in order to improve the ‘‘production on demand’’ and reaction capabilities of distributed production systems related to the net-economy. Agents may represent products and resources of the system. The local scheduling and control functions in dynamic environments is addressed by a new negotiation protocol between agents based on the ‘‘request session’’ principle for cooperation and on the game theory approach for competition. r 2005 Elsevier B.V. All rights reserved. Keywords: Production and management control; ‘‘Co-opetition’’; Multi-agent systems; Negotiation protocol; Game theory
1. Introduction The application of multi-agent systems based on the concept of distributed artificial intelligence is considered as being one of the most promising control architectures for next-generation of complex production systems, specifically in a dynamic environment (failed resources, disturbances, etc.). Corresponding author. Tel.:+33 4 6638 7028.
E-mail addresses:
[email protected] (J. Reaidy),
[email protected] (P. Massotte),
[email protected] (D. Diep).
In particular, very attractive solutions and efficient issues are expected in the domain of local planning, and execution control, to improve the conventional supply chain management; here, the usual production system management consists, in a set of separate and heterogeneous application software packages, such as Enterprise Resource Planning (ERP), Manufacturing Execution System (MES), Supervisory Control And Data Acquisition (SCADA), etc. These tools are not able to cover satisfactorily the constraints required by the new challenges of the economy such as networked enterprises, production on demand or mass
0925-5273/$ - see front matter r 2005 Elsevier B.V. All rights reserved. doi:10.1016/j.ijpe.2004.12.011
ARTICLE IN PRESS 118
J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
customization, with the high reactivity of the Ebusiness. With regard to this situation, new paradigms have to be introduced (e.g. auctions, dynamic products and processes reconfiguration) which can be implemented only through an adapted and consistent technology. In this paper we will indifferently address the term of manufacturing system (MS) or production system (PS), which is an extension of the MS concept. In multiagent manufacturing systems, agents may represent single resources (a work cell, a machine, a tool), workers involved in a process, etc. as well as products, customers or providers. Altogether, they perform individual tasks, in interaction between them, in order to fulfil production functions (such as procurement, local planning, task assignment, scheduling execution control, or even distribution). Architectures commonly studied in a multi-agent approach mainly comprise hierarchical and heterarchical structures. In a hierarchical architecture, there are multiple levels of master/ slave agent type relationships. Here, in a heterarchical architecture, agents communicate on a ‘‘peer-to-peer’’ mode, without any predefined master/slave relationship. This core notion of the heterarchical control architecture is the follow-on of full local autonomy and co-opetition approaches ‘‘co-opetition ¼ co-operation+competition’’ (Brandenburger and Nalebuff, 1996) used to perform global decision-making. Only heterarchical control architecture will be considered here. This paper is organized as follows: in Section 2, we are reviewing some algorithms involved in distributed manufacturing control system; they are a theoretical basis to design and develop our monitoring and control system. In Section 3, an example of the architecture intended to be used is presented; it is in connection with the so-called PABADIS European IST project (IST-#60016: ‘‘Plant Automation BAsed on DIstributed Systems’’). Section 4 will be devoted to the description system modeling approaches and associated mechanisms. Section 5 details negotiation protocols between agents, which are proposed to solve the problem of local scheduling and resource allocation. In Section 6, implementation and some experimental results are discussed. Section 7 is a
summary of the paper. Finally a glossary of the abbreviations used in the paper is proposed.
2. Main algorithms involved in distributed manufacturing control system This section briefly reviews some various algorithms, concepts and protocols to be applied in distributed and complex manufacturing control systems. They are intended to enable a better understanding and consistent design of the new agents technology based paradigms; they also enabled to design and to enhance the reasoning and decision-making capabilities to be introduced at agent level. 2.1. Dispatching and sequencing Dispatching rules are widely used in manufacturing, due to their simplicity, efficiency and their nature related to on-line algorithm (Holthaus, 1997). These rules, usually associated with sequencing, only require local information for the decision-making; thus, they are straightforward to distribute across a heterarchy. For most of these kinds of decisions, the system scales sub-linearly since the addition of an agent does not effect dispatching decisions at other agent’s level (Baker, 1998). Dispatching with priority rules is the bestknown heuristic for scheduling. Using dispatching rules, local schedules can be produced almost instantaneously. Flexible and distributed manufacturing and assembly systems are the best candidates involved by their implementation. Also, dynamic process and products reconfiguration are allowed. 2.2. Scheduling Scheduling is an optimization process where limited resources are allocated over time among both parallel and sequential activities (Zweben and Fox, 1994). It is a difficult and complex problem solving, particularly when it takes place in an open, dynamic environment. Scheduling problems in theory, are dynamic in nature, such that new orders are received continuously, while operations
ARTICLE IN PRESS J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
and complete orders are getting finished; duration and service time may not be known precisely, machines may become unavailable and additional resources can be introduced in the system. The starting time and the processing time of a task are also subject to variations; indeed, a task can take more time than estimated or less time than anticipated, and tasks may arrive earlier or later. Because of its highly combinatorial aspects and its practical interest for manufacturing systems, the scheduling problem has been widely studied in the literature through various alternative methods and techniques: heuristics, constraint propagation techniques, constraint satisfaction problem formalism, simulated annealing, taboo search, genetic algorithms, neural networks, etc. (Baker, 1998). Due to the distributed aspect and parallelization characteristic of these methods, their processing requires a specific and well-adapted technology: agent technology has recently been considered as a successful attempt to resolve this problem. 2.3. Agent-based scheduling in manufacturing systems Corresponding to the functional and physical decomposition approach for agent encapsulation, two types of distributed manufacturing scheduling systems can be distinguished (Shen and Norrie, 1999):
those where scheduling is an incremental search process that can involve backtracking. Agents, responsible for scheduling orders, perform local incremental searches for the orders they are in change and may consider multiple and multiskilled resources. The global schedule is obtained progressively through the merging of local schedule (Sycara et al., 1991). systems in which an agent represents a single resource (e.g. a work cell, a machine, a tool, a fixture, a worker, etc.) and is responsible for scheduling this resource. This agent may negotiate with other agents how to carry out the overall scheduling (Parunak et al., 2001; Shen and Norrie, 1998).
At last, we can mention some production systems where the scheduling is completely distributed and
119
organized locally at a product level. Under this condition, a local and simplified scheduling is performed by such an agent to accomplish a limited set of tasks with, some dedicated resources, along its production life cycle (Diep et al., 2001; Massotte et al., 2003). 2.4. Allocation through ‘‘protocol and bidding mechanism’’ Here, the allocation mechanism is generally realized through negotiations among agents using the ‘‘contract-net protocol’’. This protocol is a well-known example of such mechanism introduced by Smith (1980). It consists of five steps: a requested task is announced by a manager (from a given set of manager), potential contractors evaluate task announcements coming from several managers, potential contractors bid upon the selected task, the task manager awards the contract to one of the bidding contractors, finally the manager and a contractor communicate to execute the contracted task. This protocol can be applied to the production system context in several ways:
managers and contractors are both resources, as for client-server. They can use subcontracting to distribute and dispatch the workload, managers are ‘‘product offering work’’, and contractors are ‘‘resources bidding’’ to get the work assigned, managers are ‘‘resources offering capacity’’ and contractors can be ‘‘parts bidding to use this capacity’’.
Advantage of the contract net protocol is that it is a dynamic and easy to implement algorithm. Disadvantage of the contract net protocol is that the local decisions made by each agent do not take into consideration the overall system performance (Usher and Wang, 2000b; Liu, 2002). The negotiation mechanism for generating and maintaining production schedules in the contract-net protocol is developed as a bidding process within a heterarchical manufacturing system.
ARTICLE IN PRESS 120
J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
Negotiation is achieved with the following bidding perspectives (Saad et al., 1997):
Product-oriented process: Machines make bids and compete with each other to obtain a product for processing. The product awards itself to the machine offering the highest bid (Lin and Solberg, 1992). Machine-oriented process: Products make bids to the machines comprising the manufacturing system. The target of the bidding are the services or operations offered by the machines, and a product’s bid should reflect its own criteria for being processed, such as its due date and priority. The higher a product’s bid, the more attractive it should be for the machine to select the product for processing (Shen and Norrie, 1998).
In order to take into account the product priority and machine performances, both bidding perspectives need to be merged in a bi-directional negotiation (Pesenti et al., 2001).
Disadvantage of PR is quite clear: when an entire plan is generated for a product agent as soon as the job is released to the shop, problems can occur about an abnormal processing event (failure, unexpected preempt) or an anomaly in the arrival rate of the products (random, exponentially distributed): it is a dynamic environment which always gives a obsolete scheduling plan. Such occurrences would require a new plan to be generated taking into account the current status of the resources. A disadvantage of SSPR is that products cannot make good estimates of their production times beforehand (at the start of production) because it depends on the dynamics of the manufacturing system and the arrival rate of other products, as well (Usher and Wang, 2000b). In such systems, emergence mechanisms always conducts to a dynamic ‘‘good fitted’’ product/ process configuration we cannot precisely forecast in advance (Massotte et al., 2001). In SSPR, agent decision-making for scheduling dynamic systems can be classified into three categories (Reaidy et al., 2002):
2.5. Decision-making frequency
To define what planning horizon an agent’s decision covers, two possible approaches can be distinguished:
the first one consists in the production reservation (PR) method. In these systems, the entire production from start to finished product is planned when an initial job order is released to production (Saad et al., 1997), the second one is the single-step production reservation (SSPR) method. Implementations based on the SSPR method involve the product agent only for the local resources planning to carry out the next operation (Krothapalli and Deshmukh, 1999).
The main advantage of these approaches are, respectively:
fastest processing which can be predicted for agent assigned with a high priority, better reactivity and adaptability in high dynamic environment.
the first one is a so-called ‘‘Egoistic’’ category: Agents make choices without taking into consideration the requests from other agents. For example: an agent selects a resource according to an ‘‘earliest finishing processing time’’ rule, the second one is an ‘‘Altruistic’’ category: agents make their choice taking into consideration the request issued by other agents. For example: selection of a resource with the ‘‘latest finishing processing time’’ rule, the third one is a ‘‘Consensual’’ category: choice is done by an agent with respect to its own criteria and taking into consideration some other different requests. All agents negotiate together to find the best fitted solution for each one and for their community in any situation. For that, an agent uses either the real-time information about all the agents requesting for a same task during a period of time before the decision is taken, or some statistical information about the current situation of the other agents in the system.
Because of the constraints required in reactive, dynamic and distributed manufacturing systems,
ARTICLE IN PRESS J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
we have selected the SSPR method and implemented the relevant algorithm through a multiagent system technology. Now we will describe the multi-agent manufacturing system architecture used to conduct our validation.
121
associated to each individual product and control the processing of tasks applied to the products, along the whole production cycle. Plant management agents (PMA) participate in production management activity by accomplishing specific functions, such as data collection, information retrieval, etc.
3. Multi-agent manufacturing systems architecture In our work, we use the PABADIS architecture to model a distributed manufacturing system and to develop, test and validate our concepts and mechanisms detailed in this paper. PABADIS is an European IST project (IST- #60016: ‘‘Plant Automation BAsed on DIstributed Systems’’). It is aimed at improving the management and control of a distributed and complex manufacturing system. The overall architecture is shown in Fig. 1. Basic components in PABADIS are agents and services. Agents and services work in cooperation and perform distributed tasks in a networked manufacturing plant (PABADIS, 2001). Manufacturing operations are performed by co-operative manufacturing units (CMU).
A CMU is a kind of basic and generic machine, which provides a service (or a function) that could be physical, such as material processing, or logical, such as information processing, Residential agents (RA) are tied to these CMUs; they provide a convenient communication interface with all other components scattered over the plant, Product agents (PA) are mobile agents committed to the realization of products. They are
In addition to these elements, two particular structures are to be implemented: The ‘‘Agency’’ acts as an interface with the ERP system, and enables some controls over production (decomposition and transmission of manufacturing orders, construction of reports, etc.) as well as over agents (creation, termination, etc.). The SCADA CMU is a particular CMU that provides an interface with a SCADA system. It translates SCADA functions such as data acquisition, alarming, etc. into services directly usable by the agents. The manufacturing process according to the PABADIS idea starts with the generation of a conventional manufacturing order by the ERP system to process a product. This order comprises the sequence of required processing steps together with the appropriate parameters for product processing. The manufacturing order is passed to the agency, where it is translated into one or several work orders. Responsible for each work order will be a product agent that is generated and initialized at the agent fabricator as part of the agency and joins the multi-agent system (see Fig. 1). Step by step, the product agent executes its production plan. It follows always the same basic
ERP System CMU
Agency SCADA CMU Manufacturing CMU
Transportation CMU Manufacturing CMUs
Fig. 1. PABADIS functional architecture.
ARTICLE IN PRESS 122
J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
procedure: it consults a lookup service, which is present in the network to find the CMU that can provide the needed manufacturing service. The lookup service acts as a central service broker and informs the product agent about the access path and the abilities of possibly useable CMU. Subsequently, the product agent contacts the CMU and asks for additional information necessary to decide which service provider it should choose. Based on these data, the agent selects the ‘‘optimal’’ CMU. Throughout the manufacturing process, the product agent guides the work piece. It ensures the processing of the work piece in an appropriate way by the CMU in cooperation with the residential agent of each CMU. Before termination, the PA provides its report to the agency, which then is sent to either the SCADA CMU or directly to the ERP system, for more details see PABADIS (2001). Dynamic configuration in PABADIS is provided by a ‘‘plug and participate’’ mechanism implementing a lookup service facility. PABADIS Project uses JINI technology for the plug and play functionality and Grasshopper as an agent platform to implement the concept (Grasshopper, 2002). Finally, the PABADIS system can be applied to production systems dealing with plenty of slightly different variants or products with a high variation rate, both with a lot of small lot sizes. In this paper, and within this above framework, we will consider the three following agents: PA, Resource or RA, and Agency.
4. System modeling approaches and mechanisms In this section, we define and describe some negotiation principles, mechanisms and algorithms integrated with the aforementioned agent architecture. Agents, involved in the model, represent products and resources in a so-called heterarchical manufacturing system. Agents use single step production reservation with a sequence of request session in order to schedule and control the production in the system. At last, agents use a set of rules and criteria, which help them to solve
their own conflicts and to realize their local objectives. The different approaches and mechanisms developed in our system are explained in the following paragraphs. 4.1. Request session principle Generally, PA decision-making in heterarchical manufacturing system is based on ‘‘egoistic’’ behavior such as ‘‘first arrived, first served’’ (Saad et al., 1997) or on expected information given by statistical and heuristical formulas (Krothapalli and Deshmukh, 1999). Because of the constraints required in a dynamic environment, we try, in this paper, to replace the expected or estimated information with an accurate, real-time information between Agents by using the ‘‘request session principle’’. For that, the main goal of the request session is to provide agents, under negotiations, with real-time information during a period of time before the decision-making. PA requesting for a given task, which can be provided by different resources, will participate together to a request session (RS). Hereafter, we detail some characteristics in terms of planning horizon, before and after an event. The period of time to be considered in an RS for each PA corresponds to its processing task (PT) and it is limited by the ‘‘start time request’’ and ‘‘ending time request’’ or decision time (DT) (which means the PA’s request with a remaining processing time closer to zero). PA decisionmaking takes into account all PAs under processing and arriving just before and after it. For example, PA3 decision-making takes into consideration the other PA’s decisions in RS such as PA2 and PA1 (see Fig. 2), so that, the decision-making process takes into consideration all PAs under processing with concurrent requests coming from the same task in the recent past, the present and the recent future. 4.2. System modeling approach In our model, the process starts as soon a manufacturing order (MO) is released to the production system. The MO may also be issued by the ERP or by any demand, e.g. the customer in
ARTICLE IN PRESS J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
123
t3 PA3
t2
PA2 t1 PA1 PT1
Start
End DT3
DT1
DT2 Time
(1) (2)
PA1
PA2
PA3
PA2
PA1
(3)
PA2
Fig. 2. PA’s decision-making process to be considered during a request session.
pull architecture. The MO is analyzed by an agent called ‘‘Agency’’ which takes into consideration the actual status of the PS. Then it generates product agents associated to each MO. After that step, the PA waits in a queue, before being assigned to the real and physical product as soon as it is introduced in the PS. A PA follows the physical product; it negotiates and schedules for it all its next processing tasks. In our model, each resource is represented by a resource agent. The lookup service (LUS) is used to communicate general information about the location status and the type of work to be done on other agents in the PS. Request session agent (RSA) is used to organize the RS and the negotiation as well, between agents. Each RSA possesses its own specifications related to basic operations such as: monitoring the RS, opening and closing the RS; it receives, accepts, deletes and sorts requests according to their priorities in the session, etc. Tasks processing time (TPT) for products in a PS can be computed using some knowledge based system (KBS) (Usher and Wang, 2000a) or using a nominal processing time as an estimate of the processing time; it has to be taken by the base machine (Krothapalli and Deshmukh, 1999). In our work, TPT for PA is dynamically computed for the PAs on a real-time basis as an estimate of
the workload (number of PAs waiting in the input buffer); this one is taken by the slowest RA providing a needed task. Transportation time from one RA to another is considered in our model. Finally, PAs in a RA queue are processed in firstin-first-out order. 4.3. Negotiation methodology Negotiation is used for selecting a next task to be assigned to a resource. When a processing task is started, the assigned PA tries to schedule the next task by participating to a RS. For that purpose, PA asks for the LUS about the RSA to be used in the next task; then a participation request is sent to the relevant RSA with some information about the remaining due date, the remaining processing time (RPT) of the current task and the allowed processing time (APT) of the next task. PA is able to compute the value of APT for its next task using the following formula (n being the number of tasks to be done by the PA): ! n X APTiþ1 ¼ RDD RPTi þ TPTj ; j¼iþ2
i; j 2 N:
ð1Þ
When a PA request is received, the RSA adds the PA request to the RS. It opens a new RS if it is not
ARTICLE IN PRESS 124
J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
yet done. The RSA may receive several PA’s requests until the decision time of the RS is reached by a PA having the nearest RPT closer to zero (PAZ). After that, PAZ asks RAs for their expected completion time (ECT). RAs compute their ECT for PA next task. Here, the remaining time for their current processing time, the number of product waiting in their buffer (NWB), the transportation time (TT) and their processing time (PT) for the task needed are taken into consideration. RA computes the value of its ECT using the following formula: ECTiþ1 ¼ RPTi þ TT þ ðNWB þ 1Þ PT:
(2)
The PAZ uses some basic algorithms and negotiation protocols to choose the best RA related to its criteria. As soon as the PAZ has setup a decision, it allocates a given processing time in the RA queue and provides that fact to the RSA in order to delete it from the session. The PA’s arriving to a RA, before another PA with an already existing allocated processing time, are waiting in a temporary buffer.
5. Negotiation protocols Negotiation Protocol is a set of rules used to organize negotiation, communication, conversation sequence and decision-making between agents. In this section we have developed five negotiation protocols for PA’s decision-making in a RS; they use a negotiation protocol between agents based on a ‘‘contract net protocol’’. Most of their principles and performances are now detailed and compared hereafter. 5.1. ‘‘Consensual decision-making’’ protocol Because of the dynamic behavior of the system, the decision taken by PAs for local scheduling only concerns the current status (not the future status) of the RS. Consequently, the objective for using RS in SSPR will be to give to PAs decisions a consensual meaning, specially when the associated PAs, when the present processing task is achieved, has to move from its actual RA to another one. Information about any ‘‘last time taken decision’’
is a good one for the PA because it can involve many criteria simultaneously for instance: priority, arriving time to the resource, physical buffer resource type, etc, so that, we minimize the kind of expected information about the other agents. Thus, a PA can avoid many processing conflicts with other agents (Reaidy et al., 2002). In this protocol, PAs and RAs use the same negotiation methodology as mentioned before. When the decision time of the RS is reached, RSA communicates to PAZ additional information about the number of PAs in the session with higher priority (NP). This means PAs in the RS have a lower APT. PAZ ranks RAs according to their ECT, considers RAs having ECTs with respect to its APT and makes a consensual decision by selecting the lowest ECT with respect to the NP rank given by the RSA (PAZ select RA having the lowest ECT in case of NP Xnumber of RAs considered by it). 5.2. ‘‘Game theory’’ protocol Scheduling a next task for the physical product with regard to its due date is the main goal as assigned to PAs in RS. Because of the variety of transportation time between RAs due to the physical structure of the system and the dynamic queuing, PAZ decision-making must take into account the competition with the other PAs in a RS. As for a consensual decision-making protocol, PAs and RAs use the same negotiation methodology aforementioned; RSA will communicate to PAZ an additional information about APTs of PAs in the RS with a smallest RPT. The number of PAs selected is limited to three in our experimental model. Competition between PAs in a RS can be modeled in game theoretic terms as normal form games. The behavior of the interacting agents can be explained in terms of Nash Equilibrium (NE) and the global system performance correlates in some way to the payoffs of this equilibrium. The model can coordinate upon Pareto-optimal NE in a repeated game scenario. This section assumes the reader has some basic knowledge in game theory, see Osborne and Rubinstein (1994) for A course in game theory.
ARTICLE IN PRESS J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
The game theoretic model considers PAs in RS as ‘‘players’’ and ECT of RAs as ‘‘strategies’’; each player can choose a strategy. The game is represented as a tupple (P, Si ; ui ); P is the set of players: f1; . . . ; Ng; S i is a non-empty set of strategies for player i, ui is a function from XS i into R which describes the payoff that the player will receive when playing the strategy combination XS i : The objective of each player is to minimize his payoff, which acts as a penalty, and maximize his benefits. PAZ will select strategy corresponding to the Pareto-optimal NE of the game. Here, we consider a study case with three PAs players in the RS. They are represented by fP1; P2; P3g; three expected completed time (ECT) strategies for each RA is represented by fM1; M2; M3g: Table 1 is a simulation based on following data: PA APT fP1; P2; P3g ¼ f25; 35; 45g Time Units (TU); RA ECT selected fM1; M2; M3g ¼ f30; 35; 40g TU; PA expected tardiness ¼ allowed processing time – expected completion time; PA remaining processing time fP1; P2; P3g ¼ f0; 2; 5g TU; PA’s Payoff is defined as ( Tardiness K ðif tardinesso0Þ; ¼ Tardiness ðif tardinessX0Þ:
ð3Þ
Matrix payoff is calculated using the PA’s Payoff formulas, where K is a very large number. Each cell detailed in Table 1 shows the PAs expected tardiness when the combination of several strategies is played. Row players are P1 and P2, column player is P3; Mi means the input queue of the resource number i. In Table 1, the value of expected completion time for the first cell, ðP1; P2; P3Þ playing ðM1; M1; M1Þ; is equal to (30 1 ¼ 30; 30 2 ¼ 60; 30 3 ¼ 90). Expected tardiness value for this cell is equal to (25–30 ¼ 5, 3560 ¼ 25, 4590 ¼ 45). The game presented in this protocol is solved using all permutations of the best N ECT of the RAs (N ¼ 3 in our study case) that find the Nash equilibrium. The pure strategies NE are in bold,
125
Table 1 Representation of the PAs expected tardiness matrix P1, P2
M1,M1 M1,M2 M1,M3 M2,M2 M2,M1 M2,M3 M3,M3 M3,M1 M3,M2
P3 M1
M2
M3
(5,25,45) (5,0,15) (5,5,15) (10,35,15) (10,5,15) (10,5,15) (15,45,15) (15,5,15) (15,0,15)
(5,25,10) (5,0,25) (5,5,10) (10,35,60) (10,5,25) (10,5,25) (15,45,10) (15,5,10) (15,0,25)
(5,25,5) (5,0,5) (5,5,35) (10,35,5) (10,5,5) (10,5,35) (15,45,75) (15,5,35) (15,0,15)
and the Pareto-optimal NE corresponds to: ðP1; P2; P3Þ playing ðM1; M2; M3Þ ¼ ð5; 0; 5Þ: 5.3. ‘‘Centralized’’ protocol As for the GT protocol, the Pareto-optimal NE is a PAZ decision-making. But in this centralized protocol we only consider one RS for all the PAs in the system and for all the RA’s tasks. Because of the dynamic of the system, PAs, in RS, will address product under processing and not the product in a RA’s queue. Also, PA’s decisionmaking will take into consideration only PAs whose situation is changing. 5.4. ‘‘Shortest expected completion time’’ protocol This protocol is only based to the SSPR method for scheduling. It does not use the negotiation methodology developed before. PA decision-making is ‘‘Egoistic’’. PA in the system tries to schedule the next task for the product when its current task is finished. Then, PA asks RAs for their ECTs and selects a RA with the shortest ECT. 5.5. ‘‘Currency’’ protocol This protocol was developed by Krothapalli and Deshmukh (1999). A currency like metric is used to direct agents in a manufacturing system. This control protocol is based on the market paradigm; if a customer wants to acquire a service provided
ARTICLE IN PRESS 126
J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
by an organization, a currency transaction is involved. As an example, let us consider the machine, or RA, as the service provider and the part, or PA, as the customer: part entering the system has some currency, depending on their priority. The involved resource computes the workload based on the expected completion time and also on the recent bid success rate. The part is able to convert the expected waiting time into an equivalent currency, which is based on the due date, and adds the resource load to it. The part only considers the bids, having a completion time less than the due date and a workload lower than its currency limit. The part selects bids, with the lowest overall charge, for more details see Krothapalli and Deshmukh (1999).
6. Implementation and results The distributed production system (DPS) used for testing and validating our concepts is an experimental demonstration platform based on Grasshopper. It is made of nine resources representative of a real DPS. Each resource can provide only one type of task. Products waiting in a resource queue are processed according to their arrival in a first-in-first-out (FIFO) queue. Three kinds of tasks are processed in the system: drilling (D), cleaning (C) and assembly (A); each product needs to sustain a given number of tasks sequentially ranked. The production system can manufacture seven different types of Products leading to a given task ¼ fType1 ¼ fD; C; Ag; Type2 ¼ fD; Ag; Type3 ¼ fD; Cg; Type4 ¼ fC; Ag; Type5 ¼ fDg; Type6 ¼ fCg; Type7 ¼ fAgg: The model enables to measure the PS performance. It is measured by varying three parameters: workload, due date and lot size (see Table 2). For each parameter, we consider two possible values: ‘‘low’’ () and ‘‘high’’ (+). At low load, the average arrival rate is 18 () part per time unit, whereas at high load, the mean arrival rate is 15 (+) part per time unit. Quantity of products with closer due date included in the experimental set may vary from 10% () up to 45% (+) of the population. Product lot size may vary from ½1 . . . 2
Table 2 Table of experiments Experiments
Workload Due date Lot size
1
2
3
4
5
6
7
8
+
+
+ +
+
+ +
+ +
+ + +
() for small lot size up to ½4 . . . 8 (+) for big lot size. The data input is performed by a user-friendly interface display as detailed below: ROBi’s, ROBii’s and ROBiii’s correspond to robots providing drilling, cleaning and assembly tasks; while RSA_D, RSA_C and RSA_A represent RSA for, respectively, drilling, cleaning and assembly; agency represents the agent who generates PAs in the system (see Fig. 3). 6.1. Experimental design The experimental configuration comprises 40 products with different product types. The quantities of products are 7 for {type1}, 4 for {type2, type3, type4} and 7 for {type5, type6, type7}. Each configuration is replicated 5 times. The due date was varied between [30y350] TU; the processing time for each task can be {30, 35, 40} TU; the performance measurements enable to compare the different models as mentioned before. They are the statistical mean and the standard deviation (S.D.) of parameters such as waiting time (WT), turn around time (TAT), tardiness time and queue length. In this paper we will just show some results related to the three first parameters (see Table 3). The PS model is simulated using the Grasshopper agent platform. 6.2. Results and performances of the different negotiation protocols Comparison of the different negotiation protocols is based on the results issued from numerous simulation experiments. They are summarized in
ARTICLE IN PRESS J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
127
Fig. 3. Data capture of the simulation model for game theory (GT) strategy.
the following (see Fig. 4). Experimental results show that:
GT gives the best performance and stability in all the experiments. Currency gives a good performance when the load is high and the worst performance as soon the load is weak. Also, we can state a lower stability of this model in a dynamic environment. Consensual gives quite stable performances but does not provide the system with best results. Centralized gives the worst performances compared to the other study cases. Shortest ECT gives the same performances for turn around time and waiting time and the worst performances compared to other models. Results given by all models for small lot size are better than those we get for big lot size.
As a result, the negotiation protocols based on real-time exchange information and ‘‘co-opetition’’ approach between agents, using RS and
game theory principles, were found to be efficient in all cases, according to global performance criteria as various as TAT, WT, tardiness and workload distribution. Furthermore, a fully detailed comparison with some standard scheduling algorithms has been reported in Reaidy (2003), based on the same simulation case study. It shows that although it was constructed on local negotiation rules, the Co-operation approach including the Pareto-optimal solution is able to issue better global manufacturing performances in most cases.
7. Conclusions and perspectives The management and control system designed and described in this paper is based on multiagents concepts for the local scheduling and monitoring of complex production systems. Our approach uses the single step production reservation method with the request session approach; it is associated with protocols for negotiation between agents.
ARTICLE IN PRESS J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
128 Table 3 Experimental results
Experiments
Turn around time GT Currency Consensual Centralized Shortest ECT Waiting time GT Currency Consensual Centralized Shortest ECT Tardiness time GT Currency Consensual Centralized Shortest ECT
1
2
3
4
5
6
7
8
Mean S.D. Mean S.D. Mean S.D. Mean S.D. Mean S.D.
44.441 6.668 44.897 7.815 47.847 10.598 44.171 6.718 43.901 5.965
49.422 8.220 50.107 8.863 54.466 10.182 49.523 7.800 49.507 8.103
80.185 11.010 85.500 13.052 87.912 12.777 84.861 18.159 88.674 14.042
86.290 5.354 88.717 8.227 87.842 32.686 90.741 11.297 94.196 10.564
42.821 4.936 42.630 5.106 53.972 12.608 47.393 7.096 43.901 5.965
50.758 8.006 49.766 8.426 49.213 8.555 52.965 10.159 49.730 8.251
87.369 15.899 87.670 15.208 107.196 23.957 99.800 20.281 87.667 14.344
92.912 11.195 94.298 13.288 95.090 10.829 93.059 10.553 94.849 18.557
Mean S.D. Mean S.D. Mean S.D. Mean S.D. Mean S.D.
10.568 6.325 10.824 6.831 13.657 9.223 10.171 5.746 9.917 5.378
15.295 7.588 15.822 7.130 19.974 9.542 15.253 6.874 15.380 7.469
45.757 11.615 50.922 12.601 53.452 13.098 50.339 18.594 54.230 14.417
51.798 6.640 54.278 6.861 53.398 10.409 56.265 11.493 59.720 10.929
8.683 3.381 8.442 3.440 18.321 8.519 12.440 4.629 9.917 5.378
16.663 7.179 15.517 6.810 15.182 7.901 18.448 8.110 15.603 7.501
52.893 16.150 53.313 15.502 70.387 24.083 63.860 20.616 53.206 14.777
58.468 11.570 59.714 12.898 60.292 11.215 58.555 11.007 60.422 18.884
Mean S.D. Mean S.D. Mean S.D. Mean S.D. Mean S.D.
0.365 0.293 0.508 0.801 0.605 0.462 0.540 0.603 0.455 0.325
1.175 0.750 1.630 1.339 1.310 0.693 1.200 0.726 1.345 1.012
2.890 2.339 5.039 3.966 5.270 5.105 7.060 7.190 7.068 6.263
5.578 2.222 6.041 2.398 6.278 3.705 9.273 5.183 10.630 5.952
9.645 6.898 12.371 8.490 11.269 8.993 14.863 9.915 12.365 10.266
12.715 8.487 14.661 8.469 10.027 5.924 15.896 10.822 15.280 9.569
58.268 43.332 58.584 42.484 64.919 53.636 71.380 53.959 59.400 42.334
61.193 43.507 64.970 43.236 66.806 44.661 75.440 50.206 65.230 43.600
In our work, we have compared and evaluated different types of negotiation protocols for dynamic resource allocation. The ‘‘co-opetition’’ protocol was considered; compared to different strategies, it achieved the best results in terms of tardiness and waiting time, in a simulation of situations with highly turbulent demands. It conducted to the emergence of stable and adaptable reactive solutions, in an environment with dynamic demand and decentralized decision. Such an approach is very promising; it enables the im-
plementation of new and innovative paradigms to improve conventional manufacturing technologies. In the future, we intend to use some other criteria such as cost, priority, etc. This will enable a smarter PA decision-making in the ‘‘request session’’ and to develop the ‘‘neighborhood’’ notion for the competition between agents in the session. The ‘‘co-opetition’’ model used in this work can be extended to other field of applications such as air traffic management and E-business as well.
ARTICLE IN PRESS J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
129
Average Tardiness
80 70
GT
60
Currency
50
Consensual
40
Centralized
30
Shortest ECT
20 10 0 1
2
3
4
5
6
7
8
Experiments Fig. 4. Average tardiness times of products.
References Baker, A.D., 1998. A survey of factory control algorithms which can be implemented in a multi-agent heterarchy: dispatching, scheduling, and pull. Journal of Manufacturing Systems 17 (4), 297–320. Brandenburger, A.M., Nalebuff, B.J., 1996. Co-opetition. Doubleday, Bantam Doubleday Dell Publishing Group, New York. Diep, D., Massotte, P., Reaidy, J., Liu, Y.J., 2001. Design and integration of intelligents agents to implement sustainable production systems. EcoDesign 2001, 2nd International Symposium on Environmentally Conscious Design and Inverse Manufacturing, Tokyo, Japan. Grasshopper, 2002. Web site, http://www.grasshopper.de/. Holthaus, O., 1997. Design of efficient job shop scheduling rules. Computers and Industrial Engineering 33 (1–2), 249–252. Krothapalli, N.K.C., Deshmukh, A.V., 1999. Design of negotiation protocols for multi-agent manufacturing systems. International Journal of Production Research 37 (7), 1601–1624. Lin, G., Solberg, J.J., 1992. Integrated shop floor control using autonomous agents. IIE Transactions 24 (3), 57–71. Liu, Y.J., 2002. Mode´lisation et Gestion d’un Syste`me Virtuel par une Approache Multi-Agents. Ph.D. Thesis, INPG Grenoble, France. Massotte, P., Reaidy, J., Liu, Y., Diep, D., 2001. Implementation of new approaches based on intelligent agents for the new economy. IEPM 2001, Que´bec, Canada, vol. 2, pp. 860–869. Massotte, P., Reaidy, J., Liu, Y.J., Diep, D., 2003. Intelligent agents for production systems. Intelligent Agent-based Operations Management, Kogan Page Science, pp. 147–164. Osborne, M.J., Rubinstein, A., 1994. A Course in Game Theory. MIT Press, Cambridge, MA.
PABADIS, 2001, web site, http://www.pabadis.org/. See also, Arndt Lu¨der, Jo¨rn Peschke, Thilo Sauter, Steffen Detter, Daniel Diep, 2004. Distributed intelligence for plant automation based on multi-agent systems: the PABADIS approach. Production Planning and Control 15 (2): 201–212. Parunak, H.V.D., Baker, A.D., Clark, S.J., 2001. The AARIA agent architecture: from manufacturing requirements to agent-based system design. Integrated Computer-Aided Engineering 8 (1). Pesenti, R., Castelli, L., Santin, P., 2001. Scheduling in a realistic environment using autonomous agents: A simulation study. Proceedings of Agent Based Simulation II Workshop, Passau, Germany, April 2–4, pp. 149–154. Reaidy, J., 2003. Etude et mise en œuvre d’une architecture d’agent en re´seau dans les syste`mes dynamiques situe´s: pilotage des syste`mes de production complexes. Ph.D. Thesis, Universite´ de Savoie, France. Reaidy, J., Massotte, P., Diep, D., 2002. Negotiation and decision-making in agent-based manufacturing systems. KI2002, 25th German Conference on Artificial Intelligence, Workshop on Cognitive Agents, Aachen, Germany. Saad, A., Kawamura, K., Biswas, G., 1997. Performance evaluation of contract net-based heterarchical scheduling for flexible manufacturing systems. Intelligent Automation and Soft Computing 3 (3), 229–248. Shen, W., Norrie, D.H., 1998. A hybrid agent-oriented infrastructure for modeling manufacturing enterprises. In: Proceedings of KAW’98, Banff, Canada. Shen, W., Norrie, D.H., 1999. Agent-based systems for intelligent manufacturing: a state-of-the-art survey. Knowledge and Information Systems, an International Journal 1 (2), 129–156. Smith, R.G., 1980. The contract net protocol: high-level communication and control in a distributed problem solver. IEEE Transactions on Computers C-29 (12), 1104–1113.
ARTICLE IN PRESS 130
J. Reaidy et al. / Int. J. Production Economics 99 (2006) 117–130
Sycara, K.P., Roth, S.F., Sadeh, N., Fox, M.S., 1991. Resource allocation in distributed factory scheduling. IEEE Expert 6 (1), 29–40. Usher, J.M., Wang, Y-C., 2000a. Intelligent agents architectures for manufacturing control. Proceedings of the 9th Industrial Engineering Research Conference, Cleveland, OH. Usher, J.M., Wang, Y-C., 2000b. Judging the value of additional information on the performance of intelligent agents in manufacturing control. Conference on Intelligent Systems in Design and Manufacturing II, SPIE, Boston, MA. Zweben, M., Fox, M.S., 1994. Intelligent Scheduling. Morgan Kaufman, San Francisco CA.
Glossary APT: Allowed processing time. CMU: Co-operative manufacturing units. DT: Decision time.
DPS: Distributed production system. ERP: Enterprise resource planning. ECT: Expected completed time. LUS: Look-up service. MO: Manufacturing order. NE: Nash equilibrium. PAZ: PA having the nearest remaining processing time closer to zero. PMA: Plant management agents. PA: Product agents. PR: Production reservation. PT: Processing task. RS: Request session. RSA: Request session agent. RPT: Remaining processing time. RA: Residential agents. SSPR: Single-step production reservation. SCADA: Supervisory control and data acquisition. TPT: Tasks processing time. TU: Time units.