Steel mill medium-thickness plate intelligent hot rolling schedule optimization method based on double-layer optimization

By applying a double-layer optimization algorithm in a steel mill, a multi-vehicle path planning model was constructed, and the problem of inefficiency in existing hot-rolling scheduling was solved, efficient optimization of hot-rolling scheduling in medium and thick plates was achieved, and production efficiency was improved and user satisfaction.

CN119129866APending Publication Date: 2024-12-13UNIV OF SCI & TECH BEIJING
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410999765.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-24
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

The existing hot-rolled scheduling scheme has problems such as low scheduling efficiency and poor optimization results in steel production, especially when the medium and thick plate products have multiple specifications, small batches, and the user's differentiated demands are increased. Meet the production needs of steel enterprises.

Method used

Using the intelligent hot rolling scheduling method of medium and thick plates in steel mills and thick plates based on double-layer optimization, by obtaining steel mill production data, defining model parameters and decision variables, a multi-vehicle path planning model with time window and reward mechanism is constructed, combined with adaptive Variable neighborhood search algorithm (ALNS) and simulated annealing algorithm (SA), and double-layer nested algorithm are constructed to solve the optimal hot-rolling scheduling scheme of medium and thick plates.

Benefits of technology

It realizes a more efficient hot rolling schedule design for medium and thick plates, reduces roll loss, improves delivery efficiency, saves labor and costs, and improves the efficiency of the production line and enterprise benefits in the reservoir area.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119129866A_ABST
    Figure CN119129866A_ABST
Patent Text Reader

Abstract

The invention discloses a double-layer optimization-based intelligent hot rolling scheduling optimization method for medium and thick plates in a steel mill, and belongs to the technical field of metallurgical machinery and automatic combination optimization. The method comprises the following steps: acquiring actual production data of the steel mill, and defining model parameters and decision variables; based on the defined parameters and decision variables, constructing a multi-vehicle path planning model with a time window and a reward mechanism, and determining a to-be-optimized problem; wherein the to-be-optimized problem is how to carry out hot rolling scheduling on the medium-thickness plate, so that under the condition that a preset constraint condition is met, the targets of the minimum comprehensive penalty value and the maximum rolling mileage are achieved; an adaptive variable neighborhood search algorithm ALNS and an SA algorithm are adopted to construct a double-layer nested algorithm to solve the problem to be optimized, and an optimal hot rolling scheduling scheme of the medium and heavy plate is obtained; and the optimal hot rolling scheduling scheme of the medium-thickness plate is displayed in a visual mode. The purposes of reducing roller loss, improving delivery efficiency and the like can be achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of metallurgical machinery and automatic combination optimization, and in particular to a method for optimizing intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization. Background Art

[0002] Intelligent steel production needs to match the requirements of intelligent production management planning, intelligent control of production process and intelligent production scheduling. The improvement of steel production scheduling optimization is not only an important part of enterprise management, but also an important means to enhance the competitiveness of enterprises and thus increase profits.

[0003] Production scheduling and planning in the steel industry have always been widely concerned by the steel industry and all walks of life. The existing hot rolling scheduling scheme has not been effective in solving the problem, which is mainly reflected in the following aspects: 1) Medium and thick plate products have the characteristics of multiple specifications, small batches, and high product performance requirements. The existing scheduling methods are not suitable for existing research content; 2) With the increase in user differentiated demands and the expansion of the production scale of steel enterprises, proposing new solutions is conducive to saving resources, improving user satisfaction, and making the overall production process transparent and controllable; 3) The scheduling optimization of medium and thick plates is a typical combinatorial optimization problem with multiple optimization objectives and multiple constraints.

[0004] In summary, the existing hot rolling scheduling scheme has the problems of low scheduling efficiency and unsatisfactory optimization results. Therefore, it is imperative to design a model that better meets actual needs and a more efficient algorithm. The effective solution to this problem will also play a role in improving the competitiveness of enterprises, exerting production capacity effects, and enhancing the actual application value. Summary of the invention

[0005] The present invention provides a method for optimizing the intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization, so as to solve the technical problems of low scheduling efficiency and unsatisfactory optimization results in the existing hot rolling scheduling scheme.

[0006] In order to solve the above technical problems, the present invention provides the following technical solutions:

[0007] On the one hand, the present invention provides a method for optimizing the scheduling of medium and thick plates in a steel plant based on double-layer optimization, and the method for optimizing the scheduling of medium and thick plates in a steel plant based on double-layer optimization comprises:

[0008] Obtain actual production data of the steel plant and define model parameters and decision variables;

[0009] Based on the defined model parameters and decision variables, a multi-vehicle path planning model with time windows and reward mechanisms is constructed to determine the problem to be optimized. The problem to be optimized is: how to schedule the hot rolling of medium and thick plates so as to achieve the goal of minimizing the comprehensive penalty value and maximizing the rolling mileage while satisfying the preset constraints;

[0010] Adopting the adaptive variable neighborhood search algorithm ALNS, integrating the SA algorithm to construct a double-layer nested algorithm, the problem to be optimized is solved to obtain the optimal medium and thick plate hot rolling schedule;

[0011] The optimal plate hot rolling schedule is displayed in a visual way.

[0012] Furthermore, the production data includes the width, thickness, rolling length, rolling time, furnace entry time, rolling start time, rolling end time, furnace time and the time interval between two slab rolling times.

[0013] Further, the model parameters include parameters of the slab to be rolled and parameters of the rolling unit;

[0014] The definition of model parameters and decision variables includes:

[0015] Define the parameters of the slab to be rolled, including: define i as the slab number, a total of n; define Q i is the rolling length of the i-th slab; define L i is the total rolling length of the slab with the same width; define L max is the maximum rolling length of a slab with the same width; define pt i is the rolling time of the i-th slab; et is defined i is the time when the i-th slab enters the furnace; define rt i is the starting rolling time of the i-th slab; define nt i is the end rolling time of the i-th slab; define st i is the time in the furnace of the i-th slab; IT is defined as the time interval between two slab rolling;

[0016] Define rolling unit parameters, including: define k as the rolling unit number, a total of m; define D ij is the total penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define pv ij pg is the width change rate penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define ij is the thickness penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define ph ij is the hardness penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define pt ijP is the temperature penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define P i is the penalty value for not putting the billet into the rolling plan; define Q L is the maximum rolling length for each rolling unit; define Q S The minimum rolling length for each rolling unit;

[0017] Define the decision variable parameters, including: define the parameter y ik , if the i-th slab is selected by the k-th rolling unit, then y ik is 1, otherwise y ik is 0; define parameters If the i-th slab and the j-th slab are simultaneously selected by the k-th rolling unit and the i-th slab is rolled after the j-th slab, then is 1, otherwise is 0.

[0018] Furthermore, based on the defined model parameters and decision variables, a multi-vehicle path planning model with a time window and a reward mechanism is constructed to determine the problem to be optimized, including:

[0019] Combined with the multi-vehicle path planning model with time window and reward mechanism, the virtual slab is used as the virtual starting point, and multiple rollers pass through the virtual starting point to form a closed loop; ij =pv ij +pg ij +ph ij +pt ij ; Construct a medium and thick plate hot rolling scheduling model to determine the problem to be optimized; where the comprehensive penalty value is expressed as:

[0020] F=F1+F2

[0021] Among them, F1 represents the total minimum penalty value of slabs not included in the hot rolling plan, and its expression is:

[0022]

[0023] F2 represents the minimum process penalty value, including the jump penalty values ​​of width, thickness and hardness of adjacent slabs in the same rolling unit, and its expression is:

[0024]

[0025] The constraints include: the constraint of the rolling path forming a rolling closed loop, the rolling kilometer constraint, the rolling kilometer constraint of the same width, and the rolling time constraint in each rolling unit;

[0026] The constraint that specifies the rolling path to form a rolling closed loop is expressed as:

[0027]

[0028] Among them, n k represents the number of slabs in the kth rolling unit;

[0029] The constraint on rolling kilometres is expressed as;

[0030]

[0031] The rolling constraint of the same width kilometer is expressed as;

[0032]

[0033] The rolling time constraint in each rolling unit is expressed as:

[0034] nt i ≥rt i +et i +st i +pt i +IT

[0035]

[0036] Among them, et i' represents the time when the i'th slab enters the furnace; M represents the rolling unit set.

[0037] Furthermore, the adaptive variable neighborhood search algorithm ALNS is adopted, and the SA algorithm is integrated to construct a double-layer nested algorithm to solve the problem to be optimized and obtain the optimal medium and thick plate hot rolling schedule, including:

[0038] The adaptive variable neighborhood search algorithm ALNS is adopted and the SA algorithm is integrated to construct a double-layer nested algorithm. For the problem to be optimized, the outer layer adopts the ALNS algorithm to search for the optimal solution from a global perspective, and the inner layer adopts the SA algorithm to calculate the solution, thereby obtaining the optimal medium and thick plate hot rolling scheduling plan.

[0039] Furthermore, the outer layer uses the ALNS algorithm to perform optimization from a global perspective, including:

[0040] The data is encoded using path encoding, and a vector v consisting of q+1 parts is used to represent the solution to the hot rolling scheduling problem; each subvector represents a rolling unit, that is, each subvector represents a slab and its sequence; each subvector v k The first element in represents the original warehouse, that is, the slab with sequence number 0, and v k The other elements in represent different slabs; in addition, the slab in the virtual rolling unit with serial number 0 represents that it is not selected; after the encoding is completed, the slab rolling sequence is pre-arranged by using the greedy algorithm, and the initial solution of the slab rolling sequence is obtained by the greedy algorithm;

[0041] After the initial solution is generated, the data enters the ALNS algorithm for outer layer calculation, introducing the concepts of destroy operator and repair operator. Initially, all operators are given the same weight, and the ALNS algorithm dynamically adjusts each operator to obtain a better neighborhood solution. The selection of high-quality operators depends on the quality of the solution generated by the operator itself. The destroy and repair methods are represented by γ - and γ + ; In addition, two new variables are introduced to store the weights of each destroy and repair method, namely in, Represents the weight set of the destroy method; Represents the weight set of the repair method;

[0042] Introducing an additional parameter Ψ, the setting formula is as follows:

[0043]

[0044] Among them, ω d is the operator weight, s d is the operator numerator, u d is the number of times the operator is used, and ρ is the weight update coefficient, which is used to constrain the weight update speed, that is, the operator weight is linked to the performance of the solution; update ρ according to the following formula - and ρ + :

[0045] ρ - =λρ - +(1-λ)Ψ

[0046] ρ + =λρ + +(1-λ)Ψ

[0047] Among them, λ is a parameter with a value range of 0 to 1, the purpose of which is to control the sensitivity of the weight to the performance changes of the two types of operators, and the weights of operators not used in the current iteration remain unchanged;

[0048] Afterwards, the algorithm encourages tentative forward movement, and the destroy and repair operator combinations that meet the expected degree of coordination will be saved, thereby promoting the overall algorithm to find the optimal solution faster.

[0049] Furthermore, the inner layer uses the SA algorithm to calculate the solution, including:

[0050] After the outer ALNS algorithm reaches the preset level, the inner layer redefines and improves the ALNS algorithm by introducing the metropolis criterion of the SA algorithm twice, and uses the metropolis criterion of the SA algorithm to obtain two extreme values ​​of ALNS, including the better neighborhood solution and the global optimal solution; among them, the metropolis criterion of the SA algorithm defines the probability of an object changing from the uth state to the vth state under a certain parameter T, that is, the probability of accepting a set of slab rolling combinations to a certain extent As shown in the following formula:

[0051]

[0052] Where e is the natural logarithm; S(v) and S(u) represent the two current neighborhood analytical solutions respectively; ΔS represents the change value of the two neighborhood analytical solutions; δ is a coefficient similar to the Boltzmann constant; in a certain solution state, due to the change of the neighborhood, the system state will change, and the current analytical solution of the system will change; if the changed analytical solution is better than the current analytical solution, then the changed analytical solution is accepted; otherwise, the changed analytical solution is accepted with a certain probability, and under the same state, the greater the change in the system state, the smaller the probability of accepting the changed analytical solution, and as the algorithm progresses, the probability of accepting the changed analytical solution will become smaller and smaller.

[0053] Furthermore, the double-layer nested algorithm stops outputting when the maximum solution time is reached, and the optimal solution when the double-layer nested algorithm stops outputting is used as the optimal medium and thick plate hot rolling scheduling solution.

[0054] On the other hand, the present invention further provides an electronic device, comprising a processor and a memory; wherein the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the above method.

[0055] In yet another aspect, the present invention further provides a computer-readable storage medium, wherein at least one instruction is stored in the storage medium, and the instruction is loaded and executed by a processor to implement the above method.

[0056] The beneficial effects brought about by the technical solution provided by the present invention include at least:

[0057] The method for optimizing the scheduling of medium and thick plate intelligent hot rolling in a steel plant based on double-layer optimization provided by the present invention constructs a multi-vehicle path planning model VRPTW model with a time window and a reward mechanism; establishes an optimization model with the minimum comprehensive penalty value and the maximum rolling mileage as multiple optimization objectives, and adopts the improved ALNS algorithm to fuse the SA algorithm to construct a double-layer nested algorithm ALNS-SA, solves the model, and realizes the design of the optimal scheduling scheme. Thereby, the scheduling scheme for medium and thick plate hot rolling can be better formulated, and the goals of reducing roll loss and improving delivery efficiency can be achieved. It is of great significance to save manpower, save costs, improve the efficiency of the warehouse production line, and increase corporate benefits. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0059] Figure 1 It is a schematic diagram of the execution flow of the steel plant medium and thick plate intelligent hot rolling scheduling optimization method based on double-layer optimization provided by an embodiment of the present invention;

[0060] Figure 2 is a convergence diagram of the algorithm provided by an embodiment of the present invention;

[0061] Figure 3 It is a schematic diagram of ALNS algorithm scheduling;

[0062] Figure 4 This is a schematic diagram of the start and end time of the scheduling time window under the ALNS algorithm;

[0063] Figure 5 It is a system block diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0064] In order to make the objectives, technical solutions and advantages of the present invention more clear, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings.

[0065] First of all, it should be noted that in the embodiments of the present invention, words such as "exemplarily" and "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplary" in the present invention should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of the word "exemplarily" is intended to present the concept in a concrete way. In addition, in the embodiments of the present invention, the meaning expressed by "and / or" can be both, or it can be either of the two.

[0066] First embodiment

[0067] In view of the problems that the existing medium and thick plate hot rolling scheduling optimization methods are inefficient and the optimization results are not ideal, this embodiment comprehensively considers the multi-objective optimization of the medium and thick plate scheduling process, and solves the scheduling optimization problem through an intelligent optimization algorithm. Therefore, a steel plant medium and thick plate intelligent hot rolling scheduling optimization method based on double-layer optimization is proposed. The multi-objective optimization of the scheduling problem can be achieved through a double-layer nested intelligent algorithm.

[0068] The information of the medium and thick plates used in this embodiment is shown in Table 1.

[0069] Table 1 Experimental data set of medium and thick plates

[0070]

[0071]

[0072] Table 1 continued

[0073]

[0074] According to the above data, the execution process of the steel plant medium and thick plate intelligent hot rolling scheduling optimization method based on double-layer optimization provided in this embodiment is as follows: Figure 1 As shown, the following steps are included:

[0075] S1, obtain the actual production data of the steel plant and define the model parameters and decision variables;

[0076] Specifically, this embodiment obtains the actual production data of a steel plant (information such as the width, thickness, and length of the slab to be rolled), integrates and classifies the acquired data, imports it into the database and marks it, so as to facilitate the solution of the scheduling optimization plan. Then, the parameters and variables used in the implementation process are divided into parameters of the slab to be rolled, rolling unit parameters, and other decision variables, and the definitions of each parameter and variable are as follows:

[0077] Define the parameters of the slab to be rolled, including: define i as the slab number, a total of n; define Q i is the length of the i-th slab to be rolled; define L i is the total rolling length of the slab with the same width; define L max is the maximum rolling length of the same width slab; define pt i is the rolling time of the i-th slab; et is defined i is the time when the i-th slab enters the furnace; define rt i is the starting rolling time of the i-th slab; define nt i is the end rolling time of the i-th slab; define st i is the time in the furnace of the i-th slab; IT is defined as the time interval between two slab rolling;

[0078] Define rolling unit parameters, including: define k as the rolling unit serial number, a total of m; wherein, the rolling object within the two working roll replacement cycles is called a rolling unit, corresponding to a rolling plan; define D ij is the total penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define pv ij pg is the width change rate penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define ij is the thickness penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define ph ij is the hardness penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define pt ij P is the temperature penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define P i is the penalty value for not putting the billet into the rolling plan; define Q L is the maximum rolling length for each rolling unit; define Q S The minimum rolling length for each rolling unit;

[0079] Define the decision variable parameters, including: define the parameter y ik , if the i-th slab is selected by the k-th rolling unit, then y ik is 1, otherwise y ik is 0; define parameters If the i-th slab and the j-th slab are simultaneously selected by the k-th rolling unit and the i-th slab is rolled after the j-th slab, then is 1, otherwise is 0.

[0080] S2, based on the defined model parameters and decision variables, a multi-vehicle path planning model with a time window and reward mechanism is constructed to determine the problem to be optimized; the problem to be optimized is: how to schedule the hot rolling of medium and thick plates so as to achieve the goal of minimizing the comprehensive penalty value and maximizing the rolling mileage while satisfying the preset constraints;

[0081] Specifically, this embodiment improves the multi-vehicle path planning model based on the defined variables and parameters, and constructs a multi-vehicle path planning model VRPTW with a time window and a reward mechanism. The construction method of the VRPTW model can refer to an optimization algorithm for solving a vehicle path problem with a time window disclosed in the invention patent application with application number CN201610605037.6, which is not described in detail in this embodiment. An objective function is established with the minimum comprehensive penalty value and the maximum rolling mileage as multiple optimization objectives. The specific implementation process is: combining the multi-vehicle path planning model VRPTW with a time window and a reward mechanism, a virtual slab is used as a virtual starting point sl0, and multiple rollers pass through the virtual point to form a closed loop, wherein D ij =pvij +pg ij +ph ij +pt ij , construct hot rolling scheduling model P:

[0082] The following formula is the overall optimization objective of the model.

[0083] F=F1+F2

[0084] Among them, F1 represents the total minimum penalty value of slabs not put into the hot rolling plan;

[0085]

[0086] F2 represents the minimum process penalty value, including the jump penalty values ​​of width, thickness and hardness of adjacent slabs in the same rolling unit.

[0087]

[0088] The following three formulas specify the rolling path to form a rolling closed loop;

[0089]

[0090] Among them, n k Represents the number of slabs in the kth rolling unit.

[0091] The following formula specifies the convention for rolling kilometres;

[0092]

[0093] The following formula specifies the rolling constraints for the same width kilometer;

[0094]

[0095] The following formula specifies the rolling time requirement within each rolling unit.

[0096] nt i ≥rt i +et i +st i +pt i +IT

[0097]

[0098] Among them, et i' represents the time when the i'th slab enters the furnace; M represents the rolling unit set.

[0099] Tables 2 to 5 give the corresponding penalty values ​​applicable to the hot rolling schedule of medium and thick plates. At the same time, the penalty value in the width direction is changed to a width step change penalty value to better match the small-scale and multi-batch characteristics of medium and thick plate orders. Specifically, if a slab i appears after a slab j, then the width jump penalty from order j to i is a reverse jump and triggers the amplitude limit of the reverse jump. Then a penalty value Max is given. Obviously, the hot rolling unit sequence under this penalty value becomes infeasible, exceeding the rolling capacity of the working rolls, thereby constraining the rolling sequence of the slabs to be rolled in the width direction.

[0100] Table 2 Width gradient change penalty value

[0101]

[0102] Table 3 Thickness variation penalty value

[0103]

[0104] Table 4 Temperature change penalty value

[0105]

[0106] The above are about the various penalty values ​​used in the present invention. Based on these penalty values, the medium and thick plate rolling schedule can be constrained to tend to the "turtle back" arrangement. In addition, the penalty value of another objective function, that is, the penalty value of the hot rolling unit capacity, is also set. For a hot rolling scheduling plan, in order to ensure the quality of slab continuous rolling, the slabs should be arranged as evenly as possible for each rolling unit, to maximize the rolling efficiency and the roll load balancing rate, to avoid excessive slabs in a hot rolling unit, resulting in wear of the rolls and economic losses. The rolling unit penalty values ​​are set as shown in Table 5.

[0107] Table 5 Rolling unit capacity penalty value

[0108]

[0109] S3, using the adaptive variable neighborhood search algorithm ALNS, integrating the SA algorithm to construct a double-layer nested algorithm, solving the problem to be optimized, and obtaining the optimal medium and thick plate hot rolling schedule;

[0110] Specifically, in this embodiment, the algorithm adopts the adaptive variable neighborhood search algorithm ALNS and the SA algorithm for fusion design. A double-layer nested algorithm ALNS-SA algorithm is proposed. The outer layer uses the ALNS algorithm to search for the best solution from a global perspective, and the inner layer uses the SA algorithm to calculate the solution. The specific calculation process is as follows:

[0111] The data is encoded using path encoding. A vector v consisting of q+1 parts is used to represent the solution to the hot rolling scheduling problem. Each subvector represents a rolling unit, that is, each subvector represents a slab and its sequence. Each subvector v k The first element in represents the original warehouse, i.e. slab 0, and v k The other elements in represent different slabs. In addition, the slab in the virtual rolling unit 0 is not selected. After the encoding is completed, the greedy algorithm is used to pre-arrange the slab rolling sequence.

[0112] After the initial solution is generated, the data enters the ALNS algorithm for outer layer calculation, introducing the concepts of destroy operator and repair operator. Initially, all operators are given the same weight, and the adaptive neighborhood search algorithm dynamically adjusts each operator to obtain a better neighborhood solution. The selection of high-quality operators depends on the quality of the solution generated by the operator itself. The destroy and repair methods are represented by γ - and γ + In addition, two new variables are introduced to store the weights of each destroy and repair method, namely Represents the weight set of the destroy method; Represents the weight set of the repair method;

[0113] Introducing an additional parameter Ψ, the setting formula is as follows:

[0114]

[0115] Among them, ω d is the operator weight, s d is the operator numerator, u d is the number of times the operator is used, and ρ is the weight update coefficient (constraint weight update speed), that is, the operator weight is linked to the performance of the solution. Update ρ according to the following formula - and ρ + .

[0116] ρ - =λρ - +(1-λ)Ψ

[0117] ρ + =λρ + +(1-λ)Ψ

[0118] Among them, λ is a parameter ranging from 0 to 1, the purpose of which is to control the sensitivity of the weight to the performance changes of the two types of operators, and the weights of operators not used in the current iteration remain unchanged. The purpose of adaptive weight adjustment is to select operators that are beneficial to the current solution and tilt the weights. Table 6 gives the corresponding operator weights.

[0119] Table 6 Scoring values ​​of repair and destroy operators

[0120]

[0121] Afterwards, the algorithm encourages tentative forward movement, and the destroy and repair operator combinations that work well together will be saved, thereby driving the overall algorithm to find the optimal solution faster.

[0122] Based on the above outer optimization results, the improved SA algorithm is used to optimize the inner layer of the model, so as to find a scheduling solution with better optimization effect. The specific process is as follows:

[0123] After the outer neighborhood search algorithm has been carried out to a certain extent, the inner layer of the algorithm has redefined and improved the ALNS algorithm by introducing the metropolis criterion of SA twice, and used this criterion to obtain two extreme values ​​of ALNS, including a better neighborhood solution and a global optimal solution. The metropolis criterion defines the probability of an object changing from state u to state v under a certain parameter T, that is, the probability of accepting a set of slab rolling combinations to a certain extent. As shown in the following formula:

[0124]

[0125] Where e is the natural logarithm, S(v) and S(u) represent the two current neighborhood analytical solutions, ΔS represents the change in the two neighborhood analytical solutions, and δ is a coefficient similar to the Boltzmann constant. In a certain solution state, due to the change of the neighborhood, the system state will change, and the current analytical solution of the system will change. If the change is better than the current solution, then accept the change; otherwise, accept the change with a certain probability. On the other hand, from From the formula, we can see that the larger the ΔS of the system under the same state, the smaller the probability of being accepted, and as the algorithm is optimized, the probability of accepting the new analytical solution will become smaller and smaller. At this point, the double-nested ALNS-SA algorithm process is completed, and the experimental data is brought in to obtain the rolling schedule and the rolling time window of the entire process.

[0126] The maximum solution time limit for all case data sets is set to 3600s. Due to the large number of heuristic algorithm solutions, the optimal solution when the algorithm stops outputting is used as the final solution. Both algorithms are programmed using Matlab. All the experimental platforms mentioned above are a laptop computer with an external monitor, and the configuration includes an AMD Ryzen 74800H processor and a Radeon Graphics GPU (base frequency 2.90GHz).

[0127] S4, uses visualization to display the optimal medium and thick plate hot rolling schedule;

[0128] Specifically, this embodiment uses visualization results to display the scheduling plan and the rolling process time window effect, and completes the design of the medium and thick plate hot rolling scheduling optimization plan.

[0129] Next, the effect of the method of the present invention is verified by means of comparative experiments.

[0130] Using the same experimental environment, 20 experiments were conducted on the three methods, and the three algorithms of SA-ALNS, SA-PSO, and MUL-PSO were compared and compared based on two sets of data sets. Among them, the algorithm result convergence diagram of the ALNS-SA algorithm on the first set of experimental data sets is shown in the figure below. Figure 2 shown.

[0131] Table 7 shows the scheduling results of the ALNS-SA algorithm on the experimental set.

[0132] Table 7 ALNS algorithm shows the scheduling scheme for the experimental set

[0133]

[0134] Table 7 continued

[0135]

[0136]

[0137] Table 8 gives the medium and thick plate rolling time window given by the ALNS algorithm during calculation, including the furnace entry time, preheating time, rolling start time, rolling end time, and the rolling waiting time between two slabs. Among them, in order to ensure the uniformity of time measurement, a fixed unit time is set in the experiment, and all time parameters are defined on the unit time, and the time measurement represented by the unit time is set to 1. In addition, the furnace entry time, preheating end and rolling start time, end time, and end waiting time of each slab are represented by Et, Dt, Gt, and It respectively. It is agreed that the slab furnace entry time is 2 unit hours, the rolling time is 6-11 unit hours, the residence time in the furnace is 103-125 unit hours, the earliest rolling start time is 0, and the latest is 800 unit hours.

[0138] Table 8 Time window for plate rolling schedule

[0139]

[0140]

[0141] In the real data set of a medium and thick plate enterprise, two sets of slab sets with different slab numbers were selected as experimental data sets, and the number of slabs was 23 and 45 respectively. Each algorithm performed 20 computational experiments on each data set under the same experimental environment and recorded the experimental results. The outer loop of the ALNS algorithm was set to 20 times, the inner loop of the SA algorithm was set to 300 times, the initial temperature was set to 100, the cooling factor was 0.99, the initial selection exchange probability was set to 0.2, the selection reversal probability was set to 0.5, and the selection insertion probability was set to 1-exchange probability-reversal probability. The best objective function value of each algorithm was taken as the final result, and the experimental display is shown in Table 9.

[0142] Table 9 Algorithm results comparison

[0143]

[0144] The expression of the design scheduling optimization solution effect is: (slab rolling penalty value * 0.4 + rolling unit penalty value * 0.6) / 3 * solution time. From the above table, it can be seen that the proposed ALNS-SA algorithm has a good solution effect in both scheme optimization design and solution time, while the multi-objective particle swarm algorithm based on the particle swarm algorithm and its variant algorithm are relatively general in solving the scheduling problem of medium and thick plate billets. The proposed algorithm improves the solution effect by 14.3% compared with the SA-PSO algorithm. The proposed SA-ALNS algorithm also has a more obvious advantage in the allocation effect of rolling units, and has better convergence and global optimization.

[0145] Figure 3 The subordinate relationship between slabs and rolling units and the sorting results between slabs after the ALNS algorithm was calculated for the first set of experimental data were shown.

[0146] Figure 4 The start and end rolling time windows of each slab to be rolled are displayed. The length of the graph represents the start time of rolling. The earlier the start time of rolling, the shorter the graph bar, and vice versa.

[0147] In summary, this embodiment provides a method for optimizing the scheduling of medium and thick plates in a steel plant based on double-layer optimization. The method for optimizing the scheduling of medium and thick plates in a steel plant based on double-layer optimization constructs a multi-vehicle path planning model VRPTW model with a time window and a reward mechanism; establishes an optimization model with the minimum comprehensive penalty value and the maximum rolling mileage as multiple optimization objectives, and uses the improved ALNS algorithm to fuse the SA algorithm to construct a double-layer nested algorithm ALNS-SA to solve the model and realize the design of the optimal scheduling scheme. Thereby, the scheduling scheme for hot rolling of medium and thick plates can be better formulated, and the goals of reducing roll loss and improving delivery efficiency can be achieved. It is of great significance to save manpower, save costs, improve the efficiency of the warehouse production line and increase corporate benefits.

[0148] Second embodiment

[0149] This embodiment provides an electronic device, such as Figure 5 As shown, the electronic device includes: a processor and a memory; wherein the processor and the memory can be connected via a communication bus; the memory stores at least one instruction, and the instruction is loaded and executed by the processor to implement the method of the first embodiment. In addition, the electronic device may also include a transceiver, the processor and the transceiver can be connected via a communication bus, and the transceiver is used to communicate with other devices.

[0150] Next, combine Figure 5 The following is a detailed introduction to the various components of the electronic device:

[0151] Among them, the processor is the control center of the electronic device, and the electronic device may include multiple processors, each of which may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). The processor here may be a processor or a general term for multiple processing elements. For example, the processor is one or more central processing units (CPUs), or other general-purpose processors, application specific integrated circuits (ASICs), or one or more integrated circuits configured to implement an embodiment of the present invention, such as one or more microprocessors (digital signal processors, DSPs), or one or more field programmable gate arrays (field programmable gate arrays, FPGAs), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc. The processor may execute various functions of the electronic device by running or executing software programs stored in the memory and calling data stored in the memory.

[0152] In a specific implementation, as an embodiment, the processor may include one or more CPUs, such as Figure 5 The CPU0 and CPU1 shown in the figure are, of course, only exemplary.

[0153] The memory is used to store the software program for executing the solution of the present invention, and the execution is controlled by the processor. The specific implementation method can refer to the above method embodiment and will not be repeated here.

[0154] Optionally, the memory may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory may be integrated with the processor or exist independently and accessed through the interface circuit ( Figure 5 (not shown) is coupled to the processor, which is not specifically limited in this embodiment of the present invention.

[0155] The transceiver may include a receiver and a transmitter ( Figure 5 The receiver is used to implement the receiving function, and the transmitter is used to implement the sending function. The transceiver can be integrated with the processor or exist independently and communicate with the electronic device through the interface circuit ( Figure 5 (not shown) is coupled to the processor, which is not specifically limited in this embodiment of the present invention.

[0156] In addition, it should be noted that Figure 5 The structure of the electronic device shown in the figure does not constitute a limitation on the device, and the actual device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. In addition, the technical effects achieved by the electronic device when executing the method of the first embodiment above can refer to the technical effects described in the first embodiment above, so they are not repeated here.

[0157] Third embodiment

[0158] This embodiment provides a computer-readable storage medium, which stores at least one instruction, and the instruction is loaded and executed by a processor to implement the method of the first embodiment. The computer-readable storage medium may be a ROM, a random access memory, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc. The instructions stored therein may be loaded by a processor in a terminal to execute the method.

[0159] In addition, it should be noted that the present invention can be provided as a method, an apparatus or a computer program product. Therefore, the embodiment of the present invention can be in the form of a full or partial hardware embodiment, a full or partial software embodiment or an embodiment combining software and hardware. Moreover, when implemented using software, the embodiment of the present invention can be in the form of a computer program product implemented on one or more computer-usable storage media containing computer-usable program codes. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, the process or function described in the embodiment of the present invention is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions can be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center containing one or more available media sets. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium. The semiconductor medium may be a solid state hard disk.

[0160] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0161] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device, so that a series of operation steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable terminal device provide for implementing the process in the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0162] It should also be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. The terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of more restrictions, the elements defined by the sentence "including one..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements. In addition, the term "and / or" is only an association relationship describing the associated objects, indicating that there can be three relationships, for example, A and / or B, which can represent: A exists alone, A and B exist at the same time, and B exists alone, wherein A and B can be singular or plural. In addition, the character " / " in this article generally indicates that the objects before and after are in an "or" relationship, but it may also indicate an "and / or" relationship. Please refer to the context for specific understanding. "At least one" means one or more, and "plurality" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can be represented by: a, b, c, ab, ac, bc or abc, where a, b, c can be single or plural.

[0163] In addition, it can be understood that in various embodiments of the present invention, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.

[0164] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.

[0165] In several embodiments provided by the present invention, it should be understood that the disclosed equipment, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of functional modules / units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point, the coupling or direct coupling or communication connection between each other shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms. The unit described as a separate component may or may not be physically separated, and the component displayed as a unit may or may not be a physical unit, that is, it may be located in one place, or it may be distributed on multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the scheme of this embodiment. In addition, each functional unit in each embodiment of the present invention can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit.

[0166] If the method is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0167] Finally, it should be noted that the above is only a preferred embodiment of the present invention. It should be pointed out that although the preferred embodiment of the present invention has been described, for ordinary technicians in this technical field, once the basic creative concept of the present invention is known, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as the protection scope of the present invention. Therefore, the attached claims are intended to be interpreted as including the preferred embodiment and all changes and modifications that fall within the scope of the embodiments of the present invention.

Claims

1. A method for optimizing the intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization, characterized in that: The steel plant medium and thick plate intelligent hot rolling scheduling optimization method based on double-layer optimization includes: Obtain actual production data of the steel plant and define model parameters and decision variables; Based on the defined model parameters and decision variables, a multi-vehicle path planning model with time windows and reward mechanisms is constructed to determine the problem to be optimized. The problem to be optimized is: how to schedule the hot rolling of medium and thick plates so as to achieve the goal of minimizing the comprehensive penalty value and maximizing the rolling mileage while satisfying the preset constraints; Adopting the adaptive variable neighborhood search algorithm ALNS, integrating the SA algorithm to construct a double-layer nested algorithm, the problem to be optimized is solved to obtain the optimal medium and thick plate hot rolling schedule; The optimal plate hot rolling schedule is displayed in a visual way.

2. The method for optimizing the intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization according to claim 1, characterized in that: The production data include: the width, thickness, rolling length, rolling time, furnace entry time, rolling start time, rolling end time, furnace time and the time interval between two slab rolling operations.

3. The method for optimizing the intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization according to claim 2, characterized in that: The model parameters include parameters of the slab to be rolled and parameters of the rolling unit; The definition of model parameters and decision variables includes: Define the parameters of the slab to be rolled, including: define i as the slab number, a total of n; define Q i is the rolling length of the i-th slab; define L it is the total rolling length of the slab with the same width; define L max is the maximum rolling length of a slab with the same width; define pt i is the rolling time of the i-th slab; et is defined i is the time when the i-th slab enters the furnace; define rt i is the starting rolling time of the i-th slab; define nt i is the end rolling time of the i-th slab; define st i is the time in the furnace of the i-th slab; IT is defined as the time interval between two slab rolling; Define rolling unit parameters, including: define k as the rolling unit number, a total of m; define D ij is the total penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define pv ij pg is the width change rate penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define ij is the thickness penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define ph ij is the hardness penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define pt ij P is the temperature penalty value of the i-th slab jumping to the j-th slab in the rolling unit; define P i is the penalty value for not putting the billet into the rolling plan; define Q L is the maximum rolling length for each rolling unit; define Q S The minimum rolling length for each rolling unit; Define the decision variable parameters, including: define the parameter y ik , if the i-th slab is selected by the k-th rolling unit, then y ik is 1, otherwise y ik is 0; define parameters If the i-th slab and the j-th slab are simultaneously selected by the k-th rolling unit and the i-th slab is rolled after the j-th slab, then is 1, otherwise is 0.

4. The method for optimizing the intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization according to claim 3, characterized in that: Based on the defined model parameters and decision variables, a multi-vehicle path planning model with a time window and a reward mechanism is constructed to determine the problem to be optimized, including: Combined with the multi-vehicle path planning model with time window and reward mechanism, the virtual slab is used as the virtual starting point, and multiple rollers pass through the virtual starting point to form a closed loop; ij =pv ij +pg ij +ph ij +pt ij ; Construct a medium and thick plate hot rolling scheduling model to determine the problem to be optimized; where the comprehensive penalty value is expressed as: F=F1+F2 Among them, F1 represents the total minimum penalty value of slabs not included in the hot rolling plan, and its expression is: F2 represents the minimum process penalty value, including the jump penalty values ​​of width, thickness and hardness of adjacent slabs in the same rolling unit, and its expression is: The constraints include: the constraint of the rolling path forming a rolling closed loop, the rolling kilometer constraint, the rolling kilometer constraint of the same width, and the rolling time constraint in each rolling unit; The constraint that specifies the rolling path to form a rolling closed loop is expressed as: Among them, n k represents the number of slabs in the kth rolling unit; The constraint on rolling kilometres is expressed as; The rolling constraint of the same width kilometer is expressed as; The rolling time constraint in each rolling unit is expressed as: nt i ≥rt i +et i +st i +pt i +IT Among them, et i' represents the time when the i'th slab enters the furnace; M represents the rolling unit set.

5. The method for optimizing the scheduling of medium and thick plate intelligent hot rolling in a steel plant based on double-layer optimization according to claim 4, characterized in that: The adaptive variable neighborhood search algorithm ALNS is adopted, and the SA algorithm is integrated to construct a double-layer nested algorithm to solve the problem to be optimized and obtain the optimal medium and thick plate hot rolling schedule, including: The adaptive variable neighborhood search algorithm ALNS is adopted and the SA algorithm is integrated to construct a double-layer nested algorithm. For the problem to be optimized, the outer layer adopts the ALNS algorithm to search for the optimal solution from a global perspective, and the inner layer adopts the SA algorithm to calculate the solution, thereby obtaining the optimal medium and thick plate hot rolling scheduling plan.

6. The method for optimizing the intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization according to claim 5, characterized in that: The outer layer uses the ALNS algorithm to perform optimization from a global perspective, including: The data is encoded by path encoding, and a vector v consisting of q+1 parts is used to represent the solution of the hot rolling scheduling problem; each sub-vector represents a rolling unit, that is, each sub-vector represents a slab and its order; the first element in each sub-vector represents the original warehouse, that is, the slab with sequence number 0, and the other elements in the sub-vector represent different slabs; in addition, the slab in the virtual rolling unit with sequence number 0 is not selected; after the encoding is completed, the greedy algorithm is used to pre-arrange the slab rolling sequence, and the initial solution of the slab rolling sequence is obtained by the greedy algorithm; After the initial solution is generated, the data enters the ALNS algorithm for outer layer calculation, introducing the concepts of destroy operator and repair operator. Initially, all operators are given the same weight, and the ALNS algorithm dynamically adjusts each operator to obtain a better neighborhood solution. The selection of high-quality operators depends on the quality of the solution generated by the operator itself. The destroy and repair methods are represented by γ - and γ + ; In addition, two new variables are introduced to store the weights of each destroy and repair method, namely in, Represents the weight set of the destroy method; Represents the weight set of the repair method; Introducing an additional parameter Ψ, the setting formula is as follows: Among them, ω d is the operator weight, s d is the operator numerator, u d is the number of times the operator is used, and ρ is the weight update coefficient, which is used to constrain the weight update speed, that is, the operator weight is linked to the performance of the solution; update ρ according to the following formula - and ρ + : r - =lr - +(1-λ)Ψ r + =lr + +(1-λ)Ψ Among them, λ is a parameter with a value range of 0 to 1, the purpose of which is to control the sensitivity of the weight to the performance changes of the two types of operators, and the weights of operators not used in the current iteration remain unchanged; Afterwards, the algorithm encourages tentative forward movement, and the destroy and repair operator combinations that meet the expected degree of coordination will be saved, thereby promoting the overall algorithm to find the optimal solution faster.

7. The method for optimizing the scheduling of medium and thick plate intelligent hot rolling in a steel plant based on double-layer optimization according to claim 6, characterized in that: The inner layer uses the SA algorithm to calculate the solution, including: After the outer ALNS algorithm reaches the preset level, the inner layer redefines and improves the ALNS algorithm by introducing the metropolis criterion of the SA algorithm twice, and uses the metropolis criterion of the SA algorithm to obtain two extreme values ​​of ALNS, including the better neighborhood solution and the global optimal solution; among them, the metropolis criterion of the SA algorithm defines the probability of an object changing from the uth state to the vth state under a certain parameter T, that is, the probability of accepting a set of slab rolling combinations to a certain extent As shown in the following formula: Where e is the natural logarithm; S(v) and S(u) represent the two current neighborhood analytical solutions respectively; ΔS represents the change value of the two neighborhood analytical solutions; δ is a coefficient similar to the Boltzmann constant; in a certain solution state, due to the change of the neighborhood, the system state will change, and the current analytical solution of the system will change; if the changed analytical solution is better than the current analytical solution, then the changed analytical solution is accepted; otherwise, the changed analytical solution is accepted with a certain probability, and under the same state, the greater the change in the system state, the smaller the probability of accepting the changed analytical solution, and as the algorithm progresses, the probability of accepting the changed analytical solution will become smaller and smaller.

8. The method for optimizing the intelligent hot rolling schedule of medium and thick plates in a steel plant based on double-layer optimization according to claim 7, characterized in that: The double-layer nested algorithm stops outputting when the maximum solution time is reached, and the optimal solution when the double-layer nested algorithm stops outputting is used as the optimal medium and thick plate hot rolling scheduling solution.