Cooperating Scheduling Systems - Semantic Scholar

1 downloads 0 Views 479KB Size Report
Work on the described framework was started with Roger M. Kerr [20]. ... 20 Dorn, J. and R. M. Kerr (1994) Cooperating Scheduling Systems Communicating.
Cooperating Scheduling Systems∗ Jürgen Dorn Technical University Vienna Paniglgasse 16, A-1040 Vienna, Austria E-mail: [email protected] Abstract An architecture and a procedure for communicating scheduling expert systems based on fuzzy set theory is proposed. Fuzzy sets are used to express and to exchange constraints and their potential relaxation with the cooperating scheduling system that can interpret these constraints. The procedure is intended to optimize the global evaluation among the communicating systems. An example from steel industry is taken to illustrate the approach. Here, a scheduling system of the steel making shop and that of the rolling mill try to optimize the global costs by optimizing their own schedules under the observation of the other systems constraints. Keywords: scheduling, cooperative production, fuzzy logic, tabu search, steel making Biography: Dr. J. Dorn has studied computer science and economics at Technische Universität Berlin. He has achieved his Ph. D. from Technische Universität Berlin in 1989 for a thesis on reactive robot planning. From 1989 to 1996 he was the head of a group at the Christian Doppler Laboratory for Expert Systems that has developed several scheduling expert systems. He is now professor for business computer science at the Technische Universität Wien. He is head of a IFIP SIG on Knowledge-based Reactive Scheduling.



Published in International Journal on Manufacturing Technology and Management, Vol 3, No 6, pp. 570-585, 2001

-1-

1. Introduction In most production management systems, the planning of required activities, machines and material is divided into layers due to complexity reasons. Scheduling of production processes is located between production planning and the actual shop floor control. The production planner considers tactical objectives of an enterprise, groups customer orders to jobs and assigns temporal slots to them under the criteria to utilize resources equally and to meet promised delivery dates. However, due to the global view of the enterprise, technical production constraints are often ignored. Consequently, the production planner assigns jobs only with a temporal window consisting of a release and a due date to give the scheduling system enough freedom to find a feasible schedule. The production process is usually divided into subunits and the production can be seen as a flow through several subunits. In early production management theory this separation was aimed at to optimize subproblems of the manufacturing process [1]. These separated production islands cause significant costs, since large intermediate stocks are created between them to make subunits independent. Modern production management theory aims at reducing these costs. For the scheduling process this separation is advantageous because it reduces complexity. Since more constraints are considered on the scheduling level, a finer granularity for the representation model is required. Furthermore, the scheduler must also react on unforeseen events like machine break-downs, etc. Rapid correction of schedules should be possible. Consequently, it seems reasonable to have autonomous schedulers for subunits. However, to coordinate production better, communication between scheduling systems should take place. The communication has to address two aspects: • The communicating partners may have different constraints and objectives in the production. If they have equal rights, a bi-directional communication is necessary. • Schedules may continuously be modified due to unforeseen events in the production. The communication should contain a filter mechanism to absorb minor modifications. In [2] we have developed a model for reactive scheduling that optimizes, besides other criteria, the robustness of schedules. The idea is to construct schedules that can tolerate as many unforeseen events as possible. In the case that a schedule must be repaired in spite of this robustness it receives a higher evaluation if only few changes are made to the schedule. Both features are achieved through the application of fuzzy sets. Constraints like due dates, allowed sequences of jobs and processing times of operations are modeled by fuzzy sets. The fuzzy sets enable a simple model of describing how -2-

constraints may be relaxed. Furthermore, the importance of jobs is also weighted resulting in a schedule engine that can introduce new important jobs dynamically. By an iterative improvement method based on local repair [3] we optimize the satisfaction of all constraints. If such repair-based scheduling systems that reason with fuzzy sets communicate, it is obvious that the communication itself should be based on fuzzy sets. Since we have scheduling systems with equal rights, the different constraints must be weighted and a trade-off between these constraints must be found. For example, two scheduling systems may negotiate about the finishing time of a job. If the first system wants an early delivery this may cause the violation of other constraints of the second system. Besides constraints on the absolute time also constraints on the temporal order can be expressed. To find a globally near optimal schedule for two units, one system first constructs a schedule under its own constraints. If it has found a satisfying schedule with an evaluation value e1, it gives the schedule with the associated constraints to the second system. Each constraint consists of an importance value and a fuzzy set describing the possible relaxation. For the second system the constraints of the first system are organizational constraints that should be observed but its own technical constraints will be more important. The second system will “repair” this schedule under its own constraints. It might find a new schedule that violates some of the constraints imposed by the first system. It computes an evaluation value e2 for this schedule. A further communication can now take place with the objective of maximizing the overall evaluation value e = e1 + e2. In the following we explain the necessity of communicating scheduling systems in the steel industry by an example from the VA Stahl AG at Linz. Here, the schedulers of the steel making shop and the rolling mill cooperate to minimize the intermediate stocks that, particularly in the steel industry cause very high costs. Although we restrict the example to these two plants we remark that of course more plants must negotiate in such an application and our proposed procedure can easily be extended. We first describe the application in some detail. Then we show on a simplified example how a schedule is constructed with the iterative improvement method. Afterwards we illustrate the communication between two scheduling systems and will finally conclude.

2. Description of the Application Steel production is a multi-stage process with different groups of processes involving different plants. Raw materials are first melted together in a blast furnace to produce pig iron. Liquid pig iron, tapped from the blast furnace, is transported to the steel making shop. Here, converters are used to refine the iron into steel of the desired composition -3-

by blowing oxygen into the hot metal to oxidize the impurities. Ladle refining further eliminates impurities and adds alloy ingredients to make steel of a certain grade. The molten steel is then transported to a continuous caster to form slabs. Ladles pour the molten steel into a reservoir called a “tundish” serving as a buffer between the ladle and the casting machine, and allowing uninterrupted casting from several ladles. Depending of the steel quality, slabs of steel can go directly from the caster to the hot strip mill. If they are not delivered immediately to the mill they can be stored in a slab stock, but must be reheated before rolling at a later time. Some steel qualities however, must cool down before rolling. Some of the rolled material goes then to the cold strip mill for cold reduction. Rolled strips of steel are finally transported to the finishing section where they may undergo a variety of operations such as pickling, tempering, galvanizing, heat treating, coating, etc. Fig. 1. describes the organization of the steel making shop and its interfaces to other shops in more detail. The blast furnace (BF) delivers the pig iron to one of the converters CV7 or CV9. There are two typical production routes through the plant. The steel from CV7 is poured into a ladle and delivered to the ladle furnace (LF) and later to the single-stranded continuous caster CC3. The other route is from CV9 to the conditioning stand (CS) and to the two-stranded caster CC4. On both routes also the vacuumdegassing unit (VAC) can be involved. About 90% of the cast slabs are delivered either hot to the hot rolling mill (HRM) or stored in the slab stock (SS). Slabs from the stock must be reheated in the pusher-type furnace (PF). The remaining jobs are produced for the forge and the foundry.

BF

CV7

SS LF VAC

CV9

CC3 CC4

CS

PF HRM

Figure 1: Organization of the LD3-Plant For the illustration of the proposed approach we reduce the complexity of the description by considering only the steel making shop and the rolling mill. In reality, the casters of the steel making shop produce also for the forge and the foundry which makes it more complex to find good schedules for all plants. Especially this complexity demands a distributed problem solving method as proposed in the following.

-4-

2.1. Constraints in the Steel Making Shop

cast width

1570

1240

1570

1125

The tundish of a continuous caster has to be maintained after approximately 240 minutes. A second tundish is used, because this maintenance takes about 100 minutes. Before one tundish is worn out the tundishes are exchanged to allow a continuous operation of the caster. If jobs are sequenced properly and if these tundish changes are performed always in time a caster can operate for several days or even weeks continuously. The main criteria that constrains the sequence of jobs are compatibility constraints between jobs. There are three compatibility aspects that must be considered. The steel grade (the chemical analysis) of subsequent charges must be similar, the casting format may vary only in certain ranges and the degassing procedure in the secondary metallurgy must be compatible. A heuristic says that the format should be alternatively increasing and decreasing slowly whereby some orders have restrictions that only increasing or decreasing is possible.

Figure 2: Casting Format over a Sequence of Orders Rules about which steel qualities may be cast one after the other are given explicitly. Usually, there are hard constraints saying that two qualities may not be sequenced, but there are also soft rules that say that it is not so good to sequence two qualities. If no feasible sequence can be found, three operations may help: • To separate two incompatible jobs, a plate may be inserted into the strand. This results in the production of a useless slab. These costs are quantifiable. However, this operation has also some compatibility constraints. If the difference between the subsequent steel grades is too strong, no quality separation is possible. • Also a change of tundishes may help. Such a change has higher costs than a quality separation. However, if the change must be performed anyway due to the required maintenance operation, the costs are less. • The most expensive operation is a set-up of the caster. This means some hours of interruption without casting. Set-ups are required when an interruption in the delivery occurs or the duration between two changes of tundishes is less than 100 minutes. -5-

The three operations ensure that every sequence of jobs can be transformed into a feasible schedule. However, to maximize the production the casters should process the steel continuously without interruptions. So the main objective is to have as few set-ups as possible. Secondary objectives are a minimization of tundish changes and quality separations. However, few set-ups can often be achieved by many quality separations. Since each quality separation has quantifiable costs it may be possible that trade-off between two criteria must be considered.

2.2. Constraints in the Rolling Mill

roll width

1110

1570

1275

Subsequent jobs on the rolling stands must have similar steel quality and constraints on width and thickness of rolled goods must be considered. Similar steel qualities can be rolled in a sequence. However, the length of such a sequence is restricted by the lifetime of the rolls. Therefore, typically a number of orders are grouped and it is desired to roll them in sequence whereby the width of the strip first increases and decreases then over these orders forming a curve of a coffin. Of course some small deviations from this ideal curve will occur.

Figure 3: Rolling Format over a Sequence of Orders Furthermore, the planner tries to assure that subsequent plants like the two cold strip mills, the galvanization shop, the pickling line and other finishing sections obtain a constant amount of work per week.

2.3 Coordination of Plants The constraints concerning the chemical compatibility on the caster are slightly different than for the rolling stands but for the example they are not distinguished. Theoretically, if many orders of the same steel quality and format are ordered, the coordination would be no problem. On the other hand, especially the distributed approach proposed here seems to solve the problem best. Another problem that shall be considered here, is that not all steel qualities can be rolled warm. These orders must cool down before they are processed in the rolling mill. This makes it difficult to find a good sequence on the caster and the rolling stand -6-

without a large slab stock. At the moment, a large amount of the castings are going into stock without necessity. These orders must be reheated to be able to be processed on the rolling stands. They cause enormous costs due to the necessity of reheating and due to the binding of investments. Approximately 20–25% of the orders cannot be rolled warm due to chemical reasons, 35–45% are actually rolled warm and the rest is not rolled warm due to poor planning. The actual situation is that both plants are rather autonomous. Two expert systems were developed independently. The CAPS-system [4] supports experts in the rolling mill to construct lists of orders for the steel making shop. Such a list contains some ordered groups of jobs that are classified as warm-throughput and the steel making plant is asked to produce these orders in the given order. In the expert system most of the technological constraints of steel making shop are implemented to be able to check for constraint violations. However, there is no intention to construct optimal schedules. The VAI-Schedex- system [5] tries to find good sequences for the steel making shop but it is restricted in its capabilities because it has to maintain the given order of the lists.

3. Iterative Repair-based Scheduling Iterative improvement methods are a class of problem solving methods that suits best for complex optimization problems [6] and can be applied easily for reactive scheduling [2]. Furthermore, it fits also well for cooperative scheduling problems as will be pointed out here. We have made some experiments with iterative improvement methods [7] and have decided to concentrate in further investigations on a combined approach of tabu search with a repair-based heuristic. For the representation of constraints we use fuzzy sets.

3.1. Fuzzy Constraints and the Evaluation of Schedules Scheduling can be defined as the process of allocating a set of operations temporally to a set of machines. The complexity of this process comes from the necessity to consider several technological and organizational constraints. Although the representation of crisp constraints is overwhelming in the theoretical literature, our experience in several plant was that human experts especially in the steel making industry cannot give exact boundaries of allowed quantities (i.e. crisp constraints). Consequently we model the satisfaction of constraints by fuzzy sets. For example, the satisfaction of a due date can be mapped on the linguistic fuzzy values very early, early, in time, late, or very late. To reflect production necessities one has to distinguish between hard and soft constraints. Hard constraints as the maximal lifetime of a tundish (240 minutes) in our example may never be violated. On the other side soft constraints as for example due -7-

dates should be considered but may be violated if some other advantage can be gained by the violation. Typically, soft constraints are subject to optimize. However, also constraints that have sharp boundaries have different regions that have different utility values. Thus the length of the tundish should be near of the longest possible duration since otherwise production costs would raise. From different quantities described by fuzzy sets other quantities may be derivable. The duration how long the casting of one job takes depends on the size of a heat, the casting velocity, and some other uncontrollable parameters. Therefore this duration is also represented by fuzzy numbers. To decide whether a tundish change must be inserted at a certain place in the sequence of jobs on a caster, the fuzzy durations of all jobs since the last change are added. This estimation how long the casting of a group of jobs till the next tundish change takes is mapped on linguistic values like very short, short, medium, long, very long, and too long to represent how likely it is that the jobs can be cast without tundish change. The last symbol represents a hard constraint violation and is not allowed. Due to the characteristics of the application it is possible to construct always schedules without violations of hard constraints. Soft constraint violations are subject to optimization and their satisfaction is considered in the evaluation function. However, the methodology is not restricted to such applications. In [3] it was shown that the methodology is also applicable in a high-grade steel production where the compatibility problem is greater and not always a feasible schedule can be constructed by simple insertion of additional operations. Due date constraints and an objective like minimizing the number of set-ups have of course different importance. In the application due dates are not so important. Although the number of set-ups is never a hard constraint violation, the minimization is more important than due date violations. Therefore different kinds of constraint violations get different weights. Although compatibility constraints are the strictest constraints in the application, their consistency is achieved through insertion of a quality separation, a tundish change, or a set-up. Usually there are more jobs to be scheduled than actually can be scheduled. Therefore the most important jobs should be scheduled in any case. To achieve a balance between important jobs and the satisfaction of constraints we model also the importance of jobs by fuzzy sets. The evaluation of a schedule is now the mean of the weighted satisfaction degree of all constraints. The aggregation is described in more detail in [8]. The value of this evaluation function is always a fuzzy value between 0 and 1. The optimal value is theoretically 1, but when different steel grades are involved, this value can never be reached. Good evaluations for the data that we have used in experiments for the steel making shop range between .91 and .93 [7]. -8-

3.2 Tabu Search with Repair Heuristic Tabu Search is an iterative search method that modifies by local search a given schedule to find a better schedule. Usually only better schedules are accepted, but to escape from local optima also schedules that get a worse evaluation are accepted. A tabu mechanism controls heuristically that reversals to old solutions are minimized. A wide range of scheduling problems were already solved with Tabu Search. Barnes and Laguna [9] give an overview on some of these solutions. Tabu Search is inspired to a great extend by research in cognitive science [10, 11]. One of the key ideas is a dynamic memory that stores attributes of past solutions of the search process. In a short-time memory, characteristics of recent solutions are stored to avoid reversals or cycles in search. A long-term memory is used to define phases of intensified and diversified search. Thus, if a region of the search space was examined intensively without finding better solutions, the long term memory can switch parameters to guide the search process to different regions. Several concepts are required to fulfill this behavior. First approaches of Tabu Search have investigated the whole neighborhood [12], however in realistic industrial applications this is intractable. Consequently later it was advised to form first samples of neighbors and to examine then the whole sample to select the best modification. [13] apply for example swap operators and restrict the distance between two jobs that are swapped to be smaller than some d. We use the strategy to repair the greatest conflict in a schedule to form such a sample. If for example one job is late, we only try operators that move the late job to another place. If the compatibility between two jobs j1 and j 2 is not so good we try to move either job j1 or j2. The repair heuristic is influenced by other approaches. For example the approach of [14] considers the edges on the critical path as the potential points of optimization for scheduling problems where the makespan shall be minimized. In [15] the “minconflicts” strategy for constraint-based representations were proposed and it was shown for the Hubble Space Telescope that this strategy is adequate for large scheduling problems. Basically it is tried to minimize the number of constraint violations. Since our representation of constraint violations is of finer granularity, our approach can be more sensitive than the last approach and moreover we can represent with fuzzy sets also objectives like the minimization of makespan. To escape from local optima it is also possible to select a neighbor with a worse evaluation. To avoid cycles in search, a tabu list is introduced that contains attributes of past solutions. If a new schedule is considered that matches with one of these elements of the tabu list, this schedule is tabu and the next best neighbor is looked for.

-9-

Theoretically, one could store a whole schedule in the tabu list to make it tabu. Since this would be too space and time consuming, only some attributes of an old schedule are stored. Now it can occur that a new schedule is generated which has the stored attributes, but is apart from that different to the old schedule. To enable under specified conditions the overriding of the tabu status of an attribute, an aspiration level condition can be introduced. A typical condition is that a new best solution is found. The stored attributes should characterize the solution as good as possible. Therefore, for specific applications different attributes seems to be appropriate. In the repair-based approach the repaired constraint violation is a promising attribute. It makes sense to forbid at least for some time that the violation occurs again. Consequently, if we repair a compatibility constraint between jobs j1 and j2 , this pair is stored as a tabu element. For other constraint violations this is not possible. In this case, the position of the job that is moved is stored and the job may not return to this place. The tabu list simulating a human short-term memory has a restricted length and it is usually implemented as a ring buffer. Glover recommends to restrict it to seven entries. With this length restriction it will be possible for the case of storing the original positions of jobs that after seven modifications a job will return to its original place in the schedule. One possibility to have a diversification of the search is to change the length of the tabu list dynamically. With a longer list more operators will be tabu and a search in different regions will be the result, thus achieving a diversification. If some other good solution is found that differs considerable from old good solutions, the length of the tabu list can be shortened again. Another possibility is to switch between different operators. For example a swap operator exchanging only adjacent operations leads to a more intensified search whereas operators that produce greater neighborhood structures aim at a diversification. To force a diversification also probabilistic techniques can be applied.

3.3 Exemplary Construction of a Schedule To illustrate the iterative repair-based scheduling method and the cooperation between such systems we restrict the complexity of the example. We assume there is only one continuous caster (CC) in the steel making shop and one rolling stand (RS) in the mill. The slabs may cool down in the slab stock (SS) and will be prepared for milling in the pusher-type furnace (PF). After warm rolling, the steel is delivered to the cold rolling mill (C R M ). With cold rolling the steel is finished or is either delivered to the galvanization shop (GS) or the pickling line (PL). We assume the casting frequency is two jobs an hour. If the steel must cool down we demand one hour for this cooling

- 10 -

process. In reality, these dates are of course longer and vary considerably, but they were idealized here to restrict the complexity of the example. PL

SS CC

RS

PF

CRM

GS

Figure 4: Units in the Example The following list of orders / jobs depicts in the second column the expected delivery day, in the third the final destination, in the fourth to sixth column the format of casting and rolling and in the last column an indication whether the steel can be rolled warm. Table 2: List of Orders job

delivery destination day 0 GS 2 CRM 2 PL 2 CRM 3 PL 5 PL 3 GS 3 CRM 4 CRM 3 CRM 4 GS 5 GS

j1 j2 j3 j4 j5 j6 j7 j8 j9 j10 j11 j12

cast width 1570 1570 1570 1420 1290 1290 1270 1250 1160 1160 1160 1125

roll width thickness 1540 6.0 1540 8.0 1540 12.0 1370 8.0 1275 5.1 1275 3.1 1240 4.0 1224 3.1 1120 4.1 1140 6.0 1140 6.0 1110 8.0

warm yes yes yes no no yes yes yes yes yes no no

The planner in the rolling mill first constructs a schedule for the rolling stand. As a very simple heuristic the scheduler allocates jobs in the order of the due dates. The following sequence RS1 is the result: RS1

j1

j2

j3

j4

j5

j7

j8

j10

j9

j11

j6

j12

This schedule is evaluated and constraint violations are searched for. A violation exists between jobs j11 and j6 because the increase in width is not allowed here. The repair based strategy first tries to find other places for j11. Because no better place is found, it

- 11 -

is examined whether for j 6 a better place can be found. If j6 is placed before j1 no great conflict remains. j6

RS2

j1

j2

j3

j4

j5

j7

j8

j10

j9

j11

j12

However, there is still an optimization possible because now many jobs for the pickling line are scheduled early. By placing j5 behind j8 , which is possible from the compatibility constraints, a better distribution to the subsequent plants is achieved. j6

RS3

j1

j2

j3

j4

j7

j8

j5

j10

j9

j11

j12

The tabu list in this small example is rather short. Since the scheduler has performed only two modifications it consists of two elements that forbid that these jobs are put back to their old place in the schedule. The job j6 may not be placed again before job j11 for the next modifications. Although the move of job j 6 has also changed the position of other jobs as for example job j 2 , these modifications are only side effects. If the scheduler would decide now to take job j1 at the end of the schedule, job j2 could return to its old position. The following graphic illustrates the tabu list. j6 j11

tabu list

j5 6

Figure 5: Tabu List for the Example However, the found sequence for the rolling mill is no feasible casting sequence because the jobs j4 , j5 , j11 , and j 12 must be rolled cold. The rolling mill scheduling system constructs therefore the casting sequence CS1 by shifting these jobs back: j6

CS 1

j1

j4

j2

j3

j5

j7

j8

j10

j11

j12

j9

If the jobs are cast in this sequence, the sequence RS3 can be processed on the rolling stand. The schedule for both aggregates is depicted in Fig. 6. j6

CC SS RS

j1

j4

j3

j2

j7

j5

j4 j6 0

1

2

j10

j11

j7

j8

j5

j12 j11 j10

j5 j2

j1

j8

j3

j4 3

4

5

Figure 6: Initial Schedule for the Caster and the Rolling Stand

- 12 -

j9 j12 j9 6

j11

j12 7

hours

4. Fuzzy Communication In actual practice the rolling mill delivers lists of jobs to the steel making shop. Some of these jobs are ordered in fixed sequences to enable a warm throughput of the slabs from the casters to the rolling stands. The order of these jobs may not be changed by the scheduler in the steel making plant. The remaining jobs can be produced in any order because they will go to the slab stock. The result is that jobs classified as warm throughput have additional costs in the steel making plant because they cannot be rearranged according to the constrains and objectives on the caster. On the other side, more jobs could be delivered warm if a communication of both systems would take place. However, for such an application it seems insufficient to send only a crisp representation of the schedule to the cooperating partner. In a crisp model the RMSS could demand that a job j2 should be cast at 2 PM, for example. What should the partner do, if this date cannot be met? Often such due dates can be relaxed. In the steel making shop at Linz, a very general rule says that a due date must be met in ± 2 hours. This is insufficient because often these times vary. For example, the exact date of the first job of a sequence may have a greater variance than its successors that should be more exact in regard to the first job. However, more important than such due dates are constraints on the sequence because a different order can mean that one job must wait until other jobs are processed. With fuzzy sets one can express easily both kinds of knowledge.

4.1 Cooperated Construction of a Schedule Our approach for an improved communication is as follows: One system starts to construct a schedule. After the first heuristic construction, the schedule is repaired until some good evaluation is found. The search can be stopped after a predefined deadline, when no constraint violations remain or when some necessary evaluation value is reached. This schedule is send to the second system and important constraints are attached. These constraints are interpreted as organizational constraints by the second system. Organizational constraints are not usually so important as technical ones but they are still considered in the evaluation function. The second system uses the received schedule as a first solution and repairs it by local search. For our example we sketch the following scenario: The schedule CS1 constructed by the rolling mill scheduling system (RMSS) is delivered to the scheduling system of the steel making shop (SMSS ). The schedule consists of a list of jobs, a number of fuzzy sets describing windows when casting can be performed and a set of fuzzy sequence constraints.

- 13 -

In this scenario it makes sense to restrict job j1 to be early since its delivery day is today and job j 12 to be late because the job with the smallest width should be last in the rolling sequence. Furthermore, the job j2 should be scheduled sometime in the middle because it has a wide rolling format. The interpretation of these temporal fuzzy sets should be clear as they are the same as in systems like those described in [2] or [15]. The following graphic shows the fuzzy sets for these three jobs that are submitted together with constraints for other jobs to the SMSS.

j1

j 12

j2 1

2

3

4

5

6

Figure 7: Fuzzy Temporal Assignments of Jobs Furthermore, the RMSS constrains some sequences to be necessary. If there is one, from the view of the compatibility constraints, exotic job j 11 that has only one possible successor j 12, this is expressed explicitly by a fuzzy sequence constraint that is hardly relaxable. There may be some minutes lapse between both jobs but no other job can be processed between them as described by Fig. 8. j 11 and j 12 0

1

2

Figure 8: Fuzzy Sequence between j 11 and j12 The jobs j 1 , j2, and j3 shall be rolled together . Since they all have the same quality they may be processed in any order. This is expressed in Fig. 9 by a soft sequence constraint. 9. Job j2 may start an hour earlier or later than job j3 . j 2 and j 3 -1

0

+1

Figure 9: Fuzzy Sequence Constraint between j 1 and j2 Job j4 shall be rolled immediately before j 7 . Since j4 must cool down one hour, there must be a lapse of one hour between both. This is again expressed by a fuzzy sequence constraint. To be robust in case of unexpected events the highest degree of satisfaction is achieved for a time a little bit later than 1. This constraint is illustrated in Fig. 10.

- 14 -

j and j 4

0

1

2

7

3

Figure 10: Fuzzy Sequence between j 4 and j7 Now the SMSS examines the schedule and gets a bad evaluation because too many format changes occur in this sequence. A very simple modification that results in an improved evaluation is the exchange of j4 and j 1 . The job j1 is a little bit later than demanded but the fuzzy curve signifies that this can be accepted by the R M S S. Furthermore we assume that there is a constraint violation between j 8 and j11 due to chemical incompatibility. Both jobs should not be exchanged because then j11 and j 12 will be separated. An exchange of j 7 and j 8 is a possible repair from the view of the SMSS that observes also the given constraint of the RMSS . CS 2

j6

j4

j1

j2

j3

j5

j8

j7

j10

j11

j12

j9

This new schedule CS2 satisfies the constraints of the steel making shop and also the constraints delivered by SMSS . It is send back to the RMSS with the evaluation value es1 determined by the SMSS . The RMSS determines the costs er1 for this new schedule and total costs are computed as a sum of both evaluations: e1 = es1 + er1 . This schedule is the actual best schedule for both schedulers. The costs are by definition between 0 and 2. With this lower and upper bound it is ensured that one system cannot charge extreme costs for decisions of the other system. The RMSS perhaps finds an improvement for the schedule since the SMSS has not considered the aspect of equal distribution of orders on the subsequent plants. Further there are some interruptions in the rolling process which can perhaps be avoided. If the RMSS finds a better schedule CS 3 , it will send the schedule, the considered constraints and its new evaluation value er2 to the SMSS . This can now decide whether the schedule CS 3 is acceptable from its point of view. Therefore the sum of the new evaluation values e2 = es2 + er2 must be greater than e 1 . If not, the SMSS will try to find an improvement. If it finds a schedule CS4 whose evaluation is es3 < e1 - er2, this schedule is sent to the R M S S. If the RMSS rejects the schedule CS 4 or the SMSS finds no improvement, the schedule CS 2 that has achieved an evaluation of e1, remains the best schedule. The search performed by both systems can again be controlled by an iterative improvement method like tabu search. However, this will not be discussed further here since no experiments were made in this direction.

- 15 -

4.2 Reactive Scheduling The applied representation of fuzzy constraints and the iterative improvement method supports also reactive scheduling. First, we support the construction of robust schedules. By giving the distance constraint between j4 and j7 a high satisfaction somewhere behind 1 hour, schedules will be preferred that have more than one hour distance. If now one of the jobs before j 7 has a shorter processing time than expected, the production will not be interrupted. Second, fuzzy constraints are a kind of filter for the communication. If a deviation of processing times is recognized in the steel making shop then fuzzy sets are used to decide whether this deviation has to be reported to the scheduler of the rolling mill and whether rescheduling is necessary. If the satisfaction degree falls under some predefined threshold, communication and perhaps rescheduling is performed. Finally, the representation of fuzzy sets supports rescheduling, because they indicate potential relaxation of constraints that may be made for production to proceed. In case of such a rescheduling, again Tabu Search and the fuzzy constraints posted earlier are used to find the best possible schedule.

5. Conclusions We have described a cooperative problem solving method for scheduling applications with a communication language based on fuzzy sets. The assumptions of this method are that no single scheduling system can adequately solve such a problem and that no explicit global objective can be posted. Thus the individual systems have to negotiate. Although this problem solving method was not yet tested in the described application first experiments show the applicability and from our discussion one can see its benefits: Due to a more expressive language the scheduling systems remain independent and they can consider more details of the technical constraints of its partners. The application of fuzzy sets for this communication process has the advantage that more information is transmitted than in the case of crisp data communication. We have introduced here a model of representing temporal relations with fuzzy logic which is as far as we now new. With the representation of uncertain durations by fuzzy sets we achieve a representation model that constrains the search space of the partner on one side but gives the partner on the other side the freedom to rearrange the solution in order to fit better to its own constraints. A possible extension of our temporal framework would be a combination with a qualitative temporal constraint model as described by [16]. However, it is not clear what the benefits of such a constraint propagation algorithm would be. Since most of - 16 -

the times in our application are quantitatively known, it seems an overhead without any advantage. Nevertheless, it is an interesting theoretical problem to define fuzzy interval relations in a constraint propagation graph. The search for globally near optimal solution is performed by local optimization and aggregating the achieved evaluation values. We have described the procedure by an example with two systems, but it seems to be no problem to communicate between more systems. We could imagine also to have a hierarchical structure above all systems like in the approach of Burke and Prosser [17]. We could also incorporate a production planning system into our distributed problem solving approach. Instead of giving release and due dates the production planning system would assign fuzzy sets to orders with. A problem that was not yet considered is that sometimes disjunctions of temporal relations or assigned operation times would be helpful. In another application, described in [18], constraints exist that a job must be processed in a day shift. If a schedule for a week is constructed several trapezoids in the associated fuzzy set could be contained. The same is possible if one wants to constrain that one job is either immediately before or after another job. However, disjunctions between three jobs are not expressible. For the described example it could make sense to say that either the sequence j1, j 2 , j3 or the sequence j3, j2, j1 is desired. An open problem with our approach that should not be under-estimated is the adjustment of constraints and their importance against each other. Since there is no immediate translation from existent domain concepts into the fuzzy sets some kind of simulation must be performed to find the right weights for an application. The proposed approach shall now be integrated into the DÉJÀ VU class library for intelligent scheduling systems [19]. This library is commercially available. More information about the library and how to obtain the library can be found at http://www.dbai.tuwien.ac.at/proj/DejaVu.

6 Acknowledgments Work on the described framework was started with Roger M. Kerr [20]. The discussion and the writing of the former paper has improved considerable the actual paper. Thanks also to all the people from VOEST Alpine Industrieanlagenbau and VOEST Alpine Stahl Linz who have great influence on the ideas.

7 References 1

Kerr, R. M. (1991) Knowledge-Based Manufacturing Management, Addison Wesley. - 17 -

2

Dorn, J. Kerr, R. M. and Thalhammer, G. (1995) Reactive Scheduling – improving the robustness of schedules and restricting the effects of shop floor disturbances by fuzzy reasoning in International Journal on Human-Computer Studies 42, pp. 687–704.

3

Dorn, J. and W. Slany (1994) A Flow Shop with Compatibility Constraints in a Steelmaking Plant, in Zweben and Fox (eds.) Intelligent Scheduling, Morgan Kaufmann, pp. 629–654.

4

Kelemis, A., Siebert, V., Böhler, A. and Himmelbauer, F. (1993) Potentielle Anwendungsgebiete für CAPS, ein wissensbasiertes System zur integrierten Anlagenprogrammerstellung für Stahl- und Walzwerk, CIM Management..

5

Stohl, K. and Snopek, W. (1993) VAI-Schedex: A hybrid expert system for cooperative production scheduling in a steel plant, Proceedings of the International Conference on Computerized Production Control in Steel Plant, Korean Institute of Metals and Institute of Metals UK, pp. 207–217.

6

Dorn, J. (1995) Iterative Improvement Methods for Knowledge-based Scheduling AICOM Journal, pp. 20–34 March.

7

Dorn, J. , Girsch, M., Skele, G., and Slany, W. (1996) Comparison of Iterative Improvement Techniques for Schedule Optimization, European Journal of Operational Research, pp. 349-361.

8

Slany, W. (1994) Scheduling as a Fuzzy Multiple Criteria Optimization Problem, Dissertation Technical University Vienna.

9

Barnes, J. W. and M. A. Laguna (1993) Tabu Search Experience in Production Scheduling, in Annals of Operations Research 41, pp. 141–156.

10

Glover, F. 1989. Tabu Search–Part I. ORSA Journal on Computing 1 (3), pp. 190–206.

11

Glover, F. 1990. Tabu Search–Part II. ORSA Journal on Computing 2 (1), pp. 4–32.

12

Widmer, M. and A. Hertz (1989) A New Heuristic Method for the Flow Shop Sequencing Problem, European Journal on Operations Research 41.

13

Laguna, M., J. W. Barnes, and F. Glover (1991) Tabu Search Methods for a Single Machine Scheduling Problem, Journal of International Manufacturing 2, pp. 63–73.

14

Adams, J., E. Balas, E. and D. Zawack, (1988) The Shifting Bottleneck Procedure for Job Shop Scheduling, Management Science 34 (3), pp. 391–401. - 18 -

15

Kerr, R. M. and R. N. Walker (1989) A Job Shop Scheduling System Based on Fuzzy Arithmetic, Proceedings of the 2nd International Conference on Expert Systems and Leading Edge in Production and Operations Management, Hilton Head Island, S.C., pp. 433–450.

15

Minton, S., M. Johnston, A. Philips, P. Laird (1989) Solving Large-Scale Constraint Satisfaction and Scheduling Problems Using a Heuristic Repair Method. Proceedings of the 8th National Conference on Artificial Intelligence, Menlo Parc, 17–24.

16

Allen, J. F. (1983) Maintaining Knowledge about Temporal Intervals, Communications of the ACM 26 (11), pp. 823–843.

17

Burke, P. and P. Prosser (1991) A Distributed Asynchronous System for Predictive and Reactive Scheduling, Artificial Intelligence in Engineering 6, pp. 106–124.

18

Dorn, J. and Shams, R. (1996) Scheduling High-grade Steel Making IEEE Expert February, pp. 28-35.

19

Dorn, J., Girsch, M. and Vidakis, N. (1998) DÉJÀ VU – A Reusable Framework for the Construction of Intelligent Interactive Schedulers, Advances in Production Management Systems - Perspectives and Future Challenges -, Okino et al. (eds.) Chapman & Hall, pp. 467-478.

20

Dorn, J. and R. M. Kerr (1994) Cooperating Scheduling Systems Communicating Through Fuzzy Sets, Preprints of the 2nd IFAC/IFIP/IFORS-Workshop on Intelligent Manufacturing Systems (IMS’94), Vienna, pp. 367–373.

- 19 -