An Intrinsically Stable MPC Approach for Anti-Jackknifing Control of Tractor-Trailer Vehicles

Tractor-trailer vehicles are affected by jackknifing, a phenomenon that consists in the divergence of the trailer hitch angle and ultimately causes the vehicle to fold up. For the case of backward motions, in which jackknifing can occur at any speed, we present a control method that drives the vehicle along generic reference Cartesian trajectories while avoiding the divergence of the hitch angle. This is obtained thanks to a feedback control law that combines two actions: a tracking term, computed using input–output linearization, and a corrective term, generated via IS-MPC, an intrinsically stable MPC scheme which is effective for stable inversion of non-minimum phase systems. The successful performance of the proposed anti-jackknifing control is verified through simulations and experiments on a purposely built one-trailer prototype. To show the generality of the approach, we also apply and test the proposed method on a two-trailer vehicle.


I. INTRODUCTION
T RAILERS are added to ground vehicles to increase their payload capacity without sacrificing too much of their maneuverability. Still, it is quite obvious that driving and controlling a tractor-trailer system is more challenging than a single-body vehicle [1]. One phenomenon that may arise during the motion of vehicles with trailers is the so-called jackknifing. This term denotes a situation in which the hitch angle between the tractor and trailer grows until the vehicle folds on itself, losing controllability and possibly causing collisions.
Jackknifing is a serious issue during backup maneuvers, as any truck driver knows by experience. It may also arise in forward motion, e.g., when a truck brakes or turns abruptly. The nature of the phenomenon is, however, different in the two cases: jackknifing in backward motion is essentially a kinematic issue which occurs at any speed, while in forward motion it is a high-speed inertial effect related to slippage. In the literature, the control problem for tractor-trailer vehicles has been addressed following two categories of approaches: in the first, the reference motion is a path or trajectory in Cartesian space, while in the second it is given in configuration space. From a control viewpoint, the two approaches correspond respectively to output and state tracking.
Works belonging to the first category include [2], where a feedback control scheme is proposed to drive a general (i.e., nonzero-hooked) one-trailer system along backward trajectories by transforming the control inputs of a virtual vehicle moving forward along the same trajectory; [3], which introduces a twolevel trajectory tracking controller for a zero-hooked one-trailer system; and [4], where the trajectory tracking problem is considered for a general n-trailer vehicle whose last trailer must track a linear/circular trajectory. More recent work includes [5], which addresses the problem by defining the last trailer as a virtual tractor, and [6], which proposes a curvature-based method for both forward and backward path following in the presence of sideslip.
Coming to the second category, a first subgroup consists of works where the reference state path/trajectory corresponds to specific (linear/circular) Cartesian motions. This includes [7], where a zero-hooked one-trailer system is controlled via input/state linearization and time scale transformation; [8] and [9], which tackle the general one-trailer system using linear and Lyapunov-based designs, respectively; and [10] and [11], that consider path tracking for the general two trailer-system. The second subgroup of state tracking approaches deals with generic reference paths/trajectories in configuration space. Among these, we mention [12], where a low-level hitch angle controller is designed to simplify the general one-trailer system model and the associated control problem, and [13], that uses a Linear Quadratic (LQ) controller for driving a general two-trailer system along a backward path generated by composing motion primitives. This subgroup also includes works using Model Predictive Control (MPC), such as [14], [15], where only forward This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see http://creativecommons.org/licenses/by/4.0/ motions are considered, and [16], which focuses on the case of the general two-trailer system.
The control method proposed in this article belongs to the first category, i.e., tracking in Cartesian (output) space. We favor this approach because it is closer to the typical problems arising in applications. Indeed, using a method of the second category for Cartesian motion control would require a preliminary conversion of the reference motion to a stable path/trajectory in configuration (state) space, and this is a nontrivial problem that can only be solved in closed form in very special cases, such as linear/circular motions.
In particular, we focus on the kinematic jackknifing that occurs along backward motions. The starting observation is that such phenomenon is a manifestation of the instability of the residual internal dynamics associated to output trajectory tracking; or, in other words, of the non-minimum phase nature of the system in backward motion. Therefore, we propose to build a feedback control law as the combination of two actions: 1) a Cartesian trajectory tracking term, computed using input-output linearization, and 2) a corrective term, aimed at avoiding the internal state divergence and generated via MPC. For the latter, we apply IS-MPC (Intrinsically Stable MPC), a control framework that we have developed and successfully used for humanoid gait generation [17], another context that requires stable inversion of a non-minimum phase system.
Since IS-MPC applies to linear systems, we compute the linear approximation of the tractor-trailer system around a suitable state trajectory and use it as a prediction model for IS-MPC. The latter includes an explicit stability constraint whose role is to counteract the divergence of internal dynamics. The resulting method has been verified in simulation and experimentally validated on a purposely built prototype.
With respect to the abovementioned literature, the proposed control method has the following beneficial features.
1) Since we directly address the tracking problem in Cartesian space, the reference trajectory can be completely generic and no preliminary conversion is required to a stable trajectory in configuration space. 2) The method applies with any number of trailers, with any combination of zero-and nonzero-hooking. 3) In contrast to most previous works, our method requires almost no tuning, as the only control parameters are the gains of the Cartesian tracking controller. 4) The use of MPC allows enforcing state and input constraints to take into account vehicle kinematic limitations (joint limits), avoid workspace obstacles during the motion, or comply with the presence of actuator saturations. 5) The jackknifing problem is directly tackled by avoiding the onset of the divergence of the zero dynamics via an explicit stability constraint. With reference to the last point, it should be emphasized that methods belonging to the second category (state tracking) still require the introduction of artificial thresholds on the tracking error to avoid jackknifing, e.g., see [16]. Identifying these thresholds requires an initial campaign of simulations or experiments, and in any case their use may prove to be exceedingly conservative, in the sense that it prevents the vehicle from executing motions that are actually feasible.
Another interesting aspect of the proposed approach is that the resulting controller works for both forward and backward trajectory tracking, thereby eliminating the necessity of using specialized controllers for the two cases. In fact, in forward motion, the stability constraint automatically disappears (the dimension of the unstable zero dynamics goes to zero), and the Quadratic Program (QP) problem at the core of our MPC (see Section III-D) will produce a corrective term whose only role is to guarantee kinematic and actuation feasibility.
The ideas behind this article were first introduced in [18]. With respect to that preliminary work, this article adds a number of contributions, the most important being the following: 1) A modified stability constraint that explicitly considers the time-varying nature of the linear approximation. 2) A procedure for enforcing constraints on the maximum available inputs. 3) New simulations for the one-trailer system. 4) The application with experiments to a two-trailer system. The rest of this article is organized as follows. In Section II, we introduce the considered control problem, describing the vehicle kinematic model and offering an interpretation of the jackknife phenomenon associated to tracking control. In Section III, we describe in general terms the proposed control approach, and then in detail the generation of the auxiliary trajectory, the approximate linearization procedure, and the IS-MPC algorithm for computing the corrective control term. Simulations and experiments are presented in Sections IV and V, respectively. The extension to a two-trailer vehicle is outlined in Section VI. Finally, some future work is mentioned in Section VII.

II. CONTROL PROBLEM
In this section, we introduce the considered vehicle, state the control problem, and provide an interpretation of the jackknife phenomenon in this context.

A. Kinematic Modeling
Consider the vehicle shown in Fig. 1 consisting of a car-like tractor towing a single 1 trailer. Denote by x, y the coordinates of the tractor rear axle midpoint, and by θ, φ, and ψ, respectively, the tractor heading, the steering angle, and the hitch angle (i.e., the relative orientation of the trailer with respect to the tractor). Also, let and 1 be the length of the tractor and the trailer, and h the distance between the tractor rear axle midpoint and the hitch joint axis. We will consider the general case in which h = 0 (nonzero hooking).
If no wheel slip occurs (an assumption that is consistent with the low speed typically associated to backup maneuvers), the kinematic model [19] of the vehicle is derived aṡ where v and ω are, respectively, the driving and steering velocities, taken as control inputs.

B. Internal Instability Under Tracking Control
Assume that a Cartesian reference trajectory (x ref (t), y ref (t)) is assigned to be tracked by the vehicle. From a control viewpoint, this is simply an output trajectory-an associated state trajectory is not given.
The most direct way to design a tracking controller is to use input-output linearization via feedback. Ideally, one would like to track the reference trajectory with the vehicle representative point (x, y). However, this cannot be achieved by static feedback because the decoupling matrix turns out to be singular. A possible workaround is to choose as output a different point P with coordinates (x P , y P ), as shown in Fig. 1. One easily finds setting for compactness s α = sin α, c α = cos α, and t α = tan α from now on.
Under this assumption, one can achieve input-output linearization by using the feedback transformation 1 The control design to be presented does not exploit in any way the fact that a single trailer is present. Therefore, our method is applicable to vehicles with more than one trailer, including the so-called general n-trailer system. See Section VI for the application to the two-trailer system. where u = (u 1 , u 2 ) is the new control vector. The input-output linearized dynamics is expressed in normal form [20] aṡ In the following, we will denote by q = (x P , y P , θ, ψ, φ) the state vector of system (3). By setting with k x , k y > 0, the tracking error will converge exponentially to zero for any initial condition. However, the evolution of variables θ, ψ, and φ is not controlled in this scheme. Additional insight can be gained by looking at the zero dynamics of (3)-(4), i.e., the closed-loop dynamics of θ, ψ and φ along the reference trajectorẏ Consider, for example, the case in which the vehicle must track the linear trajectory i.e., point P is on the desired trajectory but the vehicle points in the opposite direction (tracking in backward motion). The behavior of the vehicle can be predicted by set- (5), and deriving 2 its linear approximation around the origin, whose eigenvalues are positive and, in particular, easily found to be From this, we can deduce several interesting facts: 1) The presence of three positive eigenvalues indicates that the origin is unstable for the zero dynamics-one also says that system (3)-(4) is non-minimum phase in this case. This entails that the evolution of the internal variables is not bounded when tracking in backward motion. In fact, a simple simulation reveals that in practice θ, ψ, and φ will diverge from zero as the vehicle moves. This will severely affect the vehicle's maneuverability, because the hitch angle will engage its mechanical joint limit or a self-collision will occur between the tractor and the trailer. 2) Not surprisingly, the zero dynamics instability is emphasized at higher speeds (large |v ref |), for shorter vehicles (small , 1 ) or when P is closer to the wheels (small d). (6), the reference trajectory moves in the direction of the positive x axis, with the vehicle initially pointing in the same direction (tracking in forward motion). Based on the eigenvalue analysis, the origin of the zero dynamics is now asymptotically stable, so that θ, ψ, and φ are bounded-in fact, they converge to zero. The simulations in Fig. 2 summarize the above discussion (see the accompanying video for an animation).
In practice, the divergence of the angular variables, and in particular of ψ, corresponds to the occurrence of the jackknife phenomenon for the vehicle. Its control interpretation is, therefore, straightforward: Jackknifing is a manifestation of the instability of the zero dynamics of system (3)-(4) when tracking in backward motion.

III. PROPOSED APPROACH
In this section, we discuss the proposed method for avoiding the jackknife phenomenon in backward motion. We will first provide a general overview of the solution approach and then proceed to a detailed discussion of its main components.

A. Overview
Let us start with the tractor-trailer system in the input-output linearized form (3) thanks to the feedback transformation (2).
The basic idea is to add to the pure tracking control a corrective action aimed at avoiding the onset of instability In our approach, u corr is generated using IS-MPC (Intrinsically Stable MPC), a predictive control method especially designed for non-minimum phase linear systems [17]. Since model (3) is nonlinear, we compute in real time its linear approximation around an auxiliary trajectory q aux , whose construction is illustrated in Section III-B, and we feed it to the IS-MPC block. Since the latter operates over a control horizon T c , both the auxiliary trajectory and the linear approximation-which is obviously time-varying-must be made available over the same time interval. Fig. 3 shows a block scheme of the proposed approach.
Note that the idea of adding a corrective term to avoid jackknifing may also be of interest in a mixed-initiative control context, in which the human driver would essentially provide the basic tracking control action and the proposed algorithm could be used to design an antijackknifing ADAS (Advanced Driving Assistance System, e.g., see [21]).

B. Generation of the Auxiliary Trajectory
The reference output trajectory does not entail a trajectory for the state variables; this is related to the fact that the Cartesian coordinates x, y (or x P , y P ) do not represent a flat output for the tractor-trailer system. Therefore, we must identify an auxiliary state trajectory q aux (t) around which to compute an accurate linear approximation of the nonlinear system (3). To this end, we generate a stable state trajectory (i.e., a trajectory along which θ, ψ, and φ do not diverge) compatible with the reference output trajectory using the following procedure.
1) Call t k the current time instant at which the computation is performed. Given a T > 0, let t k − T be the (past) initial time instant, and initialize the auxiliary trajectory at i.e., point P matched to the (future) value of the reference trajectory at t k + T , tractor oriented as the backward tangent to the reference trajectory, trailer aligned with the tractor, and zero steering angle (see Fig. 4). 2) Generate the state trajectory q aux (t) for t ∈ [t k − T, t k ] by integrating model (3) from the retrograde initialization q aux (t k − T ) up to t k under the pure tracking (no correction) control law (4). In doing this, the reference trajectory must be reverted by replacing respectively. The resulting control law will define the input u aux = u track (q aux ) associated to the auxiliary , the portion of the auxiliary trajectory and associated input that are contained in the IS-MPC control horizon, and A [t,t+Tc] , B [t,t+Tc] , the time-varying matrices of the approximate linearization in the same interval. . In this figure, the current configuration of the vehicle is such that point P matches its reference value; however, this will not be true in general.  Fig. 4, a stable state trajectory is generated by pure tracking of the reversed output trajectory in forward motion. Then, this stable trajectory is itself reversed to produce the auxiliary state trajectory. trajectory 3 . Since this tracking is in forward motion, trajectory q aux (t) for t ∈ [t k − T, t k ] is stable.
3) The auxiliary trajectory q aux (t) for t ∈ [t k , t k + T ] is finally obtained by reverting the stable trajectory q aux (t) for t ∈ [t k − T, t k ]. This is simply obtained by setting q aux (t) = q aux (2t k − t). Fig. 5 describes the above procedure in a nutshell. Note that the specific choice of θ, ψ, and φ in the retrograde initialization q aux (t k − T ) is not important as long as it leads to tracking the reference trajectory in forward motion; the above 3 Note that u aux will only consist of the feedforward component as the retrograde initialization is matched to the reference trajectory. choice is an example. As for T , it should be sufficiently large for the transient to be practically over in t k ; moreover, it should be larger than the control horizon of the MPC (see Section III-D).

C. Linearization Around the Auxiliary Trajectory
At this point, it is possible to compute the linear approximation of model (3), subject to the control law (8), around the auxiliary trajectory q aux , for t ∈ [t k , t k + T ]. Letting ε = q − q aux , one obtains a linear system which is time-varying due to the dependence on the auxiliary trajectorẏ ε = A(t)ε + B(t)u corr . Since the proposed framework includes an MPC module (see Fig. 3), our algorithm works in discrete-time, producing control inputs u that are piecewise-constant over sampling intervals of duration δ. We then approximate (9) with the following piecewise-time-invariant system: with A k = A(t k ) and B k = B(t k ). This 5-dimensional system is partitioned in a 2-dimensional and a 3-dimensional system (10) While it is A ss = diag{−k x , −k y }, the three eigenvalues of A uu,k have positive real part when tracking in backward motion, and thus the dynamics of θ, ψ, and φ are unstable 4 .

D. MPC-Based Control Correction
In the proposed control scheme (Fig. 3), the role of IS-MPC is to compute the control correction term u corr so as to avoid the onset of instability-and hence jackknifing.
Denote by T c = C · δ the control horizon over which control corrections are generated. As a prediction model, we use the following: i.e., the piecewise-time-invariant system (10) within the control horizon and the same system frozen at t k+C after that. 1) Stability: We now introduce a stability condition which guarantees that the internal dynamics does not diverge (it is the condition under which the free evolution exactly cancels the divergent component of the forced evolution). To this end, we need a preliminary transformation of the model equations.
For the prediction model after time t k+C , which is timeinvariant, one can use a change of coordinates η = T ε, with T u such that the system becomes block-diagonal as follows: with Λ u,k+C collecting the unstable eigenvalues of A uu,k . We have the following result. Proposition 1: Assume that the state ε k of the prediction model (11)-(-12) in t k satisfies the following condition: where Φ m,n = Φ n−1 . . . Φ m , with Φ j = e A j δ , and with Then, the evolution of ε will remain bounded if the inputs u corr,j are bounded.
Proof: Consider the time-invariant prediction model (12) after the control horizon. Since the inputs u corr,j are bounded, we may apply Lemma 1 of Appendix B (in particular, (B.1)) to claim that the state of (12) will be bounded if the value of η u at t k+C matches η * u as given in (14). Condition η u,k+C = η * u can be rewritten in ε as T u ε k+C = η * u and then back-propagated to time t k to obtain (13).
Equation (13), which we refer to as the stability condition, may be rewritten as Since the left-hand side now contains the decision variables of the MPC problem, i.e., u corr,i for i = k, . . . , k + C − 1, eq. (15) can be regarded as a stability constraint. Note that the right-hand side depends on the current state ε k as well as the corrective actions u corr,i for i ≥ k + C, i.e., after the control horizon. The latter, collectively referred to as the tail, are obviously unknown, and they must be conjectured in order to obtain a causal constraint that can be computed at t k .
Possible tails in IS-MPC [17] include the truncated tail, which corresponds to setting u corr,i = 0 for i ≥ k + C, and the periodic tail, obtained by replication of the corrective actions within the control horizon as u corr,i = u corr,i−C for i ≥ k + C. This replication may be infinite or finite; in the second case, the remaining part of the tail is truncated.
Wrapping up, (15) is a 3-dimensional linear constraint in the MPC control inputs, as all other terms are either known (the current state ε k and the tail u corr,i , i ≥ k + C) or computable in closed form (matrices T u ; Φ i,k+C , Ψ i , i = 1, . . . , k + C − 1; and Φ k,k+C ).
2) Other Constraints: In addition to the stability constraint, the MPC framework allows to introduce practically relevant constraints on the hitch angle ψ and the steering angle φ where ψ max and φ max are the mechanical limits on the corresponding joints. These constraints are still linear when expressed in the transformed state coordinates ε j = q j −q j . One may also have box constraints on the velocity inputs In view of (2) and (8), these constraints can be written at the generic sampling instant t j ∈ [t k , t k+C−1 ] as where the absolute value and the inequality are intended componentwise. To transform this into a linear constraint on the MPC decision variable u corr,j , we replace D −1 (θ j , φ j ) and u track,j with two constant quantitiesD −1 j andū track,j , obtained by substituting the predicted state at t j with its value according to the MPC solution at t k−1 , which is known. Therefore, the velocity input constraints finally become
The choice of the cost function reflects the fact that the corrective action u corr in (8) will perturb exact tracking, and therefore, it should be limited to the minimum necessary.  The actual expression of the stability constraint (15) will depend on the chosen tail (truncated, infinite-periodic, finiteperiodic). As customary with MPC, only the first corrective action u corr,k is actually used as real-time control, and a new QP problem is set up and solved at the next sampling instant.

IV. SIMULATIONS
As a preliminary validation of the proposed method, we have performed numerical simulations in MATLAB for a tractortrailer vehicle having the same kinematic parameters of our physical prototype, which will be described in detail in the next section. Accordingly, we have set = 0.255 m, h = 0.065 m, 1 = 0.263 m, ψ max = π/4 rad, φ max = π/12 rad, v max = 0.5 m/s, and ω max = 1.5 rad/s. As for the control scheme, we have chosen d = 0.1 m and k x = k y = 1. The sampling interval is δ = 0.1 s, while the MPC control horizon is T c = 5 s. A finite-periodic tail with two replications was used in the stability constraint (15). The accompanying video contains clips of all the simulations, see also https://youtu.be/ImG1ZV1EYBs.
In the first simulation, the vehicle starts from q 0 = (6, 0.01, 0, 0, 0) [m,m,rad,rad,rad] and must track in backward motion the linear reference trajectory 5 In the absence of a corrective action (u = u track ), jackknifing will occur, similarly to what happens in Fig. 2. The inclusion of the corrective action generated by IS-MPC in the control law (u = u track + u corr ) successfully prevents the phenomenon, producing stable tracking of the reference trajectory, see Fig. 6. The tracking error reaches a transient  Finally, in the third simulation, the vehicle must track in backward motion an eight-shaped reference trajectory starting from q 0 = (0, 0.05, 3.92, −0.09, 0) [m,m,rad,rad,rad]. The results, shown in Figs. 10-12, confirm that the proposed method can avoid the jackknifing phenomenon over generic trajectories, including those with variable curvature. The peak value of the Cartesian error during the transient is 0.1 m. Fig. 11, right, also proves that state constraints are correctly taken into account by the MPC algorithm; the same is true for the input constraints. As before, jackknifing immediately occurs without corrective action, see the accompanying video.   Overall, the above simulation confirms that the inclusion of the stability constraint in our MPC formulation guarantees that the whole zero dynamics (i.e., the steering angle, the vehicle orientation, and the hitch angle) will be stable during the motion. In particular, this means that also the trailer orientation (which is the sum of the vehicle orientation θ and the hitch angle ψ) is guaranteed to be bounded.

V. EXPERIMENTS
To perform an experimental validation of the proposed method, we have built a prototype tractor-trailer system starting from a commercial radio-controlled model, the Carson Unimog U300, a 1:12 replica of the Mercedes Unimog U300 truck. The kinematic parameters of the vehicle have been given at the beginning of the previous section. The model was extensively modified and instrumented in order to implement the antijackknifing controller as follows: 1) The original electronics were replaced with two Arduino Uno microcontroller boards in a master-slave configuration, connected via the I 2 C protocol. 2) An H-bridge was added for driving the two DC motors.
3) Encoders were mounted on the trailer wheels as well as on the hitch joint. 4) A USB/Bluetooth module was added for communication between the master board and the external computer where the antijackknifing controller runs. The external computer is a standard laptop that receives from the master board the current odometric estimate of the robot configuration, obtained from encoder measurements via secondorder Runge-Kutta integration of model (1). It then executes in real time the IS-MPC algorithm in MATLAB, using quadprog as QP solver, and sends the resulting velocity commands v and ω back to the master board. This high-level control cycle runs at a rate of 10 Hz.
The master board sends the velocity commands to the slave board, which runs the low-level PI controllers of the motors. In particular, the driving velocity error is computed by comparing v with v rec , the current driving velocity of the tractor as reconstructed from trailer wheel encoder data. As for the steering motor, ω is integrated to provide a reference for the steering angle φ, which is then compared with φ rec , the current steering angle as reconstructed via odometric localization. The PI loops for the driving speed and the steering angle run, respectively, at 20 and 100 Hz. Fig. 13 shows how the anti-jackknifing block of Fig. 3 has been merged in the overall control architecture of the vehicle.
The control parameters d, k x , and k y are the same of the simulations, but the MPC control horizon T c has been reduced to 1 s to decrease control delay and ensure that the controller runs comfortably in real-time in spite of the additional communication overhead.
Figs. 14 and 15 show the results obtained on linear and circular trajectories, respectively. It is clear that the proposed method achieves stable backward tracking in both the cases, fully corroborating the positive outcome of the simulations and ultimately proving its robustness to the inevitable uncertainties and perturbations that affect such a low-cost experimental setup. See the accompanying video or https://youtu.be/ImG1ZV1EYBs for clips and data plots of these experiments.

VI. EXTENSION TO THE TWO-TRAILER SYSTEM
The proposed method can be extended in principle to a vehicle towing any number of trailers. For illustration, we present below some results for the case of two trailers.
Consider the vehicle in Fig. 16, in which a second trailer of length 2 has been hooked at a distance h 1 from the wheel axle midpoint of the first trailer. Correspondingly, the state vector q is augmented by including the ψ 2 angular coordinate.
The kinematic model can be written aṡ   The developments for this model (input-output linearization, generation of the auxiliary trajectory, linearization around it, and MPC-based control correction) are essentially the same of Section III, the only notable difference being that the dimension of the unstable subsystem in (10), corresponding to the number of eigenvalues with positive real part, is now increased to 4. For an n-trailer system, this number would be n + 2.
To validate experimentally the above extension, a second trailer identical to the first was added to our vehicle, with an encoder measuring the corresponding hitch angle ψ 2 .
The proposed method was successfully tested over linear, circular, and spline trajectories (Figs. 17, 18, and 19), producing stable backward tracking in all cases. See the accompanying video or https://youtu.be/ImG1ZV1EYBs for clips of these experiments.

VII. CONCLUSION
Jackknifing affects tractor-trailer vehicles and consists in the divergence of the trailer hitch angle, which ultimately causes the vehicle to fold up. This phenomenon is particularly severe in the case of backward motions, where it appears also at low speeds. With reference to this specific context, we have presented a control approach which actively prevents the onset of jackknifing during backward trajectory tracking. In particular, a feedback control law was designed as the combination of two actions: a tracking term, computed using input-output linearization, and a corrective term, generated via IS-MPC, an intrinsically stable MPC scheme which is effective for stable inversion of non-minimum phase systems.
The proposed method has been first verified in simulation and then experimentally validated on a purposely built prototype. To show the generality of the proposed approach, we have also presented successful experimental results obtained for a twotrailer vehicle.
This work can be extended in several directions, among which we mention the following: 1) rewriting the implementation in an efficient compiled language (e.g. C++) using state-of-the-art QP solvers, which in our experience can provide a substantial reduction in computation time; 2) designing a robust version of the anti-jackknifing controller which can handle external disturbances, following the ideas in [22]; 3) modifying the IS-MPC formulation in order to perform obstacle avoidance during tracking; 4) studying the applicability of the proposed approach for counteracting the dynamic jackknife phenomenon associated to wheel slippage in high-speed forward motion.

APPENDIX A APPROXIMATE LINEARIZATION
Using the proposed control law (8) in the input-output linearized model (3), with the tracking component u track given by (4), leads to a closed-loop system whose only input is u corr . Letq(t) = (x P (t),ỹ P (t),θ(t),ψ(t),φ(t)) be a trajectory of this system along which u corr = 0. Its linear approximation around