IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

1

Reference Governor Strategies for Vehicle Rollover
Avoidance

arXiv:1608.02266v1 [] 7 Aug 2016

Ricardo Bencatel, Anouck Girard, Senior Member, IEEE, and Ilya Kolmanovsky, Fellow, IEEE

Abstract—The paper addresses the problem of vehicle rollover
avoidance using reference governors applied to modify the
driver steering input in vehicles with an active steering system.
Several reference governor designs are presented and tested with
a detailed nonlinear simulation model. The vehicle dynamics
are highly nonlinear for large steering angles, including the
conditions where the vehicle approaches a rollover onset, which
necessitates reference governor design changes. Simulation results
show that reference governor designs are effective in avoiding
rollover. The results also demonstrate that the controllers are
not overly conservative, adjusting the driver steering input only
for very high steering angles.
Index Terms—Rollover Protection, Rollover Avoidance, Active
Steering, Reference Governor, Command Governor, Nonlinear
Control, Constraint Enforcement.

ACRONYMS
CG
CM
ECG
ESP
LRG
LTR
MPC
MPL
NHTSA
NRG
QP
RG

Command Governor
Center of Mass
Extended Command Governor
Electronic Stability Program
Linear Reference Governor
Load Transfer Ratio
Model Predictive Controller
Multi-Point Linearization
National Highway Traffic Safety Administration
Nonlinear Reference Governor
Quadratic Programming
Reference Governor

I. I NTRODUCTION

R

OLLOVER is an event where a vehicle’s roll angle
increases abnormally. In most cases, this results from
a loss of control of the vehicle by its driver.
This work focuses on the design of a supervisory controller
that intervenes to avoid such extreme cases of loss of control.
Conversely, in operating conditions considered normal the
controller should not intervene, letting the driver commands
pass through unaltered.
A. Problem Statement
This paper treats the following problem for a vehicle
equipped with an active front steering system. Given vehicle
dynamics, a control model, and a set of predefined rollover
avoidance constraints, find a control law for the steering angle
such that the defined constraints are always enforced and the
R. Bencatel (corresponding author), A. Girard, and I. Kolmanovsky are
with the Department of Aerospace Engineering, University of Michigan, Ann Arbor, MI, 48109 USA; e-mail: ricardo.bencatel@fe.up.pt,
{anouck,ilya}@umich.edu.
Manuscript received ??? #, 2016; revised ??? #, 2016.

applied steering is as close as possible to that requested by
the vehicle’s driver.

B. Motivation
Between 1991 and 2001 there was an increase in the number
of vehicle rollover fatalities when compared to fatalities from
general motor vehicle crashes [1]. This has triggered the
development of safety test standards and vehicle dynamics
control algorithms to decrease vehicle rollover propensity.
Rollover remains one of the major vehicle design and control
considerations, in particular, for larger vehicles such as SUVs.

C. Background and Notation
A variety of technologies, including differential braking,
active steering, active differentials, active suspension and many
others, are already in use or have been proposed to assist the
driver in maintaining control of a vehicle. Since the introduction of the Electronic Stability Program (ESP) [2], much
research has been undertaken on the use of active steering,
see e.g., [3], to further enhance vehicle driving dynamics.
According to [4] and [5], there is a need to develop driver
assistance technologies that are transparent to the driver during
normal driving conditions, but would act when needed to
recover handling of the vehicle during extreme maneuvers.
The active steering system has been introduced in production
by ZF and BMW in 2003 [6].
For the rollover protection problem, Solmaz et al. [5], [7],
[8] develop robust controllers which reduce the Load Transfer
Ratio’s magnitude excursions. The presented controllers are
effective at keeping the Load Transfer Ratio (LTR) within
the desired constraints. Their potential drawbacks are that
the controller is always active, interfering with the nominal
steering input, or is governed by an ad hoc activation method.
Furthermore, the controllers were tested with a linear model,
whose dynamics may differ significantly from more realistic
nonlinear models, in particular for larger steering angles, at
which rollover is probable.
Constrained control methods have evolved significantly in
recent years to a stage where they can be applied to vehicle
control to enforce pointwise-in-time constraints on vehicle
variables, thereby assisting the driver in maintaining control
of the vehicle. Reference [9] is an indication of this trend.
We employ mostly standard notations throughout. We use
[a, b] to denote an interval (subset of real numbers between a
and b) for either a < b or a > b.

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

2

D. Original Contributions

E. Paper Structure

This paper illustrates the development and the application of
reference and extended command governors to LTR constraint
enforcement and vehicle rollover avoidance. The reference
governor (see [10] and references therein) is a predictive
control scheme that supervises and modifies commands to
well-designed closed-loop systems to protect against constraint
violation. In the paper, we consider the application of both
linear and nonlinear reference governor design techniques to
vehicle rollover protection. While in the sequel we refer to the
reference governors modifying the driver steering input, we
note that they can be applied to modify the nominal steering
angle generated by another nominal steering controller.
Our linear reference governor design exploits a family of
linearizations of the nonlinear vehicle model for different
steering angles. The linearized models are used to predict the
vehicle response and to determine admissible steering angles
that do not lead to constraint violation. In an earlier conference
paper [11], reference and extended command governor designs
for steering angle modification were proposed and validated on
a linear vehicle model. This paper is distinguished by extending the design methodology to include compensation for nonlinear behavior, and validating the design on a comprehensive
nonlinear vehicle model that includes nonlinear tire, steering,
braking and suspension effects. The strong nonlinearity of
the vehicle dynamics for high steering angles, the conditions
where the vehicle is at risk of rolling over, caused the simpler
controller presented in [11] to produce steering commands
that were too conservative. The Linear Reference Governor
(LRG) and Extended Command Governor (ECG) presented
in Section III-G compensate for the strong nonlinearities with
low interference over the driver input, while maintaining a low
computational burden and a high effectiveness in avoiding car
wheel lift.
For comparison, a Nonlinear Reference Governor (NRG)
is also developed, which uses a nonlinear vehicle model
for prediction of constraint violation and for the onboard
optimization. This online reference governor approach is more
computationally demanding but is able to take into account
nonlinear model characteristics in the prediction.
The original contributions of this work are summarized as
follows:

The paper is organized as follows. Section II describes the
vehicle models as well as the control constraints and the
performance metrics used to evaluate the vehicle dynamic
response under different designs. Section III-G describes reference governors considered in this paper, and includes preliminary performance evaluation to support the controller design
decisions. Section IV illustrates the simulation results obtained
with the different Reference Governors (RGs) and comments
on their comparative performance. Section V describes the
conclusions of the current work, the current complementary
research, and the follow-up work envisioned.

1) This paper demonstrates how Reference and Extended
Command Governors [10], both linear and nonlinear,
can improve the output adherence to the driver reference, while maintaining the vehicle within the desired
constraints.
2) Conservatism, effectiveness, and turning response metrics are defined to evaluate, respectively, the controller
command adherence to the driver reference, the constraints enforcement success, and the adherence of the
vehicle trajectory in the horizontal plane to that desired
by the driver.
3) Several methodological extensions to reference governor
techniques are developed that can be useful in other
applications.

II. V EHICLE

AND

C ONSTRAINT M ODELING

A. Nonlinear Car Model
The nonlinear vehicle dynamics model is developed following [5], [12]–[14]. The model includes a nonlinear model for
the tires’ friction and the suspension. The suspension model
includes parameters to allow the simulation of a differential
active suspension system.
1) Vehicle Body Equations of Motion: Assuming that the
sprung mass rotates about the Center of Mass (CM) of the
undercarriage, that the car inertia matrix is diagonal, and that
all the car wheels touch the ground, the car nonlinear model
is defined by:
Fx,T = m (u̇ − vr) + mSM hSM p cos φ,

(1a)

ṗ cos φ − p sin φ , (1b)
2

Fy,T = m (v̇ + ur) − mSM hSM


2
LT = −Ks 1 − ∆k ss tan φ−



2
Ds 1 − ∆dss p cos φ − mg ∆k ss + ∆dss ,
NT = Izz ṙ,
ṗ =

hSM mSM



Fy,T
m

UC
+ sin φ g + hSM mm
p

Ixx,SM +

UC
h2SM mSM mm

cos φ


2

(1c)
(1d)
+ LT

Most of the model parameters are illustrated in Figure 1 and
their values are given in Table II for the simulation model
used. The model states are the vehicle velocity components
in the horizontal plane (u, v), roll (φ), roll rate (p), and turn
rate (r). Fx,T , Fy,T , LT , and NT are the forces and moments
acting on the car through the tires. mSM , mUC , m, Ixx,SM
and Izz are the sprung mass, the undercarriage, and the overall
vehicle mass and inertia moments, respectively. Ks and Ds
are the suspension roll stiffness and damping coefficients, and
∆k ss and ∆dss are the suspension roll differential stiffness
and damping factors.
The simulation results (sec. IV) include some instants where
the wheels on one of the sides lift from the road. In such conditions, the car dynamics are similar to a two segment inverted
pendulum [15]. For the sake of readability and because it is not
relevant for the design of the reference governors that maintain
vehicle operation away from this condition, the extension of
the vehicle equations of motion for the wheel lift condition is
not presented here.

.

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

3

Tire Magic Formula − Lateral force vs Side Slip
3000
2000
1000
0

y

−1000
−2000
−3000

−45

−30

−15
0
15
α − Slip angle [deg]

30

45

Fig. 4. Tire lateral force variation with the vertical load. The solid red line
is the lateral force generated at nominal vertical load.

(a) Rear view.

(b) Top view.
Fig. 1. Vehicle forces diagram.

2) Magic Formula Tire Model: The main source of nonlinearities in the equations of motion is the tire forces’
dependence on slip. In this work, we use the Magic Formula
tire model [13], [16]–[18]. To compute the tire forces, the slip
ratio (λ) and the tire slip angle (α) are defined as (fig. 2):
(
Rw ωw −uw
Rw ωw < uw
λ = Rw ωuww−uw
,
(2a)
Rw ωw ≥ uw
Rw ω w
v + lf r
αf = δf − tan−1
,
(2b)
u
−v + lr r
αr = tan−1
.
(2c)
u
The tire slip ratio (λ) characterizes the longitudinal slip. It is

defined as the normalized difference between wheel hub speed
(uw ) and wheel circumferential speed (Rw ωw ). The tire slip
angle (α) is the angle between the tire heading direction and
the velocity vector at the contact patch (fig. 2). Equations (2b)
and (2c) define the tire slip angle for the forward and rear
wheels, respectively. For combined longitudinal and lateral
slip, the Magic Formula takes the following form [12] (fig. 3):
 T 
Fx
= FP P (sc , C, E) ŝ,
(3)
FyT
hs

 s i
c
c
P (sc , C, E) = sin C tan−1
,
(1 − E) + E tan−1
C
C


c 2 Fz
Cα ksk
sc =
, Cα = c1 mg 1 − e− mg ,
Fp
BCD
,
c1 = 
c2
4 1 − e− 4
Fz 1.0527D
3 ,

z
1 + 1.5F
mg

 

s
sx
λ
s=
=
, ŝ =
,
tan α
sy
ksk

FP =

where FxT and FyT are the forces along the tire longitudinal and
lateral axis, x and y (fig. 2), respectively. Cα is the cornering
stiffness, FP is the horizontal (or slip) peak force, ŝ is the
total slip, and B, C, D, E, and c2 are tire parameters that
depend on the tire characteristics and the road conditions (see
Table I).
TABLE I
T IRES M AGIC F ORMULA MODEL PARAMETERS .

Fig. 2. Tire slip angle (α) at the contact patch. V is the total tire speed.
Tire Magic Formula − Lateral force vs Side Slip
3000
2000

0
−1000
y

B
7.15
9.00
5.00
4.00

C
2.30
2.50
2.00
2.00

D
0.87
0.72
0.30
0.10

E
1.00
1.00
1.00
1.00

c2
1.54
1.54
1.54
1.54

Figure 4 illustrates the variation of the lateral force with the
vertical load. The illustrated model presents almost the same
side slip angle for all vertical load cases, and an initial slope
decreasing for lower vertical loads. This behavior is governed
by the parameter c2 .

1000

−2000
−3000

Conditions
Dry
Wet
Snow
Ice

−45

−30

−15
0
15
α − Slip angle [deg]

30

45

Fig. 3. Tire lateral force variation with the side slip for several levels of slip
ratio.

B. Constraints
The vehicle constraints reflect the system’s physical limits
or requirements to keep the vehicle state in a safe region.

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

There are several options to define constraints that protect the
vehicle from rollover. One possibility is to define the rollover
constraints as the states where the car roll is so large that
there is no possible recovery. This approach would require the
treatment of complex, hybrid vehicle dynamics, which involve
the vehicle continuous dynamics states plus two discrete states
(all wheels on the road state and wheel liftoff state), and in
the case of wheel liftoff, multiple-body inverted pendulum-like
dynamics.
In this paper, following also [5], [7], [8], more conservative
rollover avoidance constraints are treated, which are, however,
simpler to enforce. These constraints are defined through the
Load Transfer Ratio (LTR). The LTR measures how much of
the vehicle vertical load is concentrated on one of the vehicle
sides:
LT R :=

Fz,R − Fz,L
.
mg

(4)

The wheel liftoff happens when the LTR increases above 1
or decreases below −1, i.e., when the right or left wheels,
respectively, bear all the car’s weight. Hence, the rollover
avoidance constraints are imposed as:
LT R ∈ [−LT Rlim , LT Rlim ] , 0 < LT Rlim < 1.

(5)

Remark 1. Note that the absolute value of the LTR may
exceed 1, even if wheel liftoff does not occur. This can
happen, in particular, due to the suspension roll moment, e.g.,
generated by the spring stored energy, and by the CM vertical
acceleration during wheel liftoff.
The steering input is also considered to be constrained:
δSW ∈ [−δSW,lim , δSW,lim ] .

(6)

C. Linearized Car Model
The vehicle linear model has the following form,
ẋ = Ax + BδS kδSW ∆δSW ,

(7a)

y = Cx + DδSW ∆δSW ,

(7b)

where x = [∆v, ∆p, ∆r, ∆φ] correspond to the relevant lateral
state variables. ∆δSW is the steering control input deviation.
The ratio between the steering wheel angle and the forward
tires steering angles is kδSW .
Linearizing (1), the vehicle linearized model is obtained,
with the dynamics matrix of the form,




A := 


∂Fy,T 1
∂v m′
∂NT 1
∂v Izz
∂Fy,T hSM
′
∂v
Ixx

0

∂Fy,T 1
∂r m′ − u
∂NT 1
∂r Izz
∂Fy,T hSM
′
∂r
Ixx

0

∂ ṗ
h′SM ∂p
0
∂ ṗ
∂p

1


∂ ṗ
h′SM ∂φ

0

,
∂ ṗ

∂φ
0
(8)

4

where
′
m2 Ixx
,
(9a)
′ + h 2 m2
mIxx
SM SM cos φ0
mUC
cos φ,
(9b)
= Ixx,SM + h2SM mSM
m
hSM mSM
=
,
(9c)
m


2
UC
sin φ0 − Ds 1 − ∆dss,0 cos φ0
2h2SM mSM p0 mm
=
,
′
Ixx
(9d)

h


2
= mSM ghSM − Ks 1 − ∆k ss,0 1 + tan2 φ0 −
i


2
′
.
(9e)
Ds 1 − ∆dss,0 p0 sin φ0 /Ixx

m′ =
′
Ixx

h′SM
∂ ṗ
∂p
∂ ṗ
∂φ

The steering control matrix is defined as:
h
∂Fy,T 1
∂Fy,T hSM
∂NT 1
BδS :=
∂δf m′
∂δf Izz
∂δf I ′
xx

0

i⊺

,

(10)

The system output matrices are defined by the operation
constraints (sec. II-B):

2Ks 
2Ds
0 0 mgT
mgT
,
(11a)
C :=
0 0
0
0

⊺
.
(11b)
DδS := 0 1
D. Performance Metrics
This study uses four performance metrics: the step computation time, the effectiveness, the conservatism, and the turning
response. We have chosen not to use a metric that compares
the vehicle positions between the reference trajectory and
the trajectory affected by the controllers as there are several
reference trajectories that end in a full rollover.
The step computation time is the time it takes the controller
to perform the constraint enforcement verification and compute a command. The effectiveness metric is the success rate
in avoiding wheel lift up to a wheel lift limit. For each test:
max zwheel
ηlif t := 1 −
,
(12)
zwheel,lim
where max zwheel is the maximum wheel lift attained during
a test, and zwheel,lim is the wheel lift limit considered.
The conservatism metric indicates how much the controller
is over-constraining the steering command when compared
with a safe steering command:
RT
(|δSW,ref − δSW | − |δSW,ref − δSW,saf e |) dt
,
χ := 0
RT
|δSW,ref | dt
0
(13)
where δSW,ref is the driver reference command during the
maneuver, δSW is the controller command, δSW,saf e is a
reference safe command, and T is the test duration. Two
options for the reference safe command are the driver steering
input scaled down to avoid any wheel lift or the driver
steering input scaled down to produce a maximum wheel lift
of zwheel,lim .

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

5


⊺
Considering (15), (16), xO∞ := u x , and a linear
model (7), we define an inner approximation of the maximum
output admissible set as

Fig. 5. Command governor control architecture for a steering command.

The turning response metric indicates how much the controller is limiting the vehicle turn rate relative to the driver
desired turning rate when compared with the turn rate achieved
with a safe steering command:
RT
(|ψdes − ψsaf e | − |ψdes − ψ|) dt
,
(14)
ηψ := 0
RT
0 |ψSW,ref | dt

where the driver desired turning rate is inferred from the reference steering command and the steering-to-turn rate stability
δSW,ref . ψ and ψsaf e are the
derivative: ψdes = dδdψ
SW
δSW =0
turn rates caused by the controller command and the reference
safe command, respectively.

O∞ := {xO∞ |AO∞ xO∞ ≤ bO∞ } ⊂ R4+n ,

Ay D

 Ay C (I − A)−1 (I − A) B + D


..
AO∞ := 
.



−1
 Ay C (I − A)
I − AN B + D
Ay H




bO∞ := 



by
by
..
.
by
by (1 − ǫ)

(17a)

Ay C
Ay CA 


..
,
.

N 
Ay CA
0
(17b)





,



(17c)

H = C (I − A)−1 B + D,

(17d)

where N is the selected prediction horizon and ǫ > 0. Under
mild assumptions [19], O∞ is the same for all N sufficiently
large and is positively invariant (for constant u) and satisfies
constraints pointwise. Generally, such an N is comparable to
the settling time of the system.
B. Linear Reference Governor (LRG)

III. R EFERENCE

AND

C OMMAND G OVERNORS

This work implements different versions of Reference and
Command Governor (CG) controllers, collectively referred to
by their common name as reference governors. Our reference
governors modify the reference command, the steering angle
(fig 5), if this reference command is predicted to induce a
violation of the LTR constraints (sec. II-B).
The reference governors solutions studied for this application are based on both linear and nonlinear models. The
following sections describe the various solutions in more
detail.
A. Linear Reference Governors and Command Governors

The LRG computes a single command value on every
update using the above O∞ set which we re-write as

n


−1
O∞ := (u, x) |yk = C (I − A)
I − Ak B + D u+
\
CAk x ∈ Y, k = 0, ..., N
Γ ⊂ R4+n ,
(18)
Γ = {(u, x) |Hu ∈ (1 − ǫ) Y} .

By applying the O∞ to the current state, the controller checks
if the reference or an alternative command are safe. If the
reference command is deemed safe, it is passed to the actuator.
If not, the controller selects an alternative safe command that
minimizes the difference to the reference:
vk = argmax {kRG |vk = vk−1 + kRG (uk − vk−1 ) ,
vk

Both the Linear Reference Governors and the Command
Governors rely on a maximum output admissible set O∞ (or
its subsets) to check if a reference command is safe, i.e., if it
does not lead to constraint violation, and to compute a safe
alternative command, if necessary. The O∞ set characterizes
the combinations of constant commands and vehicle states that
do not lead to constraint violating responses,

(15)
O∞ := (u, x) |yk ∈ Y, ∀k ∈ Z0+ ⊂ R4+n ,

where n = 1 is the number of control variables, x and u are
the state and command at the present moment and yk , k ∈
Z0+ , is the predicted evolution of the system output. The set
Y represents the constraints and delineates safe outputs
Y := {y|Ay y ≤ by } ⊂ Rl ,

(16)

where l is the number of system outputs on which constraints
are imposed.

(vk , xk ) ∈ O∞ and kRG ∈ [0, 1]} ,

(19)

where uk is the current reference command, xk is the current
state, and vk−1 is the previous command used.
Remark 2. Because the reference governor checks at each update if a command is safe for the future steps, vk−1 is assured
to be safe for the current step, provided an accurate model of
the system is used. As such, in the optimization process (19),
one only needs to analyze the interval u ∈ [vk−1 , uk ].
C. Extended Command Governor (ECG)
The ECG [20] is similar to the LRG, but, when it detects
an unsafe reference command, it computes a sequence of safe
commands governed by:
v = C̄x̄ + ρ,
x̄k+1 = Āx̄,

(20a)
(20b)

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

where v is the safe command (output of the ECG) with
dynamics governed by (20b), x̄ is the virtual state vector of
the command dynamics, and ρ is the steady state command
to which the sequence converges. The matrices Ā and C̄ are
two of the design elements of the ECG. They are defined at
the end of this section. The key requirement is that the matrix
Ā must be Schur.
To detect if a reference command is safe, the ECG uses the
LRG O∞ set (18). If the reference command is unsafe, the
ECG uses an augmented Ǒ∞ set that takes into account the
computed command dynamics:
Ǒ∞ := {(ρ, xaug ) |yk =



Caug (I − Aaug )−1 I − Akaug Baug + Daug ρ+
\
Caug Akaug xaug ∈ Y, k = 0, ..., N
Γ′ ⊂ R4+n+m ,
(21)
′
Γ = {(ρ, xaug ) |Hρ ∈ (1 − ǫ) Y} ,
where m is the size of x̄, x⊺aug := [x⊺ , x̄⊺ ]⊺ is an augmented
state vector, and the matrices Aaug , Baug , Caug , Daug correspond to the augmented system. We note that this eventtriggered execution of ECG is quite effective in reducing
average chronometric loading and to the authors’ knowledge,
has not been previously proposed elsewhere.
In the ECG, both the steady state command and the initial
virtual state are optimized. This optimization is performed by
solving the following quadratic programming problem:


1 ′⊺
′
x′ = argmin
(22)
x
Hx
+
f
ρ|
(ρ,
x
)
∈
Ǒ
aug
∞ ,
x′
2




x̄
P 0
x′ :=
, H :=
, f := −u⊺k Q,
ρ
0 Q
where P and Q are symmetric positive-definite matrices. In
this work Q := kL I > 0 is the tuning matrix, while P is
computed by solving the discrete-time Lyapunov equation:
Ā⊺ PĀ − P + Q = 0.

(23)

The safe command is then computed by (20a).
Several possibilities for the matrices Ā and C̄ exist [10].
These matrices can define a shift register sequence, making
the ECG behave like a Model Predictive Controller (MPC), or
a Laguerre sequence, as follows:


αIm µIm −αµIm . . . (−α)N −2 µIm
N −3
 0
αIm
µIm
. . . (−α)
µIm 




..
..
Ā =  0
,
.
.
0
αIm



 0
0
0
...
µI
m

0

0

0

...

αIm

(24a)

C̄ =

h

Im

−αIm

2

α Im

. . . (−α)

N −1

Im

i

, (24b)

where µ = 1 − α and 0 ≤ α ≤ 1 is a tuning parameter
that corresponds to the time constant of the command virtual
dynamics. If α = 0, the ECG becomes a shift register.

6

D. Steering Control
The output and the constraints of
follows:
⊺

,
y := LT R δSW



1
0

 −1 0 
 , by := 
Ay := 


 0
1
0 −1

the RG are defined as
(25a)


LT Rlim
LT Rlim 
.
δSW,lim 
δSW,lim

(25b)

The discrete time step for the dynamics matrices is ∆t =
0.01s and the prediction horizon is N = 100. For the ECG,
the optimization gain is kL = 1, the virtual state vector size is
4, and the α = 1− τ∆t
, so that the virtual dynamics match the
car
vehicle dynamics time constant that, as we have determined
empirically, appears to provide best response properties.
E. Nonlinear Compensation
Both the Linear Reference Governor and the Extended
Command Governor rely on linear model predictions to avoid
breaching the defined constraints. In reality, the controller is
acting on a vehicle with nonlinear dynamics. This results in
deviations between the predicted and the real vehicle response.
1) Nonlinear Difference: For the same state, there is a
difference between the linear model output prediction and
the vehicle’s real output variables, which we refer to as the
nonlinear difference:
d = f (x, u) − Cx − Du − y0 .

(26)

This difference, further exacerbated by the error in the state
prediction by the linear model, can either cause the vehicle to
breach the constraints when the controller does not predict
so, or cause the controller generated command to be too
conservative. This effect can be mitigated if the controller
takes into account the current nonlinear difference for the
current command computation, assuming that it is persisting
over the prediction horizon. As an example, the nonlinear
difference can be compensated in the LRG by including it
in the O∞ set:
Ǒ∞ := {(v, x, d) : yk =



−1
C (I − A)
I − Ak B + D v+
\
Γ′′ ⊂ R4+n+l , (27)
CAk x + d ∈ Y, k = 0, ..., N
Γ′′ = {(v, x, d) |Hv + d ∈ (1 − ǫ) Y} .

To use the nonlinear difference in the controller, the xO∞
vector and the AO∞ matrix are extended to account for d:
⊺

,
(28a)
x̆⊺O∞ := u⊺ , x⊺ , d⊺


Ay

Ay 


(28b)
ĂO∞ :=  AO∞
 , b̆O∞ := bO∞ .
..


.
Ay

7

200
Ref

−200

2) Multi-Point Linearization (MPL): The nonlinear difference compensation in the previous subsection reduces the nonlinear effects in the vicinity of the system’s current state. However, in this work and in particular for large input commands,
that are likely to cause a rollover, this alone is insufficient.
Figure 6 shows how much the vehicle dynamics’ poles can
change for a range of steering angles. If the controller uses
a model linearized around the no actuation point (δSW = 0),
the controller becomes too conservative. The use of multiple
linearization points to define multiple O∞ sets has proved to
be an appropriate compensation. The multi-point linearization
results in a less conservative controller, when compared to
a controller just with the nonlinear difference compensation
(fig. 7a).
The control strategy is the same as described in the previous
sections. The difference is that several linearization points
are selected (fig. 7b) and, for each one, an O∞ set (17) is
computed. The controller then selects the closest linearization
point and corresponding O∞ set, based on the current steering
angle. Note that in Figure 7a and subsequent figures we report
LTR in percent.
F. Command Computation Feasibility
In practical applications, the LRG and ECG optimization
problems, (19) and (22), may become infeasible due to unmodeled uncertainties, in particular, due to the approximation of
the nonlinear vehicle dynamics by a linear model in prediction.
Figure 8a shows the computation feasibility classification
for an example vehicle simulation. This section describes
the different approaches to deal with infeasibility and the
outcomes of their evaluation.
1) Last Successful Command Sequence: The simplest approach, in the event of infeasibility, is to maintain the last
successfully computed command, for the LRG:
vk = vk−1 ,

(29)

or command sequence, for the ECG:
x̄k = Āx̄k−1 ,

(30a)

ρk = ρk−1 ,
vk = C̄x̄k + ρk .

(30b)
(30c)

RGMPL

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5
2
Time [s]

2.5

3

3.5

100
50
0
−50
−100
20
0
−20

(a) Vehicle steering command, LTR response, and
roll response. The dashed blue line is the reference command. The dot-and-dashed red and the
solid black lines are the LRG commands with a
single- and multi-point linearization, respectively,
both with the nonlinear difference compensation.
4
RGMPLlin−ref

Fig. 6. Vehicle dynamics’ poles for a range of steering angles from 0 degrees
(cross) to 150 degrees (circle).

RGNC

0

φ [deg]

LTRd [%]

δSteer [deg]

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

2
0
−2
−4

0

0.5

1

1.5
2
Time (sec)

2.5

3

3.5

(b) Linearization point selection in the LRG with
multi-point linearization.
Fig. 7. LRG with multi-point linearization. Here linearization points used
corresponded to steering angles of δSW = 0, 20, 40, 80 & 130deg.

2) Command Contraction: In its standard form, the LRG
computation limits the LRG gain to be kLRG ∈ [0, 1], i.e., the
computed command is limited to the interval vk ∈ [vk−1 , uk ].
With the LRG, there are conditions in which maintaining the
last successfully computed command might be problematic. If
the solution infeasibility is caused by the differences between
the linear model and vehicle nonlinear dynamics, that usually
means that the controller allowed the command to be too large,
allowing the vehicle state to go too close to the constraints,
and maybe breaching them in the near future (fig. 8b). In this
case, modifying (19) to allow the command to contract even
if the reference command is not contracting produces safer
solutions. The computations are modified as follows:


[0, max {vk−1 , uk }] vk−1 > 0 and uk > 0,
S = [min {vk−1 , uk } , 0] vk−1 < 0 and uk < 0, (31)


[vk−1 , uk ]
otherwise,
v = argmin {|v − uk | | (v, x) ∈ O∞ and v ∈ S} .

(32)

v

Figure 8b shows that with the last successful command (RG)
the vehicle actually breaches momentarily the imposed constraints, LT R < −100% close to t = 1.9s, while with
the contracted command (RGCC) the LTR is kept within the
desired bounds and the command converges to reference value
sooner (@t ≈ 1.9s).
3) O∞ Set Constraints Temporal Removal: This method
is based on the premise that the controller might not be able
to avoid the constraint violation in the near term, but will be
able to bring the system into the desired operation envelope in
the future. The method removes as many initial rows from the
representation of the O∞ set as required to make the command
2il+1:2(N l+2)
computation feasible (alg. 1). In Algorithm 1, AO∞

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

8

RGfeas

0
−2
−4
0.5

1

1.5

2

2.5

3

3.5

(a) Number of rows removed from the LRG O∞
set.

0
−2

0.5

1

1.5
2
Time (sec)

2.5

3

3.5

(a) Classification of the solution computation feasibility

200
Ref

RG

RGRR

0
−200

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5
2
Time [s]

2.5

3

3.5

100
50
0
−50
−100
20
0
−20

(b) Vehicle steering command, LTR response, and
roll response. The dashed blue line is the reference
command. The dot-and-dashed red and the solid
black lines are the LRG commands blocking and
allowing the O∞ set rows removal, respectively.
Fig. 9. Feasibility recovery - O∞ set rows removal.

200
Ref

RG

RGCC

0
−200

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5

2

2.5

3

3.5

100
50
0
−50
−100

φ [deg]

LTRd [%]

δSteer [deg]

for the LRG. Level 1 means the controller is able to
compute a solution. Level 0 means that there is no viable
solution, because the current output is already breaching
the constraints and the current reference is the same as the
last used command. The levels −1 and −2 indicate that
for some of the points in the prediction horizon a solution
would only exist if the gain kLRG was set to more than
1 or less than 0, respectively. Level −3 indicates that
for different points in the prediction horizon a solution
would only exist if the gain kLRG was set to more than
1 and less than 0, simultaneously. The levels −4, −5 and
−6 are set when the conditions for level 0 are verified at
the same time as those necessary for the levels −1, −2
and −3, respectively. The dashed blue line for the method
with command contraction allowed shows when a solution
becomes viable due to the contraction.

LTRd [%]

0

δSteer [deg]

−4

φ [deg]

RGCCfeas

0

controller to find a solution that may lead to a behavior closer
to the intended than a locked command. The method expands
and contracts the O∞ set by modifying the bO∞ vector:
b′O∞ = (1 + ǫ) bO∞ ,

20
0
−20
0

0.5

1

1.5
2
Time [s]

2.5

3

3.5

(b) Vehicle steering command, LTR response, and
roll response. The dashed blue line is the reference command. The dot-and-dashed red and the
solid black lines are the LRG commands with
kLRG ∈ [0, 1] and allowing command contraction,
respectively.

(33)

where ǫ is the expansion factor. This factor is doubled until
the command computation is successful and then the bisection
method is used to find the minimum ǫ for which the command
computation is feasible.
Figure 10a shows the constraint expansion factor that had to
be used at each computation step to make the command com-

Fig. 8. Feasibility recovery - LRG with command contraction allowed.

is the matrix composed by all rows between the (2il + 1) th
line and the last (2 (N l + 2) th row) of the AO∞ matrix.

Figure 9a indicates the number of rows that had to be
removed at each computation step to make the command
computation feasible. As shown by Figure 9b, this approach
(RGRR) is prone to failure, limiting the steering angle only
very slightly (@t ≈ 1.35s) and allowing the car to rollover.
4) O∞ Set Constraints Relaxation: The logic behind this
approach is that by allowing the controller to find a feasible
solution through constraint relaxation, a solution may be found
that unfreezes the command computation. This allows the

LTRd [%]

δSteer [deg]

(a) LRG constraint relaxation magnitude.
200
Ref

RG

RGRC

0
−200

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5
2
Time [s]

2.5

3

3.5

100
50
0
−50
−100

φ [deg]

i=0
while v computation f ails do
i=i+1
2il+1:2(N l+2)
A′O∞ = AO∞
2il+1:2(N l+2)
b′O∞ = bO∞
end
Algorithm 1: Constraint removal from the O∞ set.

20
0
−20

(b) Vehicle steering command, LTR response, and
roll response. The dashed blue line is the reference
command. The dot-and-dashed red and the solid
black lines are the LRG commands without and
with constraint relaxation, respectively.
Fig. 10. Feasibility recovery - O∞ constraints relaxation.

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

putation feasible. Figure 10b shows that this method (RGRC)
provides only a small improvement over the last successful
command (RG) by allowing the command to converge to the
reference value sooner (@t ≈ 2.0s). It still allows the LTR to
breach the imposed constraints (@t ≈ 1.9s).
We note that various heuristic and sensitivity-based modifications can be proposed where only some of the constraints are
relaxed but this entails additional computing effort which is
undesirable for this application. Note also that a soft constraint
version of the RG has been proposed in [21]; this strategy has
not been formally evaluated as it is similar to our O∞ set
constraints relaxation approach.
We also note that for the ECG a similar constraint relaxation
method could be implemented, where a relaxation variable is
included as part of the Quadratic Programming (QP) and the
constraints that are most violated are relaxed first.
5) Selected Feasibility Recovery Method: From the different methods tested with the LRG, the command contraction
method was the best performing (sec. IV-C and fig. 19). In the
simulations section, except for the results comparing directly
the infeasibility recovery methods, the LRG is tested with the
command contraction method.
G. Nonlinear Reference Governor (NRG)
The NRG relies on a nonlinear model in prediction to
check if a command is safe or, if otherwise, compute a safe
command. Instead of the O∞ set used by the LRGs, the NRG
uses a nonlinear model (sec. II-A1) to predict the vehicle
response to a constant command for the specified time horizon,
usually comparable to the settling time. If the predicted vehicle
response stays within the imposed constraints, the command
is deemed safe and is passed on. Otherwise, the NRG uses
bisections to find a safe command in the range between the

150
Ref
NRG1
NRG4

100

δSteer [deg]

50
0
−50
−100
−150

0

0.5

1

1.5
2
Time [s]

2.5

3

3.5

LTRd [%]

(a) Steering command.
100
50
0
−50
−100
0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5

2

2.5

3

3.5

0

0.5

1

1.5
2
Time [s]

2.5

3

3.5

β [deg]

10

last passed (safe) command and the reference command. Each
iteration, including the first with the reference command,
involves a nonlinear prediction of a modified by bisections
command, checks if it respects the constraints, and classifies
the command as safe or unsafe. These bisection iterations
numerically minimize the reference-command difference, i.e.,
the difference between the reference command and the used
safe command. The number of iterations is a configuration
parameter, and governs the balance between the computation
time and the solution accuracy. Parametric uncertainties can be
taken into account following the approach in [22], but these
developments are left to future work.
Figure 11 shows that the NRG with a single iteration
(NRG1), i.e., a simple verification of the trajectory constraints
with the reference command, produces very similar results
when compared with the NRG with three extra bisections
(NRG4). The NRG4 initially allows a slightly less constrained
command and then has slightly smoother convergence with
the reference command (@t = 0.8s & 1.7s). This behavior
is obtained at the expense of the computational load, taking
about 4 times longer to compute a safe command when the
reference is unsafe. For the illustrated example (fig. 11), the
NRG1 and the NRG4 take an average of 0.16s and 0.31s,
respectively, to compute a safe command.
IV. S IMULATION R ESULTS
A. Simulation Setup
1) Simulation Model: The nonlinear simulation model was
setup to have a behavior similar to a North American SUV.
The model parameters are listed in Table II.
TABLE II
V EHICLE SIMULATION PARAMETERS .
Parameter
lf
lr
T
hSM
hU C
m
mSM
mU C
Ixx,SM
Ixx,U C
Iyy,SM
Izz
Ixz,SM
kδSM
KS
DS
∆kss
∆dss

Value
1.160m
1.750m
1.260m
0.780m
0.000m
2000kg
1700kg
300kg
1280kg/m2
202kg/m2
2800kg/m2
2800kg/m2
0kg/m2
17.5
73991N.m
5993N.m.s/rad
0.0%
0.0%

0
−10

φ [deg]

9

20
0
−20

(b) Vehicle lateral response.
Fig. 11. Nonlinear Reference Governor command with 1 and 4 nonlinear
iterations per step.

We used a CarSim R simulation model to check the realism
of the nonlinear model presented in section II-A, implemented
in MATLAB R . Figure 12 illustrates the simulation results
from both models in terms of their lateral dynamics. The
lateral dynamics match very well. All variables except for
the roll angle match both in trend and amplitude. The roll
angle matches in trend, but shows a larger amplitude in our

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

200

200

LTRd [%]

NL Model
CarSim Model

δSW [deg]

10

0

NL Model
CarSim Model

0
-200

-200
0

0.5

1

1.5

2

2.5

3

0

0.5

1

1.5

2

2.5

3

40

r [deg]

φ [deg]

NL Model
CarSim Model

50
0
-50

NL Model
CarSim Model

20
0
-20
-40

0

0.5

1

1.5

2

2.5

3

0

0.5

1

1.5

2

2.5

3

20
NL Model
CarSim Model

β [deg]

g y [G]

2

0

-2

NL Model
CarSim Model

10
0
-10

0

0.5

1

1.5

2

2.5

3

0

0.5

1

time [s]

1.5

2

2.5

time [s]

Fig. 12. Vehicle dynamics in a Sine with Dwell maneuver. Comparison between the trajectories simulated by a CarSim model and the nonlinear model
(sec. II-A).

100

LTRd [%]

δSteer [deg]

200

0
−100
Ref
−200

0

0.5

LRG
1

1.5

ECG
2

NRG4
2.5

3

3.5

200
150
100
50
0
−50
−100
−150
−200

40

β [deg]

r [deg/s]

−20

0.5

0

0.5

1.5

ECG
2

NRG4
2.5

3

3.5

0
−5

−40

LRG

Ref
0

0.5

1

1.5

ECG
2

NRG4
2.5

3

LRG

Ref
−10

3.5

1

1

1.5

ECG
2

NRG4
2.5

3

3.5

20
10
φ [deg]

0.5
gy [g]

0

LRG
1

5

0

0
−0.5
Ref
−1

0.5

10

20

−60

Ref
0

0

0.5

LRG
1

ECG

1.5
2
Time [s]

−20

NRG4
2.5

3

0
−10

3.5

−30

Ref

LRG
1

ECG

1.5
2
Time [s]

NRG4
2.5

3

3.5

Fig. 13. Vehicle dynamics in a Sine with Dwell maneuver. Comparison between the trajectories generated with the intervention of the proposed reference
governors.

MATLAB R model. More importantly, both simulations match
very well in terms of the main rollover metric, the LTR. The
simulations diverge more in the last moments, when the roll
angle is increasing and the car is in the process of rolling over.
2) Test Maneuvers: National Highway Traffic Safety Administration (NHTSA) defines several test maneuvers: Sine
with Dwell, J-Turn, and FishHook [1]. In this work, we chose
to test the controllers and demonstrate rollover avoidance for
Sine with Dwell maneuvers (fig. 12). Figure 14b illustrates the
variation of the vehicle roll (spring mass and undercarriage)
and of the maximum wheel lift (hW L,max = T sin |φuc,max |)
with respect to the maximum value of the Sine with Dwell
reference steering angle, showing ≈ 20deg of sprung mass
roll and ≈ 240mm of wheel lift for δSW,lim = 150deg.

B. Trajectories with the Reference Governors (RGs)
Figures 13 and 15 illustrate the effect of the various RGs
on the vehicle trajectory. The simulations have been performed
on our nonlinear vehicle dynamics model in MATLAB R . The
Linear Reference Governor (LRG) used in this comparison
uses the nonlinear difference compensation (sec. III-E1), the
Multi-Point Linearization (MPL) (sec. III-E2), and allows
command contraction (sec. III-F2). The Extended Command
Governor (ECG) uses the MPL (sec. III-E2) and maintains the
last successfully computed command sequence (sec. III-F1)
when an infeasible command computation is found. The
Nonlinear Reference Governor (NRG) performs 4 iterations
to find a suitable command, when the reference command is
deemed unsafe.

Max roll (φmax) [deg]

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

30
Undercarriage
Sprung mass

20
10
0

0

20

40
60
80
100
120
Steering wheel angle (δSW,lim) [deg]

140

160

(a) Sprung mass and undercarriage maximum roll
angles.
Wheel lift [mm]

indicate that the controller was unable to avoid breaching the
LTR constraints. The LTR plots in Figures 13 and 16 show
that in this simulation instance the LRG allowed the LTR to
slightly exceed the constraints (@t ≈ 1s & 1.8s), but was able
to maintain the roll angle well under control.
C. Reference Governors Performance Comparison

300
200
100
0

11

0

20

40
60
80
100
120
Steering wheel angle (δSW,lim) [deg]

140

160

(b) Maximum wheel lift.
Fig. 14. Variation of the roll propensity for Sine with Dwell maneuvers. The
Sine with Dwell maneuvers vary in terms of steering amplitude, defined by
the limit steering angle (δSW,lim ).

It is clear from Figure 13 that the RGs steering adjustments
are different in shape, but not so much in their effect on the
LTR, side-slip (β), roll (φ), and lateral acceleration (gy ). The
amplitude of the turn rate (r) is more limited by the NRG than
the other RGs. The trajectories with the RGs do not diverge
much from the trajectory with the reference steering command,
up to the moment when the vehicle starts to rollover with the
reference command (fig. 15). The RefLif t , LRGLif t , and
N RG4Lif t shades over the x-y trajectory illustrate where the
LTR breaches the imposed constraints.
Figure 16 highlights with background shades when the RGs
are active, adjusting the steering command. The darker shades

The results presented next characterize the performance of
the controllers in terms of constraint enforcement effectiveness,
the adherence to the driver reference (conservatism), the adherence to the desired turning rate (turning response), and the
controllers’ computation time. The results were obtained from
simulation runs with a range of Sine-with-Dwell maneuvers’
amplitudes between 10 and 160 deg.
Figure 17 illustrates the trajectories that serve as reference
in the RGs’ performance evaluation and an example of a
trajectory with a controller intervention (LRG). The reference
safe trajectories used in (13) and (14) are: the reference
trajectory, produced by the original command; the limit lift
trajectory (LimLift), with the maximum allowable wheel lift
(5 cm, 2”); the no lift trajectory (NoLift), that produces
no wheel lift; and the quasi-optimal safe trajectory (NRG4),
produced by an NRG with 4 iterations. Each reference safe
trajectory has its own merits in the evaluation of the reference governors’ conservatism. The trajectory produced by

200
Ref
LimLift
NoLift
NRG4
LRG

150
100

Y [m]

20

LRG
LRGLift

10

ECG
NRG4
NRG4Lift

0

50

δSteer [deg]

Ref
RefLift

30

0
−50
−100
−150
−200

0

0.5

1

−10

1.5
2
Time [s]

2.5

3

3.5

(a) Steering command.

−20
−30
0

20

40

60

80

X [m]

Ref
RefLift

25
20

LimLift
NoLift
NRG4
NRG4Lift

15

Fig. 15. Vehicle trajectory in a Sine with Dwell maneuver.
Y [m]

10
5

LRG

0
−5
−10
−15
−20
−25
0

10

20

30

40
X [m]

50

60

70

(b) Vehicle trajectory on the X-Y plane.

Fig. 16. Reference Governors activation, i.e., steering command modification.

Fig. 17. Reference safe trajectories used for the reference governors
performance evaluation. The Ref trajectory is the unmodified sine-withdwell maneuver with the maximum steering angle defined for a specific
test, in this case 160 degrees. The LimLift trajectory is the sine-with-dwell
maneuver that produces the maximum allowable wheel lift (5 cm, 2”). The
NoLift trajectory is the sine-with-dwell maneuver with the maximum steering
angle that produces no wheel lift. The NRG4 trajectory illustrates the safe
maneuver, resulting from the Nonlinear Reference Governor intervention,
that is considered to interfere the least with the original trajectory (Ref ),
while avoiding almost completely wheel lift conditions. The LRG trajectory
illustrates a maneuver resulting from the application of the Linear Reference
Governor.

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

the reference governors will be the least conservative when
compared with the NoLift trajectory. This shows how much
the controller reduces the conservatism when compared to
a simplistic safe trajectory. The comparison with the NRG4
trajectory produces a middle range conservatism evaluation,
allowing us to compare the reference governors’ command
with an almost optimal constraint enforcement strategy. The
reference governors’ trajectory will be the most conservative
when compared with the LimLift trajectory. This shows how
much leeway exists between the reference governors’ commands and the commands that produce the limit lift condition.
The two bottom plots in Figure 18 illustrate the comparison
between different LRG options and the NoLift, NRG4, and
LimLift reference safe trajectories. On all the figures that
illustrate the conservatism and turning response for the same
controller configuration, there are three comparison branches,
where the NoLift and the LimLift trajectories offer the most
advantageous and most disadvantageous comparison trajectories, respectively. That means that the NoLift branch is the
bottom branch in the conservatism plots and the top one in
the turning response plots (fig. 18). The middle branch, the
comparison with a trajectory considered to be NRG4, is the
most interesting, as it shows a comparison with one of the
least conservative trajectories that produce almost no wheel
lift.
Figure 18 shows how the LRG performance improves with
Multi-Point Linearization (MPL) and how it changes with the
selection of linearization points:
• RGMPL1: 0, 20, 40, and 100 deg;
• RGMPL2: 0, 80, 110, and 150 deg;
• RGMPL3: 0, 20, 40, 60, 80, 100, 120, 130, 140, and 150
deg.
Note that fewer linearization points might lead to less conservatism and a better turning response, however may also
result in a worse effectiveness (fig. 18). With a dense selection

12

of linearization points (RGMPL3 case), the LRG is 100%
effective for all amplitudes of the reference command.
The feasibility recovery methods are compared with the
linearization points of the RGMPL3 case (fig. 19). From the
various feasibility recovery methods presented in Section III-F,
the constraint temporal removal (RGRR), where rows from
the O∞ are removed, is the worst performing. The other three
methods, last successful command (RG), command contraction
(RGCC), and constraints relaxation (RGRC), are similar in
terms of the conservatism metric. The last successful command
(RG) method requires the lowest computational overhead.
Nevertheless, the command contraction (RGCC) method is
preferred, because it provides better effectiveness than the
other three methods when the state estimation includes some
noise (sec. IV-D).
Most of the RGs’ tests shown were run with an LTR constraint of 0.99 or 99%. The LTR constraint upper bound can be
relaxed, as shown in Figure 20, to reduce the controllers’ conservatism. For LT Rmax = 99, 102, & 105%, the effectiveness
is only slightly degraded and the conservatism is reduced about
10% from LT Rmax = 99% to LT Rmax = 105%. Note that
the relaxation of the LTR constraint beyond 100% is an ad hoc
tuning method, without any guarantees on the effectiveness
performance.
As expected, the NRG for a single iteration (NRG1), i.e.,
with a check of the actual reference command, runs faster
than the NRG setup for four iterations (NRG4) (bottom plot
of fig. 21). The unexpected result is that the NRG1 setup is
less conservative and has higher effectiveness (top plots of
fig. 21). This happens with Sine with Dwell maneuver, because
the NRG1 is slightly more conservative during the increment
of the reference command, i.e., the moment at which the
NRG command diverges from the reference command, but that
produces an earlier convergence with the reference command

100
Effectiv [%]

Effectiv [%]

100
80
RGNC
RGMPL1
RGMPL2
RGMPL3

60
40
20

40

−300

60

80
100
δSteer [deg]

120

140

Conserv [%]

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

160
40

60
40
20
0

20
0
−20
−40
−60

−20
−40
20

40

60

80
100
δSteer [deg]

120

140

160
0.05
tComp, mean [s]

0

TurnResp [%]

RG
RGCC
RGRC
RGRR

−200

Conserv [%]

0

0
−100

10
0
−10

0.04
0.03
0.02
0.01
0

−20
0

20

40

60

80
100
δSteer [deg]

120

140

160

Fig. 18. Variation in performance of the LRG with a single linearization point
(RGNC - LRG with just the nonlinear difference compensation) and different
selections of MPLs (RGMPL#).

Fig. 19. Variation in performance of the MPL LRG (RGMPL3’s linearization
points) with the different feasibility recovery methods: last successful command (RG), command contraction (RGCC), constraints’ relaxation (RGRC),
and constraint temporal removal (RGRR).

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

13

105
Effectiv [%]

Effectiv [%]

105
100
RG1
RG2
RG3

95
90

0

20

40

60

80
100
δSteer [deg]

120

140

LRG
ECG
NRG1

95
90

160

40

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

60
Conserv [%]

Conserv [%]

100

20
0
−20

40
20
0
−20

−40
0

20

40

60

80
100
δSteer [deg]

120

140

−40

160

TurnResp [%]

TurnResp [%]

10
10
0
−10
−20

20

40

60

80
100
δSteer [deg]

120

140

160

Effectiv [%]

105
100
LRG
NRG1
NRG4

95

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

Conserv [%]

40
20
0
−20
−40

0.3
tComp, mean [s]

−10
−20

0

Fig. 20. Variation in performance of the MPL LRG allowing contraction for
different choices of LT Rmax . LT Rmax = 99, 102, & 105% for RG1,
RG2, and RG3, respectively.

90

0

Fig. 22. RGs’ performance without estimation errors.

putation was lower than 0.01s for the LRG and about 0.02s
for the ECG. The NRG has a larger computation time, which
is about 0.16s per command update step, when the simulation
and control update step is 0.01s. This means that the NRG
setup tested is not able to compute the control solution in realtime in MATLAB R in the computer used for these tests (64bit; CPU: Intel R CoreTM i7-4600U @ 2.70 GHz; RAM: 8 GB).
In C++, the NRG would be about 10 times faster. Also, it may
be possible to use slower update rates or shorter prediction
horizons with NRGs to reduce the computation times, provided
this does not cause performance degradation or increase in
constraint violation. We note that explicit reference governor
[23] cannot be used for this application as we are lacking a
Lyapunov function.

0.2
0.1
0

D. Performance in the Presence of Estimation Error

Fig. 21. Variation in performance of the LRG, NRG1, and NRG4.

(fig. 11), while the NRG4 takes longer to converge, with a
much larger difference between the reference command and
the NRG command.
Figure 22 illustrates the performance of the LRG, ECG,
and NRG, for the selected configurations. The effectiveness is
very similar and over 99% for all the RGs (top plot of fig. 22).
That means that the RGs keep the wheels from lifting more
than 0.5mm (0.02”) from the ground, even when the reference
steering would lead to rollover. The LRG and the NRG are less
conservative and provide better turn response than the ECG
(bottom plots of fig. 22). For the most demanding conditions
(larger reference command amplitudes), both the LRG and the
ECG have a mean computation time of about 0.005s. In the
same conditions, the maximum time for the command com-

In this section, we illustrate the variation of the control
performance for 3 controllers: a LRG with command contraction, an ECG, and a NRG with a single iteration (NRG1). The
controllers are evaluated through Monte Carlo sampling with
a range of estimation error conditions in all states used by the
controllers: side-slip, turn rate, roll angle, and roll rate.
Figures 23, 24, 25, and 26 illustrate how the errors in the roll
angle affect the controllers performance. Figure 23 shows that
even with roll estimation errors up to 10%, the effectiveness of
all the RGs is almost unaffected. Figures 24 and 25 show that
the effectiveness of the ECG and the NRG is almost unaffected
even for extremely high roll estimation errors. The exception
is the LRG controller. Its average effectiveness approaches the
limit of 0% for larger reference steering angles, meaning that
the wheel could lift an average of 45mm (1.8”). Figure 25
indicates that this only happens in the presence of very high
roll estimation errors and extremely high steering amplitudes
(> 140 deg).
Figure 26 shows that the conservatism is also affected by the
estimation errors. Nevertheless, even with 20% of estimation

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

14

Conservmean [%]

100
LRG
ECG
NRG1

95
90

0

20

40

60

80
100
δSteer [deg]

120

140

Conserv [%]

60
40
20
0
−20
−40

0

20

40

60

80
100
δSteer [deg]

120

140

Conservmin & max [%]

TurnResp [%]

40
20
0
−20

0
−10

0

20

100

40

LRG

60

80
100
δSteer [deg]

ECG

120

140

160

NRG1

80
60
40
20
0

160

10

−20

60

−40

160

Conservmean ± σ [%]

Effectiv [%]

105

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

250
200
150
100
50
0

0

20

40

60

80
100
δSteer [deg]

120

140

160

Fig. 23. RGs’ performance with estimation errors of σ = 10% about the
true roll angle.

Fig. 25. RGs’ effectiveness performance with estimation errors of σ = 20%
about the true roll angle.

80

100

60
40

LRG
ECG
NRG1

20
0

0

20

40

60

80
100
δSteer [deg]

120

140

160

Effectivmean [%]

Effectiv [%]

100

80
60
40
20
0

0

20

40

60

80
100
δSteer [deg]

120

140

160

40
20
0
−20
−40

0

20

40

60

80
100
δSteer [deg]

120

140

160

Effectivmean ± σ [%]

Conserv [%]

60
200
LRG

ECG

0
−100
0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

−10
−20

0

20

40

60

80
100
δSteer [deg]

120

140

160

Fig. 24. RGs’ performance with estimation errors of σ = 20% about the
true roll angle.

error in roll, the RGs conservatism is quite acceptable, and in
most test runs it is below 50% for the LRG and NRG and
below 60% for the ECG. Most importantly, at lower steering
angles, even in the most extreme test runs, the controllers
conservatism is kept below 12% for steering angles that would
not cause any wheel lift (δSW < 48 deg) and is kept bellow
35% for steering angles that would take the wheels to reach
the limit wheel lift. Among the controllers compared, the ECG
controller seems to be the most sensitive to the roll estimation
errors in terms of conservatism.
The bottom plots of Figures 23 and 24 show that the controllers turning response is largely unaffected by the estimation
errors. Unlike in the conservatism metric, the ECG seems to
be the least affected controller.

Effectivmin & max [%]

TurnResp [%]

10
0

NRG1

100

100
0
−100
−200
−300
−400

Fig. 26. RGs’ conservatism performance with estimation errors of σ = 20%
about the true roll angle.

Figures 27, 28, and 29 show that the controllers’ performance is only slightly affected by roll rate estimation errors
and is not visibly affected by the side-slip and turn rate errors,
even for the high estimation errors (σ = 20%).
Figure 30 shows that the effect on the controllers performance from a combination of roll and roll rate estimation
errors is very similar to that of just the roll estimation errors.
These results show that the controllers are most sensitive
to the errors in the roll angle. Nevertheless, the controllers
average response is adequate, even with estimation errors with
a standard deviation of 20%, which is an extremely poor
estimation performance.

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

15

105
Effectiv [%]

Effectiv [%]

105
100
LRG
ECG
NRG1

95
90

0

20

40

60

80
100
δSteer [deg]

120

140

Conserv [%]

Conserv [%]

20
0
−20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

40
20
0

20

40

60

80
100
δSteer [deg]

120

140

−40

160

10

TurnResp [%]

TurnResp [%]

0

0
−10

0

20

40

60

80
100
δSteer [deg]

120

140

10
0
−10
−20

160

Fig. 27. RGs’ performance with estimation errors of σ = 20% about the
true roll rate.

Fig. 29. RGs’ performance with estimation errors of σ = 20% about the
true turn rate.

105

100
Effectiv [%]

Effectiv [%]

20

−20

−40

100
LRG
ECG
NRG1

95

0

20

40

80
60
LRG
ECG
NRG1

40
20

60

80
100
δSteer [deg]

120

140

160

60

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

0

20

40

60

80
100
δSteer [deg]

120

140

160

60
Conserv [%]

Conserv [%]

0

60

40

90

LRG
ECG
NRG1

95
90

160

60

−20

100

40
20
0

40
20
0

−20

−20

−40

−40
0

20

40

60

80
100
δSteer [deg]

120

140

160

TurnResp [%]

TurnResp [%]

10
0
−10

10
0
−10
−20

−20

0

20

40

60

80
100
δSteer [deg]

120

140

160

Fig. 28. RGs’ performance with estimation errors of σ = 20% about the
true side-slip angle.

V. C ONCLUSIONS

AND

F UTURE W ORK

A. Conclusions
We have presented several Reference Governor (RG) designs for vehicle rollover avoidance using active steering commands. We implemented three types of Reference Governors:
a Linear Reference Governor (LRG), an Extended Command
Governor (ECG), and a Nonlinear Reference Governor (NRG).
The goal of the Reference Governors is to enforce Load
Transfer Ratio (LTR) constraints. The Reference Governors
predict the vehicle trajectory in response to a reference steering
command, from the driver, to check if it respects the Load
Transfer Ratio (LTR) constraints. The LRG and the ECG use a
linear model to check the safety of the steering command. The
NRG uses a nonlinear model to achieve the same goal. The

Fig. 30. RGs’ performance with estimation errors of σ = 20% about the
true roll angle and true roll rate.

controllers were tested with a nonlinear simulation model to
check their performance with realistic vehicle dynamics, that
are highly nonlinear for large steering angles. The nonlinearity
causes the standard versions of the LRG and the ECG to
be too conservative. We have presented several methods to
compensate for such nonlinearities.
To evaluate the controllers we have defined three performance metrics: effectiveness, conservatism, and turning
response. The effectiveness characterizes how well the constraints are enforced by the RG. The conservatism and the turning response characterize if the controller is too intrusive or
not, by measuring how well the RG command and respective
vehicle trajectory adhere to the driver command and desired
trajectory. An additional evaluation metric is the command
computation time, that characterizes the controller computa-

IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. #, NO. #, ??? 2016

tional load. The NRG provides the best performance in terms
of effectiveness, conservatism, and turning response, but it is
slower to compute. The simulation results show that LRG with
the nonlinear compensations (nonlinear difference and MPL)
provides the best balance between all the metrics. It has a
low computational load, while showing very high constraint
enforcement effectiveness and generating commands with a
conservatism almost as low as the NRG. The simulation results
also show that the Reference Governors’ performance is most
sensitive to the roll estimation errors, but that even with very
high estimation errors (σ = 20%) the Reference Governors
can still enforce the constraints effectively.
VI. F URTHER E XTENSIONS
Currently we are working to extend the current approach
to incorporate differential braking and active suspension commands. It is important to understand the performance limits
in rollover avoidance for each individual command. It is also
important to understand how the different commands can be
combined to provide the most effective and least intrusive
rollover avoidance intervention.
Research is also needed to determine the slowest acceptable
control update rate, i.e., to characterize how slower update
rates degrade the control performance and the driver handling
perception.
This research shows that the presented Reference Governors
can cope with a great deal of estimation errors. Further
research should address the state estimation methodology,
given the limited sensing capabilities in standard cars. With
such methodology, a better estimation error model should be
integrated with the vehicle simulation to verify the Reference
Governors performance with a realistic estimation error model.
The effects of vehicle and road uncertainties on the estimation
and control performance also need to be studied, in order
to understand how the system will perform in the range of
operating conditions in which the real vehicles will operate.
ACKNOWLEDGMENT
The authors would like to thank ZF-TRW that partially
funded this work, and in particular Dan Milot, Mark Elwell
and Chuck Bartlett for their technical support and guidance in
the controllers’ development process.
R EFERENCES
[1] NHTSA, “49 cfr part 575 - consumer information - new car assessment
program - rollover resistance,” Oct 2003.
[2] A. van Zanten, “Bosch esp systems: 5 years of experience,” in SAE
2000 Automotive Dynamics & Stability Conference, Troy, Michigan,
May 2000.
[3] J. Ackermann and D. Odenthal, “Damping of vehicle roll dynamics
by gain scheduled active steering,” in European Control Conference,
Karlsruhe, Germany, 1999.
[4] C. R. Carlson and J. C. Gerdes, “Optimal rollover prevention with
steer by wire and differential braking,” in ASME 2003 International
Mechanical Engineering Congress and Exposition, Washington, D.C.,
Nov 15-21 2003, pp. 345–354.
[5] S. Solmaz, M. Corless, and R. Shorten, “A methodology for the design
of robust rollover prevention controllers for automotive vehicles with
active steering,” International Journal of Control, vol. 80, no. 11, pp.
1763–1779, Nov 2007.

16

[6] P. Koehn and M. Eckrich, “Active Steering - The BMW Approach
Towards Modern Steering Technology,” SAE Technical Paper 2004-011105, 2004.
[7] S. Solmaz, M. Corless, and R. Shorten, “A methodology for the design
of robust rollover prevention controllers for automotive vehicles - part
1-differential braking,” in 45th IEEE Conference on Decision & Control.
San Diego, CA, USA: IEEE, Dec. 13-15 2006, pp. 1739 – 1744.
[8] ——, “A methodology for the design of robust rollover prevention
controllers for automotive vehicles: Part 2-active steering,” in American
Control Conference. New York, NY, USA: IEEE, July 9-13 2007, pp.
1606–1611.
[9] P. Falcone, F. Borrelli, H. E. Tseng, J. Asgari, and D. Hrovat, “Linear
time-varying model predictive control and its application to active
steering systems: Stability analysis and experimental validation,” International Journal of Robust and Nonlinear Control, vol. 18, no. 8, pp.
862–875, 2008.
[10] I. V. Kolmanovsky, E. Garone, and S. Di Cairano, “Reference and command governors: A tutorial on their theory and automotive applications,”
in American Control Conference (ACC), 2014, Portland, USA, June
2014, pp. 226–241.
[11] I. V. Kolmanovsky, E. G. Gilbert, and H. Tseng, “Constrained control
of vehicle steering,” in Control Applications, (CCA) Intelligent Control,
(ISIC), 2009 IEEE, Saint Petersburg, Russia, July 2009, pp. 576–581.
[12] J. Zhou, “Active safety measures for vehicles involved in light vehicle-tovehicle impacts,” Ph.D. dissertation, University of Michigan, Ann Arbor,
Michigan, USA, 2009.
[13] A. G. Ulsoy, H. Peng, and M. akmakci, Automotive Control Systems.
Cambridge University Press, June 2012.
[14] M. Abe, Vehicle handling dynamics - Theory and applications, 2nd ed.
Butterworth-Heinemann, Apr. 22 2015.
[15] R. Bencatel, I. V. Kolmanovsky, and A. Girard, “Arc-lab technical
report 2015-008 - car undercarriage dynamics - wheel lift condition,”
University of Michigan - Aerospace Robotics and Control Laboratory,
Tech. Rep., 2015.
[16] D. Karnopp, Vehicle Dynamics, Stability, and Control, ser. Mechanical
Engineering. CRC Press, Jan. 22 2013.
[17] S. Hong, G. Erdogan, J. K. Hedrick, and F. Borrelli, “Tyreroad friction
coefficient estimation based on tyre sensors and lateral tyre deflection:
modelling, simulations and experiments,” Vehicle system dynamics,
vol. 51, no. 5, pp. 627–647, Sep. 24 2013.
[18] J. L. Stein and J. K. Hedrick, “Influence of fifth wheel location on truck
ride quality,” Transportation Research Record, no. 774, pp. 31–39, 1980.
[19] E. G. Gilbert, I. Kolmanovsky, and K. T. Tan, “Discrete-time reference
governors and the nonlinear control of systems with state and control
constraints,” International Journal of Robust and Nonlinear Control,
vol. 5, pp. 487–504, 1995.
[20] E. G. Gilbert and C.-J. Ong, “Constrained linear systems with hard
constraints and disturbances: An extended command governor with large
domain of attraction,” Automatica, vol. 47, no. 2, pp. 334–340, 2011.
[21] U. Kalabi, Y. Chitalia, J. Buckland, and I. Kolmanovsky, “Prioritization
schemes for reference and command governors,” in European Control
Conference. Zurich, Swiss: IEEE, July 17-19 2013, pp. 2734 – 2739.
[22] J. Sun and I. V. Kolmanovsky, “Load governor for fuel cell oxygen
starvation protection: a robust nonlinear reference governor approach,”
IEEE Transactions on Control Systems Technology, vol. 13, no. 6, pp.
911–920, Nov. 2005.
[23] E. Garone, S. Di Cairano, and I. V. Kolmanovsky, “Reference and
Command Governors for Systems with Constraints: A Survey of Their
Theory and Applications,” Automatica, to appear.

