ADAPTIVE BOOSTING ALGORITHM-BASED TURBOFAN ENGINE DIRECT DATA-DRIVEN CONTROL METHOD

20210348567 · 2021-11-11

    Inventors

    Cpc classification

    International classification

    Abstract

    The present invention belongs to the technical field of control of aero-engines, and proposes an adaptive boosting algorithm-based turbofan engine direct data-driven control method. First, a turbofan engine controller is designed based on the Least Squares Support Vector Machine (LSSVM) algorithm, and further, the weight of a training sample is changed by an adaptive boosting algorithm so as to construct a turbofan engine direct data-driven controller combining a plurality of basic learners into strong learners. Compared with the previous solution only adopting LS SVM, the present invention enhances the control precision, improves the generalization ability of the algorithm, and effectively solves the problem of sparsity of samples by the adaptive boosting method. By the adaptive boosting algorithm-based turbofan engine direct data-driven control method designed by the present invention.

    Claims

    1. An adaptive boosting algorithm-based turbofan engine direct data-driven control method, wherein the method comprises the following steps: step 1: establishing a data set for the design of a turbofan engine direct data-driven controller step 1.1: collecting control signals during the operation of the turbofan engine, including input fuel flow w.sub.f(n) of turbofan engine, corrected relative rotary speed n.sub.1cor(n) of low-pressure rotor, and corrected relative rotary speed n.sub.2cor(n) of high-pressure rotor, wherein n=1, 2, . . . , indicating the n.sup.th sampling period; step 1.2: Δu represents the input of turbofan engine, Δy represents the output of turbofan engine, Δn.sub.1cor(n) and Δn.sub.2cor(n) respectively represent the variations of corrected relative rotary speeds of low-pressure rotor and high-pressure rotor of the turbofan engine, and Δw.sub.f(n) represents the variation of the input fuel flow of turbofan engine, defining
    Δu=[Δw.sub.f(1),Δw.sub.f(2), . . . , Δw.sub.f(n)].sup.T
    Δy=[Δn.sub.2cor(1),Δn.sub.2cor(2), . . . , Δn.sub.2cor(n)].sup.T [Δu ,Δy] is the original data set for the design of the turbofan engine direct data-driven controller; step 1.3: using the corrected relative rotary speed n.sub.2cor of high-pressure rotor as a scheduling parameter p (with the dimension equal to 1), and converting the scheduling parameter p to be within [−1,1], as shown in the following formula: p = 2 n 2 cor - ( n 2 cor _ max + n 2 cor _ min ) ( n 2 cor _ max - n 2 cor _ min ) wherein n.sub.2cor_max and n.sub.2cor_min are respectively the upper limit and lower limit of the relative rotary speed n.sub.2cor of high-pressure rotor of the turbofan engine; step 2: adopting the methods of mean substitution and analysis of the Box-plot to perform data cleaning on the data in the data set [Δu,Δy], and filling missing data and eliminating outlier data in the data set; step 3: adopting the LSSVM algorithm to design the turbofan engine controller step 3.1: adopting the random sampling method to use 80% of the data set as a training data set and 20% as a testing data set; step 3.2: adopting the Gauss kernel function Ω=K(p,t,k) to map the training data set to a high-dimensional feature space with the dimension of z from the original space so as to realize the linear regression of the training data set in the z-dimensional feature space, wherein the kernel function is expressed as follows: Ω = K ( p , t , k ) = exp ( - .Math. p ( t ) - p ( k ) .Math. 2 2 2 σ 2 ) . wherein t and k respectively represent the time t and the time k, p(t) and p(k) represent the scheduling parameters of the time t and the time k, σ is the initial hyper-parameter radial basis width of the Gauss kernel function, and σ>0 is required; step 3.3: establishing the optimization problem of LSSVM: min ω , b , e J ( ω , e ) = 1 2 ω T ω + 1 2 γ .Math. i = 1 N e i 2 s . t . y i [ ω T φ ( x i ) + b ] = 1 - e i wherein ω is the normal vector of a hyperplane, the hyper-parameter γ is the weight for balancing “computation power for finding an optimal hyperplane” and “minimum deviation between training set and testing set”, y.sub.i is the dependent variable after the control signals are given, e is the training error, b is the bias operator, and N is the number of samples in the training data set; step 3.4: using the Gaussian kernel function in step 3.2 and solving the optimization problem in step 3.3 to obtain the LSSVM regression function, which is expressed as follows: y lssvm = .Math. k = 1 N α k K ( p , t , k ) + b wherein y.sub.lssvm is the output of the turbofan engine controller designed based on the LSSVM algorithm, a is the Lagrangian operator, b is the bias operator, and N is the number of samples in the training data set; step 4: using the adaptive boosting method and the output of the turbofan engine controller designed based on the LSSVM algorithm established in step 3 to construct an adaptive boosting algorithm-based turbofan engine direct data-driven controller, and adjusting the parameters of the controller step 4.1: the training data set is T=[Δu′,Δy′], and [66 u′,Δy′] is the turbofan engine control data set obtained after data cleaning, wherein Δu′ is a control signal, Δy′ is the measured value Δn.sub.2cor of high-pressure rotor variation, and the basic learners in the adaptive boosting algorithm adopt the turbofan engine controller designed based on the LSSVM algorithm constructed in step 3 to give the initial hyper-parameter radial basis width a and the weight y and set epoch as the iteration number of the basic learners; step 4.2: initializing the weight of the training data set to D(1)=(w.sub.11,w.sub.12, . . . , w.sub.1N), w 1 i = 1 N , i=1,2, . . . , N, where w is the weight of each sample in the training data set; step 4.3: for the iteration number k=1, 2, . . . , epoch, using the training data set of the weight D(k) for training to obtain the basic learner G.sub.k(x), and calculating the maximum error E.sub.k predicted by the basic learner on the training data set, which is expressed as follows:
    E.sub.k=max|y.sub.i−G.sub.k(x.sub.i)|,i 1,2, . . . , N step 4.4: calculating the relative error of each data sample in the training data set, and adopting a linear error, a square error or an exponential error, which are respectively expressed as follows: linear error : e ki = .Math. y i - G k ( x i ) .Math. E k ; square error : e ki = ( y i - G k ( x i ) ) 2 E k 2 ; exponential error : e ki = 1 - exp ( - y i - G k ( x i ) E k ) ; step 4.5: calculating the regression error rate e.sub.regression, as shown in the following formula: e regression = .Math. i = 1 N w ki e ki wherein w.sub.ki is the weight of the data sample in the training data set obtained from the last iteration, and e.sub.ki is the relative error obtained in step 4.4; step 4.6: calculating the weight coefficient weight.sub.k of the basic learner, as shown in the following formula: weigh t k = e r e g r e s s i o n 1 - e r e g r e s s i o n step 4.7: updating the sample weight distribution of the training data set, and adaptively adjusting the initial hyper-parameter radial basis width σ according to the regression error rate, which is expressed as follows: w k + 1 i = w ki Z k weight k 1 - e ki σ k = σ k - 1 - 0.8 * exp ( - ( weight k - weight k - 1 ) ) wherein w.sub.ki is the weight coefficient of the i.sup.th data sample at the k.sup.th iteration, σ.sub.k is the hyper-parameter σ at the k.sup.th iteration, and Z.sub.k=Σ.sub.i=1.sup.Nw.sub.ki.Math.weight.sub.k.sup.1−e.sup.ki is the normalized operator; step 4.8: averaging the predictive values y.sub.c generated by all iterations to obtain the final strong learner output y.sub.final, which is expressed as follows: y final = 1 epoch .Math. c = 1 e p o c h y c step 5: using the cross validation method to determine the initial hyper-parameter radial basis width σ and the weight γ to satisfy the validation error of less than 0.1%, and maintaining the condition of σ,γ>ζ at all times during the iteration, wherein ζ is a smaller number not less than 0, if not in line, discarding the initial value, and selecting larger radial basis width σ and weight γ as the initial values of iteration to complete the design of the adaptive boosting algorithm-based turbofan engine direct data-driven controller.

    Description

    DESCRIPTION OF DRAWINGS

    [0034] FIG. 1 is a flow chart of a control method of the present invention.

    [0035] FIG. 2 is a flow chart of a least squares support vector machine algorithm adopted by the present invention.

    [0036] FIG. 3 is a flow chart of an adaptive boosting algorithm adopted by the present invention.

    [0037] FIG. 4 is a structural block diagram of an adaptive boosting algorithm-based turbofan engine direct data-driven controller.

    [0038] FIG. 5 is a comparison diagram of control results obtained based on a single LSSVM controller and an adaptive boosting algorithm-based turbofan engine direct data-driven controller of the present invention under the working conditions of Δn.sub.2cor=88% and Δw.sub.f=100.

    [0039] FIG. 6(a) and FIG. 6(b) are respectively comparison diagrams of control absolute errors and relative errors obtained based on a single LSSVM controller and an adaptive boosting algorithm-based turbofan engine direct data-driven controller of the present invention under the working conditions of Δn.sub.2cor=88% and Δw.sub.f=100.

    DETAILED DESCRIPTION

    [0040] The embodiments of the present invention will be further described in detail below in combination with the drawings and the technical solution.

    [0041] The flow chart of the control method of the present invention is shown in FIG. 1, and comprises the following specific steps:

    [0042] Step 1: establishing a data set for the design of a turbofan engine direct data-driven controller.

    [0043] Step 1.1: collecting control signals during the operation of the turbofan engine, including input fuel flow w.sub.f(n) of turbofan engine, corrected relative rotary speed n.sub.1cor(n) of low-pressure rotor, and corrected relative rotary speed n.sub.2cor(n) of high-pressure rotor, wherein n=1, 2, . . . , indicating the n.sup.th sampling period;

    [0044] Step 1.2: Δu represents the input of turbofan engine, Δy represents the output of turbofan engine, Δn.sub.1cor(n) and Δn.sub.2cor(n) respectively represent the variations of corrected relative rotary speeds of low-pressure rotor and high-pressure rotor of the turbofan engine, and Δw.sub.f(n) represents the variation of the input fuel flow of turbofan engine, defining


    Δu=[Δw.sub.f(1),Δw.sub.f(2), . . . , Δw.sub.f(n)].sup.T


    Δy=[Δn.sub.2cor(1),Δn.sub.2cor(2), . . . , Δn.sub.2cor(n)].sup.T

    [Δu,Δy] is the original data set for the design of the turbofan engine direct data-driven controller;

    [0045] Step 1.3: using the corrected relative rotary speed n.sub.2cor of high-pressure rotor as a scheduling parameter p (with the dimension equal to 1), and converting the scheduling parameter p to be within [−1,1], as shown in the following formula

    [00010] p = 2 n 2 cor - ( n 2 cor_max + n 2 cor_min ) ( n 2 cor_max - n 2 cor_min )

    [0046] wherein n.sub.2cor_max and n.sub.2cor_min are respectively the upper limit and lower limit of the relative rotary speed n.sub.2cor of high-pressure rotor of the turbofan engine;

    [0047] Step 2: adopting the methods of mean substitution and analysis of the Box-plot to perform data cleaning on the data in the data set [Δu,Δy], and filling missing data and eliminating outlier data in the data set obtained by collection;

    [0048] The steps of adopting the LSSVM algorithm to design the turbofan engine controller in step 3 are as follows, and the structural block diagram thereof is shown in FIG. 2:

    [0049] Step 3.1: for the training data obtained in step 1.2, adopting the random sampling method to use 80% of the total data as training data and 20% as testing data;

    [0050] Step 3.2: adopting the Gauss kernel function Ω=K(p,t,k) to map the training data set to a high-dimensional feature space with the dimension of z from the original space so as to realize the linear regression of the training data set in the z-dimensional feature space, which is expressed as follows:

    [00011] Ω = K ( p , t , k ) = exp ( - .Math. p ( t ) - p ( k ) .Math. 2 2 2 σ 2 )

    [0051] wherein p is the scheduling parameter in the linear variable parameter model, t and k respectively represent the time t and the time k, p(t) and p(k) represent the scheduling parameters of the time t and the time k, σ is the radial basis width (belonging to a hyper-parameter) of the Gauss kernel function, and σ>0 is required;

    [0052] Step 3.3: establishing the optimization problem:

    [00012] minJ ω , b , e ( ω , e ) = 1 2 ω T ω + 1 2 γ .Math. i - 1 N e i 2 s . t . y i [ ω T φ ( x i ) + b ] = 1 - e i

    [0053] wherein ω is the normal vector of a hyperplane, the hyper-parameter γ is the weight for balancing “computation power for finding an optimal hyperplane” and “minimum deviation between training set and testing set”, and γ>ζ is required, wherein ζ is a smaller number (with the dimension equal to 1) not less than 0, y.sub.i is the dependent variable after the control signals are given, e is the training error, b is the bias operator, and N is the number of samples in the training data set;

    [0054] Step 3.4: using the Gaussian kernel function in step 3.2 and solving the optimization problem in step 3.3 to obtain the LSSVM regression function, which is expressed as follows:

    [00013] y lssvm = .Math. k = 1 N α k K ( p , t , k ) + b

    [0055] wherein y.sub.lssvm is the output of the turbofan engine controller designed based on the LSSVM algorithm, a is the Lagrangian operator used during the solving process, and N is the number of data samples for training;

    [0056] As shown in FIG. 3, in step 4, using the adaptive boosting method and the output of the turbofan engine controller designed based on the LSSVM algorithm established in step 3 to construct an adaptive boosting algorithm-based turbofan engine direct data-driven controller, and adjusting the parameters of the controller;

    [0057] Step 4.1: inputting the training sample T=[Δu′,Δy′], wherein [Δu′,Δy′] is the turbofan engine control data set obtained after data cleaning, wherein Δu′ is a control signal, Δy′ is the measured value Δn.sub.2cor of high-pressure rotor variation, and the basic learners in the adaptive boosting algorithm adopt the turbofan engine controller designed based on the LSSVM algorithm constructed in step 3 to give the initial hyper-parameter radial basis width σ and the weight γ and set epoch as the iteration number of the basic learners;

    [0058] Initially setting σ=30 and γ=10, and setting the iteration number epoch=10 of the basic learners;

    [0059] Step 4.2: initializing the weight of the training set to D(1)=(w.sub.11,w.sub.12, . . . , w.sub.1N),

    [00014] w 1 i = 1 N ,

    i=1,2, . . . ,N, where w is the weight of each data sample;

    [0060] Step 4.3: for the iteration number k=1, 2, . . . , epoch, using the training data set of the weight D(k) for training to obtain the basic learner G.sub.k(x), and calculating the maximum error E.sub.k predicted by the basic learner on the training data set, which is expressed as follows:


    E.sub.k=max|y.sub.i−G.sub.k(x.sub.i)|,i=1,2, . . . , N

    [0061] Step 4.4: calculating the relative error of each data sample in the training data set, and generally adopting a linear error, a square error and an exponential error (selecting one in use), which are respectively expressed as follows:

    [00015] Linear error : e ki = .Math. y i - G k ( x i ) .Math. E k Square error : e ki = ( y i - G k ( x i ) ) 2 E k 2 Exponential error : e ki = 1 - exp ( - y i - G k ( x i ) E k ) ;

    [0062] Step 4.5: calculating the regression error rate e.sub.regression, as shown in the following formula:

    [00016] e regresssion = .Math. i - 1 N w ki e ki

    [0063] wherein w.sub.ki is the weight of the data sample in the training data set obtained from the last iteration, and e.sub.ki is the relative error obtained in step 4.4;

    [0064] Step 4.6: calculating the weight coefficient weight.sub.k of the basic learner, as shown in the following formula:

    [00017] weigh t k = e r e g r ession 1 - e r e g r ession

    [0065] Step 4.7: updating the sample weight distribution of the training data set, and adaptively adjusting the hyper-parameter σ according to the regression error rate, which is expressed as follows:

    [00018] w k + 1 i = w ki Z k weight k 1 - e ki σ k = σ k - 1 - 0.8 * exp ( - ( weight k - weight k - 1 ) )

    [0066] wherein w.sub.ki is the weight coefficient of the i.sup.th data sample at the k.sup.th iteration, σ.sub.k is the hyper-parameter σ at the k.sup.th iteration, and Z.sub.kΣ.sub.i−1.sup.Nw.sub.ki.Math.weight.sub.k.sup.1−e.sup.ki is the normalized operator.

    [0067] Step 4.8: averaging the predictive values y.sub.c generated by all iterations to obtain the final strong learner output y.sub.final, which is expressed as follows:

    [00019] y final = 1 epoch .Math. c = 1 e p o c h y c

    [0068] Step 5: using the cross validation method to determine the initial hyper-parameter radial basis width σ and the weight γ to satisfy the validation error of less than 0.1%, maintaining the condition of σ,γ>ζ at all times during the iteration, wherein ζ is a smaller number not less than 0, if not in line, discarding the initial value, and selecting a larger radial basis width σ as the initial value of iteration to complete the design of the adaptive boosting algorithm-based turbofan engine direct data-driven controller.

    [0069] FIG. 5 is a comparison diagram of control results of a high-pressure rotor obtained based on a single LSSVM controller and an adaptive boosting algorithm-based turbofan engine direct data-driven controller of the present invention under the working conditions of Δn.sub.2cor=88% and Δw.sub.f=100, from which it can be seen that the controller of the invention shortens the response time and reduces overshoot

    [0070] FIG. 6(a) and FIG. 6(b) are respectively comparison diagrams of control absolute errors and relative errors of a high-pressure rotor obtained based on a single LSSVM controller and an adaptive boosting algorithm-based turbofan engine direct data-driven controller of the present invention under the working conditions of Δn.sub.2cor=88% and Δw.sub.f=100. When the turbofan engine reaches a steady operating state, compared with the original method, the improvement method adopted reduces the absolute error by 95.8% and reduces the average relative error by 3.29% within the entire working time.

    [0071] In conclusion, the turbofan engine direct data-driven controller using the adaptive boosting algorithm can shorten the time for the turbofan engine to reach the target rotary speed, and significantly reduce the control error and improve the control precision, with obvious performance advantages.