1. Introduction
Minimum lap-time planning problems (MLTPs) are well established in the race car industry, both to synthesize fast trajectories and to calibrate setup parameters optimally. In the technical literature, different methods have been proposed to solve MLTPs. A rich overview on their development is given in [
1].
In general, two are the main approaches to tackle MLTPs. These are the quasi-steady-state technique and the method relying on the solution of an optimal control problem (OCP). Methods in the first class start from a predetermined path on the racetrack and build an acceleration profile on top of it. On the other hand, the second class is grounded on OC theory and defines all state trajectories as the solution of a purposely designed optimal control problem. Everything is discovered from scratch: the vehicle motion, the racing line and the controls that generate them.
Optimal control problems, in turn, can be solved either via an
indirect method or a
direct one. Both have been employed to solve MLTPs such as the one we will consider. A detailed description of these approaches can be found in [
2], while an assessment of their pros and cons can be found in [
3]. The indirect approach uses Pontryagin’s minimum principle to derive first-order optimality conditions. These lead to a two-point boundary value problem that has to be integrated. We find this approach employed for MLTP in [
4,
5]. The direct approach, on the other hand, aims to recast (
transcript) the original OCP into a nonlinear program (NLP), to be solved numerically. In [
6,
7,
8], this approach is employed to solve MLTPs. In most cases, as in the case of the present contribution, direct collocation is used as the transcription method.
To effectively formulate the OCP, the dynamical equations of the system must be at hand. They must be explicitly known and directly manipulable. Many of the works mentioned above rely on simple
single-track or
double-track vehicle models, as they appear in vehicle dynamics textbooks [
1,
9,
10]. When a
multibody approach is employed, e.g., in [
4,
7,
11], the final equations are almost always simplified and greatly approximated.
In this paper, we propose a comprehensive and systematic multibody approach. The basic structure of our model is built around Featherstone’s articulated-body algorithm (ABA) [
12]. The ABA is a powerful direct dynamics computational method, appearing in many different variants within the robotics literature [
13,
14,
15]. To model the other, more specialized components of the system (such as tires and aerodynamics), we relied on conventional vehicle dynamics results [
9,
16,
17,
18].
The proposed approach opens up the possibility of thorough vehicle dynamics analysis similar to that offered by conventional simulation softwares such as CarSim or MBS Adams, which, on the downside, give limited access to their equations and cannot be easily embedded into the loop of an MLTP optimization problem.
As far as the track model is concerned, in most of the aforementioned works the track is either planar or is immersed into the system dynamics through Frenet–Serret equations involving torsion and curvature [
5]. In the present work, as in [
8,
19], we embed the track features directly into the fixed structure of our nonlinear program, so that a fully 3D track can be considered, and all issues related to the Frenet–Serret formulation are avoided.
2. Vehicle Model
This section presents the topology of our multibody vehicle model and provides a characterization of its components. In
Section 2.1 we introduce the bodies composing the model and explain their interconnection. Then, we focus on the modeling of suspension systems in
Section 2.2 and we describe the tire model in
Section 2.3. Finally, in
Section 2.4, we detail the contributions of the external forces acting on the vehicle.
2.1. Topology of the Kinematic Tree and Its Parametrization
We model the vehicle as an articulated system of rigid bodies. In particular, our model includes the chassis, knuckles and wheels. The chassis represents the ensemble of all sprung masses of the vehicle, including the vehicle’s bearing framework, the motor, the driver and any other load carried onboard the car. These parts are assumed to have a fixed position with respect to one another. The wheels are the ensemble of the hubs, rims, tires and all other parts that rotate with them. In order to decouple the rotational motion of the wheel (about its axle) from its vertical motion (due to suspension travel), we also need to introduce the hub carriers, or knuckles. All unsprung masses that do not actually rotate, such as the brake calipers, are considered as part of the knuckle body; we will assume these components to have negligible mass.
To keep track of the relative pose between bodies, we conveniently attach a reference frame to each of them. We define front-left-up (FLU) barycentral reference frames
,
, and
to be attached to the chassis, to the knuckle, and the rim of the generic wheel, respectively, as illustrated in
Figure 1. (We will often make use of the generic symbols
and
to denote the frames attached to the knuckle and rim of the particular wheel under consideration. If the need arises to make a distinction between different wheels, we will explicitly write
and
, where
when referring to the front-left (FL), front-right (FR), rear-left (RL) or rear-right (RR) wheel, respectively).
We also define an inertial reference frame
, fixed to ground, and an auxiliary frame
, following the vehicle on the track. More precisely, the track surface is modeled as a 3D ribbon [
2] and the position of the vehicle on it is individuated by a point on its centerline curve. We set the origin
of
to coincide with this point, and the axis
to be tangent to the centerline curve, pointing forward. The axis
lies on the ribbon, pointing left, so that the axis
points in the upward normal direction. As the vehicle travels along the track, the position of
moves along the track centerline, and its orientation changes accordingly. At any moment, we assume that the vehicle is interacting with the
-plane of
, tangent to the road surface.
The relative position and orientation between each pair of frames are, respectively, described by three Cartesian coordinates
and a rotation matrix
, which we parameterize with three Euler angles
. To describe the relative pose between frames, we use a homogeneous transformation matrix
. To keep the equations more compact, we often gather the six coordinates
d and
into a single
configuration vector
. A synoptic overview of the main transformations and their coordinates is provided in
Figure 2.
Within the articulated system, bodies are connected together by joints. As schematized by the graph in
Figure 3, joints in our model are the hub bearings, connecting the rims
to the knuckles
, and the suspension linkages, connecting the knuckles
to the chassis
. The relative motion allowed by each of these joints enjoys one DoF. On the other hand, we observe that the chassis is a
free-floating body and its pose with respect to ground is not constrained in any way. This behavior is encoded by a connection with the ground through a virtual six-DoF joint. Therefore, overall, the configuration of the vehicle enjoys a number of
DoF.
Having defined the topology of our articulated system, we need to define a suitable set of variables to keep track of its configuration and motion. To this end, we associate every available degree of freedom with a position variable and a velocity variable.
To represent the configuration of the virtual six-DoF joint, we simply use the six coordinates , as defined above. To represent its instantaneous motion, we conveniently adopt the driver’s point of view and we use the components of the linear velocity of the origin of with respect to (w.r.t.) and of the angular velocity of w.r.t. , both expressed in the chassis frame components. We collect these components into a single vector , which we call the distal rigid-body velocity of w.r.t. expressed in . The adjective distal reflects that these are expressed in the moving frame (as opposed to , which would define proximal components). (In general, the rigid-body velocity of the form would represent the instantaneous motion of frame w.r.t. frame expressed in components of the (observer) frame . The generic with are defined hybrid components. We recover the distal and the proximal components whenever and , respectively. For notational brevity, we also make the following positions: , , , , and . Here, the central role as observers of frames and is apparent.)
To each of the four DoF allowed by the suspension system we associate a corresponding configuration variable z and its time derivative . Variable z is the suspension travel, the knowledge of which allows for the determination of the value of the six coordinates . Similarly, given (and z), one should be able to find the (distal) rigid-body velocity . Since the characterization of the suspension configuration in terms of a single variable is not trivial, its details are deferred to the next section. As far as the hub bearings are concerned, due to the assumed symmetrical properties of the wheel with respect to its axis, the (wheel) joint angle defining the orientation of w.r.t. is of no relevance for our analysis; what matters is only the joint velocity , which is reasonably defined as the wheel speed.
2.2. Suspension Analysis
In this section we characterize the suspension system. The suspension connects the knuckles
to the chassis
. The relative pose between
and
is encoded by the homogeneous transformation matrix
, and parameterized by the six coordinates
. To express
in terms of
, we use the global
product of exponentials (PoE) formula ([
20], Section 3.2.2).
where, in our case, the offset
and
,
,
,
,
and
are the six normalized screw vectors associated with the Cartesian coordinates and Euler ZXY angles in
. In this case, our exponentials are elementary transformation matrices, and the corresponding screw vectors have a very simple form. They can be interpreted as a parametrization of a
virtual kinematic chain of three
prismatic and three
revolute joints connecting
to
.
Obviously, the components of
are not independent variables. Rather, they are constrained by the particular suspension geometry and they are functions of the suspension travel
z defined in
Section 2.1, which can be chosen as the independent coordinate. Hereafter, we show how
is related to
z. Along with
z, the steering wheel angle
may appear as an additional independent variable. (This is the general case of a wheel that can steer. For a front-steering vehicle, the dependence of
is not present at the rear wheels, and the relative contributions can be omitted.) In general, the kinematic constraints can be expressed implicitly as a set of six scalar equations
in the six dependent variables
and the two independent variables
. The expression of the constraint function
F depends on the particular suspension geometry of the vehicle under consideration; in
Figure 1 a
double-wishbone suspension is featured, but the analysis of any design is possible with the same approach. It is worth noting that, besides the five implicit equations associated to the double-wishbone constraints, an additional constraint must be included since no connection is initially assumed between
and
. In this development, we choose to define the suspension travel as the vertical displacement of the wheel center, and we used
.
Under the hypotheses of the implicit function theorem [
21], to establish an
explicit functional relationship between
and
, we proceed as follows. First, we sample pairs
, with
and
on a
grid of points in the combined working range of
z and
variables. For each point in the grid
, we solve the implicit equations for the dependent variables
, thus obtaining
, such that
. As a last step, for each coordinate
, we fit (in the least-squares sense) the corresponding grid of points
with a 2D regression polynomial
in the two variables
. For our purposes, the following polynomial (complete of order three) turned out to be sufficiently accurate:
In
Figure 4, the procedure is illustrated for the variable
(wheel steer angle). Assembling Equation (
2) with (
1), we obtain
as a function of
z and
, i.e.,
.
Now we need to relate the rigid-body velocity
to the derivatives
and
. In the first instance, we write
where
is the
geometric Jacobian of the suspension joint relative to
, assumed with independent components. Each column of
can be computed based on the PoE Formula (
1), as shown in ([
20], Section 3.4). For the
i-th column, we have
, with
and
,
. According to ([
20], Section 2.4.2), we define the
adjoint operator as the
matrix satisfying
whenever
, so that, if
, then
.
Since
is a function of
, the velocities of the dependent variables
can be expanded using the chain rule
where the (geometric) partial derivatives
and
are obtained by differentiating Equation (
2). Then, by defining the Jacobians with respect to the true independent variables
z and
as follows
it possible to obtain the rigid-body velocity
of the constrained motion from Equation (
3), in terms of
and
, as follows:
In
Section 3, we will also need the time derivative
of the rigid-body velocity
. For this, we need to differentiate Equations (
3)–(
6). Starting, as before, under the assumptions of independent components
, by differentiation of (
3) we obtain
In (
7), following [
22], the derivatives
can computed using the formula
that efficiently exploits Lie derivatives between the columns of
. (In the matrix case, we compute the Lie derivative of the vector field
with respect to vector field
by using the commutator
; in the vector case, we use the
matrix
, defined such that
. If
v and
are the translational and rotational component of
V, then
.)
In (
7), the accelerations
are obtained by differentiating the velocities in Equation (
4):
where the (geometric) partial derivatives are obtained by differentiating the polynomials in (
2). At this point, we have explicit expressions for the derivatives of the Jacobians in (
5) which are
By substituting Equations (
8) and (
9) in (
7), and casting some intermediate results as (
10) and (
11), we have explicit expressions for computing the constrained rigid-body acceleration
in the following form:
The last step in our analysis is aimed at characterizing the generalized force
of the suspension associated with the independent configuration variable
. We assume that
is entirely due to the force developed by a shock absorber consisting of a spring and damper aligned along the same axis. The intensity
F of this force is a function of the length
l of the spring and its derivative
as follows:
(a linear behavior for both the spring and the damper is assumed). Independently of the complexity of the kinematics leading to the shock absorber, the length
l of the spring ultimately depends on the suspension configuration. To find
l as a function of
z (and possibly
), we solve the linkage kinematics for
l at a number of predetermined configurations, and then fit the samples with a regression polynomial similar to (
2).
Then, by employing the principle of virtual work,
can be computed as
In (
14),
F is evaluated using
l and
, which are computed using the regression polynomial and its derivative. In this way, we have
expressed as a function of
z and
, i.e.,
. We will need this in
Section 3.
2.3. Tire Model
The tire model is responsible for all forces exchanged with the ground and, as such, is a fundamental component of the vehicle. To conveniently define the tire forces we introduce, for each wheel, an auxiliary reference frame
. The construction of the frame
is illustrated in
Figure 5. Note that frame
is completely specified given the pose of the knuckle frame
and that of the current track frame
.
The tire force is decomposed into three orthogonal components,
, aligned, respectively, with the axes of
, as shown in
Figure 5 (left panel). To compute the vertical force
, we use a unilateral
penalty-based compliant tire model, where the tire is modeled as a radial spring, with uniform radial stiffness
. The normal force arises whenever the pose of
is such that the lowermost point of the undeformed tire (in fact, of its longitudinal section; see
Figure 5 (right panel)) is displaced below the road surface. We denote the amount of this displacement by
d, and let
be proportional to
d as follows:
When the tire is completely detached from ground, the vertical force
is set to zero. In this way, we are able to correctly deal with tires losing contact with ground, e.g., during a jump.
To compute the value of the tangential forces
and
, we rely on Pacejka’s
Magic Formula ([
16], Section 4.3.2):
The Magic Formula, mf, computes the longitudinal and lateral forces
as a function of the
tire slips ([
16], Section 1.2.1). The formula is also sensitive to variations of vertical load
and camber angle
.
2.4. External Wrenches
In this section we detail the contributions of all forces exchanged by the environment and the vehicle. For each body, we compute the resultant external wrench and express it in the local reference frame.
The resultant external wrench
applied to the generic rim expressed in the knuckle frame
is
and is made of four contributions. The first is due to the tire forces
with components in
defined in
Section 2.3. Their expression in
can easily be computed through the coadjoint operator
. The second and third contributions
and
, respectively, are due to the relative driving
and braking torque
, and are applied to the wheel around the hub axis
. In frame
, their explicit expressions are therefore
and
. It should be noted, however, that although both
and
are applied about the same axis
, the reaction of the former goes to the chassis (through the drive axle), whereas that of the latter goes to the knuckle (through the brakes). Therefore, we prefer to introduce these torques, together with their respective reactions, as ordinary external torques, and keep the joint torque of the hub bearing always set to zero. The magnitude of
and
is determined starting from a single input signal
T, which is interpreted as a driving/braking command depending on its positive/negative sign. In this way, simultaneous acceleration and braking is disallowed. Denoting the positive and negative value of
T by
and
, we define
The driving torque
is computed assuming a rear-wheel-drive vehicle with an open differential. The braking torque
, on the other hand, is computed by partitioning the total braking torque
between front and rear axle according to the value of the
brake balance coefficient , specified in the car set-up.
The last contribution
in (
17) is due to the weight force of each wheel (rim + tire), expressed in frame
. Its general expression is of the form
, with
in frame
.
The external wrench
applied to the knuckles is simply given by the reaction of the braking torque
, thus
Finally, we define the resultant external wrench
applied to the chassis expressed in
frame as follows:
In (
20) we recognize three contributions. The first one is the aerodynamic wrench
which, following ([
9], Section 3.7.2), is decomposed into drag and lift components so that
. Here,
is the air density,
S the frontal area of the vehicle,
the forward velocity,
the nominal height of the CoM from ground, and
the distances of the CoM from the front and rear axle. The drag and lift coefficients
and
are dimensionless parameters that depend on the shape of the vehicle’s body.
can be further partitioned into
and
according to the
aerodynamic balance coefficient, which is a parameter of the vehicle set-up. The second contribution in (
20) is the reaction of the driving torque
, conveniently transformed into frame
.
The last contribution is the own weight of the chassis in . Its general expression is of the form , with in frame .
3. Vehicle Dynamics
In this section we derive the equations of motion governing our articulated system. Ultimately, we will be able to express the system dynamics in the classical state-space form as follows:
In this way, the dynamical equations are ready to be embedded into our MLTP formulation.
As state variables, we take the velocity and position variables defined in
Section 2.1. More explicitly, our state vector is
. Here,
collects the Cartesian coordinates and Euler ZYX angles of the chassis with respect to the inertial frame
,
is its distal rigid-body velocity,
collects the four suspension travels,
their derivatives, and
the speeds of the four wheels. As control input, we take
, where we cast the driving/braking torque
T and the steering wheel angle
(for optimization purposes, we shall omit the contributions of
and
).
To compute the derivative of the state vector
, we start by noting that, given
, the derivatives
are readily obtained as
where
is the geometric Jacobian of the virtual six-DoF joint connecting
to
. The matrix
is systematically computed through a PoE parameterization of the transformation
, in analogy to what has been carried out for
in Equation (
3). No further consideration is here necessary, since
have independent components.
We now need to find the derivatives of the velocity variables,
. For this, the equations for the motion of the vehicle must be formulated. We rely, for this task, on a computational method inspired by the
articulated-body algorithm (ABA) by Featherstone ([
12], Section 7.2). The key concept of the approach is that of an articulated body: its inertia is that of the original
parent rigid body, plus the portion of the sub-tree (of the
children bodies) which can be
structurally transmitted backward to the
parent through the joints. This allows us to build the equations of motion recursively and in such a way that, in the end, one can obtain explicitly (non matrix inversion is required) the acceleration of each body decoupled from the others. Besides being compact and systematic, the process also presents clear computational advantages.
To adapt the ABA to the case of our vehicle, some observations about the basic features of the system are in order. First and foremost is that the chassis
(root of the kinematic tree), is a free-floating body in the inertial reference frame
: its rigid-body acceleration
is not available as external and independent information, but is the result of the motion of the other bodies of the system, ultimately depending on the wrenches
,
, and
exchanged with the external environment by it and its
children bodies. Another complication is that, as detailed in
Section 2, the one-DoF suspension joints connecting
to
are not merely revolute or prismatic, but are complex joints whose motion subspaces depend on their current configuration, ultimately encoded in
z. Moreover, at the front wheels, the suspension joints are not only configuration-dependent with respect to
z, but also time-varying joints (through the control input
and its derivatives). A way to tackle all these issues is shown following the steps of the ABA in the remainder of this section.
In Algorithm 1, rigid-body velocities are propagated forward across the nodes of the kinematic tree in
Figure 3 from the root node to the leaves. (In the pseudo-code Algorithms 1 and 2, the articulated inertia and bias,
and
, are expressed in the same reference frame as the respective rigid-body velocity
, for
.) Starting with the rigid-body velocity
of the chassis
, which is directly available from the state vector
x, the computation of the rigid-body velocity is propagated first to the knuckles
and then to the rims
. The relative rigid-body velocities
realized by the suspension are computed according to Equation (
6), using the joint velocities
and
together with the Jacobians
and
defined in Equation (
5). (Note that, for a front-wheel-steering vehicle, the contribution relative to
is null at the rear wheels.) To compute the relative rigid-body velocities
realized by the hub bearings, we use the wheel speeds
together with the (constant) Jacobian
, that represents the screw coordinates of the hub axis.
Algorithm 1 Forward Propagation of Velocity |
- 1:
for do - 2:
- 3:
▹ Knuckle Rigid-Body Velocity - 4:
- 5:
▹ Rim Rigid-Body Velocity - 6:
end for
|
Algorithm 2 Backward Propagation of Articulated Inertia and Bias |
- 1:
for do - 2:
▹ Rim Articulated Inertia - 3:
▹ Rim Articulated Bias - 4:
- 5:
- 6:
▹ Knuckle Articulated Inertia - 7:
▹ Knuckle Articulated Bias - 8:
- 9:
- 10:
end for - 11:
▹ Chassis Articulated Inertia - 12:
▹ Chassis Articulated Bias
|
The chassis velocity
is transformed into
via the (inverse of the) adjoint operator
where
is computed as a function of
z (and
), as shown in
Section 2.2. Since for the rims we use the same reference frame as the knuckles, no adjoint transformation is needed between
and
quantities.
In Algorithm 2, we compute the articulated inertia
and bias force
of each body. According to [
12], the articulated inertia
is the inertia that a body appears to have when it is part of an articulated system of bodies. The articulated bias force
is defined instead as the value that the resultant wrench
W applied by the parent node on the tree should take in order for the rigid-body acceleration
of a body to be null. Using the concepts of articulated inertia and bias, the Newton–Euler equation for the generic articulated body can be written in the form
For a leaf node of the kinematic tree, the articulated inertia
is the generalized inertia matrix of the body
M itself. Accordingly, the articulated bias
reduces to
where
is the resultant external wrench applied to the body and
accounts for the generalized gyroscopic and centrifugal forces, which are bi-linear in
V. According to ([
20], Section 4.3.3), we defined
. (If
v and
are the translational and rotational component of
V, then
.)
In the case of our vehicle, the leaf nodes are the rims
(see
Figure 3). Once their inertia and bias are initialized as
and
, the standard ABA equations are applied, as illustrated in [
12], to compute the articulated inertia and bias of the knuckles
(parent of each leaf) as
and
. The process is then repeated to get the articulated inertia and bias of the chassis
(root of our kinematic tree) as
and
.
To successfully back-propagate articulated inertias and bias forces, we must provide the algorithm with the necessary information about the external forces, the geometry of the joints, the mass distribution of the bodies, as well as their current state of motion. In this respect, we observe that the rigid-body velocities
are known from
Step 1. Under our simplifying assumptions that
, the chassis and the rims are the only bodies provided with non-null mass distribution; their inertia matrices
and
are given and constant and are expressed in the reference frames
and
, respectively. As far as the external forces are concerned, the wrenches
,
and
are computed according to Equation (
17), (
19), and (
20). Finally, to capture the geometry of the motion allowed by the joints, we use again the Jacobians
as well as
, and
from Equation (
5) and their derivatives
and
from (
10). The generalized suspension forces
, which account for the transmission of the actions from the knuckles to the chassis through the springs and dampers, are computed using Equation (
14).
In Algorithm 3, the algorithm outputs the derivatives of the velocity variables,
,
and
. To obtain
, we solve the Newton–Euler equation (
24) for the acceleration of the chassis articulated body. The left-hand side is zero, since the chassis is free-floating with respect to the inertial reference frame, meaning no wrench is exerted by the virtual six-DoF joint. Knowing
, we can then calculate the suspension travel accelerations
by projecting the Newton–Euler equation of the knuckle along the direction of
and solving for
. With
, we can calculate the rigid-body acceleration
of the knuckle. The knowledge of
is necessary to compute the wheel angular accelerations
, using a similar procedure as for
.
Algorithm 3 Forward Propagation of Acceleration |
- 1:
▹ Chassis Rigid-Body Acceleration - 2:
for do - 3:
- 4:
- 5:
▹ Knuckle Rigid-Body Acceleration - 6:
- 7:
end for
|
We have finished describing the three steps of the articulated-body algorithm, which, along with Equation (
22), are crucial components of our state transition function
in Equation (
21). It is important to note that
relies on numerous parameters, including both constant and time-varying data. The constant data include all the dimensions, coefficients, and parameters utilized in the model’s creation. On the other hand, the time-varying data pertain to the coordinates of the track frame
S (specifically, the Cartesian coordinates
and the Euler ZYX angles
), which are required to compute the external wrenches in Equations (
17), (
19) and, (
20). It is the presence of the latter that causes the state transition function to become a time-varying function.
5. Validation and Results
In this section we report the solution of a MLTP problem with data from a real racetrack. The optimization is carried out on the Nürburgring Nordschleife circuit for a Formula SAE car. To help visualize the outcome of the experiment, we set up an animation and made it available online [
25].
To validate the results, the optimal solution found with the proposed model is compared with that obtained by running a
double-track model on the same scenario. The double-track model is well established in the vehicle dynamics literature (see, e.g., [
9], Section 7.3). Being simple and efficient, it is a useful device to capture the gross motion of the vehicle. On the other hand, the proposed approach is useful for more in-depth analyses of the effects relative to higher-order dynamics offered by our full-fledged multibody model. Compared to the double-track model, the ABA model features: (i) exact rigid-body motion of the chassis, (ii) independent motion of the wheels, (iii) detailed kinematic model of the suspension, (iv) dynamic load transfers accounting also for chassis motion, and (v) dynamic effects induced by traveling along a 3D track with appreciable variations in slope and banking.
Of course, this greater level of detail comes at the expense of a higher computation time. The dimension of the NLP resulting from the ABA-based approach is double compared to that of the double-track. To instantiate the problem, we consider a sector of the circuit with approximately 2 km length. With the proposed ABA-based approach, the NLP comprises 156,000 decision variables and takes 15 min to be solved. With the double-track, we have 78,000 variables and a computation time of 3 min on the same hardware (Simulations were carried out using a 2.30 GHz Intel(R) Core(TM) i7-10875H CPU laptop with 32 GB RAM).
In
Figure 7, we report the racing lines obtained by the classic double-track and the proposed ABA-based approach (light and dark red lines, respectively). The main differences can be ascribed to higher-order dynamics elicited in the ABA model by the 3D features of the track, which are not fully captured by the double-track model.
Figure 8 shows the trajectories of the most relevant components of the state vector. The
forward velocity , the
lateral velocity and the
yaw rate are plotted for both the double-track and the proposed ABA model. The trajectories of the former, which appear smoother, are plotted with a shaded line in the background whereas those of the latter are plotted with a solid line in the foreground. Overall, we observe that our ABA model essentially follows the trend defined by the double track; on top of that, it features a richer dynamical presence, which becomes particularly evident in correspondence to sharp corners and highly sloped points of the track.
The input trajectories in
Figure 9 also follow the same trend. The only appreciable difference between the two models is recorded near corner ①, which the ABA model manages to travel at a higher speed. In fact, this different behavior is reasonable and denotes a peculiarity of our approach. As we point out in the description of
Figure 10, the ABA-based planner takes full advantage of the 3D nature of the track to attain a smaller lap-time (57.1 s against the 58.4 s of the double-track). In the particular case of corner ①, the favorable banking and slope angles of the track allow higher vertical loads leading to a sharper negotiation of the corner.