modeling distributed manufacturing systems - CiteSeerX

2 downloads 0 Views 152KB Size Report
Hamburg. pp. 419{. 424. Hahndel, Stefan, Florian Fuchs and Paul Levi ... Lenting, J. H. J. and P. J. Braspenning. (1993). Delegated negotiation for resource re-.
MODELING DISTRIBUTED MANUFACTURING SYSTEMS Paul Levi and Stefan Hahndel Institute of Parallel and Distributed High-Performance Systems, University of Stuttgart, Breitwiesenstr. 20-22, D-70565 Stuttgart Institute of Computer Science, Munich University of Technology, Orleansstr. 34, D-81667 Munchen

Abstract. Starting from the classical centralized approach that we sketch rst, we describe some of the main concepts that are common to most models of multi-agent systems and propose some main requirements that should be respected when designing such systems. Then we give some examples where such concepts have already been used in test implementations, while trying to cover a wide spectrum of concepts used, in order to give the reader a good starting point in literature. Finally we describe the approach underlying the simulation presented during the tutorial. Key Words. multi-agent system, decentralized organization, distributed planning

1 INTRODUCTION Nowadays it is commonly accepted that information processing is one of the most important factors when designing manufacturing systems. One can observe that there is a strong tendency to change old centralized organization structures. "Lean production" is a new catchword that is often used in this context. This perspective of using more decentralized structures is very similar to some basics in DAI (Distributed Arti cial Intelligence). This lets us expect that decentralized techniques as currently developed within the DAI community will play an increasing role in the design of future, decentralized planning and control systems of manufacturing. On the other hand CIM (Computer-Integrated Manufacturing) has always been an important test bed for knowledge-based systems. Especially production planning and control is one of the most dicult challenges for developers, because of its enormous complexity and the dynamic behaviour of the di erent components. Up to now, the greatest e ort is still being spend in trying to improve the already developed centrally organized planning methods. This has been an adequate choice in the past, when the structure of manufacturing systems was di erent from modern ones: in the past, most of the manufacturing cells and robots used had only restricted capabilities to perform xed pre-programmed tasks.

They were not able to react to changes in their environment in a exible way and to adapt their behaviour to di erent situations. Moreover, the computers used were very di erent, both in size and performance. Under these circumstances it was useful to have centrally structured planning and control systems. However, today we are faced with a di erent situation, and in the foreseeable future even more drastic changes are to be expected: The components of a modern "factory of the future" (e.g. robots, autonomously guided vehicles and manufacturing cells) tend to possess more and more local intelligence, each component having its own powerful computer. Another important factor is the improvement in sensor technology achieved so far and which will be further improved in the future. With these sensors (e.g. ultrasonic sensors, video cameras, 3D laser cameras, radar, etc.), components of a modern factory become able to observe their environment and supervise their own actions. We can thus expect to nd more and more autonomous components in modern factory environments that are able to perform many di erent and changing tasks in a exible way while being able to detect their environment with increasing accuracy. Furthermore, most of these local computers are connected in powerful computer networks, enabling fast information exchange.

Production Planning System manages or generates production plans, complex manufacturing orders etc. planning component on control level, also performs fine planning (refinement of production plans) decomposition in elementary tasks control system: scheduling and supervision of elementary tasks

Actors

Figure 1 centralized structure In future robot applications many components with very di erent grades of autonomy and humans will be working together in the same environment. Consequently, another kind of modeling and different organization schemes for exible manufacturing systems are needed in order to gain the widest advantages from the possibilities of the new structure. However, due to the increasing autonomous capabilities of the individual systems, we are also confronted with new problems that have to be solved if several autonomous actors/agents are to be coordinated properly: when a group of autonomous agents, such as autonomous mobile robots and intelligent manufacturing units, is supposed to cooperate and avoid bad interaction, it should be able to build a common multi-agent plan through detailed adequate agreements, taking into consideration the group goals as well as those of the individual agents. Moreover, the autonomous agents must be able to coordinate their actions during execution, planning cooperatively their synchronization.

2 CLASSICAL CENTRAL APPROACHES Before we come to the requirements and methods of distributed manufacturing models on the level of the planning and control of manufacturing, we should like to characterize brie y some properties of classical central models in order to show the need for new organization methods obeying a de-

centralized paradigm. Usually, manufacturing is planned by a central production planning system (PPS) (see gure 1). A typical production planning system in a exible manufacturing environment manages a large set of manufacturing plans in a representation which is independent of the exact structure of the manufacturing environment. These plans do not contain information about which individual machine to use, when several machines with overlapping capabilities are available. Moreover, the operations for loading and unloading the machines and transportation tasks are absent in these plans. When the manufacturing system receives an order to produce parts of an individual product within a given time , the production planning system passes the manufacturing plan over to a central manufacturing control system. This system expands the plan with the manipulation and transportation actions needed and generates a schedule of these activities based on its current knowledge of the state of the manufacturing environment. Such a system also controls the environment and gives sub-orders to the individual agents at the exact time required. Failures are thus unavoidable the complexity of present-day manufacturing systems being too high to be controlled by a single central system. There was no communication between the individual systems. All communication followed strictly the centralized structure of the model. If a lon

P

t

cal failure arose which in principle could have been overcome locally by the cooperation of several autonomous units, this was impossible without the central planning system being involved. This strongly centralized and hierarchically built system represents a bottleneck, making it dicult to react to several di ering failures at the same time and with the desired exibility under realtime conditions. One of the main advantages of a centralized system often brought forward as an argument to its support is the global perspective it has over the whole system on its level of abstraction. For this reason it would seem much easier for such a system to perform global optimization of the complete production process. But the more failures arise in the whole system, the weaker this argument becomes. Most planning subproblems, e.g. scheduling, are NP complete. For this reason, most of the time it is not possible to build an optimal plan under real-time conditions. Therefore, most centralized systems use good heuristics to generate good suboptimal solutions. But recently it has been recognized that this should also be possible in decentralized systems with self-organizing processes.

3 REQUIREMENTS FOR DECENTRALIZED MODELS

What requirements should be taken into account when designing a decentralized model for production planning and control, and what advantages are to be expected when using such techniques ? 

 



The enormous complexity of a complete planning task should be distributed to all agents in order to increase overall performance. The load should be balanced among the agents themselves. The communication costs for the negotiation needed in organizing the distributed planning and synchronizing the actions should be as low as possible. High communication costs is often the main argument against distributed methods. Even though each agent has only a local view of the complete environment and thus can only perform local optimization, the resulting global behavior of the whole system should be adequate enough to be useful. Therefore, good local heuristics are needed. An agent should not only respect its own local goals but also the group goals and global goals. To achieve this, the agents should be able to build proper groups, discussing common tasks by negotiation and leading to an optimal agreement.









Self-adaptation: the multi-agent system should be able to react to changes in the environment in order to prevent possible con icts as soon as possible. The distributed method should be free of deadlocks or be able to handle possible deadlocked situations. Task planning (action planning and scheduling), execution and monitoring of actions should not be considered separately, as it is often done. Instead, in distributed online planning they should overlap in the ow of time. In real-world applications we often observe that con icts arise only because exact planning is done too early and a state planned in advance cannot be achieved. When modeling a production planning system, this fact should be allowed for in the design phase of both the model and of the algorithms. Each agent must have an adequate local world model in its local knowledge-base

One way of dealing with these requirements which seems very promising to us is to model the exible manufacturing system itself as a multi-agent system, and use techniques currently being developed within the research area of DAI (Distributed Arti cial Intelligence). When a manufacturing system has been modeled as a multi-agent system (MAS), each active component (e.g. robots, manufacturing cells, ) is represented by an agent of the MAS (see gure 2). Because this research area is very new there is still no commonly accepted formal de nition of the term 'agent', and there are many kinds of slightly di ering agent architectures. Hence, we will try to present some attributes that, in our view, are common to most existing systems. Usually an agent has a local knowledge-base , some kind of communication component needed for cooperation with other agents, and its own local decision component . Within its local knowledge-base an agent has its own world model about its environment. An agent must also have knowledge about other agents in the system. It is very convenient that an agent should have an (implicit or explicit) representation about the capabilities of other agents, because it has to know to which agents certain tasks should be delegated. In order to make its own local decisions, each agent performs its own inference process based on the data in its knowledge-base. The communication component is needed in order to communicate with other agents. There are big di erences in the complexity of communication :::

Production Planning System manages or generates production plans, complex manufacturing orders etc.

fine-planning, scheduling, supervision etc. is managed by the agents cooperating with each other Agents agent

agent agent

agent agent

Actors

Figure 2 decentralized structure with multiple agents performed in di erent systems. In some systems (e.g.: see sections 4.2 and 4.3) a blackboard architecture is used. In such an architecture a group of agents has access to a common blackboard that can be seen as a kind of common knowledge-base. All communication is performed over this blackboard. If an agent has solved a certain task, it writes the result on the blackboard in order to inform other agents which may need this information. Also requests or tasks for other agents have to be written on this blackboard. Another possibility very similar to a blackboard approach, and which can be seen as a kind of distributed blackboard, is to use a distributed knowledge-base [Schweiger et al., 1994]. Here Schweiger et. al. describe an object-oriented knowledge-base distributed to a set of computers. Each access to this knowledge-base is transparent, that means, an agent would not have to know at which place a piece of data is stored when reading or writing values into the knowledge-base. In most other multi-agent systems, agents communicate by direct exchange of messages when cooperating with other agents by negotiation. The topic of such negotiations could be, e.g. to which agent a certain task should be delegated, when this task should be performed, which resources should be used, etc. For this reason, di erent protocols for negotiation and strategies for con ict resolution are being researched within DAI, e.g. [Chang and Woo, 1991; Conry et al., 1988; Khedro and Genesereth, 1994; Kraus and Wilken-

feld, 1991; Kwa, 1988; Lenting and Braspenning, 1993; Sablayrolles and Schupeta, 1993; Sathi and Fox, 1989; Smith, 1988; Sycara, 1988; Werkman et al., 1990; Zlotkin and Rosenschein, 1991]. Usually, such a negotiation protocol determines which messages are allowed in certain situations. Many negotiation protocols can be described by a triple ( ), where is a set of the possible states of negotiation in which an agent could be. is a set of message types allowed, and a set of constraints on which types of messages an agent is allowed to receive or to send in a certain negotiation state. When an agent receives a message from another agent, it decides by the type of message how the message body should be interpreted. The interpretation process of the message body and the decision as to how to react on a message could be very complex.Some of the negotiation protocols (e.g. SANP, [Chang and Woo, 1991]) are based on the speech-act theory [Searle, 1975] of Searle in order to nd useful message types and negotiation structures. When designing a negotiation protocol, it is very important that this protocol is free of so-called "message deadlocks" that would be as bad as a resource deadlock. A message deadlock occurs when a group of agents cyclically await from each other certain messages needed to continue their work. In distributed systems, recognizing deadlocks it is not as easy as in a centrally organized approach, where the central component simply has enough information about the whole system and able to S; M; C

M

S

C

search for cycles in the global graph describing the dependence. But for practical purposes one can use watchdog timers in the way usually done in computer networks: if an agent cannot have access to a needed resource, or a message does not arrive in a certain time interval, the agent becomes active by itself.

4 DIFFERENT APPROACHES

There is already some work done in this area. We want to give a short overview of it. Of course, it is not possible to go into detail with each existing approach. For this reason we have selected a few that we brie y characterize in the next section, which should give a wide spectrum of di ering architectures and of applications of multi-agent systems, and leave out many others, e.g. [Butler and Ohtsubo, 1992; Duan and Kumara, 1993; Ge and Findler, 1990; Gyires, 1991; Kirn and Schneider, 1992; Prosser, 1989; Sycara et al., 1990]. Even in the approaches described, we want only to sketch out the main properties. For further details we refer the reader to the given references we indicate.

4.1 MAGSY

In the rule-based multi-agent system MAGSY (Multi AGent SYstem) developed by Fischer [Fischer, 1993] an agent controls its behaviour by a set of behaviour patterns. The approach used in MAGSY can be seen as a reactive approach. Each agent in MAGSY contains a set of facts representing the local knowledge of this agent and a set of rules representing the behaviour patterns of an agent. These rules are generated in advance by o -line planning. Each agent is also able to o er a set of services to other agents as part of its interface. Additionally, each agent can send facts to other agents. The body of a rule can start a real action or send facts to another agent or to itself in order to insert these facts in the knowledgebase of the recipient. Every agent performs its own inference process and has practically the ability of a complete expert system. In each step an agent tests whether a rule matches the actual situation and does the corresponding actions. The system MAGSY has been implemented by extending OPS5 with additional functions that make it possible to run several OPS5 processes on a set of workstations communicating with each other. MAGSY has been used to control a small model factory built with sher technic . Orders for the complete multi-agent system are obtained by a global, centralized task list. If an agent has no work to do, it looks itself in the task list for any work it could perform. F

R

D

4.2 Network of Supervision Kernels

In Ayel's [Ayel, 1992] work a set of so-called supervision kernels is used to oversee the activi-

ties in a manufacturing system. In her work she uses the concept of a distributed blackboard mechanism. The supervision kernels are distributed knowledge-based systems functioning reactively when performing their local supervision tasks. These supervision tasks include the analysis of situations, test whether values are still valid, whether nal conditions have been achieved, and other kinds of consistency checks. These kernels are hierarchically organized and each kernel cooperates only with the kernel that is its parent in this organization. The hierarchical structure is static and was designed in advance using the well-known GRAI method [Levi, 1993]. A special software tool was developed in CommonLISP in order to support the implementation of this concept of supervision kernels and to distribute these kernels on two levels of a GRAI grid. An application of these supervision kernels has already been realized in a factory producing video devices.

4.3 Ver-FLEX-BB

The system Ver-FLEX-BB (Verteilte Fertigungsleitstand-Expertensysteme auf der Basis der Blackboardarchitektur; engl.: Distributed expert systems for the control of manufacturing based on a blackboard architecture) that has been developed by Albayrak [Albayrak, 1992] is thought to support humans as controllers in planning and controlling of manufacturing orders. The manufacturing cells obtain these orders by a PPS (Production Planning System). The execution of the orders is subdivided into ne planning (i.e. planning the correct order of all tasks and which machines should carry them out), supervision (consistency checks etc.), management of disturbances, and ressource management. Every sub-area is further divided into other subareas, to each of which an own agent is assigned. The agents operate in a blackboard and each of the agents has its own knowledge-base, a component for cooperation, some special problem solving methods and is itself led by local goals. A central control agent with the corresponding control blackboard supervises the current global situation in the factory and has the task of deciding which agent has to be activated in which order. Real cooperation takes place, only if a con ict arises. In this case, the information about the failure is inserted into the blackboard, and the diagnosis agent assigned to the machine where the failure arose starts a kind of a so-called "window diagnosis". In a dialog between this diagnosis agent and the human controller of this part of the factory an attempt is made to nd out the cause of the failure. Other agents are activated to nd out which tasks must be rescheduled in order to meet the changed situation.

The system Ver-FLEX-BB has been implemented on a VAX using GBB, Common-LISP and the rule interpreter FOXGLOVE. Some tests have been performed in a real manufacturing environment for electronic boards.

4.4 YAMS

YAMS (Yet Another Manufacturing System) was developed by Parunak [Parunak, 1989]. It is a concept for a distributed manufacturing control system that uses the contract-net protocol [Smith, 1988] well known in DAI, and can be seen as an extension to classical client-server concepts. In YAMS, tasks are distributed to the agents by the contract-net protocol using a hierarchical model of the factory environment. The contract-net protocol di erentiates between managers and bidders. If a manager wants to delegate a certain task to a particular agent, it announces this task to the remaining agents in the network. These agents, called "bidders", send o ers to the manager node indicating their ability to perform this task. In a third step, the manager evaluates the o ers received and chooses the best one. When an agent in YAMS has to do a certain task and cannot perform it by itself, this task is decomposed. The resulting tasks are distributed to agents on the next deeper hierarchical level in the structure by the contract-net protocol. These steps are performed recursively between adjacent levels in the hierarchical structure until the complete manufacturing order has been decomposed into elementary tasks that can be performed by the assigned agents.

4.5 Computational Manufacturing

Raulefs [Raulefs, 1991] introduced the term "computational manufacturing" to highlight the importance of information processing in factory production. He described a reactive approach in which a manufacturing system is modeled objectoriented. He calls this simulation model a "virtual factory". Agents (representing machines) and the real objects manipulated are modeled as objects communicating with each other. The simulated manufacturing process of this multi-agent system corresponds to the real manufacturing process at some abstract level of detail, thus giving important hints for the design and planning of the real manufacturing system.

4.6 SOPP

In the system SOPP (Self Organizing Production Processes) of Dilger and Kassel [Dilger and Kassel, 1993] a kind of mixture of a centralized and a decentralized approach has been used. As in the other systems, an agent in the model corresponds to each manufacturing unit in the real world. There are many manufacturing agents and transporting agents within the model, but only one planning agent and a so-called broker. The

planning agent together with the broker build the interface to the central production planning system. The PPS gives an order together with the production plan to the planning agent. The planning agent has the task of re ning the given production plans and decomposing them into elementary subtasks that can be performed by a single agent. It also assigns a certain priority to each subtask and determines further restrictions about the correct order in which these elementary tasks have to be performed. Theses subtasks are communicated to the broker agent. The broker agent has the role of assigning the subtasks to the executing agents (transporting agents and manufacturing agents). All communication in this concept is centralized through the broker agents, e.g. it is not allowed that two manufacturing agents perform a local negotiation without the broker. This method, implemented using C++, has been simulated on a WS30 workstation. Each agent is represented by one UNIX process.

5 DISTRIBUTED NEGOTIATION-BASED PLANNING METHOD In this approach, presented in the tutorial and described in [Hahndel et al., 1994; Hahndel and Levi, 1994] in more detail, a method has been developed to solve some typical tasks of planning and control in manufacturing without using a xed central component. To achieve this, a exible manufacturing system has been modeled as a multi-agent system, while the planning method uses the structure of manufacturing plans to coordinate properly their activities through negotiation among the agents. Each autonomous component of the exible manufacturing environment is modeled as an agent of the multi-agent system. An agent is an abstract unit having a set of capabilities, its own knowledge base and a combined local planning and communication module for proper coordination and negotiation with other agents. A manufacturing plan is regarded as a kind of skeleton plan containing only manufacturing steps on the highest level of abstraction together with the causal dependence, but without the auxiliary actions needed. The ne planning, scheduling and coordination of the execution is performed by the multi-agent system itself. If there is an order to produce a number of a product , the production planning system nds an agent through negotiation similar to the contract-net protocol and sends to this agent the order together with the chosen production plan, thus giving it the responsibility for the complete complex order. Now this agent initiates a distributed planning process with a given lookahead P

n

P

value in order to plan the next steps on each path in the production plan. It tries to nd other agents through negotiation to perform the next actions of the production plan and hands over the manufacturing plan and the planning control to these agents. These behave themselves in the same way and try to nd another agents for the next actions. This planning procedure is propagated through the multi-agent system and continuously re ned until the given lookahead value is reached. There is also a second lookahead value for the ne planning of the actions on the next deeper hierarchical level called "expansion lookahead". When an agent obtains the planning control, it does not only try to nd agents for the following planning steps, but also starts its own local planning process in order to re ne the node of the manufacturing plan that was assigned to it during the planning process. That means, it expands this node to a complete action plan that is needed to perform the manufacturing step represented by this node and tries to assign all actions it cannot perform by itself to other agents of the next deeper level. When an agent is executing a complex action with a typical duration time in the range of minutes and higher, it initiates one planning wave after another until the action has been completed. Of course, in the following planning waves not all work must be done a second time. The main purpose of the following planning wave is to test whether the constraints of the decisions from the previous planning wave still hold. Another purpose is to let the system try optimizing the planning result obtained with each iteration. It can be seen as a distributed anytime algorithm. This negotiation-based distributed planning method has been implemented and tested on a pool of workstations using the tool PVM (Parallel Virtual machine). Each agent consists of several processes. One process (the central process of an agent) manages the local plans of the agent and decides when and how an action should be planned and for which actions other agents are needed. Another important task of this process is to start child processes to carry out negotiation with other agents. Because a new negotiating process is started for each action to be delegated, an agent can have several negotiating processes running at the same time. A second type of process started by an agent is the executing process, which handles the execution and monitoring of actions already planned. k

k

6 CONCLUSION

In this article we presented the arguments for the use of decentralized organization schemes and DAI techniques in the design of distributed manufacturing planning and control systems. We explained what main components would be needed

for modeling a exible manufacturing system as a multi-agent system. Finally, covering a wide area of methods and applications (planning, control, plan execution and supervision) we described some existing approaches that have already been implemented.

References

Albayrak, S. (1992). Kooperative Losung der Aufgabe Auftragsdurchsetzung in der Fertigung durch ein Mehr-Agenten-System auf Basis des Blackboardmodells. Dissertation. TU Berlin. Ayel, Jacqueline (1992). Decision coordination in production management. In: Proc. of the 4 th MAAMAW. Pre-Proceedings of the 4th European Workshop "Modeling Autonomous Agents in a Multi-Agent World. Butler, J. and H. Ohtsubo (1992). Addyms: Architecture for distributed dynamic manufacturing scheduling. In: Arti cial Intelligence Applications in Manufacturing (A. F. Famili, D. S. Nau and S. H. Kim, Eds.). pp. 199{213. AAAI Press. Menlo Park, CA. Chang, Man Kit and Carson C. Woo (1991). SANP : A communication level protocol for negotiation. In: Proc. of the 3 th MAAMAW. Kaiserslautern, Germany. pp. 31{54. Conry, S. E., R. A. Meyer and V. R. Lesser (1988). Multistage negotiation in distributed planning. In: Readings in Distributed Arti cial Intelligence (A. H. Bond and L. Gasser, Eds.). pp. 367{384. Kaufmann. San Mateo, CA. Dilger, Werner and Stephan Kassel (1993). Sich selbst organisierende Produktionsprozesse als Moglichkeit zur exiblen Fertigungssteuerung. In: Verteilte KI (Jurgen Muller, Ed.). BI Verlag. Duan, N. and S. R. T. Kumara (1993). A distributed hierarchical control model for highly autonomous exib le manufacturing systems. In: Intelligent Autonomous Systems: Proc. of the International Confe rence IAS-3

(F. C. A. Groen, S. Hirose and C. E. Thorpe, Eds.). IOS Press. Washington. pp. 532{541. Fischer, Klaus (1993). Verteiltes und kooperatives Planen in einer Fertigungsumgebung. number 26 In: DISKI. In x. St. Augustin. Ge, Q. and N. V. Findler (1990). Distributed planning and control for manufacturing operations. In: AI'88: Proc. of the 2nd Australian Joint Arti cial Intelligence Conference (C. J.

Barter and M. J. Brooks, Eds.). Springer. Berlin, Heidelberg. pp. 432{448. Gyires, T. (1991). A heuristic algorithm for distributed control in manufacturing system s. Applied Intelligence 1, 145{155. Hahndel, Stefan and Paul Levi (1994). Optimizing distributed production planning. In: Proc. of 2 nd International Conference on Intelligent Systems Engineering '94. Hamburg. pp. 419{

424.

Hahndel, Stefan, Florian Fuchs and Paul Levi (1994). Distributed negotiation-based task planning for a exible manufacturing environment. In: Pre-Proc. of the 6 th MAAMAW. Odense, Denmark. pp. 147{158. Khedro, Taha and Michael R. Genesereth (1994). Progressive negotiation for resolving con icts among distributed heterogenous cooperating agents. In: Proc. of AAAI-94. Seattle, Washington. pp. 381{386. Kirn, S. and J. Schneider (1992). Strict: Selecting the \right" architecture - a blackboard-based dai advisory system supporting the design of distributed production planning and co ntrol applications. In: Industrial and Engineering

Applications of Arti cial Intelligenc e and Expert Systems: Proc. of the Fifth International Conference IEA/AIE-92 (F. Belli and

F. J. Radermacher, Eds.). Springer. Berlin, Heidelberg. pp. 391{400.

Kraus, Sarit and Jonathan Wilkenfeld (1991). Negotiation over time in a multi-agent environment. In: Proc. of the 12 th IJCAI. Sidney, Australia. pp. 56{61. Kwa, J. B. H. (1988). Tolerant planning and negotiation in multiagent environments. Applied Arti cial Intelligence 2, 179{211. Lenting, J. H. J. and P. J. Braspenning (1993). Delegated negotiation for resource reallocation. In: GWAI-92: Advances in Arti cial Intelligence - Proc. of the 16th German Conference on Arti cial Intelligence, Bonn, Germany (H. J. Ohlbach, Ed.). Springer.

Berlin, Heidelberg. pp. 299{312.

Levi, Paul (1993). Knowledge-based CIM-modelling. In: Robot Technology and Applications. pp. 153{206. Marcel Dekker. Parunak, H. Van Dyke (1989). Distributed ai and manufacturing control: Some issues and insights. In: Proc. of the 1 th MAAMAW. Cambridge, England. pp. 81{101.

Prosser, P. (1989). A reactive scheduling agent. In: Proc. of the 11 th IJCAI. Detroit, MI. pp. 1004{1009. Raulefs, Peter (1991). Cooperating agent architecture to manage manufacturing processes. In: 4. Internationaler GI-Kongre (W. Brauer and D. Hernandez, Eds.). Munchen. pp. 6{ 17. Sablayrolles, P. and A. Schupeta (1993). Con ict resolving negotiation for cooperative schedule management agents (cosma). Report 02. DFKI GmbH. Saarbrucken, BR Deutschland. Sathi, A. and M. S. Fox (1989). Constraintdirected negotiation of resource reallocations. In: Distributed Arti cial Intelligence (Vol. II) (L. Gasser and M. N. Huhns, Eds.). pp. 163{193. Kaufmann. San Mateo, CA. Schweiger, Johann, Karim Ghandri and Andreas Koller (1994). Concepts of a distributed real-time knowledge base for teams of autonomous systems. In: Proc. of Intelligent Robots and Systems (IROS) '94. Vol. 3. Munchen. pp. 1508{1515. Searle, J. R. (1975). A taxonomy of illocutionary acts. In: Language, Mind and Knowledge (K. Gunderson, Ed.). pp. 344{369. University of MInnesota Press. Minneapolis. Smith, R. G. (1988). The contract net protocol: High-level communication and control in a distributed problem solver. In: Readings in Distributed Arti cial Intelligence (A. H. Bond and L. Gasser, Eds.). pp. 357{366. Kaufmann. San Mateo, CA. Sycara, K. P. (1988). Resolving goal con icts via negotiation. In: Proc. of AAAI-88. St. Paul, MN. pp. 245{250. Sycara, K., S. Roth, N. Sadeh and M. Fox (1990). An investigation into distributed constraintdirected factory scheduling. In: Proc. of the Sixth Conference on Arti cial Intelligence Applications CAIA-90 (Volume I: Papers).

Santa Barbara, CA. pp. 94{100. Werkman, K. J., D. J. Hillman, M. Barone and J. L. Wilson (1990). Designer fabricator interpreter system: Evaluating alternate connection con gurations through multiagent negotiation. In: Proc. of the Sixth Conference on Arti cial Intelligence Applications CAIA90 (Volume I: Papers). Santa Barbara, CA.

pp. 153{159. Zlotkin, Gilad and Je rey S. Rosenschein (1991). Incomplete information and deception in multi-agent negotiation. In: Proc. of the 12 th IJCAI. Sidney, Australia. pp. 225{231.