Modeling a Flow-Shop with Setup Times in ... - Dr. Aurélien Correia

analytically those problems in a classical operations research way to use standard ... algorithm in dioid algebra based on Jackson rule is proposed. In that paper ...
173KB taille 4 téléchargements 38 vues
Modeling a Flow-Shop with Setup Times in Dioid Algebra Aurélien Corréïa, Abdeljalil Abbas-Turki, Rachid Bouyekhf and Abdellah El Moudni SeT, UTBM, site de Belfort 90010 Belfort Cedex, France [email protected] Abstract— This paper aims at proposing a model for flowshops with setup times in dioid algebra. Since this algebra is efficient and generic, the absence of a general systematic technique available for such systems using this tool is a strong motivation for investigating the issue. (M in, +) constraints are developed to handle resource sharing of flow-shops. In particular, the part that can be modeled by a Timed Event Graph induce (M in, +)-linear equations which are constrained regarding to the resource availability. The proposed algebraic model is proved to describe exactly the exhaustive set of possible behaviors of dealt systems. An example of flow-shop with setup times is modeled using our approach.

I. I NTRODUCTION Despite several existing models of flow-shop problems [1], [2], [3], there is still plenty of scope for the flowshop modeling improvement. Of course, we can model analytically those problems in a classical operations research way to use standard resolution tools. But, on one hand, that does not necessary allow to use the properties of the studied problem to face its resolution complexity (a specific branch and bound approach allows it), and on the other hand, the initial model can not be easily extended to take new constraints into account. The efficiency is then synonym of a lack of genericity. It is basically these facts which motivate us to introduce a new flow-shop model. Since through the problem of flow-shop we have to tackle cycle time and synchronization issues, a model based on Petri Nets (PNs) allows us to carry out our modeling objective. Indeed, it is widely known that the PN is well adapted to deal with periodic and synchronization phenomena. Besides, one can describe Timed Event Graphs (TEGs) by means of a system of linear equations, using dioid algebra. This has motivated several researches dealing with modeling, performance evaluation [4], [5] and the computation of control laws for (M ax, +)-linear systems [6]. However, TEGs can not afford concurrency. Several efforts have been made to tackle this modeling constraint. In particular, in [7] the problem is treated by transforming the PN into a marked graph. Unfortunately, the authors impose that the shared resources have to be attributed to the users following a stringent sequence. Thus, such an approach does not allow us to take into account different possibilities offered by the system. In [8] the authors proposed a switching (M ax, +)-linear system. They consider Discrete Event Dynamic Systems (DEDSs) that can switch different operation modes. However, when we try to model systems

with many shared resources, the number of operating modes can dramatically increase, exponentially even. Hence, we immediately meet computational difficulties, which rapidly grow if the scale of the systems increases. Another notable work in this area is the one presented in [2] where a combination of TEGs and heap automata controlled by an algorithm in dioid algebra based on Jackson rule is proposed. In that paper, TEGs and Timed State Graphs (TSGs) must be arranged in separated stages. However, as mentioned by the authors, this limitation prevents to model general cases. In particular it is not possible to take setup times into account. The present paper endeavors to describe the exhaustive set of possible behaviors of flow-shops with setup times, with algebraic equations. More precisely, we propose a general systematic technique for modeling the whole behavior of flow-shops with setup times in dioid algebra. With such a mathematical model in hand, we gain a new perspective on the set of DEDSs that we are working on. The organization of the paper is as follows. Section II briefly explains the terminology and notations, and states some known results and remarks that are needed in subsequent development. Section III describes the flow-shop with setup time problem and proposes a dioid algebra model. Then, an example is worked out in section IV to illustrate the results. II. N OTIONS ABOUT DIOID ALGEBRA AND TEG Since the traffic modeling presented in this paper is based on dioid algebra, we give here a brief introduction of the necessary background. A. Dioid algebra The dioid Zmax , commonly known as (M ax, +) algebra, is the set Z = Z ∪ {−∞, +∞} endowed with both following operations (see [5], [9]): a⊕b a⊗b

= M ax(a, b) = a+b ,

,

for “scalars” a, b ∈ Z, and [A ⊕ B]ij [A ⊗ C]ij

= aij ⊕ bij = M ax(aij , bij ) , n M aik ⊗ ckj = M ax (aik + ckj ), = k=1

m×n

for matrices A, B ∈ Z

k=1,...,n n×p

and C ∈ Z

.

The dual dioid Zmin , also called (M in, +) algebra, is obtained by replacing M ax with M in in all above equations. Each dioid D has by definition the following intrinsic properties, for all a, b ∈ D: • a neutral element, denoted ε: a ⊕ ε = a and a ⊗ ε = ε ⊗ a = ε; • an identity element, denoted e: a ⊗ e = e ⊗ a = a; • an order relation, given by: a  b ⇔ a ⊕ b = b. B. State equations of a TEG A PN is a 4-tuple N = (P, T, F, M0 ) such that P ∪T 6= ∅ and P ∩ T = ∅ [10]. P is the set of places, T is the set of transitions, F ⊆ (P × T ) ∪ (T × P ) is the set of directed arcs and M0 is the initial marking. A TEG is a PN in which every place has exactly one upstream and one downstream transition. It is possible to write the (M ax, +)- or (M in, +)-linear state equations that describes the firings of the transitions of a TEG as far as it follows the Just In Time (JIT) operational rule. For each transition x, we can either evaluate the dater function x(k), which gives the date of its k th firing, or the counter function x(t), which gives the number of times x has been fired until date t. We illustrate this by means of the following example. u1

2

y

u2 Fig. 1.

A simple TEG.



= M ax(u1 (k) + 2, u2 (k − 1)) , = 2 ⊗ u1 (k) ⊕ u2 (k − 1) in Zmax ;

the associated counter is given by y(t) = M in(u1 (t − 2), u2 (t) + 1)

y(γ, δ) = δ 2 u1 (γ, δ) ⊕ γ 1 u2 (γ, δ)

,

= u1 (t − 2) ⊕ 1 ⊗ u2 (t) in Zmin . As the well know z-transform for series in classical algebra, the γ- and δ-transforms allow to translate daters and counters functions to formal series, respectively: • γ is the backward shift operator in the event domain, γ e.g. x(k − 1) −→ γx(γ), • δ is the backward shift operator in the time domain, e.g. δ x(t − 1) −→ δx(δ). The behavior of a whole TEG can be described by state equations that are linear in a dioid of formal series in two commutative variables γ, δ with exponents in Z and with Boolean coefficients (see [4]). This dioid, denoted by

.

It is possible to extract a counter (or dater) function from a ax series in Max in Jγ, δK: let s a series of Min Jγ, δK, we note Cs the counter function defined by: M s = γ Cs (t) δ t . t∈Z

In the following, non-controllable input transitions are denoted u, state transitions are denoted x, output transitions are denoted y and input transitions which firing sequences are to be determined, i.e. control transitions, are denoted v. C. Notations and additional results The operator “∗” defined by M a∗ = ak k∈Z

is called Kleene star. It is well known that the ⊗-multiplication of a dioid D is rarely invertible. However, let us draw the reader’s attention to the fact that the residuation theory provides a “pseudodivision” (see [5]). We denote M y = {x ∈ D | x ⊗ a  y} Ra♯ (y) = ya = a the residuated of the mapping Ra : x 7→ x ⊗ a. In [11], authors remind that in Zmin , ba

Consider the TEG model of figure 1. We want to describe the behavior of transition y, then: • the associated dater is given by y(k)

Max in Jγ, δK allows to study both time and event domains together (see [5]). The behavior of transition y of figure 1 is described by the following equation in Max in Jγ, δK:

= b − a if a and b are finite.

(1)

Let us introduce operator ⊲, which has the interesting property of preserving markings (see [12]). Definition 1 Let ⊲ be an operator defined as follows:  e if c = ε, ⊲ c −→ c⊲ = c ⊗ 1 elsewhere, for a scalar c ∈ Zmin and ⊲

C −→ C ⊲ n

⊲ are for a vector C ∈ Zmin , where the entries [C]⊲ i of C defined as:  e if [C]i = ε, ⊲ [C]i = [C]i ⊗ 1 elsewhere.

III. FLOWSHOP MODELLING In order to model a whole flow-shop by Max in Jγ, δK equations, we first propose a graphical model of a single machine based on PNs to explicit the inherent difficulty, that is concurrency.

TABLE I S EMANTICS OF FIGURE 3. Label ul yl Fig. 2.

vl

A flow-shop.

xl L1

τl

τ1 Pβ1 y1

vkl

x1

v1

u1

xkl

Pα1 x2−1 u2 τ1−2 P β1−2

v1−i

v1−2

xi−1 Pβ1−i

τ2−1 Pβi−1

Pβ2−1 v2−1 v2

x1−2

v2−i Pβ2

Pα2

L2

xi−2

τi−1

y2

x1−i

Mi τi,1

u1

v1,1

x1,1

vi,1

xi,1

y1

Pαi v1,1−j

x2−i Pβi−2

M1 τ1,1 L1

xi

vi−1

x1,j−1

τ1,1−j

Pβi

τ1,j−1

xi,j−1

vi,1−j τi,1−j

τi,j−1

τi

vi−2

τi−2

x2

yi

τ1−i

τ2−i Pβ2−i

τ2

τl−n

Meaning input transition: ul (t) is the number of raw materials that are available in line l until t output transition: yl (t) is the number of products that have left line l until t vl (t) is the number of products from line l that are or have been processed by the machine until t xl (t) is the number of products from line l that have left the system until t is the time needed to process product from line l on the machine vl−n (t) is the number of times the machine is or has been reconfigured from line l to line n until t xl−n (t) is the number of times the machine has finished to be reconfigured from line l to line n until t is time needed to reconfigure machine from line l to line n

vi

Li

ui

x1,1−j

A. PN modeling The model figure 3 describes the behavior of products evolving through a machine shared by L lines, each producing a different product type. Along paths delimited by transitions ul and yl , representing line l, tokens representing products evolves across the model part. Places Pαl and Pβl−n represent the shared machine on which at most one product can be processed. A token is present in place Pαl at a date t iff the machine is idle at such a date and is configured for line l. A token is present in place Pβl−n at a date t iff the machine is being reconfigured at such a date from line l to line n. A token is present in place Pβl at a date t iff the machine is proceeding for line l at such a date. Thus, in figure 3, the machine is initially configured for line 1 and is idle. In this representation, we can observe the counters for each transition. Table I details the semantics of the model. We draw the reader attention to the fact that model grows along with dimension of the system following a polynomial law. Let a flow-shop with l lines sharing m machines, the model will have m × l(l + 1) places of type Pα and Pβ counted together. For instance, a system with 10 lines sharing 5 machines will be represented by at least 550 places. A generic model of a flow-shop is depicted by figure 4; in order to be clear, we represented only two machines and two lines.

xi,1−j

vi,j−1

Lj uj

Fig. 3. PN model of a machine with setup times shared by several production lines.

v1,j−1

v1,j

Fig. 4.

τ1,j

x1,j

vi,j

τi,j

xi,j

yj

PN model of a flow-shop with setup times.

Semantics of figure 4 is detailed in table II. B. Modeling in dioid Max in Jγ, δK Since the PN model of a flow-shop without machine is a TEG, the PN model of a flow-shop with N machines and L lines of figure 4 is split into two PN parts as it is shown in figure 5, i.e. lines PN part, which holds all sub-TEG representing lines apart from each other and the machines one. The latter, denoted Gα , is the one of interest. Figure 5 uses the same semantics as figure 4, which is given by table II. As shown in figure 5, transitions v and x are duplicated and the model is split into two sub-PNs, which allows to study the behavior of products evolving through the lines. This aims at focusing the analysis on the machines, regardless of lines external influence. Thus, we consider Gα as the model of shared machines. The structural analysis of Gα provide us with the following lemma. Lemma 1 (Constraint) Let L lines share N machines. Using semantics from table II, we establish that counters of all transitions in direct relation with each Pαb , (a, b, c) ∈ [1, N] × [1, L] × [1, L], must verify the following constraints: X  v(t) − x(t) ≤ M0 (Pα ), ∀t . (2) m=a,l=b,n=c

TABLE II S EMANTICS OF FIGURES 4 AND 5. Label ul yl vm,l xm,l τm,l vm,l−n xm,l−n τm,l−n

Meaning input transition: ul (t) is the number of raw materials that are available for line l until t output transition: yl (t) is the number of finished products that have left line l until t vm,l (t) is the number of products from line l that are or have been processed by machine m until t xm,l (t) is the number of products from line l that have left machine m until t is the time needed to process product from line l on the machine m vm,l−n (t) is the number of times the machine m is or has been reconfigured from line l to line n until t xm,l−n (t) is the number of times the machine m has finished to be reconfigured from line l to line n until t is time needed to reconfigure machine m from line l to line n

M1 u1

Mi

τ1,1

v1,1

x1,1

τi,1

vi,1

vi,1−j

x1,j−1

v1,1−j

Lemma 2 Let a flow-shop with setup times PN model. Then under constraints (2): (a) no transition v can fire despite a product is being processed or machine is being reconfigured, (b) a transition v is allowed to fire if the machine is idle and machine is configured for corresponding line. Proof: By definition, machine m is idle and configured for line l at date t iff Mt (Pαm,l ) = 1. This implies the

y1

τ1,1−j

xi,j−1

τi,1−j

τ1,j−1

τi,j−1 xi,1−j

v1,j−1

x1,1−j

vi,j−1

Lj uj

v1,j

x1,j

τ1,j

vi,j

xi,j

τi,j

yj

(a) TEG part.

v1,1

x1,1

vi,1

Pβ1,1

Proof: Transitions v are enabled iff there is at least one token in place Pα , which is only provided by its initial marking and firings of transitions x. Since marking must remain positive for all t and since each firing of a transition v consumes a token from this place, these transitions can not have been fired more times, until a date t, than the tokens initially in the place andPthe sum of transitions x firings counted together. Thus, m=a,l=b,n=c v(t) ≤ M(Pα ) + P x(t), ∀t. m=a,l=b,n=c It is important to note that this lemma is very powerful to constraint the dealt system. Indeed, it provides us with a relation which implies only counters of transitions involved in Gα . However, from theoretical and practical points of view, it is interesting to check that constraints (2) is in agreement with the kind of the behavior of machines. To do this, it suffices to show that: (i) constraints denies to process a product if there is already a product being processed or if the machine is being reconfigured, (ii) if the machine is idle, constraints must allow either the processing of a product of configured line or a reconfiguration operation, (iii) constraints must not forbid a product to leave the machine nor the machine to finish a reconfiguration operation. Note that assertion (iii) is obviously verified since counters of transitions x are multiplied by −1 in (2): each firing of such a transition relaxes corresponding constraint. Hence, we only have to prove (i) and (ii), which is the main concern of the following lemma.

xi,1

L1

v1,1−j

Pβi,1

x1,j−1

vi,1−j

Pα1,1

Pαi,j v1,j−1

xi,1−j

vi,j−1

Pβi,j

Pβ1,j x1,j

v1,j

xi,1−j Pαi,1

Pα1,j x1,1−j

xi,1

vi,j

xi,j

(b) PN part, denoted Gα . Fig. 5.

Split model of a flow-shop with setup times.

P following situation: vm,l (t) + n vm,l−n (t) < xm,l (t) + P n xm,n−l (t) + M0 (Pαm,l ). Then, allowing just one transition vm to fire once still fits in the constraint (2) dealing with these counters, which proves (b). On the contrary, if machine m is busy, i.e. either processing a product or being reconfigured, none of the places Pαm contains a token. Thus, P for all line l, vm,l (t) + P v (t) = x (t) + m,l−n m,l n xm,n−l (t) + M0 (Pαm,l ). n In such a case, corresponding constraints (2) prevent any transition vm to be fired, as required by (a). In summary, lemma 1 leads to the following theorem. Theorem 1 The behavior of N machines shared by L lines is described by the following state equations:  X = AX ⊕ BV , Y = CX . V has to be chosen such that V  DV ⊕EU and such that, for all transitions in direct relation with each Pαb , (a, b, c) ∈ [1, N] × [1, L] × [1, L]: X  v(t) − x(t) ≤ M0 (Pα ), ∀t . m=a,l=b,n=c

Proof: The equation system describing the evolution of X and Y are well known and reminded in section II. The inequation describing the possible dynamics of V is obtained from the TEG part structure of the model, as explained in section II. Finally, the N × L constraints are derived from lemma 1. IV. EXAMPLE In this section, we apply our model on a concrete example depicted in figure 6.

Fig. 6.

A bolt factory.

Consider a bolt factory that produces nuts and screws, denoted P1 and P2 , respectively. Each material is manufactured by machine M1 , then threaded, or drilled and tapped, by machine M2 . Finally, they are assembled to form a bolt; since this last operation is out of interest here, we suppose it has a negligible process time. For the same reason, we suppose stocks have infinite capacity. The model is depicted in figure 7. Stocks

M1 u1

4

v1,1

x1,1

Assembly cell

M2 4

v2,1

x2,1

L1

x1,2−1

x2,2−1

v1,1−2 2

v2,1−2 1

3

2

x0 y

x1,1−2

v1,2−1

x2,1−2

v2,2−1

L2 u2

v1,2

6

Fig. 7.

x1,2

v2,2

2

x2,2

PN model of a bolt factory.

From the PN of figure 7 and using theorem 1, we easily obtain the analytic model of the system. Setting U , X and V as to be the following vectors     x1,1 v1,1  x2,1     v2,1   x1,2      v1,2    x2,2        v2,2   u1     , U= , X = x1,1−2  , V =   u2 x1,2−1  v1,1−2   v1,2−1   x2,1−2      v2,1−2  x2,2−1  v2,2−1 x0

we have 8 > > > > > > > > > > > > > > > > > > X > > > > > > > > > > > > > > > > > > > < > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > :Y

0

ε Bε B B Bε B Bε B =B Bε Bε B B Bε B @ε 0 ε4 δ Bε B B Bε B Bε B ⊕B Bε Bε B B Bε B @ε “ ε = ε

ε ε ε ε ε ε ε ε ε

ε ε ε ε ε ε ε ε e

ε δ4 ε ε ε ε ε ε ε ε

ε

ε ε ε ε ε ε ε ε ε ε ε δ6 ε ε ε ε ε ε

ε ε ε ε ε ε ε ε e ε ε ε δ2 ε ε ε ε ε

ε

ε

ε ε ε ε ε ε ε ε ε ε ε ε ε δ3 ε ε ε ε ε

ε ε ε ε ε ε ε ε ε

ε ε ε ε ε ε ε ε ε ε ε ε ε ε δ2 ε ε ε

ε

V has to be chosen such that    ε ε ε ε ε ε ε ε      e ε ε ε ε ε ε ε          ε ε ε ε ε ε ε ε   ε ε e ε ε ε ε ε      V     ε ε ε ε ε ε ε ε      ε ε ε ε ε ε ε ε         ε ε ε ε ε ε ε ε    ε ε ε ε ε ε ε ε  C⊲ C⊲  v1,1 (t) v1,1−2 (t)   1  ⊗  Z ⊲ (t) ⊲ min  C C  x1,1 x1,2−1 (t)   ⊲ ⊲  (t) C C  v1,2 v1,2−1 (t)   ⊗ 1   Z ⊲ min  Cx1,2 (t) C⊲  x1,1−2 (t)   ⊲ ⊲  C C (t) (t)  v v   1 Zmin ⊲2,1 ⊗ ⊲2,1−2   Cx2,1 (t) Cx2,2−1 (t)    ⊲ ⊲  C C (t) (t)  v2,2 v   ⊗ ⊲2,2−1 1 Zmin ⊲ Cx2,2 (t) Cx2,1−2 (t)

1 ε εC C C εC C εC C εC CX εC C C εC C εA ε 1 ε ε ε εC C C ε εC C ε εC C ε εC CV ε εC C C δ 2 εC C ε δA ε” ε e X

ε

,

.

   e ε ε    ε ε ε     ε e ε    ε ε ε     U, X ⊕  ε ε ε    ε ε ε       ε ε ε ε ε ε ∀t, ∀t, ∀t, ∀t.

V. C ONCLUSION We have proposed a general model of flow-shop with setup times using dioid algebra. This is done by introducing a set of constraints to express the limitation of the system behavior. Actually, we graphically extract parts of the system which correspond to the shared resources in the PN. Once this extraction is done, we obtain a TEG which behavior can be described by means of a fully analytic model. This model is based on a proved theorem and has been validated through an example. As shown, it allows to write equations describing the behavior of many systems that could not be represented with dioids so far. Thus, we enlarged the scope of this powerful algebra to the analysis of flow-shops with setup times.

In the α | β | γ notation usually used in the literature to describe scheduling problems [13], the flow-shop problem with setup times is denoted F | sif g | Lmax . We draw the reader attention to the fact that this general problem has been proved to be N P -hard and remains unsolved [14] even for the simplified case of two machines. Although our model only shows the set of feasible solutions without any optimization concern, it allows to better understand intrinsic mechanisms of the problem and offers mathematical opportunities. In particular, by operating a reduction of the set of possibilities to the set of admissible solutions, it may ease the use of resolution approaches descending from operations research (e.g. tabu methods, genetic algorithms, neural networks, etc.). There are several issues that deserve further investigation. One is to use our model to define an optimal control for studied systems in dioid algebra. Indeed, it might be possible to obtain a generic control law based on residuation theory, at least to obtain locally optimal schedules for each machine. R EFERENCES [1] P. Richard, N. Jacquet, C. Cavalier, and C. Proust, “Solving scheduling problems using petri nets and constraint logic programming,” in IEEE international conference on Emerging Technologies and Factory Automation (ETFA), vol. 1, Paris, France, Oct. 1995, pp. 59–67. [2] M. Al Saba, J.-L. Boimond, and S. Lahaye, “On just-in-time control of flexible manufacturing systems via dioid algebra,” in IFAC symposium on INformation COntrol in Manufacturing (INCOM), vol. 2, SaintÉtienne, France, 2006, pp. 137–142. [3] S.-C. Ren, D. Xu, F. Wang, and M. Tan, “Timed event graphbased cyclic reconfigurable flow shop modelling and optimization,” International journal of production research, vol. 45, no. 1, pp. 143– 156, Jan. 2007.

[4] G. Cohen, P. Moller, J.-P. Quadrat, and M. Viot, “Algebraic tools for the performance evaluation of discrete event systems,” Proceedings of the Institute of Electrical and Electronics Engineers (IEEE), vol. 77, no. 1, pp. 39–58, 1989. [5] F. Baccelli, G. Cohen, G.-J. Olsder, and J.-P. Quadrat, Synchronization and linearity, an algebra for discrete event systems. Wiley, 1992. [6] B. Cottenceau, L. Hardouin, J.-L. Boimond, and J.-L. Ferrier, “Model reference control for timed event graphs in dioids,” Automatica, vol. 37, pp. 1451–1458, Mar. 2001. [7] B. Trouillet and A. Benasser, “Cyclic scheduling problems with assemblies: an approach based to the search of an initial marking in a marked graph,” in IEEE international conference on Systems, Man and Cybernetics (SMC), vol. 3, Hammamet, Tunisia, Oct. 2002. [8] T. J. J. van den Boom and B. De Schutter, “Modelling and control of discrete event systems using switching max-plus-linear systems,” in 7th International Workshop On Discrete Event Systems (WODES), Reims, France, Sept. 2004. [9] R. Cunninghame-Green, “Minimax algebra,” in Lecture notes in economics and mathematical systems. Springer-Verlag, 1979, vol. 166. [10] T. Murata, “Petri nets: properties, analysis and applications,” Proceedings of the Institute of Electrical and Electronics Engineers (IEEE), vol. 77, no. 4, pp. 541–580, Apr. 1989. [11] G. Cohen, S. Gaubert, R. Nikoukhah, and J.-P. Quadrat, “Second order theory of min-linear systems and its application to discrete event systems,” in IEEE international Conference on Decision and Control (CDC), Brighton, England, Dec. 1991. [12] A. Corréïa, A. Abbas Turki, R. Bouyekhf, and A. El Moudni, “Modelling urban intersections in dioid algebra,” WSEAS transactions on systems, vol. 5, pp. 1223–1228, May 2006. [13] R. L. Graham, E. L. Lawler, J. K. Lenstra, and A. H. G. Rinnooy Kan, “Optimization and approximation in deterministic sequencing and scheduling: a survey,” Annals of discrete mathematics, vol. 5, pp. 287– 326, 1979. [14] C. N. Potts and M. Y. Kovalyov, “Scheduling with batching: a review,” European journal of operational research, vol. 120, no. 2, pp. 228– 249, Jan. 2000, invited review.