On-line version ISSN 2224-7890Print version ISSN 1012-277X

S. Afr. J. Ind. Eng. vol.25 n.2 Pretoria Aug. 2014

IDivision of Materials Technology School of Energy, Environment and Materials King Mongkut's University of Technology Thonburi, Bangkok, Thailand. kiatkajohn.wora@mail.kmutt.ac.thIIDivision of Materials Technology School of Energy, Environment and Materials King Mongkut's University of Technology Thonburi, Bangkok, Thailand.purit.tha@kmutt.ac.th

ABSTRACT

This paper presents an effective scheduling in a steel-making continuous casting (SCC) plant. The main contribution of this paper is the formulation of a new optimisation model that more closely represents real-world situations, and a hierarchical genetic algorithm (HGA) tailored particularly for searching for an optimal SCC schedule. The optimisation model is developed by integrating two main planning phases of traditional scheduling: (1) planning cast sequence, and (2) scheduling of steel-making and timing of all jobs. A novel procedure is given for genetic algorithm (GA) chromosome coding that maps Gantt chart and hierarchical chromosomes. The performance of the proposed methodology is illustrated and compared with a two-phase traditional scheduling and a standard GA toolbox. Both qualitative and quantitative performance measures are investigated.

Production scheduling plays a critical role in improving productivity and limiting production costs, especially for mass customised production such as a steel-making-continuous casting (SCC) plant. Due to technological and economic restrictions that add extra difficulty to the SCC scheduling problem, the development of an effective and efficient methodology for scheduling an SCC plant is a challenge.

The problems related to SCC scheduling, at various production stages from steel-making to continuous casting, are characterised by two issues: how molten steel should be arranged and in what sequence, and at what time and on which machine. A review of various SCC production scheduling methods is comprehensively addressed in Tang et al. [1] and in Dutta and Fourer [2]. The SCC scheduling process was introduced by Numao and Morishita [3] and addressed in more recent literature. Numao and Morishita's [3] heuristic scheduling was developed in two steps: (1) sequencing the cast (sub-scheduling); and (2) scheduling of the steel-making process and timing of the jobs (rough scheduling), including elimination of machine conflicts (optimal scheduling). Most researchers concentrate on either step, while the rest is given. For instance, Chang et al. [4], Xue et al. [5], Jian et al. [6], and Gravel et al. [7] determined the cast sequence on continuous casters (the first step) with a binary- or integer-programming formulation, and solved it by using heuristic and artificial intelligent methods. Lee et al. [8] designed a continuous slab caster schedule via a special class of graphs called interval graphs, while Cowling et al. [9] adopted a multi-agent system for evaluating a dynamic caster schedule.

In the second step, most researchers perform the SCC scheduling by obtaining the cast sequence from a higher-level planning. Linear programming and heuristic methods are mostly adopted in this instance. Tang et al. [10] proposed an SCC scheduling that eliminates machine conflicts, via a non-linear programming model. In another work, Tang et al. [11] developed an integer-programming model and obtained the optimal solution by combining Lagrangian relaxation and a heuristic method. Pacciarelli and Pranzo [12] completed the SCC schedule by using a generalisation of the disjunctive graph of Roy and Sussman [13] and Beam search. Bellabdaoui et al. [14] focused on SCC scheduling inspired by an industrial application from the Arcelor Group to eliminate machine conflicts via linear programming and then solve them via a heuristic algorithm. In their more recent work, Bellabdaoui and Teghem [15] formulated the same problem into a mixed-integer linear programme using a commercial software package. Recently, Atighehchian et al. [16] designed SCC scheduling by using a combination of ant colony optimisation and non-linear optimisation, comparing the efficiency between a standard genetic algorithm (GA) and a heuristic method.

Several arguments emerge for taking these two steps into account together. First, the cast sequence designed in the first step often affects the optimality or creates machine conflicts. Second, the existing planning system with two-phase scheduling in many steel factories is not consistent with mass customised production. For example, a higher level planning of a compact strip plant (CSP) is not designed for short-term and variety-product planning [17]. Finally, faster scheduling and lower step planning, particularly in emergency situations, are able to stabilise the production process and reduce manpower and facility requirements.

In this paper, an efficient and effective approach is proposed that combines the two steps simultaneously into one model, so that SCC scheduling is achieved in one package. This approach focuses on the multi-production line of SCC scheduling, defined as a flexible flow shop, which is NP-complete [18]. A new mathematical model is designed by taking into account the special and practical steel requirements. Furthermore, a GA is adopted because it is particularly suitable for this practical problem. Efficiency is improved by a hierarchical chromosome coding, which can search for both optimal topology (number of jobs in each machine) and variables (starting time of jobs) of steel scheduling. Special genetic operations are designed for discrete and continuous decision variables of the proposed model. To investigate the performance of the proposed approach, a case study is conducted on customer orders from a real factory.

2 SCC PLANT

Steel production (as shown in Figure 1) normally consists of three basic stages: melting, refining, and continuous casting. The melting stage reduces C, S, and Si in molten iron to a desirable level by burning it with oxygen in an electric arc furnace (EAF). The molten steel is then transported to a refining furnace (RF) that further refines the chemicals, eliminates impurities in the molten steel, and/or adds the required alloy ingredients. The product is delivered to the continuous caster (CC) and is poured into a tundish. The molten steel flows down through a nozzle of the tundish into a mould. It continuously solidifies into a strand (stream of steel) and is processed into steel slabs or billets.

In this section, the mathematical optimisation model and the design of GA for SCC scheduling are proposed. The model integrates two phases of traditional planning. The GA chromosome coding and its operations are designed on a hierarchical structure to suit the proposed model.

3.1 Proposed optimisation model

The SCC scheduling problem in this paper is a multi-production line characterised as a flexible flow shop system. Two terms are introduced as follows: a charge (or a job of SCC scheduling) is a basic unit of steel-making production; and a cast is a set of charges casted continuously on the same CC, with a similar chemical composition. The process flow of cast in the parallel production line is illustrated in Figure 2. Given that molten steel is handled at high temperatures, there are strict requirements for material continuity and flow time. The problem is therefore formulated based on the following practical requirements:

Constraints

The number of charges in a cast sequence is defined by the life-time of the nozzle at the bottom of a tundish.

In practice, the machine setup time of each cast is required to change equipment.

Each charge must be completely processed in operation before proceeding to the next operation.

All charges processed on the same machine must be handled separately and sequentially.

Special requirements

The main objective chosen for the SCC scheduling model is to minimise production costs by ensuring production continuity and Just-in-Time (JIT) delivery. Several losses must be considered:

Loss from steel grade difference in adjacent charges: a slab mixed with another steel grade will be assigned to the second grade product.

Loss from width and thickness change: the material between the changes of charges will be disposed of.

Loss from consignment date (e.g., inventory and compensation to customers and shipping).

Loss from cast break: the cast break causes the remaining molten steel to be re-heated or drained out.

Loss from waiting time: a drop in the molten steel's temperature because of the waiting time affects the quality of the steel.

The optimisation model is formulated by the above conditions and inspired by Tang et al. [10]. A mixed-integer programming model is used to represent the production costs as follows:

for binary variables (Assignment)

for continuous variables (Time relations)

Melting and Refining

Continuous Casting

where

Decision variables

x(k) is a binary decision vector to allocate the charge into cast k on CC. Charge i belongs to cast k if and only if xi(k) is equal to 1.

Y(m) is a binary decision vector to allocate the charge into EAF and RF m (m [##OBJ-WRAP-ID# 8 ## fig]

F ). Charge i is operated on machine m if and only if yi(m)is equal to 1.

sti(m) is the starting time of the charge i on machine m .

Other notations

QC is a cost matrix for CC and QF is a cost matrix for EAF and RF. qi,j is the production cost between charge i and j due to losses as follows: ci,jG, ci,jWD , and ci,jTH

are losses of steel grade difference, loss of width change, and loss of thickness change, respectively.

is a set of all machines, Π = {1,2,...,M}, where M is the total number of machines.

F is a set of steel-making furnaces (EAF and RF ), ΠF = {1,2,...,MF}, where MF is the total number of EAF and RF. ΠF Π . MF is the total number of EAF and MR is the total number of RF, where ME + MR = MF. ΠC is the set of CC, ΠC = {1,2,...,MC}, whereMC is the total number of casters. MC + MF = M , ΠC, , and ΠCΠF = . ǾΠi is the set of machines used for charge i, Πi.

• P is the total number of casts and Pm is the set of casts that are processed on caster m . For example, p1= {1,3} means that cast number 1 and 3 are operated on caster number 1.

is the set of all charges, Ω = {1,2,..., N}, where N is the total number of charges to be arranged. Ωk is the set of charges in cast k .

L is the maximum number of charges in a cast.

•f1,∙∙∙, f4 are penalty factors.

wdi is the ordered slab width of charge i. hi is the ordered slab thickness of charge i and dt is the consignment date or time of charge i.

Ti(m) is the processing time of charge i on machine m .(m) is the setup time of caster m .

The last four terms in Equation (1) represent the cast break loss, waiting time, lateness, and earliness penalties, respectively. While the real decision variable (sti(m)) is used for timing the charges on the machines, it also implies the charge sequence. The constraint in Equation (2) ensures that every charge must be arranged to a cast, while the constraint in Equation (3) ensures that every charge must be arranged once to a machine in each process. Equation (4) ensures that the number of charges in each cast must not be less than two and cannot exceed the endurance capability of each tundish. Equation (6) ensures that the two consecutive operations of each charge are executed sequentially. Equation (7) ensures that two contiguous charges are not processed simultaneously on the same machine. Equation (8) ensures that enough setup time is required between casts, while the constraint in Equation (9) ensures the continuity of casting.

3.2 Designing a Hierarchical Genetic Algorithm

Since gradient-based optimisation methods are not practical for finding an optimal schedule for the binary- or integer-programming model, this work applies a GA that is widely used, especially in flow shop production [19]. In a real-life process, a GA can be easily modified with respect to the objectives and constraints [17, 20]. Because this problem focuses on a particular type of application, this work adopts the concept of a Hierarchical Genetic Algorithm (HGA), because it provides suitable GA operations to avoid infeasible solutions.

3.2.1 Hierarchical chromosome coding

A hierarchical chromosome coding for GAs is introduced in Tang et al. [21]. This concept is regarded much as DNA is regarded in a biological chromosome. DNA consists of two types of genes: (1) structural genes and (2) regulatory genes. The structural genes contain the genetic information, while the regulatory genes control coding of the structural genes. Similarly, a mathematical hierarchical chromosome can be classified into two different types: i(1) parametric genes, and (2) control genes. The parametric genes, which contain parametric values of the objective function, are analogous to the structural genes. The activation of the parametric genes is governed by the control genes, which are analogous to the regulatory genes. In Figure 3, these three-level gene structures are illustrated. The value 0 or 1 of the control genes is used to define the activation of the parametric genes.

From the proposed optimisation model, the decision variables, x(k), Y(m), and sti(m) are coded into two types of chromosomes as follows:

Variable chromosome (Hv): The variable chromosome comprises a job-control gene and a starting-time gene. The job-control gene (gc) contains the binary variable X(k) or Y(m) while the starting-time gene (gs) contains the real variable Δt(m), which is a slack of the starting-time according to Equation (7) or stj(m) = sti(m) + Ti(m) +Δtj(m), j follows i . The value 1 of the job-control gene will activate the associated startingtime gene and address the number of charges on machine m as shown in Figure 4.

Sequence chromosome (Hs): the sequence chromosome arranges the activated starting-time gene. It represents a set of integer numbers as follows:

Hs = {h(E), h(R), h(C)} (19)

h(EorRorC) = {sqi | sqi

[##OBJ-WRAP-ID# 9 ## fig]

[1, N] and sqi,

[##OBJ-WRAP-ID# 10 ## fig]

sqj i, j

[##OBJ-WRAP-ID# 11 ## fig]

Ω} (20) where h(E) , h(R) , and h(C) are the sub-groups of the sequence chromosome of EAF, RF, and CC, respectively. Each integer number ( sqi ) shows the priority of each member (Δti(m)) of the starting-time gene. An activated charge with the smallest integer number will be processed first (shown in Figure 4). Figure 4 illustrates the chromosomes coding and decoding for the first melting machine (EAF#1). The job control gene is the variable Y(1) , in which the first three charges are enabled. Therefore the slack Δt1(1), Δt2(2), and Δt3(3) are selected. These activated slacks are then sequenced by the sequence chromosome, e.g., sq2 < sq1 < sq3. Consequently, charge 2 is executed and is then followed by charge 1 and 3, sequentially. It is noted that the sequence of the activated charges for EAF#1 will be different if the priority in the sequence chromosome is different.

3.2.2 Genetic operations

The main operation of the HGA optimisation consists of selection, crossover, and mutation. Since there are two types of genes in the chromosome, a specific crossover and mutation method has been designed to suit this particular purpose.

Variable chromosome crossover: The crossover is performed separately for two types of genes. To avoid infeasible solutions, according to Equation (2), first a parent chromosome of the control genes is formed by arranging all job-control genes into a matrix. A one-point crossover with a probability rate is then performed by swapping the matrix columns, as shown in Figure 5. The offspring A is made by replacing the last two columns behind the crossover point of the parent A with the last two columns of the parent B. Since the starting-time gene is a vector of real numbers, the standard one or multiple-point crossovers can be directly applied.

Sequence chromosome crossover: The standard one-point crossover is adopted by randomly choosing the fixed crossover points a and b , as shown in Figure 6. An example shows that when crossover point a is chosen, offspring A is consequently created from swapping h(R) and h(C) between parent A and parent B.

Mutation: For variable chromosomes, a bit mutation is applied to the job-control gene, while the random mutation shown in Equation (21) is applied to the startingtime gene.

t(m) = Δt(m)+ ψ(µ,σ) (21)

where ψ is a random function (may be normally distributed), µ and σ2 are mean and variance, respectively. For the sequence chromosome, a special mutation operator has been designed to find an optimal sequence. A delta-shift mutation [22], which alters each element in the sequence chromosome, is adopted as follows:

where Δi has equal chance to be 1 or -1 with a small probability.

4 COMPUTATIONAL EXPERIMENT

To verify the proposed optimisation model and test the performance of the methodology, this section presents a case study of scheduling in an SCC factory that consists of two EAFs, two RFs, and two CCs. A daily production lot contains 12 charges (as shown in Table 1), with the factory wanting to arrange these orders optimally into four casts (grade groups). The first and second casts are processed on caster 1, while the third and forth casts are processed on caster 2. The related set in the model can be defined as follows:

= {1,2,3,4,5,6}, Π- = {1,2,3,4}, ΠC = {1,2} , Ω = {1,2,..., 12} .

The experiments were implemented on MATLAB and carried out on a 1.66 GHz Intel(R) Core 2 CPU personal computer with 4 GB memory. The processing time of SCC production was defined by a real factory situation. The system performance was defined in terms of the production costs in US dollars (USD). The EAF and RF processing times were defined exactly at 50 minutes, while a dynamic processing time was used for CC. The casting time (T1(m)) was calculated from slab dimension, casting speed (vi), and steel weight (Wladle) in the ladle, as expressed in Equation (23).

where ps is steel-specific weight, wt and hi are slab width and thickness of charge i. The cast speed is between 4.4-5.5 m/min, and depends on steel grade and mould dimension.

4.1 Model performance

Focusing on the performance of the proposed optimisation model, the scheduling is optimised by using the proposed model with a standard GA (a MATLAB tool). "The result is compared with the 2-phase traditional scheduling that an initial cast sequence is defined (based on Xue et al. [5]) and then timing of all jobs is assigned"?. The model parameters, as presented in Table 2, are based on a real factory situation. The approximate penalty factors are defined from the production costs in USD.

The best results (from ten trials) using the proposed model and the two-phase traditional approach are presented in a Gantt chart in Figures 7 and 8 respectively. The performance comparison is shown in Table 3, which reveals that the proposed model can provide a better total cost than the traditional approach. It is observed that, although the traditional method can provide a somewhat better cast sequence plan in the first phase (considering only the cost from the grade mixing, size changing, and consignment sequencing at CC), the total cost becomes undesirable in practice when the timing of all processes is assigned in the second phase.

4.2 Optimisation performance

The performance of the proposed methodology, which combines the proposed model and an HGA, is compared with the standard GA in this section. It is known that the quality of the optimal solution from the GA frequently depends on the population size, and the same initial solution does not always provide the same result over different searches due to uncertainty in the method. In practice, the factory needs an approach that is reliable and that provides an acceptable result within an appropriate computational time. Thus the experiment is divided into two cases: population sizes of 400 and 600 respectively. In each population size, five different test sets (initial set no.1-5) will be executed repeatedly -five times in each test set (a total of 25 samples) to observe the variation. The HGA and GA parameters are shown in Table 4.

Table 5 shows the optimisation results from observing the overall performance by comparing the average results from each population size through 25 trials. Regarding the qualitative assessment, the proposed approach can provide a lower average than the standard GA does for all population sizes. The percentage differences are around 6.6% and 5.7% for the 400 and 600 population sizes respectively. Moreover, the proposed approach provides a smaller standard deviation. The results of all 25 trials are shown in Figure 9. It can be claimed that the proposed approach is more likely to provide a better solution than the standard GA does.

Furthermore, the quantitative performance of the proposed approach is evaluated via a probabilistic assessment. The probability density functions (PDF) of both approaches are obtained from the results of 25 trials in each population size, as shown in Figure 10 (a) and (b). The achievable probability is calculated and compared in Table 6. It implies that the proposed approach is likely to achieve an acceptable solution about 70 per cent of the time, while the standard GA scores only 55 per cent and 48 per cent for the population sizes of 400 and 600 respectively. In other words, the proposed approach is more likely to provide a better result.

Regarding the computational time, the average time of all cases is shown in Table 7. It can be seen that the standard GA needs around five times more computational time than the proposed approach. It is presumed that the better computational time for the proposed approach arises because the design better fits the particular scheduling purpose, while the standard GA aims for general purpose scheduling.

5 CONCLUDING REMARKS

This paper proposes a novel scheduling methodology for an SCC production (a flexible flow shop production) that is NP-complete. The methodology can optimise both caster sequencing and steel-making scheduling phases simultaneously via a proposed optimisation model. The HGA with specific operations is introduced to search for the optimal schedule. The efficiency of both the proposed optimisation model and the methodology is illustrated by the simulation of the real-world case. The experimental results are compared with the standard GA against three criteria; (1) the quality of the solution, (2) the quantity of achievement in terms of the probabilistic assessment, and (3) the computational time needed. It can be seen that the proposed methodology can satisfy all criteria, especially in a larger population.

It is noted that this case study, along with many steel factories, is based on a compact strip plant (CSP) design, which has no buffer between the steel-making plant and the rolling mill. A JIT concept is therefore necessary. Consequently, the earliness and lateness penalties in the optimisation model are practically emphasised, and the consignment date is set as the due time for delivering the slabs to the rolling mill. It should be noted that the application of this methodology to other steel production types producing only slabs or billets can be slightly different. In slab or billet factories, the earliness penalty is often relaxed or approximated from the warehouse cost, while the lateness penalty is approximated from the marine cargo delay expense. In addition, the cast break penalty may be relaxed in some cases. In practice, the caster operators can avoid cast breaks by reducing the casting speed while awaiting the charge from the RF. However, this method (reducing casting speed) generally works only when the waiting time is less than 30 minutes due to the steel degradation.