Improved Differential Evolution Algorithm for Slab Allocation and Hot-Rolling Scheduling Integration Problem

: To reduce logistics scheduling costs and energy consumption, this paper studies the slab allocation and hot-rolling scheduling integrated optimization problem that arises in practical iron and steel enterprises. In this problem, slabs are ﬁrst allocated to orders and then sent to heating furnaces for heating; then, they are sent to a hot-rolling mill for rolling. A 0–1 integer programming model is established to minimize the attribute difference in the allocation cost between slabs and orders, the switching cost of hot-rolling processing, and waiting times after slabs reach rolling mills. Given the problem’s characteristics, an improved differential evolution algorithm using a real-number coding method is designed to solve it. Three different heuristic algorithms are proposed to improve the quality of solutions in the initial population. Multiple parent individuals participate in the mutation operation, which increases the population diversity and prevents the algorithm from falling into the local optimum prematurely. Experiments on 14 sets of real production data from a large domestic iron and steel plant show that our improved differential evolution algorithm generates signiﬁcantly better solutions in a reasonable amount of time compared with CPLEX, the simulated artiﬁcial method, and the classical differential evolution algorithm, and it can be used by practitioners.


Introduction
The iron and steel industry plays an important role in economic development.With the development of science and technology, competition between iron and steel enterprises is becoming increasingly fierce [1].The production of iron and steel consists of several steps, including raw materials acquisition, ironmaking, steelmaking [2], continuous casting, hot rolling, cold rolling, electroplating, and so on, and each process is closely connected.Slabs are an important intermediate product in steel production, and hot rolling is a crucial intermediate process.The relationship between the slab allocation problem and the hotrolling scheduling problem is shown in Figure 1.Establishing reasonable slab allocation schemes and hot-rolling schedules has many benefits, for example, ensuring the continuity of the production process, improving product quality, increasing work efficiency, reducing energy consumption, and saving enterprise costs.Given the complexity of the steel production process, a wide variety of specifications for intermediate products, and frequent fluctuations between actual products and customer orders, a large number of open-order slabs are often produced.For example, the produced slab might not meet the requirements of the customer order or subsequent units; the customer might request a temporary cancellation or ask for changes to the order; there might be manual disengagement in the order caused by unreasonable slab allocation; and manual operation errors might occur.Open-order slab backlogs take up a large amount of space in inventories and can be expensive; thus, they need to be dealt with in a timely fashion.The slab allocation problem refers to matching slabs and orders based on a manyto-one relationship between a slab's specification attributes and an order's requirements, thus improving and optimizing the unreasonable allocation relationship at the same time.
Only the slab is allocated to a deterministic order; we can know how thick the slab will be rolled, so only the allocated slab can be included in the rolling schedule.Furthermore, only the slab programmed into the hot-rolling schedule can be rolled.The problem of hot-rolling production scheduling refers to the reasonable formulation of a slab rolling sequence within a certain period to meet the relevant rolling schedule and rescheduling optimization due to abnormal situations, such as rolling mill failures.Specifically, this is based on the delivery time and priority level of multiple customer orders (slabs in the preselection pool) and multiple rolling units; i.e., slab processing sequences are compiled at one time.Each rolling unit consists of many slabs.In the same rolling unit, the jumping values of the adjacent slab's width, thickness, and hardness must meet rolling specification requirements; otherwise, the loss of rolling equipment in the steel enterprise will increase.Many rolling units are arranged in a regular order to form a rolling schedule.Different rolling units correspond to different rolls, so it is necessary to stop the machine and replace the rolls after producing one rolling unit.Because of the high start-up cost of changing rolls, the replacement of rolls should be reduced as much as possible to ensure production quality.In addition, the quality of hot-rolling scheduling directly affects the quality of materials needed by downstream units.
In the hot-rolling process, a slab needs to be heated in the heating furnace first and then rolled after it reaches a certain temperature.If the slab has a high temperature before entering the heating furnace, this process is called 'hot delivery and hot charging'.Increasing the ratio of 'hot delivery and hot charging' is conducive to energy savings and consumption reduction.However, even if a slab has been allocated for an order, if it has not been included in the hot-rolling schedule, it usually is left to wait and cannot be rolled in time.In addition, if the slab allocation scheme is not coordinated with the rolling schedule, the number of slab 'stacking' [3] incidents will increase, thus increasing the extra logistics scheduling costs.At present, planners only consider slab-rolling schedule constraints when compiling hot-rolling schedules.However, slab allocation and slab hot-rolling scheduling are two interrelated and complementary processes.Considering the two processes individually will make the connection between processes unsmooth.Therefore, it is necessary to integrate the slab allocation process with the hot-rolling scheduling Given the complexity of the steel production process, a wide variety of specifications for intermediate products, and frequent fluctuations between actual products and customer orders, a large number of open-order slabs are often produced.For example, the produced slab might not meet the requirements of the customer order or subsequent units; the customer might request a temporary cancellation or ask for changes to the order; there might be manual disengagement in the order caused by unreasonable slab allocation; and manual operation errors might occur.Open-order slab backlogs take up a large amount of space in inventories and can be expensive; thus, they need to be dealt with in a timely fashion.The slab allocation problem refers to matching slabs and orders based on a manyto-one relationship between a slab's specification attributes and an order's requirements, thus improving and optimizing the unreasonable allocation relationship at the same time.
Only the slab is allocated to a deterministic order; we can know how thick the slab will be rolled, so only the allocated slab can be included in the rolling schedule.Furthermore, only the slab programmed into the hot-rolling schedule can be rolled.The problem of hot-rolling production scheduling refers to the reasonable formulation of a slab rolling sequence within a certain period to meet the relevant rolling schedule and rescheduling optimization due to abnormal situations, such as rolling mill failures.Specifically, this is based on the delivery time and priority level of multiple customer orders (slabs in the pre-selection pool) and multiple rolling units; i.e., slab processing sequences are compiled at one time.Each rolling unit consists of many slabs.In the same rolling unit, the jumping values of the adjacent slab's width, thickness, and hardness must meet rolling specification requirements; otherwise, the loss of rolling equipment in the steel enterprise will increase.Many rolling units are arranged in a regular order to form a rolling schedule.Different rolling units correspond to different rolls, so it is necessary to stop the machine and replace the rolls after producing one rolling unit.Because of the high start-up cost of changing rolls, the replacement of rolls should be reduced as much as possible to ensure production quality.In addition, the quality of hot-rolling scheduling directly affects the quality of materials needed by downstream units.
In the hot-rolling process, a slab needs to be heated in the heating furnace first and then rolled after it reaches a certain temperature.If the slab has a high temperature before entering the heating furnace, this process is called 'hot delivery and hot charging'.Increasing the ratio of 'hot delivery and hot charging' is conducive to energy savings and consumption reduction.However, even if a slab has been allocated for an order, if it has not been included in the hot-rolling schedule, it usually is left to wait and cannot be rolled in time.In addition, if the slab allocation scheme is not coordinated with the rolling schedule, the number of slab 'stacking' [3] incidents will increase, thus increasing the extra logistics scheduling costs.At present, planners only consider slab-rolling schedule constraints when compiling hot-rolling schedules.However, slab allocation and slab hotrolling scheduling are two interrelated and complementary processes.Considering the two processes individually will make the connection between processes unsmooth.Therefore, it is necessary to integrate the slab allocation process with the hot-rolling scheduling process.In this way, the ratio of 'hot delivery and hot charging' and the material utilization rate can not only be significantly improved but the logistics production cost can also be greatly reduced.
The slab allocation and hot-rolling scheduling integrated optimization problem researched in this paper can be summarized as follows: based on the slab rolling orders of iron and steel enterprises, the allocation relationship between slabs and orders can be optimized to satisfy the constraints of slab allocation and rolling process specifications; thus, the slab rolling schedules of hot-rolling mills can be formulated at the same time.Transforming and integrating these two relatively isolated material arrangement schemes into a unified and dynamic decision-making whole can accurately balance logistics, thus providing effective support to sales departments in ordering work and finally reasonably expanding the production capacity of the whole rolling unit and balancing resource distribution.
Slab allocation and hot-rolling scheduling integrated optimization is not only of great significance but is also challenging [4].Firstly, smooth production of the hot-rolling mill mainly depends on the exact scheduling sequence of slabs, and the hot-rolling mill is operated according to the sequence of one order followed by another, with each order containing many pieces of slabs.Therefore, in addition to coordinating the orders' rolling sequence and the slabs' rolling sequence within the rolling units, it is also necessary to formulate the allocation relationship between the slabs and orders.Any mistake in the middle will affect the overall production and product quality, which will impact the whole process.Secondly, steel production is a complicated process.Faults in production equipment, fluctuations in the composition of raw materials, changes in production operation conditions, errors in the control process, approximations in mechanism models, etc., can lead to deviations in the quality and specifications between the produced slab and the original design.Thus, it is necessary to adjust the allocation relationship between the slab and the order.Thirdly, there is a lot of equipment involved in hot-rolling production lines, and hot-rolling schedules are long and complex.This means that we not only need to consider equipment maintenance and transportation costs but also account for the connection between steelmaking and cold rolling.Therefore, it is quite challenging to work out reasonable slab allocations and hot-rolling production schedules simultaneously.Thus, this is also a technical problem that needs to be urgently solved in the field of iron and steel production; that is, we need to synchronize the data and information flow regarding slab allocation and hot-rolling scheduling to achieve real, integrated production management.
The slab allocation problem and the hot-rolling scheduling problem in iron and steel enterprises have a large amount of data and complex constraints.When considering all aspects of process-planning constraints, we should pursue several goals, such as minimizing differences between slab allocations and orders; minimizing production transition costs caused by specification changes in slabs; minimizing slab waiting times; and minimizing the processing and switching costs of adjacent orders.At present, this problem is generally solved through manual operation by planners, that is, by first manually allocating and then rolling based on a manually arranged hot-rolling schedule.However, it is difficult to achieve global optimization via manual allocation and hot-rolling schedules, which leads to poor production smoothness and hinders production efficiency improvements.More advanced enterprises will use ERP (enterprise resource planning) systems to achieve better information management.However, a common problem with these ERP systems is that they are mainly used to sort and screen existing data, and they lack the ability to change parameters dynamically according to production requirements or provide high-quality allocation schemes and rolling schedules automatically.Therefore, intelligent optimization methods are needed to achieve efficient global optimization.
The differential evolution algorithm is an intelligent optimization algorithm first proposed by Kenneth Price and Rainer Storn in 1995 [5].It ensures the survival of the fittest among individuals by simulating the natural selection laws of competition and cooperation in the evolutionary process [6] of biological populations [7].It has been used to solve many practical problems and has good global search abilities and robustness.The slab allocation and hot-rolling scheduling integrated optimization problem is complex, large-scale, and has many constraints.While the differential evolution algorithm has fewer parameters, it can effectively reduce the complexity of algorithms and is suitable for solving optimization problems in large-scale and complex environments.There are many-to-one correspondences between slabs and orders and between slabs and rolling units, which shows that this problem requires a complex algorithm.The differential evolution algorithm has flexible coding modes, is easy to implement, and has strong operability and feasibility.Therefore, the differential evolution algorithm is suitable for solving this problem.
To sum up, research on the integrated optimization of slab allocations and hot-rolling scheduling has the following benefits: (1) By integrating slab allocation with the hot-rolling scheduling process, the ratio of 'hot charging and hot delivery' can be improved, energy consumption and logistics costs can be reduced, and enterprise profit margins can be improved.(2) By considering hot-rolling scheduling in the process of slab allocation, the allocation and hot-rolling production costs can be comprehensively coordinated, and the hotrolling switching costs caused by unreasonable feeding can be reduced.(3) This can quickly generate high-quality, large-scale slab allocation schemes and effective hot-rolling schedules, thus reducing inventory costs and workers' work intensity and improving resource allocation, work efficiency, product quality, timely delivery, production management levels, and enterprise benefits.(4) The differential evolution algorithm can solve the slab allocation and hot-rolling scheduling integrated optimization problem, which not only provides a theoretical reference for solving similar large-scale practical problems but also expands the differential evolution algorithm's application field.
The rest of this paper is organized as follows.Section 2 summarizes the related literature.The integrated optimization problem is described, and the model is constructed in Section 3. Our proposed improved differential evolution algorithm is introduced in Section 4. Section 5 shows the experimental results and analytics for the practical problem.Finally, Section 6 elaborates on the conclusion and discusses future work.

Literature Review
Our literature review on the problem of integrating the slab allocation problem and the hot-rolling scheduling problem will focus on the following two aspects: the related problems and the related methods.

Slab Allocation Problem
The relevant research on the slab allocation problem is limited and outdated.Based on the different types of slabs and orders, slab allocation problems can be divided into three categories: open-order slab allocation problems [8], slab re-allocation problems [9], and selfdrawn order-grouping problems [10].Among them, the open-order slab allocation problem refers to allocating surplus slabs that have not been allocated to orders to customer orders to improve the utilization of slabs.Lv et al. [11] solved a stochastic surplus open-order slab allocation problem using a scenario-based modeling approach and the scatter search algorithm.The slab re-allocation problem is also a full-order slab allocation problem; this involves reallocating a full-order slab that has been allocated to one order to a new customer order to further optimize and adjust the relationship between the full-order slab and customer order, shortening the completion time of the customer orders and improving the level of customer satisfaction.Tang et al. [9] transformed an integer nonlinear programming model into a mixed-integer linear programming (MILP) model and proposed a heuristic algorithm based on a tabu search to obtain satisfactory solutions efficiently for the slab reallocation problem in the steel industry.The self-drawn order-grouping problem refers to a virtual order created by iron and steel enterprises when an inventory is overstocked; that is, open-order slabs with overlapping upper and lower rolling width limits are divided into groups to quickly 'digest' the inventory.Lv and Wang [10] adopted a method based on data analysis to study whether it is better to group a self-drawn order immediately or wait for a potential customer order to arrive when there is no suitable customer order for the surplus slab.

Hot-Rolling Scheduling Problem
Compared with the slab allocation problem, the relevant research on the hot-rolling scheduling problem is relatively rich and diversified.However, most research on the hot-rolling scheduling problem defaults to the conclusion that the allocation relationship between the slab and order has already been determined.In essence, the hot-rolling scheduling problem can be defined as a multiple traveling salesman problem [12] or a vehicle routing problem [13].Tang et al. [12] proposed a multiple traveling salesman problem model for hot-rolling scheduling in iron and steel complexes and solved it using a modified genetic algorithm.Tang and Wang [13] presented the prize-collecting vehicle routing problem (PCVRP), a variant of the classical vehicle routing problem, which is derived from hot-rolling production in the iron and steel industry.One major characteristic of the PCVRP is that the customers need not be visited compulsorily; instead, a prize can be collected from each customer when visiting them.In addition to a capacity constraint, the model also introduced a task completion constraint, which requires the total demand of visited customers to be no less than a predetermined amount.Li and Tian [14] also investigated a PCVRP extracted from an actual hot-rolling production process.They developed a two-level self-adaptive variable neighborhood search algorithm based on two decision levels in the PCVRP, namely, the selection of customers to visit and vehicle scheduling by selected customers.To obtain the lower bound of the PCVRP, the mixedinteger programming model of the proposed PCVRP was transformed into an equivalent traveling salesman problem model by using the graph expansion method.Özgür et al. [15] reviewed the planning and scheduling methods of hot-rolling mills in iron and steel production around the following aspects: constraints included in the analysis, objective functions (or optimization criteria) employed, the optimization algorithm used, and the experimental data included.

Integration Optimization Problem
As can be seen from the above literature review, the biggest gap of the integration optimization problem lies in the fact that, in the previous literature, the slab allocation problem and the hot-rolling scheduling problem are generally researched separately.To make up for this gap, this paper integrates the two sub-problems, so as to achieve the global optimal decision from a broader perspective.Fortunately, the research on integration optimization problem from other related industries can provide us with some context.A knowledge network system was developed by Yang et al. [16] based on the needs of the modern iron and steel enterprise integrated production management.They proposed a model knowledge representation and intelligent matching mechanism.Li et al. [17] researched the integrated problem of soaking pit heating and hot rolling scheduling in steel plants.They provided a fast heuristic algorithm with worst-case bound to generate nearoptimal solutions, and a branch and bound algorithm to solve the problem to optimality.Tan et al. [18] designed a hybrid algorithm that combines mixed-integer programming and constraint programming to solve a scheduling problem in a steel plant, referring to continuous casting, reheating furnace, and hot-rolling processes.

Heuristic Algorithm
Regarding the methods for solving hot-rolling scheduling problems in previous studies, the heuristic algorithm is clearly the first choice.Pan et al. [19] proposed a mathematical model and two-stage heuristic for hot-rolling scheduling in compact strip production.Puttkammer et al. [20] used a greedy randomized adaptive search procedure heuristic for the hot strip mill scheduling problem under consideration of energy consumption.The heuristic algorithm is generally simple, short in solving time, and strong in stability, but its shortcomings are also obvious.On the one hand, the solution obtained by the heuristic algorithm can only guarantee feasibility, not optimality.On the other hand, the heuristic algorithm is generally designed according to the characteristics of a specific problem and has no generalization.As the intelligent optimization algorithm can make up for these disadvantages, the heuristic algorithm is also often combined with intelligent optimization algorithm in the literature.Hu et al. [21] developed a heuristic method combining an improved ant colony extended algorithm with local search procedures dedicated to the hot strip mill production scheduling problem.To research a multi-objective hot-rolling scheduling problem in the compact strip production, Pan et al. [22] adopted an improved hot-rolling scheduling heuristic to solve the sheet-strip assignment problem and a multiobjective evolutionary algorithm to find the Pareto optimal or near-optimal solutions for the sheet-strip sequencing problem.

Differential Evolution Algorithm
Compared with the heuristic algorithm, the differential evolution algorithm has stronger global search ability and more flexible application.Generally speaking, improving a differential evolution algorithm [23] involves improving the control parameters, the mutation strategy [24], the crossover strategy, the selection strategy, and gene population recombination.Some scholars have used differential evolution algorithms to study problems related to scheduling.Li and Fang [25] proposed a differential evolution algorithm based on an evolutionary direction to solve the robust multi-objective optimization problem of rolling schedules in tandem with cold rolling.Their algorithm calculated the horizontal angle of the vector, which was used to choose the mutation vector.The chosen vector contained the convergence direction, which changed the random mutation operation in the differential evolution algorithm.Chakraborti and Kumar [26] addressed the problem of minimizing the hot-rolling time for an ingot from a given initial thickness to a prescribed final one, subject to a number of system constraints, by using a multi-population genetic algorithm and a differential evolution algorithm.To solve the problem of dynamic scheduling in steelmaking-continuous casting production, Tang et al. [27] proposed an improved differential evolution algorithm with a real-coded matrix representation for each individual in the population, a two-step method for generating the initial population, and a new mutation strategy.Zhao et al. [28] proposed a hybrid differential evolution algorithm to estimate the distribution of that algorithm based on a neighborhood search for a job shop scheduling problem.To strengthen the searchability of their algorithm, a chaotic strategy was introduced to update the parameters of the DE.Two mutation operators were used.A neighborhood search algorithm based on blocks on a critical path was adopted to further improve the solution quality.

Problem Description
The allocation difference cost between a slab and an order has five aspects, namely, steel grade, weight, width, length, and deformation.Based on the premise of satisfying allocation specification constraints, order weight constraints, and allocation mode constraints, solving the slab allocation problem involves maximizing the number of open-order slabs allocated to an order, minimizing the quality and specification differences between the slab and order, satisfying the priority requirements of the slab and order to the greatest extent, and improving the integrity of the order as much as possible.When the order processing sequence is found, the outbound sequence of the slabs can be obtained based on the allocation relationship between the slab and order.
A hot-rolling schedule consists of several rolling units, as shown in Figure 2. Every time a rolling unit is rolled, a roll-changing operation must be carried out.A rolling unit is composed of many slabs, and this characterizes the rolling sequence of a group of slabs.A complete rolling unit consists of two parts: the hot-roll material and the main body material.The slab sequence in the rolling unit has a 'double trapezoidal' structure in terms of width, which is similar to a 'tortoise shell'.A positive trapezoid is part of the hot-roll material, and its slab width changes incrementally.The main purpose of hot-roll material is to heat rolls during the initial rolling, make the roll's thermal expansion uniform, and ensure the quality of the subsequent strip steel.Generally, their quantity is small, and they are easy to make.The reverse trapezoid is part of the main body material.The slab width of the main body material is decreased to ensure the quality of hot-rolled products and operational stability.The main body material is the main component of the rolling unit, and it comes in large quantities; thus, it needs to meet many program constraints when making a schedule.
between the slab and order, satisfying the priority requirements of the slab and order to the greatest extent, and improving the integrity of the order as much as possible.When the order processing sequence is found, the outbound sequence of the slabs can be obtained based on the allocation relationship between the slab and order.
A hot-rolling schedule consists of several rolling units, as shown in Figure 2. Every time a rolling unit is rolled, a roll-changing operation must be carried out.A rolling unit is composed of many slabs, and this characterizes the rolling sequence of a group of slabs.A complete rolling unit consists of two parts: the hot-roll material and the main body material.The slab sequence in the rolling unit has a 'double trapezoidal' structure in terms of width, which is similar to a 'tortoise shell'.A positive trapezoid is part of the hot-roll material, and its slab width changes incrementally.The main purpose of hot-roll material is to heat rolls during the initial rolling, make the roll's thermal expansion uniform, and ensure the quality of the subsequent strip steel.Generally, their quantity is small, and they are easy to make.The reverse trapezoid is part of the main body material.The slab width of the main body material is decreased to ensure the quality of hot-rolled products and operational stability.The main body material is the main component of the rolling unit, and it comes in large quantities; thus, it needs to meet many program constraints when making a schedule.The hot-rolling scheduling process is divided into the following steps: determining the planning quantity, establishing the preselection pool, determining the preparation schedule, and adjusting the schedule.When making the planning sequence, the hot delivery slab should be considered first to ensure the continuity of production.Secondly, hotcharging slabs should be used to shorten the slab's heating time in the heating furnace.Finally, cold slabs should be used in the warehouse, which can avoid energy waste.When making hot-rolling schedules, the following requirements should be met: (1) The hardness and thickness of the slab need to change smoothly.(2) The strip width of the main body material should be decreased in general, and a rolling length of the same width cannot exceed a certain upper limit.(3) To reduce the number of roll changes, the total rolling length of the whole rolling unit should be less than the maximum allowable rolling length of the roll and should not be less than the minimum rolling length as much as possible.
Based on the above analysis, the integration problem of slab allocation and hot-rolling scheduling studied in this paper can be described as follows: given a slab set, an order set, a rolling unit set, and a position set in the rolling unit; under the conditions of satisfying the allocation mode constraint, the order excess constraint, and the rolling scheduling constraint; optimizing the allocation relationship between the slab and order; and making the best slab-rolling schedule, we can minimize the allocation costs of attribute differences between the slab and order, the switching cost of adjacent slab processing, the waiting time after the slab arrives at the rolling unit, and the switching cost of adjacent order processing.The hot-rolling scheduling process is divided into the following steps: determining the planning quantity, establishing the preselection pool, determining the preparation schedule, and adjusting the schedule.When making the planning sequence, the hot delivery slab should be considered first to ensure the continuity of production.Secondly, hot-charging slabs should be used to shorten the slab's heating time in the heating furnace.Finally, cold slabs should be used in the warehouse, which can avoid energy waste.When making hot-rolling schedules, the following requirements should be met: (1) The hardness and thickness of the slab need to change smoothly.(2) The strip width of the main body material should be decreased in general, and a rolling length of the same width cannot exceed a certain upper limit.(3) To reduce the number of roll changes, the total rolling length of the whole rolling unit should be less than the maximum allowable rolling length of the roll and should not be less than the minimum rolling length as much as possible.
Based on the above analysis, the integration problem of slab allocation and hot-rolling scheduling studied in this paper can be described as follows: given a slab set, an order set, a rolling unit set, and a position set in the rolling unit; under the conditions of satisfying the allocation mode constraint, the order excess constraint, and the rolling scheduling constraint; optimizing the allocation relationship between the slab and order; and making the best slab-rolling schedule, we can minimize the allocation costs of attribute differences between the slab and order, the switching cost of adjacent slab processing, the waiting time after the slab arrives at the rolling unit, and the switching cost of adjacent order processing.

Parameters
i, h index of slabs participating in the allocation; j, s index of orders participating in the allocation; l, l 1 , l 2 index of rolling units; k index of positions in the rolling unit; I set of slabs participating in the allocation; J set of orders participating in the allocation; L set of rolling units; K set of positions in the rolling unit; c ij allocation difference cost for allocating slab i to order j; d ih switching cost of slab i produced immediately before slab h; f js switching cost of order j produced immediately before order s; F 1 weight coefficient of the allocation specification difference penalty in the objective function; F 2 weight coefficient of the switching cost of the adjacent slab in the objective function; F 3 weight coefficient of the slab waiting time in the objective function; F 4 weight coefficient of the switching cost of the adjacent order in the objective function; p i treatment time of slab i; r i arrival time of slab i; D j the demand of order j; τ j the delivery date of order j in the hot-rolling process; w i weight of slab i; T g roll changing time; T 0 treatment time of the hot-roll material; M a large positive number.

Decision Variables
x ij = 1, if slab i allocated to order j 0, else ; if slab i is processed immediately before slab h in the hot rolling unit l 0, else ; z ikl = 1, if slab i is allocated to the k th position of hot rolling unit l 0, else ; u jsl = 1, if order j is processed immediately before order s in the hot rolling unit l 0, else ; 1, if hot rolling unit l 1 is processed immediately after unit l 2 0, else ; α i starting processing time of slab i; β i completion time of slab i; δ l starting processing time of hot-rolling unit l; ε l completion time of hot-rolling unit l;

Model
An integer programming (IP) model can be formulated as follows.Minimize Subject to x ij + x hs + y ihl − 2 ≤ u jsl , ∀i, h ∈ I, j, s ∈ J, l ∈ L (9) x ij ∈ {0, 1}, ∀i ∈ I, j ∈ J (21) In the model, Formula (1) is the objective function of the slab allocation and hot-rolling scheduling integration problem, where the first term is the attribute difference allocation cost between the slab and order, the second term is the switching cost of adjacent slab processing, the third term is the waiting time after the slab reaches the rolling mill, and the fourth term is the switching cost of adjacent order processing.Constraints (2)-( 27) are the constraints of the slab allocation and slab hot-rolling scheduling integrated problem model, in which Constraint (2) represents the allocation pattern constraint; that is, each slab can only be allocated to one order.Constraint (3) is the order excess constraint; that is, if the order is excessive after allocation, the excess weight cannot be greater than the weight of the minimum slab allocated to the order.Constraint (4) ensures that only one slab can be processed at most at each position of each rolling unit.Constraint (5) ensures that each slab can only be processed at one position of a rolling unit at most.Constraint (6) defines the relationship between the tight front and tight back during slab processing on the rolling unit.Constraint (7) ensures that if a slab is arranged at a certain position on a rolling unit, there must be another slab arranged immediately before it.Constraint (8) ensures that only after the slab is allocated to a certain order can it be discharged into the schedule.Constraint (9) defines the processing relationship before and after the order.Constraints ( 10)-( 11) define the time when the rolling unit starts processing.Constraint (12) requires that the rolling unit's starting time is later than the first slab's arrival time on the rolling unit.Constraints ( 13)-( 14) define the starting time of the first slab on each rolling unit.Constraints ( 15)-( 18) define the completion time of slab processing.Constraint (19) ensures that the slab can be processed only after it arrives.Constraint (20) requires that all slabs allocated to an order be rolled before the delivery date of the order in the hot-rolling process.Constraints ( 21)-( 27) define variable ranges.
From the objective function of Formula ( 1), it can be concluded that the model in this paper is a 0-1-integer programming model.This kind of model is an NP-hard problem [29], and the optimal solution to the problem cannot be obtained in polynomial time.CPLEX is generally only suitable for solving small-and medium-sized practical problems, and it requires much solving time, which is insufficient in meeting the needs of actual production.Based on this, this paper proposes an improved differential evolution algorithm that can solve large-scale practical problems quickly.

Algorithm
Given the characteristics of the slab allocation and hot-rolling scheduling integration problem, a differential evolution algorithm [30] can be used to solve it.Classical differential evolution algorithms include several steps, such as population initialization, mutation, crossover, and selection.In this paper, the differential evolution algorithm is improved in the following aspects.The initial population is generated by heuristic and random methods.Two mutation modes are combined to randomly produce mutant individuals.The operation of repairing infeasible solutions is added by finding remainders.Poor individuals in the gene pool are updated.The pseudocode of the improved differential evolution algorithm is provided in Algorithm 1.

Coding and Decoding Strategy
In this paper, given the characteristics of the slab allocation and hot-rolling scheduling integration problem, an efficient encoding and decoding strategy based on real numbers is proposed; it can express slab allocation schemes and rolling schedules at the same time.Each algorithm's solution represents an individual and corresponds to a relationship between the slab, order, or rolling unit.The maximum number of codes is expressed as the number of slabs participating in the allocation.Assuming that the number of slabs participating in the allocation is N, the coding bits are {0, 1, 2, . . ., N − 1}.Assuming that the number of orders participating in the allocation is B, the value range of the integer part of each coding value (gene) is {−1, 0, 1, 2, . . ., B − 1}.When the value of the integer part of the gene is −1, it means that the slab is not allocated to any order.At this point, the value of the decimal part is zero, which means that only the slab allocated to one particular order can participate in the rolling schedule.When the integer part of the gene is {0, 1, 2, . . ., B − 1}, this means that the slab is allocated to the corresponding order.If the number of rolling units is E, the value range of the decimal part is {0, 1, 2, . . ., E − 1}.The algorithm's encoding method is illustrated with a concrete example, as shown in Table 1.The code in Table 1 has five bits, which means that there are five slabs participating in the allocation; that is, N = 5.The dimension of each individual in the differential evolution algorithm is five.The value encoded by each bit in the code represents the value of each individual gene.For example, the coding value of coding bit 1 is 2.6, which means that slab No. 1 is allocated to order No. 2 and assigned to rolling unit No. 6.The coding value of coding bit 3 is −1.0, which means that slab No. 3 is not allocated to any order, so it cannot be rolled.In the same way, slabs No. 0, No. 2, and No. 4 are allocated to orders 3, 4, and 0, respectively, and distributed to rolling units No. 2, No. 5, and No. 8, respectively.The advantage of this coding method is that it is consistent with the actual structural features of the problem.Because the values of the coding bits of the integer and decimal parts are one case at most, in the subsequent operation, it can be guaranteed that each slab can only be allocated to one order at most; this also ensures that the slab can only be assigned to one position on a rolling unit at most.

Population Initialization
The population size is set to NP; that is, the initial population contains NP individuals.This paper uses two methods to construct the initial population: one is to construct different heuristic algorithms, and the other is to adopt the stochastic strategy.These two methods have different advantages and disadvantages.Based on the actual characteristics of the problem, and combined with the actual production process, heuristic algorithms significantly improve the quality of solutions in the initial population, but the number and the diversity of solutions are limited.Initial solutions generated by a random method can obtain various characteristics, and the number of solutions can be freely scaled according to the scale of the problem, but the quality of the solutions cannot be guaranteed.In this paper, three heuristic algorithms are used to generate the initial solutions: according to the order demand, according to the slab width, and according to the slab thickness.The three heuristic algorithms are briefly introduced below.
Heuristic 1 is based on the order demand.The order demand is sorted from large to small, and the orders are assigned to the corresponding rolling units according to their rolling capacity.Then, the slabs are assigned to the corresponding positions of the rolling units according to the arrival time of the slabs, the processing time of the slabs, and the starting time of the rolling units.Heuristic 2 is based on slab width.The slab is classified according to its width.As much as possible, slabs with the same or similar widths should be classified into one class.Then, according to the weight of the slabs, the slabs are divided into corresponding orders.Next, slabs with the same attributes are divided into one rolling unit according to the rolling capacity of the rolling units as much as possible.Finally, the rolling schedule is arranged according to the arrival time of the slabs.
Heuristic 3 is based on slab thickness.The slab is classified according to its thickness.As much as possible, slabs with the same or similar thickness should be classified into one class.Then, according to the weight of the slabs, the slabs are divided into corresponding orders.Next, slabs with the same attributes are divided into one rolling unit according to the rolling capacity of the rolling units as much as possible.Finally, the rolling schedule is arranged according to the arrival time of the slabs.

Mutation Strategy
In a differential evolution algorithm, mutation is an individual-based operation.To reduce the probability of the algorithm falling into a local optimum, based on the mutation operation of the basic differential evolution algorithm, we propose that multiple parent individuals participate in the mutation simultaneously so that some mutant individuals can change greatly.This not only increases the population diversity but also improves the algorithm's optimization ability.The mutation formula is shown in Equation (28).
where x i (g) represents the i-th individual in the g-th generation population.r 1 , r 2 , r 3 , r 4 , and r 5 represent five different individuals randomly selected from the population as parent individuals to participate in the mutation operation.F is the scaling factor, which is used to control the step size of the differential vector.rand(0,1) represents a random real number between 0 and 1. R is a predetermined parameter value.v i (g + 1) represents the mutated individual, which automatically enters the next generation and becomes the i-th parent individual of the g + 1-th generation population.

Crossover Operation
In a differential evolution algorithm, crossover is an operation based on each gene of an individual.The genes of the crossover individual are randomly determined by the genes of the parent individual and mutant individual together.The specific operation mode is shown in Equation (29).
where x i,j (g) represents the j-th gene of the i-th individual in the g-th generation population.v i,j (g + 1) represents the j-th gene of the i-th mutant individual in the g + 1-th generation population.u i,j (g + 1) represents the j-th gene of the i-th crossover individual in the g + 1-th generation population.CR stands for crossover probability.The smaller the CR, the greater the contribution of the parent individual to the crossover individual, the faster the convergence speed, and the stronger the exploitation ability of the algorithm in a small range.In contrast, if the CR is larger, the mutation individual contributes more to the crossover individual, which is not conducive to accelerating the convergence speed of the algorithm, but it does enhance the exploration ability of the algorithm.rand(i) represents a random integer between [1, N], and j = rand(i) ensures that at least one coding bit in the crossover individual inherits something from the mutant individual; otherwise, there is a small probability that the crossover individual will be exactly the same as the parent individual.Because the solutions obtained by the crossover operation may be infeasible, it is necessary to repair the infeasible solutions before the selection operation.

Reparation Strategy
There are two kinds of infeasible solutions produced by crossover operations: one where the slab weight and the order demand violate the allocating condition, and one where the number of rolling units or rolling positions exceeds the boundary.The specific reparation strategy steps are as follows.
Step 1: Remove the slab that does not meet the allocating requirements from the allocated order.
Step 2: Sort according to the remaining order demand, from large to small, and allocate the open-order slabs to the order in turn.
Step 3: Judge whether the current slab is the last open-order slab.If so, the algorithm ends.Otherwise, go to Step 2.
Step 4: Sequentially perform the remainder operation for the integer bits and decimal bits of the out-of-bounds code until it meets the requirements.

Selection Operation
The selection operation is carried out according to Equation (30): where f (x i (g)) represents the fitness value of the i-th individual in the g-th generation population.In the same way, f (u i (g + 1)) represents the fitness value of the i-th crossover individual in the g + 1-th generation population.x i (g + 1) represents the newly generated offspring, that is, the i-th individual in the g + 1-th generation population.Equation (28) means that the best parent individual and crossover individual are selected to enter the next generation to form a next-generation population.Because a minimization model is constructed in this paper, the selection operation is carried out in the following ways: (1) If both solutions are feasible, the individual with the smaller fitness value is preferentially selected to enter the next-generation population.(2) If the infeasible solution and the feasible solution exist at the same time, the feasible solution is preferentially selected to enter the next-generation population.(3) If both solutions are infeasible, the solution with fewer constraint violations is preferentially selected to enter the next-generation population.

Instances and Platform
The experimental data are obtained by randomly selecting 14 groups of data of different sizes based on the actual production process of a large domestic iron and steel enterprise.The commercial software CPLEX 12.6 is used to solve the mathematical model of the slab allocation and hot-rolling scheduling integrated optimization problem described in Section 3.2.The improved differential evolution algorithm and other comparison algorithms are implemented using the C + + programming language.The experimental hardware configuration is an Intel (R) Core Q9550 CPU @ 2.83 GHz with 3.2 GB RAM.

Parameter Settings
The experimental parameters of the classical differential evolution algorithm and improved differential evolution algorithm are set as follows: the population size, NP, is set to 20; the mutation factor, F, is set to 0.5; the crossover factor, CR, is set to 0.5; and the algorithm's maximum iteration number, G max , is set to 500 generations.The CPLEX stop condition is a memory overflow or running for more than 3600 s.

Comparison Algorithms
The comparison algorithms include CPLEX, the simulated artificial method, and a classical differential evolution algorithm.A heuristic method based on artificial experience, used by most domestic iron and steel enterprises, is adopted as the simulation's artificial method.The main steps are as follows: Firstly, the orders are sorted from large to small according to their insufficient quantities; then, the orders with large insufficient quantities are preferentially allocated without violating the constraints of the allocation relationship until all orders have no insufficient quantities.Secondly, based on the total weight of the slabs that need to be rolled and the rolling capacity of the rolling unit, the number of rolling units is roughly estimated; then, the slabs are reasonably distributed to the corresponding rolling units according to the time after the slabs arrive at the rolling unit.Thirdly, based on the time after the slabs arrive at the rolling unit, the slab-processing time, and the starting rolling time of the rolling units, the slab-rolling sequence in the rolling units is arranged in turn.

Experimental Results and Discussion
Both the CPLEX and simulated manual methods are run once to obtain results.To eliminate the influence of random errors, the means and variances in the classical differential evolution algorithm and improved differential evolution algorithm are obtained via statistics after running 20 experiments independently.In addition, the significant differences between the classical differential evolution algorithm and improved differential evolution algorithm are identified by executing a non-parametric Wilcoxon Statistical Test.In particular, the significance level is set to 0.05 (5%).Moreover, '-', '+', and '=' indicate that the improved differential evolution algorithm achieves significantly better, significantly worse, and equal performance relative to the classical differential evolution algorithm, respectively.The statistical fitness value and solving time are shown in Table 2, where 'AVG' represents average fitness value, 'SD' represents standard deviation of fitness value, and 'Sig.' represents significance test results.'SA' represents the simulated artificial method, 'CDE' represents the classical differential evolution algorithm, and 'IDE' represents the improved differential evolution algorithm.'Deviation' refers to the percentage difference between the optimal value obtained by CPLEX and the results obtained by the other three algorithms.'-' indicates that CPLEX cannot solve the instances at these scales, and these items are not compared.In Figure 3, the abscissa represents the instance scale, and the ordinate represents the fitness value obtained by the algorithm.The blue and orange columns represent the fitness values obtained by CPLEX and the improved differential evolution algorithm, respectively.The absence of blue columns in the last four instances shows that CPLEX can only find solutions to small-and medium-scale instances; it cannot find solutions to large-scale instances.However, the improved differential evolution algorithm can find solutions to all-scale instances.Purple and green lines represent the fitness values obtained by the simulated artificial method and the classical differential evolution algorithm, respectively.The orange columns are always below the green lines, which shows the effectiveness of the heuristic initial solution and multi-mutation operator strategy in the improved differential evolution algorithm.
In Figure 4, the abscissa represents the problem scale, and the ordinate represents the solving time.Blue and orange columns represent the CPLEX and improved differential evolution algorithm solving times, respectively.The first five instances do not appear in the column chart because the solving time is zero and because the CPLEX and improved differential evolution algorithm solving time is very small (less than 2.3 s) when calculating the first five small-scale instances.Furthermore, the ratio is very small compared with the latter medium-and large-scale instances; it is not in an order of magnitude, so it cannot be displayed in the chart.Similarly, the absence of blue columns in the last four instances shows that these scale instances cannot be solved by CPLEX within the specified time.It can be seen that the CPLEX solving time increases rapidly with the increased problem scale, while the increased improved differential evolution algorithm solving time is relatively stable, which verifies the efficiency of the improved differential evolution algorithm.
The convergence curves of the improved differential evolution algorithm and classical differential evolution algorithm are shown in Figure 5, where the blue and red curves represent the improved differential evolution algorithm and classical differential evolution algorithm, respectively.Because of the limited space, only two instances are randomly selected.
In Figure 5a, the initial starting point of the improved difference evolution algorithm is lower than that of the classical differential evolution algorithm.The reason for this is that the improved difference evolution algorithm replaces three random solutions with three feasible solutions in the initial population.Later, both of them quickly find the same optimal value.In Figure 5b, the classical differential evolution algorithm falls into local optimum in the 200th generation.However, the improved differential evolution algorithm finds a better solution.This shows the effectiveness of the improved mutation strategy.
In Figure 5a, the initial starting point of the improved difference evolution algorithm is lower than that of the classical differential evolution algorithm.The reason for this is that the improved difference evolution algorithm replaces three random solutions with three feasible solutions in the initial population.Later, both of them quickly find the same optimal value.In Figure 5b, the classical differential evolution algorithm falls into local optimum in the 200th generation.However, the improved differential evolution algorithm finds a better solution.This shows the effectiveness of the improved mutation strategy.

Conclusions
Based on the production process of a large domestic iron and steel enterprise, this paper analyzes problems in slab allocation and hot-rolling scheduling.To make full use of latent heat from high-temperature slabs to reduce energy consumption and hot slab waiting times, two subproblems are specially integrated for research.A linear 0-1-integer programming model is established in accordance with the objectives and constraints of the slab allocation and hot-rolling scheduling integrated optimization problem.
In view of the large scale and large amount of data, an improved differential evolution algorithm is adopted to solve the problem.Based on the complex data structure of this problem, an efficient real coding method is proposed; that is, the integer part represents the order to which the slab is allocated, and the decimal part represents the rolling unit to which the slab is assigned.To improve the quality of solutions in the initial population, three different heuristic algorithms are proposed to generate initial solutions.In addition, multiple parent individuals participate in mutation, which improves population diversity.Furthermore, infeasible solutions are repaired, and the population gene pool is updated.In 14 data groups of different scales, the improved differential evolution algorithm can obtain fairly good solutions in a reasonable amount of time compared with experiments using CPLEX, the simulated artificial method, and the classical differential evolution algorithm.Compared with CPLEX, the improved differential evolution algorithm is better at solving large-scale slab allocation and hot-rolling scheduling integrated optimization problems.
By using the model and algorithm proposed in this paper, high-quality allocation schemes and hot-rolling schedules can be generated quickly.The utilization rate and rolling quality of slabs can be improved.The coordinal optimization of slab allocation and hot-rolling scheduling can be realized.The benefits and market competitiveness of enterprises can be enhanced.This not only provides a theoretical reference for solving largescale practical problems of the same type but also expands differential evolution algo-

Conclusions
Based on the production process of a large domestic iron and steel enterprise, this paper analyzes problems in slab allocation and hot-rolling scheduling.To make full use of latent heat from high-temperature slabs to reduce energy consumption and hot slab waiting times, two subproblems are specially integrated for research.A linear 0-1-integer programming model is established in accordance with the objectives and constraints of the slab allocation and hot-rolling scheduling integrated optimization problem.
In view of the large scale and large amount of data, an improved differential evolution algorithm is adopted to solve the problem.Based on the complex data structure of this problem, an efficient real coding method is proposed; that is, the integer part represents the order to which the slab is allocated, and the decimal part represents the rolling unit to which the slab is assigned.To improve the quality of solutions in the initial population, three different heuristic algorithms are proposed to generate initial solutions.In addition, multiple parent individuals participate in mutation, which improves population diversity.Furthermore, infeasible solutions are repaired, and the population gene pool is updated.In 14 data groups of different scales, the improved differential evolution algorithm can obtain fairly good solutions in a reasonable amount of time compared with experiments using CPLEX, the simulated artificial method, and the classical differential evolution algorithm.Compared with CPLEX, the improved differential evolution algorithm is better at solving large-scale slab allocation and hot-rolling scheduling integrated optimization problems.
By using the model and algorithm proposed in this paper, high-quality allocation schemes and hot-rolling schedules can be generated quickly.The utilization rate and rolling quality of slabs can be improved.The coordinal optimization of slab allocation and hot-rolling scheduling can be realized.The benefits and market competitiveness of enterprises can be enhanced.This not only provides a theoretical reference for solving large-scale practical problems of the same type but also expands differential evolution algorithm application fields.Future research can be carried out in two ways.One further improves the differential evolution algorithm.The other applies the differential evolution algorithm to other fields, such as coil allocation and cold rolling in iron and steel enterprises.

Figure 1 .
Figure 1.The slab allocation problem and the hot-rolling scheduling problem.

Figure 1 .
Figure 1.The slab allocation problem and the hot-rolling scheduling problem.

Figure 3 .Figure 3 .
Figure 3. Column and line chart showing fitness values for the improved differential evolution algorithm and comparison algorithms.

Figure 3 .
Figure 3. Column and line chart showing fitness values for the improved differential evolution algorithm and comparison algorithms.

Figure 4 .Figure 4 .
Figure 4. Column chart obtaining the times of the improved differential evolution algorithm and comparison algorithm.

Table 1 .
The coding mode of improved differential evolution algorithm.

Table 2 .
Results of CPLEX, the simulated artificial method, the classical differential evolution algorithm, and the improved differential evolution algorithm.