Non-linear Optimal Controller Design of Vehicle With Low Speed Operation Based On Data Mining Algorithm

In this paper, we realize parallel parking task based on two-stage modeling method, where parking task model and vehicle dynamical model are developed respectively and incorporated into a entire model in a seamless manner. The vehicle dynamics is highly constrained by non-holonomic constraint with nonlinear tire characteristics. In order to describe vehicle dynamics, we use a new data mining based affine system modeling method. The entire parking task model is combined with several sub-parking task models, which consist of some conditions in state-input space of the system and their transitions to another. The incorporation of the both parking task model and vehicle dynamical model is realized using finite state machine. The proposed model is very general that regardless of the initial position of the vehicle, it is successfully controlled to move into the parking space. In the later part of this paper, we present a mathematical programming based optimal control scheme where the optimal inputs are selected among the permissible set of the input variable, considering all the limitations specified by linear inequalities. In order to confirm the usefulness of the proposed method, some simulation results are shown.


INTRODUCTION
The progress in computer technology and computerized management of vehicle dynamics have diversified and improved the control performance related to vehicle handling, stability and comfort. Although the previous works have been successfully applied to the vehicle systems in the market places, most of them focused on the steady state analysis of vehicle dynamics assuming slip angles of both left and right front wheel are exactly same and their absolute values are much smaller than one, and also both left and right rear wheel are exactly same and their absolute values are much smaller than one, absolute value of steering angle and velocity are much smaller than one and much bigger than one respectively, and so on. If they are applied to the vehicle driving at the low speed possibly with big steering angle input, it will show big modeling error. Consider the equivalent two-wheel model [4]. In the equivalent two-wheel model, cos (b) = 1, sin (b) =0, F = a(b) etc. are assumed. Here b and F are the lateral slip and the lateral force at the point of gravity center. Since the model involves V in the denominator, this model is unfit for the low speed operation.
On the other hand, data mining [1][2] [3] or data analysis is a new discipline lying at the intersection of statistics and artificial intelligence. Data mining algorithm analyzes observational data sets to find each parameter's relationship with another, and summarizes the data in the way that is useful to the designer. GMDH (Group Method of Data Handling) is a well-known data mining technique that describes suspected dynamics in the form of minimal polynomials. The data mining algorithm is well-defined procedure that takes data as input and produces output in the form of models or patterns. However, its applications are often restricted to conservative problems such as data interpretation, data clustering, pattern recognition etc. These are some types of models constructed by data observation, but attempts to bring out a desired data from the constructed model, are rarely found in literatures. Since the latter is, however, subjected to probabilistic figures, not deterministic analysis, both modeling and control (or data inference) should be considered together. This is because modeling seeks to represent the prominent structures of the data set, and not small idiosyncratic deviations. This paper realizes parking task of unmanned vehicle. The realization of parking task is highly constrained control problem because of modeling inaccuracy, which arise when large steering angle and very low speed are applied. This modeling inaccuracy comes from both complexity of the complicated parking task and complexity of nonlinear dynamics. Our approach is to develop both task model and dynamical model, respectively and incorporate them in a seamless manner. The dynamical model is firstly constructed applying data mining algorithm, which summarizes the vehicle dynamics in a polynomial affine system formation. The task model is then constructed using finite state automaton, where mode transition and mode selection are described. Some modes are introduced to realize parking task, where each mode is associated with its own vehicle dynamics. Both task model and dynamics model are general that regardless of the initial position of the vehicle, or the selection of state variables, our proposed model realizes control objective with strong robustness. The developed model is applied to the mathematical programming based optimal control scheme, where inputs are selected among the permissible set which characterizes observational data set used for constructing dynamical model of the vehicle. We investigate the usefulness of the proposed method through simulation results.

VEHICLE DYNAMICS
This chapter presents a new modeling method for vehicle dynamics operating at a low speed. When the vehicle is operated with a large steering angle applied, the directions of front and rear tires are different that without considering the lateral slips of each tire, high performance controller design is unlikely to be achieved for the attitude control of the vehicle. Most of the models reported in the literatures ignored the lateral slips of each tire in case of large steering angle applied. It is not suitable to apply the models to the low speed operation control with possibly large steering angle applied, as in our work.
The desirable characteristics of the model to be developed can be stated as follows; (D.1) appropriateness in both the selection of the algebraic structure and identification of the coefficients, and (D.2) tractability to optimize the developed dynamics. In order to satisfy these items, we propose a new modeling method based on the observational data sets analysis. The proposed algorithm extracts the relationship between the state variables (to be controlled) and other observational data sets, and compressed them in a polynomial affine system expression. Although the conventional data mining algorithm such as Global Method of Data Handling, summarizes the suspected dynamics, arbitrarily selecting the algebraic structure of the observational data sets, it is not still fully enough for direct application of the model.
From the perspective of control system designer, it is convenient for controlling the system to observe how the system responds to the given input. Especially when the model is developed in linear form to the input variables, the system can be easily controlled through the application of conventional control theories. The presented algorithm is the exploratory data mining procedure where the model to be developed, is skeletonized in a polynomial affine system form as follows.

Polynomial Data Mining Algorithm For Affine System Modeling
Step 1 Initialization: Set N z = NULL, L z = NULL, N x = NULL, L x =NULL, N d z = NULL, l=0, C=1, and r(m,0) = infinity.
Step 2 Acquisition of Data Sets: Select the set of target variables N d z and it's dimension L. Store the observational data sets z =[N z , L z ], and set N z = N z and L z = L z , where N z denotes the set of the state variables to be nonlinearly evolved, and L z denotes the set of the input variables to be linearly evolved, respectively. Each of the element z(i) (1 i m +1) has n time series data. Note that z(i) (1 i m N ) is involved in N z and z(i) (m N +1 i m) is involved in N z . Subdivide the observational data sets into the training set ST and the checking set SC. z(i,j) is involved in ST for all i and 1 j nt, and z(i,j) is involved in SC for all i and nt+1 j n.
Step 3 Propagation of Variables: Combine all z(i,j) in the training set ST by the partial polynomial as follows.
If z(p) is involved in N z and z(q) is involved in N z , If z(p) is involved in L z and z(q) is involved in N z , Z(k)=a k,0 +a k,1 z(p)+a k,2 z(q)+a k,3 z 2 (q)+a k,4 z(p)z(q) If z(p) is involved in L z and z(q) is involved in L z , Z(k)=a k,0 +a k,1 z(p)+a k,2 z(q)+a k,4 z(p)z(q) Here, 1 p m, 1 q m, p does not equal to q, and 1 k m(m-1)/2.
Step 4 Computation of Partial Polynomial: Obtain the coefficients of partial polynomials by applying the least square method that minimizes the difference between the target variable and the dependent variable Z as follows, Here, nt is the number of data in the training set and Z(k,j) is the partial polynomial made of z(p,j) and z(q,j).
Step 5 Representativeness Assessment: The adequacy of each newly discovered variables Z(k) to represent the target variable is measured by following representativeness criterion.
Note that Z(k,j) is obviously in the checking set since j nt.

Step 6 Elimination of Least Effective Variables:
Reorder Z(k) in the order of the size r(k) from smallest to biggest. Set r(m,k) to the smallest r(k). Screen out all Z(k) which do not satisfy r(k) Rth, where Rth is the threshold value. Do the following: Step 7 Model Optimality Test: If r(m,k) r(m, k-1), set l=l+1, and go to Step 3, if C is equal to L, terminate with end. Otherwise, set C = C + 1, r(m,k) = infinity, l = 0, N z = N z , L z = L z , and go to Step 2. Here l is the iteration number, and r(m,k) is the minimal number of r(k) until l-th iteration.
The developed model can be represented as affine system form as follows where f and g are high order polynomials expanded by exploratory data mining. Note that although the function f and g possibly become very long and very high order polynomials depending on the behavior of the target variable, this model is very useful formation to realize the associated control objectives, as we shall see in the next chapter. The proposed modeling method is applied to realize parallel parking task of unmanned vehicle system. Although the proposed affine system model accurately reproduces the vehicular behavior, it is still insufficient for realizing parallel parking task. This is because the objective task is highly constrained that the entire task is often unfeasible with a single algorithm or control mode. Figure.1 shows the automaton model of the automatic parking task, where some variables are defined as follows: is the time instant when a new mode starts, x d (k) is the desired value of x(k) and the subscript index (1), (2), and (3) indicate the corresponding positions of (v 2 ,w 2 ), (v 3 ,w 3 ) and (v 4 ,w 4 ) in the figure 1 respectively, the subscript index (N) indicates the neighbor of the position and R min is the minimum radius we can realize the exact circular driving. The center (v c1 ,w c1 ) and the radius from the current position are defined as follows.
In figure.2, the positions (v c2 ,w c2 ), (v 3 ,w 3 ) and (v 4 ,w 4 ) are assumed to be easily acquired. The position (v 2 ,w 2 ) is easily obtained by drawing the tangential line as in the figure.2. Figure 1 shows the finite state automaton based parking task model, and Figure 2 and Figure 3 show parking task examples in case of 0 x 2 (k) 90 and 180<x 2 (k) 270, respectively. In the figure 2, a vehicle is initially located at the point of (v 1 ,w 1 ) which is on the south side of the dashed line. Here, the dashed line implies the centerline of parking space. If the vehicle is located on the north side of the dashed line, finite state automaton model as the figure 1 can be constructed easily in the similar way. The initial position of the vehicle is assumed to be at least at the distance of R min. The vehicle is successfully moved into the parking space making two circles. The thick line implies wall. Note that the center point, (v c2 ,w c2 ) of the right side circle with the traveling radius R min is located on the line of wall. This means the values of v c2 , w c2 , v 3 , and w 3 are given. The values of v 2 , w 2 and R 1 are easily obtained. If R 1 (k) is smaller than R min at the sampling instant k after starting at Mode1, the mode of the vehicle is transitioned into the new mode, Mode 2. In Mode 2, the vehicle is moving straight backwardly until R 1 (k) is found bigger than R min. When the vehicle is in the Mode 7, it is moving anticlockwise on the left circle of the figure 2. After arriving at the point of x d N, (1) , the vehicle is in Mode 9, moving backward clockwise.
If the vehicle is initially at the position of (v 1 ,w 1 ) with the yawing angle of 90<x 2 (k) 180, the mode of the vehicle is transitioned into Mode 4, where the vehicle moves backwardly making a circle with a traveling radius R min until the yawing angle becomes smaller than 90 degree. Then the mode of the vehicle goes to Mode 1. After investigating R 1 (k), the next mode of the vehicle will be decided. Figure 3 shows the parking task example when the vehicle is initially at the position (v 1 ,w 1 ) with the yawing angle of 180<x 2 (k) 270. Note that the traveling trajectory which has same distance with the position of (v 1 ,w 1 ) and the position of (v 5 ,w 5 ). The traveling radius R 2 are easily obtained as in the case of Figure 2.
Lastly if the vehicle is initially at the position of (v 1 ,w 1 ) with the yawing angle of 270<x 2 (k) <360, the vehicle is moved anticlockwise backwardly, being in Mode 5 until the yawing angle is found equal to or smaller than 270 degree. Then the mode of the vehicle goes to Mode 1. After investigating R 2 (k), the next mode of the vehicle will be decided.
Note that the proposed finite state automaton based automatic parking task model is very general that regardless of the initial position and attitude, the vehicle is successfully controlled to move into parking space. The proposed parking task model coupled with the proposed vehicle dynamics model realizes high performance motion control as we shall see in the later chapter. Some approaches have been proposed to develop auto-parking system in the literatures [5][6][7][8]. They mainly focused satisfaction of the non-holonomic constraints of the vehicle system to realize ideal   parking trajectory. However, they did not consider slip of the tires which must be carefully considered for realization of parking task. In this paper, we proposed robust parking task and vehicle dynamical models, where the former enables a robust realization of parking task since it is general one and the latter enables the consideration of accurate dynamical characteristics.

MODEL VERIFICATION
In this chapter, we verify the model developed in the previous chapter. In order to take observational data sets of the vehicle dynamics operating at a low speed, we used CarSim. CarSim is the driving simulator system developed by the University of Michigan Transportation Research Institute which simulates various operating conditions related with accelerating, braking, manipulating the steering angle and so on, and provides the variables of interest to plot and analyze.
Since the proposed data-mining algorithm tries to represent the prominent behavior of the target variable, some idiosyncratic deviations may not always be identified through the developed model. Therefore the operating conditions to be applied to the simulator should be fully considered for the tasks to be realized that operating conditions such as input pattern to be applied to real system, hardware specification to be adopted, and so on, are used for learning of the model.
The control objective in this paper is to realize an exact behavior of the vehicle dynamics, where derivative of inverse of r and yaw angle are selected as the target variables, where r is the radius of whirling motion. The driving conditions used in this simulation are as follows: The vehicle is 3800 mm long and 1527 kg weigh with the distance from gravity center to front wheel and rear wheel of 1014 mm and 1676 mm respectively, and radii of front and rear wheel is 277.566 mm and 286.387 mm respectively, where roll, pitch and yaw inertias are 606.1 kg m 2 , 2741.9 kg m 2 and 2741.9 kg m 2 , respectively.
We firstly show in the figure 4, 5, 6 the behavior of the steering angle (deg), vehicular speed, and angular rate at the point of GC which were used for obtaining numerical model. Note that they are generated so as to make every conceivable combination with each other. Next, we show the numerical affine dynamics obtained by applying the proposed method as follows, Here, x 1 is inverse of r, and x 2 is yawing angle, u 1 is derivative of steering angle and u 2 is speed. Figure 7 and Figure 8 show the behavior of the state variables, where `CarSim' implies the behavior of real data and `Proposed' implies the obtained dynamics by applying the proposed method. Note that in both figures, the obtained dynamics have almost similar behaviors with real data that actually their correlation coefficients are 0.99774 and 0.99986, respectively.

OPTIMAL CONTROLLER DESIGN
This chapter describes an effective design method for the attitude control system of unmanned vehicle operating at a low speed. Although we reviewed in the previous chapter the reproducibility for the steering angular speed, we do not deny the dependence of the reproducibility on the learning data that are used for constructing numerical model. This is because the proposed modeling method is some type of the statistical reproduction that for example, if we turn the steering wheel to the right and left at a much faster speed than those in the previous figures, it does have, of course, very big differences between the real values and the reproduced values.
We propose the controller design method as for the statistically reproduced model, where the permissible sets of the state variable and input variable are defined to characterize the learning data. Then the optimal solution considering the reproducibility is found by selecting among the permissible set of the input, P u . The developed affine model is represented in the discrete system description as follows We firstly define the permissible set of state variables as follows, , where Ts is the sampling interval, x i,M and x i,m denote the maximum and minimum value of x i among the learning data set, x d i,M and x d i,m denote the maximum value and minimum value of (x i (k+1)-x i (k))/2 and x dd i,M and x dd i,m for (x i (k+1)-2 x i (k)+ x i (k-1))/(Ts 2 ). In a similar way, the permissible set of input variable is defined.
As regarding the permissible sets, the important functions of the controller to be constructed are to find optimal control input u i (k) which is involved in the set P u . Note that the permissible sets are expressed in linear inequalities. This implies the inequalities are used as the linear constrained conditions in the mathematical programming problem such that all objective variables are included in the permissible sets.
Based on the model developed in the previous chapter, the control problem for attitude control of the unmanned vehicle system can be stated as follows, Find u(k) which minimizes the following performance criteria J = w 1 (x 1 (k+1) x d,1 (k)) 2 +w 2 (x 2 (k+1) x d,2 (k)) 2 +w 3 (u 1 (k) u 1,d (k)) 2 +w 4 (u 2 (k) u 2,d (k)) 2 subject to x and u involved in their permissible sets and state equation.
Here, w 1 to w 4 are the positive weighting parameters and x d (k) and u d (k) are destination vectors for x(k) and u(k), respectively.

SIMULATION RESULTS
In this chapter, we show some results to verify the usefulness of the proposed method. We used the vehicle model shown in the chapter 3 where vehicle information is specified in detail. x d,1 (k) = 1/r(ref), x d,2 (k) = u 2 (k)/(r(ref))+ u 2 (k-1), u d,1 (k) = u 1 (k-1), u d,2 (k) = u 2 (k-1), and for obtaining performance optimization as follows, w 1 = 10000, w 2 = 10000, w 3 = 1 and w 4  We find that even though its behavior contains oscillation, the vehicle follows well the trajectory that describes a circle with the radius of 10 meters. Note that x1 is oscillatory at the center of -0.1, since in our numerical framework, the sign of 1/r(ref) denotes the direction of circulating movement. The minus sign implies the rightward circulation. One may tune the weighing parameter w i in order that x i may show less oscillation. The last figure of figure9 shows in orthogonal coordinate system the track of the vehicle which traveled during 200 seconds with r(ref) = 10 and figure8 shows the data with r(ref)=100. In both cases, the trajectory tracking performance is well achieved. Note that in figure7, and figure8, X-direction and Y-direction denote the profile at the center point of front wheel rotating shaft in orthogonal coordinate system, where X-direction and Y-direction imply horizontal and vertical direction, respectively.

CONCLUDING REMARKS
This paper has developed an attitude control system of unmanned vehicle operating at a low speed, based on a self-organizing polynomial data-mining algorithm. We firstly proposed a new modeling method, which summarizes non-linear dynamics in a polynomial affine formation with high granularity. Although the proposed data-mining algorithm has the assessment scheme for representativeness of the developed model, the reproducibility of the state variables should be fully considered when they are related with the control input whose behaviors are absolutely different from the data used for developing the model. In order to correspond this type of control paradigm, we have proposed an efficient controller design method for the system coupled with a statistically reproduced model. In order to characterize the data used for developing the model, the permissible set of state and input variables were defined. The quadratic programming based optimal control scheme was applied to realize the control objectives, where the optimal inputs were selected among the permissible set of the input variable, considering all the limitations specified by linear inequalities. We have confirmed the usefulness of the proposed modeling and controlling method through some simulation results.

APPENDIX
Some symbols are summarized here as follows. N z : Set of the state variables in state equation representation which will be nonlinearly evolved. L z : Set of the input variables in state equation representation which will be linearly evolved. N z : Set of the tentative state variables in state equation representation which will be nonlinearly evolved. L z : Set of the tentative input variables in state equation representation which will be linearly evolved. N d z : Set of target variable to be reproduced by polynomial data-mining process. l : Iteration number which is used tentatively to reproduce each target variable. C : Iteration number which counts total iteration number for development of all target variables. L : Dimension of the target variables. x d , u d : First derivatives of x and u. x dd , u dd : Second derivatives of x and u. x d , u d : Desired values of x and u.