Decision Support in Flexible Manufacaning Systems Using Timed Petri Nets Ramarathnam Ravichandran, Indiana University, Bloomington, Indiana Amiya K. Chakravarty, University of Wisconsin-Milwaukee, Milwaukee, Wisconsin
A reasonable design approach in such a situation is not to attempt a globally optimum design, but instead to construct a set of decision modules, a subset of which is applicable to a specific scenario. A good control system is required to select the subset of modules for the specific scenarios. A decision support system (DSS), in this context, is essentially a means of implementing such a control system. If the choice of decision modules is automated, then the DSS is said to possess artificial intelligence capabilities. Otherwise, the DSS can be used to indicate the implication of several different alternatives and the final choice is left to a human operator. In this paper, a DSS is developed using the latter approach where the system interacts with the human decision makers and is driven by them. Out of the three DSS subsystems, as outlined in Bonczeck et al., ~ the PPS is discussed in detail and then the interfacing needs of the language system (LS) and knowledge system (KS) for system feasibility are outlined. The objective is to devise a workable problem processing system (PPS) and not to delve in the mathematical refinements of algorithm construction and efficiency. Also, in this paper, the concept of the timed Petri nets is used as the basic building block of the PPS and to demonstrate how manufacturing performance measures can be derived quickly using the Petri net model for different decision alternatives. An alogrithm is presented for this, the theoretical foundations of which have been discussed in detail
Abstract Contingency response in a dynamic system such as a flexible manufacturing system requires that the system be able to identify and evaluate a number of alternatives. This paper shows how dummy transitions can be incorporated in a timed Petri net to model contingencies in the system such as machine or tool breakdown, quality deterioration, or production volume surge, etc. An algorithm is presented to evaluate system response in the steady state. A decision support system complete with a problem processor(incorporating the Petri net model), a database, and a query system is outlined.
Keywords: Scheduling, Real Time, Breakdowns, Decision-Support, Model, ManMachine Interface.
Introduction In a m a n u f a c t u r i n g system using flexible machines where a machine can carry out any operation depending on availability of tools and fixtures, the o p t i m u m design of the system is next to impossible as there are thousands, if not millions, of decision variables. The design complexity increases even more if there are breakdowns in the system (such as with tools, machines, and the material handling system), flexibility in the volume of production, and variations in the rate of rejects.
89
Journal of .t4anufacturing Systems Volume 5, No. 2
in Ravichandran and Chakravarty. 2 Interfacing of the PPS with the database and query system is described with an example. The F M S and the need for an integrated approach for decision support are discussed in the manufacturing control system section and then the modeling of decision alternatives is discussed. A performance evaluation algorithm is outlined, an overview of the DSS presented, and an application of the model with an example is discussed. The applications of the model are generalized. Conclusions are presented in the final section. An appendix providing a brief introduction to Petri nets follows the conclusions.
particular FMS. In their exhaustive simulation study, they found that the system performance is highly dependent upon the loading and control strategies chosen. Furthermore, heuristics that perform well in a regular job shop environment perform poorly in the FMS environment. In most of the current FMSs, production activities are automated to a large extent, but disruptions to system operation are certain to arise and will require the FMS supervisor to take corrective actions. Possible disruptions that require human intervention and decision making include, among others, machine failure, tool failure, tool replacement warning, and MHS failure. The decisions in these circumstances are, to a large extent, unstructured and the FMS supervisor will need interactive support for effective decision making. Essentially, the supervisor will have to evaluate different available alternatives as a response to a certain disruption in the F M S and make a choice from among the various alternatives. For instance, in the case of machine failure, the supervisor may have to choose between: 1. Keeping the task(s) assigned to the machine in a wait queue until the machine is repaired. 2. Reallocating the tasks assigned to it to other machines. This involves a complex sequence of tradeoffs between part production rates and machine and tool capacities. An interactive support is essential for good decisions in this context.
Manufacturing Control System The Flexible Manufacturing Systems Handbook 3 identifies three essential c o m p o n e n t s of an FMS: 1. Numerically controlled machine tools with facilities for tool magazines. 2. An automated conveyance system with fixtures/pallets to move the parts from machine to machine and fixturing stations. 3. An overall control network to coordinate the machine tools, the parts-moving elements, and the workpieces. An incoming workpiece is mounted on a fixture and is then moved on the materials handling system (MHS) to an NC machine or robot for processing. Once the piece is loaded onto the machine, the proper part processing program is initiated by the machine controller. The controller chooses the correct tools from the magazine for the machining sequence. The setup cost of switching (transferring control) from one tool to another is usually negligible. Flexible manufacturing systems seek to achieve improved efficiency through a high level of coordination and control over the utilization of versatile but expensive machinery. Hence, operating the FMS efficiently is a complex and difficult proposition. It has been widely recognized that FMSs are usually utilized at 70 to 80% of their maximum capacity. Flexible manufacturing systems are managed mainly by means of conventional job shop loading and scheduling strategies. Stecke and Solberg 4 explored loading and scheduling strategies for a
Decision Support for Manufacturing Existing approaches to the study of FMS mainly concentrate on the installation phases. It is increasingly recognized that new methods for decision support during the operational phases are necessary for enhancing productivity. A decision support system can be viewed as "dedicated to improving the performance of the knowledge workers in organizations through the application of information technology. '~ Bonczeck, Holsapple, and Whinston 6 presented a generic description of DSS as having three subsystems: namely, a language system, a problem processing system, a knowledge system, and the interface between them and the user. Decision support systems essentially provide support in both the structured and unstructured
90
Journal of Manufacturing Systerns Volume 5/No. 2
maximal system performance. Sifakis ~s generalized the results derived by Ramachandani. t6 Dubois and Stecke ~9used timed Petri nets to model FMSs under certain modeling conventions. This paper extends Petri net modeling through the explicit use of dummy transitions. A brief introduction to Petri net theory is given in Appendix A. For a comprehensive introduction to Petri net modeling, see Reference 13. For further discussion, it is assumed that the reader is familiar with the basic concepts of Petri net modeling.
problem environment. In the structured problem environment, decisions can be made by using previously enumerated procedures. In the area of automated manufacturing, Nof, Whinston, and Bullers 7 have suggested construction of a manufacturing operating system (MOS) similar to a DSS. A framework for the implementation of an MOS as a manufacturing decision support system (MDSS) is presented at strategic, middle, and operational levels of the FMS. Suri and Hildebrant s stress the need for developing a DSS for the operational phases of the FMS.
Modeling of FMS Using Petri Nets Modeling Approaches in FMS
Here, the analysis assumes that the product mix is balanced and can be obtained through a periodic input of parts. Further transportation times are negligible. For each part type it is assumed that there is one pallet and one fixture. For simplicity of presentation, assume that there is no limitation on buffer storage. These assumptions can be relaxed. Petri Net Model of a Production System. The modeling conventions to be followed in modeling FMS using Petri nets can be specified ~9 as follows: 1. The set of activities (tasks, operations) to be performed in the production system is represented by a set of transitions. Each transition is assigned the corresponding activity duration. 2. An activity is defined by the simultaneous use of one or more resources. Specifically, the number of input places of a particular transition indicates the number of resources which the activity simultaneously requires. Output places denote the activities that are required next and the release of certain resources. 3. Tokens of various types represent available resources which flow through activities according to the system control rule. The resulting Petri net models are superior to many of the existing models in that (1) circuits of activities or repeated performance of the same activities are possible, and (2) explicit representation of required resources is made. Before modeling decision alternatives, we will consider the model of a simple fixed-route F M S . 19 Suppose an FMS has three numerical control machines that process two part types. The sequence of parts on the numerical control machines is given in Figure 1.
Present modeling approaches to the FMS fall into two main groups; namely, (1) simulation a p p r o a c h e s and (2) a n a l y t i c a l a p p r o a c h e s . Normally, simulation involves analyzing each parameter through a sensitivity analysis and hence requires large computational time. Although simulation has been found to be effective in predicting system performance, it requires an exhaustive set of inputs by the FMS user (usually 200 to 400 input data items). Also, the waiting time is typically around 5 to 15 minutes. Therefore, it is not feasible to use simulation for interactive decision support. Analytical approaches, like queuing networks, 8'9 perturbation analysis, t° and operational analysis, II'j: have provided a different framework for the study of FMS performance. Analytical approaches are based upon several assumptions which may not be satisfied by an FMS. s As a result of these assumptions, predictions of existing analytical approaches have not been accurate.
Petri Nets Petri nets are a powerful tool for modeling systems whose behavior can be viewed as interference between asynchronous and concurrent processes. 13 Petri nets have been used mainly to study computer operating system behavior. In particular, Petri nets have been used to study descriptions of computer hardware and software, communication protocols, ~4 and queuing networks, t3,t5 Ramachandani ~6 first introduced timed Petri nets and provided methods to calculate throughput for certain classes of Petri nets. Ramamoorthy and H o t7 provided an enumeration procedure to find the
91
Journal of ManuJac'turing Systems
Volume5, No. 2
the availability of machines l, 2, and 3, respectively. Similarly, tokens in places F and G indicate the parts to be processed, namely, part 1 and part 2 respectively.
Part1--~Machine~-'*lM
a c h i n e ~ '~
Part2 __.I
1
~_._.___~ 2
~
3
,t..__.
Modeling Decision Alternatives
Figure 1 Three-machine
Two-partFMS
Decision alternatives can be modeled by introducing d u m m y transitions in a timed Petri net model. D u m m y transitions in a timed Petri net model have null time (= 0) associated with them. They can be used to represent activities which may exist only in certain decision alternatives. The use of such transitions can be best understood by an example. Assume that in the three-machine twopart F M S discussed previously, part 1 can be processed in different ways. The processing times for different alternatives is shown in Figure 4. For the sake of simplicity, we assume that only three alternative sequencings are possible, for parts 1 and 2 have to be processed on all three machines using a fixed time sequence. The three different ways of processing part I are termed X, Y, and Z. Alternative X will involve part 1 on machines 1 and
Part one is processed on machines I and 2, while part two is processed on machines 1, 2, and 3. The processing times for each part on the machines is shown in Figure 2.
Part Types:
1
2
Machine
1
300
100
Machine
2
250
200
Machine
3
0
300
Figure 2 Processing Times of Parts
The material handling system consists of pallets which are routed on a conveyor from machine to machine. The incoming part is m o u n t e d on a pallet using a fixture at the load / unload station. The pallet moves the workpiece to the appropriate machine. After the workpiece is processed, it is returned to the l o a d / u n l o a d station and a new part is fixed on the pallet. The cycle then repeats. The Petri net model illustrating this flow of the parts is shown in Figure 3. The transitions denote the processing of the parts by the machines. The numbers beside the transitions indicate the processing time, e.g., transition t2 has a processing time of 100 units for processing part 2 on machine 1. Machine 1 "flows" through the place-transition sequence A-h-B-t2 and returns back to place A to start over again. Similarly, machine 2, in its processing of parts l and 2 at transitions t3 and t4, respectively, o p e r a t e s in the s e q u e n c e C-t3-D-t4-C. Machine 3, on the other hand, processes only part 2 and hence has the sequence E-ts-E. The initial state of the F M S is indicated by the marking of the tokens in the places. In Figure 3, places A, C, and E possess tokens which represent
~--~---
-a
~
LOAD/ P I UNLOAD : ii STATION : ~-'(~4"_~ TOKEN FOR F PART 1 TOKENMAcHINEFORI ( L . . ~ j _ ~ : 100
A
~
, L II UNLOAD ti :_STATION_l_: TOKEN FOR - - J ~ - ' PART 2 . . . . . . (~'~)G
"1
((~c O0
MACHINE 2
I L t== 250
TOKEN FOR MACHINE 3
Figure 3 Petri net Model of
92
=
.:
(~K
FMS
.I
t,:300
J
Journal of Manufacturing Systems Volume 5/No. 2
tokens, one per input place. For instance, transition t2 (time - I00 units) results when the machine 1 token meets the pallet 2 token. The performance of the system can be evaluated using the following procedure 2 which is a modified version of Cohen et a1:20
Alternatives (processing times) X
Y
Z
Machine 1
350
0
350
Machine 2
250
250
0
Machine 3
0
400
400
1. Create the activity matrix A (n x n, where n = number of processing activities). The (i,j)th entry denotes the activity time. Blanks are replaced by '-oo'. Create the critical path matrix P (n x n) which contains the critical path(s), if any, between each pair of nodes. Blanks are replaced by '_ ~o'. Create the starting events matrix for all resources S (r x n, where r = n u m b e r of resources or tokens). Here,
Figure 4 Decision Alternatives for Processing Part 1
.
2, with 350 and 250 time units, respectively. Processing part 1 on machines 2 and 3, requiring 250 and 400 units, respectively, forms alternative Y. Alternative Z requires part 1 to be processed on machines 1 and 3 involving 350 and 400 units, respectively. These alternatives are modeled in the Petri net graph represented in Figure 5. Transitions are d u m m y transitions in the model of the flexible manufacturing system. The associated times are expressed as (0 + x + y + z).This expression takes on different values depending on which alternative is being considered. For instance, if alternative X is being considered for performance evaluation purposes, then x = 350, y = z - 0 for machine 1. Since alternative X requires 350, 250, and 0 time units on machines 1,2, and 3 respectively, the transitions take on the following values: tl: (0 + x + y + z) = (350 + 0 + 0) = 350 t3" (O+ x + y + z ) = ( 0 + 2 5 0 + 0 ) = 250 t6:(0 + x + y + z) : ( 0 + 0+0)=0
.
s,j=0 so = - ~
if a/, = i otherwise.
(2)
4. Create last tasks matrix L (n x r) which contains the durations of the last tasks performed by activities. Blanks are replaced by '- oo'.
AD: ,I STATION : L . . . . . •. -J ( l F - TOKEN FOR TOKEN FOR PART 1 MACHINE= 1 , t,:(x*y+z)
(i)
A
Similarly, for alternatives Yand Z, transitions tl, t3, t6 assume different values. The evaluation procedure using the Petri net is discussed in the following section. An alternative is specified by a combination of the values of x, y, and z. This can be easily accomplished in the database containing the Petri net representation.
TOKEN FOR MACHINE 2 I
TOKEN FOR MACHINE 3
" I
~-LOADI I I UNLOA0 ....... iL.STA~ON TOKEN FOR PART 2 . . . . .
•
)G
tz=(x÷Y ÷z )
[
t,=(x÷y-z)
L~
I t,:200
I t'=300
Figure 5 Modeling Decision Alternatives
93
, t,=100
S
Performance Evaluation of FMS The Petri net models constructed along the lines proposed here belong to the class of decisionfree graphs. Such Petri nets can be translated into algebraic equations. ]9'2° Each transition is then represented by the meeting of a specified set of
, = I iI
j
Journal of Manufacturing Systems Volume 5/No. 2
5. Derive the maximal weight matrix M ( r x r) by:
M =S®P ®L
(3)
wherein operation ® is the max operation of the minimax algebra. 2~ The operation(~as in (p(~q) in this algebra denotes the operation max(p,q) and the operation ® as in (p ® q) indicates the operation (p + q) in the usual arithmetical sense. _
6. Derive the cycle time h of the system by using the relation: :2 ~.-
max
min
j = l,n 0 < k < n - I
_
MANUFACTURING REQUIREMENTS PLANNING SYSTEM
[ (Mo)N-(Mo)k .] (4)
N-k
7. Derive the periodicity of the system by using the relation:
M "÷a= M ~ (for all n > no).
~
(5)
8. Derive the periodicity utilizations and bottleneck circuits from M. They can be found from the diagonal elements of M. The above mentioned procedure can be easily implemented and used for interactive decision support. The method is also computationally attractive compared to simulation and provides correct results about the system behavior in its steady state.
lmplemeclting I
Figure 6. Overview of the DSS Structure
Figure 6 Overview of the D S S Structure
Database and Queries Overview of the DSS for FMS
The database is relational in structure. Query statements supporting natural language commands can be translated into a relational query format. '3 The relational approach provides the sharpest definition of queries. Queries can also be interactive or tabular and the query translator can translate these forms to the relational form. Parsing of English-like queries is generally difficult because of the ambiguities inherent in natural language. In this case, however, the area of discourse is limited to the FMS environment. This makes it possible to resolve ambiguities easily and parse queries efficiently. The database schema defines the data names which are known to the system. Generally, computer systems make rigorous distinctions between attribute names and attribute values, even though both may have overlapping vocabularies. A dictionary encompassing both attribute names and values from defined domains is available. Hence, it is possible to decide which query terms are values and which ones are attribute names.
An overview of the decision support system is depicted in Figure 6. The flexible manufacturing system is monitored by the FMS control computer which keeps the FMS database updated on the position of the various resources in the FMS through the aid of real-time sensing. A relational structure is being used in the database to store the FMS model r e p r e s e n t a t i o n and the c u r r e n t p e r f o r m a n c e parameters. The DSS is linked to the plant database via a m a n u f a c t u r i n g requirements planning system (MRPS). The FMS computer is capable of initiating control activities on the FMS, e.g., part program loading. The DSS database is interfaced to the dialogue subsystem through the model base. The model base acts as a problem processing system. The dialogue subsystem translates the queries and instructions of the FMS user to the PPS. The PPS acts on the FMS control computer and FMS database. The language system present in the dialogue base is capable of using English-like commands.
94
Journal of Manufacturing Systems Volume 5/No. 2
The database dictionary, in addition to the terms used in the schema, should include the words that describe basic actions to be performed, e.g., SHOW, FIND, etc., as well as those words that describe common operations, e.g., IS, EQUALS, etc. The user query is tested only for word matches and is not parsed according to grammatical rules. This makes it possible to respond to queries like SHOW LOCATIONS (ofa particular tool), recognize CYCLE TIME (from a list of performance parameters), etc. (See the dialogue illustrated in Figure 7 and Figure 8.) The important observation about query as part of a decision support system is that queries usually arise after the data are presented to a user. s Because of the importance of both "query in context" and "ease of use of the DSS," the query language should be as "graphical" as possible. The FMS user can specify queries by pointing or drawing rather than typing. The position of query symbols is meaningful.
minal screens. The Petri net model with the dummy transitions representing the possible alternatives is stored in the database. The FMS user can also create new alternatives, and can modify or delete old alternatives as he or she deems fit. The model base contains the problem processor which translates the Petri net model into the sets of recurrence relations in (max,+) algebra and then solves for the performance parameters of the system. HELP information, menus, and English-like commands combine to support the FMS user in making effective decisions in the unstructured problem environment. Assume that an FMS user is supervising the operation of the system as conceived in the illustration earlier, with three alternatives, X, Y, and Z for part type 1. Suppose a machine tool which processes part 1 on machine 2 has failed. The FMS control computer senses this event and updates the DSS database and activates the fault recognition procedure. The DSS responds with the warning message to the FMS user as illustrated in Figure 7. The FMS user queries the system as to the availability of replacements for the broken tool. As the system responds with zero space inventory available for the tool T28, the FMS user seeks
An Example In this section, a session of the FMS user-DSS interaction is illustrated through the use of two ter-
MESSAGE : Tool T28 has broken Part P1 cannot be processed on Further action required. Enter your (indicated by '===>') or obtain help ===>
SHOW LOCATIONS Location
T28 Number
Machine M2 Spare inventory --m-->
Condition
1 0
Broken
RESCHEDULE P1 Possible Reschedulings of Part Machines
:
Current Alternative(s)
I 2
down at Machine M2 . Machine M2 command on the command line through the HELP command.
PI
(processing times)
M1
M2
M3
350 0 350
250 250 0
0 400 400 MORE...
Figure 7 Illustration of a Sample D S S Session
95
Journal of Manufacturing Systems Volume 5/No. 2
information for possible rescheduling of part 2 on other machines. The DSS searches in the DSS database for the operations that were previously performed on part 1 on machine 2 using tool T28. The DSS then determines whether the same operations can be performed on other machines, in this context, machines M 1 and M3. Assuming that the operations can be performed on machines M I and M3 using the available tools, it searches the DSS database for the relevant operations times on these machines and returns to the user with this information. If, in this search process the required information was not available, the DSS will return to the FMS user prompting for appropriate inputs. The DSS asks the FMS user to make a decision on the available rescheduling alternatives. The FMS user responds with the perfomance criterion with which to evaluate the alternatives, namely the cycle time of the system. Note that the cycle time is the reciprocal of the throughput of the whole FMS. The problem processor using the Petri net evaluation procedure evaluates the alternatives on the basis of the cycle time and responds to the FMS user (Figure 8) with the cycle time of the FMS. Based on
Do you want to evaluate Answer 'YES' or 'NO' ---> YES Enter your p e r f o r m a n c e
this information, the FMS user selects alternative Y as the rescheduling sequence. This decision is transmitted to the FMS control computer which implements this rerouting on the FMS. The DSS responds with the message that part 2 is being rescheduled.
Generalization of Applications The DSS framework just presented is also suitable for other contingency decisions. By appropriate changes in the transition times, and in the number and placement of tokens, many decision alternatives can be analyzed. For instance, the FMS user may have to meet an enhanced demand for a particular part type for a short period of time. In this situation, one alternative is to increase the number of part type units processed in the FMS. This can be represented by introducing one or more tokens (for the pallets carrying the part type). Correspondingly, the processing times will have to be increased, e.g., one more token will result in the doubling of processing times of that part type. The FMS user can examine the performance parameters of the system
the a l t e r n a t i v e ( s )
evaluation
9
criteria
---> CYCLE TIME Current cycle time of the s y s t e m is 700. Do you think changes are to be made to this c r i t e r i o n Answer 'YES' or 'NO' --~> NO Cycle times under steady Alternative(s)
---> I O.K. , Part
P1
state
I 2
Enter your chosen a l t e r n a t i v e
?
700 750 number
.
is being r e s c h e d u l e d on M a c h i n e s T h a n k you !
Figure 8 lllustration of a Sample DSS Session
96
M2 and
M3
.
Journal of Manufacturing Systems Volume 5/No. 2
under introduction of one more token, two more tokens, etc., and decide on which alternative to undertake. A similar situation arises in the case of a temporary quality control failure. For instance, the rate of defectives may increase resulting in an effective reduction of production rate. The F M S user may like to increase the production rate temporarily to meet the original volume of units that meet the quality standards. This problem can be analyzed in lines similar to those above. In the case of a machine failure, the F M S user may have different part(s) rerouting alternatives available. Each of these contingencies can be modeled by changing the transition times. The times of those transitions previously on the path of the broken machine will become zero. Transition times introduced elsewhere in the model may be the same or different from those on the broken machine. This depends upon the capabilities of the machine(s) on which the parts are being rescheduled. In the event of a partial failure of the materials handling system, the F M S user can examine the impact of the alternatives on the system performance. A standby M H S may be available, but the processing times may slightly increase if the M H S is of the linear track type due to delays in loading, unloading, etc. This can be analyzed by changing the relevant transition times on the part movement cycles. If no standby M H S is available, the F M S user will have to reroute the part types on other machines. Different reschedulings can be evaluated by a combination of changes in the transition times and token representations. In many contingencies, exact reroutings may not be available. In those circumstances, the FMS user may decide to increase the rate of production for other part types for a t e m p o r a r y period of time until the F M S is restored to its original state. This includes time for repair or replacement of the resource. Later on, when the F M S is restored to the original position, the user may have to compensate for the lag in production volume of the part types that were temporarily not processed. This would be acheived by increasing the production rates. All these contingencies can be efficiently analyzed using combinations of the procedures outlined above. The F M S user may sometime have to decide between different part type sequencing alternatives. If the bottleneck places form a circuit, then changes
in the initial position of the F M S will have impact on the transient behavior of the FMS and will not affect the steady state behavior of the FMS. In such a case, the F M S user is free to choose any sequencing. If, however, the bottleneck places do not form a circuit, the F M S user can evaluate the different sequencings by changing the initial position of the tokens (resources) in the model and by examining the performance parameters. If loading and unloading times are significant, they can be taken into account by introduction as transitions as shown in Figure 9. Similarly, significant setup and transportation times can be taken care of in the analysis. Here is an illustration of the interactions between the various subsystems of the decision support system with the specific example of part type
STARTING POSITION FOR PART TYPE
LOAD/ UNLOAD I STATI~ PALLETRETURNSAFTER FINALPROCESSING
()
STARTING POSITION FOR PART TYPE
) (LOADINGTIME) (UNLOADING TIME) PALLET RETURNS AFTER FINAL PROCESSING
Figure 9 Modeling Load/Unload Times
97
Journal of Manufacturing Systems Volume 5/No. 2
1. 2. 3. 4. 5. 6.
Periodicity of the system. Minimum cycle time. Maximum production rate. Critical resources. Under-/over-utilization of bottleneck machines. All machine utilizations. Control actions can be inferred from the above results of the analysis. For instance, critical resources together with bottleneck machines provide for guidelines oriented toward enhancing the throughput of the system as a whole, in the long run. In case dependency of steady states on the initial positioning of resources exists, the FMS can be started in the steady state that is most preferred in terms of the performance parameter(s) proposed by the FMS user. Note that these results are of equal interest in the study of other discrete event deterministic systems such as certain computer operating systems. The above approach can be extended to derive an "optimization procedure" for the resource utilization of the system. Predicate calculus can be used with the PPS to build "artificial intelligence" into the D S S . 6 Further research in these areas is underway to utilize the full potential of real time control for the FMS.
demand increase. The enhanced demand for a particular part type is transmitted from the plant database to the DSS database through the MRPS. The dialogue subsystem then informs the FMS user of this change. The user decides to explore the possibility of increasing the production rate. The FMS user queries about doubling the production rate of the part type. The PPS transforms this request to the appropriate problem format and introduces the necessary changes in a temporary working model of the FMS. It then analyzes the resulting performance parameters and returns to the user through the language system with the parameter(s) that the user is interested in. After studying the resulting performance parameters, the user queries about tripling the production volume of the part type. This request is transmitted to the PPS which again performs the same cycle of activities and returns to the user with the appropriate parameters. If the user decides on doubling the production rate of the part type, the decision is transmitted to the FMS control computer through the DSS database. The FMS control computer initiates the necessary physical changes in the FMS to achieve this. After the required volume of production to meet the increased demand is accomplished, the DSS database transmits the information to the plant database through the MRPS. The user is informed of this and then decides to put the FMS to the original scheduling position before the demand increase. This is implemented by the FMS control computer by retrieving the original position from the DSS database.
Appendix A Brief Introduction to Petri Nets. A Petri net consists of four parts; namely, a set of places P, a set of transitions T, an input function I, and an output function O. The input and output functions relate transitions and places. Consider the Petri net shown in Figure 10. The circle labeled A denotes a place. The dot inside the place A represents a token. The token here represents a resource. The vertical bar shows the transaction t~.
Concluding Remarks The modeling of the FMS decision alternatives suggested in this paper is suitable for the interactive decision support model and is amenable to efficient computational procedures. Thus, it is superior to simulation in the realm of decision support. It is also better than the many analytical approaches in that it avoids unrealistic assumptions made by most of the existing analytical approaches in this regard. Accurate performance predictions in the long run are possible. Performance evaluation can be done in terms of the overall system throughput and other parameters. The parameters available from the present approach include:
TI = 10
Figure 10 A Simple Petri Net
98
Journal of Manufacturing Systems Volume 5) No. 2
In a timed Petri net, time values are associated with transitions. Here, the transition h, as shown, takes 10 time units to complete. The transition has one input arc from place A and has one output arc which goes back to place A. The arrows denote the flow of the token. Transaction tl can fire since it has a token in its (only) input place A. The token is said to be "processed" at transition tl for 10 time units and then is returned back to place A. The cycle of events repeats as the token keeps "flowing". Thus, tokens reside in the places and control the execution of the transitions of the net. A Petri net executes by firing transitions. A transition is f i r e d by removing tokens from all of its input places and creating new tokens which are distributed to its output places. A transition may fire if it is enabled, i.e., when it has at least as many tokens in it as arcs from the places to the transition. A Petri net structure, C, is a four-tuple, (C= P, T, L O) where:
A Petri net graph is a representation of Petri net structure as a bipartite directed multigraph. It is very useful in illustrating the concepts of Petri net theory. It has two types of nodes: a circle 0 representing a place, and a bar I representing a transition. Directed arcs connect the places and the transition. A Petri net graph G is a bipartite directed multigraph:
where: V : {v~,v2 ..... v,} is a set of vertices A : {al,a2 ..... a,} is a set of directed arcs, a, : (vj,vk), vj,vk ~ V and V= P T , P
T:O
(A-3)
for each directed arc, aie A, if a~ = (vj, v~) then either vje P and v~ e T
P : {p~, p2 . . . . . p,} is a finite set of places, n>0. T : {h, tz . . . . . tin} is a finite set of transitions, m~0. P U T - 0. The set of places and the set of transitions are disjoint. I: T - - P Oo is the input function, a mapping from transitions to bags of places. O: T - - poe is the output function, a mapping from transitions to bags of places.
(A-4)
or
vie T a n d vk e P A m a r k i n g ~ of a Petri net C - (P, T, L O ) is a function from the set of places P to the non-negative integers N, #: P - - N . It can also be defined as an n-vector, U: (~l, ~_,..... U,) (A-5)
The use of bags, instead of sets, for the inputs and the outputs of a transition allows a place to be a multiple input or a multiple output of a transition. The multiplicity of an input place of P~ for a transition tj is the n u m b e r o f occurrences of the place in the input bag of the transition, #(P,l(tj)). In a similar vein, #(P,O(tj)) denotes the multiplicity of an output place P~ for a transition tj. The input and output functions can be extended to map places into bags of transitions, in addition to mapping transitions into bags of places as above.
where: n=P and each #~ e N, i = I ..... n A marked Petri net/~ = (C,~) is also expressed as # = (P,T, L O , u ) . On a Petri net graph, tokens are represented by small dots (-) in the circles. A transition tj is enabled if: I~(P,) >-- # ( p , l ( t j ) ) , V p~ e P
(A-6)
Firing an enabled transition tj results in a new marking u' of the Petri net:
Thus: I ' . P ~ Too O: P -- Too
(A-2)
G:(V,A)
#'(p~ = # (p,) - # ( p , l ( t j ) ) + #(p,O(tj)).
(A-l)
where:
(A-7)
Transition firings can continue as long as there exists at least one enabled transition. When there are no enabled transitions, the execution halts.
#(tj,l(Pj)) = #(P~,O(tj)) O(tj,O(Pj))= #(Pi,I(tj))
99
Journal of ManuJ~tcturing Systems Volume 5/No. 2
20. G. Cohen, Didier Dubois, J.P. Quadrat, M. Viot. "A Linearsystem-theoretic View of Discrete Event Systems', Proceedings of the 22nd IEEE Conference on Decision and Control, San Antonio, Texas, 1983. 21. Raymond Cunningham-Green. MinimaxAIgebra, Springer-Verlag, Berlin, 1979. 22. R.M. Karp. "A Characterization of the Minimum Cycle Mean in a Digraph", Discrete Mathematics, Volume 23, 1979, pp. 309-311. ZJ. C.H. Kellogg, J. Burger, T. Diller, K. Fogt. "The CONVERSE Natural Language Database Management System: Current Status and Plans", Proceedings of the A CM-SIGIR Conference on Information, Storage and Retrieval, 1971, pp. 33-46.
References i. R.H. Bonczeck, C.W. Holsapple, A.B. Whinston. "Future Directions for Developing Decision Support Systems", Decision Science, Volume I I, 1980, pp. 616-631. 2. R. Ravichandran, A.K. Chakravarty. "Performance Evaluation and Control of Flexible Manufacturing Systems Under Decision Alternatives", Working Paper, School of Business Administration, University of Wisconsin-Milwaukee, Milwaukee, Wisconsin, 1984. 3. The Flexible ManuJacturing Systems Handbook, The Charles Stark Draper Laboratory, Inc., Cambridge, Massachusetts, 1982. 4. K.E. Stecke, J.J. Solberg. "Loading and Control Policies for a Flexible Manufacturing System", International Journal of Production Research, Volume 9, No. 5, 1981, pp. 481-490. 5. R.H. Sprague, Jr., E.D. Carlson. Building EfJeetive Decision Support Systems, Prentice Hall. Englewood Cliffs, New Jersey, 1982. p. 8. 6. R.H. Bonczeck. C.W. Holsapple, A.B. Whinston. A Generalized Decision Support System Using Predicate Calculus and Network Database Management ':. Operations Research, Volume 29, N o. 2, 1981, pp. 263-28 I. 7. S.Y. Nof, A.S. Whinston, W.I. Bullers. "Control and Decision Support in Automatic Manufacturing Systems", AIIE Transactions, Volume 12, No. 2, 1982, pp. 156-169. 8. R. Suri, R.R. Hildebrant. "Modeling Flexible Manufacturing Systems U sing Mean Value Analysis", Working Paper, Division of Applied Sciences. Harvard University, Cambridge, Massachusetts, 1983. 9. J.J. Solberg. "Quantitative Design Tools for Computerized Manufacturing Systems", Proceedings of the Sixth North American Metalworking Research Committee, Gainesville, Florida, 1978. 10. Yu Chi Ho, Xiren Cao. "Perturbation Analysis and Optimization of Queuing Networks", Journal of Optimization Theorr and Applications, 1983. 11. J.P. Buzen, P.J. Denning. "Operational Treatment of Queue Distributions and Mean Value Analysis", Computer Performance, Volume I, 1980, pp. 6-15. 12. P.J. Denning, J.P. Buzen. "The Operational Analysis of Queuing Network Models", A CM Computing Surveys, Volume 10, No. 3, 1978, pp. 25-262. 13. James L. Peterson. "Petri Net Theory and the Modeling of Systems", Petri Net Theorr and the Modeling of the S.vstems, Prentice Hall, Englewood Cliffs, New Jersey, 1982. 14. Michel Diaz. "Modeling and Analysis of Communication and Cooperation Protocols Using Petri Net Based Models", Computer Networks, Volume 6, No. 6, 1982, pp. 419-441. 15. Erol Gelenbe. "'Stationary Properties of Timed Vector Addition Systems, in Deterministic and Stochastic Scheduling, Dempster et al. (editors). D. Reidal Publishing Company, Dordrecht, Holland, 1982, pp. 223-232. 16. Chander Ramachandani. "Analysis of Asynchronous Concurrent Systems Using Timed Petri Nets", Ph.D. Dissertation, Department of Electrical Engineering, Massachusetts Institute of Technology, Cambridge, Massachusetts, 1974. 17. C.V. Ramamoorthy, Gary S. Ho. "Performance Evaluation of Asynchronous Concurrent Systems Using Petri Nets", IEEE Transactions on Software Engineering, Volume 6, No. 5, 1980, pp. 440-449. 18. J. Sifakis. "'Use of Petri Nets for Performance Evaluation", Acta Cybernitica, Volume 4, No. 2, 1979, pp. 185-202. 19. Didier Dubois, K.E. Stecke. "Using Petri Nets to Represent Production Processes", Proceedings of the 22nd IEEE Conference on Decision and Control, San Antonio, Texas, 1983.
Bibliography Bard, Y. "'Some Extensions to Multiclass Queuing Network Analysis", PerJbrmance of Computer Systems, (M. Arato, editor), North Holland, Amsterdam. 1979. Chen, P.H., Talavage, J., "'Production Decision Support System for Computerized Manufacturing Systems", JournalofManufacturing Systems, Volume I, No. 2, 1982, pp. 157-168. Cook, N.H. "'Computer Managed Parts Manufacture", Scientific American, Volume 232, No. 2, 1975. Dupont-Gatelmand. C. "'A Survey of Flexible Manufacturing Systems", Journal of Manufacturing Systems, Volume I, No. 1, 1982, pp. 1-16. EIMaraghy. H.A. "'Simulation and Graphical Animation of Advanced Manufacturing Systems", Journal of" Manufacturing Systems, Volume 1, No.I. 1982, pp. 53-64. Eversheim, W.P, Hermann, P. "Recent Trends in Flexible Automated Manufacturing", Journal of Manufacturing Systems, Volume I, No. 1, 1982, pp. 139-148. Hildebrant, R.R. "Scheduling Flexible Machining Systems Using Mean Value Analysis", Proceedings of the IEEE Conference on Decision and Control, Albuquerque, New Mexico. 1980. Hughes, J., Hutchinson. G.K., Gross, K.E. "Flexible Manufacturing Systems for Improved Mid-volume Productivity", Proceedings of the 3rd A lEE Systems Engineering Conference. Jablonowski, J. "Aiming for Flexibility in Manufacturing Systems", American Machinist, 1980, pp. 167-182. Mayer, R.J., Talavage. J.J. Simulation of a Computerized Manufacturing System, Report Number 4, School of Industrial Engineering, Purdue University. West Lafayette, Indiana, 1976. Reiser, M.. Lavengerg, S.S. "Mean-value Analysis of Closed Multichain Queuing Networks", IBM Research Report RC-7023, Yorktown Heights, New York, March 1978. Reiser, M., Lavengerg, S.S. "Mean-value Analysis of Closed Multichain Queuing Networks". Journal of ACM, Volume 27, No. 2, 1980, pp. 313-323. Schweitzer, P. "'Approximate Analysis of Multiclass Closed Networks of Queues", Presented at the International Conference, Stochastic Control and Optimization. Amsterdam, 1979. Suri, R., Cao, X. "'Optimization of Flexible Manufacturing Systems Using New Techniques in Discrete Event Systems", Proceedings of the 20th Allerton ConJ~rence on Communication, Control, and Computing. Monticello. Illinois, October 1982.
100
Journal of Manufacturing Systems Volume 5/No. 2
Author(s) Biography Ramarathnam Ravichandran is an associate instructor and a doctoral student majoring in information systems at the Department of Operations and Systems Management, Indiana University, Bloomington, Indiana. He received his M.Com. from the University of Madras, India, and his MBA from Washington State University. His areas of interest include database management, decision support systems, flexible manufacturing systems, and human decision-making models. He is currently working on the application of artificial intelligence techniques in database design and in flexible manufacturing systems. Amiya K. Chakravarty is a Professor at the School of Business Administration, University of WisconsinMilwaukee. He received his M.Sc. and Ph.D. in operations research/operations management from the London School of Economics, London, United Kingdom. Dr. Chakravarty's current research interests are in automated manufacturing, artificial intelligence, and decision support systems. He has also done extensive research in the areas of multiproduct inventory coordination, group discounts, multiechelon inventory systems, group technology, mixed model line balancing, investment in multistage production systems, quality control in multistage production systems, and optimal hierarchical system design. Dr. Chakravarty has published extensively in the International Journal of Production Research, Management Science, Operations Research, liE Transactions, the Journal of Operational Research Society, and Decision Sciences.
101