Working Paper, Enterprise Action Group, Inc., Cincinnati, Ohio, 8/12/99
INTERNET-BASED MANUFACTURING: A Perspective from the AARIA Project A . D .
B A K E R
The Enterprise Action Group, Inc. H . V . D . P A R U N A K ERIM/CEC K . E R O L Intelligent Automation, Inc.
Major market trends and demographic realities are placing critical pressures on the existing manufacturing infrastructure. The Internet and related technologies offer significant new capabilities that will allow manufacturers to respond to these pressures. These capabilities are poised to create a new era of Internetbased manufacturing, where manufacturing enterprises will not just communicate over the Internet, but exist over the Internet. Manufacturing as we know it will change forever. In turn, because manufacturing and the efficient delivery of goods are such significant economic forces, these manufacturing changes can also be expected to change the Internet. The AARIA project (Autonomous Agents at Rock Island Arsenal) is a demonstration of how the Internet and related technologies can alter the future of manufacturing to respond to these pressures, and how the future of manufacturing can alter the Internet. The existing manufacturing infrastructure is experiencing significant pressures in the following forms. Distribution: Manufacturing is inherently distributed, yet existing manufacturing information systems are artificially centralized on larger and larger server computers. Current trends are for manufacturing to become even more decentralized. The pressure is on manufacturers to manage this distributed manufacturing complex better and to provide better customer service and more cost effective utilization of the involved resources. As demonstrated in the AARIA project, the Internet provides a natural platform for managing the distributed manufacturing complex. Agility: Business opportunities are rising and falling at a faster and faster rate. The manufacturing complex has to respond better to these changes and will continue to have significant pressure to reconfigure itself quickly when presented with unexpected changes[6]. As shown in the AARIA project, software agents implemented over local and wide area networks offer such essential agility features. Customization: Consumers are demanding higher and higher levels of customized products. The longterm trend is towards mass customization, where every consumer is given the exact product they want [4]. This puts significant pressure on the existing mass production facilities to become substantially more flexible. As demonstrated in the AARIA project, software agents can address this problem through the agile configuration of productive resources over the Internet for each product produced. VIRTUAL MANUFACTURING ENTERPRISES These and other pressures are leading increasingly toward virtual manufacturing enterprises [6], made up of market entities that band together for the sake of a specific market opportunity without surrendering their legal identities. Internet-based virtual manufacturing is about more than allowing manufacturing enterprises to talk to each other over the Internet. When manufacturing systems are connected to each other over the Internet to form a virtual enterprise, they need to form a cohesive unit, which is greater than its parts. They need to be more than connected, but united. By analogy, two Boeing 737s connected together do not make a Boeing 777. We want a manufacturing system that is more like unifying two bird flocks to achieve a single unified flock [11]. This unified virtual corporation has to perform as well as any brick-and-mortar corporation, even though it is recently formed, physically distributed, and connected through Internet technology. Most electronic commerce research is concerned with the non-trivial task of connecting corporations to each other. Common research issues include discovering trading partners, negotiating terms and conditions, establishing secure communications, agreeing on common product and process representations, and similar issues. These issues are widely addressed by the research community, and AARIA does not duplicate this effort. In our work we assume that the trading partners have already settled the formation issues as prerequisites to becoming trading partners. AARIA is concerned with 1) how a corporation can use Internet
1
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
technologies to effectively utilize the resources it has while addressing the pressing manufacturing issues of distribution, agility and customization, and 2) how established trading partners can best utilize the resources they have agreed to share so they can then form highly agile virtual manufacturing enterprises which address these same pressing manufacturing issues. In non-manufacturing virtual environments (for example, digital libraries or financial services), the distinction between establishing formal relationships and operating the virtual enterprise is sometimes blurred, since both classes of transactions are fundamentally manipulations of information and do not concern themselves with matter. Establishing relationships to form a virtual manufacturing enterprise is similar to establishing relationships to form any other virtual enterprise. However, the operation of the virtual manufacturing enterprise requires the manipulation of matter as well as information, and raises issues that do not appear in many other domains [10]. There are two fundamental differences: speed of movement and conservation laws. Speed: The movement of information between the members of a virtual enterprise is limited only by network technology. In most cases it already exceeds human time scales, and is increasing rapidly. Matter moves slowly enough to generate delays that inconvenience humans, and the technologies that limit its velocity are not improving nearly as quickly. Thus operation of an Internet-based manufacturing system must manage temporal delays that are long compared with the associated information movement, and whose length is often of more concern to human users of the system. Conservation: Information can be duplicated as often and as accurately as desired, at an ever-decreasing cost. Matter can be neither created nor destroyed, and the processes and equipment that can change its form are complex, expensive to build and operate, slow, and prone to malfunction. Error correction is a good example of these fundamental differences. If a message is garbled during transmission, the defect is routinely discovered and corrected by retransmission. Usually neither the sender nor the recipient is aware of the slight delay or increased cost involved. However, if a physical part is damaged in production or shipping, the delay and cost of repair or replacement impose considerable burdens on both the supplier and the customer for the part. When a virtual manufacturing enterprise is formed, this is essentially an information processing exercise, differing little from forming (or running) any non-manufacturing virtual enterprise. Yet, running a virtual manufacturing enterprise must consider these crucial differences between information and mechanical systems, a hybrid domain that we call “info-mechanical.” AARIA focuses its attention on the technologies and techniques needed for these info-mechanical operational issues to be effectively addressed in a virtual corporation. AGENT TECHNOLOGY FOR VIRTUAL MANUFACTURING ENTERPRISES Supporting the info-mechanical requirements of an Internet-based manufacturing operation requires three technical components. First, the basic agent architecture must decompose the system in a way that respects both information modularity and the physical realities of manufacturing. Second, a simulator of the physical world can provide a powerful and simple way for agents to reason about the consequences of their actions in the physical world before actually executing them. Third, an implementation infrastructure is needed to support these agents and the physical realities of manufacturing. Architecture
Traditional software engineering emphasizes functional decomposition as a guiding rule in developing an architecture for a new system. People usually construct information artifacts to correspond to specific functions, so functional decomposition is often a successful strategy for designing agent architectures in purely informational applications. Applying such an approach to an info-mechanical system often leads to agents that are a poor fit to the physical entities in the system. Following the example of naturally occurring agent systems [11], we have found that much more robust and reusable agents result when we build agents around things rather than functions wherever possible. This stance does not exclude functional agents, but requires that they be subordinate to and consistent with the physical entities in the system. Our design methodology is outlined in [12]. The critical step of partitioning the domain into agents uses a linguistic method based on case grammar. Beginning with a narrative description of the problem domain, we focus on the linguistic case slots that relate the nouns to the verbs. Each type of case slot is a candidate for an agent class or species, and each noun is a candidate for an instance of that species. We sketch out the interactions among these agents by role-
2
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
playing exercises, in some cases using Dooley graph analysis of the resulting conversations [9] to detect changing agent roles and define necessary protocols. Subsequent implementation and refinement of the agents takes place in a simulation environment that continually tests them against the constraints of the physical world. Figure 1 is the skeleton of a collaboration diagram showing the major agent species in AARIA and with whom each interacts. The major agent species are resource brokers, part brokers, and unit process brokers. Resource broker agents manage the capacity constrained resources of the system (e.g. people, machines, facilities). Part broker agents manage material handling and inventory. Unit process broker agents utilize their knowledge of how to combine resources and parts to make other parts. These three types of agents negotiate among themselves and with the customer along the axes of possible production including price, quality, delivery time, product features, and speed of answers (discussed in more detail in [13]). The AARIA architecture is designed to support a dialog that iteratively reduces the various axes of possible production until the manufacturing complex and the customer come to agreement, thus best matching productive capabilities with the customer’s needs. Manager Material Handling Resources
Material Handling Resources
Resource Broker
Resource Broker
Engagements for Resources
Part Broker Part Broker Part Broker
M a t e ri a l s
Unit Process Broker Unit Process Broker
P r o d u c t s
Part Broker Part Broker Part Broker
M a t e ri a l s
Unit Process Broker Unit Process Broker
Figure 1. The AARIA architecture assigns an agent to each individual manufacturing.
In our current prototype, this dialog is only along the axes of price and delivery. We use a simple protocol whereby a customer requests a specific product, the manufacturing system responds with a bid of cost versus delivery time and the customer chooses an acceptable delivery time and cost.1 Each agent in the internal supply chain that emerges then makes and maintains a commitment to perform his part of the job. Agents modify their plans to meet their commitments in light of any problems such as machine failures, scrap, power outages, sickness, or emergency jobs. They also perform background computations attempting to reduce the costs of their commitments by moving jobs around or swapping resources. Later stages of production become customers to earlier stages of production. This structure provides a self_configuring manufacturing system where any capability can become another capability's customer or supplier. The final consumer is just viewed as another customer in this supply chain. Customers and suppliers can be from two different companies, so long as they have an established business relationship. Figure 2 shows how work propagates through this agent system where the customer buys materials from a part broker who in turn buys its products from any of a number of unit processes. Each unit process makes engagements for required resources and buys any needed materials from other part brokers. These part brokers buy their products from other unit process brokers and the supply chain continues. Specifically, when the customer requests a product (e.g. material 1 in Figure 2) from the manufacturing system, requests for bids propagate down the supply chain from part broker to unit process broker to resources and other part brokers. Resource brokers and part brokers that sell raw material stocks issue bids (which are functions of cost versus time) and these bids then propagate up the supply chain, getting folded together with production costs at each stage, until a final bid is presented to the customer. When the customer chooses a cost and delivery time, purchase
1
The priority of delivery time in this dialog is a direct consequence of the info-mechanical nature of manufacturing. In purely informational systems delivery is virtually immediate. In info-mechanical systems, delivery can take days, weeks, months or years; and expedited delivery can result in significant cost increases.
3
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
orders then propagate back down the supply chain establishing commitments that are then maintained by each individual agent. Customer Material 1
Part 1 Broker Product 1 Multiplex
UPB
UPB
UPB
Engagement A Material 2
Material 3
Part 2 Broker
Part 3 Broker
Multiplex
Resource A1 Broker
Resource A2 Broker
Resource A3 Broker
Figure 2. AARIA's internal supply chain.
The different shapes in Figures 1 and 2 reflect the importance of accounting for the slowness of material movement and change. Quadrilaterals represent part, unit process, and resource brokers. These agents are “persistent agents.” Persistent agents do not leave or enter the system without human involvement, and change little over the time period required for manufacturing a single part. Ellipses indicate transient agents, representing entities whose rate of change is comparable to part processing times. For example, material 1 is a specific piece of material that is produced by the system and sold by the part 1 broker. Transient agents go through a life cycle with the successive states of birth, inquiry, commitment, availability, activity, death and archival. These agents are created by relationships between persistent agents and their life cycle reflects the development of those relationships. In the early stages of their life cycle they prepare for a piece of material or an active manufacturing process that does not yet exist. In later stages they represent the physical part while it is resident in the system. In the final stage they maintain an archival trace of the part. By explicitly agenting these relationships between persistent agents, AARIA enables independent, autonomous action on the part of all the commitments in the supply chain all the way to the final consumer. This pervasive application of the agent model improves the reliability of these commitments by explicitly managing each one. This architecture is distributed, the agents tie together resources, parts and process knowledge in a single location, in multiple locations, or in multiple corporations. This architecture is agile, as the agents agily configure themselves to each new order placed on the system. This architecture supports mass customization as any capability needed for a custom product can be dynamically added into the supply chain. Simulation Support
It is important that the virtual enterprise perform as well as, or better than, its physical counterpart. The AARIA architecture allows for advanced simulation tools to support this requirement. Simulation is an important operational aid to tune the performance of factories and to make critical configuration modification decisions. As factories become more agile, the required accuracy of projections and flexibility from simulation tools increase. The current state_of_the_art in manufacturing utilizes a functional decomposition approach, and views factory scheduling, manufacturing execution control, and simulation as disparate information systems. As a result, scheduling systems work off-line, without considering the dynamics of the factory floor. Existing simulation software packages have limited scripting and external integration capabilities, which make implementing complex control mechanisms within these simulation packages difficult. They often approximate the behavior of sophisticated factory control algorithms via simple dispatch rules and scripts, resulting in limited accuracy. In contrast, AARIA architecture has a vertical decomposition based around physical and logical entities in the system, reminiscent of the subsumption architecture [3].
4
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
Simulation and execution control are integral parts of the AARIA system. Each agent not only interacts with other agents to participate in scheduling decisions, but also interacts with its counterpart physical entity on the factory floor to initiate and monitor the execution of its tasks. Our architecture tightly couples scheduling and execution control capabilities, resulting in robust behavior, responsive to the unexpected events on the factory floor. It also vastly simplifies building a software emulation of the factory floor: for each physical entity, we build a software agent that emulates its behavior, and its interaction with factory control. Keeping the logical agent closely associated with the physical reality is a good way of ensuring that the agent does not violate the physical constraints on the underlying entity. This approach has several advantages over conventional simulation. It is inherently integrated to the actual scheduling and execution control system, rather than to a simplified control model. The AARIA simulator runs concurrently with the scheduling and execution control system, where the duration of each process is modeled proportionally. This allows us to accurately model passage of time, and time-sensitive decision making. In contrast, conventional simulations ignore the effects of computation time on the shop floor dynamics, and assume that the algorithms used by the control run in zero duration. Finally, the agent-based approach to simulation allows us to naturally decompose the behavior of the shop floor to interactions among simpler entities, reducing the cost of modeling and software development efforts. Agent Infrastructure
Implementing multi-agent software systems requires infrastructure services that are not readily available in standard computer platforms. Some examples of those services are dynamic agent creation, migration, termination, and inter-agent communication mechanisms, as well as mechanism for defining the behaviors an agent may engage in and types of interactions an agent may participate. Without such services, implementing multi-agent software becomes a prohibitive task in terms of the cost and duration of software development. Without these mechanisms it is not possible to realize the benefits of multi-agent systems, such as scalability, reliability, and high performance. Today, there are several agent infrastructures available, with varying maturity and capabilities and target application areas. The AARIA project was implemented on the Cybele agent infrastructure, which is particularly suitable for large-scale multi-agent systems. Cybele is designed with emphasis on high-performance, scalability, flexibility and ease of use. It provides services for creating, migrating, and terminating agents at run time, supports multi-threaded, shared-threaded and non-threaded agents, both proactive and reactive behavior. It also provides an activity model, where an agent can work on multiple tasks concurrently. A typical agent needs to deal with multiple activities at the same time, such as incoming inquiries for bids, monitoring current jobs, as well as background optimization. The activity model provided by Cybele allows an agent to concurrently handle multiple conversations in a simple, flexible way. Cybele also includes load-balancing mechanisms that can migrate agents at run-time for improved computational resource utilization, converting a web of computers to a very powerful virtual parallel computer capable of tackling hard problems. Cybele utilizes subject-based addressing to provide location-independent communication among agents, with efficient, flexible, dynamic multicasting. Current communication services provided by Cybele are based on TCP/IP, and UDP protocols. However, rather than committing to a particular communication service, Cybele provides a flexible communication framework that can be configured at deployment time to utilize any service such as CORBA or DCOM. Thus the system administrator can pick the right service based on the network structure, bandwidth requirements of the application, and other business concerns. This approach isolates application code from peculiarities of underlying communication mechanisms, resulting in more portable agent systems. Cybele’s communication services have been used to support agents resident in local area networks and those distributed over the Internet. Cybele is implemented using the object-oriented paradigm with a Java API. It runs on virtually all operating system platforms that support the Java virtual machine, including Windows NT, Windows 95, and Unix. OPERATING AND CONTROLLING VIRTUAL CYBERFACTORIES A central problem with forming a virtual manufacturing enterprise is whether the virtual enterprise will utilize its resources as well as a physical corporation can. This is a scheduling issue [2]. Unless these scheduling issues are addressed, cyberfactories will never be competitive with physical factories. On the other hand, because the AARIA architecture is distributed over a possibly large “web of computers” the opportunity exists to not only be competitive with existing factories controlled by centralized computers, but to
5
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
outperform these by successfully harnessing the ubiquitous computing power that has been made available. Consider the requirements for a scheduling system to operate over the Internet supporting the agile, distributed scheduling of custom products. • it needs to be modular and distributed, so as each agent is added to the system, the scheduling algorithms implemented by that agent join the algorithms in the other agents so the whole system produces a meaningful schedule in a reasonable amount of time • it has to provide results which are comparable to or better than the results achieved by traditional centralized scheduling systems • it should be interactive so as each new customer interacts with the system over the Internet, the scheduler is making reliable commitments to the customer about when the customer’s product can be delivered • it needs to be data driven so as a custom, never-before scheduled product is requested of the system, the scheduling system can parse the product description, select an appropriate routing, and place the order into the schedule • it needs to allow each individual agent to participate in multiple virtual corporations at a single time A set of scheduling algorithms meeting these requirements was developed to support the AARIA project. A description of these algorithms is provided in “Scheduling in AARIA”. The basic approach and features of these algorithms are described below. To assure comparable performance to traditional centralized scheduling systems, the AARIA scheduling technology starts with standard factory scheduling technology. The most common scheduling algorithms used in industry are variations of forward/backwards scheduling [15]. These algorithms form the backbone of all commercial MRP (manufacturing resource planning / materials requirements planning) systems and their more recent derivative ERP (enterprise resource planning) systems [8]. They are also commonly used in SCM (supply chain management) products. Such systems iteratively schedule orders forward from the time they are released into the factory or backwards from their assigned due–dates. Current state–of–the–art forward/backwards scheduling systems can schedule by job, by task within the job, or by machine. Many have net–change scheduling methods (also called dynamic or network rescheduling) that reschedule only those parts of the schedule affected by changes. Some can schedule both people and machines to perform a single task. Many of these systems can schedule by the most highly constrained resource first to achieve Goldratt's concept of synchronous manufacturing [7]. It is relatively straightforward to modularize and distribute forward/backward scheduling. For example, if we schedule forward one job at a time then the first task in the job is first scheduled with the agents that represent the resources needed to perform that task. These resource agents then pass the completion time to the resources needed to perform the next task and those agents schedule this task. Tasks in the job continue to be scheduled forward in time throughout the agent system in such a manner. Backwards scheduling in an agent architecture is equally simple [2]. Now that our algorithms have been distributed in the multi-agent framework, we can now utilize the available ubiquitous computer power to enhance what is actually being done in these algorithms. So, AARIA uses a more advanced form of scheduling than just traditional forward/backward scheduling. But, by basing these algorithms in forward/backward scheduling we meet our requirement of being able to perform as well as existing forward/backward scheduling systems. The specific enhancement made in AARIA is to minimize costs while scheduling over the continuum of forward and backwards schedules. A possible schedule is developed for every possible delivery time, starting from the earliest possible time given in the forward schedule, and going out to any time into the future. After a delivery time is chosen and a tentative schedule is accepted the available computational resources are then used to background optimize this schedule and to recover from any faults that occur in the manufacturing system. AARIA’s scheduling algorithms provide substantial enhancements over the standard forward/backward scheduling algorithms on which they are based. As described in “Scheduling in AARIA,” these algorithms scale bilinearly in proportion to the number of resources in the system and the number of tasks being scheduled. Also, this theoretical scalability can be enhanced by only allowing resources to participate in scheduling decisions when there is a reasonable expectation that they would be used. (For example, instead of letting all mills, lathes, and drills participate in a mill scheduling decision, only letting mills that are likely to win the order participate.) Parameterized product descriptors described by Ring [14] are used to describe products, and the scheduling system dynamically parses this descriptor to select an appropriate routing. This routing is independent of whether
6
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
the resources needed are local or distributed over the Internet. The algorithms allow each agent to participate in multiple virtual corporations, so long as each such corporation uses a similar scheduling technique. “Scheduling in AARIA” also describes how these enhanced forward/backward scheduling algorithms can be proven to optimally allocate unscheduled resources to each new order as it arrives to the system. In one benchmark test using these scheduling techniques, inventory costs were cut by 47%, lead-times were cut 59%, and schedule reducible costs (e.g. overtime, inventory holding charges, unnecessary use of expensive equipment) were cut by 93%. These scheduling algorithms meet the requirements set forth at the beginning of this section as those needed to support the agile, distributed scheduling of custom products over the Internet. Thought they are presented as facilitating the Internet-based manufacturing vision described in this paper, they could also be used in other cases where the Internet is being used to coordinate the use of distributed, capacity constraining resources. REAL WORLD INTERFACES The agents in AARIA connect to each other over local area networks, proprietary wide area networks, or the Internet. This network of agents then has to be connected to the real world. In Figure 1, this is where arrows come from on the left and go to on the right_ the real world. In one demonstration, AARIA is used to facilitate the ordering of custom vitamins on the Internet. In the order entry system (see Figure 3), the customer logs onto the Custom Vitamin website, describes the custom product he wants and then presses the “Order Product” button.
Figure 3. Ordering Custom Vitamins from a Network of AARIA Agents.
7
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
A parameterized product descriptor is placed into the network of agents (the right side of Figure 1). These agents can all be local or they can be distributed over the Internet. These agents parse the descriptor, and use other parameterized product descriptors to put requests for bids for necessary components back into this “web” of agents. Requests for bids propagate back to the left side of Figure 1, where purchasing agents quote costs for raw materials which are available from external suppliers. (These purchase orders can be placed over the Internet or through more traditional means.) Bids then propagate back through the system, from left to right, until a quote is given to the customer for a custom vitamin product meeting his needs. Figure 4 shows one such quote. Notice the stair-step nature of the quote. This shows the price the custom vitamins will cost depending on when the customer wants them delivered. Earlier delivery times cost more and use more costly production processes, later delivery times eventually bottom out at standard costs which use standard low-cost production processes. The customer orders his vitamins for a delivery time that meets his needs. The agent network then sets up a schedule for when they need to deliver products to each other to meet this customer’s needs. We know that this schedule optimally uses the unscheduled resources that are available, whether these resources are in one factory or at multiple sites. The agents then manage this schedule to make sure that they deliver on the commitments they have made to the final customer.
Figure 4. Quoting Delivery of Custom Vitamins.
This example demonstrates how the customer and his stated needs drive the operation of the AARIA system. It has in effect given the customer his own personal virtual cyberfactory. The system has not only addressed the issues of distribution, agility, and custom products; it has provided a powerful new paradigm for giving customers significant power to specify their needs, and see that their needs are met. Internet-based manufacturing provides the customer with a significantly better experience then can be provided by existing manufacturing systems. CONCLUSION The AARIA Project has demonstrated how the Internet and the related technologies of multi-agent systems, distributed scheduling, and networked computing can relieve the significant pressures manufacturers now experience. Distribution: The Internet is just as distributed as is the existing manufacturing complex. The Internet can now be used to effectively manage that complex through distributed scheduling techniques such as those
8
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
introduced by AARIA. Agents can be placed on every productive resource, and the Internet can then tie these resources together to form an effectively run virtual manufacturing enterprise for any specific task. Agility: Software agent technology allows this distributed Internet-based virtual manufacturing enterprise to be self-configuring according to each new demand that is placed upon it. Resources can be automatically redeployed from places of decreasing demand to places of increasing demand. Unique capabilities available from one manufacturer can be efficiently sold over the Internet to others needing those capabilities. Customization: Software agents allow the manufacturing complex to configure to each new order placed on it, no matter how unique that order may be. Orders with unique processing requirements can be accommodated by networking to resources in other manufacturing sites that offer those capabilities. Implications on the Future of Manufacturing
Given that these technologies can solve these significant manufacturing problems, what do we envision as the future of manufacturing? The fundamental insight here is that these pressures can be expected to force the manufacturing complex in directions outlined by this paper. We can expect the manufacturing complex to move towards becoming a network of flexibly interconnected manufacturing capabilities. The technology is available in the Internet and related technologies for this to become reality. The implications are significant. • Manufacturing could return to being a cottage industry. An individual can plug his capabilities into the manufacturing network and participate just as well as an owner of multiple manufacturing capabilities. This is to say that the Internet and related technologies can substantially reduce the economies of scale and scope which have in the past consolidated manufacturing into large mega-corporations. • The manufacturing complex will be more dynamic and better utilized, resulting in better service, and lower costs. • Because there will now be a dynamic spot market for any type of manufacturing capability, outsourced manufacturing will increase. This outsourcing could increase to the point that today’s manufacturers become merely Internet portal sites for the products in which they specialize. All real manufacturing would be dynamically outsourced out over the Internet. • Manufacturing planning, operation, and scheduling can be seamlessly integrated. • Modular simulation technologies integrated with the actual systems operating the factory will allow better decision support. The addition of resources, potential disasters, or unexpected growth will be better understood and planned for. • Whole new factories can be created by merely plugging together a group of manufacturing resources having appropriate agent protocols. • Machinery vendors can first provide an agent and its simulated machine for the manufacturer to then test out the features of that machine in a realistic but simulated factory before purchase. Implications on the Future of the Internet
Like trucking has changed our highways, a significant manufacturing presence on the Internet can be expected to change the very nature and flavor of the Internet itself. • We can expect increased use of specialized wide-area network technologies to accommodate the sale of time-constrained manufacturing capabilities. These may exist as separate proprietary networks, or they may spill out on the general Internet. In any event, special technologies will most likely be created to support their special purpose. • We can expect the use of different bands and channels for sale of different capabilities that may also be geographically specific. So for example, we may see things like the small mill subchannel on the Internet that covers some specified distance from any specific production site (assuming distance and therefore transportation costs are major determinants of whether a resource will be competitive). • New types of routers could evolve for making these distributed and possibly localized spot markets efficient and responsive. • New standards and protocols could evolve for describing different products and manufacturing capabilities in ways that these can find each other in cyberspace, even to the point that established protocols like TCP/IP will no longer dominate.
9
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
Summary
The AARIA project has demonstrated the feasibility of this agile manufacturing enterprise vision through a working software prototype. Work is continuing to further develop and benchmark the scheduling technology. Future work is anticipated in developing market mechanisms for efficient pricing and efficient computational resource usage. The Enterprise Action Group, Inc. of Cincinnati, Ohio, is currently commercializing the core technology. Acknowledgments We wish to thank the other members of the AARIA team including Len Haynes, Renato Levy , Egeman Tanin and Jun Lang (Intelligent Automation, Inc.), Steve Clark and Jorge Goic (ERIM/CEC), Karen Davis, Bradley Matthews, Brian Birtle, Ben Moore, and Veena Pandiri (University of Cincinnati), Howell Mitchell, Doug Currie (Flavors Technology), Greg Peters, Don Tice and Steve Bruen (Rock Island Army Arsenal), Art Davies and Alan Galan (Enterprise Action Group, Inc.). The AARIA project has been funded under the DARPA Agile Manufacturing Program BAA 94_31 under contract F33615_95_C_5524, administered by the Air Force ManTech Directorate; and under the DARPA SBIR Program under contract DAAH01_97_C_R255, administered by the Army Ballistic Missile Defense Command. Other studies on agent infrastructures are in part funded by the Department of Commerce SBIR program under the contract 50_DKNB_6_90112. References [1] A. D. Baker, ``Metaphor or Reality: A Case Study where Agents Bid with Actual Costs to Schedule a Factory,'' in Market_Based Control: A Paradigm for Distributed Resource Allocation, S. H. Clearwater, Ed. River Edge, NJ: World Scientific Publishing Co. Pte. Ltd., 1996, pp. 184_223. [2] A. D. Baker, ``Which Factory Control Algorithms Can Be Implemented in an Agent Architecture: Dispatching, Scheduling or Pull,'' Journal of Manufacturing Systems., Vol. 17, No. 4, 1998, pp. 297_320. [3] R.A. Brooks, "A Robust Layered Control System for a Mobile Robot," IEEE J. Robotics and Automation, Vol. 2, No. 1, 1986. [4] W. M. Cox and R. Alm, “The Right Stuff: America's Move to Mass Customization,” Federal Reserve Bank of Dallas, Annual Report, 1998, pp. 3-26. [5] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP_Completeness. New York, NY: W. H. Freeman and Company, 1979. [6] S. L. Goldman, R. N. Nagel, and K. Preiss, Agile Competitors and Virtual Organizations: Strategies for Enriching the Customer. New York, NY: Van Nostrand Reinhold, 1995. [7] E. M. Goldratt, Theory of Constraints. Croton_on_Hudson, NY: North River Press, Inc., 1990. [8] T. J. Greene, L. M. Clive, S. D. Lurgio, H. Grant, and K. J. Hunt, ``Scheduling and Loading Techniques,'' in Production & Inventory Control Handbook, J. H. Greene, Ed., 2nd ed. New York, NY: McGraw_Hill, 1987, pp. 17.1_17.61. [9] H. V. D. Parunak, “Visualizing Agent Conversations: Using Enhanced Dooley Graphs for Agent Design and Analysis,” in Second International Conference on Multi-Agent Systems (ICMAS’96) Proceedings, 1996, pp. 275-282. [10] H. V. D. Parunak, A. D. Baker, and S. J. Clark, “The AARIA Agent Architecture: An Example of Requirements-Driven Agent-Based System Design,” in First International Conference on Autonomous Agents (ICAA-97) Proceedings,1997. [11] H.V.D.Parunak, ``'Go to the Ant': Engineering Principles from Natural Agent Systems.'' Annals of Operations Research Vol 75, 1997, pp. 69–101. [12] H. V. D. Parunak, J. Sauter, and S. J. Clark, “Toward the Specification and Design of Industrial Synthetic Ecosystems,” in Intelligent Agents IV: Agent Theories, Architectures, and Languages, Lecture Notes in Artificial Intelligence 1365, M. P. Singh, A. Rao, and M. J. Wooldridge, Eds. Berlin: Springer, 1998, pp. 45-59. [13] H. V. D. Parunak, A. D. Baker, and S. J. Clark, “The AARIA Agent Architecture: From Manufacturing Requirements to Agent-Based System Design,” Integrated Computer-Aided Engineering, Forthcoming, 1999. [14] J. Ring, “Current Enterprise Models are in Conflict with Mass Customization,” http://ww.parshift.com/OtherWise.htm, July 1999. [15] A. B. Wright, ``Basic Scheduling Techniques,'' in American Production & Inventory Control Society 1983 Conference Proceedings , pp. 200_204.
SIDEBAR: SCHEDULING IN AARIA In the current version of AARIA we demonstrate the insertion of new jobs into the schedule in an interactive fashion where the customer causes requests for bids, bids, purchase orders, and commitments to propagate through the network. When new jobs are inserted into the schedule, they are inserted so as to find the least–cost routing, which minimizes inventory holding charges, lead–times and expected machine utilizations, all across resources which can be local or distributed out over the Internet. Mathematically, the general optimization problem being solved can be formulated as follows where we are given:
10
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
nj
=
the number of tasks in job j
pk
=
the processing time for task k (k ∈ 1…nj),
m
=
the number of machines available to perform all tasks, and
r = the cost to hold inventory (in $/$/time). Then, for job j and every possible time dj that job j can be delivered, our problem is to find
mk
=
xk = which minimizes
machine selected for task k(mk∈ 1…m, k ∈ 1…nj), and start time for task k (xk ∈ R, k ∈ 1…nj), nj
∑ $ (x , p ) ⋅ {1+ r ⋅ (d + p k =1
mk
k
k
j
k
− x k)}
(1)
such that
where
xk +1 for k = 1Knj − 1 xk + pk ≤ d for k = n j j $mk (xk , pk ) is the cost to use machine mk from xk to xk+pk.
This cost function is based on expected machine utilization due
to past jobs which have already been scheduled.2
In this formulation where m is the number of possible machines that can be used for each task, the number n of possible machine choices in this problem is of order m , which grows exponentially with the number of n tasks in a job, n. The number of possible start times is of order |R| or infinite (since the number of elements in the Real numbers |R| is infinite). Yet, the algorithms for finding the optimal machine sequence and start time for each task can be shown to be of order mn at each agent in the practical case where data structures remain bounded in length [1]. Intuitively, though the number of possible routings grows exponentially with the number of tasks in the job, the number of bids sent to each machine’s agent remains bounded by m, as shown in Figure 5. The bids are piecewise piecewise continuous functions of cost and time. The size of a bid is bounded by the number of jobs already scheduled in the system. This places an upper bound on the amount of computation required to process a bid [1]. 1
2
3
4
1
1
1
1
1
2
2
2
2
2
. ..
. ..
. ..
. ..
. ..
m
m
m
m
m
m
m2
m3
m4
Task
Possible Choices Total Computations
=
m
Computations =1 for Each Machine
Figure
2
+
m2
+
m2
+
…
n
mn
…
m2 + …
+
m2
= m+(n-1)m2 +
m
5. Computations
+
m
+
m
+ …
+
m
= 1+(n-1)m
for finding
minimum
cost
routing
and
start
times.
For readability, the formulation given in Equation 1 is a simplified version of the problem actually solved in AARIA. Equation 1 abstracts out
setup costs, non–uniform processing times, and different inventory holding charges for each type of part.
11
Baker, Parunak, and Erol , “Internet Based Manufacturing”
EAG Working Paper 8/12/99
The practical significance of these algorithms being of order mn is that the number of computations required to process a customer's request will be bounded if the number of tasks in a job is bounded and the set of m machines is restricted to only be those machines that have a chance of winning the task (through an intelligent use of subject–based addressing described in the section on Agent Infrastructure). That is, these algorithms scale linearly as the system grows, and using subject-based addressing, they can be scaled sublinearly. We should note that by solving Equation 1 we are not solving the NP–complete job–shop scheduling problem. That is, we have taken a subproblem that can be solved in polynomial time and left for background optimization solution of the NP–complete problem [5]. So, as customers interact with the system, each new order is inserted into the schedule, one-by-one as they arrive. This insertion finds the least–cost routing assuming all other jobs have already been optimally scheduled and can not be moved (Equation 1). As a part of this process a due–date dj is determined through interaction with the customer. Then in the background, as CPU cycles become available, the issue of solving the NP–complete optimal scheduling of all jobs currently in the system is revisited. We can imagine the case that as employees go home at night all available CPU cycles are used to search for better scheduling solutions. In view of this new vision for on–line commerce, the scheduling approaches provided in AARIA provide a number of advantages over traditional scheduling approaches from industry and academia. In traditional scheduling systems, the scheduler is often off–line from the customer and from the shop floor. Such systems lose opportunities to identify and meet customer needs. They also make commitments for factory resources that are not given a voice in the decision making process. Such systems can make promises that are not based on reality, are out–of–step with the actual dynamics of the factory, and do not reflect the preferences and thus maintain the morale of the human operators. Also, by having agents on all important resources that participate in the scheduling decision, modeling errors are reduced. In contrast, traditional approaches must lose important detail by aggregating across resources and jobs in order to make the problem more computationally tractable or fit an available algorithm. This approach is realistic in that it does not try to solve NP–complete problems while the customer waits. It solves simple scheduling problems in the foreground, leaving more computationally burdensome tasks for background processing. It does not directly try to optimize quantities which are not directly linked to the business's bottom line such as makespan, flow–time, tardiness, and lateness. But it optimizes the schedule to minimize actual business costs. It is also realistic in that it does not actually schedule any specific period of time when a tasks will be accomplished, but only maintains commitments of when tasks need to be completed while making future commitments based on these past commitments. Albert D. Baker is the President of the Enterprise Action Group, Inc., which provides Internet-based manufacturing solutions based on software-agent technology. He has worked in the Factory Control and Scheduling Group at the General Motors Technical Center, in the Advanced Manufacturing Laboratory at the GE Major Appliance Business, at the Corporate Headquarters of Cincinnati Milacron, and in the U.S. Air Force Manufacturing Technology Directorate.
He has taught courses in Manufacturing Systems and Agent
Technology at the University of Cincinnati. He has degrees from Rice University (BSEE), the University of Michigan (MSME), Harvard University (MBA), and Rensselaer Polytechnic Institute (PhD). H. Van Dyke Parunak is a Scientific Fellow at ERIM's Center for Electronic Commerce, where he directs research and development in applications of complex adaptive systems (including software agents, nonlinear dynamics, and artificial life) to industrial applications. He holds degrees from Princeton University (AB), the University of Michigan (MS), and Harvard University (MA, PhD), and is a member of the American Association for Artificial Intelligence and the Association for Computing Machines. Kutluhan Erol is the director of distributed information systems and technologies group at Intelligent Automation Inc., which develops software design and implementation tools for multi-agent systems, as well as distributed optimization algorithms for manufacturing, transportation, and telecommunication industries. He received a PhD degree in computer science from University of Maryland, where he did the pioneering formal and analytical work in Hierarchical Task Network Planning. In the past, he has worked at ELIMKO, building custom process control systems, and taught multi agent systems at University of Maryland. Readers may contact the authors at
[email protected],
[email protected], and
[email protected].
12