Derivation of CaO-SiO 2 -Al 2 O 3 system Slag Viscosity Equation by GP

Slag viscosity is essential in high-temperature metallurgical processes. However, a slag viscosity model is difficult to exactly interpret as it has a strong nonlinear relation with its composition and temperature. In this paper, genetic programming (GP) was employed to derive a CaO-SiO 2 -Al 2 O 3 slag viscosity equation. The equation was automatically described as a simple algebraic equation with the basicity and content of Al 2 O 3 and temperature. The average relative error between the values obtained by the equation and the experimental data used for its derivation was as low as 17.1%. Computer simulations were performed to evaluate the accuracy of the derived viscosity equation and were then compared with many experimental viscosities and calculated values of other researchers. Slag compositions and temperatures for simulation calculations were the experimental data which were not used for deriving a viscosity equation. Our results showed that the viscosity equation was relatively exact. The viscosities of CaO-SiO 2 -Al 2 O 3 system slag could be simply and expediently predicted within the wide range of compositions and temperatures by using the derived viscosity equation.


Introduction
Slag viscosity is a key property that determines the stability and productivity in the metallurgical furnace operation，and it is of great importance in understanding the fluid dynamic of molten slags and slag-metal reaction kinetics during the pyro-metallurgy process. Therefore, fundamental knowledge, and is capable of automatically inferring parsimonious explanatory models like those that would ordinarily be hand-crafted from first principles by a human expert. [18,27] GP has been successfully applied to many scientific fields; but no report has yet been made to apply GP to metallurgical field. [19][20][21][22][23][24][25][26][27] In particular, viscosity of metallurgical slag is difficult to interpret because it has a strong nonlinear relation with composition and temperature of slag. However, Using GP, the viscosity equation can simply be derived with no need of interpretation of the structure of slag. The viscosities of CaO-SiO2-Al2O3 system within the wide composition and temperature range are listed in references. [1][2][3][4]6] In this work, viscosity equation of CaO-SiO2-Al2O3 system slag is derived using the Kozanevitch's experimental data [1] and GP. Then, in order to evaluate its accuracy, the results are compared with the experimental data and model calculation results of other researches. [1][2][3][4]6] 2. Model

General Model Description
For derivation of slag viscosity equation, firstly the GP was discussed. Based on the collected experimental data, GP automatically generates the models without any pre-definition of the structure of models, automatically evolves both the structure and parameters of models and finally obtains the rational model. GP can be divided into preparatory steps and executional steps. [15,24] The preparatory contain the following five major steps: a) The set of terminals for each branch in tree b) Selection of primitive functions for creating tree c) The set of the fitness function d) The set of parameters for the run e) The set of termination criterion and display of the result The step a) and step b) specify the ingredients for composing the individual trees. Individual functions are decoded in the form of tree in order to perform the genetic operation. [15] A run of GP is a competitive search among a diverse population of functions describing the system which composed of selected primitive functions and terminals.
The third step concerns the fitness calculation for the individual functions in population. The fitness calculation is used for estimating the performance of individual functions. Fitness is the driving force of Darwinian natural selection. [24] In this work, the goal is to get GP to automatically derivate a slag viscosity equation, and the fitness function is the mechanism for telling GP to derivate viscosity equation with composition and temperature of slag.
The first two steps (a) and b)) define the exploration space and the third step c) implicitly specifies the desired exploration target. The steps d) and e) are administrative. The fourth step d) defines the control parameters. They consist of population size, maximum depth of individual tree, probabilities of genetic operations. [15] The fifth step e) defines the termination criterion and the output of the final result. The termination criterion in step e) may include a maximum generation number as well as success of exploration. [16] After the steps mentioned above are performed, the run of GP can be started.
GP starts with a population of randomly generated individual trees which consist of terminals and primitive functions (preparatory steps a) and b)). GP iteratively transforms a population of individual trees into a new generation of the population by randomly selected genetic operations. [15] Individuals are probabilistically selected from the population based on their fitness valves (preparatory step c)), GP executes reproduction, crossover, mutation operations, resulting in creating a new population. The executional steps of GP are as follows: [24] 1. Randomly create an initial population of individual trees consisted of the mathematical operators, primitive functions and terminals (independent variables and constants). 2. Iteratively execute the following sub-steps (a-c) on the population until the termination criterion mentioned in preparatory step e) is satisfied.
(a) Calculate the fitness values of each individual functions in the population by using the fitness function mentioned in preparatory step c).
(b) Select one or two individual trees from the population with a probability based on fitness values to take part in the genetic operations (sub-step (c)).
(c) Create new individual(s) for the new population by performing the following genetic operations.
•Reproduction: Copy the selected individuals in old population into the new population.
•Crossover: Create two new offsprings for the new population by swapping randomly chosen sub-trees from two selected individuals in the old population.
•Mutation: Create one new offspring for the new population by randomly mutating a randomly chosen sub-tree in one selected individual in the old population. 3. When the termination criterion is satisfied, the best individual in the population is outputted. Figure 1 shows individual tree generated by random choices of the primitive functions and terminals. Mathematical expressions of individual trees are described as following: Individual1=A+t w −C Individual2=C−exp(A/w1)+C·A/(t+w2) The primitive functions of Individual1 are '−', '+', and '^', terminals are C, A, t, w. C, A, t: independent variables, w: constant; A maximum depth of tree is related with complexity of mode, [15] and each individual in the population is measured or compared in terms of how well it performs the task at hand (using the fitness value provided in the third preparatory step). The creation of the initial population is a blind random search in the search space for modeling the system, and fitness of most of individuals are very poor, while some individuals in the population are fitter than others. Differences of fitness value provide a criterion to decide future exploring direction.
The crossover operation is exemplified in Figure 2. Mathematical expressions of parent in the old population and offspring are as following: Traditional mutation consists of randomly selecting a mutation point in a tree and substituting the subtree rooted there with a randomly generated subtree, as illustrated in Figure 3. Mathematical expressions of parent and offspring are as following: Parent=(w·C+A) · (w/t), Offspring=(C+A) · (w/t) Reproduction involves simple copy of certain individuals into the new population. After the genetic operations are performed in the old population (current), the new offspring population replaces the old population. This iterative processes of fitness calculation and performance of the genetic operations are repeated until termination criterion is satisfied.

Parameters for CaO-SiO2-Al2O3 system Slag Viscosity Model
As mentioned above, viscosity of CaO-SiO2-Al2O3 system slag is considered to be related with its composition and temperature. Therefore, the set of terminals was defined as following: 'C' and 'A' are related with CaO, Al2O3 content in slag, and 't' is related with temperature of slag. 'w' denotes constant. Independent variables were set as 'C', 'A' and 't' because content of SiO2 in slag could be determined by CaO and Al2O3 contents. The set of primitive functions was defined as following: Fitness of individual was calculated by following Eq (3).
where n is total number of experimental data used in GP, ηi,Calc is viscosity calculated by individual at i-th experimental point, and ηi,Expe was viscosity measured at i-th experimental point. Fitness value is bigger for better individuals in population. As for the fitness measurement, it is very important to determine the constants contained in individual. The constants were determined by genetic algorithm and Levenberg-Marquardt method. Genetic algorithm was used for a global search in the wide range and Levenberg-Marquardt method [25] was used for a local search of constants. Penalty was assigned on the individuals that could not be evaluated to acceptable fitness. In other words, in this cases that fitness was not a real number or remarkably small. Individuals which don't include all independent variables were discarded. Initial individuals were created by using the ramped half-and-half generative method, and depth of an individual tree was specified in the range 3-7. Maximum depth of an individual was limited to 16 considering calculation time in evolutionary process. Individuals more than 16 in maximum depth were discarded. Selection of individual was performed by employing the fitness-proportionate selection method. [15] In this case, selection probability is expressed by following Eq (4).
where pj is a selection probability of j-th individual, fitj is a fitness of j-th individual, and M is an initial population number. The numbers of initial population and final generation were set as 150 and 200, respectively. Initial data to run were Kozakevitch's experimental values. [1] In Kozakevitch's experimental data, contents of CaO, SiO2 and Al2O3 all were in the range of 10-60%, temperature was in the range of 1500-1900℃. Rational result was not obtained in run process, i.e. the problem of premature convergence appeared. Hornby proposed a novel approach for overcoming the problem of premature convergence, where the age was applied to individuals. [26] In this work, individuals age structure was applied, and the age of newly generated individual was defined as 0. Its age was increased by one after its reproduction. Each population does not involve any individual older than maximum age. Individuals above maximum age were discarded. Maximum age was set as 10. Content of CaO can be determined by slag basicity (R) and Al2O3 content, it was described by the following equation (7).

Validation of Viscosity Equation
To evaluate accuracy of derived viscosity equation, they were compared with experimental values listed in references and calculation results by other viscosity models were compared.
Viscosities calculated by Eq (5) were compared with Kozanevitch's experimental values [1] and calculated results by Factsage7.0, which were showed in Figure 5. Basicity (R) and content of Al2O3 of Kozanevitch's slag [1] were in the range of 0.16-6 and 10-65% respectively, and temperatures was in the range of 1500-1900℃. As shown in Figure 5, Viscosities calculated by Eq (5) were fairly fit with the experimental values and more accurate than calculated results by Factsage7.0. The agreement of the calculated by Eq (5) with experimental values was evaluated by the average of relative error between them, described by the following equation: where N denotes the total number of experimental data points.
The average of relative error between Eq (5) and Kozanevitch's experimental values was 17.1%. Suzuki calculated the viscosities of CaO-SiO2-Al2O3 system slag by using revised QCV (quasichemical viscosity) model and compared with experimental values of many researchers. [6] The model enables the viscosities of fully liquid slag in CaO-SiO2-Al2O3 system to be predicted within experimental uncertainties over a wide range of composition and above liquidus temperatures. Viscosities calculated by Eq (5) were compared with Suzuki's calculation results and experimental viscosities of other researchers, which were showed in Figure 6 and Figure 7. Figure 6 showed change of viscosity with mole Al2O3/(CaO+Al2O3) at different SiO2 mole fractions and temperatures. Figure 7(a) showed change of viscosity with SiO2 mole fractions at different temperatures in mole Al2O3/CaO=50/50, and Figure 7(b) showed the changes of basicity and contents of Al2O3 with SiO2 mole fraction in mole Al2O3/CaO=50/50. As shown in Figure 6 and Voskoboynikov measured many experimental viscosities of CaO-SiO2-Al2O3 system slag in reference. [2] To evaluate the reliability of Eq (5) once more, viscosities calculated by Eq (5) were compared with Voskoboynikov's experimental values and viscosities calculated by Factsage7.0, which showed in Figure 8. Basisity and Al2O3 of Voskoboynikov's slag were in the range of 0.16-3.7 and 0-35% respectively, and temperatures were in the range of 1250-1550℃. As can be seen in the Figure 8, calculated viscosities were relatively well fit with experimental values and it is more accurate than calculated results by Factsage 7.0. The average of relative error between values calculated by Eq (5) and experimental values was 20.48%.
Viscosities calculated by Eq (5) were compared with calculation values and experimental data of other researchers listed in reference [3] , which were illustrated in Figure 9. Viscosities were calculated according to the change of with weight ratio Al2O3/(Al2O3+CaO) at different weight contents SiO2 at 1500℃. It can be seen that viscosities calculated by Eq (5) were relatively well fit with experimental and calculated viscosities.
Finally, viscosities calculated by Eq(5) were compared with experimental results and model calculation results in reference [4] and calculation results by Factsage7.0, which was showed in Figure 10. The average of relative errors between viscosities calculated by Eq (5), Factsage and experimental data were 21.3% and 36.5%, respectively.
It is very important to exactly indicate the application range of the Eq (5). In slag compositions compared above, Eq(5) can be regarded to be relatively exact. Slag compositions of all viscosity measurement points mentioned above (see Figure 5-10) were showed in Figure 11. For convenience, slag compositions were represented by basicity and content of Al2O3. As shown in Figure 11, lines (1-4) and line5 are corresponded to slag compositions in Figure 6(a-d) and Figure 7 respectively, and lines (6-9) are corresponded to slag compositions in Figure 9(SiO2 40, 50, 60, 70%). As shown in Figure11, Kozanevitch's composition range is the widest, while Voskoboynikov's composition range is narrower than Kozanevitch's one. However, Voskoboynikov' experimental points are much more than others. Slag composition ranges of other researchers were relatively narrow, which were contained within Kozanevitch and Voskoboynikov's composition ranges. Moreover, as shown in Figure 11, viscosities for slag compositions were not measured in areas A, B and C, because melting points of slag are relatively high in these areas.
Totally, Eq (5) can be recognized to depict the viscosity of CaO-SiO2-Al2O3 system slag in wide composition and temperature range, i.e. in the area of gray oblique lines in Figure. 11.

Conclusions
In this paper, genetic programming (GP) was employed to derive viscosity equation of CaO-SiO2-Al2O3 system slag and its algorithm was listed. By applying GP, it was automatically described as form of simple algebraic equation with slag composition (or basicity and Al2O3 content) and temperature. The viscosities of CaO-SiO2-Al2O3 system slag can be simply and expediently calculated in a wide range of compositions and temperatures by using the derived viscosity equation. To evaluate accuracy of viscosity equation of CaO-SiO2-Al2O3 system slag, experimental data and calculated results of many researchers which were not used for derivation of the viscosity equation were compared, and a reasonably good agreement was demonstrated between calculated results by viscosity equation Eq (5) and other researchers experimental and calculated data. It is estimated that genetic programming can be used for distilling free-form nature laws from not only slag viscosity but also other complex metallurgical processes. Figure 1. Randomly generated individual trees Figure 2. Example of crossover operation Figure 3. Example of mutation operation Figure 4. Flowchart of GP for derivation of CaO-SiO2-Al2O3 Slag viscosity equation Figure 5. Comparison between Kozakevitch's experimental values [1] and viscosities calculated by Eq (5), Factsage in CaO-SiO2-Al2O3 system slag Figure 6. Comparison of viscosities calculated by Eq (5) (5), Factsage in CaO-SiO2-Al2O3 system slag (experimental viscosities was listed in reference [2] ) Figure 9. Comparison of viscosities calculated by Eq (5) and experimental data, calculated by Factsage [3] Figure 10. Comparison of viscosities calculated by Eq (5) and Zhang's experiment data [4] , model calculation results Figure 11. Compositions of slag used in this work Calculated by Eq (5     Measured viscosity [4] , /dPas Zhang's model 4) Modified Urbain model Figure 10. Comparison of viscosities calculated by Eq (5) and Zhang's experiment data [4] , model calculation results Kozanevitch's slag composition [1] Voskoboynikob's slag composition [2] Zhang's slag composition [4] Line1-4: Slag composition in Fig. 6(a-d) Line5: Slag composition in Fig. 7 Line6-9: Slag composition in Fig. 9(SiO 2 , 40, 50, 60, 70%)