AGENT-BASED COLLABORATIVE WORK
ENVIRONMENT FOR CONCURRENT STRUCTURAL
DESIGN PROCESSES
Jochen Bilek1, Dietrich Hartmann2
ABSTRACT
Large engineering projects are organized as networked co-operations due to an increasing competition pressure and a high degree of complexity. One of the major challenges of these networked co-operations constitutes the coordination of the activities of all involved partici-pants. Recent software systems, however, fail for coordinating and effectively supporting these complex design activities. In this paper we propose a novel, holistic, three-tier-based multi-agent solution concept that overcomes these deficiencies and, thus, minimizes potential planning conflicts. The top-level tier represents the real world situation in which the partici-pating design experts are organized in temporary project works, holding varying roles. The middle tier maps the real world conditions into a set of interacting, design specific software agents that effectively support the structural experts while carrying out their concurrent ac-tivities. On the bottom tier, we’ve settled the required design resources (product models, pro-ject settings, etc.) that are prepared and integrated by software agents. Focusing on the mid-dle tier we have developed a holistic agent model for collaborative structural design that is prototypical implemented and evaluated by the multi-agent system ACOS.
KEY WORDS
Collaborative structural design, agent technologies, workflow concepts, high-level Petri nets, project management, distributed product models.
INTRODUCTION
Large engineering projects in structural design necessitate the close collaboration of different design experts and other specialists from different geographic locations for a certain time. We indicate such virtual project constellations as so-called networked co-operations. Net-worked co-operations in structural design exhibit significant benefits in particular for orga-nizing the intricate planning processes (e.g., Bilek et al 2005, Bretschneider and Hartmann 1999). During the last years, modern group-supporting software systems traditional email clients, document configuration and exchange tools (e.g. CVS, Email), shared workspaces or chat systems have been utilized for supporting these co-operations. During our research work we came to the conclusion that these state-of-the-art off-the-shelf systems are not sufficient
1 Dipl.-Ing., Institute for Computational Engineering, University of Bochum, Universitätsstr. 150, 44780
Bochum, Germany, Phone +49 234 32-26176, FAX +49 234 234 32-06176, [email protected]
2 Professor Dr.-Ing., Institute for Computational Engineering, University of Bochum, Universitätsstr. 150,
for supporting networked co-operations in structural design. All mentioned systems enhance the communication among the participating experts but do not incorporate any way to sup-port their coordination. However, the coordination of partners within a networked co-operation is of major importance for guaranteeing the correct activation and completion of activities. Coordination models also have to ensure the consistency of various partial product models that exist within a co-operation. Uncontrolled modeling may lead to inconsistencies in the global product model.
Formal process models such as Petri nets or EPK (e.g. Jensen 1998, van der Aalst 1998) are well known in computer science. Despite their popularity, these models have not been con-sidered for the adoption in recent groupware systems. The appreciation and implementation of these models in engineering informatics has also been pure for a long time. This circum-stance can be justified by the tremendous (if not impossible) challenge to map complex ac-tivities (e.g. planning, structural design), methods (e.g. finite element analysis, object-oriented modeling), roles and views (e.g. structural engineer, architect, client), documents (i.e. different syntax, semantics), and organizational concerns (i.e. the trend to virtual project settings, fluctuation of partners) prevailing in this field to a formal model. Moreover, the ap-plication environments that can be found at single partner sites are of heterogeneous nature. Partners insist on working with proprietary software, use incompatible document exchange formats, or have various hardware infrastructure with different access abilities to the Internet (e.g. Modem, DSL). A process model embracing all those different heterogeneous “parame-ters” is likely to become complex and unintelligible.
In the course of our research work we have conceived that a hybrid solution approach com-bining these “parameters” (Petri nets, product models, heterogeneous hard- and software, etc.) with agent technologies provides sophisticated means to ensure coordination and effec-tively supports collaboration in the structural design domain. In addition, the agent technol-ogy hereby serves as a high-level mediator between human experts and the required design resources.
AGENT TECHNOLOGY FUNDAMENTALS
Multiagent systems (MAS)are a rapidly developing area of research that emerged from the distributed artificial intelligence (e.g., Wooldridge 2002, Ferber 1999). We define a software agent as an “encapsulated software unit that is situated in a dynamic, heterogeneous envi-ronment, capable of solving well defined tasks autonomously and pro-actively in co-operation with other agents by order of personal (human) or non-personal principals”. A software agent, hence, is to be considered as an autonomous problem solver that is capable of proactively interacting and communicating with other agents on a high semantic, ontology-based level (Wooldridge 2002) using agent interaction protocols (AIP). An AIP determines the typical pattern of message exchange for agent communication combined with a common message content understanding based on a domain specific ontology. Accordingly, a multi-agent system (MAS) is understood as a loosely-coupled network of several, autonomous and interacting problem solvers (= software agents) that work together to solve some problems being above their individual capabilities. The sum of several interacting agents' capabilities in a MAS, therefore, is likely to exceed the sum of its individual parts.
THREE-TIER MODEL FOR COLLABORATIVE STRUCTURAL DESIGN
Figure 1 depicts our proposed three-tier-based model for collaborative structural design. The three levels illustrate the complex coactions between human actors, software agents and de-sign specific resources.
On top of the hierarchy, the real world tier, the human experts reside. They participate in a collaborative project work which is characterized by dynamic organizational structures, roles, responsibilities and varying competencies. The middle tier maps the real world conditions into a set of interacting, design specific software agents that effectively support the structural experts while carrying out their concurrent activities. On the bottom tier, we’ve settled the required design resources (product models, project settings, etc.) that are prepared and inte-grated by software agents.
Figure 1: Three-tier Model for Collaborative Structural Design
Focusing on the middle tier we have developed a holistic, generalized agent model for col-laborative structural design that is prototypical implemented and evaluated by the multi-agent system ACOS (Agent-based COllaborative Structural Design System)3. The generalized agent model incorporates important characteristics of structural design in terms of the follow-ing agent-based submodels: i) agent-based co-operation model, ii) agent-based process sup-port model, iii) agent-based product model, iv) agent-based software integration model and v) agent-based knowledge integration model. In this paper we focus on the submodels i)-iii). Each submodel is realized by one or more domain specific software agents that are delegated and supervised either by the design experts or by other agents in ACOS.
Within the agent-based co-operation model the project related organizational structures and management issues such as responsibilities, data access administration, etc. are mapped and assigned to co-operation agents.
The agent-based process support model is to control the complex, project-related work-flows. For that we designed workflow agents that allocate design tasks either to correspond-ing human actors or to other accessible project resources such as accessible software applica-tions.
With the agent-based product model we realized the integration of product models into the MAS. Each product model deployed in a project work is provided, administrated and con-trolled by a product model agent.
The integration of heterogeneous engineering standard software (such as CAD-, FE-programs, databases) is provided through software wrapper agents. Within the agent-based software integration model wrapper agents act as an interface between the MAS and lo-cally installed software. By that, they make the wrapped software accessible to all other agents and/or human design experts in the agent network.
With in the agent-based knowledge integration model specific expertise agents are de-ployed. They integrate and provide specific knowledge as provided in common standards4 and regulations and make it available for all participating structural engineers.
MULTIAGENT SYSTEM FOR COLLABORATIVE STRUCTURAL DESIGN ACOS
The proposed agent model for collaborative structural design is realized and implemented by the multiagent system ACOS. ACOS concentrates on the realization of the core functional-ities of collaborative design that is to say the coupling of co-operation, product and process models provided by co-operation, workflow and product model agents.
Software agents were implemented in the programming language Java 1.4. using JADE5 both as agent development platform and as executive agent runtime environment. JADE is a com-pletely FIPA6-compliant agent system that facilitates the distribution of agents in a computer network. Agent oriented design and modeling is based upon the Agent Unified Modeling Language (AUML), an enhancement of object oriented technologies for modeling software agents and agent interactions.
THE CO-OPERATION AGENTS
The agent-based co-operation model is realized by two different agent categories: a) the ge-neric project agent representing a project work and b) the gege-neric personal co-operation agent works as interface between human experts.
4 In Germany the DIN standard of the German Institute for Standardization is quite prevalent, e.g. DIN 18800
regularizes the structural safety verification concept for steel constructions. For the European Union the Eurocode standard (EC) is of major importance.
5 Java Agent Development Environment, University of Parma research project, Italia, http://jade.cselt.it 6 Foundation for Intelligent Physical Agents: FIPA is an organization aiming at standardizing agent
a) The generic project agent
The generic project agent administrates and controls the project model. The project model provides overall project information, project related roles, access objects and a user list. The user list determines the valid human actors and ACOS agent participating in the project work. Every user may be equipped with several roles constituting project related access to services that are provided by other ACOS agents. The product model and workflow agents for example have to interact with the project agent to check access authorization of actions a user instructs them to perform. For that, the project agent itself offers three services (see Fig. 2): i) the project model modification service (authorized users may change project model parameters), ii) the project model request service (every agent may ask for selective project information) and iii) a project model notification service (automatic notification about project model modifications). For accessing the offered project services with an AIP a project ontol-ogy was designed defining agent actions (AddUser, RemoveUser, AddRole, etc.), project specific concepts (User, Role, etc.) and predicates (UserAdded, UserRemoved, etc.). Every product model is stored in a XML file and, thus, can be modified and/or reused in another project environment easily.
Figure 2: Offered services of the project agent modeled with AUML
b) The generic personal co-operation agent
Every human design expert is represented by a particular personal co-operation agent (PCA) that constitutes a kind of gateway to other agents and their offered services like the workflow agent. The personal co-operation agent provides an adaptable and configurable graphical user interface composed of loadable user-interaction-modules (UIM). Every UIM supplies graphic enabled access to specific services offered by other ACOS agents. Depend-ing on the user’s input an UIM initiates the interaction with the requested ACOS agent and, thereby, encapsulates the agent communication, ontology and AIP the requested service re-lies on (see Fig. 3). In turn, the retrieved service results or even failure messages are visual-ized in the UIM in a user-friendly way.
Several UIMs have been implemented: a project UIM to control and instruct the project agent, a product model UIM to take an active part in concurrent product modeling, a work-flow UIM to participate in a design workwork-flow, a communication UIM to perform asynchro-nous and synchroasynchro-nous communication between project partners, etc.
Figure 3: UIM concept (human – agent and consecutive agent – agent interaction)
THE GENERIC PRODUCT MODEL AGENT
For the provision of STEP7 compliant product models like CIS/2 (CIM Steel Integration Standard), a major product model specification for steel constructions (Reed 2002), or IFC (Industry Foundation Classes) a product model agent (PMA) has been implemented. A PMA is capable of managing and providing exactly one deployed STEP product model for concurrent and collaborative preparation. We implemented a hybrid, partial replicated data management strategy meaning that every designer is capable for designing structural ele-ments in his private workspace. Supervisory control and synchronization of all partial prod-uct models, however, is carried out by the PMA. Consequently, we had to implement the services depicted in table 1.
Table 1: Offered services of the product model agent
service service description/ intention
transaction service Allows for creating, removing and modifying product model entities. request service Facilitates the transmission of requested product model entities. synchronization
service
Synchronizes the personal co-operation agents that are participating in a common product model construction process.
notification service Notifies other registered ACOS agents about product model changes. Figure 4 demonstrates the interaction between several ACOS agents dealing with a common product model. Let’s assume design expert A wants to modify structural element with ID #1011. Before sending the modified entity to the database agent the PMA has to check the authorization of the intended operation. If the operation was allowed and permitted the PMA, thence, has to synchronize the participating designers A and even B. Moreover, in our sce-nario the workflow agent has to be notified about the product model entity modification for the workflow state depends on the entity’s state.
Figure 40+ : Exemplary agent interaction diagram demonstrating product model service usage
From the implementation perspective we had to create an object model for the integration of STEP compliant product models into the PMA. For that, we realized the STEP2Java genera-tor. The STEP2Java generator is both a common library containing abstract supertypes for simple and complex STEP entity types and generator that creates a Java class hierarchy out of any arbitrary STEP compliant product model specification.
Based upon the STEP2Java library we even more developed a rudimentary 3D Viewer and Editor for visualizing and manipulating IFC and CIS/2 product models. The STEP3DViewer was integrated into the product model UIM of the personal co-operation agents (see Fig. 5) such that the co-operating designers can comfortable access and modify a CIS/2 or IFC prod-uct model.
Figure 5: STEP3DViewer with IFC building model (left side) and CIS/2 structural steel model (right side)
THE GENERIC WORKFLOW AGENT
Workflow-based coordination model using HCT-Petri nets
The applied process support model had to fulfill several major requirements that derive from the specific characteristics of collaborative structural design. On the one hand the process model had to support concurrency; on the other hand it had to facilitate time dependent ac-tivities e.g. a given task has to be completed at a given point in time. Moreover, the process model had to provide an opportunity to integrate any kind of resource (human engineers, product model data, engineering software e.g. for the (semi-)-automatic execution of proc-esses, etc.). We analyzed different Petri net (PN) types with respect to the proposed require-ments. As a result high-level, colored, timed, hierarchical Petri nets (HCTPN) turned out to fulfill our pre-conditions in a convenient way. In particular, PNs are well suited for systems in which communication, synchronisation and resource sharing are of great importance like in the structural design domain. Another advantage of colored, timed Petri nets is that they can be described with the standardized Petri net markup language (PNML) and provide means for an intuitive graphic representation (see Jensen 1998, van der Aalst 1998). Fur-thermore, it is possible to concatenate several process chains by using the more complex hi-erarchical colored Petri nets.
Activity allocation and workflow services
For each modeled planning process a generic workflow agent (WFA) is instantiated with appropriate parameters. The workflow agent embodies a HCTPN based workflow engine that dispatches fireable work items proactively to appropriate designers and their personal, co-operative agents respectively. The individual structural designers then may decide whether to open the received work item or not. Once one of the authorized designers has opened the eyed work item it is no longer fireable. An already opened work item we call activity. An activity may be cancelled or closed by its associated design expert. If closed the workflow switches to the next state, if cancelled the work item’s state is reset to fireable again. We even implemented a PCA for mobile devices such that a designer, although currently on the way, is capable of receiving work items. The PCAs, therefore, work as task manager for their principals. A work item, hereby, is a transition coupled with a specific role stemming from the project agent the design participants may exhibit or not. With that, a sophisticated and expedient allocation of work items to be executed is realized. However, beyond the role based transitions the workflow agent currently supports even more transition types: interval and delay timed transitions and subnetting transitions that instantiate specified, modularized sub-workflows automatically. Furthermore, we created an activity interface for arbitrary, (semi-) automatic application based tasks controlled by the activity manager. The activity manager provides the possibility to link any fireable transition to an implemented, applica-tion dependent activity with customized, advanced features e.g. for the automatic shipping of emails or for the automatic connection with a product model agent. Besides, arcs can be la-belled with formulas that make use of global system variables designed and controlled within the attribute manager.
The core services of the workflow agent and its interaction with other agents is to be demon-strated with the design scenario illudemon-strated in figure 6. A simplified workflow was modeled
coordinating the detailing of the depicted bridge structure, an arched, pedestrian steel bridge near the city of Dessau, Germany. The bridge’s steel framework is composed of three main structural elements: i) the steel arch, spanning 108m with a slope of 17°, ii) 15 tension rods, that are associated with the arch and iii) the bridge deck composed of several steel panels. The three structural elements – including the junction points – have to be detailed and con-structed concurrently by arbitrary technicians holding the “structural_engineer” role. After the detailing of all parts is finished a responsible person with role “project manager” has to approve the worked out results (workflow attribute “APPROVED”). If the detailing is not approved the concurrent detailing process restarts.
In our scenario, project manager “Muller” equipped with a mobile device starts the detailing workflow. Afterwards, the workflow agent activates its workflow engine and the three work items representing the concurrent detailing activities are fireable and send to all participants holding the “structural engineer” role. Meier belongs to the “structural engineer” group and, therefore, is notified about the three potential activities to be carried out. He opens the work item “detail bridge arch” and his assigned PCA notifies the WFA about the started activity. The WFA, in return, updates the workflow state and notifies the workflow members. Only the work items “detail tension rods” and “detail bridge deck” remain fireable. This workflow state is exactly displayed in figure 6: the two remaining work items are marked as red in the Petri net panel; the mobile device of project manager Muller also indicates the two work items left for preparing.
RELATED WORK
The development of sophisticated computer-supported, collaborative process support models for the structural design domain is an emerging field of research due to the increasing avail-ability of powerful hardware and high speed networks, particularly the worldwide internet. In the recent years, several approaches to support co-operative design processes in the structural design domain and - more generally in the AEC sector - have been made.
In this context, workflow-based systems have been taken into account for the coordination and control design tasks. A major research work, hereby, is the PROMISE project. PROM-ISE is a client-server based workflow simulator for the definition and instantiation of colored Petri nets. Workflows are classified as structured, unstructured and semi-structured struc-tural engineering processes. PROMISE even contains a workflow engine to distribute fire-able work items to SOAP8-connected clients (Greb et al 2004). VEGA is another, important workflow-based system (Zarli and Poyet 1999). It supports co-operative teamwork by linking digital product models with WfMS concepts. The analyzed, workflow-based approaches sub-stantiate the fundamental need for integrating sophisticated process models into collaborative software platforms in the structural engineering domain. Beyond, the deployed process mod-els have to be affiliated to standardized, shared product modmod-els as figured out before. We incorporated workflow-based concepts and product model based approaches into specific ACOS agents as illustrated before.
In recent years, agent-based research projects in various engineering disciplines are on the rise. Theiss (2005) has conceptualized MADITA, a multiagent system for network-based fire engineering. In MADITA, agents are responsible for the accurate allocation of fire protection specific information to the participating designers during all planning phases. Similarly, Mit-trup et al (2003) propose a computer-based monitoring system for safety-relevant engineer-ing structures in which purposive and precise information distribution is delegated to inter-acting agents. Even in the field of finite element computations and optimization (e.g. Mueller et al, 2005), multi-site scheduling (Sauer et al, 1998) or CAD support (Rosenman and Wang, 2001) agents are successfully employed. Moreover, several agent-based approaches to model workflow systems have been ascertained (e.g., Purvis et al 2004, Hawryszkiewycz and De-benham 1998). Summarizing, agent technologies eminently support large-scale software en-gineering of distributed systems and exhibit an enormous potential to support collaborative, structural design, particularly in combination with sustainable process and product models as we evaluated with the ACOS prototype.
CONCLUSIONS
The related works show that much effort was carried out to improve co-operation and col-laboration in particular fields of structural engineering. The hereby developed software sys-tems and subjective solution concepts mainly concentrate on a qualified perspective which unfortunately is not completely sufficient and adequate for the holistic and overall support of collaborative structural design in general. With our proposed MAS architecture, we merge multiagent with approved engineering-based concepts and technologies to a novel, adaptable
platform comprising sophisticated networked process and shared product model support. Furthermore, due to the agent-based concepts utilized our proposed ACOS system is strongly adaptable, expandable and customizable. For that reason, it is generally applicable to support any arbitrary structural design project work independently from its particular composition and the structure to be designed, computed and detailed co-operatively.
OUTLOOK
We see the further completion and enhancement of the MAS prototype as the major mile-stone. Some of the presented software agents are implemented rudimentarily so far, espe-cially the XPS and software wrapper agents. Furthermore, in the present paper we could al-ready exemplify the benefit of our approach by means of a scenario stemming from the struc-tural design domain. We believe, however, that our holistic approach for the coordination of design processes can be adopted to other fields in the area of civil and building engineering, such as facility management or constructional engineering.
ACKNOWLEDGMENTS
The research work, reported here, is currently supported by funds of the German Research Foundation (DFG), within the scope of the priority program 1103 “Networked-based co-operative planning processes in structural engineering” (PP1103 1999). All authors gratefully acknowledge the valuable funding provided by the DFG. Moreover, the authors thank all team members of the agent systems working group for their close collaboration and benefi-cial teamwork over the last few years.
REFERENCES
Bilek, J., Alda, A. Hartmann, D., Cremers, A.B. (2005). "Integrated Multiagent and Peer-to-Peer-based Workflow-Control of Dynamic Networked Co-operations in Structural De-sign." 22th CIB W78 Conf. on Information Techn. in Construction, Dresden, Germany. Bretschneider, D., Hartmann, D. (1999). "Collaborative and Concurrent Engineering in the
Construction Industry", Special Issue of Artificial Intelligence in Engineering.
DFG-PP1103 (1999). "Network-based Co-operative Planning Processes in Structural Engi-neering", priority program 1103 of the German Research Foundation, http://www.dfg-spp1103.de.
Ferber, J. (1999). Multi-Agent Systems: An Introduction to Distributed Artificial Intelligence. Addison-Wesley Professional, Harlow, Essex, UK.
Greb,S., Meissner, U., Rüppel, U. (2004). "A Petri Net based Method for Distributed Process Modeling in Structural Engineering." Proceedings of the 10th International Conference on Computing in Civil and Building Engineering (ICCCBE-X), Weimar, Germany.
Hawryszkiewycz, I.T., Debenham, J. (1998). "A Workflow System based on Agents." 9th Int. Conf. on Database and Expert Systems Applications (DEXA), Vienna, Austria, 135-145. Jensen, K. (1998). "A brief Introduction to Colored Petri Nets." Proc. of the Workshop on the
Mittrup, I., Smarsly, K., Hartmann, D., Bettzieche, V. (2003). "An Agent-based Approach to Dam Monitoring" 20th CIB/W78 Conf. on Information Technology in Construction, Waiheke Island, New Zealand, 239-246.
Mueller, M., Ruben, J., Meissner, U. (2005). "Dynamically Distributed and p-Adaptive FE-Simulation of Soil-Structure-Interaction based on Multi-Agent-Systems." 3rd MIT Conf. on Computational Fluid and Solid Mechanics, Cambridge, USA, 993-997.
Purvis, M., Savarimuthu, B.T.R., Purvis, M.K. (2004). "Evaluation of a Multi-agent based Workflow Management System modeled using Coloured Petri Nets." 7th Pacific Rim In-ternational Workshop on Multi-Agents, Auckland, New Zealand, 206-216.
Reed, K.A. (2002). "Role of the CIMsteel Integration Standards in Automating the Erection and Surveying of Constructional Steelwork." 19th Int. Symposium on Automation and Robotics in Construction (ISARC), Gaithersburg, Maryland, 15-20.
Rosenman, M.A., Wang, F.J. (2001). "A Component Agent Based Open CAD System for Collaborative Design." Journal of Automation in Construction, 10(4), 383-397.
Sauer, J., Freese, T., Teschke, T. (2000). "Towards agent-based Multi-site Scheduling." ECAI 2000 Workshop: new Results in Planning, Scheduling & Design, Berlin, 123-130. Theiss, M. (2005). "Agentenbasierter Modellverbund am Beispiel des baulichen
Brandschut-zes in der Gebäudeplanung." Ph.D. Diss., Institute of Numerical Methods and Informatics in Civil Engineering, Technical University of Darmstadt, Germany.
Van der Aalst, W.M.P. (1998). The Application of Petri-Nets to Workflow Management, Journal of Circuits, Systems and Computers, 8(1), 21–66.
Wooldridge, M.J. (2002). Introduction to Multi-Agent Systems. John Wiley & Sons, Chiches-ter, England.
Zarli, A., Poyet, P. (1999). "Distributed Architectures and Components for the Virtual Enter-prises." 5th Int. Conf. on Concurrent Enterprising (ICE'99), Den Haag.