Copyright @ IFAC Management and Control oCProduction and Logistics, Grenoblc, France, 2000
RAPID PROTOTYPING OF ROBUST DISTRIBUTED CONTROL FOR REPETITIVE MANUFACTURING
Marek B. Zarembal), Zbigniew A. Banaszak2>, Piotr Grobelnl l
1lDepartement d'injormatique Universite du Quebec a Hull, Hull (Quebec), J8X 3X7 Canada 2)Dept. ojComputer Science and Managemem Technical University ojZielona G6ra, Poland 3)Research and Development Center oj Electrical Metrology "METROL", Zielona G6ra, Poland Abstract: This paper addresses the problem of designing the steady-state behavior of a system composed of a set of repetitive processes competing for access to shared resources. Its objective is to provide a tool allowing to prototype a robust distributed control policy as a function of the characteristics of the component processes and dispatching rules involved. The proposed logistics-oriented methodology integrates production routes design, buffers capacity assignment, and allocation of the dispatching rules that control the workflow as well as allows one to evaluate system's behavior including its steady state and transient state. Copyright @2000 [FAC Keywords: discrete event dynamic systems, rapid prototyping, distributed control, control synthesis, manufacturing systems.
1. INTRODUCTION
admissible, e.g., guaranteeing the presumed qualitative and quantitative system behaviour.
The integration of resource allocation over time (production planning) and inventory/transportation policy making (logistic planning) is receiving increasing attention (Stankovic et.al., 1998). The aim is to develop a scheduling strategy that can simultaneously reduce an impact of both logistic and manufacturing costs, while maintaining high levels of customer service. So, the question is how to achieve a well-synchronized behaviour of the dynamically interacting components, where the right quantity of the right material is provided in the right place, and at the right time. In order to meet this objective many different assumptions regarding, for instance, the capacity of available AGVs and/or local buffers, allocation of working cells and warehouses, production routings and guidepaths, etc. have to be taken into account ( Banaszak et aI., 1999).
However, the second approach based on examination of a set of sufficient conditions do not guarantee the solution obtained is an optimal one. Because of NPcomplete character of tasks' class considered such approach dominates in real-life practice. Some conditions for designing the control procedures that allow achieving the required performance of the system composed of a set of repetitive processes competing for access to common resources, while preserving some of its qualitative constraints have been already presented (Zaremba and Banaszak, 1995; Zaremba et aI., 1998). A dispatching strategy that results from a set of dispatching rules allocated to the common resources (it is assumed that each dispatching rule specifies an order the competing process can access a shared resource) is possessing a self-synchronized property, i.e. encompasses a workflow robust control. Such a self-synchronized system is capable of returning to a unique steady state from any state it was forced into as a result of an accidental disturbance, i.e., each time a disturbance (e.g., caused by operation time change, and delivery time delay) disappear a system results in
The optimal solution (if any) can be obtained, however, for a special combination of those constraints. Therefore, the solution can be obtained either through searching of a space of all possible variants (each variant has to be examined either it is feasible one or not) or through a synthesis of an
799
the same, nominal, cyclic steady state behaviour. Application of such design method (Banaszak et. aI., 1998; Zaremba et. aI., 1998) supporting evaluation of system time behaviour is limited, however, to an algebraic structure (i.e. detennining a coupling operation) which in turn depends on dispatching policy actually employed. In order to overcome this disadvantage an event driven simulator implemented in Java language has been developed (hnp:\\www.iiz.pz.zgora.pI1999). Besides a capability to evaluate a system perfonnance in a transient state it also provides a workbench for evaluation of different variants of workflow structure, buffers capacity, dispatching rules, and initial states (i.e. initial processes allocation to a system resources).
deadlock-free and starvation-free processes execution) parameters of system's behaviour. Of course, it is important to allow not only sloweddown, but also real-time and speeded-up simulation, so that each viewer could concentrate on those aspects of the process, which are most important for him. Another challenge was to exploit the portability and network-suitability of Java based simulator for offering platform-independent and distributed or place-independent (in sense of models, model data and processing programs located on different hosts) verification of workflow distributed control over local or wide-side processing and mixed processing of the information.
This paper summarizes our previous work (Banaszak and Jedrzejek, 19993; Zaremba and Banaszak, 1999; Zaremba et aI., 1998) and presents a modeling framework that provides a logistics-oriented methodology for rapid prototyping of a robust control policy. The methodology proposed integrate production routes design, buffers capacity assignment, and allocation of the dispatching rules that control the workflow as well as allows one to evaluate system's behavior including its steady state and transient state.
Besides of the above-mentioned challenges, the development of conditions sufficient for a deadlockfree workflows interaction was also considered. Such conditions (expressing relations among an initial processes allocation, dispatching rules, and buffers capacities) result then in control rules, providing required (i.e. deadlock, and starvation-free) workflows interaction. 2.3 Problem statement
The main objective of this work is to demonstrate ability of the software package for discovering the relationship existing between the behaviour of a system composed of a set of cyclic processes and the structural as well as functional parameters of its components. In this context, the problem is to find, for a given class of systems, the conditions that will guarantee the required quality of concurrently executed workflows.
2. CONCEPT 2.1 Basic idea
The idea was to combine the modem and attractive capabilities of Java language for platfonnindependent and distributed workflow control with an analytical approach to synthesis of distributed discrete dynamic systems that incorporate concurrently interacting repetitive processes (Baccelli et aI., 1992; Zaremba et aI. 1999). Thus, both Java and algebraic structure supporting evaluation of system time behaviour would complement each other, compensating each others disadvantages: a Java based software would incorporate mathematically proven formulas and algebraic structure based designing method would increase its flexibility. Properly compound they would act as a mean for rapid prototyping of a distributed control policy. Consequently, similar complement would not only allow to proof-test the workflows control policy, but also would present an inexpensive mean for investigation, illustration and even advertisement of cyclic scheduling strategies.
3. IMPLEMENTATION 3.1 Results
Consider the Distributed Control Rapid Prototyping System (CRP for short), which is Java written decision support tool, aimed at modelling and performance evaluation of concurrently interacting processes (http://www.iiz.pz.zgora.pl/wpptJiiz/crp/ crp.html 1999). Its design (see Fig. 1) enables one to specify (including operation times, capacity constraints and dispatching rules), and then to simulate repetitive processes interacting via a set of shared resources. In order to illustrate its application let us examine a flexible Automated Measuring and Quality Testing System (AMQTS) (Zaremba et aI., 1998). As shown in Fig 2, the system consists of the following resources: four inspection machines MI> M2, M3 and ~; four industrial robots RI> R 2, R3, and R..; three input/output buffers B I> B 2, and B3 , as well as one input buffer B4 , and one output buffer B5 . In addition, there are five load/unload devices (UU).
2.2 The challenges
The challenge of designing of a Java based event driven simulator was to test whether the use of event driven models would allow to simulate the dynamic interaction of concurrent workflows under different distributed control policies. Run of simulation should enable to trace the qualitative (e.g. a rate of system resources utilization) as well as quantitative (e.g.
800
The third kind of product follows an inspection route quite similar to the frrst one, i.e., the item picked up from B3 by robot R3 is transported to machine M3 if it is available, then is placed in B3 . The fourth kind of product also requires one measuring/testing operation in order to complete its inspection route. Robot R. takes an item from B4 , moves forward to ~, and then performs the testing operation if M4 is available. Next, robot R. pickups the tested part up from ~ and places it in B5 if it is available, i.e., if B5 , which is attached to B3, is free of any item. (This constraint results from the collision avoidance requirement imposed on R3 and R..) Because robot R. handles the product of type 4 through all steps of the inspection route, only one item of type 4 can be examined at a time. As a result, no more than four products of different types can be concurrently tested. There are three assumptions made in regard to the system: • products of all types are delivered and carried away so that tested parts do not jam the buffer, and empty buffers cannot be loaded until the testing processes are completed, • any machine in the AMQTS that is not inspecting a part is assumed to be available, • any robot that is not handling a product is assumed to be available, and is required to take an available item from the appropriate input buffer. In order to analyse the behaviour of the AMQTS considered, let us assume that the specification of a particular testing route is reduced to a sequence of a few main stages. Let us further assume that the frrst process has only two stages. The frrst stage contains the materials handling as well as the placement and pick-up operations, while the second stage contains only the testing/measuring operation. The second process can be reduced to four stages: the flfSt c?mprises the transfer from M 3, placement in B 2, pick up from B2 and moving to M 1; the second consists of only the testing/measuring operation on M 1; the third contains the item handling between M I and M2 and the testing/measuring operation on M2; while the fourth consists of only the testing/measuring operation on M 3 . The third and the fourth processes can reduce to processes two and three stages long, respectively.
t"I"'y Fig. 1. Modelling in CRP. Four product types are inspected in the system. The fIrst needs one measuring/testing operation in order to complete the inspection route required. The basic operations are: robot RI takes an item from B.. moves to M2, and then performs the testing operation if M2 is available (i.e., if the machine is not busy inspecting other products). Next, robot RI removes the tested part from M2 and places it in B I . Since robot RI handles a product of type I through all steps of the inspection route, only one item of type I can be examined at a time. The second kind of product needs three measuring/testing operations performed consecutively on three machines M.. M2, and M3 in order to complete the required inspection route. The following operations are performed along this route. Robot R 2 takes an item from B 2, moves to M.. and then performs the frrst testing operation if MI is available. Next, robot R 2 removes the partially examined product from M I and turns to M2 if it is available. Finally, robot R 2 removes the item from M2, approaches M3 if it is available, and then picks the tested part up from M3 and places it in B2•
It should be noted that the above reductions do not change the repetitive character of concurrently performed processes, and that the processing times of the stages involved are equal to the sum of times of the component operations. The whole AMQTS can therefore be considered as a system composed of repetitive processes following the rules of chain-like coupled sequential cyclic processes and can be graphically represented by the model shown in Fig. 3, where PC!> PC3 , PQ2, and PT4 are processes and R!>R 2,...,Rg are resources. Fig. 2. A Flexible Automated Measuring and Quality Testing System.
801
.0
R1
PI
P2
Fig. 4. Graphic representation of AMQTS in CRP specification.
Fig. 3. Graphic representation of AMQTS system. Let us assume the following parameters of component processes: tVCI.RI = 1. tVCl.R2 = 4, tVeJ.R3 = 4. tVC3.R6 = 1, tVQ2,R2 = tVQ2.R3 = tVQ2.R4 = tVQ2.R5 = 1. tVT4,R6= 3, tYT4.R7 = tVT4.R8 = 1, where tXi.j means the operation time specified by the Xi process on the Rj resource. The task at hand is to determine the shortest cycle time T and the performance index Tl of the system considered determined by the following formula:
!p,T,
Let DR j = (Pj"Pj2 ,...'pjJ denotes the dispatching rule determining the order the process Pj"Pj2.....Pjn can access to the the i-th resource. It assures that after the n-th access (i.e.• of the Pin process) the next one is Pi" and then P ib and so on. In the case considered the shared resources are R2, R3. and R6. Assuming the following dispatching rules: DR 2 = (P"P 2), DR3 = (P 2,P3)' D~= (P3,P4) , and the following initial processes allocation: the process P I is allocated to the resource R2, P 2 to R3, P3 to R6, and P 4 to R7. the processes execution shown in Fig.5 is observed.
(1)
- .., --
1J
In graphic specification of AMQTS from Fig.3 (see Fig.4) the following notation is used: instead of arrows the small dots are used (so in the case of the process PC l instead of the circle composed of two arcs (see Fig.l) the edge. ended both sides with dotes, is used (see Fig. 4)). The arcs occurring in Fig.3 are labelled in CRP specification (see Fig.4).
nT
where: n - is the number of all the component processes, T - is the cycle time of the system. Ti - is the cycle time of the i-th component process. Pi - is the number of times the i-th process occurs during the period T.
It is easy to note. that the system performance parameters are just the same as earlier mentioned, (Zaremba et al.. 1998), i.e.• T = 5, and Tl = 0.95 (19/20).
Efficiency 1J close to unity means that the system resources are used effectively. From the calculation provided in (Zaremba et al.. 1998) T = 5, and Tl = 19120. This data follows from the matrix (2).
M=
~
R s RI R 2 R 3
0 2
0 0
0
2
0
1
*
0
1
0
1
2
3
0 0
0 0
~
In order to illustrate the package application to evaluation of the qualitative properties of a system functioning let us considered the system composed of three processes, as shown in Fig. 6.
R7 Rg
I
2
3
4
1
3
0
0
3
4
0
3
4
0
0 0
4
0
0
0 4
Let operation times for the processes considered are as follows: for the process PI ; tRI =2, tR2=tR3 = 1. and for P 2 ; tR2 = tR4=1. tR5 = 3. and for P 3 ; tR6=2. tR3=tR5=I. Consider the following initial allocation of processes: the process PI is allocated to the resource RI. P 2 to R4, and P3 to R6.
(2)
Consider three cases corresponding to the following variants of the dispatching rules allocation:
where the columns mean resources, and the rows mean subsequent units of time, and
P1
k if process Pkexecutes on Ri
•••••••••
P2
(3) m·1, J. = 0 if resource RI' is free { * if processes are suspended onR i
.
P3
•••••••••
P4
••••••••• 2
In the case considered process PC j states for 2, PC 3 states for 3, PQ2 states for 2. and PT4 states for 4. Due to an initial allocation the process PC I is allocated to the resource R 2• PC 3 to ~, PQ2 to ~. and PT4 to R7.
3
4
~
6
7
8
Fig. 5. Gantt's chart of AMQTS operation.
802
9
10
4
~ '0
7
8 'g
10
i
11 ' 12 ' 13
14
i
1~ , 10
Fig. 8. Processes execution in the variant 11. Another limitation of the CRP, comparing for instance to the Petri net theory based packages, is that a top-down or bottom up analysis is unattainable. Among many problems following from the approach presented the most important one regards of prediction of the dynamic processes interaction. The examples presented show that for a given topology of processes it is possible to determine a pair: an initial state (processes allocation) and a set of dispatching rules that guarantee deadlock-free and starvation-free processes execution. A still open problem is how to determine a relevant pair guaranteeing systems optimality, e.g., in the sense of 11 performance index. Another remaining problem is how to refine operators that could support an algebraic approach to a system synthesis from a given set of presumed components (processes).
P2
pJP8
Fig. 6. System composed of three cyclic processes. Table 1 Variants of distributed control Variant Dispatching rules I DR 2=(Pt>P 2) ; DR3=(Pt>P 3) ; DRs=(P3,P 2) 11 DR 2=(P2,P 1) ; DR3=(P3,P 1) ; DRs=(P2,P 3) III DR 2=(P2,P 1) ; DR3=(P3,P 3,P\) ; DRs=(Pz,P3 ) In the case of the variant I the processes execution shown in Fig. 7 and the perfonnance indices: T=8, and 11=0.5416667, have been obtained. In the case of the variant 11 the processes execution shown in Fig. 8, and the performance indices: T=5, and 11=0.8666667, have been obtained.
4. CONCLUSION
This paper presents a new approach to the problem of designing of a steady-state behaviour of a system composed of a set of repetitive processes that share a set of reusable resources. Both an algebraical modelling and computer simulation methods are merged in order to provide a tool for rapid prototyping of a robust distributed control for repetitive processes.
In the case of the variant III the processes conclude in a deadlock state (see Fig.9).
3.2 Problems and limitations
The examples show that the package developed provides a user-friendly tool for rapid prototyping of a distributed control (including an initial processes allocation and dispatching rules assessment) for the systems composed of a set of cyclic processes. Besides of many advantages following from Java implementation (e.g. simultaneous, independent simulation of different variants of control policy), some limitations are observed as well. The most important one regards a system periodicity evaluation. It follows from the observation that an identification of system's periodicity is always limited to a period of computer experiment (simulation).
•
P1
11 I l l .
The approach presented is relevant to and can be of significant interest for evaluation and synthesis of a variety of distributed discrete dynamic systems that incorporate concurrently interacting repetitive processes, and whose evaluation in time depends on complex interactions of various parameters and constraints. Besides of the manufacturing systems the computer/communication networks are the most representatives ones.
11 IIII
11 • • • •1111 • •
P3
•••• I I I •• ' . I I 1
2
3
4
~
0
7
8
g
10
11
12
13
14
••• •
P1
P2
P2
1~
P3
10 I
2
3
4
.... .... ~
0
7
8
g
10
11
12
I I I I I I I I I
13
Fig. 9. Processes execution in the variant III.
Fig. 7. Processes execution in the variant I.
803
14
1~
10
REFERENCES Baccelli F.G.. et aI., (1992). Synchronization and linearity. (An algebra for discrete event systems) John Wiley & Sons. Chichester. Banaszak Z. and K. J. drzejek (1993). On selfsynchronization of cascade-like coupled processes, Appl. Math. Comput. Sci.. vol.3. no.4 39-60. Banaszak Z., M.B. Zaremba and L.S. Yampolski (1999). Logistics approach to repetitive workflows modelling, In: Innovative and integrated manufacturing, J.J. drzejewski (Ed.). 45-51. Oficyna Wydawnicza Politechniki Wroc· awskiej, Wroc· aw. Banaszak Z.A. at aI., (1998). Logistics models in flexible manufacturing. Preprints of 9th IFAC Symposium on Information Control in Manufacturing, Nancy-Metz, June 24-26, 1998. VoI.2,301-306. http://www.iiz.pz.zgora.pl/wpptJiiz/crp/crp.html (1999). The WWW presentation of the Dept. of Computer Science and Management, the Technical University ofZielona G6ra, Poland Stankovic J.A, et.al (1998). Deadline scheduling for real-timesystems. Kluwer Academic Publishers. Dordreht. Zaremba M.B., KJ. Jedrzejek and Z.A. Banaszak (1998). Design of steady-state behaviour of concurrent repetitive processes: An algebraic approach. IEEE Trans. on Systems, Man, and Cybernetics, vo1.28, no.2, 199-212 Zaremba M.B. and Z.A. Banaszak (1995). Performance evaluation for concurrent processing in cyclic systems. Concurrent Engineering: Research and Applications, Vol. 3. June 1995. pp. 123-130. Zaremba M.B. et al. (1999). Distributed flow control design for repetitive manufacturing processes. Preprints of the 14 th Triennial World Congress of IFAC, Beijing. P.R. China, July 5-9, 1999, Vol. A, 11-6
804