linguistic Modeling of Flexible Manufacturing Systems Kar Yan Tam, University of Texas, Austin, Texas
1. Number of different parts manufactured by the system. 2. Number of distinct production sequences of a part. 3. The set of production operations that an FMS can perform. 4. Response of system to changing production environment (robustness). Although not complete, the above four attributes, to a great extent, represent the essential elements which contribute to the flexibility of a manufacturing system. Models of FMS are numerous,s ranging from the most restricted single-stage single-process system to the most general multistage multiprocess job shop. In this paper, formal language theory is applied to the modeling of flexible manufacturing systems, and a slightly restricted job shop--heterogeneous flexible flow line-is used as the system model. In brief, formal language theory is concerned with the mathematical structure of sets of strings. ~ The initial investigation of mathematical linguistics was aimed at trying to understand the basic properties of natural languages. 7 In general, a language is defined as the set of sentences that can be derived from a finite set of symbols and a collection of rewriting rules. The rewriting rules or grammar determine how symbols are combined to form sentences of the language. The number of sentences so generated may be finite or infinite. Thus, mathematical linguistics is a powerful tool for describing a large number of phenomena or patterns by using only a finite set of symbols and a relatively small number of grammar rules.
Abstract Production feasibility, machine assignment, and machine failure in a flexible manufacturing system are studied from the perspective of formal language theory in this paper. Heterogeneous flexible flow line is introduced as the manufacturing system model. Finite state language is used to describe a flow line in terms of all the possible operation sequences that it can carry out. Issues such as production feasibility, machine assignment, and robustness can be addressed, formulated, and solved as linguistic problems. The linguistic approach presented in this paper attempts to offer new perspectives and modeling methodology in the study of manufacturing systems.
Keywords: Linguistic Modeling, Parsing, Production Feasibility, Machine Assignment, Robustness.
Introduction A flexible manufacturing system provides an environment to manufacture a large variety of parts by using a myriad of sophisticated machines capable of performing different production operations. ~-3 As pointed out by Dupont-Gatelmand, 4the exact meaning of flexibility has not been very well defined. The lack of a commonly accepted definition of flexibility and its criteria renders it very difficult to compare different FMSs. In this paper, the term "flexibility" refers collectively to the following attributes of a manufacturing system:
127
Journal of Manufacturing Systems Volume 8/No. 2
Formal language theory provides the theoretical foundation for a number of areas, especially in computer science8 and pattern recognition;9J° applications of which can be found in character recognition,~,~2 fingerprint identification,~3,~4image and scene understandingJ 5 programming language specification,~6 natural language processing,~7 compiler designJ8a9 and medical diagnosis)°a~ to name a few. It will be shown in this paper that some of the problems associated with a manufacturing process can be formulated and solved as mathematical linguistics problems. In essence, one can describe a manufacturing system by using a formal language. The intent is to provide a linguistic perspective to address the flexibility of FMSs. The degree of flexibility of an FMS is inherently embedded in the structure of the corresponding formal language. Different FMSs are described by different languages. Thus, one can compare the flexibility of different FMSs by comparing the languages that define them. The modeling scheme is shown in Figure 1. Issues pertaining to manufacturing processes such as production feasibility, machine assignments, and system robustness can be studied from the perspective of
Flext ble Manu/'acturi ng System
Ling ui sti c Hodelt ng
mathematical linguistics, and this is precisely the objective of this paper. Furthermore, the methodologiesdeveloped in this paper are akin to the application of expert systems in manufacturing;~2-~4both use symbolic techniques in their representation and processing of manufacturing knowledge. This common feature allows a synergistic integration between the two methods in actual implementation. For instance, the parsing technique can easily be augmented to an existing rule-based inference engine which itself is a pattern matching procedure. To determine whether a part can be produced using the existing machinery resources, the inference engine simply calls a special procedure (that is, the parser) to check its feasibility. There is no need for the inference engine to do the checking itself, although it can be done in a less efficient way. Linguistic modeling enables both algorithmic procedures and symbolic reasoning to be implemented using the same set of software tools that are designed for symbolic processing. The following introduces the heterogeneous flexible flow line as the model of manufacturing. Then formal language theory is applied to the description of parts and flow lines, followed by a section studying the production feasibility problem from the standpoint of mathematical linguistics. Next, the problem of machine assignment is formulated and solved as a parsing problem. Then the issue of system robustness is addressed, and system failure is defined as transformation of grammars. The concluding section discusses issues concerning the linguistic modeling technique and its possible extensions to solve production scheduling problems.
t Finite l State Language
Heterogeneous Flexible Flow Line
L
ne~r
In this section, we introduce a model of manufacturing system called the heterogeneous flexible flow line. A heterogeneous flow line is a slightly restricted job shop with the following features: 1. Machines are organized in sequence. 2. Flow of parts is unidirectional. 3. Each machine can perform a number of operations. 4. There is no setup time for a machine switching from one operation to another. 5. A part can skip one or several machines in the line. 6. Infinite buffer space is provided between successive machines.
of
~FHa~chi 1u r n )
Transformation
Figure i Linguistic Modeling of a FMS
128
Journal of Manufacturing Systems Volume 8/No. 2
7. Parts in the buffer are dispatched according to the first-in first-out (FIFO) rule. 8. Automated transport system is available to move parts from one machine to another. Unless otherwise stated, the heterogeneous flexible flow line is simply called the flow line for the rest of the paper. It is quite obvious that a flow line is equivalent to a job shop if the unidirectional flow constraint is released. On the other hand, restricting the operational characteristics of each machine so that all machines are identical will reduce a flow line to a flow shop. A schematic diagram of a hypothetical flow line is shown in Figure 2. The schematic diagram of a flow line is a specification of its machine configuration. The linear ordering of the machines and the capability of each machine (in terms of the different operations that can be performed) together determine all the possible production sequences of the flow line. In the introductory section, we mentioned four factors that contribute to the flexibility of an FMS. Machine configuration determines the first three of these factors quite explicitly. For the fourth factor (robustness), it was observed that the way machines are organized and the number of operations that each can perform have a subtle impact on the robustness of the entire system. Yet the effect is not as deterministic as the above three factors. To explain the relationship between the configuration of a flow line and its production flexibility with respect to a part, let us consider four hypothetical flow lines engaged in the coloring process of ball bearings. Example. Ball bearing parts are colored by four hypothetical flow lines F1, F2, F3, and F4. Configuration of these flow lines are shown in Figure 3. Each bearing requires two successive operations--finishing followed by painting. In Figure 3, all except F4 are
Operations"
in
1. finishing 2. surfacing 3. painting
1.lolling
I space M1
feasible for the coloring process. In F4, the painting operation has to be performed before the finishing operation or the painting operation is skipped. Neither of these is acceptable. Therefore, F4 is not feasible. Although F1, F2, and F3 are feasible, they are quite different in their degree of flexibility and robustness. In F1, the entire process is divided into two separate tasks (finishing and painting), which are performed on two separate machines (M, and M~2).In F2 and F3, there is at least one machine that can carry out the whole process (one in F2 and two in F3). If one machine breaks down in F1, the production process will come to a halt. However, if one machine breaks down in F3, the other machine is capable of performing the entire process on its own. In the case ofF2, it depends on which machine goes down. ffM n goes down, the system will halt. If M2, goes down, Mu will pick up the whole process. This example illustrates the close relationship between the configuration of a flow line and its flexibility. It is quite obvious that F3 is the most flexible and robust relative to others in coloring bearing parts. F3 has the most "flexible" machines (in terms of the different number of operations performed) and a feasible linear ordering of machines with respect to the coloring process. Moreover, we can rank the flow lines in increasing degree of flexibility as follows: F4, F1, F2, F3. Here, the machine ordering ofF3 is not important because both machines are identical in capability. However, in cases where machine functionalities are different, the linear ordering is an important factor to consider. Symbolic Description of a Flow Line. The flow lines as shown in Figure3 can be represented by coding each machine as a symbol--machine symbol (for example, M. and M42 in Figure 3). Here, a flow line is
,1 l
I r---i M2
1. surfacing 2. painting 3. unloading
1. finishing 2. painting
space
."
I J M3
Figure 2 A Heterogeneous Flexible Flow Line
129
buffer space
J q
) parts out
M4
Journal of Manufacturing Systems Volume 8/No. 2
1. finishing
being
~--~
finished
)l
p=s
) beming p~s
]
buffer space
p~s
finished
)
>1
) bering p~s
I
buffer space
l, finishing 2,painting p=s
F2
1. finishing
~t
I
buffer space
1.painting psrts
In this section, formal language theory is applied to the description of parts and flow lines. We assume the time horizon is divided into identical time intervals (milliseconds, minutes, hours, weeks, and so on). The choice of the interval unit depends on the nature of the part and the operational characteristics of each machine. For instance, if the finishing operation of the previous example is denoted by 0:, then a production sequence such as O:O:O:will stand for three successive finishing operations, each occupying a unit interval on a machine. Figure 4 shows the time span of these operations.
2.painting ) ~
bes,ring ) ~
bearing ~ - ~
Linguistic Modeling
1.finishing 2.p,tinting
f. p~inting
bearing
The double subscript is used to denote that M u represents thejth machine on the ith flow line.
1.painting
2.finishing ) ~
)t
] buffer
space
finished ) beating pwts
finished
) besting
F4
p~s
[If
Of
Of
Figure 3 Examples of Flow Lines
'c
defined as a sequence of machine symbols. There is a one-to-one mapping between such a sequence and the machine configuration of a flow line. Three sets of symbols are defined: ~ denotes the set of machine symbols {M~,M 2, ..Mp} with the subscript indicating the position of a machine on the flow line; g = {Oij [ 1 _< i _< p, 1 _
t+l
t+2
t+3
t+4
F/gure 4
Time Span of OfOfOf
A special symbol w is introduced to denote an idle interval. An operation sequence O:wO:wwO: which spans six time intervals is shown in Figure 5. In this case, the finishing operation is first applied to a part for one time interval. The part is then put into a buffer and stays idle for the next interval. Next, the part is finished again, waits for two time intervals, and is finished a third time. Having characterized the time horizon of a production process in a flow line, we proceed to define parts and flow line as languages.
Of
t
Of
t+l
t+2
Of
t+3
t+4
Figure5 Time Span of O/wOfwwOf
130
t+5
t+6
Journal of Manufacturing Systems Volume 8/No. 2
violating the feasibility constraint. In fact, {Oiw*Ofw* OF w*Ovw*Op} U {OIw*Opw*Ofw*Opw*Op} is precisely the language of the coloring process. The language so defined is in its simplest form. It has no grammar rules to derive its sentences and is simply a set of strings. Flow Line as a Language. The language describing a part is essentially a set of sentences. It does not consist of any grammar rule that governs the derivations of its elements. The language we use to describe a flow line belongs to the class of language that can be generated by a phrase-structure grammar. 7 A phrasestructure grammar G is defined as a four-tuple G = < VN,VrP, S > in which: 1. V N and V r are the nonterminal and terminal vocabularies of G, respectively. 2. V N U V r constitutes the total vocabulary V of G and V N 0 V r = oh. 3. P is a finite set of rewriting rules or productions denoted by c~----/3,where a and/3 are strings over V with ct involving at least one symbol of VN . 4. S e V N is the starting symbol of a sentence. The language generated by grammar G is L ( G ) = {x[ x e Vr* such that S _--~ x} (6) L(G) is called the phrase-structure language. Vr* is the set of finite-length strings of symbols in V r, including h, the symbol with zero length. The length of a sentence (, denoted by l#l is the number of symbols in ~ . S *_--,->x means that x is derived by systematically rewriting S using the grammar rules in P. We define a phrase-structure grammar that can generate all feasible operation sequences for a flow line as follows: F = < VN,Vr,P,S > (7) in which: V N = {S} U ~ ( M , ) U ~ ( M 2) ... U 9(M~.,) (8) V r={Oo. I l _ < i _ < N ~ , l _ < j _ < p l U i w } U / X } (9) P = P, U P, U P, (10) PI :S -- M I (11) M r , - " ~. (12) P2:M~ ~ w M i for 1 <_i<_p+l (13) P3:M~OoM ~ forl<_i<_p+l,l<_j<_Ni (14) M ~ M/+, lor 1 <_i<_p (15) where S is the start symbol, M~ is the machine symbol, and 0 u 1 <_ j <_ N i are the operations that can be performed on machine Mi (see earlier section on symbolic description). "w" is the wait symbol; "A." is the empty symbol. That is, for every sentence x e Vr*, X x = x ~. = x. p is the number of machines on the flow line.
Part as a Language. In general, each part is associated with a specification stating the material requirements and its manufacturing procedure. In this paper, we will focus mainly on the latter. A manufacturing procedure is coded as an operation sequence (a sentence). As mentioned earlier, one of the factors attributed to the flexibility of a manufacturing system is the number of distinct ways a part can be manufactured by using the system's facilities. A part can be manufactured in a number of ways. First, some operations in the operation sequence can be permuted without violating the feasibility of the sequence; that is, the partial ordering of some operations is not important. The system is free to alter the operation sequence by interchanging the appropriate operations. However, for some tasks (ball bearing coloring example), the ordering is restricted and cannot be changed. Second, it is possible that some operations can be replaced by other operations. For instance, a task involving two hole-drilling operations may be replaced by a single operation that can concurrently drill two holes provided the holes are located in different positions. If both drilling operations (sequential and parallel) are available in the system, then the flexibility of the system is relatively larger when compared with a system that performs only either one of these operations. We define a part P as a language L(P) such that every sentence of the language denotes a feasible operation sequence to manufacture P. L(P) C (O U {w})* (1) where O is the set of operation symbols (operation per unit time interval) and w is the idle or wait symbol (per unit time interval). (O U {w})* is the closure of the alphabets O U {w}. For example, consider a bearing coloring process that can be performed in either of the following sequences. OzOIOvO, O , (2) q O e q O , O, (3) Note that the wait symbol w is neglected in Eqs. (2) and (3). If we assume that the part can wait after every machine operation, then the above sequences are refined as follows: qw*qw*Ovw*Opw*O . (4) olW*O,w*O w*O,w,O v (5) The sequences imply that a ball bearing can be put into buffer for any arbitrary long period of time between successive operations. Note that the second and third operation can be permuted freely without
131
Journal of Manufacturing Systems Volume 8/No. 2
Equations (11) and (12) are the productions that start and complete the derivation process, respectively. Equation (13) consists of productions that generate a waiting time interval. Productions in P3 generate an operation symbol associated with a machine on the flow line. Equation (15) are productions that transit a part to the next machine. The phrase-structure language so defined is denoted as L(F). It describes all the possible operation sequences that can be performed using the facilities of the flow line. Infinitely many sentences can be generated by F. Yet the description of this infinite set of sentences is represented by a finite alphabet (symbols) and a small number of productions. It can be shown that the language IAF) belongs to a class of languages called finite state languages and is right linear. 'sa6 As an example, the languages of the two flow lines in Figure 5, L(F2) and L(F3), are defined as follows:
Production Feasibility The problem of production feasibility is to decide whether a part, given its production specification, can be manufactured by using the facilities of the manufacturing system. Here, production specification of a part P is a collection of operation sequences represented in the form of sentences L(P), and the manufacturing system is a flow line represented by a phrase-structure grammar L(F). We will first define the feasibility of an operation sequence with respect to a flow line. The definition is then extended to specify the feasibility of a part. The problem of deciding whether a part can be manufactured is reduced to a language recognition problem and is solved by parsing techniques. Feasibility of a Part. An operation sequence, coded as a sentence, is said to be feasible with respect to a flow line F if the sentence belongs to L(b3. In other words, an operation sequence is feasible if it is one of the operation sequences that can be generated by F. Examples of feasible and infeasible operation sequences with respect to F3 are shown below:
F2=
, where F3=, where
VN={M,,,M2,,M.,Sl V
O ,O. ,w,X }
,M,,,M.,S O ,O. ,w,X }
Feasible
P: S --" M,, M,,--OzMz, M2, --" w M n M,, -- M u M22--OjM,, M,2--OpM,2 M u ~ wM u M u -- M,3 11423~ h
P: S ~ M3,
o. o. ofofo. O,WWOzWO. O,wwO.O. OxwO.wwO wwwwOl Oxw
M,,--@M,, M , , ~ OpM,, M,, WM, l M , , - - Ms2 M32~O.M,2 Ms2 ~ 0IM32 M,2 -- wM~2 11432-- M u
Reason
Unknown operation 0 z Unknown operations 0 x
A part P, represented as a language L(P) (see Eq. 1)), is feasible with respect to a flow line Fifthere exists x such thatx e L(P) andx e L(F). That is, Pis feasible in FifL(P) (3 L(b) ~ 49. At least one operation sequence of a part has to be feasible in F; otherwise the part is classified as infeasible. From the set theoretic standpoint, the notion of feasibility may be further refined. Given a part Pand a flow line F, three types of feasibility are defined as follows:
- -
M.
Infeasible
-- X
It can also be shown that L(F2) and L(F3) are equivalent; that is, any sentence generated using F2 can be generated by F3 and vice versa. Note that any operation sequence can be performed on either M22, M3t , or M32 only. The fact is implicitly reflected in the production rules of the two grammars because cO(M,2) = ¢ 0 ( M 3 , ) = 9 ( M 3 2 ) = {Of,Op}. In this example, a n operation sequence belongs to L(F2) also belongs to L(F3). However, given a sentence, the way to derive it using F2 may be very different from the way if F3 is used. Implications of this will be explored in the study of feasibility and robustness of a flow line in subsequent sections.
1. P is feasible if L(P) C_ L(F) 2. P is partially feasible if P is not feasible and L(F) (3 L(P) ~ 49 3. P is infeasible if L(F) 6~ L(P) = 49. In Figure 6, two parts (/'1 and P2) and two flow lines (L 1 and L2) are shown as sets in the Venn diagram. The following facts are observed: 1. Pi is feasible with respect to L1. 2. P~ is infeasible with respect to L2. 3. P2 is partially feasible with respect to L1. 4. P2 is feasible with respect to L2.
132
Journal of Manufacturing Systems Volume 8/No. 2
rules described in Eq. (7) is ambiguous and this property is further exploited in the study of robustness later. To decide whether a part P is feasible, partially feasible, or infeasible, we may need to parse all the sentences ofL(P), ff we neglect the wait symbols in all sentences, then L(P) is in practice finite. Hence, the classification algorithm (written in PASCAL-like pseudocode), as shown below, is guaranteed to terminate.
L(LI)
Classification algorithm Input:
A finite state language describing a flow line L(F) and a part's language L(P) with the wait symbol "w" ignored. Output: A decision of whether P is feasible, partially feasible, or infeasible. Method: 1. Flag = "unknown"; 2. Q --- L(P); 3. While Q ~ ~b do begin 4. select x ~ Q; 5. Parse x with respect to L(F) using the Earley parser 6. if x is accepted in 5 then 7. case flag of 8. "unknown":flag = "feasible";Q = Q-{x}; 9. "feasible":Q = Q-{x}; 10. "infeasible":conclude "P is partial feasible";stop 11. end(case) 12. else case flag of 13. "unknown" :flag="infeasible"; Q=-Q-{x}; 14. "feasible" :conclude "P is partially feasible";stop; 15. "infeasible":Q=-Q-{x} 16. end(case) 17. End; (while) 18. if flag="feasible" 19. conclude "P is feasible" 20. else 21. conclude"P is infeasible"; 22. stop.
Figure6
Feasibility Relationship between Pl ,P2 and LI,/_,2
Thus, the production feasibility problem is to check into which class of feasibility a part falls. In practice, however, we are satisfied as long as at least one operation sequence is feasible. Of course, it is necessary to check the feasibility of all sentences in L(P) in some cases. In cases when a part is infeasible or feasible, the enumeration process cannot be avoided. Let us first consider the feasibility problem of an operation sequence. Feasibility Checking as a Parsing Problem. To check whether an operation sequence x is feasible with respect to a flow line F(x~L(F) ?) is identical to deciding whether x can be recognized or generated by F. As mentioned earlier, the language describing a flow line is a finite state language. Theoretically, it was shown that a finite state automation is a recognition device for finite state languages. Efficient algorithms have been developed to solve the recognition problem in a broader context. Is These algorithms are called parsers and the recognition process is called the parsing of a sentence with respect to a grammar. There are a number of parsing techniques for different classes of languages. A parser called the Earley parser 27is used in this study (see the Appendix). The algorithm is originally designed to recognize sentences from a context free language. Because the class of finite state languages is properly contained in the class of context free language, 2s therefore the Earley parser is also applicable to solving the recognition problem of finite state languages. In addition, an Earley parser accepts ambiguous context free languages. A language is ambiguous if there is at least one sentence of the language that can be generated in more than one way using the language's grammar rules. The grammar
The classification algorithm is an enumerative procedure that, in the worst case, parses all operation sequences in L(P) with F. It is known that the time complexity of the Earley parser is O(n3), therefore the algorithm requires in the worst case O(mn3) to decide which elements in L(P) are feasible; m is the number of elements in L(P) and n is the maximum length of sentence in L(P).
133
Journal of ManufacturingSystems Volume 8/No. 2
Machine Assignment
S
I
To carry out a feasible operation sequence, we have to decide which machine is responsible for which operation (per unit time interval) during the process. This is called the machine assignment problem. The solution to the assignment problem is found to be a byproduct of the parsing problem. One of the byproducts of a parsing procedure is the parse tree(s) of a sentence. A parse tree describes exactly how a sentence is derived by using the grammar rules of the language. It is possible to construct parse tree(s) of a sentence if it is accepted by an Earley parser. In cases when the language is ambiguous, as in Eq. (7), there is more than one way to generate a sentence, and correspondingly, more than one parse tree can be constructed. The parse list of a sentence has sufficient information to construct its parse tree(s) provided the sentence is acceptedP In our case, it means machine assignment(s) for an operation sequence is possible if and only if it is not infeasible. Given a parse tree of an operation sequence, the machine assignment problem can be solved by checking the parent of each operation symbol in the parse tree. The parent of an operation symbol is the machine that is assigned to perform this operation. As noted earlier, there may be more than one parse tree for a given operation sequence. Each one of which denotes a candidate machine assignment for the process. To illustrate this, parse trees of OiOiO p are constructed with respect to L(F2) and L(F3) in Figure 7 and Figure 8, respectively. For F2, the possible machine assignments for Of Oi Op are M~I MzI M22 ,MzI M22M ~ , and M22M22M22 . And for F3, the assignments are M3,M31M3~,M3,M3tM32, M31M~2M3~, and M~2M32M32. In terms of scheduling, F3 is more flexible than F2 because there is one more feasible machine assignment for OfOfOp. If the kth symbol of the operation sequence is a wait symbol ("w"), then in the kth time interval, the part is put into a buffer. As shown in Figure 2, the buffer is located in front of the machine which is denoted by the parent of "w" in the derivation tree.
M21 I
M21 I
Of
Of
0f
Op
Of
0p
~.
$
I
M2f I
Of
Op
Of
x
Figure 7 Machine Assignments of OfOfOpon F2
$
S
M!,
® \ M32 \ M33
I
Of
Of
Op
%
of
$
of
0p
7
I
I'4~I
M31
¢
I
@ \G
\@\M.
Of
Of
Op
~.
Of
of
System Robustness Robustness of a manufacturing system describes how a system behaves under the influence of exogene-
Figure 8
Machine Assignments of OfOfOFo n / 7 3
134
Op
%
Journal of Manufacturing Systems Volume 8/No. 2
Failure(M~2,F3)=F3' where, F3' = < VN',Vr',P',S' >
ous factors. Here, we will focus solely on machine failure and its effects on the entire system. We will interpret machine failure as grammar transformation. Its effects on machine assignments and feasibility of the flow line will then be addressed accordingly. Machine Failure. Suppose machine M i breaks down during the production process. The production capability of the entire flow line will then be reduced by the set of operations that Mi once performed. Parts waiting in the buffer located in front of Mi have to be cleared out or rescheduled. As a consequence, flexibility of the system will be reduced. Machine failure is interpreted as a function which maps grammar to grammar. The function, Failure, is formally defined as follows: Failure:.~ x F ~ F where, (16) Jg'= {M, ,M2 ,..J14 } (17) F as defined in Equation 3.7 (18) Failure (M~,F) = F' in which: (19) F = (20) F'= such that (21) V ~ = V u - {Mi} (22) Vr'= {O~ { 1 <_k
P'=P- {M,~
oo 11 <_j<_~}-{M,.
in which:
V / = {M3,,M33,S}
W = {o:,o,,w S' = S
}
in F3
P. S - - M~,
M3,--. wM3,
It is quite obvious that L(F3') C L(F3). It is because F3' is obtained by removing some grammar rules ofF3 and by reducing the size of F3's vocabulary. Because machine assignments of an operation sequence x are obtained by parsing sentence denoting x with respect to a flow line F, therefore the number of possible machine assignments for x would be reduced after a machine failure has occurred. To find out which machine assignments are still possible, we parse x with respect to the new grammar F' Failure (Mi,F)=F'. In fact, if we parse O:O:Op with respect to F3' as we did in the last section, only one assignment remains possible (see Figure 9).
---.
+X+ Y,2 _< i _
$
w M i } - { M i --" M/÷,}
\N32\ N33 0f
Of
Op
Figure 9 Machine Assignment of
I
OfOfOi,on F3
Comparing Figure 9 with Figure 8, only one out of four assignments remains intact. That is to say, after M32 goes down, Figure 9 is the only way to perform 0¢ 0¢ Op on the flow line. For a half-completed part, the subsentence representing the remaining operation sequence is parsed with the new grammar to check whether the remaining operations are still feasible. If not, the part
135
Journal of Manufacturing Systems Volume 8/No. 2
will be aborted or put aside until the failed machine becomes operational again.
according to some predefined criteria (for example, minimizing the maximum queue length). . To generalize the modeling techniques to other manufacturing system models by alleviating the restriction of the unidirectional flow of parts. . To investigate the plausible integration of knowledge-based manufacturing systems with the methodologies developed in this paper.
Concluding Remarks Ideas developed in this paper have been implemented using Franz Lisp in an Encore Multiprocessor UNIX environment. A prototype parser was developed as a test bed for this study. Numerous experiments with parts consisting of hundreds of operations have been performed on this parser. Results of these experiments are satisfactory given the time-consuming "garbage collection" process of Lisp. Furthermore, it was observed that parsing time grew rapidly with the number of grammar rules in a flow line grammar. We suspect that it is a matter of programming technique. Fine tuning of the system is under way to improve the performance. In summary, we have presented a linguistic approach to modeling a flexible manufacturing system. Problems arising during the production process such as production feasibility, machine assignments and machine failure are investigated by using the linguistic framework developed in the paper. We have shown that these problems can be formulated and solved as mathematical linguistics problems. Research in linguistic modeling of flexible manufacturing systems is under way in three directions: 1. The linguistic approach is extended to study how a part is scheduled in the flow line. This is equivalent to deciding how to choose a machine assignment among all possible ones. For example, there are four possible machine assignments in Figure 8. The question is which one should we pick. Under our linguistic framework, one direction is to define Eq. (7) as a weighted finite state grammar. The weight associated with each production rule corresponds to a control variable which is constantly adjusted in response to the changing environment. For instance, the weight of a grammar rule associated with a machine (Eqs. (13) and (14)) may represent the current length of queue (buffer) in front of the machine. Parse trees of sentence (operation sequence) are also weighted by accumulating the weight of each machine in the tree. The weighted parse trees are comparable with each other through their weights. Thus, the decision of selecting a machine assignment can be made by comparing the weights of parse trees
Appendix Earley Parsing Algorithm Input: A context free grammar G =< V N,Vr,P,S > and an input string x = a I a 2a3...a" . Output: The parse lists I0,I~ ,/2 ....I, for x. Methods: 1. If S ~ a is in P, add item [S~.c~,O] to Io. Perform 2 and 3 until no new items can be added to Io 2. If [B~-,/.,0] is in Io , add [A---oLB.B,O] to Io for all A-'o~.B~,O]. 3. If[A~oL.Bfl,O] is in Io, add [B~.%0] to I0 for all B~3, in P. 4. For each [B~a.afl,i] in/j.l such that a=aj, add [B~c~a.B,i] to/j. Perform steps 5 and 6 until no new items can be added. 5. If [A~o~.,i] is in/j, add [B--,o~A.fl,k] to/j for all [B~.AflJ¢] in/~. 6. If [A~o~.BB,i] is in/~, add [B~.-y,j] to/j for all B ~ 7 in P. where ol,B,7~V*,A,Be VN. Decision rule : if there are some items of the form [S--c~.,O] in IN, then x is in L(G).
References 1. G.K. Hutchinson. "Flexible Manufacturing Systems in the United States", Automation Manufacturing, 1979, pp. 99-101. 2. G.K. Hutchinson. "Flexibility is Key to Economic Feasibility to Automating Small Batch Manufacturing", Industrial Engineering, 1984, pp. 77-84. 3. B.I. Zisk. "Flexibility is Key to Automated Material Transport System for Manufacturing Cells", IndustrialEngineering, Vol. 11, No. 15, 1983, pp. 58-64. 4. C. Dupont-Gatelmand. "A Survey of Flexible Manufacturing Systems", J. Munuf. Syst. Vol. 1, No. 1, 1982, pp. 1-16. 5. J.A. Buzacott, D.D. Yao. "Flexible Manufacturing Systems: A Review of Analytical Models", Management Science, Vol. 32, No. 7, 1986, pp. 890-905. 6. A. Salomaa. Formal Languages, Academic Press, New York, 1973. 7. N. Chomsky. "Three Models for the Description of Languages", IEEE Trans. Inf. Theory., 2, 1956, pp. 113-124.
136
Journal of Manufacturing Systems
Volume 8/No. 2
8. R.T.Yeh,(ed.). Applied Computation Theory:Analys& Design, Modeling, Prentice-Hall, New Jersey, 1976. 9. K.S. Fu. Syntactic Methods in Pattern Recognition, Academic Press, New York, 1974. 10. K.S. Fu. Syntactic Pattern Recognition and Applications, Prentice-Hall, New Jersey, 1982. 11. R.H. Anderson. "Two-dimensional Mathematical Notation", Syntactic Pattern Recognition Applications, (K.S. Fu, ed.), Springer-Verlag, New York, 1977. 12. K.S. Fu, S.Y. Lu. "Applicability of Pattern Handling Methods to Chinese Language Processing", Technical Report, TR-EE 79-16, Purdue University, West Lafayette, Indiana, 1979. 13. B. Moayer, K.S. Fu. "A Syntactic Approach to Fingerprint Pattern Recognition", Proc. First lnt'L Joint Conf. on Pattern Recognition, Washington, D.C., 1973. 14. A. Grasselli. "On the Automatic Classification of Fingerprints", Methodologies of Pattern Recognition, (S. Watanabe, ed.), Academic Press, New York, 1969. 15. A. Rosenfeld, J.S. Weszka. "Picture Recognition and Scene Analysis", Computer, May, 1976, pp. 28-38. 16. T.W. Pratt. "Application of Formal Grammars and Automata to Programming Language Definition", Applied Computation Theory, (R.T. Yeh, ed.), Prentice-Hall, New Jersey, 1976. 17. D.R. Reddy (ed.). Speech Recognition, Academic Press, New York, 1975. 18. A.V. Aho, J.D. UUman. The Theory of Parsing, Translation, and Compiling, Vo[ 1: Parsing, Prentice Hall, New Jersey, 1972.
19. A.V. Aho. R. Sethi, J.D. Ullman. Compilers - Principle& Techniquesand Tooh, Addison-Wesley, Massachusetts, 1986. 20. M. lngram, K. Preston, Jr. "Automatic Analysis of Blood Cells", Sci Am., Vol. 223, No. 5, 1970, pp. 72-82. 21. I.T. Young, I.L. Paskowitz. "Localization of Cellular Structure", IEEE Tran,~ Biomed Eng., BME-22, 1, 1975, pp. 35-40. 22. P. Duchessi. "The Conceptual Design for a Knowledge-Based System as Applied to the Production Planning Process", Expert Systems for Business, (B.G. Silverman, ed.), Addison-Wesley, Massachusetts, 1987. 23. M.S. Fox. "Constraint Directed Search: A Case Study of Job Shop Scheduling", Ph.D. Dissertation, Technical Report, CMU-RI-TR-83-22, Robotics Institute, Carnegie-Mellon University, Pittsburg, Pennsylvania, 1983. 24. M.S. Fox, B. Allen, S. Smith, G. Strohm. "ISIS: A Constraint Directed Approach to Job-Shop Scheduling", Proceeding IEEE-CS Conference Trends and Applications, National Bureau of Standard, Washington, D.C., 1983. 25. N. Chomsky, G.A. Miller. "Finite State Languages", Information and Control, Vol. 1,No. 2, 1958, pp. 91-112. 26. N. Chomsky. "Formal Properties of Grammars", Handbook of Mattt Psycl~, Vol. 2, John Wiley and Sons, New York, 1963, pp. 187-194. 27. J. Earley. "An Efficient Context-Free Parsing Algorithm", Comm. ACM, Vol. 14, No. 7, 1970, pp. 453-460. 28. N. Chomsky. "On Certain Formal Properties of Grammars", Information and Control, Vol. 2, 1959, pp. 137-167.
Author Biography Kar Yan Tam is an Assistant Professor of Information Systems at the University of Texas, Austin, Texas. His current research focuses on machine learning and its applications in automated manufacturing systems. Professor Tam received his B.S. in Computer Science from the University of Illinois at Urbana, a M.S. in Computer Science and a Ph.D. in Management Information Systems from Purdue University.
137