An integrated production planning and scheduling ... - Semantic Scholar

4 downloads 9054 Views 316KB Size Report
generates a lower inventory level, a high plant e$- ... To be e!ective, a scheduling system must be an .... E Phi(i,w,g,t): the quantity of product i produced in center ...
Int. J. Production Economics 74 (2001) 33}48

An integrated production planning and scheduling system for hybrid #owshop organizations F. Riane*, A. Artiba, S. Iassinovski Faculte& s Universitaires Catholiques de Mons, Centre d+Etudes et de Recherches en Gestion Industrielle, Belgium

Abstract In this paper, a production system organized in serial shops (hybrid #owshop) is presented. A brief enumeration of the essential constraints that characterize this kind of organizations is given. Then, the objectives of a decision support system (DSS) are stated. The di!erent elements composing this DSS are described. The DSS is composed of two main ingredients: (1) decomposition into planning and scheduling, and (2) closed loop or feedback mechanism. The approach adopted in this paper is mainly de"ned with respect to the decomposition ingredient. Special attention is also paid to the interaction between loading and scheduling. The feedback mechanism is done by simulation. In fact, a simulation model is developed for the whole production system taking into account all its speci"c characteristics. An illustrative example explains in detail the feature of the proposed DSS.  2001 Elsevier Science B.V. All rights reserved. Keywords: Decision support systems; Simulation; Production planning; Scheduling

1. Introduction In relation to the requirements of real-life production planning and scheduling problems, the main objective is to "nd a good schedule which generates a lower inventory level, a high plant e$ciency and in which most due dates are respected. The inventory level concerns in process stock and "nished goods inventory. The e$ciency of the plant means high machine and labor utilization. To meet these objectives an e!ective scheduling system is to be developed using appropriate combination of rigorous methods of manufacturing system states

* Corresponding author. Current address: 151, ChausseH e de Binche B-7000 Mons, Belgium. Fax: 32-65-31-56-91. E-mail address: [email protected] (F. Riane).

analysis, rules of thumb, arti"cial intelligence and simulation techniques. To be e!ective, a scheduling system must be an integral part of a control methodology, which in#uences decision making at all levels. At the operational level decisions on scheduling #ow of work are made on the basis of the di!erent measures of shop #oor's performance. These performance measures play another role at the strategic level. They provide management with objectives for guiding long and medium term actions [1]. Control requires monitoring of performance but it also needs targets based on the real capabilities of the manufacturing system and with regard to which the performance measures are evaluated. In fact, the characteristics or the capabilities of a manufacturing system can be a!ected by many changes in system design or demands pattern, and by speci"c realizations of random factors (machine

0925-5273/01/$ - see front matter  2001 Elsevier Science B.V. All rights reserved. PII: S 0 9 2 5 - 5 2 7 3 ( 0 1 ) 0 0 1 0 5 - 0

34

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

breakdowns). One must have at his disposal a decision support system (DSS) which enables the necessary rapid process analysis to devise corrective actions or to revise the suggested set of hierarchical control solutions whenever a deviation from targets occurs. The problems arising in production scheduling are as diverse as the techniques and tools proposed for solving them. These problems are di$cult in the technical sense. The optimal allocation of resources to activities over time is known to be combinatorially complex [2]. Exact methods are prohibitive to use because of their unrealistic computing requirements. This is particularly true for enumerative methods, which are often applicable where analytic procedure cannot be found. Actual production scheduling problems involve a large number of tasks and resources subject to a diverse set of resource utilization constraints and objectives [3]. It is then not surprising that mathematical programming solutions or even formulations are rather cumbersome. The manufacturing environment uncertainty contributes to the di$culty of the production scheduling problems. Some of them can be coped with in practice through simple approximate methods or rules. To tackle these complex problems e$ciently, one seeks to break down the combinatorial complexity inherent to the nature of

production scheduling in developing some approached methods based on some empirical rules or some intuitive trials.

2. Hybrid 6owshop &Hybrid yowshop' is a skillful combination of the &serial' shop organization and the ¶llel' shop organization, see Fig. 1. In the former, the product #ows sequentially from one stage or workshop to the next, while the ¶llel' shop organization consists of several facilities that are present at each stage to perform the associate manufacturing phase (to be quali"ed as hybrid #ow shop, at least one stage in such organization must have several facilities). Following more or less standard notation in the scheduling literature, the problem of concern to us may be speci"ed as n/=, g , m , F// criteria unU E der consideration, where n is the cardinality of the set of products (jobs) I"i  i"1, 2,2, n to be scheduled without preemption on = workshops. Each workshop consists of g centers of m identiU E cal machines. A job is composed of = &operations' or &tasks', one for each workshop. The machines are di!erent from one center to another within the same workshop. The #ow of products is unidirectional from workshop 1 to workshop =, which explains the &F' in the above designation. The

Fig. 1. A structure of a hybrid #owshop organization.

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

product route may be characterized as multi-stage, single operation per stage. In the most general formulation of hybrid #owshop scheduling problems, we assume that the jobs are independent and immediately available. We disallow the preemption and we consider that the processing times of each job i are known with certainty, "xed and independent of the order in which jobs are processed. Jobs are allowed to wait between two workshops (in the opposite case, we speak about no-wait environment), and the intermediate bu!er capacity is unlimited. Many restrictions to the previous assumptions can be encountered in process industries. Industrial case studies have enabled us to identify several constraints that can be found in [4].

3. Functional architecture of the decision support system We propose in this paper the architecture of an unifying DSS which integrates the di!erent levels of the order ful"llment process. Starting from the requirements of the various products for a "niteplanning horizon, the DSS generates the detailed loads and schedules for the plant. To ensure good response times, most scheduling heuristics cited in the literature are based upon strong assumptions and thus many elements of the manufacturing system are ignored. For instance, these scheduling algorithms do not consider secondary resources, limited intermediate storage or sequence dependent setup times. So, it is necessary to validate the proposed schedule. Simulation is a convenient tool for this purpose [5]. It can provide information about the work-in-progress and the utilization of resources. Moreover, it gives the user the possibility of testing other scenarios and analyzing and comparing them via the simulation model. The DSS (Fig. 2) is composed of the following elements: E A database containing information about the hybrid #owshop under consideration as well as the results of scheduling and simulation. E A knowledge base containing expert rules speci"c to the manufacturing system under consideration.

35

Fig. 2. The DSS structure.

E A planning and scheduling module. E A simulation model for general hybrid shops (generic model). E A set of interfaces for data acquisition and interactive utilization of the DSS. In the following sections we shall describe each of the subsets of the DSS. 3.1. The scheduling system: an integrated model We consider a hybrid #owshop organization where products are to be produced over a discretized horizon of ¹ time period. The demands of each product are known and the goal is to compute: E a production plan over the entire horizon, E the number of batches for each product and time periods, E a schedule of the di!erent operations to be performed in the shop at a given period. Integrated productions planning and scheduling systems have been largely dealt in the literature and two di!erent approaches are generally proposed: a monolithic approach and a hierarchical approach [6,7]. The monolithic approach is based on mathematical models that deal with all decisions, at di!erent

36

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

Fig. 3. A closed-loop integrated production planning and scheduling system.

levels, simultaneously. These models tend to be very large and di$cult, if not impossible, to solve with reasonable e!ort. The hierarchical approach considers the production decision system as a hierarchical model dealing with di!erent levels with di!erent scopes and objectives. Di!erent aggregate models were proposed in the literature [8]; but most of them su!er from incompatibility of decisions at di!erent levels. To overcome this kind of di$culties one can propose an iterative link between the planning module and the scheduling module. A #ow diagram of how a typical iterative process may function is given in Fig. 3. The feedback loop from scheduling to capacity requirement planning can be done in two di!erent ways. For a given scheduling time horizon, called a period, one may loop between these two functions until a feasible schedule is obtained. We have ad-

opted this approach for designing an integrated production planning and scheduling system in chemical industry. The reader can "nd more details about the implementation of this approach in [9]. A second issue to realize the feedback is simpler in the sense that only the information about what was not possible to manufacture for the current period is transmitted to the higher level (planning). It must be taken into account to update the production planning for the following periods. The approach we adopted in this paper is ÷ and conquer' [10] in the sense that it consists of decomposing the problem into a loading problem, a batching problem and a scheduling problem. 3.1.1. The loading problem We look forward planning the production of n products in a hybrid #owshop organization of = workshops. The planning horizon H is

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

discretized in I periods. At a period t, each center g of workshop w has a capacity of Capa(w, g, t) time units: E D(i, t): the demand of product i period t; E tps(i, w, g): the processing time of product i, in center g of workshop w; E Cp(i, w, g): the production cost of product i, processed in center g of workshop w; E Ini(i): the initial stock level of product i; E Cs(i): the external production cost of product i; E Ch(i): the inventory holding cost of product i; E Phi(i, w, g, t): the quantity of product i produced in center g of workshop w at period t; E QI(i, t): the quantity of product i produced internally at period t E QE(i, t): the quantity of product i acquired externally at period t; E Inv(i, t): the stock level of product i by the end of period t. The problem can be stated as follows: minZ" Cp(i, w, g)Phi(i, w, g, t) R U E G # [Ch(i)Inv(i, t)#Cs(i)QE(i, t)], (1) R G QI(i, t)" Phi(i, =, g, t) ∀i, ∀t, (2) E QI(i, t)#Inv(i, t!1)!Inv(i, t)#QE(i, t)"D(i, t) ∀i, ∀t;

(3)

Inv(i, 0)"Ini(i) ∀i,

(4)

Phi(i, w, g, t)) Phi(i, w!1, g, t) E E ∀i, ∀w'1, ∀t,

(5)

tps(i, w, g)Phi(i, w, g, t))capa(w, g, t) G ∀g, ∀w, ∀t.

(6)

The objective function (1) aims at minimizing the sum of internal production, external procurement, and inventory carrying costs. Constraints (2) set its internal production quantity for each product.

37

Constraints (3) are the usual #ow conservation constraints to satisfy the demand for each product in each period. Constraints (4) initialize the inventory level of each product at the beginning of the horizon. Constraints (5) limit the total production of a product in a given workshop w to not exceed the total production in workshop w!1. Constraints (6) are capacity constraints for each center of each workshop and for each period. 3.1.2. The batching problem We assume that every product has a prede"ned and "xed lot size (due to economic or technological constraints). How to determine this lot size (LS) is the concern of the user. We suppose that it is an external parameter to be introduced. Under these assumptions, the loading module gives quantities to manufacturer for each product and for each period. These quantities (which are real values since the loading problem is solved as continuous linear program) are not a multiple of the pre-"xed lot sizes. The batching module aims at arranging the quantities of products to manufacturer to be multiple of their related batch sizes. The objective here is not to re-calculate the optimal lot sizes, rather the module tries to generate production orders with respect to the prede"ned batch sizes so that no capacity overload occurs. 3.1.3. The scheduling module Heuristic procedures for scheduling problems have been widely studied in literature [11]. Most of these heuristics rely on speci"c knowledge of the problem for which they were designed. Due to the development of probabilistic local search techniques in the last decade, a resurgence of interest in this class of methods has occurred. The scheduling procedure of the proposed DSS is based on a simulated annealing approach. This is a neighborhood search algorithm, which starts from an initial full sequence and tries to improve the solution, with regard to the considered criterion, by moving to a neighboring solution. A neighboring solution is obtained by interchanging a pair of randomly chosen jobs in the current solution. The move can be made to a neighbor even if it worsens the criterion. This is made in a controllable way [12]. The scheduling procedure we implemented in

38

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

the DSS works in two sequential steps. First, it reduces the hybrid #owshop to a regular one by considering one "ctitious machine per workshop and then applies a simulated annealing based heuristic to get a sequence at the entry workshop [4]. Second, workshop by workshop, the procedure assigns jobs to the di!erent machines according to a list algorithm, which chooses for each unassigned job the "rst machine able to "nish processing it earlier.

Fig. 4. A schema of the process simulated.

3.2. The simulation model For many complex stochastic systems, deterministic numerical methods of analysis have extremely limited utility. By making it feasible to analyze the performance of such systems, simulation has become one of the most widely applied tool of operations research [13]. Because experimenting on a real system is often costly and/or impractical, simulation is a cost-e!ective way for pre-testing proposed systems, plants, or policies before incurring the expense of prototypes, "eld tests, or actual implementations. However, simulation may require excessive design time. In fact, in our problem, each industrial case may lead the analyst to design a new simulation model suitable for the problem under study; this approach is costly in terms of modeling time and the models built are rarely reusable for another manufacturing system study [14]. To overcome these disadvantages, we propose hereafter a model for a generic hybrid #owshop. The design of this model is built upon the basic and complementary characteristics of the hybrid environment deeply discussed in [4]. The generic simulation model of hybrid #owshops serves two objectives: (1) to evaluate the schedule obtained by the scheduling module, taking into account the additional constraints neglected while scheduling, or (2) to construct a schedule taking into account all constraints, assignment rules and objectives of the scheduler. In many attempts for developing generic models, manufacturing systems are represented by a juxtaposition and a collection of pre-de"ned objects, or sub-models. A great di$culty consists then in how to represent the common dynamic interactions, to facilitate the integration of a set of specialized ob-

jects, and how to implement knowledge sources in order to support more advanced decision rules. The generic model we propose admits a #exible view capable of capturing hybrid #owshop manufacturing data, materials, process and decisions, providing a highly structured view of the system, from either a data, a process or a decision-making perspective. The model is supported by the RAO simulator (resource}actions}operations) which is based on RAO method for presenting knowledge about complex discrete systems and processes [15]. The system's resources set is the data base (DB) for that production system while the system's knowledge base (KB) consists of the set of operations (actions) ful"lled by the resources and described by the modi"ed production rules (If (conditions) Then (action 1) Wait (time interval) Then (action 2)). The generic hybrid #owshop model is described using the resources}actions}operations approach which requires the de"nition of the following objects: jobs, machine tools, stocks and transport facilities as depicted in Fig. 4. Machine tools are described by the following parameters: the production workshop number, the machine tool number, the machine state (for example, free, busy, setup, cleaning, etc.), the number of the last job processed, the number of the current job allocated to the machine tool and a counter of jobs processed. A job is characterized by the following parameters: job number, number of operations already completed for this job, job state (for example, waiting, allocated to the machine tool for the following operation, being transported or processed, etc.), arrival time, starting time for the current operation on the job, ending time of

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

the last operation, due date, number of zones the job occupies in the stocks, machine tool number the job is currently allocated to, etc. The model simulates, among others, the following operations: allocation of one of the machine tools available at the next production workshop to the job (either in accordance with schedule obtained by the scheduling heuristic or making the decision while simulating), setup, transporting, processing, cleaning (removal). The job enters the hybrid #owshop and waits in a stock to be allocated for the "rst workshop. Once the job is allocated, two actions are started: setup and transportation. Setup time is calculated in accordance with a setup matrix, depending in general case on the current job i, the precedent job j and the considered machine of the current workshop. Transportation can only start if there is a free transport vehicle in the correspondent group of transport facilities. A matrix in the model gives the number of the group of transport facilities for each job, each process workshop and each machine tool. Transportation time (or in general time lag such as cooling, or drying) is also summarized in a matrix used in the simulation model. When these two actions are completed, i.e. the machine tool is ready to process the given job and this job is delivered to the machine tool, the action of processing is started. Another matrix used in the

39

model gives the processing time depending on the production workshop, the machine tool and the job. After processing, the job is transported into the intermediary storage where it should wait for allocation for the next production workshop. Again, the transportation time and the group of transport facilities depend on the job, the machine tool and the production workshop. As for the machine tool, cleaning action is accomplished before it can be allocated for next job. The process is described in RAO simulator by means of modi"ed production rules that can be stated as follows: IF (condition) THEN1 (event1) WAIT (timeinterval) THEN2 (event2). Let us consider the example of the description of the setup action, presented in Fig. 5. To describe an action it is necessary to describe what are the preconditions (conditions allowing the action to be started), how the state of the resources involved into the action is changed at the beginning and at the end of the action and what is the duration of the action. In our example we can start the setup when a job is allocated to the machine tool (parameter Job}number indicates this fact; it contains zero if there is no job allocated and the number of the allocated job otherwise) and the machine

Fig. 5. Setup action representation in the RAO simulator.

40

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

tool is free. If so, the action is started. It shifts the machine tool's state to &setup', calculates the setup period and schedules the event of setup ending. When the event happens, the simulator shifts the machine tool's state to 'ready'. All the other actions have been described in the same way, just re#ecting the logic of the system operation. As it can be seen, this representation is useful for any constraints or actions modi"cation. Using modi"ed production rules discussed above, RAO simulator reproduces the process and the logic of functioning of the hybrid #owshop and computes several performance measures (there are no restrictions) to evaluate the schedule quality. In fact, RAO simulator generates a trace "le containing detailed information about the process simulated. This "le is further processed by the DSS, which allows the Gantt chart representation of the schedule. The model is adaptable to any particular industrial case if one can easily describe all the resources of the real system (machine tools, transport facilities and stocks), the set of jobs with their characteristics and all the matrix determining times of setup, processing, etc. An example of such adaptation can be found in our attempt to solve a carpet-scheduling problem [4]. All this information is stored in the data base, so the necessary work can be automatically done by the interface that generates the necessary input "les for the model. 3.3. The interface module The interface module o!ers the user the possibility of describing its shop con"guration. It allows the deep description of the overall assumptions and restrictions that de"ne the considered scheduling problem according to the general de"nition of the hybrid #owshop organization given above. The shop con"guration consists in specifying the number of workshops to be considered, the number of machines in each workshop, the nature of these workstations, the distribution of the processing times (matrix P) and the di!erent setup times (matrix S). One can also specify if the production #ow is unidirectional for the whole tasks or even if every task has its own routing.

Once the shop speci"cations are described, the scheduler can obtain an initial schedule generated by the scheduling heuristic. The DSS gives the user the control over some scheduling parameters, and simulation speci"cations. The depicted interface allows the scheduler to pronounce his/her preferences regarding the multiple performance measures. On the other hand, the interface facilitates the description of more speci"ed constraints that should be taken into account when generating the simulation model. If the scheduler is unhappy with some aspects of the resulting schedule, she/he can interactively make piecemeal changes to try to achieve desired e!ects on the performance measures. The schedule is presented as a Gantt chart, together with bar charts to display relevant performance measures. Each horizontal bar corresponds to a machine. The horizontal dimension represents time, and the individual blocks (identi"ed by job or order number and color) indicate the job that is scheduled on a machine at a particular time. Such a display will help the scheduler to analyze the suggested schedule and to detect problems which may be speci"c in nature such as a new important customer order, a delivery delay, a temporary machine breakdown, etc. In these cases, a well-designed interactive feature would allow the scheduler to move some orders earlier or later in time, estimate and evaluate the impact of such decisions. The scheduler can then judge whether the consequences of these changes are more or less acceptable. If she/he accepts the new situation, the DSS reschedules the orders to accommodate these changes and calculates new performance measures.

4. Implementation of the DSS It is evident that there is great diversity in the type of hybrid #owshop scheduling problems. This section will show that fortunately the DSS approach can be applied with minor modi"cations to industrial problems. We shall clarify the di!erent phases in applying the DSS architecture to develop a scheduling system for a speci"c problem. The problem we shall talk about is inspired from a real case study largely discussed in [4]. After the speci"cation of production system characteristics,

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

41

Fig. 6. Description of the production process.

Table 1 Aggregate demands D(i, t)

Table 2 Holding cost, external acquisition cost and initials stock level

Product i

Product i

Ch(i)

Cs(i)

Ini(i)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

67 65 68 70 66 64 79 66 102 67 105 96 72 74 84

192 185 195 199 187 182 224 189 290 191 298 274 205 212 238

80 120 80 150 120 80 100 110 140 250 100 110 12 80 200

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Period t 1

2

3

4

5

800 245 270 285 280 270 250 235 220 265 300 270 345 420 220

225 170 190 300 465 250 180 200 190 330 300 385 145 300 155

360 270 300 320 265 245 200 195 180 310 300 300 175 165 155

262 300 260 300 140 135 155 176 150 415 220 150 200 250 130

320 240 270 280 270 270 250 245 220 190 145 160 170 165 160

we precise the objectives of the study and describe the functioning of the (DSS). 4.1. The description of the studied problem We consider the four-workshop hybrid #owshop of Fig. 6. Each workshop consists of 4 di!erent centers of machines. We look forward to plan the production of 15 jobs over 5 periods. The previous tables summarize the necessary data to be used. Table 1 represents the aggregate demands of the 15 jobs to satisfy. Table 2 indicates for each product, its holding cost, its external production cost and its initial stock level. Table 3 gives

the processing times for each product over the di!erent centers of the di!erent workshops while the relevant production costs are given in Table 4. The production capacity of each center of each workshop is assumed to be equal to 8640 minutes. 4.2. The objectives of the study Our main objective is to "nd a good schedule which generates a lower inventory level, a high plant e$ciency and in which machines capacities are respected. The inventory level concerns in-process-stock and "nished goods inventory. The e$ciency of the plant means high machine utilization. To meet these objectives a DSS is developed. This

42

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

Table 3 Processing times tps(i, w, g) Product i w1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

w2

w3

w4

g1

g2

g3

g4

g1

g2

g3

g4

g1

g2

g3

g4

g1

g2

g3

g4

16 20 7 12 15 10 18 18 3 10 7 19 19 1 19

11 18 12 10 17 6 18 17 13 9 15 14 4 16 13

9 15 8 16 7 6 2 4 20 3 11 3 8 17 15

17 11 6 5 16 6 4 17 16 7 16 16 4 5 15

3 17 7 11 2 10 13 15 14 20 3 6 5 4 17

12 19 20 12 15 10 10 5 17 5 2 8 11 6 5

9 10 20 10 9 16 16 11 19 13 4 13 5 5 11

3 12 18 2 16 16 7 20 12 16 17 2 2 7 9

15 3 17 12 11 13 18 12 19 3 14 2 2 5 15

17 14 1 16 8 12 15 8 8 16 14 13 7 6 16

2 5 12 13 3 13 18 9 16 10 17 19 20 15 20

4 15 7 7 10 11 7 9 19 15 2 12 5 6 17

10 9 6 17 12 20 16 14 7 12 3 19 14 2 11

13 5 8 6 3 5 5 20 9 20 10 6 9 6 3

1 2 19 2 4 3 9 8 17 7 16 16 15 2 19

3 15 6 12 19 16 11 10 2 12 6 5 5 9 10

Table 4 Production costs (i, w, g) Product i Workshops w1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 105

w2

w3

w4

g1

g2

g3

g4

g1

g2

g3

g4

g1

g2

g3

g4

g1

g2

g3

g4

21 26 19 15 19 13 23 23 14 13 19 24 24 11 24

16 19 16 10 16 10 19 16 17 15 18 17 12 18 17

22 36 19 39 17 15 15 10 49 17 27 17 19 14 26

13 18 14 42 12 12 13 13 42 15 20 12 13 18 20

19 13 23 23 24 11 24 21 26 19 15 14 13 19 24

16 10 19 16 12 18 17 16 19 16 10 17 15 18 17

17 15 15 10 19 14 26 22 36 19 39 49 17 27 17

12 12 13 13 13 18 20 13 18 14 42 42 15 20 12

23 23 19 13 13 19 24 11 24 21 14 24 26 19 15

19 16 16 10 15 18 12 18 17 16 17 17 19 16 10

15 10 17 15 17 27 19 14 26 22 49 17 36 19 39

13 13 12 12 15 20 13 18 20 13 42 12 18 14 42

19 13 23 23 24 11 24 21 26 19 15 14 13 19 24

16 10 19 16 12 18 17 16 19 16 10 17 15 18 17

17 15 15 10 19 14 26 22 36 19 39 49 17 27 17

12 12 13 13 13 18 20 13 18 14 42 42 15 20 12

DSS takes as inputs the forecasting demands of the various products for a "nite-planning horizon, and generates the detailed loads and schedules for the plant. Moreover, it gives the user the possibility of

testing other scenarios and analyzing and comparing them via its simulation model. Fig. 7 describes the logic of functioning of the DSS for the considered case study.

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

43

Fig. 7. The operational architecture of the DSS.

4.3. Production planning The results of the linear programming model described in Section 4 and applied to this case study are given in Table 5. QI stands for internal production quantity while QE denotes external acquisition. 4.3.1. Step 1: Batching At this stage we re-compute the internal production quantities for products per period to be multiples of the lot sizes. In our example we assumed that the lot sizes (LS) for all of the products are equal to 100. The algorithm applied here is quite simple. For each product i and each period t the new internal production quantity QI(i, t) is set, according to formula (7), equal to the continuous

quantity given by linear program QI(i, t) adjusted by the overproduction occurring in the previous period (i, t!1), rounded up or down to the multiple of batches:



QI(i, t)"round (i, o)"Ini(i).



Max(QI(i, t)!(i, t!1), 0) LS, LS (7)

Table 6 summarizes the results of applying such an algorithm. These production quantities have to be re-assigned over the working centers within each workshop. The linear program gives the initial assignment Phi(i, g, w, t) of the quantity of product

44

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

Table 5 The linear program results QI(i,t) Period t Product i 1

2

3

4

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

270.07 13.95 648.00 515.21 0.00 432.00 0.00 243.53 256.94 0.00 300.00 0.00 0.00 193.65 89.55

504.53 270.00 282.25 104.79 243.59 0.00 200.00 264.65 135.32 130.19 0.00 383.04 0.00 0.00 238.28

0.00 300.00 803.75 125.10 410.00 68.30 155.00 64.29 127.74 0.00 0.00 66.96 0.00 309.01 438.37

116.18 281.05 362.36 0.00 232.85 16.00 330.00 107.77 80.00 524.81 0.00 160.00 0.00 611.35 85.45

5

QE(i,t) Period t Product i 1

2

3

4

5

320.00 521.43 232.00 200.00 0.00 0.00 250.00 243.53 338.95 157.54 0.00 160.00 0.00 105.99 322.90

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0.00 0.00 0.00 0.00 392.15 0.00 0.00 0.00 0.00 0.00 0.00 385.00 145.00 0.00 0.00

0.00 0.00 0.00 0.00 21.41 63.00 0.00 0.00 0.00 0.00 300.00 0.00 175.00 0.00 0.00

72.40 0.00 0.00 174.90 0.00 66.70 0.00 0.00 0.00 415.00 220.00 0.00 200.00 0.00 0.00

0.00 0.00 0.00 80.00 0.00 270.00 0.00 0.00 0.00 32.46 145.00 0.00 170.00 0.00 0.00

123.82 0.00 0.00 135.00 0.00 174.00 0.00 17.23 0.00 0.00 200.00 0.00 333.00 0.00 0.00

Table 6 The batching results Prod- Period t uct i 1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

2

3

4

5

QI(i,t)

QI(i,t) (i,t)

QI(i,t)

QI(i,t) (i,t)

QI(i,t)

QI(i,t) (i,t)

QI(i,t)

QI(i,t) (i,t)

QI(i,t)

QI(i,t) (i,t)

116.18 281.05 362.36 0.00 232.85 16.00 330.00 107.77 80.00 524.81 0.00 160.00 0.00 611.35 85.45

200 300 400 0 300 100 400 200 100 600 0 200 0 700 100

270.07 13.95 648.00 515.21 0.00 432.00 0.00 243.53 256.94 0.00 300.00 0.00 0.00 193.65 89.55

200 0 700 600 0 400 0 200 300 0 300 0 0 200 100

504.53 270.00 282.25 104.79 243.59 0.00 200.00 264.65 135.32 130.19 0.00 383.04 0.00 0.00 238.28

500 300 200 100 200 0 200 300 100 100 0 400 0 0 300

0.00 300.00 803.75 125.10 410.00 68.30 155.00 64.29 127.74 0.00 0.00 66.96 0.00 309.01 438.37

0 300 800 100 400 100 100 0 200 0 0 100 0 300 400

320.00 521.43 232.00 200.00 0.00 0.00 250.00 243.53 338.95 157.54 0.00 160.00 0.00 105.99 322.90

400 500 300 200 0 0 300 300 300 200 0 100 0 100 300

83.82 18.95 37.64 0 67.15 84.0 70.0 92.23 20.0 75.19 0 40.0 0 88.65 14.55

13.75 5.0 89.64 84.79 67.15 52.0 70.0 48.7 63.06 75.19 0 40.0 0 95.0 25.0

i to produce on center g of workshop w at period t according to the initial internal production quantities QI(i, t). Table 7 represents the assignment results of the linear program for the "ve "rst periods

9.22 35.0 7.39 80.0 23.56 52.0 70.0 84.05 27.74 45.0 0 56.96 0 95.0 86.72

9.22 35.0 3.64 54.9 13.56 83.7 15.0 19.76 100.0 45.0 0 90.0 0 85.99 48.35

89.22 13.57 71.64 54.9 13.56 83.7 65.0 76.23 61.05 87.46 0 30.0 0 80.0 25.45

and for the "rst product. Here again, one has to adjust these Phi(i, c, w, t) to be multiples of batches, respecting the total recomputed quantities QI(i, t) for each product and each period.

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

45

Table 7 The assignment results of the linear program Period t QI(1,t)

Phi(1,g,w,t) w1 g1

1 2 3 4 5

116.18 0.00 270.07 0.00 504.53 43.36 0 0.00 320.0 320.00

w2 g2

g3

g4

8.95 0.00 0.00 0.00 0.00

0.00 107.2 0.00 270.0 0.00 461.1 0.00 0.00 0.00 0.00

w3

w4

g1

g2

g3

g4

g1

g2

0.00 0.00 0.00 0.00 0.00

0.00 0.00 0.00 0.00 0.00

0.00 0.00 0.00 0.00 0.00

116.1 270.0 504.5 0.00 320.0

0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 320.0

g3

g4

g1

g2

g3

116.1 0.00 0.00 0.00 0.00

0.00 270.0 504.5 0.00 0.00

0.00 0.00 0.00 0.00 0.00

0.00 116.1 0.00 0.00 0.00 504.5 0.00 0.00 0.00 320.0

g4 0.00 270.0 0.00 0.00 0.00

Table 8 The loads of the working centers Period w1

1 2 3 4 5

w2

w3

w4

g1

g2

g3

g4

g1

g2

g3

g4

g1

g2

g3

8300 8200 6200 8400 7200

8300 7900 8500 8600 8800

9200 9400 9300 6800 9100

15400 8500 10800 10200 12000

7900 8900 7500 9300 9100

8700 8000 7800 7700 7500

8600 8000 8400 8200 8800

19000 10100 9800 9600 11400

9600 9300 7300 7300 7500

9600 8400 8200 800 8300

10000 12400 8600 9800 7700 8000 8900 9000 8000 8500 9300 9600 7300 10800 10100

The adjustment algorithm is also simple. First and for the "rst center of each workshop, it rounds up or down the production quantity to the nearest multiple of the lot size. The same is then done for the other centers of the same workshop. If the production quantity of a product i cumulated till the current center is greater than the quantity needed to be produced for this period, then the algorithm assigns exactly the di!erence to the considered center. In the opposite situation, when the total quantity of a given product over centers of the same workshop is less than the needed quantity to be produced for the current period, the algorithm allocates all the di!erence to the last center in the current workshop. At the end of this batching step, we compute the production costs, storage costs (work in process costs) and the loads of centers. For our example, the production cost is equal to 1,149,500 units, the storage cost is 257,357 units and the time unit loads of centers are given in Table 8.

g4

g1

g2

g3

g4

7200 8200 9400 8200 8200

9100 9500 6000 7600 6700

16900 9000 9300 8700 10000

Obviously, as the applied algorithm does not take into account the working center capacities, overloads occur for many centers. Thus the obtained solution is unfeasible (keep in mind that the capacities are equal to 8640 for each center and for each period). 4.3.2. Step 2: Looking for feasible planning The state-graph search is used at this step to "nd a feasible solution. The initial state of the search is the quantities per product, per period and per working center, obtained at the "rst step. The goal state is the one in which the capacity constraints are respected for all centers and all periods. Knowledge rules are used to guide state transitions. These rules are stored in the knowledge base of the DSS. The followings are an illustration of such production rules: E balance the centers' load inside the same workshop by moving for a product one batch from one center to another;

46

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

product quantities and working center loads are given in Tables 9 and 10. To get this solution, the algorithm explores 17,530 nodes in about 2.5 minutes (PentiumII-400), evaluating for these three rules all possible combinations of products, periods and centers.

Table 9 The new production plan QI(i, t) Product i

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Period t 1

2

3

4

5

200 0 300 0 300 0 400 200 100 500 0 200 0 700 100

200 0 700 700 0 400 0 100 300 0 300 0 0 200 100

500 300 200 100 300 0 200 300 100 100 0 400 0 0 300

0 200 800 0 100 100 100 0 200 0 0 100 0 300 400

400 300 300 200 0 0 300 300 300 200 0 100 0 100 300

E produce in advance by moving one lot of a product from one period to previous ones; E subcontract batch of products (external acquisition). Applying such rules result in a new solution with a new production cost, inventory cost and external acquisition cost. The state graph search block, which is implemented in RAO simulator, allows the computing of the "nal solution [15]. This solution, which respects the capacity constraints, results in a decrease of 11.2% for production cost, an increase of 7.4% for storage cost and an increase of 9.2% of external acquisition cost. The resulting

4.3.3. Step 3: Scheduling To simplify the illustration, we shall focalize on the "rst period. On the basis of the results of the batching, we can generate the jobs to be produced for the "rst period. As we have assumed that a lot of size 100 is to be considered for all products, the number of jobs for each product can be obtained by a simple division of corresponding quantity for the "rst period by 100. This leads to 30 jobs (two for the "rst product, zero for the second, three for the third, etc.). These 30 jobs and their corresponding processing times are the needed input data for running the scheduling module. As the scheduling heuristic take into account the constraint of setup times, we assume that jobs require a sequence independent setup times of 200, 250, 180 and 250 minutes on respectively workshops 1, 2, 3 and 4. Recall that the algorithm behind this model is based on simulated annealing approach and, for this application, aims at minimizing the maximum completion time subject to the constraint of the pre-calculated production cost. The resulting makespan is 9460 minutes. Let us now discuss the importance of the use of simulation and its contribution. Simulation is used to validate the proposed schedule since it takes into account more of the shop #oor speci"cations that were not considered in the scheduling algorithm. We would like to take into account the limited

Table 10 The resulting loads of centers Period w1

1 2 3 4 5

w2

w3

w4

g1

g2

g3

g4

g1

g2

g3

g4

g1

g2

g3

g4

g1

g2

g3

g4

8000 8500 8400 3900 8400

8300 7200 8500 6800 8400

7800 7400 8400 6100 6900

8200 8500 8500 8000 8300

7100 7400 7700 8000 8600

5500 8200 8300 8500 8500

8600 8000 8400 8200 8300

7200 8600 7800 7600 7800

8300 8100 8500 5800 8400

8600 8400 8200 2400 8400

8500 8300 8100 8500 8400

8600 8200 8600 4600 7100

8600 8300 8000 5500 8400

7800 6500 8600 8500 8200

7000 7800 8500 7600 6900

8500 8400 7800 3400 7000

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

47

Table 11 The results of the simulation run

Table 12 The simulation run results after a "rst iteration

Shop number

Working Setup time Processing Makespan center number (%) time (%) (min)

Shop Working Setup time number center number (%)

Processing time (%)

Makespan (min)

1

1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

1

37.0 37.0 37.0 41.4 48.2 47.0 53.8 50.4 51.5 34.7 20.2 44.8 26.9 35.8 38.1 31.4

5310 3920 4920 4960 7520 6900 7270 7400 8240 8210 7960 7760 8920 7930 8870 8250

2

3

4

16.4 8.2 18.5 18.5 18.0 23.1 15.4 20.5 18.5 12.9 11.1 12.9 18.0 23.1 20.5 15.4

50.3 51.3 35.9 48.3 44.1 54.4 51.3 48.3 47.2 31.8 23.6 50.3 32.9 39.0 43.1 29.8

6570 5800 5330 6590 7790 8460 7710 7400 8400 8610 8550 9260 9560 9000 9730 9110

stock capacities and transport times. In our example we used transport time equal to 10 minutes, i.e. it takes 10 minutes to move a job either from a working center to a stock or from a stock to a working center. Stock capacities are 10 jobs for each intermediate bu!er storage excepting the "rst stock whose capacity is 30. The simulation run, whose results are summarized in Table 11, shows that the real makespan is 9730 minutes while the jobs' mean #owtime is 6855 minutes. The average work-in-process is 21.1 jobs. The transport facility utilization is 24.6%. As we can see from Table 11, due to real-life constraints (sequence constraints, limited stock capacities, setup and transport times) some of the working centers are overloaded and hence could not "nish their work within the de"ned time period, i.e. within 8640 minutes. Thus, the obtained schedule is infeasible. To solve the problem, we recalculate the capacity of the overloaded centers on the basis of the following idea. Let us take, for example, the "rst working center of the fourth workshop. Its time to complete processing the last job is 9560 minutes, while the allowed time period is 8640 minutes. We reduce this center's capacity proportionally so as to "t inside 8640 minutes. The resulting capacity is 8640"  7809 minutes.

2

3

4

1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

22.4 6.7 17.9 13.4 16.8 19.6 14.0 25.2 20.2 14.1 8.1 12.1 19.6 19.6 19.6 16.8

4.3.4. Iteration Having done the same for all other centers whose time of the completion of the last job exceeds the capacity (see the right column of Table 11), we repeat the procedure from the batching step. The algorithm may decide to subcontract and thus reduce the load of the working centers and. The new solution results in an increase of 2.25% for the total cost. The simulation results are given in Table 12. The bold characters refer to the values exceeding the capacities of the corresponding centers. As we can see, a capacity overload occurs for only two centers. The resulting makespan is also reduced from 9730 minutes in the previous iteration to 8930 minutes. Continuing iterations in this way, we end up with a feasible schedule that takes into account the reallife constraints, such as setup times, transport times, limited stock capacities and others.

5. Conclusion The diversity and the complexity of production scheduling problems lead us to develop a decision support system for a speci"c class of shop organization: the hybrid #owshop. We have described the

48

F. Riane et al. / Int. J. Production Economics 74 (2001) 33}48

basic architecture of the scheduling DSS. A generic simulation model was presented and some features of its development environment were highlighted. The DSS is endowed with a graphical user interface to continually provide the decision-maker with the most up to date information. Given the multiple speci"cation nature of the problem of concern, one expects to be able to draw on work in the "eld of validating such as DSS in di!erent industrial cases. We shall continue working on resolving more industrial problems than the one described in the beginning of this paper in order to enrich our DSS. References [1] R. Roy, S.E. Meikle, The role of discrete event simulation techniques in "nite capacity scheduling, Journal of the Operational Research Society 46 (1995) 1310}1321. [2] M.R. Garey, D.S. Johnson, R. Sethi, The complexity of #owshop and jobshop scheduling, Mathematics of Operations Research 1 (1976) 117}129. [3] S.F. Smith, Knowledge-based production management: Approaches, results and prospects, Production Planning & Control 3 (4) (1992) 350}380. [4] F. Riane, Scheduling hybrid #owshops: Algorithms and applications, Ph.D. Dissertation, CREGI-FUCaM, Belgium, 1998. [5] C. Raczy, A. Artiba, Simulation based smart scheduler for manufacturing systems, ICONIP'97 Proceedings, Dunedin, New Zealand, 1997, pp. 1025}1029.

[6] G.R. Bitran, D. Tirupati, Hierarchical production planning, in: C. Graves, A.H.G. Rinnooy Kan, P.H. Zipkin (Eds.), Logistics of Production and Inventory, Elsevier Science Publishers, Amsterdam, 1993. [7] G.R. Bitran, H. Matsuo, The multi item capacitated lot size problem error bounds on Manness formulation, Management Science 32 (3) (1986) 350}359. [8] E.H. Aghezzaf, A. Artiba, Aggregate planning in hybrid #owshops, International Journal of Production Research 39 (9) (1998) 2463}2477. [9] A. Artiba, F. Riane, An application of a planning and scheduling multi-model approach in the chemical industry, Computers in Industry 36 (1998) 209}229. [10] S.E. Elmaghraby, R.E. Karnoub, Production control in hybrid #owshops: An example from textile manufacturing, in: A. Artiba, S.E. Elmaghraby (Eds.), The Planning and Scheduling of Production Systems, Methodologies and Applications, Chapman & Hall, New York, 1997. [11] B.L. Maccarthy, J. Liu, Addressing the gap in scheduling research: A review of optimization and heuristic methods in production scheduling, International Journal of Production Research 31 (1) (1993) 59}79. [12] F. Riane, C. Raczy, A. Artiba, Hybrid auto-adaptable simulated annealing based heuristic, Journal of Computers & Industrial Engineering 31 (1}2) (1999) 277}280. [13] A.N. Avramidis, J.R. Wilson, Integrated variance reduction strategies for simulation, Operations Research 44 (2) (1996) 327}346. [14] P. Levecq, V. Botta, A. Guinet, A. Artiba, Object oriented design of generic simulation models in hybrid #owshop organizations, ICOQM'97 Proceedings, Jaipur, 1997. [15] A. Artiba, V. Emelyanov, S. Iaasinovski, Introduction to Intelligent Simulation: The RAO Language, Kluwer Academic Publishers, Dordrecht, 1998.

Suggest Documents