You are on page 1of 11

Lei Feng

Department of Electrical & Computer Engineering, University of Toronto, Toronto, Canada M5S 3T6 e-mail: fenglei@control.utoronto.ca

Achieving Online Coordination in Real-Time Collaborative Assembly Modeling: A Supervisory Control Approach
A real-time collaborative assembly modeling process involves the teamwork of multiple designers. Without adequate coordination, this multi-user based modeling process could be more time consuming, or even divergent, than the conventional single-user-based process. This paper thus presents a supervisory control approach to achieving online operational coordination of the multi-user based assembly modeling process. In this approach, we treat the real-time collaborative modeling process as a discrete-event system (DES) and then obtain an effective coordinator for the process control via the supervisory control theory (SCT). Our work extends the framework of SCT to this new application so that the assembly modeling operations and its desired operational behaviors can be modeled and controlled by a set of automata. With them, we further propose a modular supervision approach to nd a group of modular supervisors. These supervisors compose the online coordinator to enforce the control specications and to yield a nonblocking controlled process. The results show much promise for SCT in the new application domain of collaborative CAD (CCAD). DOI: 10.1115/1.2194907 Keywords: collaborative assembly modeling, coordination, supervisory control, discreteevent system, collaborative CAD, team-based concurrent design

Li Chen1
Systems Department, United Technologies Research Center, East Hartford, CT 06108 e-mail: chen12@utrc.utc.com

Introduction

The niche of collaborative assembly modeling arises from the client-supplier-based design outsourcing paradigm in current industrial design practice. A real-time collaborative assembly modeling process takes place when a group of designers, who are the CAD system users2 and are often geographically dispersed, teams up and concurrently builds a 3D assembly model in a distributed computing environment 16. This team-based assembly modeling process is enabled by means of a real-time collaborative assembly modeling system. Compared with the conventional assembly modeling systems, it emphasizes the feature of real-time collaboration so that one users work is visible to the entire group instantly. As a remarkable advantage over the existing CAD modeling systems, this emerging system brings about closer connection in real-time teamwork, making it possible to shorten the leadtime in building up complex 3D assembly models. Unlike the case in the single-user based processes, the users of this emerging system have to face a dynamic working environment in which they need to cooperate with each other in real time along the modeling timeline. Evidently the efciency of the realtime collaborative assembly modeling process relies crucially on the operational coordination among the users. At some point, this multi-user modeling process can be analogously compared with a physical multi-robot assembly line if we envision the users as robots and the 3D models as physical products. This analogy indicates the possibility of extending the control theory from physical assembly line to collaborative assembly modeling for operational coordination.
Corresponding author. In this work, the terms users and designers are used interchangeably according to the context of the paper. Contributed by the Computer Aided Product Development CAPD Committee of ASME for publication in the JOURNAL OF COMPUTING AND INFORMATION SCIENCE IN ENGINEERING. Manuscript received September 23, 2003; nal manuscript received December 15, 2005. Assoc. Editor: D. Rosen.
2 1

When multiple designers are jointly constructing a 3D assembly model in real time, they may unconsciously perform some conicting operations and thus give rise to model inconsistency and/or misplacement of some components. For example, if one user attempts to move his part against another one that is being moved at the same time, the nal coordinates of the two parts may not be correctly calculated without proper coordination of the two operations. A trivial way to maintain the model consistency is to recalculate the locations of the assembled components after every operation. However, this approach would incur heavy computing workload on the central server in which the CAD data reside. The demanding workload could degrade the real-time modeling performance and, sometimes, even cause the server to collapse. Consequently, a proper coordinating scheme for real-time collaborative assembly modeling is needed to preferably satisfy three requirements: 1 maintain the model consistency, 2 minimize the computational complexity, and 3 maximize users operational freedom. While achieving a general coordinating scheme for arbitrary collaborative assembly modeling processes is our nal goal, this paper focuses on the modeling processes for evolutionary design or redesign only, because most industrial designs are developed through the redesign of existing ones. In this circumstance, the primary dependency relationships among assembly components are available. For the modeling sequences of the assembly components, there are often some precedence constraints posed by some design priorities, such as datum ow chain DFC 7. These precedence constraints imply a modeling plan to follow for the users of the real-time collaborative assembly modeling system so that the problematic operations can be avoided and the computation of assembly constraint satisfaction can be preformed incrementally according to the plan. In general, the plan is enforced by a coordinator or leader of the collaborating users or design team, who monitors the working process while coordinating the users on their actions. A process plan can theoretically ensure the synergistic construcTransactions of the ASME

252 / Vol. 6, SEPTEMBER 2006

Copyright 2006 by ASME

tion of a 3D assembly model in real time, but there is no guarantee in practice that the real-time process can always follow the plan to implement. It is thus desired to have a process controller online to automatically guide the entire process and make decisions in real time. Envisioning the close connection between online coordination and control theory, we advocate the use of the supervisory control theory SCT for achieving an operational coordinator able to monitor and control in real time the assembly modeling process among the collaborating users. The formal theory will lead to efcient algorithms and enable the decisions to be optimal while ensuring the process to be nonblocking. In overview, our supervisory control approach for online operational coordination consists of three main steps: 1. treat the assembly modeling process as the plant of a discrete-event system DES and model it by nite state automata based on formal language theory Sec. 4, 2. formulate the desired operational behaviors as control specications for the DES and model them as a set of automata by formal language theory Sec. 5, and 3. synthesize a proper supervisory controller supervisors from the plant and the control specications in the framework of SCT Sec. 6. In what follows, we will give a background review in Sec. 2, and then present a bench clamp example in Sec. 3 for better illustration of the inner workings of our supervisory control approach. The nally obtained supervisors are a group of automata that allow users for the maximal operational freedom under the given plan while guaranteeing the system property of nonblocking, which will be summarized in Sec. 7 along with concluding remarks in Sec. 8.

Background

2.1 Collaborative CAD Systems. Collaborative CAD CCAD systems can be viewed as an evolution and extension to the traditional, single-user-based CAD systems and are aimed to facilitate and support team-based design activities involving multiple designers. Currently there exist, while still few in number, two kinds of CCAD-related systems in the literature: CAD conference systems and Internet-based CAD systems. CAD conference systems enable designers to hold virtual design meetings via the Internet e.g., 8. In such systems, audio and video communications are two typical means to support interactions between designers. These systems provide a shared whiteboard that allows designers to collaboratively view and annotate 3D objects. In spite of supporting the collaborative review of 3D models, these systems do not lend themselves to realtime CAD modeling activities. On the other hand, Internet-based CAD systems are specically designed to allow designers to access a feature-based 3D modeling system via the Internet e.g., 9,10. Although such systems make it possible for distributed designers to share a feature-based CAD system, the issue of realtime multi-user interaction enabling real-time collaboration on CAD between distributed designers has not been well addressed. To this end, our research effort is directed toward an Internetenabled CCAD system dedicated to platform-independent 3D assembly modeling, which is referred to as e-Assembly 16. Unlike the traditional CAD systems, e-Assembly provides a teambased design environment that enables a group of designers to collaboratively build a 3D assembly model in real time over a distributed computing network. Thanks to the capability of realtime collaboration, e-Assembly facilitates resolving assemblyinduced conicts in the early stages of team-based design. As part of this effort, this paper reports one of the key enabling techniques used in e-Assembly that allows coordinating team-based assembly modeling operations automatically in real time. 2.2 Supervisory Control Theory. A discrete-event system DES is a dynamical system that evolves according to asynchro-

nous occurrence of certain discrete events 11. A supervisory controller can prevent the DES from any undesirable behavior by disabling some events in the dynamic process. Supervisory control theory SCT has been developed to enable the monitoring and control of various complex DES in a wide range of applications, such as manufacturing, robotics, vehicular trafc, logistics, computer, and communication networks e.g., 1216. Supervisory control is a relatively new control paradigm for the event-driven dynamical systems, as opposed to the time-driven dynamical systems addressed in the classic control theories. The premise of supervisory control is that the system behavior is not satisfactory and must be modied by control actions. Hence, the goal of supervisory control is to prevent the unsatisfactory system behavior by restricting the systems operation so that it satises a set of specied requirements at all times. In this paper, we intend to extend the formal language-based SCT, originated by Ramadge and Wonham 17,18, to achieve online operational coordination in real-time collaborative assembly modeling. The supervisory control paradigm in SCT separates the concept of plant open-loop dynamics from the feedback control so that the traditional control theoretic notions such as controllability, observability, modularity, and decentralized and hierarchical control, can be exploited. In actual applications, the plant is modeled as an automaton G. The event set in automaton G is named alphabet . The desirable behavior of the controlled system is called a control specication, also modeled as an automaton E, and must be achieved by the supervisory controller for the plant. A supervisory controller closes the loop of a controlled DES and enforces the plant to follow the control specications. This controller can make some events that are originally enabled in the plant disabled, thus preventing them from occurrence. The events preventable by a supervisory controller are called controllable and the others called uncontrollable. Hence, the alphabet can be partitioned into two disjoint subsets, controllable events c and . uncontrollable events uc, such that = c uc The supervisory control problem addressed in this paper can be stated as follows: Given a plant G over alphabet with its par and control specications modeled as E, nd a tition = c uc minimally restrictive supervisor S such that the controlled systems S G is nonblocking and always meets the control specications. A minimally restrictive supervisor provides the maximal freedom for the controlled DES, given the same plant and control specications, and a nonblocking system can always complete the required tasks in nite steps. The nonblocking property can be used to dene many system behavioral properties, such as deadlock freedom and reversibility. The supervisory control problem has been addressed both theoretically and computationally in many application domains, but not in the context of team-based collaborative CAD yet. Substantial knowledge about DES and SCT can be found in, for example, 19,20.

Collaborative Assembly Modeling: An Example

To facilitate presenting our supervisory control approach, the redesign of the bench clamp assembly model in Fig. 1 4 is used as an illustrative example. This assembly model consists of nine components, as shown in Fig. 2 and Table 1, and involves nine designers each responsible for one component. The dependency relationships between the components are abstracted in a liaison graph, where each node stands for a component and each edge, or liaison, represents a geometric constraint between a pair of components 21. The directions of the edges stand for the datum ow chain DFC of the model in the corresponding directed liaison graph shown in Fig. 3. Figure 4 gives a preferred process plan of the assembly modeling operations, which is decided mainly by the DFC in Fig. 3. This operational plan provides precedence constraints on the modeling sequences to reduce the computational complexity. In this gure, each node stands for a liaison setup and each directed edge SEPTEMBER 2006, Vol. 6 / 253

Journal of Computing and Information Science in Engineering

Table 1 Bill of material for the bench clamp assembly Index 0 1 2 3 4 5 6 7 8 Name Base Frame FBlock Nut Jaw Screw Handle Head JBlock Quantity 1 1 1 1 1 1 1 2 1 Function Locating the bench clamp Supporting other components Attached to Frame as an adjustable xture Connecting Screw with Frame Clamping working parts Transporting movement and force to Jaw Magnifying the torque on Screw Holding Handle on Screw Attached to Jaw as an adjustable xture

Fig. 1 Assembly model for a bench clamp

for a precedence constraint between two corresponding liaisons. For example, edge ei , e j implies that ei must be completed before e j. The AND operator between two arcs conveys that the next liaison is executable only after both of its previous liaisons are established. For instance, liaison e5 in the diagram cannot be set up until both liaisons e3 and e4 are completed. According to this plan, we should rst constrain Frame to Base, and then both Nut and Jaw to Frame. The two constraining operations can be done concurrently. Since the resulting DOFs are 0 Nut and 1 Jaw, respectively, we should further constrain Screw to Nut in the next operation, thus leading to DOFScrew = 1. Next, we can constrain Screw to Jaw or Jaw to Screw, for they have the same DOF. Afterwards, there are three parallel branches following it, namely, FBlock to Frame, JBlock to Jaw, and Handle to Screw. This assembly modeling process is ended by constraining Head to Handle.

. The transitions dened in A induce the transition set T q , , q q = q , and . Each arc in the graph is labeled with a corresponding event in . The entrance arrow denotes the initial state q0 and an exit arrow denotes one marker state. If any state in Q that is reachable from the initial state q0 in the state transition diagram can also reach a marker state in Qm, then automaton A is nonblocking. Automaton theory is closely related with formal language theory, which is the theoretical foundation of SCT. An event string s over is dened in A if there exists a directed path starting from q0 and labeled as s in the state transition diagram of A. All the event strings dened in A constitute the closed language LA. The event strings leading to some marker states in Qm, which represent completed tasks, compose the marked language of A:
LmA s LAq0, s Qm 1 In application to collaborative assembly modeling, the plant is composed of the automata associated with all individual users. Since the plant corresponds to the open loop dynamics of a control system, the constraints on the users operations due to their interactions and available resources are not considered in the plant model. A typical operational cycle of one users assembly modeling operation should encompass not only the users operational actions on a client computer but also some related services provided by the server say, the computation of a components location and the maintenance of a constraint network. Therefore we consider such an operational cycle as one transaction consisting of three successive activities: EditingThe user who initiates a transaction should edit the geometric constraints between his component and any other adjacent component. Hence, we use event Eij to characterize such an editing activity; that is, the

Plant Modeling Based on Transactions

In this section we show how to model the plant and control specications of a collaborative modeling process by means of SCT. While the plant describes all possible operations of the collaborating users, the control specications prescribe the desired behaviors of the plant by imposing a set of operational constraints on the users in accordance with the process plan. Then, from both the plant and the control specications, we can nd the desired supervisory controller able to coordinate the participants of the real-time collaborative assembly modeling process. In the framework of SCT, the plant, control specications, and supervisors are all modeled as automata. An automaton is a vetuple A = Q , , , q0 , Qm. Q is the state set; is the nonempty event set called alphabet; is the transition function dened as : Q Q; q0 Q is the initial state; and Qm Q is the set of marker (terminal) states. If Q is a nite set, then A is called a nite automaton. The automaton A can be represented by a directed graph called the state transition diagram, in which nodes signify the states in Q and arcs indicate the transitions dened by

Fig. 2 3D models of the individual components

Fig. 3 Directed liaison graph for the assembly model

254 / Vol. 6, SEPTEMBER 2006

Transactions of the ASME

Fig. 5 Gi for transaction Ti

modeling process. Hence the eight users will be modeled to achieve the plant. Let Ti i = 1 , 2 , . . . , 8 denote the transaction called upon by the user responsible for component i. Accordingly, we can obtain the alphabets of the transactions associated with the eight users: 1 = E11, E12, E13, E14, C1, L1, R11, R12, R13, R14 2 = E22, C2, L2, R22 3 = E33, E35, C3, L3, R33, R35 4 = E44, E46, E49, C4, L4, R44, R46, R49 5 = E55, E56, E57, C5, L5, R55, R56, R57 6 = E67, E68, C6, L6, R67, R68
Fig. 4 Process plan diagram for the bench clamp modeling

7 = E78, C7, L7, R78 8 = E89, C8, L8, R89

user initiates transaction Ti to edit liaison e j. This event Eij is considered to be controllable in the sense that it can be ensured to occur or disabled during the real-time process. ComputingAfter the establishment or modication of a liaison, the server must compute the new locations of the related components according to the updated constraint network of the assembly model. Hence, we use event Ci to characterize such a computing activity pertaining to Ti. This event Ci is considered to be uncontrollable in the sense that it cannot be prevented from occurrence. Locating / RollbackIf the computation successfully terminates, some components in the assembly model will be assigned new locations. Hence, we use event Li to characterize such a locating or relocating activity after a successful computation. This event Li is considered to be uncontrollable. On the other hand, if the preceding computation fails for example, when some components are overconstrained, the transaction will roll back the induced effects on the assembly model. At this point, we use event Rij to characterize such a rollback event; that is, transaction Ti removes liaison e j and revokes all the effects due to the editing of liaisone j. This event Rij is considered to be uncontrollable.

which nally leads to the alphabet of the global plant G as i8=1i 2 and c E11 , E12 , E13 , E14 , E22 , E33 , E35 , E44 , E46 , E49 , E55 , E56 , E57 , E67 , E68 , E78 , E89. Figure 5 exhibits the state diagram of the automaton model for transaction Ti associated with the ith component i = 1 , 2 , . . . , 8, where the controllable events are marked with a switch symbol . The transitions from state 0 to 1 plus the self-loops at state 1 are all labeled with the editing events of Ti. For example, the editing events of T1 are E11, E12, E13, and E14, meaning that transaction T1 can edit any of its adjacent liaisons in the liaison graph. Next, since the failure in one computation may trace back to affect the adjacent liaisons of Ti, the rollback events are thus considered for these liaisons at state 2 following the computing event Ci. The computation associated with transaction Ti can be either the direct result of the editing operations of Ti or the indirect effect of other transactions through the constraint network. Last, a complete transaction should result in a successful modication to locate or relocate a component, which is labeled by the locating event Li, and thus state 1 is the marker state. Automaton Gi is a generic model that can be used as a template for any transaction in the real-time collaborative assembly modeling system. To obtain the concrete automaton model of a transaction, one only needs to modify the event indices. The global plant model G is hence scalable and reusable, as one component requires only one transaction model. For the bench clamp, we have eight transaction models in total whereby the global plant model for its modeling process can be nally determined through synchronous product of the eight automata: G = i8=1Gi 3 which involves 6,561 states and 146,529 transitions. Note that synchronous product is an associative and commutative binary operation of automata 19,20. In this work, the computation of SEPTEMBER 2006, Vol. 6 / 255

The transaction described above also possesses the common properties of a classical transaction in database systems theory 22. In this work, we model each transaction of one user as an automaton and use it as an underlying constituent of the global plant. For brevity, we will use the component index of the bench clamp in Table 1 to cite each of the assembly components. Since Base is xed as a global reference throughout the whole process, only eight designers will be actively involved in this collaborative

Journal of Computing and Information Science in Engineering

synchronous product, as well as all other automaton computations, is implemented using XPTCT software3 20.

Modeling of Control Specications

Control specications are the desirable behaviors of the plant and will be realized by supervisory controllers. Since the plant model G allows for all possible operations, the control specications must enforce the collaborating users to follow the given process plan so as to avoid conicting operations. The control specications for this purpose are called safety specications. On the other hand, the control specications should also give some constraints to assure the successful completion of all modeling tasks. Such control specications are called completeness specications. Overall, the working models of the control specications should take both safety and completeness into consideration. The safety specications are mainly determined by the given process plan for assembly modeling, which can be expressed as a set of precedence constraints between the liaisons. Since each liaison is established through some transactions, the precedence constraints on the liaisons determine the constraints on the editing events of the transactions. Each precedence constraint can be modeled as an automaton. By combining the automata of all individual constraints, we nally obtain a complete model for the safety specications. The completeness specications are closely related with the liaison graph of an assembly model such as the bench clamp. Only after all the liaisons in the liaison graph are successfully established is the construction of the assembly model completed. We can model the completeness specications by properly selecting the marker states in the individual automata of the safety specications. In this context, we thus transform the process plan given in Fig. 4 into an appropriate set of precedence constraints as follows: e 1 e 3, e 4 e3 AND e4 e5 e5 e6 e 6 e 2, e 7, e 9 e7 e8 4 5 6 7 8

where x y means that liaison x must be successfully set up before a transaction can edit liaison y . Constraint 5 can further be simplied as e3 e5 e4 e5 5 5
Fig. 6 Automata for safety specications

Correspondingly, we can model these precedence constraints as six automata, which are shown in Fig. 6. In an automaton, a seloop indicates a transition with the same exit and entrance states. In each diagram of Fig. 6, seloops of all the events in that do no appear in the diagram and do not belong to the event set below the diagram should apply to all the states of the automaton. For instance, according to the process plan and the data-locking rule4 presented in 6, it is the task of T2, T3 and T4 to set up liaisons e2, e3 and e4. Therefore, E12, E13, E14 in Fig. 6a implies that the three events be not dened anywhere in the automaton, and consequently will never be allowed to appear in the nal control specication model. The same notations in the other diagrams imply the same.
From here forward, the citation of XPTCT software/algorithm all refers to 20. A liaison is locked by the designer who established it in order to prevent other designers from editing it before he releases the lock, according to Song and Chen 6.
4 3

Let automaton Ei i = 1 , . . . , 6 stand for the ith state transition diagram in Fig. 6. Except for automaton E5 in Fig. 6e, all the others share the same structure. At initial state 0, the editing event for the consequent liaison of a precedence constraint is not dened and hence the supervisor will disable it. After the antecedent liaison is successfully established, which is reected by the occurrence of the locating event, the automaton reaches state 1. At this state the editing event of the consequent liaison is dened, thus allowing the transactions to edit. If the antecedent liaison is remodied by other transactions, the corresponding automaton will return to state 0 to disable the editing event of the consequent liaison. Though E5 seems more complicated, it is nothing but a comTransactions of the ASME

256 / Vol. 6, SEPTEMBER 2006

cally supervise or coordinate the collaborative assembly modeling process in real time. Under the supervision of S, the controlled assembly modeling system or process can work as required without the intervention of a human coordinator. 6.1 Modular Supervision Approach. There are standard algorithms in SCT to compute the minimally restrictive supervisor from a given plant G subject to a given set of control specication E. For example, the algorithm implemented in XPTCT software can be expressed as S supconG, E . 10

Fig. 7 Automata for completeness specications

Automaton S is the model of the minimally restrictive supervisor for G subject to E. Every string dened in S is also dened in G and E, namely, LS LG LE , 11a 11b

position of two similar state transition structures. Unlike other liaisons, e6 can be set up by T4 or T5, rather than one specic transaction only. Consequently E5 must account for the exibility in the modeling of constraint 7. Moreover, if T4 or T5 starts to establish the liaison, either of them will lock e6 and the other will be disabled until the lock is released. States 0, 1, and 2 reect the case in which transaction T5 starts to establish liaison e6. Owing to the data-locking rule 6, event E46 is disabled at states 1 and 2 so that T4 cannot edit liaison e6. States 0, 3, and 4, on the other hand, show the dual case in which transaction T4 gets the right of editing liaison e6. Created originally for the safety specications, these automaton models also serve for the completeness specications. Each automatons marker state indicates the successful setup of a liaison. Specically, the one-to-one mappings between the marker states of the automata and the completeness of the liaisons are Ei for ei, i = 1 , . . . , 7. Yet, to complete the whole assembly model of the bench clamp, the automata for the completeness specications on liaisons e2, e8, and e9 are also required. Accordingly, Fig. 7 gives three automata, denoted E7, E8, and E9, in three respective state transition diagrams for e2, e8, and e9. These automata do not disable any events. Instead, upon the successful setup of a liaison, the locating event will occur and the automata will reach their marker states. On the other hand, as the liaison is remodied, the automata will return to their initial states. Finally all nine automata can be combined together to yield an overall automaton for the global control specications of the realtime collaborative bench clamp assembly modeling process, according to E i9=1Ei 9 E is a nonblocking automaton with 1,280 states and 33,216 transitions. The preceding two sections show how to develop the plant and control specication models for a real-time collaborative assembly modeling process. These models completely determine the correctness and performance of the nal supervisors. With the procedures demonstrated earlier, for a new modeling object, one only needs to modify the plant model template and also recongure the automaton models for new precedence constraints, which is tractable.

L m S L m G L m E .

where LS is a controllable language 20 with respect to plant G and uncontrollable event subset uc. Thus supervisor S can really enforce the plant to follow the control specications. As a fundamental concept in SCT, the controllable language guarantees that the supervisor never attempts to prevent uncontrollable events. For any other supervisor A of G subject to E, it has the property that L m A L m G L m G L m E and LA is controllable with respect to G and u, namely, true = condatG, A . 13 12

where condat is the XPTCT algorithm able to verify if automaton A is controllable with respect to G and uc. If controllable, the algorithm returns true; otherwise it returns false. Formula 12 means that A monitors G to follow E. There is always the relationship between A and S such that L m A L m G L m S 14

Control Synthesis for Supervisors

To achieve a proper coordination scheme, we need to obtain a desired supervisory controller supervisor, through control synthesis. For the given plant G, the desired supervisor S can be synthesized from the set of control specications E, which characterizes the desirable behaviors of the plant in terms of the order and number of events. Finally, the obtained supervisors will be implemented as the plug-in software embedded into the CAD modeling system, serving as the process controller, to automati-

which means that S obtained by the algorithm in formula 10 is an optimal supervisor since it allows for the largest possible behavior of plant G that can be achieved by supervisory control. The straightforward solution to a supervisory control problem is to synthesize a monolithic supervisor directly from the global plant G and the global control specication E. However, this approach is often computationally unaffordable. For example, in the bench clamp example, the state sizes of G and E are G = 6,561 and E = 1,280. Accordingly, the memory space required by formula 10 is about G E 8 106, which is intractable for the most available DES software e.g., XPTCT. Therefore, to reduce the computational complexity, we suggest a modular supervision approach for dealing with the computation-intensive control synthesis. In this approach, we consider that the supervisory control is implemented by a number of local, modular supervisors 23,24 in two case scenarios: Case 1: To locate all modular supervisors on the central server of the CAD modeling system Case 2: To distribute the modular supervisors onto the client computers of the collaborating users. In the rst case scenario, since all events will be reported to and processed within the central server, these events are all observable to the supervisors. Hence, these modular supervisors can be achieved under complete observation in Sec. 6.2. In the second case scenario, the distribution of the modular supervisors onto the client computers reduces the workload on the server but raises difculties in control, because the distributed supervisors cannot detect those events processed within the server. Therefore, some of the events are unobservable to the supervisors and such moduSEPTEMBER 2006, Vol. 6 / 257

Journal of Computing and Information Science in Engineering

lar supervisors must be synthesized under partial observation in Sec. 6.3. 6.2 Modular Supervisors With Complete Observation. Modular supervision is often preferred because the control specications are usually given as a group of simple specications. The automaton model for a simple control specication is small, and consequently the computation size for a modular supervisor is much smaller than for a monolithic supervisor. Given a plant model G plus a set of control specication models Eii = 1 , . . . , n, we can nd a modular supervisor Si for each Ei by formula 10. According to formula 14, if the modular supervisor is minimally restrictive, it should have the property that L m S i L m G L m G L m E i , i = 1, . . . , n . 15 and condatG , Si is true. Accordingly, the nal control action of the modular supervisors can be described by automaton SUP in=1Si 16 Nevertheless, the modular supervisors are congured individually without considering their mutual inuences. They might come into conict when combined together, and thus might cause SUP to be blocking and uncontrollable. Furthermore, even if SUP is nonblocking, the controlled process characterized by SUP G may still be blocking. Hence, we must ensure that the modular supervisors for the given plant G can be successfully combined into a global supervisor leading to a nonblocking process. A sufcient condition for the successful conjunction of the modular supervisors is formalized by Theorem 4.2.2 in the Appendix. Through the bench clamp example, we will show that each of the control specication automata is nothing but a modular supervisor, according to: PROPOSITION 1. If automata Eis and G are constructed as in Secs. 4 and 5, then Eis are also the desired nonblocking modular supervisors of G for Case 1 of the given assembly modeling problem. By means of Theorem 4.2.2, this proposition can be validated for the bench clamp example as follows. First of all, we can show via XPTCT software that true = condatG, Ei i = 1, . . . ,9 17 that is, the control specication models are all controllable with respect to G. Thus we may directly use the models Eii = 1 , . . . , 9 as the modular supervisors: Si Ei i = 1, . . . ,9 18 which satises the rst condition of Theorem 4.2.2. 9 Next, to check the second condition, let SUP i =1Si. For Si = Eii = 1 , . . . , 9, we have SUP = i9=1Ei = E 19 That is to say, the automaton of the global supervisor SUP is equivalent to the global control specication model E obtained according to formula 9. Since E is a nonblocking automaton as mentioned in Sec. 5, it veries that SUP is a nonblocking automaton; thus the second condition of Theorem 4.2.2 is satised. Last, to verify the third condition of Theorem 4.2.2, it is found that the automaton SG cannot be calculated directly with XPTCT software, owing to the prohibitive space complexity of SUP G 8 106. To avoid this computing problem, it is also found that the single product of the two large automata SUP G can be properly replaced with multiple products of smaller automata as follows: SG = SUPG = GE1E2 E9 20 Thus we can compute a series of products on smaller automata instead of one lump product of two large automata, because the control specication models Ei i = 1 , . . . , 9 often overlap in events so that G Ei G Ei, which has been conrmed by 258 / Vol. 6, SEPTEMBER 2006

our computation. The state sizes of the nine-step computations are, respectively, 2 3 E1 G = 8,748, i i =1Ei G = 11, 664, =1Ei G = 15, 552, 4 5 6 i=1Ei G = 82, 944, i i=1Ei G = 20, 736, =1Ei G 7 8 = 110, 592, i=1Ei G = 147, 456, i=1Ei G = 196, 608, and 9 i =1Ei G = SG = 262, 144. Once automaton SG is obtained, its nonblocking property can be successfully conrmed through XPTCT software. Thus the third condition of the theorem also holds. Therefore, we conclude that the nine supervisors Si i = 1 , . . . , 9 can compose a nonblocking supervisory control SUP for plant G, whose controlled behaviors are captured in automaton SG. 6.3 Modular Supervisors With Partial Observation. A partial observation problem arises when the modular supervisors of the real-time collaborative assembly modeling system are distributed onto the client computers of the individual users. In transaction model Gi i = 1 , . . . , 8, events Eij, Li, and Rij are observable to the supervisors because these events happen on the users client computers. Yet, event Ci merely records the actions within the server and thus is unobservable. Since the supervisors can only get feedback from the users actions on the client computers, the modular supervisors for the plant G can only monitor the observable events. In this scenario, the modular supervisors are considered to be partially observable. The alphabet of the plant G is then partitioned into observ . Let * able and unobservable event sets, denoted = o uo represent all the strings composed of the events in alphabet . In particular, the string without any event is the empty string . A natural projection P is a function P: * * o with

P = Ps = Ps P

P =

, ,

o otherwise

21a 21b

for s

and

21c

The effect of P on a string s is to erase the unobservable events from s and keep the observable events in the original order. Since a partially observable supervisor cannot detect unobservable events, its input is the projection of the strings generated by plant G. Hence the original plant appears to be another plant Go over alphabet o with L G o = P L G L m G o = P L m G 22a 22b

The automaton Go is computed from G and o by the XPTCT algorithm: Go projectG,

23

The problem of supervisory control with partial observation can be solved according to Proposition 4.8.1 in the Appendix, which is rewritten with automata, rather than languages. In the bench clamp example, the unobservable event set is uo = Ci i = 1 , . . . , 8. One may notice that all the controllable events are observable, that is, c o. In the original specication models Ei i = 1 , . . . , 9, the occurrence of the computing events Ci changes the control action of a modular supervisors under complete observation. But this is impossible in the case of partial observation where the computing events are unobservable. Therefore, it requires Ei i = 1 , . . . , 9 be adapted to a new set of specication models OEi i = 1 , . . . , 9, as shown in Fig. 8. The main difference between Ei and OEi is the replacement of event Ci i = 1 , . . . , 9 by event Rij. These automata should be completed by the same selfTransactions of the ASME

state 0 and disable events E33 and E44. This delay of control is the price paid for incomplete information due to the partial observation mode. Henceforth, our control specication models become OEi i = 1 , . . . , 9 by which we can synthesize the partially observable supervisors in accordance with Proposition 4.8.1 in Appendix, leading to: PROPOSITION 2. If automata OEis are adapted from Eis as in Sec. 6.3, they are the desired partially observable supervisors of G for Case 2 of the given assembly modeling problem with the controllable event set c and the observable event 0. This proposition can be validated through the bench clamp example as follows. According to formula 23, the natural projection of the plant model G is: Go projectG,

24

for which we can show the observable plant model Go has 256 states and 7552 transitions. We can also show that for any i = 1 , . . . , 9, the following equation holds true: true = condatGo, OEi . 25 The conjunction of Go and OEi is obtained as Go OEi, which is nonblocking. We can also validate through the algorithm of Wong and Wonham 25 that the natural projection P dened in formulation 21 is LmG-observer. Therefore, by Proposition 4.8.1, OEi G is nonblocking and controllable with respect to G and LmOEiG = LmOEi LmG 26 which conrms that OEi i = 1 , . . . , 9 is truly a partially observable supervisor for G. In the following, we will further validate that the modular supervisors, obtained as OEi i = 1 , . . . , 9, are mutually nonconicting, according to: PROPOSITION 3. Automata OEis are the modular supervisors of G and their conjunction is a nonblocking supervisor for G. With the aid of the bench clamp example, this proposition can be validated using Theorem 4.2.2 as follows. To begin, we can rst verify by Theorem 4.2.2, that the conjunction of OEi, i = 1 , . . . , 9, is a nonblocking partially observable supervisor of observable plant Go of Eq. 24. Owing to Proposition 2, OEi is surely a modular supervisor of plant Go; hence the rst condition inherently holds. Let V i9=1OEi . 27 which is a nonblocking automaton with 1,280 states and 39,104 transitions. Thus the second condition of the theorem is also satised. Last, to check the third condition, let VGO VGo 28 which is also a nonblocking automaton. Thus V is a nonblocking supervisor of Go with true = condatGo, V
Fig. 8 Automata for the modied specications

29 30

Applying the same argument of Proposition 2, we then know that true = condatG, V Therefore, VG V G is a nonblocking automaton, as required by the proposition.

loops as those for the automata in Figs. 6 and 7. To compare, consider automata E1 and OE1 as an example for illustration. They both disable the events E33 and E44 at state 0 and enable all the events at state 1. Suppose we have an event string E11C1L1C1R11. After the substring E11C1L1 occurs, both automata reach state 1. As the next event C1 occurs, E1 will return to state 0 because the liaison e1 is being reconstructed. Hence liaisons e3 and e4 must wait. In contrast, OE1 will still stay at state 1 to allow the editing of liaisons e3 and e4. Only after the event R11 occurs that is, the failure in setting up liaison e1, will OE1 return to

Results and Discussion

The modular supervisors nally construct the desired online coordinator. Once coded in a programming language, the resulting coordinator can be embedded into the CCAD modeling system serving as a process controller for automatically coordinating the collaborative assembly modeling process in real time. Under the supervision of the modular supervisors, the controlled assembly SEPTEMBER 2006, Vol. 6 / 259

Journal of Computing and Information Science in Engineering

Fig. 10 The pseudo-code of automata G1 and E1

Fig. 9 The pseudo-code of class automata

modeling process can work as required with little intervention of a human coordinator. Given the liaison graph and precedence constraints for a new assembly object, thanks to the apparent resemblance in the automaton models of the plant components and control specications, the CCAD software can automatically recongure to generate the new DES models with little human assistance. For instance, automata can be coded in one class whose pseudo-code is in Fig. 9. While the pseudo-code emphasizes the feature of automatic construction of the automaton models, other details and functions are realizable based on the state transition diagrams of the automata. As a simple demonstration of Automata class, the pseudocode of plant component G1 and modular supervisor S1 = E1 are listed in Fig. 10. The nine modular supervisors must work together to determine the control actions. Only the events belonging to the set 9 i =1Ei getEvents, that is, only the events that are allowed by all the modular supervisors, can occur in the assembly modeling system. Since the supervisors SUP in formula 19 and V in formula 27 are synthesized from similar control specications, their control actions and the controlled behaviors of the plant G are approximately identical. Table 2 lists the control actions in coordinating a typical assembly modeling process for the bench clamp problem. The rst column records the step indexes for the assembly modeling process. The second column shows the strings representing the operational sequences, which are contained in both the languages LSG and LVG. The third and fourth columns show the events that the supervisors SUP and V must disable at the state reached by the strings in the second column. Note that Table 2 shows only the disabled events that do not belong to set E12, E13, E14, E35, E49, E57, E68, because the events in this set are always disabled by SUP and V.

Table 2 Coordination according to control actions of SUP and V Step 0 1 2 3 4 5 6 7 8 9 10a 11 12 13 14 15


a

String s s s E11C1L1 s sE33C3L3 s sE44C4L4 s sE55C5L5 s sE56C5L5 s sE67C6L6 s sE56 s sC5R56 s sE46C4L4 s sC6 s sC6R67 s sE67C6L6 s sE22C2L2 s sE78C7L7 s sE89C8L8

Events disabled by SUP under complete observation E33, E44, E55, E56, E46, E89, E67, E22, E78 E55, E56, E46, E89, E67, E22, E78 E55, E56,E46, E89, E67, E22, E78 E56, E46, E89, E67, E22, E78 E89, E67, E22, E78 E46, E78 E46 E46, E89, E67, E22 E89, E67, E22 E56 E56, E78 E56, E78 E56 E56 E56 E56

Events disabled by V under partial observation E33, E44, E55, E56, E46, E89, E67,E22, E78 E55, E56, E46, E89, E67, E22, E78 E55, E56, E46, E89, E67, E22, E78 E56,E46, E89, E67, E22, E78 E89, E67, E22, E78 E46, E78 E46 E46, E89, E67, E22 E89, E67, E22 E56 E56 E56, E78 E56 E56 E56 E56

Compare the difference of control actions.

260 / Vol. 6, SEPTEMBER 2006

Transactions of the ASME

After the 15 steps according to Table 2, the string s is completed as one string in LmSG and LmVG, which represents a complete modeling process for the bench clamp assembly. All the disabled events are controllable. At step 0, all the editing events are disabled but event E11, which makes liaison e1 the rst one to be built up. From step 1 to step 6, liaisons e3, e4, e5, and e6 are established according to the plan in Fig. 4. In this process, liaison e6 is locked by transaction T5. Owing to the data-locking rule 6, event E46 must be disabled. At steps 7 and 8, T5 remodies liaison e6 and removes all its editing effects on e6. Then event E46 is allowed but events E89, E67, and E22 are disabled again. If T4 begins to edit liaison e6, event E56 is disabled. After liaison e6 is modied, its successive liaison e7 may be inuenced. Hence the computing event C6 occurs at step 10. SUP can immediately disable E78 while V cannot change the control action due to the partial observation mode. Only when the successive observable event R67 happens can V change its control actions. This slight delay in response is the main difference between SUP and V. Since liaison e7 is cancelled in step 11, T6 must rebuild it up in step 12. Finally, steps 1315 complete the remaining three liaisons, e2, e8, and e9.

Acknowledgment
We are indebted to Dr. W. M. Wonham of the University of Toronto for his comments and suggestions on the paper.

Nomenclature
condat algorithm to check the controllability of an automaton Ei ith control specication model under complete observation G transaction-based global plant model Gi ith transaction model Go observable plant model OEi ith control specication model under partial observation project algorithm to compute natural projection SG synchronous product of SUP and G Si ith modular supervisor SUP global supervisor supcon algorithm to compute the optimal supervisor VG synchronous product of V and G disjoint union set intersection precedence constraint synchronous product of two automata dened to be equal with state size of an automaton CCAD Collaborative CAD DES Discrete-Event System DOF Degree of Freedom SCT Supervisory Control Theory

Conclusions

This paper shows how to achieve the online coordination of multi-user-based assembly modeling operations in real time, which is enabled and realized by DES supervisors in the framework of SCT. While SCT has been successfully applied in many elds, this work to the best of our knowledge represents the rst attempt at extending SCT to CCAD or, more generally, teambased e-Design. Our methodology provides a systematic approach for achieving an optimal, nonblocking coordination scheme applicable to the real-time, team-based collaborative assembly modeling process. Our coordination approach attained by SCT enables the process monitoring and control to be automatic, thus relieving the human coordinator from the error-prone, manual work in process monitoring and supervision. In particular, we have proposed the modular supervision approach to reduce the complexity of control synthesis and implementation. Our approach successfully accounts for, and thus can support, two case scenarios in collaborative assembly modeling, namely, 1 making modeling decisions all back on the central server and 2 distributing decision powers to the local client machines. The two case scenarios reect two different supervisory control strategies and structures, that is, supervision under complete observation and supervision under partial observation. Accordingly, we have developed the global nonblocking supervisory controllers for both cases. Thanks to the modularity, the modular coordinators can be effectively fullled by small pieces of software codes. Like other controllers for conventional dynamical systems, the supervisory controller for a discrete-event system is also plant driven. Hence the coordinator depends on a target assembly object. Different objects will be accompanied with different assembly modeling processes and thereby different coordination schemes. Nevertheless, the plant and control specication models presented in this paper are instructive and illustrative and can be used as a template for most assembly modeling problems. For a new modeling process, the DES models are readily adaptable from the template. All the computations for conguring supervisors can be accomplished exibly by available algorithms. Moreover, this paper suggests that the controllable and observable event sets of a new DES be congured in the same way as the bench clamp example so that the modular supervisors can be rapidly achieved using the three propositions. The results show much promise in further extending SCT to the other emerging subjects of CCAD.

Appendix
THEOREM 4.2.2 20. S1 S2 Sn is a nonblocking supervisor for G if and only if 1. Si are all controllable with respect to G; 2. SUP S1 S2 Sn is nonblocking; 3. Automaton SG SUP G is nonblocking. This theorem reveals the feasibility and validity requirements for a proper modular supervisor. According to this theorem, the acceptable modular supervisors must meet three conditions: 1 each supervisor is controllable and nonblocking, 2 their product is nonblocking, and 3 the controlled plant SG is nonblocking. Following this theorem, we can achieve the proper modular supervisors for the collaborative assembly modeling process. PROPOSITION 4.8.1 20. Plant G and control specication Eo are dened over alphabet with observable event subset o. Let Go projectG, o and So be a supervisor for Go with true = condatGo, So L m G o S o L m G o L m E o . If automaton Go So is nonblocking and the natural projection P : * * o is an LmG-observer, then the conjunction of the partially observable supervisor and the plant, So G, is nonblocking and controllable with respect to G and L m S o G L m G L m E o

References
1 Chen, L., Song, Z. J., and Liavas, B., 2001, Exploration of a Multi-User Collaborative Assembly Environment on the Internet: A Case Study, Paper No. DETC2001-CIE21291, Proceedings of the ASME Design Technical Conferences and Computers and Information in Engineering Conferences, Pittsburgh, PA, Sept. 912. 2 Chen, L., Song, Z. J., and Liavas, B., 2002, Master Assembly Model for Real-Time Multi-User Collaborative Assembly Modeling on the Internet, Pa-

Journal of Computing and Information Science in Engineering

SEPTEMBER 2006, Vol. 6 / 261

7 8 9

10 11 12

per No. DETC2002-CIE34456, Proceedings of the ASME Design Technical Conferences and Computers and Information in Engineering Conferences, Montreal, Canada, Sept. 29Oct. 2. Chen, L., Liavas, B., and Song, Z. J., 2003, Development of a Web-Based Prototype for Real-Time Collaborative 3D Viewing, Paper No. DETC2003CIE48264, Proceedings of the ASME Design Technical Conferences and Computers and Information in Engineering Conferences, Chicago, IL, Sept. 26. Chen, L., Wang, T. S., and Song, Z. J., 2003, A Web-Based Product Structure Manager to Support Collaborative Assembly Modeling, Paper No. DETC2003/CIE448265, Proceedings of the ASME Design Technical Conferences and Computers and Information in Engineering Conferences, Chicago, IL, Sept. 26. Chen, L., Song, Z. J., and Feng, L., 2004, Internet-Enabled Real-time Collaborative Assembly Modeling Via an e-Assembly System: Status and Promise, Comput.-Aided Des., special issue on Distributed CAD Technologies, 369, pp. 835847. Song, Z., and Chen, L., 2004, A Constraint Satisfaction Problem in RealTime Collaborative Assembly Modeling, Paper No. DETC2004-57646, CDROM Proceedings of 2004 ASME/DETC 24th Computers and Information in Engineering Conference, Salt Lake, UT, Sept. 28Oct. 2. Mantripragada, R., and Whitney, D. E., 1998, The Datum Flow Chain: A Systematic Approach to Assembly Design and Modeling, Res. Eng. Des., 103, pp. 150165. Pang, A., and Wittenbrink, C., 1997, Collaborative 3D Visualization With Cspray, IEEE Comput. Graphics Appl., 172, pp. 3241. Agrawal, A. K., Ramani, K., and Hoffmann, C. M., 2002, CAD-DAC: MultiClient Collaborative Shape Design System With Server-based Geometry Kernel, Paper No. DETC2002-CIE34465, Proceedings of the ASME Design Technical Conferences and Computers and Information in Engineering Conferences, Montreal, Canada, Sept. 29Oct. 2. Lee, J. Y., Han, S. B., Kim, H., and Park, S. B., 1999, Network-Centric Feature-Based Modeling, Seventh Pacic Conference on Computer Graphics and Applications, IEEE Computer Society, Los Alamitos, CA, pp. 280288. Ho, Y. C., ed., 1992, Discrete Event Dynamic Systems: Analyzing Complexity and Performance in the Modern World, IEEE Press, New York. Brandin, B. A., and Charbonnier, F. E., 1994, The Supervisory Control of the

13 14

15 16 17 18 19 20

21 22 23 24

25

Automated Manufacturing System of the AIP, Proceedings of the Fourth International Conference on Computer Integrated Manufacturing and Automation Technology, IEEE Computer Society Press, New York, pp. 319324. Chandra, V., Huang, Z., and Kumar, R., 2003, Automated Control Synthesis for an Assembly Line Using Discrete-Event System Control Theory, IEEE Trans. Syst. Man Cybern., Part C Appl. Rev., 332, pp. 284289. Jafari, M. A., Darabi, H., Boucher, T. O., and Amini, A., 2002, A Distributed Discrete Event Dynamic Model for Supply Chain of Business Enterprises, Proceedings of WODES 2002, M. Silva, A. Giua, and J. M. Colom, eds., IEEE Control Systems Society, Zaragoza, Spain, pp. 279285. Kozak, P., and Wonham, W. M., 1996, Design of Transaction Management Protocols, IEEE Trans. Autom. Control, 419, pp. 13301335. Ricker, S., Sarkar, N., and Rudie, K., 1996, A Discrete-Event System Approach to Modeling Dexterous Manipulation, Robotica, 145, pp. 515526. Ramadge, P. J., and Wonham, W. M., 1987, Supervisory Control of a Class of Discrete Event Processes, SIAM J. Control Optim., 251, pp. 206230. Ramadge, P. J., and Wonham, W. M., 1989, The Control of Discrete-Event Systems, Proc. IEEE, 771, pp. 8198. Cassandras, C., and Lafortune, S., 1999, Introduction to Discrete-Event Systems, 2nd ed., Kluwer Academic, Boston. Wonham, W. M., 2004, Supervisory Control of Discrete-Event Systems and CTCT Software Version 86, Department of Electrical and Computer Engineering, University of Toronto, Toronto, Canada, http:// www.control.utoronto.ca/DES. Lee, S., and Shin, Y. G., 1990, Assembly Planning Based on Geometric Reasoning, Comput. Graphics, 142, pp. 237250. Ramakrishnan, R., 1997, Database Management Systems, WCB/McGraw-Hill, Madison, WI. Wonham, W. M., and Ramadge, P. J., 1988, Modular Supervisory Control of Discrete-Event Systems, Math. Control, Signals, Syst., 11, pp. 1330. de Queiroz, M. H., and Cury, J. E. R., 2002, Synthesis and Implementation of Local Modular Supervisory Control for a Manufacturing Cell, Proceedings of WODES 2002, M. Silva, A. Giua, and J. M. Colom, eds., IEEE Control Systems Society, Zaragoza, Spain, pp. 377382. Wong, K. C., and Wonham, W. M., 2004, On the Computation of Observers in Discrete-Event Systems, Discrete Event Dyn. Syst., 141, pp. 55107.

262 / Vol. 6, SEPTEMBER 2006

Transactions of the ASME

You might also like