Resource Allocation in Free-Choice Multiple Reentrant Manufacturing Systems Based on Machine-Job...

10
IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011 105 Resource Allocation in Free-Choice Multiple Reentrant Manufacturing Systems Based on Machine-Job Incidence Matrix Ivica Sindiˇ cic ´, Stjepan Bogdan, and Tamara Petrovic ´ Abstract—In this paper, we introduce machine-job incidence (MJI) matrix that can be obtained from Steward sequencing matrix and Kusiak machine-part incidence matrix. Methods for determination of structural properties of free-choice multiple reentrant systems (FMRF) are proposed and an explanation on how the content (number of active jobs) of those structures can be controlled. This paper gives a new method on how to determine if allocation of resources, in a form of repeatable sequences, gives stable system behavior. Although efficiency of the proposed methods have been demonstrated on examples involving manufac- turing workcells, the method can be used for other discrete-event systems as well, as long as the system under study belongs to FMRF class. Index Terms—Free-choice production systems, manufacturing systems, resource allocation. I. INTRODUCTION O NE OF THE major components of flexible manufac- turing system (FMS) control system is a computer-based supervisory controller for monitoring the status of jobs and regulating part routing and machine job selection. The first step in the supervisory controller design is modeling of the system and investigation of its structural properties. There are many approaches to modeling and analysis of manufacturing systems, including automata [1], Petri nets (PN) [2], [13], [32], alphabet-based approaches, perturbation methods [3], control theoretic techniques [31], expert systems design, and so on. One way to model relations between tasks in an FMS is in the form of Steward sequencing matrix [4], also referred to as design structure matrix (DSM). DSM is a square matrix con- taining a list of tasks in rows and columns. The order of tasks in rows or columns indicates the execution sequence. Although very useful in production planning, DSM lacks of information related to the resources required for execution of tasks. This as- pect of an FMS is captured by the resource requirements matrix Manuscript received March 04, 2010; revised June 01, 2010; accepted August 31, 2010. Date of publication October 04, 2010; date of current version February 04, 2011. Paper no. TII-10-02-0032. I. Sindiˇ cic ´ is with ABB, Bani 72, 10000 Zagreb, Croatia (e-mail: [email protected]). S. Bogdan and T. Petrovic ´ are with the Laboratory for Robotics and Intelligent Control Systems (LARICS), Department of Control and Computer Engineering, Faculty of Electrical Engineering and Computing, University of Zagreb, Unska 3, 10000 Zagreb, Croatia (e-mail: [email protected], tamara.petrovic@fer. hr). Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TII.2010.2076291 [5], also known as the machine-part incidence (MPI) matrix. Each column of MPI represents one resource, while rows rep- resent part types processed by the system. The most common usage of MPI is in the field of manufacturing cells design by implementation of various clustering methods [6]. In this paper, we extend the usage of MPI in a way that it reveals particular structural properties of an FMS. For that purpose, we propose construction of the machine-job incidence (MJI) matrix which can be obtained from MPI and DSM matrices. As far as structural properties are concerned, it is well known that circular waits (CWs) are fundamental entities that need to be analyzed when investigating whether or not an FMS dis- patching policy is stable [7]. Here, we consider stability in the sense of absence of deadlock, i.e., a situation when the produc- tion line for a given part-class holds a part that cannot com- plete its processing sequence. Notion of deadlock is in direct relation with circular blocking (CB), condition in which all re- sources involved in CW are occupied and cannot be released (in some system classes, FMRF, PR, etc., CB is equivalent to an empty siphon in Petri-net theory—it is well known that an empty siphon corresponds to deadlock). That is why allocation of CWs is the first step in the stability analysis of an FMS [8]. Efficient procedures for determination of simple CWs as well as other important structural properties, such as critical siphons and crit- ical subsystems [9], [14], based on MJI, are presented in [24]. It should be noted that MJI matrix can be straightforwardly trans- formed in matrix model described in [9]. This matrix framework is convenient for computer simulations [10], [28], as well as for supervisory controller design [11], [25], [29]. Once the system structure and its model are known, engi- neers proceed with the second step in the supervisory controller design, that is, synthesis of scheduling policy. Generally, scheduling requires: a) allocation (dispatching) of available resources to predetermined operations (tasks) and b) definition of sequences in order to provide stable behavior of the system. Usually, the supervisory controller not only stabilizes the system (in a sense of deadlock and bounded buffers) but in the same time optimizes some performance criteria. There exist numerous scheduling problem types [15]. Usually, each par- ticular type is separately analyzed and solutions are proposed. Very popular and most commonly used approaches are based on Petri nets [16], [26], mathematical programming models, heuristics [17], and computational intelligence (fuzzy [18] and genetic algorithms [19]). Herein, we propose a new method for resource allocation, in particular, the class of FMS, namely, free-choice multiple reen- 1551-3203/$26.00 © 2010 IEEE

Transcript of Resource Allocation in Free-Choice Multiple Reentrant Manufacturing Systems Based on Machine-Job...

IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011 105

Resource Allocation in Free-Choice MultipleReentrant Manufacturing Systems Based on

Machine-Job Incidence MatrixIvica Sindicic, Stjepan Bogdan, and Tamara Petrovic

Abstract—In this paper, we introduce machine-job incidence(MJI) matrix that can be obtained from Steward sequencingmatrix and Kusiak machine-part incidence matrix. Methods fordetermination of structural properties of free-choice multiplereentrant systems (FMRF) are proposed and an explanation onhow the content (number of active jobs) of those structures can becontrolled. This paper gives a new method on how to determineif allocation of resources, in a form of repeatable sequences,gives stable system behavior. Although efficiency of the proposedmethods have been demonstrated on examples involving manufac-turing workcells, the method can be used for other discrete-eventsystems as well, as long as the system under study belongs toFMRF class.

Index Terms—Free-choice production systems, manufacturingsystems, resource allocation.

I. INTRODUCTION

O NE OF THE major components of flexible manufac-turing system (FMS) control system is a computer-based

supervisory controller for monitoring the status of jobs andregulating part routing and machine job selection. The firststep in the supervisory controller design is modeling of thesystem and investigation of its structural properties. There aremany approaches to modeling and analysis of manufacturingsystems, including automata [1], Petri nets (PN) [2], [13], [32],alphabet-based approaches, perturbation methods [3], controltheoretic techniques [31], expert systems design, and so on.

One way to model relations between tasks in an FMS is inthe form of Steward sequencing matrix [4], also referred to asdesign structure matrix (DSM). DSM is a square matrix con-taining a list of tasks in rows and columns. The order of tasksin rows or columns indicates the execution sequence. Althoughvery useful in production planning, DSM lacks of informationrelated to the resources required for execution of tasks. This as-pect of an FMS is captured by the resource requirements matrix

Manuscript received March 04, 2010; revised June 01, 2010; accepted August31, 2010. Date of publication October 04, 2010; date of current version February04, 2011. Paper no. TII-10-02-0032.

I. Sindicic is with ABB, Bani 72, 10000 Zagreb, Croatia (e-mail:[email protected]).

S. Bogdan and T. Petrovic are with the Laboratory for Robotics and IntelligentControl Systems (LARICS), Department of Control and Computer Engineering,Faculty of Electrical Engineering and Computing, University of Zagreb, Unska3, 10000 Zagreb, Croatia (e-mail: [email protected], [email protected]).

Color versions of one or more of the figures in this paper are available onlineat http://ieeexplore.ieee.org.

Digital Object Identifier 10.1109/TII.2010.2076291

[5], also known as the machine-part incidence (MPI) matrix.Each column of MPI represents one resource, while rows rep-resent part types processed by the system. The most commonusage of MPI is in the field of manufacturing cells design byimplementation of various clustering methods [6]. In this paper,we extend the usage of MPI in a way that it reveals particularstructural properties of an FMS. For that purpose, we proposeconstruction of the machine-job incidence (MJI) matrix whichcan be obtained from MPI and DSM matrices.

As far as structural properties are concerned, it is well knownthat circular waits (CWs) are fundamental entities that needto be analyzed when investigating whether or not an FMS dis-patching policy is stable [7]. Here, we consider stability in thesense of absence of deadlock, i.e., a situation when the produc-tion line for a given part-class holds a part that cannot com-plete its processing sequence. Notion of deadlock is in directrelation with circular blocking (CB), condition in which all re-sources involved in CW are occupied and cannot be released (insome system classes, FMRF, PR, etc., CB is equivalent to anempty siphon in Petri-net theory—it is well known that an emptysiphon corresponds to deadlock). That is why allocation of CWsis the first step in the stability analysis of an FMS [8]. Efficientprocedures for determination of simple CWs as well as otherimportant structural properties, such as critical siphons and crit-ical subsystems [9], [14], based on MJI, are presented in [24]. Itshould be noted that MJI matrix can be straightforwardly trans-formed in matrix model described in [9]. This matrix frameworkis convenient for computer simulations [10], [28], as well as forsupervisory controller design [11], [25], [29].

Once the system structure and its model are known, engi-neers proceed with the second step in the supervisory controllerdesign, that is, synthesis of scheduling policy. Generally,scheduling requires: a) allocation (dispatching) of availableresources to predetermined operations (tasks) and b) definitionof sequences in order to provide stable behavior of the system.Usually, the supervisory controller not only stabilizes thesystem (in a sense of deadlock and bounded buffers) but in thesame time optimizes some performance criteria. There existnumerous scheduling problem types [15]. Usually, each par-ticular type is separately analyzed and solutions are proposed.Very popular and most commonly used approaches are basedon Petri nets [16], [26], mathematical programming models,heuristics [17], and computational intelligence (fuzzy [18] andgenetic algorithms [19]).

Herein, we propose a new method for resource allocation, inparticular, the class of FMS, namely, free-choice multiple reen-

1551-3203/$26.00 © 2010 IEEE

106 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011

trant manufacturing systems (FMRF), which is based on the MJImatrix. Although, in general, the concept of resource allocationis not related to the concept of deadlock (siphon), in this paper,we investigate interrelation between those two concepts. A so-lution is in a form of repeatable resource sequence over the setof resources available for a particular choice job. We developeda procedure that keeps the number of active jobs in a particularpart of FMRF systems, called critical subsystems, within thecertain limit. One of the main benefits provided by the MJI ma-trix compared with the standard PN incidence matrix is reduc-tion of the system model complexity in the FMRF system anal-ysis and simulation. Furthermore, the MJI matrix allows easyand straightforward definition and analysis of the proposed se-quencing method in the FMRF systems.

II. SYSTEM DESCRIPTION AND PROBLEM FORMULATION

We make the following assumptions that define the sort ofdiscrete-part manufacturing systems: No preemption—once as-signed, a resource cannot be removed from a job until it is com-pleted; Mutual exclusion—a single resource can be used for onlyone job at a time. In addition to these assumptions, we assumethat there are no machine failures.

Multiple reentrant flowlines (MRF) class of systems, inves-tigated herein, has the following properties: a) each part typehas a strictly defined sequence of operations; b) each operationin the system requires one and only one resource with no twoconsecutive jobs using the same resource; c) there are no choicejobs (the term choice job is used when the parts can be processedby alternative machines [9]); d) there are no assembly jobs; e)there are shared resources in the system; and f) all buffers havelimited length.

A. System Description

Let be the set of distinct types of parts produced (or cus-tomers served) by an FMS. Then, each part type ischaracterized by a predetermined sequence of job operations

with each operation employing atleast one resource. (Note that some of these job operations maybe similar, e.g., and with may both be drilling op-erations.) Each job sequence is uniquely associated with theoperations of raw part-in, , and completed product-out, .The system resources are denoted , wherecan represent a pool of multiple resources each capable of per-forming the same type of job operation. In this notation,represents the set of resources utilized by job sequence . Notethat and represent all resources and

jobs in a particular FMS. Since the system could be reentrant, agiven resource may be utilized for more than one opera-tion (sequential sharing). Also, certain resources maybe used in the processing of more than one part-type so that forsome , , (parallel sharing). Re-sources that are utilized by more than one operation in either ofthese two ways are called shared resources, while the remainingare called nonshared resources. Thus, one can partition the setof system resources as , with and indi-cating the sets of shared and nonshared resources, respectively.For any , we define the resource job set . Obviously,

Fig. 1. An example of MRF class of FMS.

if . Resource , with its jobset , comprise resource loop L , .

A job vector and a resource vectorrepresent the set of jobs and the set of resources correspondingto their nonzero elements. The set of jobs (resources) rep-resented by is called the support of , denoted

; i.e., given , vector elementif and only if job . In the same manner,

given , vector element if and onlyif resource . Usually, index is replaced with job(resource) notation, for example, stands for the componentof resource vector that corresponds to resource MA. Thedefinitions of job and resource vectors imply that the job andresource sets should be ordered.

For example, the workcell shown in Fig. 1 has a job setand the resource set

. A part comes to the entry of theproduction line and is processed by machine A (MAP).Then, robotic hand R moves part to buffer B (RP1), and partresides for some time in the buffer (BP). Once processedby machine B (MBP), a part is removed from the systemby the robot (RP2). Hence, vector representation of jobsperformed by the robot is and

. A vector that representsshared resources is with ,while .

MRF class is a special case of FMRF—systems with jobs thatdo not have predetermined resources assigned. That is, severalresources might be capable and available to perform a specificjob (MRF property is not valid, i.e., there are jobs with choice).We define as a set of resources that could be allocatedto choice job . Systems without predetermined routingpaths are much more challenging than MRF systems, specifi-cally in the study of blocking phenomena [20]–[22].

An example of an FMRF workcell is given in Fig. 2. withand . From

buffer (job BP), part proceeds to machine M1 or machine M2(choice job MP). Hence, vector representation of resources thatcould be allocated to choice job MP isand .

B. Problem Formulation

Since the system contains shared resources and choice jobs,the scheduling problem discussed in this paper is twofold: i) fora given choice job define allocation sequence of re-sources in and ii) for a given shared resourcewith resource job set , define dispatching policy. Both so-lutions, allocation sequence and dispatching policy, should besuch that the overall system is stable in a sense of deadlock.

SINDICIC et al.: RESOURCE ALLOCATION IN FREE-CHOICE MULTIPLE REENTRANT MANUFACTURING SYSTEMS BASED ON MJI MATRIX 107

Fig. 2. An example of FMRF class of FMS.

A solution of problem i) offers an answer on how to allocateresources to jobs. For that purpose, we propose a result in aform of repeatable resource sequence over the set of resourcesavailable for particular choice job.

On the other hand, problem ii) is related to the number ofactive jobs in a particular part of FMRF systems, called criticalsubsystems. In Section III, we show why critical subsystems areimportant, how they can be determined from the MJI matrix, andhow their content (number of active jobs) can be controlled. Infact, solution to problem ii) describes how to allocate jobs toresources.

III. MACHINE-JOB INCIDENCE (MJI) MATRIX

As we stated in Section I, DSM is a square matrix containinga list of tasks (jobs) in rows and columns with matrix elementsindicating an execution sequence

......

.... . .

...

.... . .

.... . .

Relationships among tasks are represented by “1” in the corre-sponding cells, i.e., if task is an immediate predecessor of task, then DSM element is equal to “1,” otherwise, “0.”

The second matrix used for system description, is MPI. Itcaptures relations between resources and parts processed by thesystem. Generally, MPI has the following form:

If resource executes an operation in the processing sequenceof part , then MPI element is equal to “1,” otherwise,

“0.” Since the sequence repre-sents part processing order, by combining DSM and MPImatrices, we get a general form of machine-job incidence ma-trix for an FMRF system

......

......

......

......

......

......

In case job is performed by resource , matrix elementis equal to “1,” otherwise, “0.” For an MRF system, each opera-tion in the system requires only one resource (there are no choicejobs), hence, exactly one element “1” would appear in each rowof MJI matrix. On the other hand, column representing sharedresource comprises multiple entries of “1.” The machine-job in-cidence matrix can be defined separately for each part type in anFMS. In that case, overall MJI matrix can be written as

(1)

For the system given in Fig. 1, MJI attains the following form:

It can be seen that robot R is a shared resource as the corre-sponding column has two elements equal to “1.”

IV. MJI AND RESOURCE SEQUENCING

As already mentioned, in addition to the assumptions made atthe beginning of Section II, a general class of FMRF systems hasthe following nonrestrictive capabilities: i) some jobs have theoption of being machined in a resource from a set of resources(allocation of jobs); ii) job/part routings are NOT deterministic;and iii) for each job that can be performed by more than oneresource (choice job), there exists a material handling buffer(routing resource) that routes parts.

In this section, we are interested in determining repeatable re-source sequence over the set of resources available for executionof each choice job in the system. The sequence should preventconflicts and deadlocks simultaneously [27]. In the analysis thatfollows, we consider one part-type FMRF with each buffer ca-pable of holding one part at a time.

108 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011

The MJI matrix of the system is given as

(2)

From the matrix, we see that a part of production requiresthe sequence of five jobs, and the system is composed of fivemachines and four buffers. For choice jobs J2, J3, and J4, wehave , , and

. All machines, except M5, are shared re-sources. There are many part routes that complete the requiredjob sequence—to mention just few of them:

,,

, and so on. A set of part routes, denoted , ispartitioned into two disjoint sets, , withcomprising all part routes with multiple use of resources allo-cated to choice jobs, and containing all part routes withoutmultiple use of resources. In our example, and belong to

, while is an element of .It is obvious that conflicts might occur in since the

same resource is used for execution of more than one job. In, resource M2 is used for jobs J2 and J4. Therefore, in case

conditions for executions of both jobs are met, a decision re-garding priority should be made. On the other hand, part routesin are inherently conflict free. In case resource sequencesare combined of several routes from , the structure of re-peatable resource sequences over the set of resources availablefor execution of choice jobs would, by itself, provide not onlyconflict free but also deadlock free behavior of the system.

The number of all possible part routes, , is defined

as , where and correspond tothe number of rows and columns of , respectively. In our ex-ample, one has .For each part route , we define MJI sub-matrix in a waythat in case of multiple entries “1” in row (choice job), sub-ma-trix comprises only the one that corresponds with resource be-longing to the part route. Then, search for sequences in is,in fact, searching for all MJI sub-matrices that are character-ized by single entry ’1’ in each row and multiple or no entry“1” in each column. It could be easily shown that a procedureof complexity for calculation of such matrices exists.It should be noted that depends exponentially on . How-ever, in practice, each FMRF system can be divided in inde-pendently controlled clusters, thus keeping low. As a con-sequence, offline calculation of sequences in requires onlya few minutes on today’s computers. As resource sequencesare related to choice jobs, we introduce reduced form of MJI

Fig. 3. Presentation of parts passing through the line.

sub-matrices, denoted , such that encompass only rows cor-responding to those jobs, and without columns related to thebuffers. Forreduced form of the MJI sub-matrix is given as

Now, let us suppose that the resource allocation policy re-quires that resources M3 and M2 should be used repetitively,one after the other, for execution of job J2. This repeatable re-source allocation sequence can be written in a form of matrix

...(3)

Resource allocation sequence matrix (3) should be defined foreach choice job in the system. Our goal is to find set(where to the number of choice jobs in the system),such that system has no conflicts and it is deadlock free. Thenumber of sub-matrices obtained from sequence matrix definesthe number of steps in the sequence (previous example for J2 is2-step sequence).

As an example, let us examine 3-step sequence for system (2),defined by the following resource allocation sequence matrices:

In order to get a better insight in the system behavior, Fig. 3presents how parts pass through the line. It should be noted thatsequences are executed in a way that new allocation of resources(new step ) is performed after all jobs are finished and partsreside in the buffers. The first part enters the system and it isprocessed by M3 (J2M3-“1” in the first row of ), then, it

SINDICIC et al.: RESOURCE ALLOCATION IN FREE-CHOICE MULTIPLE REENTRANT MANUFACTURING SYSTEMS BASED ON MJI MATRIX 109

proceeds to job J3 on M4 (J3M4-“1” in the first row of ),and then to job J4 on M2 (J4M2-“1” in the first row of ).The second part enters the system and it is processed by M3(J2M3-“1” in the second row of ), then, it proceeds to job J3on M5 (J3M5-“1” in the second row of ), and so on. Conflictoccurs for the first time at as J4 on part 1 is plannedfor M2 while, in the same time, the third part, that just enteredthe system, requires the same machine (J2 on M2). This is aclear example that repeatable resource sequences can lead thesystem in conflict. The following lemma states how to determineconflict-free set .

Lemma 1: For a given FMRF system, with choice jobs,-step resource allocation sequences set is conflict

free if and only if

...(4)

where

......

......

......

(5)

Proof: Sufficiency ( )Let us denote jobs in an FMRF as

- - - - - - - - - , and letfor each job one has defined resource allocation sequencematrix with -steps. Let us assume that there are noconflicts in the system. Then, in step job has processedexactly one part more than job . This actually means thatif job in step is executed by the resource that correspondswith th row of , , then job is executed by theresource that corresponds with - th row of , . Since,according to the definition of FMRF systems, and

cannot be in conflict, one has , i.e., matrix

has no multiple entries of 1 in the columns. If we extend this

argument to all jobs, - , then in step , we have, i.e.,

...

This matrix is actually a reduced form of MJI sub-matrix ofthe system. As we assumed that the system is conflict free, pre-vious consideration should be true for each step , hence

...

Necessity ( ):Let us assume that (4) is true for some sequence .

We should prove that under this assumption the system is con-flict free for each . We use mathematical induction.

(Base case)For situation is trivial as holds a part. Further,

for , resource corresponding with is assigned to ,all other resources are available. For , both andhold parts. Since all buffers are nonshared resources, conflict isnot possible. If we proceed further, for , resource corre-sponding with is assigned to , and resource correspondingwith to . According to assumption (4) which, byusing (5), gives , hence, no conflict occurs. Up to now, weshowed that the system is conflict free for , 2, 3, and 4.

(Induction step)Let us assume that up to step there have been no conflicts.

Then, in step all parts are held by buffers or reside in jobs. Ifall parts reside in jobs, then in step all parts enter buffers.Since all buffers are nonshared, no conflict occurs in step .

Second possibility is that all parts are held by buffers andenter jobs in . Since the assumption is that there has beenno conflicts up to step , based on the conclusions given in theproof of sufficiency, resources are assigned to jobs as follows:job , job , job .According to (4) and (5)

...

thus, all assigned resources are different, that is, no conflict oc-curs in step .

V. MJI AND STRUCTURAL PROPERTIES OF AN FMRF

In this section, we propose how to define dispatching policyfor a given shared resource with resource job set .Given a set of resources , for any two resources , ,

is said to wait for , denoted , if the availability ofis an immediate requirement to release . A circular wait

among resources is a set of resources , , with wait

110 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011

relations among them such that , and. For FMRF systems, circular waits are associated with

shared resources. In case that for some appropriate labeling, onehas , with for any ,then CW is called a simple circular wait (sCW). In [24], wepresented a procedure for calculation of CWs in FMRF systems,that directly employs information comprised in the MJI matrix.The procedure finds vector (or several vectors) such that eachhas a simple circular wait as support, i.e., .

A circular wait is the result of a system layout design, i.e.,it is a structural property of the system. On the other hand, cir-cular blocking is a phenomenon caused by unsuitable assign-ment of tasks performed by resources involved in a circular wait.If we consider nonshared resource , then it can be in one oftwo states, “idle” or “operational.” The supervisor’s task is toset the resource in one of these two states, i.e., from the con-troller point-of-view resource is a binary loop. The same istrue for shared resource , with one difference only; can bein one of three or more states, as it has more than one job toperform. Again, the supervisor selects one of several shared re-source states that swap inside the loop. Therefore, resource loop

is an important structure, especially when it belongs to theresource involved in CW.

In order to characterize binary vector , which is the projec-tion of the resource loop onto resource and job sets, let us definethe system vector as . Then

(6)

i.e., content of resource loop is constant. Implementation of thisresult on resources involved in circular wait gives

(7)

Assuming that all resources in are idle for , then

(8)

which finally yields

(9)

This result is important since it states that in FMRF systemsthe content of resource loops that belong to the resources in-volved in CW is equal to the number of resources in the cir-cular wait, which is a structural parameter and it is known inadvance. So, it is useful to regard each CW as a distributioncenter, with defined as its content, and jobs in asreceivers of services provided by the distribution center. Evi-dently, which job to process next is of the fundamental impor-tance once CW’s content becomes 1. It should be noted that thisholds for regular FMRF systems [9]. In case the system is irreg-ular this one-step-look-ahead policy should be modified in suchway that type of available resources belonging to CW, is takeninto consideration [30].

Let us partition as

(10)

where is a siphon job set,is a neutral job set, and is

a trap job set. Such partition has been made due to a particularinfluence that those jobs have on the content of the circular wait.Namely, when neutral job is allocated to resource in C,remains unchanged. On the other hand, subset comprisesall jobs whose allocation decrease . In case jobs belongto , some of them decrease , while others do notchange CW content. However, there is an essential differencebetween those jobs that decrease —jobs in thatinfluence CW content are not followed by jobs performed by re-sources in , while each job in has a successor (next jobin the sequence) in . This means that in caseand is allocated to the last idle resource in the systemreaches circular blocking since the next job in the sequence isperformed by resource in but , i.e., there are nofree resources.

By using (9) and (10), one can write

or in more compact form

(11)

In [9], it has been shown that in FMRF circular wait with itssiphon job set forms so called critical siphon. From Petri nettheory, it is well known that in order to avoid deadlocks dis-patching policy should keep critical siphons marked. Interpretedin the matrix framework this means that

. Hence, according to (11)

(12)

where

with set denoted as a critical subsystem.A critical subsystem is actually a set of jobs preformed by re-sources in that has a job in as a direct successor (nextin the job sequence). Condition (12) is, in fact, a solution to theproblem stated at the beginning of the paper. It gives an answeron how to allocate jobs to resources in order to keep the systemsafe of deadlock: in case resource is in conflict, the supervisorshould allocate the job from set [12]. Combining thisresult with usage of resource allocation sequences determinedaccording to Lemma 1, one gets the main result of the paper ina form of the following theorem.

Theorem 1: FMRF system with choice jobs and conflictfree -step resource allocation sequences is deadlockfree.

SINDICIC et al.: RESOURCE ALLOCATION IN FREE-CHOICE MULTIPLE REENTRANT MANUFACTURING SYSTEMS BASED ON MJI MATRIX 111

Fig. 4. An FMS used for the case study [26].

Proof: If a given sequence is conflict free, then in eachallocation step all parts that reside in buffers move to down-stream jobs in line, leaving buffers available for new parts. Inthis way, each job has “its own” free buffer to release a partprior to a new allocation step. If we recall the previous discus-sion on the conditions for the system stability, expression (12)means that the system is in a deadlock if and only if the criticalsubsystem that corresponds to some circular wait is full. Sinceall the buffers belong to the set of nonshared resources, eachcircular wait contains at least one resource and one buffer. Forsuch circular wait, if a job belongs to the critical subsystem,then buffer job belongs to the same critical subsystemas well. If there is no conflict, then such a job-buffer pair willhold only one part at any time, therefore critical subsystem willnever be full, i.e., system is deadlock free.

VI. CASE STUDY

The proposed method has been tested on the system presentedin [26]. Although, this example has only two choice jobs and itis comprised of MRF and FMRF subsystems, it has been chosenso that the proposed method can be compared with various con-trol techniques already implemented on this particular manu-facturing system. The system layout is given in Fig. 4 with PNmodel presented in Fig. 5.

The system has three part types, , , and , four ma-chines M1-M4, and three robots R1-R3. Part routes for and

are predetermined (MRF), while has choice jobs (FMRF);first job can be executed by M1 or M3, while the second job canbe executed by M2 or M4. Robot R1 executes part movementsfrom I3 to M1, I3 to M3, and M3 to O2; robot R2 performs partmovements from M1 to M2, M4 to M3, M3 to M4, I1 to M2, andM2 to O1; robot R3 handles part movements from I2 to M4, M2to O3, and M4 to O3. All resources except for M1 are shared.

Fig. 5. PN model of the system used for the case study [26].

A. MJI Based Supervisor Design

MJI matrices for each part type have the following form(since part type subsystem is of FMRF class additionalbuffers, B1-B5, have been added to the system—MJI sub-ma-trix ), see equation at the bottom of the next page.

There are two choice jobs in the system. Therefore, we definethe following sequence matrices:

These four-step repeatable sequences provide balanced usageof the resources; job will be performed two times by resourceM1 and then two times by resource M3, while job will beexecuted by resource M2 followed by M4 and so on. In orderto check if sequences are conflict free one has to form a set ofmatrices according to (5)

112 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011

and then confirm that condition (4) is satisfied

Hence, defined sequences provide conflict-free behavior ofthe system. Furthermore, according to Theorem 1, the FMRFpart of the system is deadlock free.

As the system comprises two MRF subsystems, thesecond step in the supervisor design is determination ofcritical subsystems. Circular waits are calculated from

by using the procedure described in[24]. There exists only one circular wait, , thatforms critical subsystem , comprised onlyof jobs from one part type . All other critical subsystemsinvolve at least one job (and buffer) from part type . Conse-quently, the overall supervisor control policy consists of twoalready defined sequences and conditions [according to (12)]

(as ).Results obtained by simulation with MJIWorkshop, software

tool presented in [23], are shown in Figs. 6 and 7. High level ofsignal corresponds with part present/resource occupied. It can

Fig. 6. Parts leaving the system.

be seen that the system is deadlock free, i.e., flow of the parts isuninterrupted.

B. Discussion

One of the main benefits provided by the MJI matrix is re-duction of the model complexity in FMRF system analysis andsimulation. If one compares proposed MJI matrix with PN in-cidence matrix , then usage of the MJI matrix requires lessmemory. Dimensions of the MJI matrix are , where

is the number of jobs and is the number of resources,while dimensions of corresponding PN incidence matrix are

where is the number of transitions and is thenumber of places. Since for FMRF systems and

, reduction in the model complexity can be signifi-cant, especially in case of large FMRF systems. For example,

SINDICIC et al.: RESOURCE ALLOCATION IN FREE-CHOICE MULTIPLE REENTRANT MANUFACTURING SYSTEMS BASED ON MJI MATRIX 113

Fig. 7. Occupation of the resources.

the system described with MJI matrix (2), which is 9 9, re-quires PN model with 22 places and 18 transitions.

Further beneficiary aspects of the MJI matrix are relatedto ease of definition and analysis of the proposed sequencingmethod in FMRF systems. Stability test for proposed sequencesis done by simple rotation of matrix rows and comparison withset , obtained from the MJI matrix. Methods analyzed in [26]are based on enumeration of PN siphons (which correspondswith enumeration of critical subsystems) and calculation ofcontrol places (monitors) that enforce liveness. It is well knownthat such methods, based on detection of siphons, are timeconsuming and for very large systems impractical. In thispaper, we show that due to the particular structure of FMRFsystems, deadlocks can be avoided in a simpler way. The pricethat should be paid for the stability of the system under pro-posed control strategy is suboptimal usage of the resource. Thelevel of underutilization of resources depends on the systemstructure. This problem is a topic of ongoing research.

VII. CONCLUSION

In a finite-buffer flexible manufacturing systems, any dis-patching policy for interrupted part flow has to essentially takeinto account the composition of the interconnection betweenjobs and resources. It is well known that stability issues of anFMS is in direct relation with certain structures, referred to assiphons and circular blockings, which are in turn connected withthe existence of circular waits among resources in FMS. Theproposed supervisory control method is based on machine-jobincidence matrix obtained from the Steward sequencing matrixand the Kusiak machine-part incidence matrix.

Since FMRF systems contain shared resources and choicejobs, two methods for deadlock avoidance are given in the paper;the first one offers a solution to allocation of resources to jobs ina form of repeatable resource sequence over the set of resourcesavailable for a particular choice job, while the second one han-dles the problem of how to allocate jobs to shared resources. Thelater one is based on straightforward procedure for calculationof critical subsystems, once circular waits among resources aredetermined.

Efficiency of the proposed methods has been demonstratedin an example involving a multipart type manufacturing system.Methods can be used for other discrete-event systems as well,as long as the system under investigation belongs to FMRF

class. The objective of our ongoing research is how to extendthe MJI approach to the synthesis of more complex supervisors,such that involve optimization of a particular criteria (repeat-able resource sequences with minimal cost, or maximal resourceutilization).

REFERENCES

[1] W. M. Wonham, Supervisory Control of Discrete Event Systems, Lec-ture notes, 2005.

[2] T. Murata, “Petri nets: Properties, analysis and applications,” Proc.IEEE, vol. 77, pp. 541–580, 1989.

[3] Y. C. Ho and X. R. Cao, Perturbation Analysis of Discrete Event Dy-namic Systems. Norwell, MA: Kluwer , 1991.

[4] D. V. Steward, “The design structure system: A method for managingthe design of complex systems,” IEEE Trans. Eng. Manage., vol. 28,pp. 71–74, 1981.

[5] A. Kusiak and J. Ahn, “Intelligent scheduling of automated machiningsystems,” Comput.-Integr. Manuf. Syst., vol. 5, no. 1, pp. 3–14, 1992.

[6] T. R. Browning, “Applying the design structure matrix to system de-composition and integration problems: A review and new directions,”IEEE Trans. Eng. Manage., vol. 48, pp. 292–306, 2001.

[7] M. D. Jeng and F. DiCesare, “Synthesis using resource control nets formodeling shared-resource systems,” IEEE Trans. Rob. Autom. RA-11,pp. 317–327, 1995.

[8] R. A. Wysk, N. S. Yang, and S. Joshi, “Detection of deadlocks in Flex-ible manufacturing cells,” IEEE Trans. Robot. Autom., vol. 7, no. 6, pp.853–859, 1991.

[9] S. Bogdan, F. L. Lewis, J. Mireles, and Z. Kovacic, ManufacturingSystems Control Design: A Matrix Based Approach. New York:Springer, 2006.

[10] D. A. Tacconi and F. L. Lewis, “A new matrix model for discrete eventsystems: Application to simulation,” IEEE Control Syst. Mag., vol. 17,no. 5, pp. 62–71, 1997.

[11] F. L. Lewis and H. H. Huang, “Control system design for flexible man-ufacturing systems,” in Flexible Manufacturing Systems: Recent De-velopments. New York: Elsevier, 1994.

[12] F. L. Lewis, A. Gurel, S. Bogdan, A. Docanalp, and O. C. Pastra-vanu, “Analysis of deadlock and circular waits using a matrix modelfor flexible manufacturing systems,” Automatica, vol. 34, no. 9, pp.1083–1100, 1998.

[13] M. V. Iordache and P. J. Antsaklis, Supervisory Control of Concur-rent Systems: A Petri Net Structural Approach. Cambridge, MA:Birkhauser, 2006.

[14] M. C. Zhou and M. P. Fanti, Deadlock Resolution Incomputer-Inte-grated Systems. New York: Marcel Dekker, 2005.

[15] P. Brucker, Scheduling Algorithms, 5th ed. New York: Springer,2007.

[16] G. Tuncel and G. M. Bayhan, “Applications of Petri nets in productionscheduling: A review,” Int. J. Advanced Manuf. Technol., vol. 34, pp.762–773, 2007.

[17] A. L. Almeida, S. Aknine, and J. P. Briot, “Dynamic resource allocationheuristics for providing fault tolerance in multi-agent systems,” in Proc.2008 ACM Symp. Appl. Comput., Fortaleza, Ceara, Brazil, 2008, pp.66–70.

[18] F. T. S. Chan, H. K. Chan, and A. Kazerooni, “A fuzzy multi-criteriadecision-making technique for evaluation of scheduling rules,” Int. J.Advanced Manuf. Technol., vol. 20, pp. 103–113, 2002.

[19] I. A. Chaudhry and P. R. Drake, “Minimizing total tardiness for the ma-chine scheduling and worker assignment problems in identical parallelmachines using genetic algorithms,” Int. J. Advanced Manuf. Technol.,vol. 32, pp. 103–113, 2008.

[20] K. Y. Xing, B. S. Hu, and H. X. Chen, “Deadlock avoidance policyfor Petri-net modeling of flexible manufacturing systems with sharedresources,” IEEE Trans. Autom. Control, vol. 41, no. 2, pp. 289–295,1996.

[21] M. Lawley, “Deadlock avoidance in manufacturing systems with flex-ible routing and mixed capacity,” in Proc. IEEE Int. Conf. Syst., Man,Cybern., 1998, vol. 1, pp. 594–599.

[22] M. Lawley, “Flexible routing and deadlock avoidance in automatedmanufacturing systems,” in Proc. IEEE Int. Conf. Robot. Autom., 1998,pp. 591–596.

[23] Sindicic, T. Petrovic, and S. Bogdan, “Modeling and simulationof manufacturing systems based on machine-job incidence ma-trix,” in Proc. Int. Conf. Mathematical Modeling, Vienna, 2009, pp.1643–1654.

114 IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, VOL. 7, NO. 1, FEBRUARY 2011

[24] T. Petrovic, S. Bogdan, and I. Sindicic, “Determination of circularwaits in multiple-reentrant flowlines based on machine-job incidencematrix,” in Proc. Eur. Control Conf.–ECC, Budapest, 2009, pp.4463–4468.

[25] Polic and K. Jezernik, “Closed-loop matrix based model of discreteevent systems for machine logic control design,” IEEE Trans. Ind. In-format., vol. 1, no. 1, pp. 39–46, 2005.

[26] Z. Li and M. Zhou, “Two-stage method for synthesizing liveness-en-forcing supervisors for flexible manufacturing systems using Petrinets,” IEEE Trans. Ind. Informat., vol. 2, no. 4, pp. 313–325, 2006.

[27] T. Petrovic and S. Bogdan, “Matrix-based sequencing in multiple reen-trant flowlines,” Trans. Inst. Measure. Control, 2009 [Online]. Avail-able: DOI:10.1177/0142331208100104

[28] S. Bogdan, Z. Kovacic, N. Smolic-Rocak, and B. Birgmajer, “A matrixapproach to an FMS control design: From virtual modeling to a prac-tical design,” IEEE Robot. Autom. Mag., vol. 11, no. 4, pp. 92–109,2004.

[29] S. Bogdan, F. L. Lewis, Z. Kovacic, A. Gurel, and M. ’tajdohar, “Animplementation of the matrix-based supervisory controller of flexiblemanufacturing systems,” IEEE Trans. CST, vol. 10, no. 5, pp. 709–716,2002.

[30] S. Lee and D. M. Tilbury, “Deadlock-free resource allocation controlfor a reconfigurable manufacturing system with serial and parallel con-figuration,” IEEE Trans. SMC-Part C, vol. 37, no. 6, pp. 1373–1381,2007.

[31] S. A. Reveliotis, E. Roszkowska, and J. Y. Choi, “Generalized alge-braic deadlock avoidance policies for sequential resource allocationsystems,” IEEE Trans. Autom. Control, vol. 52, no. 12, pp. 2345–2350,2007.

[32] F. Tricas and J. Ezpeleta, “Computing minimal siphons in Petri netmodels of resource allocation systems: A parallel solution,” IEEETrans. SMC Part-A, vol. 36, no. 3, pp. 532–539, 2006.

Ivica Sindicic received the B.S.E.E. and M.S.E.E.degrees from the University of Zagreb, Zagreb,Croatia, in 1989 and 1994, respectively. Currently,he is working towards the Ph.D. degree at the Facultyof Electrical Engineering and Computing, Universityof Zagreb.

He is working as a Software Architect at ABB,Zagreb. From 1989 to 2010, he was a DevelopmentEngineer at EXOR, Zagreb. From 1988 to 1989,he has been with KONCAR, Zagreb. He spent sixmonths as a Research Associate at the Department

of Electronic Systems and Information Processing, Faculty of Electrical Engi-neering, University of Zagreb. His current areas of interest are discrete-eventsystems, manufacturing process control, intelligent control, and simulationalgorithms.

Stjepan Bogdan received the B.S.E.E., M.S.E.E.,and Ph.D.E.E. degrees from the University ofZagreb, Zagreb, Croatia, in 1990, 1993, and 1999,respectively.

Currently, he is an Associate Professor at theFaculty of Electrical Engineering and Computing,University of Zagreb. In 1996 an 1997, he was aFulbright Visiting Researcher at the Automation andRobotic Research Institute, Arlington, TX. He is acoauthor of three books and more than 100 paperspublished in journals and conference proceedings.

His main areas of interest are discrete-event systems, intelligent controlsystems, and autonomous systems.

Prof. Bogdan is Vice-President of the Croatian Robotics Society anda Member of the IEEE CSS TC on Intelligent Control. He serves as anAssociate Editor of the IEEE TRANSACTIONS OF AUTOMATION SCIENCE AND

ENGINEERING, the Journal of Intelligent and Robotic Systems, Transactions ofthe Institute of Measurement and Control, and the Journal of Control Theoryand Applications.

Tamara Petrovic (S’07) received the B.S.E.E. de-gree from the University of Zagreb, Zagreb, Croatia,in 2007. Since 2007, she has been a young Researcherworking towards the Ph.D. degree at the Faculty ofElectrical Engineering and Computing, University ofZagreb.

Her main areas of interest are discrete-event sys-tems and multi-AGV systems. She has been coauthorof several papers published in journals and presentedat the international conferences.