ManufacturingInformation Coordination and System Integration By A Multi-Agent Framework From: AAAI Technical Report WS-94-02. Compilation copyright © 1994, AAAI (www.aaai.org). All rights reserved. Riyaz Sikora Michael J. Shaw Artificial Intelligence group BeckmanInstitute for AdvancedScience and Technology University of Illinois at Urbana-Champaign Urbana, IL 61801. Abstract Modelingtypical enterprise information systems requires the modelingof multiple agents with different functionalities. This paper describes a methodology that provides the representational formalism, coordination mechanisms,and control schemesnecessary for integrating heterogeneous units of distributed information systems while meeting such performancecriteria as overall effectiveness, efficiency, responsiveness,and robustness. Animportant componentof the methodologyis the coordination amongagents. The framework is applied to the development of a manufacturing information system for managingthe production processes for makingprinted circuit boards. Performanceresults confirm that the multi-agent frameworkfor system integration is important to support complexbusiness processes that involve multiple steps of activities processed by a group of agents across a variety of functionalities. Theframeworkalso provides an unified model for integrating software and decision modulesin complexinformation systems. - 314- 1. Introduction Thereare several objectives of systemsintegration, such as the establishmentof goodcommunication and coordinationprocedures;promotingcollaboration amonga group of networkedparticipants, sharing of information amongdifferent entities across an informationsystem;maintaininga variety of functional modulesto makean information system flexible and adaptive; efficiently managethe coordination betweendifferent informationsystemsin an enterprise; and consolidating various business functions in informationsystemsto makeprocessesmoreefficient. Oneof the crucial issues in system integrationis the identification of coordinationmechanisms, the representationof different roles and functionalities, andthe performance measures.Theare several dimensionsto the systemsintegration problem,each with its ownset of objectives (Sikora&Shaw, 1994): ¯ Integration of heterogeneousinformationsystems, data bases, or application softwareto facilitate the data flowbetweenthemandto makethe overall systemrobust and efficient. ¯ Integration of different physical stages in business processes to improvethe internal performance metrics. For example,informationsystems(’IS) for the integration the manufacturingand the assemblystages on an manufacturingshop floor to improvethe coordination betweenthemand to better react to any emergingdemandfrom customer orders or fromother productgroups. ¯ Integrationof different functionalunits in an organizationto improvethe external performance metrics. For example,informationsystemfor the integ,ra, tion of the marketing, product design, and production functions of an organization to improvethe product development life cycle. ¯ Integration of subsystemsinto a well-coordinated, networkedsystem. For example,informationsystemfor the integration of a networkof suppliers, producers,and distributors to reducethe inventorybuildupin the networkof suppliers. In order to effectively deal with the problemof systemintegration in all of the different dimensionsoutlined aboveweneed a general frameworkthat can be used as a formalismto representandanalyzethe structure of the enterprise activities involvedand their interactions. Thecommon feature of systemintegrationis that it requirescoordination amongphysically or logically distinct and sometimes complexprocesses, component units, and subsystems. In this paper we will present a multi-agent frameworkof coordination. Wewill showhowour frameworkcan be recursively applied to analyze a multi-agent systemat freer levels of granularity.In other words,eachagentin a multi-agentsystemcanbe further .215 - r decomposed into sub-agents to analyze its internal workingand this process can be continuedrecursivelyuntil the primitiveelementsof the systemare reached. Finally, wediscuss the application of the aboveframework of coordinationto the problemof systemintegration in general andpresent a specific application of the above framework to a real-worldmanufacturing problemin a printed circuit boardsfacility. In conclusionswediscuss someof the other applications in whichthe aboveframework can be appliedandpresentdirectionsfor future research. 2. A Framework of Information Systems Coordination Theessential requirementfor the need of coordinationmechanisms in information systemsis the presenceof a collection of agents1 workingtogether to solve the same problemsimultaneouslyor workingasynehronously on different parts of the sameproblem (Crowston[1991]; Shawand Fox [1992]). One of the main reasons the study coordinationamongdifferent problemsolvers has becomemoreimportantin recent times is becausethe advancesin hardwaretechnologyfor processorconstructionandinterprocessor communication have madeit possible to connect large numbersof sophisticated, yet inexpensive,processingunits that executeasynehronously. This makesit possible to build systemsfor tackling complexproblemswhichhave not been possible before. Maloneand Crowston(1991) present an interdisciplinary theory of coordination. Belowwegive the theoretical foundationsthat will help in analyzingthe workingof anymulti-agentsystem. In analyzinga multi-agentinformationsystemwedefine the workingof the system basedon a performance measure,~ (formallydefined later). Thegoal of the systemis to improvethe performancemeasure.Theagents have their individual performancemeasures, ~. Notethat this characterizationis generalenoughto includewhatis referred to as Open Systemsin Hewitt(1991),wherethere are no specific goals; rather the systemis composed of independentlydevelopedparts (or agents) in continuousevolution. Eachagent has its internal behaviormodelwhichdefines the role of the agent and howit wouldreact to the changingenvironmentor to messagesreeeivexLThegoal of this interaction amongthe agents is to improvethe performanceof the systemas a whole.Note, however,that any multi-agentsystemwherethe agents havespecific sub-goalscan still be capturedin our framework.Theperformancemeasureof the systemas a wholecan be defmedin terms of these sub-goals. 1Byagents we meansoftware modules, decision units, or, in general, information subsystems. - 316- Wenext present an analytical modelof multi-agentsystemsthat is motivatedby the workdone on modellingof distributed systems (Chandyand Misra [1986], Halpemand Fagin[ 1989], Milner[1980])and ActorSystems(Hewitt[1977]). Anymulti-agent informationsystemcan be analyzedas consisting of individual agents AGI, AG2,..., AGnand an environment, E. Wedefine the interdependencies amongthe agentsbasedon the interactionvariables.Theinteraction variable zij gives the informationfor whichagent AGjis dependenton agent AGi.The interactions amongthe agents then consists of sendingandreceivingthe interaction variables. Wedefine zi, the dependency vector for agent AGi,as a vector givenby zi - (Zli, z2i, ..., Zni) Let 7-4 be the set of all possible dependencyvectors for agent AGi. Wedefine the interdependency struc~e, Z, as the spacegiven by Z c ZeXZIX...XZn Wecharacterizethe workingof sucha multi-agentsystemin termsof the states of the agents and the activities that they can perform. Wedenote se as the state of the environment andsi as the local state of the agent AGi.Thelocal states of the agentsalso includethe informationaboutthe interaction variables. Theglobal state of the systemis thendefmed as the (n+1)-tuple(se, Sl,..., Sn). Let Sebe the set of all possiblestates of environment andSi be the set of all possiblelocal states of the agent AGi.Wedefine the global saw~ureG, given by G ~ SeXS1X...XSn, as the set of all possibleglobalstates. Theaboverelationshipis that of a subsetto allowfor the fact that someof the global states mightnot be possible. Notethat the interdependency structureis part of the globalstructure. Wedefine the systemperformance measure,//7,as a function fromthe global states to a measurement in real numbers,i.e., /l;:a >R Wesay that the performance measureof the systemimprovesas it movesfromglobal state gl to globalstate g2ff 7r~(g2)>/r,(gl). Wedefine ai to be the activity performedby the agent AGi,andae as the activity performedby the environment E. Weallow eventheenvironmentto performactivities. For example, messagesreceived by the agents from the outside world can be modelledas activities performedby the environment.Since our mainmotivationin developingthis frameworkis to modelthe workingof a multi-agent informationsystem, interaction and etx)rdination throughcommunication activities such as messagepassing will be the most importantcontrol structure in our framework.Wedefine the basic activity to consist of - 317- either sending messages,receiving messages,or internal computation,wheremessages maybe control signals, data, or coordinationcommands. In this modelweassumethat the internal computationsof the agents are not visible to the other agents and hencedo not affect them;they only changethe local state of the agentperformingthe computation.This is similar to the concept of "arm’s length relationship" defined in OpenSystems (Hewitt[1991]).A variety of coordinationmechanisms are discussedin Chinget al. (1992) and Shaw& Fox (1993). Since the agents can workasynchronously and can perform their activities simultaneously,wedefine the notionof a joint activity as the tuple (ae, al, ..., an). We define a ftmetion~: that associatesa globalstate transformerwitheveryjoint activity. In otherwords,~ae, al, ..., an)(g)is the globalstate that results whenthe joint activity (ae, al, ..., an) is performedon the global state g,: Moresuccinctly, "~(ae, al, ..., an) is functionfromthe globalstates to globalstates "v(ae,al, ..., an) : ~ a Let Aebe the set of all possibleactivities that earl be performed by the environment, andlet Ai be the set of possibleactivities that canbe performed by the agentAGi.Let ,,,1, definedby A ~ AeXAIX ... XAn, bethesetofjoint activities possible. Asbefore, A isdefined asthesubset ofallpossible joint activities toaccount forthefact that certain joint activities might notbepossible. Figure 1 showstheconceptual model of an agent. Eachagent is modelled as consisting ofthree important components. A knowledge baseKill,, a control unitCUl, anda functional component Fi.Theknowledge base ofagent AGiinturn consists ofa list ofacquaintances, 0~,which isa finite collection ofagents that itdirectly knows about together with their skills, anda case history ofthepast experiences,/-/7 unit of i.Thecontrol theagentAG consists of protocols Pt anda learning module MLi.Thefunctional component consists ofcomputational procedures anda behavior model. Anagent cancommunicate only with those whoareinitsacquaintance list. Thelist ofacquaintances models thecontrol structure attheglobal level. Wedefine thecontrol structure, ’~, as an nxnmatrixsuchthat T[i,j] - 1 if agentAGican communicate directly with the agent AGj,i.e., AGjE Oi. Notethat the control structure does not have to be symmetric.In the abovecase it is possible that agent AGjdoesnot knowaboutagent AGi. AgentAGjcan still receive messagesfromagent AGiand reply to it withoutknowingabout the sender of the messages.This is meantto capture the common type of communication available in mostcomputerlanguages,i.e, procedureor sub-routinecalling. In procedure - 318- calling, the procedurebeingcalled doesnot knowwhichprogramis makingthe call; it can still returnthe result of its computation to the caller. Theprotocols of the agents define howthey respondto the changesin their local state resulting from an internal computationor froma receipt of a message.Note, the protocols could be either strategies in a decision makingcontext or algorithms in a computationalcontext. Wedefine the individual protocols run by the agents as functions fromtheir local states to their activities. If Pi is the protocolrunbythe agentAGithen Pi:Si ----) Ai In other words,eachagent decideswhatto do basedon its local state. This is in keepingwiththe fact that the agentsdo not havea truly global viewof the systemandtheir actions dependonly on what they perceive as their immediateenvironmentand on the messages received,i.e., their local state. Wedefine a coordinationmechan/sm, C, as a joint protocol (Pc, P1, P2, ..., Pn), where Pi is the protocol run by the agent AGi, and Pe is the protocol run by the environment.Note that just as it was useful to viewthe environmentas performingan activity it is also useful to viewthe environment as rurminga protocol. Wecan use the environment’s protocolto capturethe possibilities that messagesmightget lost. Input from the outside world can also be modelledas messagesfrom the environment. Thus, a coordinationmechanism can be viewedas a function fromthe global states to the joint activities,i.e., C:G " A Figure 2 shows different database managementsystems (DBMS) of a typical company comleetedon a networkandillustrates an exampleof the application of the above frameworkfor integration. It consists of a maincorporate database and departmental databases (for example,engineering and manufacturing).The corporate database might haveinformationabout the personnel,metingdata, financial data, etc. Thedepartmental databases mightcontain informationpertaining to their respective areas. Withineach departmentthere mightbe local databasescontaininginformationthat is localized to a specific operation or component. For example,within manufacturingthere mightbe local databasesthat contain workassignments,movements of materials, etc., for the respective machines. Basedon our forrn~lismeachDBMS can be modelledas an agent that has to interact with the other companyand comte databases for information sharing. The list of acquaintances, Q, of each DBMS wouldbe the list of other DBMSs on the networkwith whichit can interact. As mentionedabove, the list of acquaintancesmodelsthe control 319 - structure of the networkof agents. For example,to modelrestricted accessof the corporate DBMS, it might be on the list of acquaintancesof the engineering and manufacturing DBMSs but not on the local DBMS within the manufacturingdomain. Theknowledgebase of each DBMS wouldconsist of the actual data stored and a list of acquaintances. The control unit of each DBMS wouldconsist of protocols for interacting with the other DBMSs. For example,it could be basedon a querylanguagelike SQLto send queries to or handlequeries fromother DBMSs. Thecontrol unit wouldalso redirect queries it is unableto handleto the appropriateDBMS. Thefunctionalcomponent would consist of various computational procedures needed to extract meaningful information form the data base. A truth maltanancemechanism(I-Iuhns &Bridgeland, 1991) or the equivalent wouldbe neededto ensure the consistencyof such multi-agent systems. Oneof the importantadvantagesof using the aboveframework is the flexibility it provides in modellingany multi-agent systemat different levels of granularity. Each individualagent in a multi-agentsystemcan itself be consideredas a multi-agentsystem and can be analyzedusing the sameframework.In other words, a systemcan be broken downand analyzedin successivelyfiner levels of granularity until wereach the atomic elementsconstitutingthe system. For instance, an agent AGican be modelledas havingits owninternal environment Ei and sub-agents AGij, i.e., AGi-- {Ei, AGil, AGi2, ..., AGim).The local state, si, of the agentcan be modelledas a tuple consistingof the local states of its sub-agentsandits internalenvironment, i.e., s -- (sic, Sil, si2, ..., sire). Anactivity, 9i, of the agentearl modelled as the tuple corresponding to the joint activities of its sub-agents,i.e., al - (aie, ail, at2, ..., aim).Theset of all activities, Ai, of the agentwouldthenbe sameas the set of joint activities of its sub-agents,Ai, where ~li ~ Aie X Ail X ... X Aim Similarly,the protocol, Pi, of the agentcan be modelledas the joint protocolof its subagents, i.e, Pi ~ (Pie, Pil, Pi2 ..... Pim). Thus,wesee that the aboveframework lends itself easily to analyzinga multi-agent systemat multiple levels of granularity recursively. For example,at the top level an organizationinformationsystemcan be analyzedas a multi-agentsystemwherethe agents correspondto the informationsystemsof different functional departmentslike finance, marketing,manufacturing,etc. Eachof these departmentalinformationsystemscan in turn be analyzedin terms of its different divisions of tasks and missions dependingon the structure andstrategies of the organization.For example,the workingof the manufacturing departmentinformation systemcan be analyzedin terms of the interactions amongthe ;- 320- informationsystemsof its different activities suchas design, facility layout, planning, processing,materialhandling,quality control, etc. Agentcoordinationandtask allocation havebeenstudied by researchin distributed artificial intelligence (Gasserand Huhns[1989]; Durfeeand Lesser[1989];Derfeeet al. [1989]; Adler et al. [1992]). A related framework for understandinglarge-scale systems has beenthe development of the Actorand OpenSystems(I-Iewitt [1977,1991]).Thebasic conceptunderlyingthese systemsis that, rather than viewinga control structure as a sequenceof choicesmadeby a single decisionmakerin a spaceof choicepoints, it could instead be seen as a pattern of messagespassing amonga collection of computational agentscalled "actors." Themainfeaturesof the Actormodelare (1) the ability for a society of experts or actors to achieveintelligent behavior;, (2) a theory of computationthat supportsfree-grainedandnaturallyconcurrentcomputation; (3) controlstructures as patters of messagesrather than a sequential choice amongalternatives; and (4) nonserialized actors, as opposedto serialized actors, havinga local state that persists on reinvoeation. TheOpenSystemmodel,on the other hand, formaliTesthe characteristics of information systemscomposedof independentlydevelopedunits in continuousevolution. Takinga moresystem-levelviewpoint,the modelconsider informationsystemswith concurrentand asynchronous processes. Coordinationis this type of informationsystemscan be basedon such mechanisms as debateandnegotiation (Holsappleet al., 1991;Sycara[1989]). Wemer (1989)developesa theory of communication for cooperatingagents. 3. Application of the Agent-Based Frameworkto System Integration Thecommon feature of systemintegration is that it requires coordinationamong physically or logically distinct andsometimes complexprocessesor systems.Accordingto Mize(1991),there havebeentwo traditional approachesof doingsystemintegration in the past. First is the "islands of automation" approachin whichrealistically sized modulesare first build independentlyand are then linked together into an integrated system. The drawback of this approachis that it results in only interfacing, not integration. In other words,the effects of other modulesare not takeninto accountin the designandworkingof a module.The secondapproachis to start at the top and design a comprehensive system fromthe verybeginning.Thedrawbackof this approachis that it is not adaptiveto frequent systemor environmentalchanges.Whatis neededis a combinationof the two approaches that can exploit the advantagesof the bothwithoutincorlxratingtheir drawbacks. Theagent-basedframeworkpresented in this paper earl be thought of as such a hybrid approach.Onone handa general framework for the total systemcan be specified, - 321- on the other hand the modulescan be individually implementedwithin the overall framework. Agentsare the basic entities in an agent-basedsystem.For example,they earl be either stand-aloneprocessorsinterconnectedon a networkor heterogeneouscomponents of a system.Associatedwith everyagentis a set of proceduresandfunctionsthat defmethe meaningfuloperationsof that agent and howit interacts with the other agents. Fromthe designperspective,agentsmodelthe entities in the applicationdomain.Forexample,ff the system under consideration is an organization, the agents can modelthe different departments within the organization. Thus, the agent-based approach provides an "architectural framework" for systemintegration. Thetraditional approachof managing a systemutilize8 functionaldecomposition to specify the tasks to be completedby eachcomponent of the system.In contrast, the agentbased approachemphasizesthe importanceof information and control by utilizing the relationshipsandinterdependencies betweenthe agentsas a fundamental part of the system. This point of viewis shared by recent research in agent-basedsystems~ et al.[1993]) and networkorganizations(Citing et al.[1993]).:Thus,the designof the informationand control systemresulting fromusing an agent-basedapproachrepresentsa tighter coupling of data andfunctionality(or behavior).It is bothnaturalandflexible. It is natural in the sense that the agents are closelyidentified withthe real-worldelementsor conceptswhich they model.It is flexible in the sense of quickly adapting to changesin the problem specifications. Themainadvantagesoffered by the agent-basedapproachare uniformity, modularity,andreconfigurability. In a fundamentalway,a parallel can be drawnbetweenthe, proposedagent-based framework for systemintegration andthe object-oriented modelfor softwaredevelopment (Kamel&Syned[1989];Korson&McGregor[1990]; Pan&Tenenbaum[1991 ]). Both frameworksemphasizethe modularityof the approachin whichthe basic elementof the system is the same(objects in object-oriented approachand agents in agent-based approach).Theuniformitynot only providesthe agent-basedapproachthe portability and the ease of reuse (as in the object-orientedapproach),but it also providesthe keylinkage for integrationof a system. In order to applyour multi-agentframework to systemintegration weftrst needto define whatthe agents represent. Theimportantconceptin the application of our multiagent framework to systemintegration wouldbe the encapsulationof the different entities or processesinvolvedinto their behaviormodels.The behaviormodelsare computational processesthat earl mimicthe activities of the corresponding entities(Ferber&Carle[1991 ]). For example,a simulationmodelcan be thoughtof as a behaviormodel. Wedefine an agentcorresponding to eachentity as a decisionnodeconsistingof - 322- ¯ a functional component that in tumconsists of the behaviormodelof the entity and computationalprocedures; ¯ a knowledge base whichconsists of a list of the agent’s acquaintancesalongwith their skills andcasesrelatedto its past experience; ¯ a control unit whichconsists of communication protocols that specify howthe agent wouldreact, in responseto the messagesreceived, as a function of the state of its local state and a learning modulewhichmodifies the knowledgebase based on its interactionwith otheragentsandits currentperformance. Theresulting integratedinformationsystemcan thus be thoughtof as a collectionof agents - software modules,information subsystems,data bases, and decision units cormeetedtogether via a communication network,sharing and exchanginginformation. This informationprocessingperspectivealso underscoresthe fact that the advantagesof distributed processing,namelyreliability andeasy acce~of information,can be broughtto bear uponthe integratedsystem.It also supportsthe viewthat the keyin achievingsystem integration is coordination through the use of appropriate levels of computersand information/communication technologies (Mize[1991]; Roboam&Fox[1990]). More importantly,it providesa meansfor coordinationof the activities of the agentsas well as integration of the heterogeneous components of a system. Figure 3 showsa general representation of the application of the multi-agent framework to systemintegration. For example,the entities can be the different computerbased machinesin a shop floor that have to be integrated. The physical links would etxrestxmdto the materialhandlingsystemthat interconnectsthe isl~ds. Theapplicationof the multi-agentframework for integrating the workingof the islands of automationwould then involvecreating the agents correspondingto each island of automationandenabling themto interact andcontrol the entities. Notethat the agents do not necessarilyhaveto correspondto physical entities (for e.g., AgentA in figure 3). Theycould be logical decisionmodules whichalso haveto be integratedwith the workingof the physicalentities. In other words, systemintegration not only pertains to integrating the activities of physically distinct stages or processesbut also includes the coordinationof logically separate decision modules.Eachagent can in turn be analyzedwithin the multi-agent framework as consistingof sub-agents(for e.g., Agent4 in figure 3). 4. Information Systems Integration Manufacturing Environment in a Printed 323- Circuit Boards In this coordination in integration in Printed Circuit section we present an example of applying the above framework of the manufacturingdomain.Specifically, we look at the problemof system a real world Surface MountTechnology (SMT)plant for manufacturing Boards (PCB). Weanalyze the coordination problems amongthe various componentsof the systemat four different levels of granularity. Thepurpose is to ensure that the individual IS and decision modulesact to meet global system objectives in a disa’ibuted fashion. Figure 4 shows the schematic of the PCBmanufacturing environment under consideration. It consist of surface mounttechnology (SMT)based assembly lines where the placement of the componentson the PCBboards takes place. The facility consists of four such assemblylines and thus has considerable flexibility. The four lines together constitute the so-called Feederstage of the facility. Thefacility is designedto produce18 different types of PCBboards. Each SMTline consists of screen printers for maskingand attaching solder on the bare PCBs, three types of automated component placement machines (Fuji, Zevatech, and automated robots), PROM programmers, manual assembly stations (for placement of componentstoo large for the machines to handle), infrared ovens, and automatedand manualtest stations. After leaving the SMTlines the boards go through a cleaning station. At this point the boards are ready to be processed by the Final Inspection and Testing (FIT) stage of the facility wherethe boardsarc assembledinto the final products. It consists of tin’ee FITlines that are operated manually. One of the main issues concerning this facility is the coordination betweenthe two stages so that the production of boar~ that go into the same productis coordinated.Thecurrent practice at the facility is to de-conpleboth the stages by havinga very large buffer capacity betweenthem. The machines in the feeder stage arc connected by conveyors which can hold at most twoboards at a time. Thus, one of the importantcharacteristics of the SMTlines to be considered whenmaking scheduling decisions is the limited amountof buffer capacity available betweenthe machines. Bar code readers are used to scan each board to determine board type. Bar code information is used to change programs for the chip placement machines, robots, ovens, and PROM progrmmuerfor each batch of PCB’s without human intervention. Also, the set of componentsin the chip placement machines have to be changedwhenevera different kind of PCBboards have to be processed by the machines. Thetime required to change the set of componentsin a placementmachine,before the PCB boards can be processed by that machine,is called the set-up time. Since these changesin the machines are done manually and require considerable skill, the set-up times are significant as compared to the processing times of the PCBboards on the machines. - 324- Normally,the different kinds of PCBboards require components someof whichare also needed by the other PCBboards. Therefore, thetime required to set a machinefor processing a kind of PCBboard usually dependson the kind of the PCBboard that was processedpreviously on the machine.In other words,the set-up times on the machines dependon the sequencein whichthe different kinds of PCBboards are processed. Thus, the other important characteristic of the SMT line to be considered while makingthe schedulingdecisionsis the sequencedependence of the set-up times, whichusually dictate the performance of the overall system. Thereare manyfactors in this environment that motivatethe use of our multi-agent framework for integratiou. Thereare different stages in the manufacturing processthat have their ownobjectives andare the responsibility of different managers.However, there are manyinterdependeneiesamongthe stages and ignoring themby trying to optimize each individual stage separately leads to a sub-optimalsystemperformance.For example,the assemblystage and the feeder stage have their ownobjectives of minimizingthe through put time andreducingthe inventorieslevel, but are interdependentbecauseof the flowof productsfromone stage to another. Evenwithin one stage there are different information systems or decision modulesthat have their ownwell-def’med functions but are interdependent on each other for information. For example,in the feeder stage the information system responsible for scheduling each flow line is dependent on the information about the schedule of other flow lines primarily because of the complex productstructures requiring parts of the sameproduct being manufacturedon different lines. Similarly,the informationsystemfor eachof the flowlines it.ll consistsof different decisionmodulesthat needto be integrated. For example,the lot-sizing, sequencing,and capacityplanningmodules haveto interact in order to constructa feasible schedulefor the flowline. All these factors motivatethe use of our framework for integration as it allows the underlyinginformationsystemto retain its distributed nature at the sameprovidingit withthe meansfor achievingthe desired coordinationandintegration. The maingoal of this research is to modelthe complexinformation flows and decisionprocessesinvolvedin the’manufacturing exampledescribedearlier andto develop coordination mechanisms that earl makethe systemmoreefficient and effective. The important issue in developing the coordination mechanismsis howto maintain the distributed control of the entities involved,at the sametime providingthemwith meansof informationexchange to achieveefficient integrationof the processes. Figure5 presents the informationinfrastructure for the manufacturing environment discussed above and shows various software modulesand databases that have to be integrated. For example,basedon the customerorders for the final products, the product .325- structure information,andthe parts alreadyin stock, the materialresourceplanning(MRP) modulehas to updatethe daily part demand informationandinteract with the short interval scheduler(SIS) to set realistic duedates for the final products.TheSIS, in turn, has interact with modulesfor lotsizing, sequencing,capacity planning,andsimulationto find the daily schedules.Basedon the informationaboutthe daily schedules,the dispatching rules, and the current machineandinventorylevel status, the dynamicschedulerinforms the towline controllers of the actual dispatching schedule on a continuousbasis. The controllers also updatethe machine andinventorystatus databasefromtime to time. Oneof the maindifficulties in coordinatingthe aboveactivities is that there is no central control or authority overlookingthe entire operation. That is, the underlying informationsystemis distributed. Asa result, the various objects, modules,andprocesses need to coordinate with each other. In practice, for example,the MRP managerwould constantly negotiate with the schedulingmanagerto decide the due-date committedto a customer’s order. This type of coordination earl be supported by a eomputerized negotiationsupportsystem(I-Iosappleet al., 1991)or conflict resolution(Klein[1991 ]). our approach,the multi-agentframework providesan excellent alternative as it allowsfor the different modules,objects, or processes--i.e., agents- to maintaintheir local control by treating themas autonomous agents, at the sametime providingthemwith a meansfor achievingthe desired coordination. Onthe logical level, westudy the integration of the different modulesfor the workingof the short interval scheduler.Theproblemof finding a schedulefor a flowline with sequencedependantsetup times has been dealt with extensivelyin the productionand operationsresearch, literature and has beenshownto belongto a class of problemscalled NP-hard(Bahl and Ritzman[1984]).Several approaches that treat the problemas optimizationproblemhave been suggested(e.g., Manne[1958]), but they all suffer from the drawbackthat they do not scale up to the real-world problems.As a result several heuristic approachesthat decomposethe scheduling probleminto two sub-problemsof lotsizing and sequencingand treat themas independentsub-problemshave been proposed (Baldet al [1987]; Elmaghraby [1989]). In reality, however,these twosub-problems, i.e., lotsizing andsequencing,are not independentof eachother. For a morerealistic solution we need an approach or a methodologythat, while treating the two sub-problems separately, has the additional capability for integrating the solution processof the two subproblems.In other words,weneed an approachthat takes an informationperspectiveof the problemby highlighting the need for information sharing required betweenthe two processes. Themulti-agent frameworkprovides such an approach.It allows us to model the deeision modulesfor solving the two subproblemsas different agents (or modules), while at the sametime providing themwith a meansof interacting with each other and coordinatingtheir actionswhilebuildingtheir solutionsincrementally. Weapply the multi-agentframework of Systemintegration to this exampleby first analyzingthe systemin tenmof its components (or agents) and their interdependeneies and developingindividualprotocolsfor the agents that wouldresult in a coherentbehaviorof the system. To reiterate, the single flow line schedulingproblemis to find the weekly scheduleof productionthat meetsthe daily demand,satisfies the capacity constraints, minimizesthe costs andimprovesthe productivity. Theweeklyscheduleconsists of daily lot-sizes and their sequence.Thus, wehave two maindecision modulesof lot-sizing and sequencingin our controller, anda capacityplanningmodulewhichprovidesthe evaluation of a schedule.Below,wegive the detailed analysis of the schedulingsystembased on our multi-agent framework. Animportantissue related to systemintegration is the integration of different softwaremodulesworkingon either different parts of the sameproblemor different but interdependentproblems.Thesystemdevelopedhas one super class, called Scheduler,and twosub-classes, called FlowlineandFactory,as shownin figure 9. TheFlowlineclass, as the nameimplies, containsthe detailed informationabouta towline(like processingtimes, setup times, etc.) together with functions neededto do lotsizing and sequencing.The Factoryclass has informationaboutthe factory (for example,objects of the Flowlineclass correspondingto the numberof towlines in the factory, informationabout the product mix, the demandat the productlevel, the line of whicheach board is to be made,etc.) together with the functions for coordinatingthe productionschedulesof the individual lines. TheSchedulerClassis essentially an abstract class createdto containthe functions that are common to both the Flowlineand the FactoryClasses (for example.,finding the best productto schedulebasedon their utilities, schedulingthe productionfor a day, etc.) Thecoordinationamongthe modulesis doneat two levels. At the first level the FactoryClassdoesthe lot-sizing at the productlevel by finding the utilities of producing eachproductand schedulingthe productwith the best utility for production.In order to fmdthe utility for a productit sendsa messagerequestingthe utility of producingeachof the constituent boardsto the FlowlineObjectconespondingto the towline on whichthe boardis made.In other words,the utility of producinga productis calculatedbasedon the utilities of producingthe individualboardsgoinginto that product.Atthe secondlevel, the control is passed to the individual FlowlineObjectsfor coordinatingtheir production schedules. EachFlowlineObject does the schedulingconcurrently. Thecoordinationand message-passing amongthe Flowlineobjects is achievedby using "shared data structures" (Leeet al.[1993]). - 327- J 5. Implementation and Performance Evaluation In this section wepresent a summary of the results and performance evaluationof the implementationdiscussed above. To evaluate the impact of integration and the effectivenessof coordinationon the fast level, experiments wereconductedto evaluatethe integration of the three decisionmodulesof lot-sizing, sequencing,andcapacity planning as explainedin section 4. Thelevel of work-in-process,needof overtime,and the cycletime of the processare usedas measuresof the processefficiency. Theintegration of the three modulesis essential as eachmoduleis designedfor a specific functionanduses only a specific criteria. Thegenerationof a schedulefor the towline,on the otherhand,requires someformof integration of the multiple objectives and functions. For example,the lotsizing moduledeterminesthe lot sizes to be producedeachday andonly tries to minimize the total costs associatedwithit. Thesequencing moduletries to find the best sequencefor each day that minimizesthe total cycle time (or makespan).However,whatis neededis schedulethat not only meetsthe abovetwoobjectivesof minimizing the total costs andthe makespan but also minimizesthe amountof overtimeused. In other words,the integration of the modulesis expectedto be morethan just the sumof the individual modules.An information system methodology emphasizingsystem-wideintegration and coordination provides the global perspective seeking overall performancegoals rather than the performancesof individual components. Todemonstratethis feature, a numberof experimentswerecarried out to study the behaviorof the systemperformanceas a function of the interactions amongthe modules andthe results are presentedin Figures11 and12. Theresults at nointeractionsin the plot correspondto the results given by the individual modulesfunctioning independently withoutanyintegration. Ashypothesized earlier, the integration of the modulesleads to a significant improvement in all the three performance measures.All the results are averaged overfive trials. At the secondlevel, experiments werecarriedout to evaluatethe integration of the software modulescorrespondingto each of the four flowlines in the factory as explainedin section 5. Again,the integration and coordinationof the softwaremodulesof the different flowlines is importantbecauseof the needto coordinatethe productionof the board units madeon different lines but going into the samefmal product. A lack of coordinationamongthe modulesleads to the workin process (WIP)inventorybuildup. The object-oriented systemdescribed in section 5 was tested on five different problemsconsisting of four towlines, ten products, and twelvetypes of circuit boards. Eachtowlinemadethree different boards. Thecriteria used for evaluationwerethe total 328- cycle time of the four lines combinedand the WIPinventory build up in terms of the numberof board-days.Table 1 showsthe results of integrating the modulestogether with that of using the different modulesindependently withoutanycoordinationandintegration. Theresults are averagedover the five problems.Theresults showthat both the total cycletime and inventory build-up due to lack of coordination are reducedby a significant amount.Theseresults clearly demonstratethe benefits of integrating andcoordinatingthe working of various decision and software modulesin an information syste m. They illustrate the efficacyof systemsintegration. Theseresults also conftrmthat the conceptof systemintegration is especially importantfor supportingbusinessprocessessuchas the onewehavein the printed circuit boardmanufacturing system. In general, the performance results fromthe experimentsconfirmthat information systemscan be the enabler of improvedbusiness processes involving multiple steps of activities, processedby a numberof agents (Davenport,1990; Hammer, 1990). Process parameterssuchas work-in-process,needof additional overtime,andthe cycle-timeof the processare all measuresof the processefficiency. As shownby the experimentalresults, the systemintegration approachenforces the coordinationamongthe agents as well as amongthe subprocesses.As a result, both the cycle-timeand work-in-processinventory are reduced. 6. Conclusions In this paper wehavepresenteda general multi-agentframework for coordinating and integrating a collection of stand alone units, each of whichcan be viewedas an "agent." Themainadvantagesof using the aboveframework are: (1) it providesuniformity of a general framework for the total systemby treating the heterogeneous components in a homogeneous fashion, (2) it provides modularity by allowing different modulesto individuallydevelopedand implemented, (3) it providesthe capability to reconfigurethe systemeasily, and(4) it providesfor distributedcontrolby allowingthe "agents"to retain their local control at the sametimeprovidingthemwiththe capability for interacting and coordinatingtheir activities throughmessage-passing. Wepresented a real world exampleof a manufacturingenvironmentand showed howthe aboveframework can be applied for integrating not only different decision and softwaremodulesbut also integrating physically distinct stages of a system.Oneof the mostimportant applications of the frameworkpresented here can be the integration of various heterogeneouscomponents,data bases or softwaresystems, at the organizational level. - 329- i References ADLER,M., DURFEE, E., HUHNS, M., PUNCH,W., ANDSIMOUDIS, "AAAIWorkshopon Cooperation AmongHeterogeneousIntelligent.s,",41 Magazine, Summer,1992. BAlm,H.C. ANDRrrZMAN, LJ’., "A Cyclical SchedulingHeuristic for Lot Sizing with CapacityConstraints," Intl. Journal of Prod. Res., vol. 22, no. 5, pp. 791-800, 1984. BAHL,H. C., RITZMAN, L. P., ANDGUPTA, J. N. D., "DeterminingLot Sizes and Resource Requirements: A Review," Operations Research, Vol. 35, No. 3, May-June1987, pp. 329-345. CHANDY, K. M.ANDMISRA, J., "HowPl’ocesses I..~al~," Distributed Computing,1: 40-52, 1986. CHING,C., HOLSAPPLE, C.W., ANDWHINSTONS, A. B.. "Reputation, l.e.arning, and Coordination in Distributed Decision MakingContexts," OrganizationScience Vol. 3, No. 2, pp. 275-297, 1992. CONRY, S., KUWABARA, K., LESSF.R,V., ANDMEYER. R., "Multistage Negotiation for Distributed Constraints Satisfaction," IEEETransactions on Systems, Man,and Cy., V.21, N. 6, 1991, pp.1462-1477. CROWSTON, K., "A Topologyog Organizational Coordination Methods," Working Paper, Sloan School of Management,MIT, 1991. DAVENPORT, T.H. ANDSHORT, J.E., ’~[’he NewIndustrial Engineering: Information Technology and Business Process Redesign," Sloan ManagementReview, Summer1990. DURFEE, E. & LESSER,V., "Negotiating Task ~mposition and Allocation Using Partial GlobalPLanning,"in Distributed Artificial Intelligence, VoLII, L. Gasser, and M. Huhns(F_As), Pitman, London, 1989, pp.229 -244. DURFEE, E., LESSER, V., and CORKILL, D. "Cooperative, Distributed ProblemSolving," in The Handbookof Artificial InteUigenci,, VoL/V, A. Barr, P. Cohen, and E. Feigenbaum(Fxls),Reading, PA: Addison Wesley, 1989, pp. 83-147. FJJMAGHR.ABY, SALAHE., "O11Heuristics and their PerformanceEvaluation for Dynamic Lot Sizing," Management Science, vo126, No. 1, 1989, pp. 1-10. FERBER, J. ANDCARTE, P., "Actors and Agentsas Reflective ConcurrentObjects: A Meting IV Perspective," IEEETransactions on Systems, Man, and Cy., V.21, N. 6, 1991, pp.1420-1408. ,- 330- GASSER, L. ANDHUHNS, M., ’Themesin Distributed Artificial Inteeligence Research," in Distributed Artificial Intelligence, Vol. II, L. Gasser, and M.Huhns(Eds), Pitman, London, 1989, pp.259-290. HAMMER, M., ’!Reengineering Work:Don’t Automate, Obliterate," HarvardBusiness Review, July/August, 1990. HALPERN,J. Y. ANDFAOIN, R., "ModellingKnowledgeand Action in Distributed Systems," Distributed Computing,3: 159-177, 1989. HEWlTT, C., "ViewingControl Structures as Patterns of MessagePassing," Journal of Artificial Intelligence, 8(3), pp.323-364,1977. HEwrrr,c., "OpenInformation SystemsSemanticsfor Distributed Artificial Intelligence," Artificial Intelligence, 47, pp.79-106,1991. "Negotiation Support Systems: Roots, Progress, and Needs," Journal of Information @stems,Vol. 1, No. 4, 1991. HOLSAPPLE,C.W., LAI, H., ANDWHINSTON,A.B., UHNS,M. ANDBRIIX3ELAND, "Multiagent Truth maintenance," IEEETransactions on Systems, Man, and Cy., V.21, N. 6, 1991, pp.1437-1445. KAlvWJ~, M. ANDSYNED, A., "An Object-Oriented Multiple Agent Planning Systems," in DistributedArttficial Intelligence, Vol. II, L. Gasser, and M. Huhns(Eds), Pitman, London, 1989, pp.259-290. KLEIN,M., "Supporting Conflict Resolution in Cooperative Design Systems," IEEE Transactions on Systems, Man, and Cy., V.21, N. 6, 1991, pp.1379-1390. KORSON, T. ANDMa3REGOR, J.D., "Understanding Object-Oriented: A Unifying Paradigm," Communicationsof the ACM,Vol. 33, No. 9, p,p 40-60, 1990. !.~, K-C, W. MANSFmLD, ANDA. SHETH,"A Frameworkfor Controlling Cooperative Agents," IEEEComputer, pp. 8-16, July 1993. MALONE,T. W. ANDCROWSTON, IC, Wroward an Interdisciplinary Theory of Coordination," Technical report, CCSTR#120, SS wp# 3294-91-MSA,M1T, Cambridge, MA., 1991. MANNE, A.S., ’q:’rogrammingof EconomicLot Sizes," Management Science, Vol. 4, No. 2, pp.125-135, 1958. ’ " MILNER, R.,A Calculus of CommunicatingSystems, (Lect Not ComputSci, vo192) Springer, Berlin Heidelberg NewYork, 1980. MIZE, J.H., I-LC. BHUSKUTE, D.B. PRATI’, ANDM. KAMATH, "Modelingof Integrated ManufacturingSystems Using an Object-Oriented Approach," liE Transactions on Design and Manufacturing, Vol. 24, No. 3, pp.14-26, July 1992. - 331- MIZE,J. H., "Fundamentalsof Integrated Manufacturing,"in J. Mize(Ed.), Guideto Systems Integration, Industrial Engineeringand Management Press, Institute of Industrial Engineers, Norcross, Georgia, pp. 27-43, 1991. Intelligent Frameworkfor Enterprise Integration," IEEE Transactions on Systems, Man, and Cy., V.21, N. 6, 1991, pp.1391-1408. PAN, J. ANDTENENBAUM, J., "All ROBOAM, M. ANDFOX,M_., ’rl’he Enterprise management NetworkArchitecture: A PLat for Multi-Agent ManufacturingSystems," WorkingPaper, Robotics Institute, Carnegie MellonUniversity, 1990. SK.vm~KA. ANDMEAL, H.C., "A Heuristic Selecting Lot Size Requirementfor the ease of a Deterministic TimeVaryingDemandRate and Discrete Opportunities for Replenishment," Production and Inventory Management,14, 1973, pp.64-74. ~ FOX,’~Distributed Artificial Intelligence for GroupDecisionSupport," SHAW,~J. AND Decision Support Systems, Vol. 9, pp. 349-367, 1993. SHAW, M.J., SOLBERG,J., ANDWOO,T., "SystemIntegration for Intelligent Manufacturing: AnIntroduction," lie Transactions on Design and Manufacturing,Vol. 24, No. 3, pp. 2-6, July 1992. Adaptation in Distributed Artificial Intelligence Systems,"in Distributed Artificial Intelligence, VoLII, L. Gasser, and M. Huhns (Eds), Pitman, London, 1989, pp.259-290. $IKORA, R. ANDSHAW, M., "A Multiagent Frameworkfor The coordination and Integration of Information Systems," BeckmanInstitute Technical Report AI-DSS-94-01, University of Illinois, Urbana, ILL, 1994. SHAW, M./. ANDWHINSTON,/k.,’T~aming and WERNER, E., "Cooperating Agents: A Unified Theory of Communicationand Social Structure," in Distributed Artificial Intelligence, VoLII, L. Gasser, and M.Huhns (Eds), Pitman, London, 1989, pp.3-36. SYCARA, K., "Multiagent Compromise via Negotiation," in Distributed Artificial Intelligence, Vol. II, L. Gasser, and M. Huhns(Eds), Pitman, London,1989, pp.119 -138. ’- 332- agents .~crIntcractions with Protocols Andtheir flcills And dRt~ Computational[ I KnowledgeBase Behavior Model "Control Unit Functional Component Figure 1. Conceptual Modelof an Agent Figure 2. An Example Application in Database Management - 333 - i Agent Agent2 physical link~ Entity 3 Agent Agent41 Figure 3. Multi-Agent Frameworkfor System Integration - 334- ! Bare PCB Solder Paste [ [[ T T T Screen Plmthlg I Printed Circuits Boards Fuji 1 Chip Placement Machine Fuji 2 Chip Placement Machine Manual ln,peetion Station Au~ic Inspection Station ZevateehChip Placement Machine # Buffersfor Chip Placement Robot and PROM Progrannner Manual Assembly ¯ StationI Manual Assembly Station1 ¼ Solvent Cleaner Bath Oven Legend .............. SMT-based assemblyline (Feeder) ...... Final Inspection and Testing(FrO Conveyors Hgure 4. The Schematic of flae SMTEnvironment - 335- Parts in Stock Product Structure Inform~aon Manufaettaing Environment Customer/Sales Orders Part Demand Information Daily Schedules seneauling/ Dispatching Rulebase I Maehine./WIP Status Legend: i~ Database S/Wmodules 1 Figure 5. Information Infrastructure for Factory Integration - 336-, ~O(i. c.) (s pot-sizes]AG2) Figure 6. State Diagramfor the Workingof AgentAG1 (r Dot-sizes] AG1) Ready Idle ~.~ .... / W~ (r (i_ 2 e. [makespan] Figure 7. State Diagramfor the Workingof AgentAG2 [sequence] ~ , AG2~ (L c.) (s[makespan]AG2) Figure 8. State Diagramfor the Workingof AgentAG3 - 337 SchedulerClass Private: int crnt..day; Public: Staticint prod_mixrlg, prod_s~D; int no_of..jobs,prodFI FI; virtualfloat get_ufilityO - O; virtual void produceO - O; int schcduleO; Private: Private: Jnt no_of_prods,no_of_mchns, buffer[]; float dly_capaciw,makcspan~,proc[-JD, holdingl-l,setupD [-J []; flowline*lines[]; int on_lineD Static int WIDD; float get_utility0; void produce0; float get_.makcspanO; void get_sequenceO; void update_WIDO; Public: void no_eoord0; void eoord_scheme_l 0; void coord_scheme._20; void ,cogrd_seheme_30; Public: q fleet get..utUityO; void produceO; Factory Class FlowlineClass Figure 9. Class Structure of the ObjectOrientedSystem - 338 - FactoryScheduler Figure10. ApplicationInstance of the Object-Oriented System 3900 5600 3800 -=- total makespan -e- total cost ¯ 8700 ~o 5400 ~500 5200 ’ 34O0 5000 ’ 0 2 4 6 8 # ~ intcracticm 10 3300 12 Figure 11. Improvement in the Makespan and the Total Cost as a Functionof the Number of Interactions - 339- 5800 -800 ,5600 ’ 600 -B- total makeepan -e- total overtime _*2 54oo 400 ,~ 5200 200 5O00 0 2 4 6 8 10 0 12 # of intcractic=s Figure 12. Improvementin the Makespanand the Total Overtime as a Function of the Numberof Interactions Method w/o Coordination with Coordination Make,span 5950.13rain. 5996.37rain. Board-Days 535 84 Table 1. Improvement in Performance Due to Coordination - 340-