Improving FMS scheduling by lot streaming

The global minimum of completion time for manufacturing systems is determined by the processing capacities of the bottleneck machine-group. How to go close to this minimum for given production tasks is analysed in the paper. Lot streaming can significantly improve the schedules. Hybrid Dynamical Approach (HDA) realizes in automatic way lot streaming and overlapping production. A Brute Force Method (BFM) is proposed in the paper when HDA can not be applied. The essence of this is that the series are divided into the same number of sub-series. The increase of sub-series number stops when the completion time becomes suitable. The effect of setup times is analysed. Theoretical analysis for a simplified problem is performed and planning proposals are provided.


Introduction
The quality of schedules has extreme importance in FMS (Flexible Manufacturing Systems) utilization.Because these systems creation is concerned with high capital investments the intensive utilization of resources has basic role in gaining high profit.
For the solution of FMS scheduling problems similar approaches as for usual problems of manufacturing scheduling (see, for example: [1][2][3][4][5][6][7][8][9][10]) can be used.(The literature on this topic is enormous.The above are just basic examples.)Independently from the huge literature some problems were not cleared enough.For example: how the scheduling depends on setup issues.This problem is similar or equivalent to the issues of transport, manipulation, storage, machine tool, fixture, instrumentation.
The above problems may be treated by using modern optimization technologies (like: ILOG OPL [32]) or by simulation [33,34].
For quality solution of FMS scheduling one issue should be very seriously taken into account.This is the fact that for these systems the times necessary for setups are much less than the processing (manufacturing) times.This is a trivial fact because in other cases the systems would hardly be named flexible.
In the present article we will not go very deeply into details of scheduling methods.One interested in these problems may be informed from the literature.We will only use the most popular approach: the priority indices based heuristic method.The only performance criterion used will be the minimum of maximums of completion times.
In the literature the above mentioned method of scheduling was analysed to great extent.Goodness of priority rules, aspects of choosing those, etc. were studied.Even expert systems for choosing priority rules were proposed (see, e.g.: [29]).We have the opinion that the lot-streaming is a much more effective mean for the improvement of FMS schedules than the manipulation of priority rules.This opinion is supported with literature sources, too (see e.g.: [20][21][22][23][24][25][26][27][28]).

State of the Art
As it was mentioned above the manufacturing scheduling is one of the topics most widely discussed in technical literature.Classical work of French [1] and many others give extensive coverage of the problems.From the newer literature one could use, for example: [5][6][7][8][9][10].
Lot streaming is not as popular as the general problem of scheduling with fixed batches but widely used.
An attempt to formulate the problem from the point of view of inventory control was made by Szendrovits [17].Dauzere-Peres and Lasserre [20,21] proposed computation aspects for lot streaming in job-shop scheduling problems.Genetic algorithms for the above problem were proposed by F.T.S. Chan, Wong, and P.L.Y.Chan [31].Many other works discuss the problem, too.
Hybrid Dynamical Approach, HDA was proposed by Perkins and Kumar in 1989 [12].HDA realizes lot streaming and overlapping production as it was shown by Somlo [11].General theory was developed by Matvee, Savkin [15].Pragmatic aspects of using HDA were published in [14] and [16].Many other works discuss the features of this approach, too.
The new contribution of the present paper is the proposal of using a Brute Force Method, BFM which is based on the simple division of all of the part type series to the same number of sub-series.The goodness of the obtained results is estimated by simulation.General issues are formulated.Bottleneck scheduling idea is used to give theoretical background.For special cases ("joinable" schedule) optimal lot streaming policies were developed.The goodness of the Brute Force Method is estimated.The trivial fact that when the setup times are small the lot streaming can effectively be used is explained and quantitative characteristics are given.
The proposed Brute Force Method can be used in cases when the HDA is not suitable.These are the cases: 1 When the number of parts is not high enough (less than 200 for part types items).
2 When it is difficult to provide auxiliary buffer contents.

The Contents of the Paper
In the present paper, part 1 is an introduction.In part 2 a mathematical method for FMS scheduling is presented.In part 3 an example is given as the basis for a case study.In part 4 the hybrid dynamical approach use is outlined and it is shown that this method, which realizes lot streaming and overlapping production in some cases gives excellent results for FMS scheduling.In part 5 bottleneck scheduling and the global minimum of completion time is discussed.In part 6 brute force method of lot streaming is proposed which can be used to get very good schedules for FMS when HDA is hard to apply.

Mathematical Model for FMS Scheduling
Below we will formulate a mathematical model which is valid for the determination of suitable schedules for FMS.This model consists of parts as follow:

Part Types, Machine Groups
The task is to produce I different part types in given n 1 , n 2 ,. . .n I number of pieces, during the given time period, on the given production system.A part type will be identified with index i ( i=1,2,. . .I ).The production system consists of a given number of machine groups.The machine groups are identified with j = 1, 2, 3. ..J indices.The part types processing order is given and any route among the machine groups is possible.That is, a general Job-shop type scheduling problem is considered.(Considering CIM systems it is supposed that the order of processing is determined by the manufacturing sequences planning sub-system of CAPP (Computer Aided Process Planning).)

Production Time Periods
Concerning the period of production, the case will be considered here when the production period is the same for all of the parts.The time interval of the production is given by the time value "T sch .So the production interval is [0,T sch ].TheT sch value is, for example, the length of a shift, of a day, of the week, or so.

Processing Time Data
The processing time is determined as τ i jk where i indicate what part type on which machine group (with index j) has the given manufacturing time.The integer k expresses the order number of the given sequence.This time values are expressed in the necessary machine group time units.(That is, if the machine group consists of M j number of machines, the time necessary for one machine is divided by M j .)The processing time values are determined on the level of operation planning sub-system of Computer Aided Process Planning (CAPP) including manufacturing data determination (optimization).In the following, only τ i j will be used (k -is omitted) because for the discussed topics the order number of operations does not have any role.
It is remarkable, that here on the processing time we understand processing capacity needs which can even contain handling times and others, too.Of course, these time estimations are based on real processing times.

Setup Times
It is supposed that when a machine group switches from the production of one part type to another some time is necessary for preparation for the new task.This is concerned with the necessary changes in machine conditions, tools, fixtures conditions; parts transport delays and so on.In the present paper, setup times are considered.It is remarkable, that the part transportation times and the machine-groups setup times are very much different quantities.But, sometimes, these can be treated in the same manner.Setup times are indicated as δ ik , where i = 1, 2, . ..I, k = 1, 2, . .., I .Where, δ ik = 0, when i = k.

Scheduling Task
The goal of the solution of the scheduling problem is to get some allocation of all the production sections.Different practical requirements can be formulated.The fulfillment of optimization goals can be required (see e.g.French [1]).In the present paper, to estimate the goodness of schedules only the values of the completion times will be considered.This criterion is highly used in practice, it is simple and effective to apply.

Machine Group Loads and the Global Minimum of Completion Time
From the above data the machine group's loads can be computed as follows: The tl j values are the components of the machine load vector.The maximum of tl j values, generally, belongs to the bottleneck machine group (see in details later).This value forms the processing time part of the global minimum of the completion time.Clearly, it is impossible to construct any order of processing which could result less than this processing time.The global minimum of completion time differs from this value by the sum of setup time values.Of course, the sum of setup time values may depend on the order of processing.
Let us introduce the following notations Where: Mint pr is the minimum of the total production time and the summation of setup times are executed for all of the production sections.
As it was mentioned, in most of the practical cases

Suitable Schedules
In the present paper we formulate the planning goal as to construct scheduling sequences which satisfy the following condition: Where: C r is named as excess time coefficient and η is a suitably chosen value which is more than one (η ≥ 1).We propose η =1.15 in normal case, η =1.1 for extreme quality requirement cases and η =1.2 for lower quality requirement cases.One can recognize that these values seem very much to satisfy practical goals.If the above condition is satisfied the completion time is close to the global minimum and this can be a good criterion for the systems performance.

An Example for FMS Scheduling
In Table 1 the engineering database for an FMS scheduling is given.This example was analysed in paper [15].The number of parts was 300, 300, 350, 400 for part type A, B, C, D (i = 1, 2, 3, 4) respectively.
That is the order of machine-groups is : i = 1 ;(1,2,3,5); for i = 2; (3,1,2,4), for i = 3 (1,3,5,4,2)  It turns out that using the usual methods of combinatorial nature it is impossible to improve the schedules significantly.One way of significant improvement is to use lot streaming.Above, the setup issues having significant role at the solution of manufacturing scheduling problems where not taken into account.At the use of lot-streaming methods the setup times have very important role so these should be taken into consideration.In the next section we will deal with the hybrid dynamical approach (HDA) to FMS scheduling which provides means for the realization of lot streaming and overlapping production automatically.

Hybrid Dynamical Approach to FMS Scheduling
HDA gives an excellent opportunity to solve FMS scheduling problems.A nice feature of this method is that the overall planning procedure may be reduced to the determination of one parameter.This is the so-called demand rate coefficient.The proper choice of this parameter provides the fulfilment of production tasks.When using HDA it is supposed that the parts deliveries are (virtually) distributed and the parts arrive to (virtual) input buffers according to the given demand rates (determined by the use of the above coefficient).The production is organized using control laws of switching nature.The production of parts is represented as reducing the content of (virtual) buffers.
When a buffer becomes empty, a switch to produce other part is performed.Which part to produce next, is determined by the so-called switching law.The most well-known switching laws are: Periodic-Switching; Clear-the-Largest Buffer First; Clearthe-Largest-Work.
On Fig. 4 a diagram is shown representing for the given example the schedule for the bottleneck (numbered by 1) machine group.On this Figure the part demands are represented as straight lines the slopes of which are the demand rates.The piecewise sections below these lines represent the production.During a horizontal section the given part is not produced (there is no change in the number of produced parts).After a horizontal section a production section follows represented by a sloped section.The slope of the line is equal to the production rate (number of produced parts during the time unit).When this line intersects "the demand line" the virtual buffer of the given part type becomes empty.(We name "demand line" the one representing the part demand.)At this moment, a decision is made according to the switching law about which part will be processed next.The production of the next part begins after the proper setup time.The diagram on Fig. 4 can easily be transformed to corresponding Gantt diagram, which is shown on Fig. 5.
The above scheduling example was examined using the simulation program developed by T. Koncz [16].• Strongly Non-setup Dominant Systems We name as above the systems in which the setup times of all the machine groups and produced parts may be replaced by the maximum value of those and this replacement does not have basic effect on the system performance.Certainly, the above condition may be fulfilled if the setup times have (relatively) very small values and /or are close to each other.
• Non-setup Dominant Systems These systems are those where the above condition is valid at least for the bottleneck machine group and among the other setup time values there is not a single one which value could have large effect on the system performance.

• Setup Dominant Systems
These are the systems where the setup times have basic effect on the system performance.
For setup dominant systems the solution of scheduling task is an extremely complicated problem.This statement is much more valid for the solution of lot streaming problems.Solutions can be obtained by the use of sophisticated nonlinear programming methods.For example, ILOG OPL scheduling model [33] or simulation using Taylor [35] or other simulation systems can be used.
For non-setup dominant systems hybrid dynamical approach gives an excellent opportunity for automatic scheduling using lot streaming and overlapping production.
The above is true, even in a higher degree, for strongly nonsetup dominant systems.

Goodness of scheduling
To estimate the goodness of scheduling is a very complicated task.Not only the loading characteristics of machine groups (homogeneous sections) but the storage, transport, handling, tooling, etc. issues play important role.Scheduling tasks, in nature, are nonlinear programming problems as it was indicated by French [1].In many cases, only full enumeration gives a correct solution.Recently, the opportunities to solve complicated nonlinear programming problems improved a lot.Scheduling tasks may also be formulated as multi-criterion optimization problems (see e.g.[7]).
By the growing effectiveness of computing technology this way is also promising.
In this paper only one measure of goodness of schedules is considered.This is the (production) completion time.For that in earlier we introduced the idea of suitable schedules.The goodness of schedules may be considered from many aspects.One of the most important aspects is the utilization of system's processing capacities which can be characterized with time history.To this kind of characteristics belongs the above mentioned production (completion) time.Other characteristics are the setup, storage, transport, handling, tooling, etc. issues.
As it was mentioned earlier, the global minimum of completion time can be determined as In (5.1) Min δ ik is the minimum of setup times sum for the j-th machine group.
The determination of this value is also a mathematical programming problem, of course, a lower order one than the scheduling.
The net manufacturing time tl j do not depend on the order of jobs.
For strongly non-setup dominant systems let the setup time be indicated as δ.
As it was mentioned, for these systems all of the setup times may be considered as having equal setup time value δ.Then Min(t pr ) = Max j (tl j + p j δ), j = 1, 2, 3. ... ...J (7) where p j is the number of part type series manufactured in the machine group with index j.
(We suppose that for the first operation a setup is necessary, too).
In the following we restrict our investigations to strongly nonsetup dominant systems.Furthermore we suppose, for simplicity, that the production time tl j reaches his maximum for that j value for which tl j + p j δ also does.
We use, as earlier, the following notation for net manufacturing time on the bottleneck machine group: We introduce the following notation: The difference between C r and η is that the first is a number characterizing the system performance the second formulates requirement.The requirement is that C r ≤ η should be satisfied.
Improving FMS scheduling by lot streaming 7 2007 51 1 We also introduce a coefficient as follow We name s r as setup relation coefficient.

Example
Let us consider the above example when investigating scheduling by priority indices based heuristic method.At above no setup times was considered.Let now the setup time be δ = 0.2 [h].For the given above example The use of the hybrid dynamical method results the maximum utilization of production resources constrained by bottleneck machine group capacities.So, HDA can be considered as one way of the solution of bottleneck scheduling.
Our investigations have shown that HDA can be used with good results for cases where the condition s r ≤ 0.005 is valid.We have found that the case of this method can be highly proposed when the number of items of all of the part types is more than 200.One more condition of the use of the proposed variant of HDA (see: [11,13,14]) is the opportunity of creating auxiliary buffer contents.
For most of the flexible manufacturing systems the above conditions are fulfilled.In some cases the condition concerning the number of part items is not satisfied (sometimes it is also difficult to provide auxiliary buffer contents.).For these cases we propose to use the Brute Force Method detailed below.

Brute Force Method, BFM for Lot Streaming and Overlapping Production.
Considering the example above, when using FIFO and SLACK for scheduling it is straight forward that dividing the series of part type 'A' and 'C' to two or more sub-series would significantly decrease the production time in both cases.
Certainly, similar changes for the series of part types 'B' and 'D' would have similar effects.
As it is well known, scheduling is, in general, NP hard problem.Lot streaming make the problems even much more complicated.
The investigation of different variants of the scheduling tasks could clearly result combinatorial explosion.It seems to us that expert systems, genetic algorithms and other modern approaches could give very effective solutions but these directions are outside of the scope of this paper.
Here we simply propose a brute force method the essence of which is simply the division of all of the series to the same number of sub-series.In this paper our goal is to show the features of this approach depending on the value of the setup relation coefficient s r .

Bottleneck Scheduling and Global Minimum Based Lot Streaming Approaches
When trying to realize good completion time values it is a natural wish to attempt to find a schedule which results the global minimum of this.For example, if considering the example above, FIFO gives such a schedule if the items B3, C3, D4, B4, D5, C4, C5 are omitted.It is an interesting research topic when exists, for a given task, any schedule satisfying the above goal.But this is outside the scope of the present paper.
Here we formulate a less strict condition for the quality of schedules.
We consider a schedule suitable if the excess time coefficient is less than equal than some given value slightly more than 1.That is as it was mentioned.It seems to us that for the example η = 1.15 is a good value (In some rather critical cases η =1.10 can be applied.)For analysing the situation let us consider a special case.Let us suppose the following: for a scheduling task using the priority based heuristic method, or any other, we could not produce a schedule which could provide the fulfilment of condition (6.1) without lot streaming.But we could get a schedule in which the bottleneck machine groups are continuously loaded (it means that among the processing sections there is no idle time) like in the case of the above example.We also suppose that the obtained schedule is "joinable".We name a schedule joinable if the conditions on Fig. 6 are fulfilled.That is if the copy of the Gantt diagram of the schedule are shifted by the Ntl value the "active parts" of the diagrams on any machine groups do not cover each other.It is very easy to give analytical formulation of the above.If Per. Pol.Mech.Eng.
then the schedules are joinable.( τ bδ is the time excess over the maximum of net manufacturing time, τ ju and τ ja are the times until and after the active parts of Gantt diagrams, see Fig. 6).
"active parts" of the diagrams on any machine groups do not cover each other.It is very easy to give analytical formulation of the above.If for all j = 1, 2, 3 …J (6.Where t pr (W) is the processing time when W sub-lot is considered.Where t pr (W) is the processing time when W sub-lot is considered.On Fig. 6 a value τ bδ is indicated.This is the excess time of the completion time above the time of production on the bottleneck machine group.Now, let us consider the case δ → 0. (When the setup time has very small value, it can be neglected).Let for that be Let us apply lot streaming.Let us divide the series to W equal size sub-series and "join" the similar schedules.Then, Where t pr (W) is the processing time when W sub-lot is considered.
In this case we can imagine the situation as follows.We have similar diagrams as the left part of Fig. 6 but with the items lengths of which are divided by W. If we join the sub-schedules as in Fig. 6 the overall processing length on the bottleneck machine group will be equal to N tl.
For W fulfilling the condition one has That is (if the right hand part of ( 15) is not an integer), satisfying the goodness condition we have Clearly, we are not restricted to stop at this value but increasing W we can realize better and better excess time coefficients.This procedure can be applied until some of the sub-lots consist only of one part item.Now, let us consider the case when we have some setup time which is small but can not be neglected.
For this case we introduce the following added conditions: we suppose that, because δ has small value the character of the schedules does not change, that is we apply the same sequences as before, and the schedules stay joinable.Furthermore, no extra idle times on bottleneck machine group appear because of setup times on other machine-groups.
On Figs. 6 and 7 setup times are not indicated.Let the scheduling procedure by setup time δ result a schedule with τ bδ value.The sub-schedule Gantt diagrams consist of items with lengths divided by W but with δ setup time among them.So, (p f j , as earlier, is the number of part types processed on the bottleneck machine-group.) Now, for same given setup time value δ choosing W = 1, 2, 3. . .integer values, the excess time coefficient can be computed according to Eq.19.By the increase of W first C r will decrease, then increase.It is possible to analyse the situation considering W as real number.If one finds the optimal value for W real, the next two (lower and upper) integers are candidates for integer solution.
W has its minimum when ∂C r ∂ W =0. That is So, the minimum value of C r which can be provided by lot streaming is Improving FMS scheduling by lot streaming Now, let us investigate how the optimum excess time coefficient depends on the set-up relation coefficient s r .It is easy to get that Clearly, even at big values of the original excess time (that is at big value of τ bδ N tl ), when s r has small value C r,opt may have very favorable value.
From Eq.23 one gets Taking for example C r,opt =1.15 s r = 0.005625 Because according to Eq. 19 If s r is less than the value determined by Eq. 25 then C r is less than 1.15.Relations (24) or (25) give an opportunity for general investigation of the effect of excess time coefficient and setup relation coefficient to system performance.
Similar investigations are possible for rather general cases when the sub-schedules are not joinable.These cases need future research which is not the topic of the present paper.
One can formulate another question.What is the maximum setup time value below which the system performance is suitable.
According to Eq. 22 one can get So, if the δ opt value is less than given by ( 27), the C r value will be less than C r,opt , if W opt is applied.Of course, slight change in the quantities is present if for W instead of real numbers integers are used.

Remarks
• We applied sub-series of equal size.It is possible to use not equal, for example decreasing sub-series sizes.
• When dividing the series to W sub-series it might happen that the items in sub-series become not integer.Applying subseries with closest integer number of sizes does not change significantly the obtained results.

Example
The schedule obtained for the above example using FIFO priority index may be transformed to some joinable schedule.This can be done by omitting C4, C5 and D1, shifting B1 and D2 (these shifts are all possible) as it is shown on Fig.  2.
The setup relation coefficient is s r = 4•δ 280 = 0.00286.According to the results until δ = 0.8 that is until s r = 0.011 value the condition C r,opt < 1.15 is fulfilled.
For the example one gets (for C r = 1.15)In the example above, we investigated the effect of the lot streaming for joinable schedules when we supposed that there exists an original schedule which can be significantly improved in this way.
One of the features of the proposed method was that we kept the original sequences of the operations for sub-lots, too.But the first difficulty in practical use of this approach is that it is not an easy task to find the initial joinable schedule.We could solve this task for reduced task using heuristic approach.But we could not find an initial joinable schedule for the original example (it may exist).
Eliminating this difficulty we simply divide all of the series to the same number of sub-series and use priority indices based heuristic method for scheduling.We suppose of course at given setup time value that increasing the number W (integer) from 1 the completion time will decrease.We stop the increase of W when getting the suitable or the minimum value of the excess time coefficient.
We named this approach as a brute force method, BFM.A definition of brute force method is an algorithm that inefficiently solves a problem, often by trying every one of a wide range of possible solutions (National Institute of Standards and Technology, NIST).
Brute Force Method (BFM) is a method which tries a large number of solutions and compares them until a suitable solution is found.
Here we understand in this paper that lot streaming brute force method is one which divides the production lot into many possible different division sizes until finding the optimum number of Per.Pol.Mech.Eng.

sub-lots.
Let us consider the original example.Let the set-up time be δ =0. 4 [h].We divide the original number of items in part type series by N = 2,4,6,8,10,12,14 and realize scheduling.
The results of scheduling using FIFO and SLACK are demonstrated in Table 2.The graphic of the results is given in Figs.The results obtained by FIFO and SLACK are given in Table 3 and 5 and Figs. 12, 13, and also in Fig. 14.
Interestingly SLACK which is much better for original case is worse at lot streaming.Then, we investigated the effect of setup time on the performances of the system.

Analysis of the Results
The Brute Force Method (BFM) unlike HDA can effectively be used for lot streaming when the number of parts in the series is small (small and middle size series production).As it is straight forward, the application range of this method depends very much on the value of setup relation coefficient.
It seems to us (based on the results of the analysed example see: Tables 4 and 5)) that the values s r ≤0.006 provide very favorable condition for the use of this method.For these values the production times are less than 1.15 times more than the  global minimum.Concerning the number of division to subseries (W ) it is interesting to note that the most favourable number for 0.00143 ≤ s r ≤ 0.0057 ( 0.1≤ δ ≤ 0.4 for the given example), 8 seems, for bigger values of s r it seems 6 sub-batches is the most suitable choice.
According to the results it is hard to apply BFM that δ > 0.8 [h] (s r > 0.011).
Rather detailed knowledge about the use of BFM can be obtained by case studies which can lead to deep understanding of the effectiveness of the method.

Conclusion
It is shown in the paper that lot streaming can be used for the solution of FMS scheduling with great effectiveness.
As the results of scheduling in general, the effectiveness of lot streaming depend on the structure and quantities of database.In many cases the proposed brute force method leads to suitable results in a very simple and fast realizable way.
There is a number of future research topics which could lead to better understanding of the lot streaming problem.A few are given below: • What are the groups of the problems when lot streaming is effective and what when it is not.
• HDA seems universal but sometimes may not be used.What is the relation and place of HDA and the proposed Brute Force Method in the overall problem range?
• Joinable schedules are very much suitable for the improvement by lot streaming.How to find them?When do they exist?What kind of other typical groups of schedules may be proposed?
• We have the opinion that the present paper gives some general idea about how the methods and results of scheduling depend on setup times.Is it possible to extend this research to rather wide field (non-setup dominant and setup-dominant systems)?

Figure 4 .Figure 5 .
Figure 4. Part demands and part production using HDA

2 ) 6 )Figure 6 .
then the schedules are joinable.(Δ δ τ b is the time excess over the maximum of net manufacturing time, Δ ju τ and Δ ja τ are the times until and after the active parts of Gantt diagrams.(See Figure Gantt chart of the joinable schedule

Figure 7 .( 6 . 3 )
Gantt chart of the joined schedules On Figure 6 a value Δ δ τ b is indicated.This is the excess time of the completion time above the time of production on the bottleneck machine group.Now, let us consider the case δ → 0. (When the setup time has very small value, it can be neglected).Let for that Δ δ τ b =Δ 0 b τ Let us apply lot streaming.Let us divide the series to W equal size sub-series and "join" the similar schedules.Then, t pr (W) = Ntl + W b0

Figure 7 .( 6 . 3 )
Gantt chart of the joined schedules On Figure 6 a value Δ δ τ b is indicated.This is the excess time of the completion time above the time of production on the bottleneck machine group.Now, let us consider the case δ → 0. (When the setup time has very small value, it can be neglected).Let for that Δ δ τ b =Δ 0 b τ Let us apply lot streaming.Let us divide the series to W equal size sub-series and "join" the similar schedules.Then, t pr (W) = Ntl + W b0