MED01-012 The 9th Mediterranean Conference on Control and Automation. Dubrovnik, Croatia. June 27-29 2001
On the Development and Implementation of a Matrix-Based Discrete Event Controller José Mireles, Jr., Member IEEE, and Frank Lewis, Fellow IEEE. Abstract-- A supervisory controller for Discrete Event (DE) Systems is presented that uses a novel Matrix Formulation. This matrix formulation makes it direct to write down the DE controller from standard manufacturing tools such as the Bill of Materials or the assembly tree. The matrices also make it straightforward to actually implement the DE controller on a manufacturing workcell for sequencing the jobs and assigning the resources. It is shown that the DE controller equations plus the Petri Net marking transition equation together provide a complete dynamical description of a DE system. So that a computer simulation can be performed to check the DE performance of the controller before it is implemented. In this paper, we implement the DE controller on an actual three-robot Intelligent Material Handling (IMH) cell at the Automation and Robotics Research Institute (ARRI) of UTArlington. The versatility of the system developed with this DE controller permits implementing different methodologies for conflict resolution, as well as optimization of the resource assignment and part throughput. Technical information and comparison results between the development of the controller in LabVIEW and its simulation using MATLAB are provided. Index Terms-- Petri nets, Discrete event systems, Reentrant flow lines, Flexible manufacturing systems, Intelligent control.
A
I. INTRODUCTION
problem in Flexible Manufacturing Systems [Buzacott et al. 86] or Discrete Event Systems (DES) is job sequencing when some resources are shared. While some resources manipulate or machine single parts in a DES, others manipulate or machine multiple parts for several products in the manufacturing process. If jobs are not correctly sequenced in the latter case, serious problems in the performance of the DES can be obtained, including blocking and system deadlock [Ezpeleta et al. 95, Kumaran et al. 94, Lewis et al. 98]. Therefore, it is very important that the workcell controller properly sequences jobs and assigns resources. Several approaches exist to control the resource dispatching sequences, including First-In-First-Out (FIFO), First-BufferFirst-Serve (FBFS), Last-Buffer-First-Serve (LBFS), EarliestDue-Date (EDD), Least-Slack (LS), and others [Panwalker et al 77]. For analysis, modeling and control of manufacturing systems, one of the tools that is extensively used is Petri nets (PN) [Peterson 81, Murata 89, Desrochers 90, Zhou et al. 92-93, Pastravanu 94b]. Though PN have proven very useful in Manuscript received January 31, 2001. This work was supported in part by the ARO-DURIP Grant, DAAD19-00-1-0037. J. Mireles, Jr., is with the Universidad Autónoma de Ciudad Juárez, Ave. del Charro 610 Nte. CP 31310, Cd. Juárez, Chih. México (e-mail:
[email protected]). F. Lewis. is with the Automation & Robotics Research Institute of the University of Texas at Arlington. 7300 Jack Newell Blvd. S. Fort Worth, TX 76118 USA, (e-mail:
[email protected]).
analysis and control of manufacturing systems, it can be difficult to draw a PN directly from the manufacturing bill of materials (BOM) [Elsayed et al. 94], or assembly tree [Wolter et al. 92]. This paper presents the development of a Discrete Event Controller (DEC) based on the decision making matrix formulation introduced in [Lewis 92, Lewis et al. 93]. Important features of this matrix formulation are that it uses a logical algebra, not the Max/Plus algebra [Cofer et al. 92], and that it can be described directly from standard manufacturing tools that detail product requirements, job sequencing [Eppinger 90, Steward 62-81ab] and resource requirements [Kusiak et al. 91-92]. That is, this matrix-based DEC can be directly written down from the bill of materials or the partial assembly tree. In addition, the DEC can easily be modified if there are changes in product requirements or resources available, making the control of the workcell more flexible and re-configurable. It can be shown that this DEC is a formalized version of both the “Top-Down” and the “BottomUp” PN design approaches [Desrochers 90; Zhou et al. 9293]. PN cannot provide a mathematically complete dynamical description of DES. The PN marking transition equation provides a partial description, but it is incomplete in that it has not yet been demonstrated how to determine the allowable firing vector [Peterson 81]. It will be shown that the DEC equations presented herein plus the PN marking transition equation provide together a complete dynamical description of a DES. This allows one to control an actual workcell using the DEC logic, and to simulate on a computer the time behavior of the controlled system using the DEC equation plus the PN marking transition equation. We describe the DEC formulation, present the relationship of this DEC formulation with PN, and actually implement the DEC on an Intelligent Material Handling (IMH) robotic workcell at UTA’s Automation & Robotics Research Institute (ARRI). A detailed exposition of the development of the DEC of the workcell is given, including all steps needed to implement the controller. Technical information includes the development of the controller in a graphical environment, LabVIEW. Using our complete dynamics for the DES, we simulate the behavior of the IMH cell with DE controller using MATLAB. The simulation results are compared to the actual implementation results. II. MATRIX-BASED DISCRETE EVENT CONTROLLER (DEC) A novel DEC for manufacturing workcells was described in [Lewis et al. 93-95, Pastravanu et al. 94a, Tacconi et al. 97].
MED01-012 The 9th Mediterranean Conference on Control and Automation. Dubrovnik, Croatia. June 27-29 2001
This DEC is based on matrices, and it was shown to have important advantages in design, flexibility and computer simulation. In this paper, we show that it also allows commensurate advantages in actual implementation on a practical robotic cell. Following the same notation used in [Lewis et al. 93], the definition of the variables of the Discrete Event System is as follows. Let v be the set of tasks or jobs used in the system, r the set of resources that implement/perform the tasks, u the set of inputs or parts entering the DES and y the set of outputs or finished parts/products of the DES. The DEC Model State Equation is then described as. (1) x = Fv ⊗ v ⊕ Fr ⊗ r ⊕ Fu ⊗ u ⊕ Fuc ⊗ uC where: x is the task or state logical vector, Fv is the job sequencing matrix,
Fr is the resource requirements matrix, Fu is the input matrix,
Fuc is the conflict resolution matrix, and uc is a conflict resolution vector. This DEC equation is performed in the AND/OR algebra. That is, multiplication ⊗ represents logical “AND,” addition ⊕ represents logical “OR,” and the over-bar means logical negation. From the model state equation, the following four interpretations are obtained. The job sequencing matrix Fv reflects the states to be launched based on the current finished jobs. It is the matrix used by [Steward 81ab] and others [Whitney 91]. The resource requirement matrix Fr represents the set of resources needed to fire possible job states. It is the matrix used by [Kusiak et al. 91-92]. The input matrix Fu determines initial states fired from the input parts. The conflict resolution matrix Fuc prioritizes states launched from the external dispatching input
uC , which has to be derived via
some decision making algorithm [Panwalker et al. 77]. The relationship of these matrices with Petri-Nets is shown in the next section. [Lewis 95] suggests a structure for the DEC based on the matrix formulation as used to control job sequences and resource assignment of a workcell (p. 272.) The same structure containing flow of data, controller, conflict resolution blocks and the plant (workcell), is used to develop and implement the DEC of our IMH in this paper. We will refer to this structure as SDEC through the paper. A. Matrix Formulation And Petri Nets There is a very close relationship between the DEC just described and PNs. The Incidence Matrix [Peterson 81] of the PN equivalent to the DE controller is obtained by defining the activity completion (2) and the activity start (3) matrices as: (2) F = [ Fu Fv Fr Fy ] S = [Su
T
Sv
T
Sr
T
T
Sy ]
(3)
Then, the PN’s Incidence Matrix is defined as T T T T M = S T − F = [ Su − Fu , Sv − Fv , Sr − Fr , S y − Fy ]
(4)
If we define X containing the elements x (the state controller vector), and A as the set of activities containing the
v r
vectors v and r, i.e. (A= ), then it can be shown that (A,X,FT, S) is a Petri Net [Pastravanu et al. 94ab]. This allows one to directly draw the PN of a system given the matrices F and S. The elements of matrices F and S, which are ‘zero’ or ‘one’, can be related directly with a PN representing the RFL. In fact, FT is the PN input incidence matrix and S is the PN output incidence matrix. The fi,j elements of Fv which are set to ‘one’, state that to fire transition xi, the job vj needs to be finished. The fi,j elements of Fr set to ‘one’, indicate that to fire transition xi, the resource rj needs to be available. The fi,j elements of Sv set to ‘one’, indicate that to start job vj, the transition xi needs to be finished. The set of fi,j elements from Sr are set to ‘one’ to indicate that the resource ri is released after the transition xj is finished. If the marking vector m(t) from a PN is defined as t m(t) = [ u (t ) T , v(t ) T , r (t ) T , u D (t ) T ]T (5) for a specific time iteration t, then the PN marking transition equation [Peterson 81] is m(t + 1) = m(t ) + M T x = m(t ) + [S T − F ]x(t ) . (6) B. Complete Dynamical Description A major gap in PN theory has been its inability to provide a complete dynamical description of a DES. The marking transition equation (6) provides a partial description [Peterson 1981], but it is not known in the literature how to generate the allowable firing vector x(t). This deficiency is repaired by using the matrix-based DEC controller equation (1) together with the PN marking transition equation. The key is to note that the vector x(t) in (6) is identical to the vector x in the DEC equation (1). To put the DEC eqs. into a format convenient for simulation, one may write (1) as x = F ⊗ m or
x(t ) = F ⊕ m (t ) = [ Fu Fv Fr Fuc ] ⊕ [u v r u c ](t )
(7) The double negation over m(t) is used since we are assuming that only one part and/or resource is used for every task for every discrete event tk (i.e. only one resource is used for every job.) So, for every member ak of the vector m(t), the double negation is used to obtain 'one' if ak ≥1 (i.e. resources are available), or 'zero' if ak =0 (i.e. no resources are available). One now has to incorporate the time durations of the jobs and the time required for resource releases. We do this by using timed places in the PN. Since the duration time of jobs vary for different machines or resources, equation (6) must be divided in two parts, which is accomplished by dividing each place into two parts. Therefore, m(t) is split into two vectors, one representing all available resources and current finished jobs, the available marking vector ma, and the other showing
MED01-012 The 9th Mediterranean Conference on Control and Automation. Dubrovnik, Croatia. June 27-29 2001
the jobs in process, the pending marking vector mp. In this way, we are able to keep track of the status of all pending jobs. Note that only the available resources and finished jobs ma are allowed to be used to fire the next transitions. The overall marking vector is m(t ) = ma (t ) + m p (t ) (8) Splitting m(t) into two vectors means that the PN marking transition equation (6) must also be split into two equations. The first part of the equation, representing the pending marking vector, is m p (t + 1) = m p (t ) + S T x(t ) . (9) This equation adds all new jobs into the vector mp. This vector also contains any unfinished jobs currently in process. The other part of the equation, representing the available marking vector, is ma (t + 1) = ma (t ) − F x(t ) . (10) This equation takes away tokens from ma corresponding to which transitions they are used to fire. Note that adding (9) and (10) gives (6). When a transition fires, the tokens go into the pending vector mp(t), where they stay until the job is finished. Then, the token is moved into ma(t), where it may be used to fire subsequent transitions. It is necessary now to keep track of jobs in progress, and to move tokens from mp(t) to ma(t), when jobs are completed. In real applications on actual manufacturing processes, we will be sensing the expiration of such finished jobs by either using sensors (e.g. proximity, tactile, etc.) or via notification from the machines or resources. We shall discuss this issue further in our implementation section. For the purposes of computer simulation, on the other hand, we must find a way to keep track of time lapsed in the processing of jobs. To keep track of the duration time of jobs, we may identify the time required for all jobs or resources by creating a vector T. T will have the same size as the marking vector m(t) in (5) and may be defined as (11) T = [O, vtimes T , rtimes T , O ]T T where vtimes is the vector containing the duration times of each job in v, and rtimesT is a vector containing the times needed by each resource in r to become ready to work after being released. Equation (7) may use only the available marking vector ma to generate valid transition vectors x. The pending marking vector mp has to be analyzed at each discrete event iteration to check whether or not any pending jobs are finished. The corresponding completed jobs are then moved into ma. To keep track of the times remaining in each job during computer simulations, we introduce a small constant sample period, tsample. We also define a second vector of the same size as T, and compatibly partitioned, which we call Tpend. This vector contains the time remaining for each job, and for each resource release. Tpend is initially set equal to zero. When any token appears in mp, the corresponding entry of Tpend is set equal to the job duration entry from the duration vector T. Then, each time there is a discrete event iteration, we subtract
tsample from every time in Tpend. When any entry of Tpend becomes zero or negative, it means that the corresponding job is finished, or resource has been released. Then, the corresponding entry of mp is decremented and the corresponding entry of ma is incremented. The job or resource is now available to fire subsequent transitions. This procedure is easy to write in equation form for the case where there can be only one token in each place. This means that only one job is allowed to be serviced at a time by each resource. (e.g. Only one job per machine at any given time.) In this case, one may write T pend (t + 1) = diag{ m p (t ) }[T pend (t ) − t sample ] + diag{ S T x(t ) }T (9) where diag{ST x(t)} is a diagonal matrix formed by writing the elements of a vector on the diagonal of a matrix. The last term adds the entire time duration needed for the job to Tpend for any jobs newly fired at time t+1. The first term decreases by tsample the times left on every pending job or resource release. The finished jobs are obtained by checking whether any element from Tpend is less than or equal to zero, indicating jobs just finished. Jobs which are finished must be moved from to mp to ma. To write this in equation form, define a third vector mfinish of the same dimension as and compatibly partitioned with T. Whenever any element from Tpend becomes less than or equal to zero, the corresponding element of the expiration vector mfinish is set equal to “one” (all other elements are set to zero). Then, the marking vectors can be updated by (13) m p (t + 1) = m p (t ) − m finish (t ) ma (t ) = ma (t ) + m finish (t ) . (14) and Finally, one computes (10). In summary, one discrete event iteration consists of computing x(t) using (7), then using (12), then determining mfinish, and using (13), (14), and finally (10). If there can be more than one token in each place, i.e. more than one job may be accomplished simultaneously by one resource, then (12)-(14) must be modified in a straightforward manner. Thus, a complete dynamical description of the DES is provided by the PN marking eq. (6), which is decomposed into eqs. (9) and (10), plus the DEC equation (7). The job time durations are added using (12)-(14). This allows one to use these equations to fully simulate the controlled workcell shown in Fig. 1. We shall use these equations in our simulation section.
III. INTELLIGENT MATERIAL HANDLING (IMH) The Intelligent Material Handling cell at the University of Texas at Arlington’s ARRI is composed of three robots, three conveyors, ten sensors and two machines. The picture of the cell is depicted in Fig. 1. The IMH cell is a multipart Reentrant Flow Line (RFL) problem. One possible configuration of RFL is shown in Fig. 2. This RFL shows two paths representing the job sequences to manufacture products A and B. Notice the that some resources are required more than once to manufacture such products. See [Kumar 93ab] for notions on analysis and
MED01-012 The 9th Mediterranean Conference on Control and Automation. Dubrovnik, Croatia. June 27-29 2001
shared resource dispatching in RFL. The DEC matrices in (1) can be directly written down by considering the RFL, or the resource assignment and the bill of materials [Harris 98].
CRS b
PUMA
ADEPT b
V. MATLAB SIMULATION OF IMH CELL
Machines
Fig. 1. Picture of the IMH-cell from ARRI. PART B OUT PART A
Time, Largest Imminent Operation Time, Shortest Remaining Processing Time, Largest Remaining Processing Time, Machine with Least Work and Least Slack Time. In this paper we use an augmented version of the LBFS. It is modified for multi-path systems and denominated ALBFS. It will be discussed in an upcoming paper dealing with deadlock avoidance. ALBFS conflict resolution strategy generates uc in such a manner that deadlock does not occur.
PART A OUT R2u1
R1u1
CRS ROBOT 1
PART B
PUMA
R1u2
R2u2 R1u3
R1u4
ROBOT 2 R2u3
Machine 1 ADEPT
R3u2
ROBOT 3
Machine 2 R3u3
Once having the matrices generated via standard industrial engineering structures such as bill of materials, assembly tree, and resource requirements matrix, a complete dynamical description is obtained via eqs. (6)-(7). Using these eqs. one can perform computer simulations of the workcell with the MATLAB functions provided by [Tacconi et al. 97], which functions and data used are the equivalent to eqs. (1)-(7). The time history of the simulation of the IMH cell using ALBFS is shown in Fig. 3. It shows a graph representing the Discrete Events processed in the workcell. All possible jobevents of the workcell are shown on the right side of the graph. Then, for example, the upper row from Fig. 3 shows R1u1, which is the time history of the robot R1 accomplishing job one, i.e. every “high” level in this event represents R1 performing job one. When the signal is low, the robot is not performing job one. For the RxUy’s rows, high level represents ‘x’ robot accomplishing job ‘y’; for the MxP, high level represents that machine ‘x’ is working; and for MxA, high level represents machine ‘x’ is available.
R3u1
Fig. 2. Multipart Reentrant Flow Line Problem. IV. SHARED-RESOURCES CONFLICT RESOLUTION One of the strengths of the matrix-based DEC is that different shared–resources conflict resolution strategies can be implemented by suitably computing uc, the conflict resolution input. Then SDEC is capable to apply different conflict resolution strategies for the shared-resources by monitoring via matrix Fuc and controlling the input vector uc [Pastravanu 94]. Shared-resource dispatching in multi-path reentrant flow lines is not an easy topic. [Kumar 93b] provide some existing techniques. For single-part-path systems it is known that lastbuffer-first-serve (LBFS) always avoids deadlock. Depending on the way one selects the conflict resolution strategy to generate uc, different dispatching rules can be selected. These fall mainly into two categories: Buffer and Part/Machine [Panwalker et al. 77, Lewis et al. 93]. Examples for the Buffer category are First Buffer-First Serve, Last Buffer-First Serve, Shortest Non-Full Queue, Shortest Remaining Capacity, and Shortest Queue Next. Examples for the Part/Machine category are Shortest Imminent Operation
Fig. 3. Simulation of the workcell using ALBFS conflict resolution.
Using ALBFS conflict resolution strategy, if we analyze from Fig. 3 the events/jobs having R1u3 and R1u4 titled on its right side are the last jobs needed to manufacture products A and B. Six products B are manufactured after running the cell for 365 seconds, while six products A are manufactured by 475 seconds, a 110 seconds of difference.
MED01-012 The 9th Mediterranean Conference on Control and Automation. Dubrovnik, Croatia. June 27-29 2001
VI. IMPLEMENTATION OF THE DEC ON THE IMH CELL The DEC was implemented using eqs. (1)-(7) in LabVIEW graphical programming environment. One advantage of LabVIEW is the built-in capability to run several processes (or threads) in a single program/diagram. With this advantage, we can manipulate and control different processes at the same time. The processes we are interested in are jobs for different robots, machining jobs and transferring parts using conveyors, i.e. sequence jobs implemented in manufacturing processes. The problem at this point is the way to synchronize such loops/algorithms that control different jobs for robots and/or machines. Using this matrix formulation for DES controllers the problem can be solved. In comparison with SDEC, in Fig. 4 we try to represent inside the dashed lines the DEC implemented on a PC using LabVIEW for the IMH cell. This PC-based IMH controller, has three serial ports that interact with the three robots of the IMH cell, as well as a DAQ card. The DAQ card receives discrete signals from capacitive proximity sensors, which sense parts within the IMH cell, and also sends discrete signals to the machines to initialize jobs. PC with High Level Controller
Rule - Based Real -Time Controller Controller state monitoring logic x = Fv ⊗ v ⊕ Fr ⊗ r ⊕ Fu ⊗ u ⊕ F D ⊗ u D ⊕ FuC ⊗ u C
Start tasks/jobs
uc Dispatching rules To Generate uc
Job start logic vS =S v ⊗ x
Resource release logic rs = S r ⊗ x
Task complete logic y =S y ⊗ x
Tasks: vSA
Medium Level Tasks Controllers
Robot 1 Task 4 Task 3 Task 2 Task 1
Robot 2 Task 3 Task 2 Task 1
u
Robot 3
v~SA
Task 3 Task 2 Task 1
Parts out
RS232 - 2
RS232-3
~ p in , ~ rS , v~SB
Analog & digital I/0
Jobs
vSB
rSB vSB
Low level PD & PID controllers CRS controller
r p
DAQ -card RS232 -1
v
Workcell data gathering
Puma 560 controller
ADEPT One controller
rSA, pin
Machines Sensors Robots
Fig. 4. DES controller for the IMH-cell.
A. Three Levels of Intelligent Control Note that in Fig. 4 one can find the three levels of intelligent control depicted in [Saridis 88-95]. The first level is organization, which is the highest level of intelligence and in our case is our DES controller structure: the matrix formulation including ALBFS. The second level of intelligence is the coordination level. This level contains a set of independent modules that are composed by robot
programming sentences that sequences the robotic tasks (e.g. pick and place tasks.) The last level of intelligence is the execution level, which in the case of our IMH-cell, it is accomplished by the controllers of the robots. When the coordination level decides for an specific command, the robotcontroller receives the command via serial communication, and then the robot-controllers accomplish low level control strategies to move the joints of the robot. B. DEC in Graphical Environment As commented before, the implementation of the DEC was through LabVIEW. The key equations for the implementation in matrix formulation, once all matrices F and S are defined, are the transition equation (6) and the allowable matrix vector (7). As stated in the first sections, this equations use logical AND and OR matrix algebra. Fig. 5 shows the graphical development of the DEC. This figure contains a block identified by a circle. This block performs equations (6) and (7). The MATLAB function is developed in [Taconni et.al. 97]. The input parameters to this block are F, S’, m(t), and iterations. “iterations” variable came from equation (6). The term m(t+1) from (6) receive the next marking vector. But if iterations is set to 2, the diagram will calculate the marking vector as if m(t+2) were used in (6). By applying the ALBFS used in our simulations, the real IMH cell Discrete Event System output behaves as shown in Fig. 6. This figure was obtained in real-time directly from our DEC implementation in LabVIEW. On Fig. 6 the discrete duration of the robotic jobs are shown. Notice that the time duration of the real IMH workcell rum is in terms of discrete event intervals, while the simulation is in terms of time. As you can see, only small deviations between our previous simulation and the real system behavior are noticed. The differences are due to the phenomena produced by the differences in time duration of the jobs. Since the PCmachine is constantly interacting with the robots and commanding them different jobs, i.e. accomplishing coordination level of intelligence, this time interaction vary depending on which jobs are fired at a specific moment causing the robotic job durations to vary. However, having more computational power or implementing the coordination level of intelligence directly on the robots and not in the same PC- machine, this phenomenon can be reduced.
VII. CONCLUSIONS The decision making matrix formulation controller supervisor proposed in [Lewis et al. 93-95], which provides the capability to analyze and control DES, was implemented in a graphical environment, LabVIEW. The DES controller manipulates/sequences a workcell composed of three robots, three conveyors, twelve sensors and two simulated machines. It is shown that once all information about the manufacturing process is available (i.e. using industrial engineering tools such as bill-of-materials, assembly tree and resource requirements matrix), the controller is easy to implement in the matrix formulation. Also, it was shown
MED01-012 The 9th Mediterranean Conference on Control and Automation. Dubrovnik, Croatia. June 27-29 2001
that the matrix formulation of the DES controller can give the PN description of the system. In other words, the arduous process of building the PN diagram, which is useful to analyze the DES, is completely avoided. The matrix DES controller was used both to simulate a robotic cell using MATLAB and to actually implement the supervisory controller on the workcell using LabVIEW. The simulations and implementations of the DEC are basically the same, showing the usefulness of the matrix-based formulation. Future research on deadlock avoidance and shared resource conflict resolution strategies will be performed.
[8] [9] [10] [11]
R1u1 R1u2
[12]
R1u3
[13]
R1u4 R2u1
[14]
R2u2 R2u3
[15]
R3u1 R3u2 R3u3
Discrete events
[16]
Fig. 6. Implementation of the real IMH workcell using ALBFS conflict resolution. REFERENCES [1] [2] [3]
[4] [5] [6] [7]
Buzacott J.A. and D.D. Yao (1986). “Flexible Manufacturing Systems: A Review of Analytical Models.” Management Sci. 7, pp. 890-905. Cofer D. D. and V.K. Garg (1992). “A Timed Model for the Control of Discrete Event Systems Involving Decisions in the Max/Plus Algebra.” Proc. Of the 31st Conf. On Decision and Control, pp.3363-3368. Cohen G., D. Dubois, J.P. Quadrat, and M. Voit (1985). “A LinearSystem-Theoretic View of Discrete-Event Processes and its Use for Performance Evaluation in Manufacturing.” IEEE Trans. Automat. Control, vol. AC-30, no.3, pp. 210-220. Cohen, G., P. Moller, J.-P. Quadrat and M. Voit (1989). “Algebraic Tools for the Performance Evaluation of Discrete Event Systems.” Proc. IEEE, vol. 77, no. 1, pp. 39-58. Desrochers A.A. (1990). “Modeling and Control of Automated Manufacturing Systems,” IEEE Computer Society Press. Washington. Elsayed E.A, and T.O. Boucher (1994). “Analysis and Control of Production Systems.” 2nd Ed., Prentice-Hall, Englewood Cliffs, NJ. Ezpeleta S. D., J. M. Colom and J. Martinez (1995). “A Petri Net Based Deadlock Prevention Policy for Flexible Manufacturing Systems.” IEEE Trans. Robotics and Automation, RA-11, pp. 173-184.
[17] [18]
[19] [20] [21]
[22]
Harris, B., F. Lewis and D. Cook (1998). “Machine Planning for Manufacturing: Dynamic Resource Allocation and On-Line Supervisory Control.” Journal of Intelligent Manufacturing, pp. 413-430. Kumar, P.R. and S. P. Kumar (1993a). “Stability of Queueing Networks and Scheduling Polices.” Proc 32nd Conf. on Decision and Control, pp. 2730-2735. Kumar, P.R. (1993b). “Re-entrant lines.” Queueing Systems: Theory and Applications. Switzerland. vol. 13, pp. 87-110. Kumaran, T. K., W. Chang, N. Cho and R. A. Wysk (1994). “A Structured Approach to Deadlock detection, avoidance, and solution in Flexible Manufacturing Systems.” Int. Journal Prod. Res., vol. 32, pp. 2361-2379. Kusiak, A. and J. Ahn (1991). “A Resource-Constrained Job Shop Scheduling Problem with General Precedence Constraints.” Working paper, no. 90-03, Iowa. Kusiak A. and J. Ahn (1992). “Intelligent Scheduling of Automated Machining Systems.” Computer Integrated Manufacturing Systems, vol.5, no.1, Feb. 1992, pp.3-14. UK. Lewis F. L. (1992). “A Control System Design Philosophy for Discrete Event Manufacturing Systems.” Proc. Int. Symp. Implicit and Nonlinear Systems, pp. 42-50, Arlington, TX. Lewis F.L., O.C. Pastravanu and H.-H. Huang (1993). “Controller Design and Conflict Resolution for Discrete Event Manufacturing Systems.” Proceedings of the 32nd IEEE Conference on Decision and Control (Cat. No.93CH3307-6). IEEE. Part vol.4, 1993, pp.3288-93 vol.4. New York, NY, USA. Lewis F.L., H.-H.Huang, O.C. Pastravanu, A. Gürel (1994). “A Matrix Formulation for Design and Analysis of Discrete Event Manufacturing Systems with Shared Resources”. 1994 IEEE International Conference on Systems, Man, and Cybernetics. Humans, Information and Technology (Cat. No.94CH3571-5). IEEE. Part vol. 2, 1994, pp.1700-5. New York, NY, USA. Lewis F.L. and H.-H. Huang (1995). “Control System Design for Flexible Manufacturing Systems, in (A. Raouf and M. Ben Daya)” Flexible Manufacturing Systems: Recent Developments, Elsevier. Lewis F.L., Gurel A, Bogdan S, Docanalp A, Pastravanu OC. (1998) “Analysis of Deadlock and Circular Waits using a Matrix Model for Flexible Manufacturing Systems.” Automatica, vol.34, no.9, Sept. 1998, pp.1083-100. Publisher: Elsevier, UK. Murata, T. (1989). “Petri Nets: Properties, Analysis and Applications.” Proceedings of the IEEE, vol.77, no.4, April 1989, pp.541-80. USA. Panwalker S.S. and W. Iskander (1977). “A Survey Of Scheduling Rules,” Operations Research, vol. 26, pp. 45-61. Pastravanu O.C., A. Gürel, F. L. Lewis and H.-H. Huang (1994a). “Rule-Based Controller Design Algorithm For Discrete Event Manufacturing Systems.” Proceedings of the 1994 American Control Conference (Cat. No.94CH3390-2). IEEE. Part vol.1, 1994, pp.299-305 vol.1. New York, NY, USA. Peterson J.L. (1981). “Petri Net Theory and the Modeling of Systems.” Prentice-Hall. 1981, Englewood Cliffs, NJ, USA.
Main loop
Internal loop
MED01-012 The 9th Mediterranean Conference on Control and Automation. Dubrovnik, Croatia. June 27-29 2001
[23] Saridis G.N. (1988). “On the Theory of Intelligent Machines: A Survey.” Proceedings of the 27th Conference on Decision and Control. Austin, TX USA, Dec. 1988. [24] Saridis G.N. (1995). “Architectures of Intelligent Controls.” Intelligent Control Systems, M.M. Gupta and N. Sinha, Eds. Piscataway, NJ: IEEE Press, 1995, ch. 6. [25] Steward, D.V. (1962). “On an Approach to Techniques for the Analysis of The Structure of Large Systems of Equations.” SIAM Review, vol. 4, no. 4, pp. 321-342. [26] Steward, D. V. (1981a). “The Design Structure System: A Method for Managing the Design of Complex Systems.” IEEE Trans. On Engineering Management, vol. EM-28, no. 3, pp. 71-74. [27] Steward, D. V. (1981b). “Systems Analysis and Management: Structure, Strategy, and Design.” Petrocelli Books, New York. [28] Tacconi D.A. and Lewis F.L. “A New Matrix Model for Discrete Event Systems: Application to Simulation.” IEEE Control Systems, 1997. [29] Whitney D. E., SD. Eppinger, RP Smith, DA Gebala (1991). “Organizing the Tasks in Complex Design Projects.” Computer-Aided Cooperative Product Development. MIT-JSME Workshop Proceedings. Springer-Verlag. 1991, pp.229-52. Berlin, Germany. [30] Wolter, J., S. Chakrabarty, and J. Tsao (1992). “Methods of Knowledge Representation for Assembly Planning.” Proc. NSF Design and Manuf. Sys. Conf., pp.463-468. [31] Zhou, M., F. DiCesare and A. A. Desrochers (1992). “A Hybrid Methodology for Synthesis of Petri Net Models for Manufacturing Systems.” IEEE Trans. Robotics and Automation, vol. 8, no. 3, pp. 350361. [32] Zhou M., F. DiCesare (1993). “Petri Net Synthesis for Discrete Event Control of Manufacturing Systems”, Kluwer Academic Publishers.