Implementing Internet Enabled Virtual Enterprises ...

4 downloads 4197 Views 104KB Size Report
services should significantly reduce the complexity of developing systems of collaborative agents. Cooperation Domain Servers. The cooperation domain server ...
Implementing Internet Enabled Virtual Enterprises Using Collaborative Agents Weiming SHEN and Douglas H. NORRIE Div. of Manufacturing Engineering, The University of Calgary, Calgary, Alberta, Canada E-mail: [wshen | norrie]@enme.ucalgary.ca, URL: http://imsg.enme.ucalgary.ca/

Abstract This paper presents the development of a Collaborative Agent System Architecture (CASA) and an Infrastructure for Collaborative Agent Systems (ICAS). Initially being proposed as a general architecture for Internet based collaborative agent systems, the proposed architecture and infrastructure are very suitable for implementing Internet enabled virtual enterprises. The main features of CASA and ICAS are described, some domain independent mechanisms and components are briefly introduced, and two case studies are presented.

1. Introduction Global competition and rapidly changing customer requirements are forcing major changes in the production styles and configuration of manufacturing organizations. Several new concepts have been proposed and developed in the past few years, e.g., Virtual Enterprise, Supply Chain Management, Electronic Commerce, etc. However, there is so far no unified definition of these concepts and a variety of definitions exist from different points of view in the literature (Camarinha-Matos et al., 1997). A wellknown definition from NIIIP (the National Industrial Information Infrastructure Protocols) Consortium is that “a Virtual Enterprise is a temporary consortium of independent member companies which come together to quickly exploit fast-changing worldwide product manufacturing opportunities” (NIIIP, 1999). A comprehensive discussion of the Virtual Enterprise concept can be found in (Camarinha-Matos et al., 1997). We consider Virtual Enterprise and Supply Chain Management are two similar concepts. The supply chain of a manufacturing enterprise can be defined as a world-wide network of suppliers, factories, warehouses, distribution centers and retailers through which raw materials are acquired, transformed into products which are then delivered to customers. So the Supply Chain Management a little more focuses on the Chain level and is related to the life cycle of products. The Virtual Enterprise focuses on the collaboration among the related manufacturing factories. While Electronic Commerce includes the ordering and financial transactions involved for suppliers, i.e., it usually focuses on just one link in the supply chain. Recently, a number of research projects have been developing to define infrastructures and supporting functionalities for Virtual Enterprises. Among others, significant projects include NIIIP in the USA for the development of open industry software protocols that will make it possible for manufacturers and their suppliers to effectively inter-operate (NIIIP, 1999), and a number of European ESPRIT projects such as Prodnet II for the development of a reference architecture and supporting infrastructure for virtual enterprises particularly suited for small and medium sized enterprises (Camarinha-Matos

1

et al., 1997). Agent technology has been recently recognized as a promising approach to implementing virtual enterprises and supply chains. Fox et al (1993) proposed organizing the supply chain as a network of cooperating, intelligent agents. A similar proposal has been made by Swaminathan et al (1996) using a multi-agent framework for modeling supply chain dynamics. Parunak and VanderBok (1998) proposed to use three species of agents to model the supply chain: Company agents representing the different firms that trade with one another in a supply chain; PPIC agents modeling the production planning and inventory control algorithms used by company agents; and Shipping agents modeling the delay and uncertainty involved in the movement of both material and information between trading partners. MetaMorph II (Shen et al., 1998a) proposed to use a hybrid agent-based mediator-centric architecture to integrate partners, suppliers and customers dynamically with the main enterprise through their respective mediators within a supply chain network via the Internet and Intranets. Brugali et al (1998) proposed applying mobile agent technology to implement supply chain networks. A state-of-the-art survey of agent-based manufacturing systems with a detailed discussion of key issues and an extensive annotated bibliography can be found in (Shen and Norrie, 1999). The extended version of this survey in HTML format with direct links to related web sites is also available through the Internet at: http://imsg.enme.ucalgary.ca/publication/abm.htm. In response to the rapidly expanding Internet technology and the Java programming language, we have been working through several projects towards the development of infrastructures and methodology for implementing Virtual Enterprises. Based on eight years research work on applications of agent technology in distributed intelligent manufacturing (Norrie and Shen, 1999), our group is now involved with industrial partners to develop and test an Infrastructure for Collaborative Agent Systems (ICAS) in a complex supply chain network. This paper presents the proposed infrastructure and reports our preliminary research results. The rest of the paper is organized as follows: Section 2 describes the proposed infrastructure with related components and mechanisms; Section 3 discusses the benefits of implementing virtual enterprises with the proposed infrastructure; Section 4 briefly presents two case studies; and finally Section 5 gives some concluding remarks and perspectives

2. An Infrastructure for Internet Enabled Collaborative Agent Systems 2.1 Motivations and Objectives At the University of Calgary, a number of research projects have been undergoing since 1991. These projects include IAO (Kwok and Norrie, 1993), Mediator (Gaines et al., 1995), ABCDE (Balasubramanian et al., 1996), Metamorph I (Maturana and Norrie, 1996; Maturana et al., 1998), MetaMorph II (Shen et al., 1998a), Agent-Based Intelligent Control (Brennan et al., 1997; Wang et al., 1998), and Agent-Based Manufacturing Scheduling (Shen and Norrie, 1998). Eight years research experience related to applications of agent technology in developing agent-based intelligent manufacturing systems give us an insight into requirements and key issues of agent-based manufacturing systems. An overview of related projects at the University of Calgary with a summary of several interesting techniques and mechanisms developed during these projects and a discussion of key issues can be found in (Norrie and Shen, 1999). Based on our previous research results, a new general purpose Collaborative Agent System Architecture 2

(CASA) and an Infrastructure for Collaborative Agent Systems (ICAS) are proposed and being developed for the following reasons: − a generic domain independent architecture is more reusable than a domain specific architecture; − several interesting techniques and mechanisms have been developed and proved during our previous projects (Norrie and Shen, 1999), and they may become more interesting and useful after being developed into domain independent modules and mechanisms; − emergent Internet technology and the Java programming language allow us to develop agent-based systems in a different way than previously; Figure 1 shows an Infrastructure for Collaborative Agent Systems (ICAS). It also indicates our basic ideas and motivations to develop a generic collaborative agent system architecture. Domain Specific Collaborative Agent Systems

Domain Independent Prototypes and Mechanisms for System Organization, Coordination, and Adaptation etc.

Domain Independent modules and Components such as Interface Agents, HLC Agents, Ontology Servers, KM Servers

Collaborative Agent System Architecture (CASA) (Basic Communication and Cooperation Services)

Internet/Intranet/LAN

Figure 1. Infrastructure for Collaborative Agent Systems (ICAS)

2.2 Basic Communication and Cooperation Services A Generic Collaborative Agent System Architecture The generic Collaborative Agent System Architecture (CASA) is composed of collaborative elements such as agents, local area coordinators (LACs), yellow pages and cooperation domain servers. The objective of the CASA work is to support collaborative software agents by providing easy-to-use domain independent communication and cooperation services over the Internet. These services include conversation messaging services, lookup and search services, and remote call services etc. The provision of these services should significantly reduce the complexity of developing systems of collaborative agents. Cooperation Domain Servers The cooperation domain server listens to a specified port for new connections. Other agents may send requests to this port to create a new cooperation domain, or join an active or inactive cooperation domain. The server may allow this request by creating a new cooperation domain server (in the case of a new cooperation domain or a join to an inactive cooperation domain) and replying to the agent with the port number that the

3

cooperation domain server will use. In addition, the server offers data storage services to the cooperation domain – storing and retrieving named stream data on request. The cooperation domain server is the receiver of all messages sent by the agents in the cooperation domain. Although the exact content of the messages may be in any language (whether known or unknown to the server), all messages are in an extended KQML format (Finin and Labrou, 1997). Thus, the cooperation domain server can determine the ultimate destination and some of the high level semantics of the message. The cooperation domain server takes care of forwarding the message transparently to its destination, whether it is an individual agent, a list of agents, all agents of a particular service type (role), or all agents in the cooperation domain. In addition, the cooperation domain server may record all transactions to enable history playback and "group undo" operations. A collaborative agent system may have one or more cooperation domain servers. Yellow Page Agents Yellow Page agents (also called Yellow Pages, or YPs) are responsible to accept messages for registering services and to record this information in a local database. Other agents may later query the yellow pages to determine what agents offer a specified service and may retrieve descriptions of those agents' locations. Area and Local Area Coordinators An area is a convenient quasi-physical division of the network that can be controlled by a local area coordinator (LAC). The area may be a single computer, some arbitrary division of a single computer, or a cluster of computers. A local area coordinator acts both as a representative of the area to the outside world, and a manager for the local agents within the area. Any agent may send a message to the LAC to request that the LAC ask one of its local agents to join a particular cooperation domain. The LAC will invoke the agent if necessary, and pass along the request to the agent. The LAC also facilitates local agent's communication to the outside world by providing an interface service to the outside world. Instead of each agent having to keep a model of network locations of servers and yellow pages, the LAC provides a central cache of such data. Local agents may query the LAC to obtain yellow page services; the LAC may, in turn, pass these requests to one or more known yellow pages and broker the responses. This simplifies network modeling requirements for individual agents. Communication in CASA In CASA, agents do not communicate with one another in an ad-hoc, point-to-point manner. Instead, agents working together form cooperation domains. Each agent in a cooperation domain routes all its outgoing messages through the cooperation domain server, which can direct it to a specific agent (imitating point-to-point communication), to several agents (imitating multicast communication), or to all agents in the cooperation domain (imitating broadcast communication). All incoming messages are received from the cooperation domain server as well (the original sender's identity is contained in the message header). The benefit of all messages going through the cooperation domain server is that the server can then provide several services (as described previously) and agents can address roles and services, even if they don't know the identity of the agent or agents performing these roles or services. This type of communication is implemented by the Collaborative Agent Communication Language (CACL) that is developed by the

4

same group. Initially, CACL allows for three simple actions: request, reply and inform. Messages are in an extended KQML format. 2.3 Domain Independent Components As mentioned in Section 2.1, several interesting techniques and mechanisms have been developed and proved during our previous projects (Norrie and Shen, 1999), and they become more interesting and reusable after being developed into domain independent modules. We are now working on defining and developing such components such as collaborative interface agents, high-level collaboration agents, knowledge management (KM) servers (or agents) and ontology server(s) etc. As shown in Figure 1, these components utilize the basic communication and cooperation services provided by CASA. All these components will become domain specific when implemented for a specific application and filled with domain specific information and knowledge. Detailed descriptions of these components are being written in separate reports and papers by other group members, and are also out of scope of this paper. However, we will give a brief introduction of these components here. Collaborative Interface Agents Agents are often defined by their fundamental characteristics such as autonomous, communicative, collaborative, deliberative, reactive, pro-active, adaptive, etc, though agents in a specific multi-agent system do not have all these characteristics. We consider that (domain independent) collaborative interface agents may have the following characteristics: − Communicative: able to interact with other agents through communication; − Semiautonomous: neither always under the control of humans or other agents, nor completely autonomous, i.e., humans should be able to control the amount of agent autonomy; − Collaborative: able to interact and collaborate with humans using structured natural language and other machine agents using speech act language (collaborative interactions allow interface agents to resolve conflicts and inconsistency in information, current tasks, and world models, thus improving their decision-support capabilities); − Reactive: able to react in a timely and appropriately manner to unforeseen events and to changes in its environment; − Pro-active: able to assist humans with the goal-directed behavior by taking the initiative; − Adaptive: able to accommodate changing user needs and task environments; − Self-aware: knows its own capability and the limit of its discretion, and then does not act over the limit. − Mobile: able to migrate through the Internet so that humans can open the interface, e.g., on a web browser, anywhere in the world (such interface is distinct from traditional web pages, it should be an interface agent with one or more of above mentioned characteristics). The development of collaborative interface agents is one of current research projects in our group, and the results has been reported separately (Matsumoto et al., 1999).

5

High-Level Collaboration Agents Although several CASA components such as YPs and LACs also provide basic collaboration (cooperation) services, some complex large collaborative agent systems often need more high-level and domain specific collaboration services which cannot be covered by YPs and LACs. In order to meet such requirements, the high-level collaboration agent is proposed as one of important components for ICAS. An example of this type of collaboration agent can be found the case study described in the following section, i.e., Production Collaboration Agent. Such collaboration agents may be implemented by mediators as proposed and developed in our previous projects (Gaines et al., 1995; Maturana et al., 1998). In most cases, they are static, but they can also be implemented using dynamic mediators. Knowledge Management Agents Knowledge management is one of the most important issues in developing multi-agent systems. Typically, there are two approaches to knowledge management in multi-agent systems: - Knowledge is distributed among agents, i.e., every agent is implemented with a knowledge management module including knowledge acquisition, representation and reasoning mechanisms. This approach is widely used in autonomous agent systems. - Some knowledge management agents are used to centralize knowledge management. Despite some shortcomings of centralization, this approach has some advantages, e.g., it can facilitate knowledge acquisition and reduce communication overheads. It is very suitable for federated multi-agent systems and for the agent-based systems with a large number of agents, e.g., manufacturing production systems with resources being modeled as resource agents (Maturana et al., 1998). Our approach to this issue is to combine above mentioned two approaches, i.e., in addition to distribute some knowledge among agents, several knowledge management agents are developed for specific problems. A knowledge management agent is usually associated with one or more databases and knowledge bases. The key issues to develop knowledge management agents are to develop efficient mechanisms for knowledge acquisition, representation, learning and reasoning. Note that some simple knowledge management agents may be implemented by Yellow Page agents in CASA. Ontology Server(s) An ontology is an explicit specification of a conceptualization. A conceptualization is an abstract, simplified view of the world that we wish to represent for some purpose. Since the set of objects and relationships in an agent are reflected in the representational vocabulary, an ontology can be given as a set of definitions for this shared vocabulary. In the context of multiple agents, a common ontology can serve as a knowledge-level specification of the ontological commitments of a set of participating agents. A common ontology defines the vocabulary with which queries and assertions are exchanged among agents. The development and maintenance of ontologies require special formalisms and languages. Ontolingua (Gruber, 93) was developed to this purpose. Ontolingua allows one to define and to maintain ontologies by providing forms for defining classes, 6

relations, functions, objects, and theories. Ontologies written in Ontolingua can thereby be shared by multiple users and research groups using their own favorite representation systems, and can be ported from system to system. As one of the important components for our proposed infrastructure, ontology server(s) will be developed using Ontolingua. The ontology server structure and related mechanisms are initially domain independent. It becomes domain specific when it filled with domain specific ontologies for a specific application, e.g., manufacturing production planning. Of course, it is not difficult to define the structure and mechanisms for an ontology server, but it is extremely difficult to develop and complete an efficient ontology server for an application domain. However, it has not been developed during our prototype implementation. 2.4 Organization, Coordination and Adaptation The organization, coordination, adaptation and some other domain independent mechanisms as shown in Figure 1 have been separately proposed and developed during our previous research projects. These mechanisms include: - Agent-Based Mediator-Centric Organization - Task Decomposition - Virtual Clustering - Partial Agent Cloning - Adaptation and Learning Agent-Based Mediator-Centric Organization Mediators are intended to encapsulate various manufacturing behaviors to facilitate the coordination of heterogeneous intelligent agents. A generic model for the design of mediators, based on the specification of various meta-level activities, was proposed and implemented during the MetaMorph I project (Maturana and Norrie, 1996). Such a generic model can enable different types of mediators to be created for various activities in the factory. These meta-level activities are high-level abstractions of behaviors that follow common patterns typical of different areas of expertise within the manufacturing system. A product’s life cycle transits through these patterns at different stages of planning, scheduling, and control activity. The generic model for mediators includes the following seven meta-level activities: Enterprise, Product Specification and Design, Virtual Organizations, Planning and Scheduling, Execution, Communication, and Learning. Each instantiated mediator includes some or all of these activities to a varying extent. Prototyping with this generic model allows the creation of diverse types of mediators. For example, a mediator may be specialized for organizational issues (enterprise mediator) or for shop-floor production coordination (execution mediator). Although each of these mediator types will have different manufacturing knowledge, both conform to a similar generic specification. More information about this generic model can be found in (Maturana and Norrie, 1996). Task Decomposition Mechanism The task decomposition mechanism developed during the MetaMorph I & II projects is one of the core mechanisms needed in agent-based manufacturing systems. Through this mechanism, high-level tasks are decomposed initially by mediators acting at the corresponding information level. Each subtask is subsequently distributed to agent clusters to determine the best solution plan. Mediators can learn dynamically from the 7

agent interactions and identify clusters that can be used for distributed resolution of tasks. Subtasks are then further decomposed, and allocated through negotiation among resource agents. See (Maturana and Norrie, 1996) and (Shen et al., 1998a) for more details. Virtual Clustering Mechanism The virtual clustering mechanism was proposed and developed during the MetaMorph I project. To work cooperatively, agents may form clusters that bond dissimilar agents into harmonious decision groups. Multistage negotiation and coordination protocols that can efficiently maintain the stability of these clusters are required. Each agent has its individual representation of the external world, goals, and constraints, so diverse heterogeneous beliefs interact within a cluster through distributed cooperation models. Through the virtual clustering mechanism, agents can be dynamically contracted to participate in a problem-solving group (cluster). In the situation where the agents in the problem-solving group (cluster) are only able to partially complete the task, the agents will seek for help outside their cluster. This results in sub-clusters being formed for subtasks. This process is repeated, with sub-clusters being formed and then sub-sub-clusters etc as needed, within a dynamically inter-linked structure. As the respective tasks and subtasks are solved, the related clusters and links are dissolved. However, mediators will store the most relevant links with associated task information for future re-use. This clustering process, as implemented, provides scalability and aggregation properties to the system. Partial Agent Cloning Mechanism The agent (partial) cloning mechanism was proposed and implemented during the MetaMorph project. Through this mechanism, resource agents can be partially cloned as needed for concurrent information processing. These partial clone agents can then participate in virtual coordination clusters where agents negotiate with each other to find the best solution for a production task. A detailed description of this mechanism can be found in (Maturana and Norrie, 1996). In a simulation, resource agents can be objects with goals and associated motivations, located in the same computer. Such clone agents are, in fact, clone objects. In a real implementation, the cloning mechanism can be used to partially ‘clone’ resource agents from remote resources (e.g., CNC and other manufacturing machines) to the computer where the resource mediators reside, so as to reduce communication time and consequently to reduce scheduling and rescheduling time. Adaptation and Learning Two fundamental learning mechanisms have been implemented in MetaMorph to enhance the system’s performance and responsiveness, with mediators playing an essential role in both mechanisms. First, a mechanism that allows mediators to learn from history is developed at the resource mediator level to capture significant multi-agent interactions and behaviors. Second, a mechanism for propagating the system’s behavior into the future is implemented to help mediators ‘to learn from the future’. A ‘learning from history’ mechanism based on distributed case-based learning approach was developed for capturing agents’ behavioral patterns at the resource mediator level and storing these in its knowledge base. Such knowledge is then reused for later manufacturing requests, through an extended case-based reasoning mechanism.

8

The main purpose of ‘learning from the future’ is to modify promissory schedules at the resource agent level for otherwise unforeseen perturbations and changes in production priorities on the shop floor. The forecasting process simulates the behavior of the virtual model which emulates the shop-floor activities. By partially projecting ‘unpredictable behaviors’ and agent interactions, the agent-based manufacturing system is able to correct its real-world model and provide more accurate plans. A detailed description of these learning and reasoning mechanisms in MetaMorph have been presented separately (Shen et al., 1998b).

3. Benefits of Implementing Internet Enabled VE with ICAS Our previous research experience has shown that agent-based approaches potentially offer many advantages for the development of distributed intelligent manufacturing systems and the implementation of virtual enterprises: modularity; reconfigurability; scaleability; upgradeability; and robustness (including fault recovery) (Norrie and Shen, 1999). Although the Infrastructure for Collaborative Agent Systems (ICAS) is proposed as a general approach for developing Internet enabled collaborative agent systems, most components and mechanisms proposed and developed under this infrastructure are very useful and suitable to implement Internet enabled virtual enterprises. This section discusses the benefits of implementing the Internet Enabled virtual enterprises with the ICAS components and mechanisms. - Cooperation Domain Servers (CDSs): In the Internet enabled supply chain or virtual enterprises, one of the most important services is the customer-supplier or business-business negotiation. CASA’s Cooperation Domain Servers provide a natural way and media for such negotiation. It becomes more effective when it works together with the Virtual Clustering mechanism described in Section 2.4. - Yellow Page Agents (YPs): Because of the dynamics and complexity of the Internet enabled supply chain or virtual enterprises, Yellow Page Agents will play a very important role for providing looking-up and search services. - Local Area Coordinators (LACs): LACs can significantly facilitate the organization and management of the Internet enabled supply chain or virtual enterprises. They are especially useful and important for the Internet enabled supply chain of large international manufacturing enterprises or widely geometrically distributed virtual enterprises. - Collaborative Interface Agents (CIAs): Different types of user interfaces are needed for the Internet enabled supply chain or virtual enterprises: interfaces for customers to input orders; interfaces for marketing and operation managers, production managers, enterprise general managers, etc. Collaborative Interface Agents proposed and developed under ICAS can be employed to meet such requirements. Each type of interface may be composed of only several modules of the general CIA model with optional components. - High-Level Collaboration Agents (HLCAs): This type of collaboration agents can be used to provide collaboration services which cannot be covered by the basic CASA collaboration (cooperation) services, e.g., regional marketing coordinators, regional operation coordinators, local or regional production coordination, etc. - Knowledge Management Agents (KMAs): Managing a complex supply chain or a virtual enterprise needs a lot of knowledge ranging from customer requirements, 9

-

-

-

-

marketing, product modeling, and project management etc. Several knowledge management agents may be developed to facilitate the management of the agentbased supply chain or virtual enterprises. Ontology Server(s): For the Internet enabled supply chain or a virtual enterprise as we described at the beginning of this paper, the ontology problem becomes more crucial because it is related to highly heterogeneous environments, e.g., multiple communication languages (e.g., CACL, KQML, FIPA’s CAL, etc) and multiple knowledge/data/information interchange formats (e.g., KIF, EDI, etc) may be used. Thus, one or more ontology server(s) should be employed to provide a standard for the supply chain or virtual enterprise on the terms used in communication languages and knowledge related these terms’ definitions, attributes, relationships and constraints. Virtual Clustering: When a customer submits an order through a collaborative interface agent as described above, one regional marketing and operation center of the manufacturing enterprise needs to negotiate with different factories and partners for raw material (or parts) supply, parts fabrication, parts transportation, and product assembly etc. A number of collaborative agents including collaborative interface agents for customers and managers, automatic software agents for cost calculation, production planning, conflict detection and resolution and so on are involved in this negotiation process. The Virtual Clustering mechanism provides an efficient way to form a virtual collaboration group to facilitate such negotiation. At the sub-system level, this mechanism has been proved to be very useful during production planning and scheduling. Agent Cloning: Similar to the Virtual Clustering mechanism described above, agent cloning mechanism will be very useful for some collaborative agents to be involved in several collaboration groups (clusters) simultaneously, which will also reduce network communication load significantly. While at the sub-system level, it has also been proved to be very efficient during agent-based manufacturing planning and scheduling. Adaptation and Learning: A complex virtual enterprise or supply chain needs to dynamically adapt to its changing environment, including changing marketing conditions, virtual enterprise configuration, intra-/inter-enterprise interactions, financial policies etc. The implementation of learning mechanisms, e.g., at the high-level agents such as LACs, CIAs, HLCAs and KMAs, can enhance the performance of the supply chain or virtual enterprise networks.

4. Case Studies 4.1 Multi-Factory Production Planning Inter-organizational production planning is one of key issues in virtual enterprises. This subsection briefly describes a case study of multi-factory production planning as one of applications of the proposed infrastructure. Because of the space limitation, only a very brief description of this case study is provided in this paper. A detailed description can be found in (Shen et al., 1999).

10

Conceptual Description An internationally distributed manufacturing enterprise (or a virtual enterprise) in this case study is composed of a headquarter (with a General Manager - CEO), a Production Planning Center (with a Production Manager), and 2 Factories (each with a Factory Manager) (Figure 2). This case study can easily be extended to a large manufacturing enterprise composed of several production planning centers and more world-widely distributed factories. The production order used to test the prototype is as follows: - 100 products B with Due date D; - One product B is composed of 1 part X, 2 parts Y & 3 parts Z; - One part Z has 3 manufacturing features (Fa, Fb, Fc), and needs 3 operations (Oa, Ob, Oc). Scenario at a Glance - CEO receives a Production Order A from some customer for 100 products B with delivery due date D; - CEO sends the Production Order A to the Production Manager; (Of course, it is not possible for the CEO to do this. We assume someone at the headquarter does this instead of the CEO.) - Production Manager finds some competent agent for task composition, then the Production Order A is decomposed into parts production requests; - Production Manager sends parts production requests to competent Factories for parts production; - Factory Manager receives a part production request, finds some competent agent for further (sub-)task decomposition for decomposing a part production request into manufacturing features (with corresponding machining operations); - Factory Manager negotiates with resource agents for machining operations, awards machining operation tasks to suitable resource agents, and then sends related information back to Production Manager. During this process, the Virtual Clustering mechanism is used for creating a virtual coordination group; the partial agent cloning mechanism is used for allowing resource agents to be involved in several coordination groups simultaneously; and an extended contract net protocol is used for task allocation among resource agents. If the related factories are not able to produce the requested parts before the Due Date, they need to contact the customer for negotiating a new Due Date, or subcontract some sub-tasks to other factories outside of the manufacturing enterprise (e.g., through the virtual enterprise network).

11

Headquarter

Production Planning Center

Factory 1

Production Manager

CEO

Factory 2

Factory Manager 1

Factory Manager 2

6

1

5 4

16

IAc

IAP IAP

Virtual Cluster 1

15

IAF1

IA F2 18

14 2

9

19

3

22

8

DM1

7

23

20 26 25

12

C2

C1

C4

13

24

C3

21 17

DM2

11

2

8

7

9

3

??? KA1

RA3

10

KA2

C5

TM1

KA3

DB1

RA1

KA4 RA2

Virtual Cluster 2 DB2

Figure 2. A Scenario for Production Planning

4.2 Internet Enabled Supply Chain Management At the University of Calgary, a real case study of implementing the Internet enabled supply chain using collaborative agents is underway in collaboration with industrial partners. Due to space limitations, this section only gives an extraction of this case study for showing the functions of above mentioned components in the agent-based supply chain. A more detailed description of the real case study is being reported separately. Conceptual Description In the context of this case study, Supply Chain Management (SCM) is a corporate-wide initiative that includes teams from Corporate, Business Units, and Marketing Regions. It is the implementation of a common set of processes, applications, and performance measurements for the corporation. Therefore, it is the management of all interactions involved in the initialization of an order to the delivery of that order’s products to the customer. The real case study is very complex, here we just take an extraction of a case which involves a customer, the corporate’s Marketing and Operations Management center (MktOM), 2 factories, 2 parts suppliers and 1 materials supplier (Figure 3). The customer places an order for buying 100 handsets (mobile phones) of type A and 50 handsets of type B. Factory 1 can produce handsets A, and needs parts from Parts Suppliers 1 & 2, and some other materials from Materials Supplier 1. Factory 2 can produce handsets B, and needs parts from Parts Supplier 2 and materials from Materials Supplier 1. Scenario at a Glance - The customer wants to order some handsets, and uses “CIA1 for Customers” to search a suitable marketing service; - CIA1 finds out MktOM through YP1 and LAC1; 12

-

-

The customer (through CIA1) negotiates with MktOM for product types, prices and delivery date etc through the Cooperation Domain Server 1 (CDS1), and finally places an order of 100 handsets A and 50 handsets B through the CIA1; MktOM receives the order and sends a confirmation to CIA1; MktOM requests KMA to complete task decomposition and find suitable factories for production; MktOM sends decomposed tasks to HCA which then assigns production tasks to related factories (Factory 1 and Factory 2); Factory 1 needs to contact Parts Suppliers 1 & 2 and Materials Supplier 1 (through YP2, LAC1, LAC2, LAC3 & LAC4); Factory 2 needs to contact Parts Supplier 2 and Materials Supplier 1 (through YP2, LAC1, LAC3 & LAC4); The negotiation, cooperation among factories and suppliers is facilitated by CDS2; Marketing managers and production managers can use related CIAs for monitoring and making decisions; All Cooperation Domain Servers are connected with the Ontology Server for translating messages from different agents into a common format so as to facilitate the communication, negotiation and cooperation. Cooperation Domain Server 1

CIA1 for Customer s

YP1

CIA

KMA

Ontology Server

Corporate MktOM

LAC1 HCA CIA

CIA

Factory 1

Factory 2

YP2

LAC2

CIA

Parts Supplier 1

CIA

LAC4

LAC3

Materials Supplier 1

Cooperation Domain Server 2

Figure 3. A Scenario for a Simplified Supply Chain

13

CIA

Parts Supplier 2

5. Conclusions and Perspectives Our previous research experience and the preliminary results of our ongoing new research projects related to collaborative agents have shown that agent-based approaches potentially offer many advantages for the development of distributed intelligent manufacturing systems and the implementation of virtual enterprises. These advantages include open and dynamic system architecture, modularity, reconfigurability, scaleability, upgradeability, and robustness (including fault recovery). The Collaborative Agent System Architecture (CASA) and the Infrastructure for Collaborative Agent Systems (ICAS) are initially proposed as a general approach for Internet based collaborative agent systems. The theoretical analysis and the preliminary results of two case studies have shown that the proposed architecture and infrastructure with domain independent components and mechanisms are quite suitable for implementing Internet enabled virtual enterprises. The results of case studies presented in this paper are preliminary. A number of detailed case studies are still underway in collaboration with industrial partners. More detailed research work is also underway on some key challenges in implementing Internet enabled virtual enterprises such as Collaborative Interface Agents, Ontology Services, Conflicts Detection and Resolution, Schema-based Communication and Conversation Modeling.

Acknowledgements Thanks to all other Collaborative Agents Group members for their contribution to the CASA development, and detailed discussions on the case study. These members include Bob Brennan, Roberto A. Flores, Rob Kremer, Fuhua Lin, Sudong Shu, Matsumoto Tsutomu, Mihaela Ulieru, Niek Wijngaards, Xiaokun Zhang, Bin Zhou.

References Balasubramanian, S., F. Maturana and D.H. Norrie (1996). Multi-agent planning and coordination for distributed concurrent engineering. International Journal of Cooperative Information Systems, 5(2-3), 153-179. Brennan, R., S. Balasubramanian and D. H. Norrie (1997). Dynamic Control Architecture for Advanced Manufacturing Systems. In Proceedings of International Conference on Intelligent Systems for Advanced Manufacturing, Pittsburgh, PA, pp. 213-223. Brugali, D., Menga, G. and Galarraga, S. (1998). Inter-Company Supply Chains Integration via Mobile Agents. In Jacucci, G. (ed.), Globalization of Manufacturing in the Digital Communications Era of the 21st Century: Innovation, Agility and the Virtual Enterprise, Kluwer Academic Publisher, pp. 43-54. Camarinha-Matos, L.M., H. Afsarmanesh, C. Garita and C. Lima (1997). Towards An Architecture for Virtual Enterprises. In Proceedings of the 2nd World Congress on Intelligent Manufacturing Processes & Systems, Budapest. Finin, T. and Y. Labrou (1997). KQML as an agent communication language. In Software Agents, J.M. Bradshaw, (ed.), MIT Press, Cambridge, pp. 291-316. 14

Fox, M.S., Chionglo, J.F. and Barbuceanu, M. (1993) The Integrated Supply Chain Management System. Internal Report, Dept. of Industrial Engineering, Univ. of Toronto. Gaines, B.R., D.H. Norrie and A.Z. Lapsley (1995). Mediator: an Intelligent Information System Supporting the Virtual Manufacturing Enterprise. In Proc. of 1995 IEEE International Conference on Systems, Man and Cybernetics, New York, IEEE, pp. 964-969. Gruber, T. (1993). A Translation Approach to Portable Ontology Specification. Knowledge Acquisition, 5(2), 199-220. Kwok A. and D.H. Norrie (1993). Intelligent Agent Systems for Manufacturing Applications. Journal of Intelligent Manufacturing, 4, 285-293. Matsumoto, T. et al. 1999. Collaborative Interface Agents for Distributed Intelligent Manufacturing Systems. Submitted to ISAS’99. Maturana, F. and D.H. Norrie (1996). Multi-Agent Mediator Architecture for Distributed manufacturing. Journal of Intelligent Manufacturing, 7, 257-270. Maturana F., W. Shen and D.H. Norrie (1998). MetaMorph: An Adaptive Agent-Based Architecture for Intelligent Manufacturing. International Journal of Production Research, (in press). NIIIP (1999). Vision of The National Industrial Information Infrastructure Protocols (NIIIP). http://www.niiip.org/vision.html Norrie, D.H. and W. Shen (1999). Applications of Agent technology for Agent-Based Intelligent Manufacturing Systems. Submitted to IMS’99. Parunak, V. and R. VanderBok (1998). Modeling the Extended Supply Network. Presented at ISA-Tech’98, Houston, TX, available through the Internet at: http://www.erim.org/~van/isa98.pdf Shen, W. and D.H. Norrie (1998). An Agent-Based Approach for Dynamic Manufacturing Scheduling. In Working Notes of the Agent-Based Manufacturing Workshop, Minneapolis, MN, pp. 117-128. Shen, W., D. Xue and D.H. Norrie (1998a). An Agent-Based Manufacturing Enterprise Infrastructure for Distributed Integrated Intelligent Manufacturing Systems. In Proc. of PAAM'98, London, UK, pp. 533-548. Shen, W., F. Maturana and D. H. Norrie (1998b). Learning in Agent-Based Manufacturing Systems. In Proceedings of AI & Manufacturing Research Planning Workshop, Albuquerque, NM, The AAAI Press, pp. 177-183 Shen, W. and D.H. Norrie (1999). Agent-Based Systems for Intelligent Manufacturing: A State-of-the-Art Survey. Knowledge and Information Systems, an International Journal, to appear. Shen, W., D.H. Norrie and R. Kremer (1999). Developing Intelligent Manufacturing Systems Using Collaborative Agents. Submitted to IMS’99. Swaminathan, J.M., Smith, S.F., and Sadeh, N.M. (1996). A Multi-Agent Framework for Supply Chain Dynamics. In Proc. of NSF Research Planning Workshop on AI & Manufacturing, Albuquerque, NM. Wang, L., S. Balasubramanian and D.H. Norrie (1998). Agent-based Intelligent Control System Design for Real-time Distributed Manufacturing Environments. In Working Notes of the Agent-Based Manufacturing Workshop, Minneapolis, MN, pp. 152159.

15