Implementation of Lane Centering Algorithm using Model Predictive Controller

Download Full-Text PDF Cite this Publication

Text Only Version

Implementation of Lane Centering Algorithm using Model Predictive Controller

Harshitha E

Department of Mechanical Engineering, The National Institute of Engineering, Mysore,

Dr. Prakash K. R

Department of Mechanical Engineering, The National Institute of Engineering, Mysore,

ABSTRACT: This paper insists a controller is foremostadvisable for lane centering algorithm. Its main objective is to minimize the lateral offset and heading error which are the inputs to the controller, while steering angle be the output. The ciphering of the Controller has been done by choosing Model Predictive Controller for lane centering. The error in the steer angle is been reduced to keep the optimal control of the dynamic vehicle through compilations of Matlab/Simulink and Carsim at different vehicle velocities. The results from simulations proves that MPC is most acceptable in reducing the error and make the system more efficient by minimizing the computational gist and better lane centering interpretation.

Keywords: Lane Centering Algorithm, Lateral offset, heading error, Model Predictive Controller, Carsim


    Since the perpetual growth of increased vehicle populace, it obligatory to minimize the number of accidents that are experienced due to illegitimate operation of driver and to make the road secure. With the meteoric growth of electro- control technology and the rigorous exigency of vehicle safety, the isautonomous driving assist system (ADAS) is the most researched topic world-wide and is commercialized over the period of a decade.

    Lane centering is one of the intrinsic concepts for self-driving vehicles and its objective is to design and evolve with a controller promising a vehicle to drive along the pre-defined lane. In Lane Centering, the dynamic vehicle is expected to track the anticipated lane instinctually grounded on the data received by the sensors that are mounted on the vehicle. It is examined that the viability of instinctive lane centering control procedure has made feasible with contrasting control procedures like lateral offset, heading error and the steering angle.

    Based on its sampling and sequencing attributes, MPC is preferred than any other controllers. In the current paper, the model prediction used for lane centering procedure. The automated vehicle system not only consider the current states, but also consider the predictable states to decide and perform the change of lane. The estimation of vicinity and other dynamic vehicles in the locality of the autonomous vehicles is mere important to implement the lane changing techniques.Using MPC, Lane changing

    decisions and controls can be attained considering the safety of the environment.

    MPC is developed grounded on the mathematical model. The model to be worked on, in the control system,the design is considered to be a state-space model. By using a state-space model, the ongoing data required for predicting ahead is constituted by the state variable at the ongoing time.Considering the prime elementary plant to be Multiple Input and Multiple Output, the state space model can be given as,

    Where, u(k) – manipulated variable or input variable Y(kmodel.) – Process output

    Xm – state variable vector with assumed dimension n1. Om = [0 0 0 . 0] up to n1.

    Triplet(A, B, C) – Augmented

    The state x(ki) represents the ongoing plant information.

    u(ki ),u(ki+1),.,u(ki+Nc-1)

    Where, Nc- control horizon controlling the number of variables used to seize the succeeding control path.

    With stated data x(ki), the succeeding state variables are anticipated for Np number of samples.

    Where, Np – prediction horizon.

    Np is also considered as the length of optimization window. And thus we designate the succeeding state variables as,


    where,x(ki+m|ki)calculated state variable at time interval (ki+m) with the given current system information x(ki).

    The compact matrix form of MPC is given as,

    Y=Fx(ki) + U

    Where ,

    For a given set-point r(ki) at sample ki, the aim of the prediction horizon is to bring the predicted result as near as possible to the set-point signal, assuming that, the set-point signal always remainpersistent in the optimization window. This aim is converted into a design to find the best control parameter vector U, akin the error between the set-point and the predicted result is reduced. The data vector is given as,

    The cost function (J) that depicts the control objective as,

    Where first term depicts the aim of reducing the fallacy between set-point signals and the predicted results and the ensuing term aims at maintaining the magnitude of U by keeping the cost function (J) as minimum as possible. ¯ R is the diagonal matrix in the form that ¯ R = rw INc×Nc(rw 0)

    Where, rw – tuning parameter for desired closed-loop system.

    The optimal solution for the control system is given as,

    U= (T+¯R)-1T(Rs-Fx(ki))


    Fig1: Block diagram of project methodology The project consists of three phases,

    1. Steer actuation model.

    2. Lateral offset estimation.

    3. MPC code.

    Initially steer angle is given as the input to the steer actuation model, through which north and east position i.e.

    x & y position of the vehicle and yaw angle can be obtained. This output from steer actuation model is given as input to lateral offset estimation through which we get the lateral offset value. This value, along with heading error, velocity & acceleration is given as input to MPC block and steer is obtained as the output. This steer is again given to the steer actuation model as input and thus making the system a close-loop system.

    The code for an augmented model of MPC is given as , Ts=0.01;

    A=[ 0 1 0 0 0 ;

    0 -6.4496 0 -12.542 0 ;

    0 0 0 1 0 ;

    0 4.9773 0 -8.084 0 ;

    0 1 0 0 1 ]; B=[0;44.7570;0;37.4972;0]; C=[0 0 0 0 1 ];

    Np=10; Nc=10;

    F = zeros(Np,size(A,1)); Phi=zeros(Np,Nc); Phi(1,1) = C*B;

    F(1,:) = C*A;

    for i=2:Np

    F(i,:) = F(i-1,:)*A;

    Phi(i,1) = F(i-1,:)*B;

    endfor; for j=2:Nc

    Phi(2:Np,j) = Phi(1:Np-1, j-1);

    endfor ; BarRs=ones(Np,1); Phi_Phi= Phi'*Phi; Phi_F= Phi'*F; Phi_R=Phi'*BarRs; rw = 1; BarR=rw*eye(Nc); Ref = 0.01; dt=0.01;


    lf=991*0.001; lr=1409*0.001;

    L=lf+lr; R=50; u=0;

    v=dr/dt; a=v-u/dt;

    yaw_rate=v/R; yaw_angle=yaw_rate*dt; steer=L/R;

    xf = [v;a;yaw_angle;yaw_rate;steer];

    DeltaU = inv(Phi_Phi + BarR)*Phi'*(BarRs*Ref – F*xf); U = 0;

    U_f = U + DeltaU; plot(U_f);

      1. STEER ACTUATION MODEL: Steer v/s position:

        1. North and East Position is the function of vehicle velocity and yaw .

          N= vcos S= vsin

        2. Yaw rate is the function of velocity (V), wheel Base (L), and tan (steer angle)

        = tan()

        Input to the plant model will be steer angle and output is position from which we need to quantify the lateral offset w.r.t defined path. Initially, it can be planned

        /routed as the path parallel to North (N) axis. i.e. input to controller would be output of plant model (lateral offset) and output of controller would be input to plant model i.e. steer command.

        A simple first order model can be instigated to mimic the time delay between the coveted steer angle and the practical steer angle.

        The transfer function defining this time delay is,

        H(s) = 1/ (k*s+1) (in Laplace domain), Where k- time contant.

        The input for the given transfer function X(s) is i.e,.the desired steering angle, the output Y(s) will be the real steering angle.

        Y(s) = H(s) X(s)


    The vehicle locale pertaining to the center of the lane is mainly reflected by lateral offset. The vehicles adjacent locale can be expressed directly by the lateral offset manifestation.


    Fig2: Block diagram of MPC

    Model predictive control (MPC) is an improved method of processcontrol that is applied to control a process while fulfilling the conditions of a set of constraints.

    The main idea of MPC is to reckon the plant output y(t), and estimate provide the control to the plant input u(t), while striving to achieve some predefined objectives. Compute the system inputs and outputs, calculate the present state and estimate the next control move by solving optimization problem and pertain at the correct time.

    MPC hones in receding horizon and the values are computed very often in optimization window and takes shorter computation time. Also handles difficult constraints likerelocation of nonlinear system apart from its linearized operating point.


    Fig3: Hardware in-loop system

    The vehicle gets inputs from the camera, environment via sensors and the control system that is being developed. The camera discerns the environment, considers the locale of the vehicle, and delivers the information to the control. Using the vision sensors like camera, lane centering can be possibly done by positioning the vehicle to the centerof road by identifying the road markings. The control system (algorithm) uses the data

    related to vehicle kinematics, estimates the reference signal for the positioners. MPC is utilized to replicate the complex behavior of the dynamic system. The vehicle acts according to the given control and henceforth the environment visualized by the camera varies via the sensors. Arrows stipulate the orientation of information flow.

    For developing the dynamic vehicle model and purposes, simulation of vehicle and the local habitat was carried out rationally by Carsim, software for estimating and visualizing the vehicle-environment reciprocity and dynamics. For accomplishing the control algorithm, Simulink isused.


    On constant speed i.e., 50kmph, the steer actuation model is expanded and verified using MATLAB and Simulink softwares. The results are as shown below,

    Fig4: Steer Actuation at constant speed of 50kmph

    The lateral offset value is being obtained through the code and the results depict that the path tracking is achieved successfully and is as shown below.

    Fig5: Lateral offset output

    The MPC code for Lane Centering Algorithm is being developed and tested via Carsim software. The plot depicts the output of the code with pre-assumed values taken from Carmaker software. The code holds good for

    different speeds and proves that the system is stable. When time is 0s, the vehicle is placed at its initial simulation conditions and starts to accelerate according to the directions as per the code. When time is 3s, the vehicle starts decelerating from its peak speed and reaches the negative value indicating the control of vehicle speed by the code adjusting itself to the Adaptive Cruise Control method. When time is 4s, the vehicle again accelerates its speed and come closer the desired stability. When time is 5s , the vehicle experiences the constant stability and remains in the same condition until it is actually necessary to change the speed of the vehicle and reaches stability of the dynamic vehicle at its best.

    The robustness and effectiveness is depicted by the simulation results. Also, the performance of MPC at different speeds is achieved with better handling and tracking performances. The computation encumbrance is too heavy even though MOC is capable of regulating a non-linear system. The linear approximation of the nonlinear system might be employed by the controller. The controller performance is greatly affected by the accuracy of the system which is considered to be the key issue distressing its whole performance. This gives rise to the actual question how to achieve the approximation? The traditional tactic is to linearize the nonlinear system to a quantified operating point, but then again the nonlinear system may not be capable enough to define the authentic system completely, and not to remark the linear approximation of it.

    Fig6: MPC output


Using Carsim, the vehicle could be augmented with other functions, such as object ducking and instinctive parking. Since lane detection includes looking ahead and estimating the path ahead, MPC is considered to be the most feasible option. MPC has good control over the accomplishment of the vehicle and also the method of predicted output generation minimizes the need of numerous sensors, hence reducing the levy of research, development and production. As a part of future work, an online lane centering algorithm should be developed and

longitudinal control of the dynamic vehicle is to be considered.


  1. Benine-Neto, A., et al. Dynamic controller for lane keeping and obstacle avoidance assistance system. in International IEEE Conference on Intelligent Transportation Systems. 2010.

  2. Wei, Junqing, John M. Dolan, and Bakhtiar Litkouhi, "A us freeway driving." IEEE Intelligent Vehicles Symposium, 2010.

  3. S. J. Qin and T. A. Badgwell, "A survey of industrial prediction-and cost function-based algorithm for robust autonomomodel predictive control technology," Control engineering practice, vol. 11, pp. 733- 764, 2003.

  4. Lei Li, Zhurong Jia, Tingting Cheng, Xinchun Jia,Optimal Model Predictive Control for Path Tracking of Autonomous Vehicle,2011 Third International Conference on Measuring Technology and Mechatronics Automation.

  5. Sharaf, A.M., Elbakush, E., Altas, I.H., "Novel Control Strategies for Photovoltaic Powered PMDC Motor Drives', IEEE, 2007

  6. Hadi Delavari, Ghasem Alizadeh and Mohammad Bagher Bannane Sharian, "Optimal Integral State Feedback Controller for a DC Motor", 2006, paper identication number 440.

  7. H. Neenu Thomas and Dr. P .Poongodi, "Position Control of DC Motor Using Genetic Algorithm Based PID Controller", Proceedings of the World Congress on Engineering 2009 Vol. II, WCE2009, July 1-3, 2009, London, U.K .

Leave a Reply

Your email address will not be published. Required fields are marked *