A Matrix Framework for Manufacturing System Scheduling and Design

A Matrix Framework for Manufacturing System Scheduling and Design

A MATRIX FRAMEWORK FOR MANUFACTURING SYSTEM SCHEDULING AND DESIGN B.-B. HUANG"', N. BARZIN"', and F.L LEWIS'" ·Univlnity olTUM at Arlington, AlltomDti...

1MB Sizes 1 Downloads 90 Views

A MATRIX FRAMEWORK FOR MANUFACTURING SYSTEM SCHEDULING AND DESIGN B.-B. HUANG"', N. BARZIN"', and F.L LEWIS'" ·Univlnity olTUM at Arlington, AlltomDtion cfc Robotic.s RulQrch l""titlltl, Ft. Worth, TX 76118, USA

Abstract: AS\'stems theory point of view is used to develop a new matrix framework for rule-based c~ntroller design for reentrant flow lines and job shop scheduling with variable pan routing. The controller is comprised of inner and outer loops, .where the inner loo~ is decision-free \\ith no shared resource problems. The outer loop mvolves shared routmg choices and so requires respectively a confict resolution input UCR and a choice-task decision input u selected based on dispatching rules. Using matrices over a nonstandard ('and'for') algcbra to describe the system structure. a new system with different pan routings can be obtained by changing only an operation sequencing matrix Sup Ke\"\\'ords: Rule-based controller:discrete event systems:manufacluring scheduling; conflict resolulion:job shop design:dc.1dlock. 1. INTRODUCTION today's high-mix low volume manufacturing scenario, lcreasing the ability to design a feasible and cffective roduction schedule becomes very imponant Effective roduction scheduling can be defined as producing the right arts by the due dates by allocating available resources over me to best satisfy some set of performance criteria. A latrix representation for reentrant flow line and job shop esign with variable part routing is developed here to escribe and control a manufacturing system to reach roduction goals. Using this matrix framework for job shop esign in flexible manufacturing systems (FMS), the :quence of operations (routing) is simply represented using n operation sequencing matrix S~,.

[l

The decision input II~. resolves shared resource conflicts, and decision input 11 ~c resolves issues related to variable part routings.

In this paper we study some basic manufacturing structures, providing matrix formulations for their description. Included are the Single-Machine-5ingle-Part-Type (SMSP), the Single-Machine-Multiple-Part-Type (SMMP), and the Multiple-Machinc-Single-Part-Type (MMSP) structures. It is indicated how to combine these into the MultipleMachine-Multiplc-Part-Type (MMMP) system using an operation seguencing matrix S~,. Depending on the properties of S~" the resulting structure is either a (generally reentrant) flow line or a job shop with variable part routings. Conflict resolution inputs II~. and lI~c are introduced respectively to deal with shared resources and variable part [l Industrial Engineering (lE) there is a wide variety of routings. tandard tools available for manufacturing scheduling such 5 the partial assembly tree, bill of material (BOM), resource :quirements matrix (Kusiak, 1992) and design sequencing 1. DISPATCHING RULES AND POLICIES OF FMS latrix (Steward, 1981; Eppinger et al., 1990). The relation r these to Discrete Event Dynamic Systems (DEDS) using The scheduling of a manufacturing system can be split into opular approaches such as Petri Nets (PNs) and maxplus is four di1ferent levels as shown in Fig. 1. The first level of the bscure. system is the highest level of decision making; the overall schedule of the organization, or static schedule, known as 1 (Lewis, 1993, 1994) a theory is being developed that Production Plan (PP) is developed through information rovides a rigorous, repeatable design algorithm and a set of provided by the marketing department or forecasts (Wu, nalysis tools for DEDS controllers. Starting with the design 1992). A midterm schedule known as the Master Production :quencing matrix and resource requirements matrix, a Schedule (MPS) is developed after the production plan has J.le-based controller is constructed that has inner loops for been established. Next, a tentative shipping/purchasing on-shared resources, and outer decision-making loops for schedule is developed using tools such as Material Wed resources and choice tasks. Within this framework Requirements Planning (MRP). The third level selects the is obvious how to use standard manufacturing engineering decision-making dispatching rule for the system based on )(lIs as a starting point for sequencing controller design. internal and external factors and performance measures. In he theory unites the lE approaches with PN and maxplus the fourth level, a given dispatching rule is executed on the ,rmulations, showing as well that the dispatching problem shop floor until further notice. Schedulers have used many lust be addressed in the outer loops to generate a conflict di1ferent rules to reach a suboptimal schedule which is :solution input II~. and a choice-task decision input lI~c' 353

implementable by the company (panwalkar, 1977; Kusiak, 1992).

formulation is also useful to simulate system performance using a digital computer. In the following discussions. four basic manufacturing cell structures will be introduced step by step.

Level 1

3.1. Single Machine for Single Part Type (SMSP)

Consider a manufacturing unit with one machine Ml, and a queue Qll, with the capacity length Lll as sketched in Fig. 2. A part type PI is processed by Ml, (which performs task 0: ) to produce the final product. The machine is loaded and unloaded automatically. We define such a unit as a workcell.

Lev,12

Level 3

3

~

Level 4

Failure

Calculations DispllChing

For

Dispatching Rule

Rul

e

Denote by V = {PP lI, QlI. 0 lI } the set of all the operations to be performed (pP lI stands for the presence of part type P I on machine Ml the first time), lip:' = {PIli} the part input operation, and Yp:' ={POl l } the part output operation. The set of the resources is denoted by R ={L: I. Ml} . From a systems theory perspective, we define two sets of logical variables in negative logic with the same name as those in V and R, subscripted respectively by c and s where c signifies the completion of an operation or resource release (logical values 1 for false, 0 for true in negative logic), and s represents the start command for an operation or a resource release (logical values 1 for false, 0 for uue in negative logic).

Fig. I Four level structural breakdown of workcell controller

3. MATRIX REPRESENTATION OF WORKCELL STRUCTURE OVER A NON-STANDARD ALGEBRA In order to design a manufacturing system, a few basic manufacturing cell structures may be constructed. By using these basic workcell structures as building bloclcs, a matrix framework for describing the manufacturing systems can be developed and implemented efficiently. In the rule-bascd controller formulation described in references (Lewis, 1993, 1994) a matrix 'and'for' algebra is used., where standard matrix operations of 'multiplication' and 'addition' are replaced respectively by logical 'and' and 'or' operations, and status vectors are expressed in negative logic (i.e., '0' represents task completion and task start commands).

The matrix formulation is important from several points of view. Based upon the matrix formulation to be described, system behaviors with conflict, and deadlock can be easily analyzed in terms, e.g. of matrix null-spaces. A two-level matrix controller design structure for the complicated job shop manufacturing structure can be developed effectively in this way. For instance, a Kanban-type feedback structure that avoids deadlock can be designed and implemented. By changing only an operation seguencing matrix, S~., the description of a new system with different part routings can be quickly obtained without redrawing PNs. The matrix

Fig. 2 The PN corresponding to the SMSP c:a.se

By applying a set of if then else rules, the task sequencing combining with resource requirements can be described as follows: if if if if

(pIl!= 1) then (ppl!= 1) else (pP:!=O) (pP:!= land L:! = 1) then (Q:!= 1) else (Q:!= 0) (Q:!= 1 andMl .. = 1) then (o:!= 1) else (O:!=O) (Ol!= 1) then (po:!= 1 andMl, = 1) else (po:!= 0 and Ml,=O) (3.1.1)

A ~ ' no> one can see, ppll11 , QII I, , 011 I, , poll I, equal either I or 0, depending on the completion condition of the precedent process(es). These contain the information needed for sequencing tasks, and controller state variables can be introduced as:

... -PIli ..... pplI ... cQIII .. , .... ... "011 I .. , "'2 I .. , ...) I .. ·

"'1

(3 .1.2)

The controller sets the corresponding c variable to 0 immediately after a condition X," I, i c 1- 4, occurs. By

354

using the operation '.' and '+' with the meaning of logical 'and' and 'or' in negative logic and combining the task sequencing and the resource requirements, the controller state equation can be implemented easily as shown below:

[ a.

0 1 0

_ +[ ]T. Ml,

1 0 0 0

called the resource release matrices, S, 11 is called the output '1

matrix. From Eq. (3.1.7) the controller state equation, it is important to mention that F,,:I represents the Steward's

prcc:cdence matrix (Steward. 1981) and FL:I , FAIl : are equivalent to Kusiak's resource equations.

H;f ~ l[ ~~! H;lL~.

[o

matrix. S"II• is called the task start matrix. SL 11I and S." I are ""l

~-..l ScM4IIie A.a.&I)W. jj -.i

]T . PI-11

-.

rl ~biI ... ~ '.

(3.1.3)

I •.

..... Ii----~

The matrix form of the rules for starting task operation and starting resource release is expressed by

_(U'!)

1. . 11¥' .....

[~f..

000 o I 0 0 j=[ 0 0 0

Ll! = [

0 0

l Oi

L (3.1.4)

I L

1 0 ] . [ Xi Xi .ij .i4

MI,=[ 0 0 0 I ] . [ Xi Xi .ij .i4

cu.I)

PO:~=Yp:' =[O 0 0 l]-[Zi

Xi ii

z.f.

Y,", =S,,, "

(3.1.10)

' ,X,I

is the controller state vector for part type PI, is the task completion (start) vector, rL III. ,rAll.(rLII,rAll,) are the resource completion (release) 11

Here,

CU.II)

!IaI

..

....

loll.., .

%,1

v:; (v:!)

vectors, 11,:1 is the input vector, Y,:I is the output vector respectively. As one can see later, one part type might have to go through different operation processes. This means that the controller state vector xpI , i =I, -, can contain sub-vectors for different workceUs.

F Va11 is called the task sequencing matrix, FLII1 and FJJ\ II are called the resource requirement matrices, and F~ 11 the input

'1

lM!i

_.-1.."

-,,;:-

(3.1.6)

The rule-based controller structure for equations (3.1.3) to (3.1.6) is shown in Fig. 3 and consists of the following equations: • Controller state equation: -.xpl = F ":' . I (317) "l,i + F L:'· -+F 'L:.! All: . -rut, + F._,:' 0",:' .. where FAIl: stands for the part type PI entering machine MI the first time. . li (3.1.8) • Task start equallon: VI, =S.:' ' '%,1 • Resource release equation: (3.1.9) r L"~ = Sr 'I" . ,X,I; rAIl, = Sr~I" '%,1 • Output equation:

-..- ....

~ ,.. ~

The output equation is

(J.u)

~

(3 .1.5)

I-

--.. . I-

J L

r, r.

~

',14...,

" I..cI!uL

lIIIiIIII

' .. -Tr,

1

.-..

.... ,.

I=-

_ o.

1'---

'.

...

,..

Fi,. 3 Diagram of the rul~ba.scd-<:ontrollcd FMS of manufacturing ICbcdlllina I)'StCm

These developments show how to obtain a PN description using a step-by-step design procedure. For the single-machine-single-part-type (SMSP) case, there are no choice tasks or shared resources. The SMSP case forms the basic element for every manufacturing system structure. From the SMSP stn1cture representation, one can construct different conditions for manufacturing scheduling models as shown in the following discussions. The importance of the matrix formation is illustrated by the next result which shows the relation to PN. Define F" ~ [ F"" : Fw: ] the task sequencing matrix, and the blocks F_ F.. are corresponding to non-choice and F", : Fn ] the resource requirement choice-tasks; F, matrix. and the blocks F_ F,. are corresponding to non-shared and shared-resources respectively. In the SMSP case above, one can see thatF"I' e F"" and , FAIl: e F",.

=[

r

Define S" =[~ : SJ.: the task start matrix, and the blocks S"", Sw: are corresponding to non-choice and

r

the resource release choice-tasks; S, =[ SI.. : ~ matrix. and the blocks S"'. SrI are corresponding to

355

non-shared and shared-resources respectively. As one can see in the SMSP case, Syll e S..., and S, 11 ,S, I e S",. I

'.

MI

Theorem 1: The rule-based FMS controller with incidence matrices

r

=[

W"=FT Fv : F, and is equivalent to a Petri Net

~=S=[

Sy

S,

T

J



3.2. Single Machine for Multiple Part Types (SMMPl Introducing lie. the Conflict Resolution Command Input

When a single machine is used for processing of multiple part types (SMMP), an external shared-resource input is

necessary to resolve the conflict arising due to the possibility of the presence of several parts simultaneously. One can see now the resources are classified into non-shared (i.e., L: 1 &L~ I ) and shared resources (i.e., MI). The shared-resource release equation for MI becomes nonlinear, and in this situation, we introduce

11., =[ 11."

11

11."i JT the

e.

11

·1

[

F~:, F~" H:::

HF.~.:, F.~" H: : 1 (3 .2.1)

where

%,

is the augmented controller state vector for both

part types.

~:ask[:;n] ~[ua;~~: v~

0

0 ]. [ Sol'

%,1

]::

%,%

s .z

(3 .2.2)

.,

:;:n[-s::]-~[~ rel~l~[ua::n:] :: s" .

X,

rLl:

0

s,~,

%,%

11

conflict resolution input into the rule-based controller structure, as shown in Fig. 4. The conflict resolution command inputs U are selected based on a dispatching rule. If 11 e.I)11 is activated (i.e. set to 10";ca1 '0"" the machine o· accepts pan type PI. If lie

[ F~: ' F:,]-[ :~ ]+[ ~:~ ]-r~.+

is activated, part type P2 is

accepted. The dispatching rule is responsible for ensuring that only one of the signals is activated at any given time.

where,z... is the non-shared-resource release vector. (3 .2.3) • Shared-resource release equation (non-linear):

'MI. =i4 'XI

where'MI. is the shared-resource release vector. • Output equation:

(3.2.4)

y,-=[

(3.2.5)

S,.:' S,.:,

l[ :: ]~s, .x,

Deadlock analysis can be performed after the rule-based controller has been designed as shown by the next illustrative result

..

.,.

Fig. 4 The PN corresponding to the SMMP case - introducing 11" the conflict resolution input matrix

In the single-machine-two-part-types (SMMP) case, the two are both processed through the same

part types PI, P2

machine, Ml. By using the SMSP Eq. (3 .1.7) as the basic block structure, one can expand and describe the SMMP case as two similar yet separated processing paths through M!. The controller state equation and the matrices for starting task and resource release can be expressed and defined as follows:

]

.[ v:! } ;01.

Tbeoreml: One can avoid deadlock by either: I) adding more resources to the shared resource pool MI 2) adjusting the number of pallets (i.e. limiting the number of PI and P2 in the system) 3) modifying the antecedents of the synchronization rules (i.e. the structure of matrices FMI : ' FMI ~ ) 4) appropriate selection of lie• . The proof, including the qualitative and quantitative discussion, can be found in (Lewis, 1994). • After the manufacturing system resolves the conflicts by selecting U e• • it becomes decision-free, and the well-known (R. max, +) representation can be derived using the linear controller equations (3.2.1) to (3.2.5). Once the rule-based controller equations are rewritten in (R. max, +) terms, a workcell and performance analysis can be efficiently performed.

3.3. Multiple Machines for Single Part Type CMMSP) Introducing SM, the Operation SeguenciDg Matrix and lice the Choice-Task Decision Input

356

In order to produce products ordered by customers. manufacturing production systems require different part routings. Each routing has a given sequence of operations which might involve various work centers. In order to

In this basic three-machines-one-part-type case. there are no shared-resource problems. All the equations that describe the scheduling system follow almost the same structure as discussed previously. however. there are two major

connect consecutive operations. the operation seguencing matrix S~. has to be introduced. The sequencing matrix SM, is responsible for connecting every consecutive workcells in the order in which the parts must visit the machines. It is important to realize that S~. is a reusable module. By changing only S~ •• a system with new part routing orders can be obtained.

differences. First, there is a need to add two more machines (i.e. M2. M3) to the resource completion matrix and the resource start release matrix. secondly the operation sequencing matrix becomes nonlinear requiring the choice-task decision input to resolve the task choice problem. To close the scheduling loop. there is a need of the immediate steps for the transformation between the two consecutive workcells by using the operation sequencing matrix. These immediate steps are shown as follow:

A job shop manufacturing system contains the possibility of variable part routings or -wk choices-. When connecting consecutive operations with choices occurred. S~. becomes nonlinear. In this situation, a choice-task decision input IIcc has to be introduced to resolve the choice-task problem. It is important to note that when there is no choice. the manufacturing system has the simplest structure known as flow shop, or rcentrant flow line. Here. in order to introduce the idea. the case of single part type PI which goes through three different machines (MI. M2. and M3) is discussed. See Fig. 5.

s~

Define

21 '1

the operation sequencing scalar for

the

IIp21 I

input vector of part type PI for the operation 02 visits machine M2 for the first time; S. 11 the operation sequencing '1

scalar for IIp:' the input vector of part type PI for the operation 03 visits machine M3 for the first time.

Y,:' = [

I ] . .r_"I

0 0 0

=S~" ..r_". '.

I

The Operation Seguencing Matrix S~. with Choice and lice The Choice-Task Decision Input. To close the operation routing loop for these three machines. (i.e. to connect operation I with operation Orlor operation O~I). the operation sequencing matrix S~. needs to be introduced. For the MMSP case with choice. i.e. job shop routing. the sequence of processes is from MI to M2 or M3. It is obvious that the output of machine MI is the input of machine M2 or M3 . In other words. the output of precedent workceU(s) is the input of the subsequent workceU(s). so that either S~ 21 or

]

. S",:1 . .r_"1

(3 .3.1)

0:

S.

'1

11

'1

equals I in this job shop case. It is worth noticing that

i.e. 11,.. =S ... . S~" . .r_" or 11," =S ... . S~" ..r_" . I

S~.

provides an extremely useful artifice for closing the routing loop for constructing the flow shop structure. Thus %" also represents the controller state vector of the first workcell of one part type. For clarity. %pi (the controller state vector of part type i). is now defined as the controller state vector of workcell. and denoted by %wkc.

'.

'1

Define SM,:'.s1

=[

I

SM,:,

I

PI

'I

r

S~'l'

I

(3.3.2)

the choice operation

sequentinl: vector of part type PI with the possibility of been processed either by machine M2 the first time or by machine M3 the first time. Eq. (3.3.2) shows that the output from machine MI is under choice situation and Sw 2'.)1

'1

becomes nonlinear formation. It is necessary now to introduce the choice-task decision input lice to solve the choice situation and transfonn to a linear structure. From Fig. S. it is easy to understand that ucC,21 inputs to transition %5

and

IIcdl

inputs to transition

%10

to resolve wk choice.

I

Now the representation of the input matrix with respect to and IIcdl can be obtained by the following simple

IIcdl I

I

calculation. Fig. S The PN corresponding to MMSP case - introdw:ing nonlinear S•• and lI.c the c:hoice-task: decision input matrix

.r; [ iiO

357

11'0:'] = ]=[ o o ] .[ lI.c:,

I · [ 11'0:'

lI.c:,

l.

(3.3.3)

r,

r:;: [

manufacturing. IEEE Trans. Automat. Control, vol. AC-30, no. 3, pp. 210-220. Desrochcrs, A.A. (1990). Modeling and control of automated manufacturing systems. IEEE Computer Society

Press.

U erl u;r u;r the choice-task Eppinger, 5.0., D.E. Whitney, RP. Smith and D.A. Gebala (1990). Organizing the tasks in complex design input matrix F~, can be represented by the input matrix F.,.

Since [U Cerl

C

C

F~,c =[ F~'erl F~'erl F~,~I Fw,~1

This interpretation means that the same as F~, = [

r.

T

] is

After the development of matrix representation, the controller state equation of the MMSP with choice case can be shown as follow:

.[ HF:, %..,:1

,.

."

f..,~,

%....

[ F:"

Fl.~' 0

Fl.!1

[ F.,"

0

0

" 0

0 0

F. J,

. ,:, . ,:,

l[ }[ ".~ I

;e

F:', ][

][ 'l.:: HF;' "

where [

0

v~

~ ~

0 0

F. II

'Fol'

:1

0

0

0

~

}

0

FAO!: 0

H} PM;

o

1[ ~

F::,

~

0

F. '1

" 0

F:,

PM; PM;

]-[

l l (3.3.4)

4. JOB SHOP SCHEDULING DESIGN - THE MMMP

STRUCTURE We have described a matrix framework for describing the basic SMSP, SMMP, and MMSP components of a FMS. Using block matrix procedures similar to those in this paper, it is straight forward to connect these basic component modules into either a reentrant flow line description (Huang et al., 1994a) or a job shop structure (Huang, 1994b) by selection of the matrix Sw,. The result is a rigorous formulation for computer simulation, deadlock-free design, and relating standard lE tools to PN. Due to space considerations, the details are omitted from this report

S. REFERENCES

projects. Design Theory and .\/ethodology - DTM'90, vol. 27, pp. 39-46. Graves, S.C. (1981). A review of production scheduling. Operations Research, vol. 29, no. 4. Huang, H-H. N. Barzin, F.L. Lewis (1994a). A matrix framework for controller design for flow shop scheduling ofFMS. Proc. ISPElJFAC International Conference on CARs & FOF '94. Huang, H-H, N. Barzin, F.L. Lewis (1994b). A matrix framework for FMS job shop scheduling and design. Automatica, in preparation. Krogh, B.H and L.E. Holloway (1991). Synthesis of feedback control logic for discrete manufacturing systems. Automatica, vol. 21, no. 4, pp. 641-65l. Kwnar, P.R and S.P. Kwnar (1993). Stability of queueing networks and scheduling polices. Proc. 32nd Con! on Decision and Control, pp. 2730-2735. Kusiak, A. (1992). Intelligent design and manufacturing. John Wiley cl Sons. Lewis, F.L. and H-H Huang (1994). Control system design for flexible manufacturing systems. In (A. Raouf and M Ben Daya) Flexible Manufacturing Systems: Recent Developments, Elsevier, to appear. Lewis, F~., O.C. Pastravanu and H.-H. Huang (1993). Controller design and conflict resolution for discrete event manufacturing systems. Proc. 32nd Con! on Control and Decision, pp. 3288-3293 . Murata, T. (1989). Petri nets: properties, analysis and applications. Proc. IEEE, vol. 77, DO. 4, pp. 541-580. Panwalkar, S.S. and W. Iskander (1977). A survey of scheduling rules. OperatiOns Research, vol. 25, no. l. Petcrson, J.L. (1981). Petri Net Theory and the Modeling of Systems. New Jersey: Prentice-Hall. Ramadge, PJ. and W.M. Wonham (1989). The control of discrete event systems. Proc. IEEE, vol. 77, pp.81-98. Steward, D.V. (1981). The design structure system: a method for managing the design of complcx systems. IEEE Trans. on Engineering Management, vol. EM28, no. 3, pp. 71-74. Wu, S.D., J. Leon, and RH Sturer (1992). Scheduling, control cl rescheduling methodologies for job-shop in the presence cl disruptions. Proc. NSF Design & Manufacturing Systems Con!, pp. 947-959, Atlanta, GA. Zhou, M, F. DiCesare (1993). Petri net synthesis for

Cohen, G., D. Dubois, IP. Quadral. and M. Viot (1985). A linear-systeM-theoretic view of discrete-event processes and its use for performance evaluation in

discrete event control ofmanufacturing systems.

Kluwer Academic Publishers.

358