# Velocity Tracking for Autonomous Railway-based Urbanloop Pods by Contraction (with proofs)

Weihao Wang, Jérémie Kreiss, Pietro Lorenzetti, Letizia Licitra, Gaëtan Lefebvre, Romain Postoyan

► To cite this version:

Weihao Wang, Jérémie Kreiss, Pietro Lorenzetti, Letizia Licitra, Gaëtan Lefebvre, et al.. Velocity Tracking for Autonomous Railway-based Urbanloop Pods by Contraction (with proofs). 2025. hal-05399074

HAL Id: hal-05399074

https://hal.science/hal-05399074v1

Preprint submitted on 4 Dec 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Velocity Tracking for Autonomous Railway-based Urbanloop Pods by Contraction (with proofs) *

Weihao Wang * Jérémie Kreiss * Pietro Lorenzetti * Letizia Licitra ** Gaëtan Lefebvre ** Romain Postoyan *

* Université de Lorraine, CNRS, CRAN, F-54000 Nancy, France (e-mails: firstname.surname@univ-lorraine.fr).

** Urbanloop SAS, F-54510 Tomblaine, France (e-mails: {l.licitra, g.lefebvre}@urbanloop.fr)**

**Abstract:** Urbanloop is an autonomous railway-based pod system that offers great advantages in terms of energy efficiency, reduced cost, rapid and seamless transit over traditional public urban transportation systems. Each Urbanloop pod operates autonomously, with its velocity regulated by an embedded controller. The objective of this work is to present a model-based design methodology for the velocity controller of an individual pod. To this end, we first develop a physics-based dynamical model of the system and rigorously reveal that it exhibits two time scales. We then leverage singularly perturbation methods combined with recent contraction theoretical tools to design the controller guaranteeing that the pod velocity tracks the given reference velocity profile. The proposed feedback law is designed based on the reduced-order model and combines an output-feedback component, which enforces contraction properties, with a feedforward term that induces the desired reference trajectory. We show that the trajectories of the original, full-order model all exponentially converge to the reference trajectory, up to an error proportional the order of the time-scale separation parameter, thereby ensuring that the control objective is satisfied when this parameter is “sufficiently” small. The effectiveness of the proposed approach is validated in numerical simulations, where the reference trajectory is designed to minimize the transit time between two stations while satisfying given safety constraints.

**Keywords:** autonomous vehicle, singularly perturbed systems, contraction, tracking, railway-based transport.

## 1. INTRODUCTION

Most public transport systems (e.g., buses, metro, trams, commuter rail) operate on fixed routes and schedules. This leads to several shortcomings like large passenger waiting times, unnecessary stops, and increased energy consumption due to repeated acceleration and deceleration of large vehicles, see, e.g., Varga et al. (2020); Wu et al. (2021). Automated transit networks (ATN) offer an alternative to traditional public transport in which small, driverless vehicles travel on dedicated guideways to provide on-demand, point-to-point service, see, e.g., Furman et al. (2014); Kozłowski (2019); Cottrell (2022). ATN are primarily suited to small- and medium-scale infrastructures, where passenger volumes remain moderate. Several ATN are already in operation worldwide such as WVU PRT West Virginia University (1975) in the United States, ParkShuttle Boersma et al. (2018) in the Netherlands, and the ULtra PRT Ultra (2011) in England. In this work, we focus on an emerging railway-based ATN called Urbanloop.

Urbanloop SAS<fnref n="1" /> is a French company developing a railway-based ATN for urban areas, composed of a fleet of fully autonomous railway-based electric vehicles, referred to as pods (see Figure 1) operated on railway loops. Each pod is equipped with an embedded velocity controller. The controller goal is to

move the pod to a given position at a given time, depending on the current traffic, while satisfying safety constraints (like minimal/maximal velocity and acceleration). The corresponding position and time checkpoints are assigned by an on-line central scheduler. Numerous methods are available in the literature for the control of automated trains, see, e.g., Howlett et al. (1994); Scheepmaker et al. (2017); Su et al. (2021); Dincel et al. (2018); Yasunobu et al. (1983); Mao et al. (2019). However, these methods do not apply to Urbanloop pods, whose dynamics and operating conditions differ substantially compared to conventional automated trains. Currently, the Urbanloop pods are equipped with a proportional–integral velocity controller, and the proportional and integral gains are scheduled depending on the pod velocity. However, the tracking performance and passenger comfort are affected by this gain-scheduling strategy, and no formal tracking guarantees or robustness are available. The aim of this work is to go beyond the current heuristic design by providing a rigorous methodology to synthesize velocity controllers of Urbanloop pods. It is important to emphasize that the proposed methodology is applicable beyond the context of Urbanloop pods.

For this purpose, we design a controller composed of two parts: (i) a nonlinear output-feedback term that enforces contraction properties (Lohmiller and Slotine (1998); Bullo (2024)) and (ii) a feedforward reference input meant to induce the desired trajectory, see, e.g., González-Romeo et al. (2020); Singh et al. (2023); Wang et al. (2024); Reyes-Báez et al. (2020) for similar

<footnote>* This work was supported by the French national research agency ANR under the grant COMMITs No. ANR-23-CE25-0005.</footnote>

<footnote n="1">¹ https://urbanloop.fr</footnote>
<figure><img src="image_2.png" /><figcaption>Fig. 1. An Urbanloop pod.</figcaption></figure>

designs in different contexts. The key idea behind this strategy is that contraction guarantees that all the solutions of the closed-loop system converge one towards another, and, consequently, toward the reference trajectory induced by the feedforward input. One motivation for this design is its modularity: in case of new specifications due to, e.g., the increasing number of pods, only the reference generator part of the control law needs to be redesigned. The contractive controller remains unchanged.

To design the controller, we adopt a model-based approach. We first derive a model of the pod longitudinal dynamics based on physics. To this end, we make a series of realistic assumptions on the pod and its operating conditions. We then derive an equivalent, non-dimensionalized state space model and invoke Buckingham II-theorem (Buckingham (1914)) to establish that the pods dynamics exhibits two time scales. This allows us to write the model in a singularly perturbed form Kokotović et al. (1999) and to derive the so-called reduced-order model, which, essentially, describes the dynamics of the slow (mechanical) variables. We use this reduced-order model to design the two components of the controller, making the overall design significantly simpler than working directly with the full original model. Contraction for the original two-time scale systems, up to negligible errors of the order of the time scale separation parameter $\epsilon$, is then assessed by leveraging recent results on contraction for singularly perturbed systems Cothren et al. (2023). As a result, the proposed control law guarantees that the pod velocity tracks the desired velocity reference, up to an error of the order of $\epsilon$, for any reference feasible for the reduced-order model. In this way, we can design the reference trajectory to satisfy the operational Urbanloop constraints, and the trajectory of the pod model will exponentially converge to it, up to an error of the order of $\epsilon$ thanks to the enforced contraction properties. This is particularly relevant given that the initial condition of the pod is typically known, which allows the reference trajectory to be constructed from that initial state.

The remaining part of the paper is organized as follows. The pods dynamics is modeled in Section 2, where it is shown that the resulting model exhibits two time scales. The control design and analysis are presented in Section 3. The numerical simulations are given in Section 4. Some proofs are postponed to the appendix to avoid breaking the flow of exposition.

**Notation.** We denote by $\mathbb{R}$ the set of real numbers, by $\mathbb{R}_{>0}$ and $\mathbb{R}_{\ge 0}$ the sets of strictly positive and non-negative real numbers, respectively, by $\mathbb{N}$ the set of natural numbers including zero and by $\mathbb{N}_{>0}$ the set of strictly positive natural numbers. For $n \in \mathbb{N}_{>0}$, $\| \cdot \|$ denotes the Euclidean norm on $\mathbb{R}^n$ and its corresponding induced norm on $\mathbb{R}^{n \times n}$. The corresponding value of $n$ will be clear from the context. Given a non-empty set $\mathcal{A} \subset \mathbb{R}$, we denote by $\sup_{\mathcal{A}}$ its supremum, i.e., the least upper bound of $\mathcal{A}$. Given a real-valued map $F : \mathcal{X} \to \mathbb{R}$

<figure><img src="image_3.png" /><figcaption>Fig. 2. Closed-loop diagram for the pod.</figcaption></figure>

and a measurable set $C \subset \mathcal{X}$, we denote by $\sup_{x \in C} F(x)$ the supremum of $F$ over $C$, and by $ess \sup_{x \in C} F(x)$ the essential supremum of $F$ on $C$. We denote by $\text{sign} : \mathbb{R} \to \{-1, 0, 1\}$ the sign function, where $\text{sign}(x) = 0$ if $x = 0$ and $\text{sign}(x) = x/|x|$ if $x \neq 0$.

## 2. MODELING

We begin with a brief description of the Urbanloop pod (Section 2.1). We then state the standing assumptions we rely on (Section 2.2) to derive a state-space model of the Urbanloop pod suitable for control purposes (Section 2.3). Finally, we perform a non-dimensionalization of the model, which reveals that the pod dynamics exhibits two-time scales (Section 2.4).

### 2.1 The Urbanloop Pods

The Urbanloop pod, shown in Figure 1, is a railway-based autonomous vehicle designed to transport up to two passengers to their destination, with no intermediate stop. The pod is equipped with four wheels, with the rear pair being driven by two in-wheel brushless direct-current motors. Each motor is actuated via an inverter with dedicated current controller. The reference current signals are available on the onboard computer. Incremental encoders integrated into the motors, together with magnetic sensors, provide the onboard computer with precise position measurements, from which the pod velocity is derived by direct differentiation.

### 2.2 Assumptions

We are interested in modeling the longitudinal dynamics of the Urbanloop pod as the control goal is tracking a longitudinal reference velocity. The pod dynamical model is derived under the following set of assumptions.

**Standing Assumption 1.** (SA1). The pod is considered a point mass. $\square$

SA1 is a reasonable simplification when the aim is to control the longitudinal velocity of a pod, see, e.g., Greenwood (1988); Gillespie (2021).

**Standing Assumption 2.** (SA2). The four wheels of the pod have identical physical properties, and remain in constant contact with the track without sliding. Moreover, the two motors and their inverter are identical and driven by the same input signal. $\square$

SA2 concerns the symmetry of the pod, which allows modeling a single equivalent wheel/rail contact and an equivalent motor. We denote by $i_q$ the quadrature current of the equivalent motor in the $d-q$ frame Park (1929).
**Standing Assumption 3.** (SA3). The longitudinal motion of the pod satisfies the following constraints, at all times.

(i) The pod cannot move backward and its longitudinal velocity, denoted by $v$, is smaller than $v_{max} := 14 \text{ m} \cdot \text{s}^{-1}$ on straight sections, and $v_{c,max} := 8.33 \text{ m} \cdot \text{s}^{-1}$ on curved sections, so that either $v(t) \in [0, v_{max}]$ or $v(t) \in [0, v_{c,max}]$ for $t \ge 0$.

(ii) Both acceleration and braking are limited to $a_{max} := 1.2 \text{ m} \cdot \text{s}^{-2}$, i.e., $\dot{v}(t) \in [-a_{max}, a_{max}]$ for any $t \ge 0$.

(iii) The wind speed along the direction of motion, denoted by $w$, is bounded so that $w(t) \in [-w_{max}, w_{max}]$ for any $t \ge 0$, where $w_{max} = 20 \text{ m} \cdot \text{s}^{-1}$ denotes the maximum admissible wind speed. Moreover, the corresponding signal $w$ is a locally absolutely continuous function of time and is known at all times.

(iv) The quadrature current $i_q$ of the equivalent motor remains within the admissible operating range $i_q(t) \in [-i_{q,max}, i_{q,max}]$ for any $t \ge 0$, where $i_{q,max} := 200 \text{ A}$ denotes the maximum allowable current. □

The limits on velocity and acceleration/braking are imposed for safety purposes. The constraint on the wind speed ensures that the pods are not operated under excessively strong winds, considering that the average inland wind speed in France is about 4–7 m·s⁻¹. Moreover, the regularity assumption on $w$ in SA3 (iii) is reasonable in practice, since its values can be locally measured at any time. Yet, we plan to relax this assumption in future works. Finally, the admissible current range in SA3 (iv) is defined by the rated characteristics of the motor.

**Standing Assumption 4.** (SA4). Roll, pitch, and yaw dynamics are neglected, and the track is assumed to be level, i.e., no elevation or inclination are allowed. □

The first part of SA4 is justified by the velocity and acceleration limits in SA3. The second part of SA4 is justified by the fact that the Urbanloop tracks are typically located in city centers, which are mostly flat. Thus, including these dynamics in the modeling would add unnecessary complexity. Finally, we make the next assumption on the (main) forces acting on the pod dynamics.

**Standing Assumption 5.** (SA5). The pod is subject to the following forces: rolling resistance $F_{roll}$; aerodynamic drag $F_{air}$, and the equivalent motor force $F_{τ}$, which is generated by the equivalent torque transmitted to the wheels. □

The expressions of these forces are given in the following.

## 2.3 State-space Model

We now exploit the standing assumptions to derive a state-space model of the pod longitudinal dynamics. Under SA1–SA5, Newton’s second law of motion can be expressed as

$$M\dot{v} = F_{\tau}(i_q) - F_{\text{roll}}(v) - F_{\text{air}}(v, w), \quad (1)$$

where $M > 0$ is the pod mass. The detailed expressions of the forces $F_{τ}$, $F_{roll}$, $F_{air}$ are given below.

The equivalent motor force $F_{τ}$ is proportional to the quadrature current $i_q \in \mathbb{R}$, i.e.,

$$F_{\tau} := \frac{K_{\mu}}{r} i_{q}, \quad (2)$$

where $K_{μ}$, $r > 0$ are the torque coefficient and wheel radius, respectively. The quadrature current $i_q$ is regulated by a pre-existing PI controller, fed by a reference quadrature current $i_{q,r} \in \mathbb{R}$. We emphasize that this PI controller is given and

cannot be changed in our design. The integrator state of the PI controller $\xi \in \mathbb{R}$ evolves according to

$$\dot{\xi} = i_{q,r} - i_q. \quad (3)$$

The dynamics of $i_q$ in the $d-q$ frame is then given by

$$\frac{d}{dt} i_q = -\frac{R}{L} i_q + \frac{E}{L} (K_p(i_{q,r} - i_q) + K_i \xi), \quad (4)$$

where $R$, $L$, $E$, $K_p$, $K_i > 0$ denote, respectively, the stator resistance, the stator inductance, the supply voltage, and the proportional and integral gains of the PI controller (all along the quadrature axis of the motor). Note that the reference current $i_{q,r}$ lies within the same admissible operating range as $i_q$ in SA3 (iv).

The rolling resistance $F_{roll}$ is proportional to the pod weight, and is given by

$$F_{\text{roll}}(v) := C_r Mg \tanh \left( \frac{v}{c_1} \right), \quad (5)$$

where $C_r$, $g$, $c_1 > 0$ denote the rolling resistance coefficient, gravitational constant, and velocity tolerance of the smooth approximation, respectively. We have considered the hyperbolic tangent instead of the sign function in (5) to obtain a smooth expression, which will be essential in the following derivations and does not impact significantly the overall model accuracy.

Finally, the aerodynamic drag, denoted by $F_{air}$, is modeled as

$$F_{\text{air}}(v, w) := \frac{1}{2} \rho C_x S \sigma(v, w), \quad (6)$$

where $\rho$, $C_x$, $S > 0$ are the air density, drag coefficient and frontal area of the pod, respectively. The function $\sigma : \mathbb{R} \times \mathbb{R} \to \mathbb{R}$ in (6) is defined as

$$\sigma(v, w) := \operatorname{sign}(v - w)s((v - w)^2) \quad \forall v, w \in \mathbb{R}, \quad (7)$$

where the function $s$ is any sigmoid function of the form

$$s(z) = c_2 \left( \frac{2}{1 + e^{-\frac{2z}{c_2}}} - 1 \right) \quad \forall z \in \mathbb{R}_{\ge 0}, \quad (8)$$

with $c_2 > (v_{max} + w_{max})^2$. The function $s$ is chosen to closely match the classical quadratic term $(v - w)^2$ of aerodynamic drag in the domain of interest, which is $(v, w) \in [0, v_{max}] \times [-w_{max}, w_{max}]$ by SA3; see Figure 3 for an illustration with numerical values given in Table 1. We emphasize that $s$ from (8) is bounded, smooth, and globally Lipschitz, contrary to the standard aerodynamic drag expression that involves $(v - w)^2$. These properties are needed to derive the desired contraction properties in Section 3.

<figure><img src="image_4.png" /><figcaption>Fig. 3. Comparison between the standard aerodynamics drag $F_{air}^*(v, w) := \operatorname{sign}(v - w)^{\frac{1}{2}} \rho C_x S (v - w)^2$ and $F_{air}$ in (6).</figcaption></figure>
We are now ready to derive a state-space model of the pod dynamics. We define the state vector $x = [x_1, x_2, x_3]^\top := [\xi, i_q, v]^\top$ and the input $u := i_{q,r}$. With this notation, we can describe the longitudinal pod dynamics by

$$ \dot{x} = f(x, w, u), \quad (9) $$

where the vector field $f: \mathbb{R}^3 \times \mathbb{R} \times \mathbb{R} \to \mathbb{R}^3$ is defined, in view of (1), (3), and (4), as

$$ f(x, w, u) := \begin{pmatrix} -x_2 + u \\ \frac{EK_i}{L}x_1 - \frac{EK_p + R}{L}x_2 + \frac{EK_p}{L}u \\ \frac{F_\tau(x_2)}{M} - \frac{F_{\text{roll}}(x_3)}{M} - \frac{F_{\text{air}}(x_3, w)}{M} \end{pmatrix} \quad (10) $$

for any $(x, u, w) \in \mathbb{R}^3 \times \mathbb{R} \times \mathbb{R}$. We note that model (9) is defined over the whole state space and input space, namely $\mathbb{R}^3$ and $\mathbb{R}$. All the parameters and their numerical values (used in Section 4 for simulations) are summarized in Table 1.

## 2.4 Non-dimensionalization

When the electrical dynamics of an electro-mechanical system is stable, it is a common practice to ignore the electrical dynamics by exploiting the fact that these evolve on a much faster time scale Kokotović et al. (1999). In (10), the electrical variables are $x_1$ and $x_2$, and it is a priori not obvious that the $(x_1, x_2)$-system exhibits faster dynamics than the mechanical part, namely the $x_3$-system, because of the integrator state $x_1$. To unveil the different time scales of the system, we adopt a systematic approach and apply Buckingham Π-theorem Buckingham (1914). As a first step, we scale the system variables, namely, state, input, wind and time, to obtain dimensionless quantities

$$ \begin{aligned} \tilde{x}_1 &:= x_1/\xi_*, & \tilde{x}_2 &:= x_2/i_{q*}, & \tilde{x}_3 &:= x_3/v_*, \\ \tilde{u} &:= u/i_{q*}, & \tilde{w} &:= w/w_*, & \tilde{t} &:= t/t_*, \end{aligned} \quad (11) $$

where $\xi_*, i_{q*}, v_*, w_*, t_* > 0$ are the pod characteristic scales.

With the convention that $(\cdot)'$ denotes $d(\cdot)/d\tilde{t}$, and under the change of variables in (11), system (9)–(10) becomes

$$ \tilde{x}'_1 = \frac{t_* i_{q*}}{\xi_*} (-\tilde{x}_2 + \tilde{u}), \quad (12a) $$

$$ \tilde{x}'_2 = \frac{t_*}{L} \left( \frac{EK_i \xi_*}{i_{q*}} \tilde{x}_1 - (EK_p + R)\tilde{x}_2 + EK_p \tilde{u} \right), \quad (12b) $$

$$ \tilde{x}'_3 = \frac{t_*}{v_* M} \left( F_\tau(i_{q*}\tilde{x}_2) - F_{\text{roll}}(v_*\tilde{x}_3) - F_{\text{air}}(v_*\tilde{x}_3, w_*\tilde{w}) \right), \quad (12c) $$

with $F_\tau$, $F_{\text{roll}}$, and $F_{\text{air}}$ as in (2), (5), (6).

After formulating the system in the above dimensionless variables, we introduce the dimensionless groups $\pi_i, i \in \{1, ..., 9\}$, using Buckingham Π-theorem. Their definitions are provided in Table 2. The fundamental dimensions in (10) are speed ($V$), time ($T$), and current ($I$). The process leading to the dimensionless groups is omitted for space reason. The parameter

$$ \epsilon := \frac{L}{(EK_p + R)t_*}, \quad (13) $$

represents the ratio of the electrical time scale to the characteristic time $t_*$, and is dimensionless. Factoring this parameter in (12b) and replacing the forces by their expressions (2)–(6) lead to the following representation

$$ \tilde{x}'_1 = \pi_1(-\tilde{x}_2 + \tilde{u}), \quad (14a) $$

$$ \epsilon \tilde{x}'_2 = \pi_2 \tilde{x}_1 - \tilde{x}_2 + \pi_3 \tilde{u}, \quad (14b) $$

$$ \tilde{x}'_3 = \pi_4 \tilde{x}_2 - \pi_5 \tanh(\pi_6 \tilde{x}_3) - \pi_7 \tilde{\sigma}(\tilde{x}_3, \tilde{w}), \quad (14c) $$

where

$$ \tilde{\sigma}(\tilde{x}_3, \tilde{w}) := \left( \frac{2}{1 + e^{-2\pi s(\tilde{x}_3 - \pi_9 \tilde{w})^2}} - 1 \right) \text{sign}(v_* \tilde{x}_3 - w_* \tilde{w}), $$

and the dimensionless groups $\pi_i, i \in \{1, ..., 9\}$ are as in Table 2. We emphasize that systems (14) and (9) are equivalent, i.e., the resulting dynamics is the same upon a linear change of coordinates, given by the non-dimensionalization (11).

The dimensionless system (14) indicates that the dynamics of $\tilde{x}_2$, and consequently of the motor current $x_2$, evolve much faster than those of the remaining state variables. This can be shown as follows. Given the numerical values in Table 1, we take $t_* = 60$ s, corresponding to the typical duration of a pod journey between two successive stations. Further, we choose $\xi_* = 1000$ A·s, $i_{q*} = 50$ A (coinciding with the nominal motor current), $v_* = 7$ m·s⁻¹ (half of the maximum pod velocity), and $w_* = 10$ m·s⁻¹ (half of the maximum wind speed). With these values, for $i \in \{1, ..., 9\}$ the orders of magnitude of $\pi_i$ are in the range of $10^{-2}$ to $10^2$, whereas $\epsilon$ is in the order of $10^{-11}$. A two-time scale separation is thus revealed between the $(\tilde{x}_1, \tilde{x}_3)$-system and the $\tilde{x}_2$-system. This property plays a key role in the contraction analysis presented in the next section.

<table><caption>Table 1. Summary of the pod model parameters.</caption><thead><tr><th>Parameter</th><th>Description</th><th>Value</th><th>Unit</th></tr></thead><tbody><tr><td><i>M</i></td><td>Mass of the pod</td><td>950</td><td>kg</td></tr><tr><td><i>S</i></td><td>Frontal area of the pod</td><td>1.8</td><td>m<sup>2</sup></td></tr><tr><td><i>C<sub>x</sub></i></td><td>Drag coefficient</td><td>0.8</td><td>[-]</td></tr><tr><td><i>ρ</i></td><td>Air density</td><td>1.2</td><td>kg·m<sup>-3</sup></td></tr><tr><td><i>E</i></td><td>Motor supply voltage</td><td>72</td><td>V</td></tr><tr><td><i>g</i></td><td>Gravitational acceleration</td><td>9.81</td><td>m·s<sup>-2</sup></td></tr><tr><td><i>r</i></td><td>Wheel radius</td><td>0.24</td><td>m</td></tr><tr><td><i>C<sub>r</sub></i></td><td>Rolling resistance coefficient</td><td>0.002</td><td>[-]</td></tr><tr><td><i>R</i></td><td>Stator resistance of the motor</td><td>2.1</td><td>mΩ</td></tr><tr><td><i>L</i></td><td>Stator inductance of the motor</td><td>58.2</td><td>μH</td></tr><tr><td><i>K<sub>μ</sub></i></td><td>Torque coefficient</td><td>1.64</td><td>Wb</td></tr><tr><td><i>K<sub>p</sub></i></td><td>Proportional controller gain</td><td>500</td><td>[-]</td></tr><tr><td><i>K<sub>i</sub></i></td><td>Integral controller gain</td><td>10</td><td>[-]</td></tr><tr><td><i>v<sub>max</sub></i></td><td>Maximum pod speed</td><td>14</td><td>m·s<sup>-1</sup></td></tr><tr><td><i>v<sub>c,max</sub></i></td><td>Maximum curve speed</td><td>8.33</td><td>m·s<sup>-1</sup></td></tr><tr><td><i>a<sub>max</sub></i></td><td>Maximum pod acceleration</td><td>1.2</td><td>m·s<sup>-2</sup></td></tr><tr><td><i>i<sub>q,max</sub></i></td><td>Maximum operating current</td><td>200</td><td>A</td></tr><tr><td><i>w<sub>max</sub></i></td><td>Maximum wind speed</td><td>20</td><td>m·s<sup>-1</sup></td></tr><tr><td><i>c<sub>1</sub></i></td><td>Velocity tolerance (see (5))</td><td>0.01</td><td>m·s<sup>-1</sup></td></tr><tr><td><i>c<sub>2</sub></i></td><td>Sigmoid parameter (see (8))</td><td>5500</td><td>m<sup>2</sup>·s<sup>-2</sup></td></tr></tbody></table>

## 3. CONTROLLER DESIGN AND ANALYSIS

In this section, we exploit the two-time scale property of the dimensionless model (14) to design a control law for velocity tracking (Section 3.1). We then derive the closed-loop model and the associated reduced-order model (Section 3.2). Finally, we establish that the closed-loop model exhibits contraction properties, thereby ensuring that the velocity of the pod approaches the desired trajectory at an exponential rate, up to an error proportional to the order of $\epsilon$.

### 3.1 Control Law

The proposed control law $\tilde{u}$ for system (14) is composed of an output-feedback<fnref n="2" /> term, $\tilde{\psi}(\lambda, \tilde{x}_3, \tilde{w})$, and a feedforward

<footnote n="2">² We use the terminology output-feedback since $\tilde{\psi}$ only depends on the (scaled) velocity $\tilde{x}_3$ and the wind speed $\tilde{w}$.</footnote>
<table><caption>Table 2. (Left) Dimensional parameters of the pod dynamics with their base units. (Right) Definition of the dimensionless Π groups.</caption><thead><tr><th>Dimensional Parameter</th><th>Base Unit</th></tr></thead><tbody><tr><td>t<sub>*</sub></td><td>T</td></tr><tr><td>ξ<sub>*</sub></td><td>IT</td></tr><tr><td>i<sub>q*</sub></td><td>I</td></tr><tr><td>v<sub>*</sub></td><td>V</td></tr><tr><td>(EK<sub>i</sub>)/L</td><td>T<sup>-2</sup></td></tr><tr><td>(EK<sub>p</sub> + R)/L</td><td>T<sup>-1</sup></td></tr><tr><td>(EK<sub>p</sub>)/L</td><td>T<sup>-1</sup></td></tr><tr><td>K<sub>μ</sub>/(rM)</td><td>V I<sup>-1</sup> T<sup>-1</sup></td></tr><tr><td>(ρC<sub>x</sub>S)/2M</td><td>V<sup>-1</sup> T<sup>-1</sup></td></tr><tr><td>w<sub>*</sub></td><td>V</td></tr><tr><td>C<sub>r</sub>g</td><td>V T<sup>-1</sup></td></tr><tr><td>c<sub>1</sub></td><td>V</td></tr><tr><td>c<sub>2</sub></td><td>V<sup>2</sup></td></tr></tbody></table>

<table><thead><tr><th>Dimensionless Group</th><th>Definition</th></tr></thead><tbody><tr><td>π<sub>1</sub></td><td>t<sub>*</sub>i<sub>q*</sub>/ξ<sub>*</sub></td></tr><tr><td>π<sub>2</sub></td><td>EK<sub>i</sub>ξ<sub>*</sub> / (EK<sub>p</sub>+R)i<sub>q*</sub></td></tr><tr><td>π<sub>3</sub></td><td>EK<sub>p</sub>/(EK<sub>p</sub> + R)</td></tr><tr><td>π<sub>4</sub></td><td>K<sub>μ</sub>t<sub>*</sub>i<sub>q*</sub>/(rM)</td></tr><tr><td>π<sub>5</sub></td><td>C<sub>r</sub>gt<sub>*</sub>/v<sub>*</sub></td></tr><tr><td>π<sub>6</sub></td><td>v<sub>*</sub>/c<sub>1</sub></td></tr><tr><td>π<sub>7</sub></td><td>ρC<sub>x</sub>S t<sub>*</sub>c<sub>2</sub> / (2Mv<sub>*</sub>)</td></tr><tr><td>π<sub>8</sub></td><td>v<sub>*</sub><sup>2</sup>/c<sub>2</sub></td></tr><tr><td>π<sub>9</sub></td><td>w<sub>*</sub>/v<sub>*</sub></td></tr></tbody></table>

reference quadrature current $\tilde{\nu}$, as in Figure 2. Specifically, we design the control law as

$$ \tilde{u} = c_3 \left( \tilde{\psi}(\lambda, \tilde{x}_3, \tilde{w}) + \tilde{\nu} \right), \quad (15) $$

where $c_3 := \frac{1}{\pi_3 \pi_4}$, and

$$ \tilde{\psi}(\lambda, \tilde{x}_3, \tilde{w}) := -\lambda \tilde{x}_3 + \pi_5 \tanh(\pi_6 \tilde{x}_3) + \pi_7 \tilde{\sigma}(\tilde{x}_3, \tilde{w}), \quad (16) $$

with $\lambda > 0$ being a design parameter. The role of the feedback term $\tilde{\psi}(\lambda, \tilde{x}_3, \tilde{w})$ is to ensure that system (14) in closed-loop with (15) exhibits contraction properties, while the role of the feedforward reference $\tilde{\nu}$, is to induce the desired trajectory generated by the reference generator.

Throughout this section, $\tilde{\nu}$ is assumed to be given, as the forthcoming results hold for any reference input signal $\tilde{\nu}$ that is locally absolutely continuous. One possible way to determine $\tilde{\nu}$ is by solving an optimization problem subject to the constraints listed in SA3 and the pod dynamics (9). This approach will be discussed in the simulation results presented in Section 4.

**Remark 1.** The controller $\tilde{u}$ in (15) is expressed in the dimensionless coordinates. To recover the actual control input associated to (9), we take, in view of the the linear coordinate transformation (11), $u = i_{q*}c_3(\tilde{\psi}(\lambda, x_3/v_*, w/w_*) + \tilde{\nu})$, where the feedback term $\tilde{\psi}$ is derived using the measured variables $x_3$ and $w$. This is coherent with SA3 (iii), as $w$ is known. □

## 3.2 Closed-loop Model & Reduced Dynamics

We denote system (14) in closed-loop with (15) as

$$ y' = g(y, z, d), \quad (17a) $$

$$ \epsilon z' = h(y, z, d), \quad (17b) $$

where we denote the slow state variable as $y = [y_1, y_2]^\top := [\tilde{x}_1, \tilde{x}_3]^\top$, and the fast state variable as $z := \tilde{x}_2$. The value of $\epsilon$ is given in (13), and we recall that $(\cdot)'$ denotes $d(\cdot)/d\tilde{t}$. The input is defined as $d = [d_1, d_2]^\top := [\tilde{\nu}, \tilde{w}]^\top$. The vector field $g: \mathbb{R}^2 \times \mathbb{R} \times \mathbb{R}^2 \to \mathbb{R}^2$ in (17a) is given by

$$ g(y, z, d) := \begin{pmatrix} -\pi_1 z + c_3 \pi_1 (\tilde{\psi}(\lambda, y_2, d_2) + d_1) \\ \pi_4 z - \pi_5 \tanh(\pi_6 y_2) - \pi_7 \tilde{\sigma}(y_2, d_2) \end{pmatrix}. \quad (18) $$

Similarly, the map $h: \mathbb{R}^2 \times \mathbb{R} \times \mathbb{R}^2 \to \mathbb{R}$ in (17b) is defined as

$$ h(y, z, d) := \pi_2 y_1 - z + \frac{1}{\pi_4} (\tilde{\psi}(\lambda, y_2, d_2) + d_1). \quad (19) $$

Similar to system (14), system (17) exhibits two-time scales. We can thus derive its reduced model, namely the y-system (17a), when $z$ lies in the slow manifold $h(z, y, d) = 0$, according to Kokotović et al. (1999). This gives

$$ y'_r = g_r(y_r, d) := g(y_r, z^*(y_r, d), d), \quad (20) $$

with

$$ z^*(y, d) := \pi_2 y_1 + \frac{1}{\pi_4} (\tilde{\psi}(\lambda, y_2, d_2) + d_1). \quad (21) $$

The vector field $g_r: \mathbb{R}^2 \times \mathbb{R}^2 \to \mathbb{R}^2$ is, for any $(y_r, d) \in \mathbb{R}^2 \times \mathbb{R}^2$ with $y_r = [y_{r1}, y_{r2}]^\top$, given by

$$ g_r(y_r, d) := \begin{pmatrix} -\pi_1 \pi_2 y_{r1} + c_3 \pi_1 (1 - \pi_3) (\tilde{\psi}(\lambda, y_{r2}, d_2) + d_1) \\ \pi_2 \pi_4 y_{r1} - \lambda y_{r2} + d_1 \end{pmatrix}. \quad (22) $$

The reduced model (20) can be interpreted as the dynamics (17) when the fast dynamics $z$ has reached the equilibria $z^*$ given in (21). This reduced model will be exploited in Section 4 to design the reference input $\tilde{\nu}$.

## 3.3 Main Results

We first leverage (Cothren et al., 2023, Theorem 4.9) to establish a closeness of solutions property between systems (17) and (20). In particular, we will show that any solution $(y, z)$ to (17) with initial condition $(y_0, z_0) \in \mathbb{R}^2 \times \mathbb{R}$ and input $d$, remains close to $(y_r, z^*)$, where $y_r$ is the solution of the reduced model (20) initialized at $y_{r,0} = y_0$ with the same input $d$, and $z^*$ is as in (21), up to an error of order $\epsilon$, with $\epsilon$ from (13).

To this aim, we introduce the set of admissible values for control parameter $\lambda$, described as

$$ \Lambda^\epsilon := \{0 < \lambda < \lambda_{\max}^\epsilon \mid c_{g_r}(\lambda) > 0\}, \quad (23) $$

where $c_{g_r}(\lambda)$ and $\lambda_{\max}^\epsilon$ are defined in Table 3. With the numerical values in Table 1, $\lambda_{\max}^\epsilon = 3.26 \times 10^{10}$, and we numerically obtain that $c_{g_r}(\lambda) > 0$ for any $\lambda \in (15.46, 10^4)$. Therefore $\Lambda^\epsilon = (15.46, 10^4)$. This shows that there is a large range of admissible values for $\lambda$.

With the above notation, we are ready to state the closeness of solutions property between system (17) and (20).

**Proposition 2.** Given any $\lambda \in \Lambda^\epsilon$, for any locally absolutely continuous function $d: \mathbb{R}_{\ge 0} \to \mathbb{R}^2$, and any initial condition $(y_0, z_0) \in \mathbb{R}^2 \times \mathbb{R}$, the corresponding (unique) solution $^3(y, z)$ to system (17) is complete and verifies, for all $\tilde{t} \ge 0$,

$$ \|y(\tilde{t}) - y_r(\tilde{t})\| \le \frac{\epsilon \epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda) \bar{d} + E_y(\tilde{t}, \lambda, y_0, z_0, y_{r,0}, d_0), \quad (24) $$

and

$$ \|z(\tilde{t}) - z^*(y(\tilde{t}), d(\tilde{t}))\| \le \frac{\epsilon \epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_z(\lambda) \bar{d} + E_z(\tilde{t}, \lambda, y_0, z_0, y_{r,0}, d_0), \quad (25) $$

where $y_r$ is the solution to the corresponding reduced model (20) with initial condition $y_{r,0} = y_0$ and the same input $d$, $z^*$ is the quasi-steady state of $z$ as defined in (21), the time $\tilde{t}$ is as in (11), the constant $\epsilon$ is given in (13), $\epsilon^*(\lambda)$ is as in Table 3, $d_0 := d(0)$, $\bar{d} := \text{ess sup}_{s \ge 0} \|\dot{d}(s)\|$, and the functions $E_y$, $E_z$, together with the positive parameter functions $\delta_y(\lambda)$ and $\delta_z(\lambda)$,

<footnote n="3">³ By a solution, we mean a maximal solution throughout the paper.</footnote>
are provided in Table 3, with, $E_y(\tilde{t}, \cdot)$ and $E_z(\tilde{t}, \cdot)$ converging to zero exponentially as $\tilde{t} \to \infty$. $\square$

The proof of Proposition 2 is given in Appendix A.

We emphasize that Proposition 2 requires in (24) the solution $y_r$ to the reduced model (20) to be initialized at the same value of the considered solution $y$ to (17a). In contrast, Theorem 3 below does not, leveraging the contractive property of the reduced model (20) and the closeness of solution result from Proposition 2. Together, these properties establish that any solution $(y, z)$ to (17) is such that $y$ converges to any solution $y_r$ to the reduced model (20), for the same input $d$, regardless of its initial condition, up to an error of order $\epsilon$.

**Theorem 3.** Given any $\lambda \in \Lambda^\epsilon$, any locally absolutely continuous input $d: \mathbb{R}_{\ge 0} \to \mathbb{R}^2$, and any initial condition $(y_0, z_0) \in \mathbb{R}^2 \times \mathbb{R}$ and $y_{r,0} \in \mathbb{R}^2$. Let $(y, z)$ and $y_r$ be the corresponding solutions to (17) and (20), respectively, driven by the same input $d$, the following holds for all $\tilde{t} \ge 0$,

$$ \|y(\tilde{t}) - y_r(\tilde{t})\| \le \frac{\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda)\bar{d} + E_y(\tilde{t}, \lambda, y_0, z_0, y_0, d_0) + e^{-c_{gr}(\lambda)\tilde{t}} \|y_0 - y_{r,0}\|, \quad (26) $$

where $\epsilon$, $\epsilon^*(\lambda)$, $\delta_y(\lambda)$, $E_y$, $d_0$ and $\bar{d}$ as in Proposition 2. In particular, this implies that

$$ \limsup_{\tilde{t} \to \infty} \|y(\tilde{t}) - y_r(\tilde{t})\| \le \frac{\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda)\bar{d}. \quad (27) $$

The proof of Theorem 3 is given in Appendix B.

Thanks to Theorem 3, the feedforward input $\tilde{v}$ can be designed based on the reduced model (20), as it guarantees that by injecting the same $\tilde{v}$ to system (17) as in (15), any solution to (17) will converge to the reference trajectory, up to a negligible error of the order of $\epsilon$, thereby ensuring the desired objective.

Finally, our last result ensures a contraction property for (17a), i.e., any two trajectories to (17a) with the same input converge towards each other up to an error term of the order of $\epsilon$.

**Proposition 4.** Given any $\lambda \in \Lambda^\epsilon$, any locally absolutely continuous input $d: \mathbb{R}_{\ge 0} \to \mathbb{R}^2$, and any pair of initial condition $(y_0, z_0)$, $(\hat{y}_0, \hat{z}_0) \in \mathbb{R}^2 \times \mathbb{R}$. Let $(y, z)$ and $(\hat{y}, \hat{z})$ be the solutions to the system (17) with input $d$ and initial condition $(y_0, z_0)$ and $(\hat{y}_0, \hat{z}_0)$, respectively. Then, the following holds for any $\tilde{t} \ge 0$,

$$ \|y(\tilde{t}) - \hat{y}(\tilde{t})\| \le 2 \frac{\epsilon \epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda) \bar{d} + E_y(\tilde{t}, \lambda, y_0, z_0, y_0, d_0) + E_y(\tilde{t}, \lambda, \hat{y}_0, \hat{z}_0, y_0, d_0) + e^{-c_{gr}(\lambda)\tilde{t}} \|y_0 - \hat{y}_0\|, \quad (28) $$

where $\epsilon$, $\epsilon^*$, $\delta_y(\lambda)$, $E_y$, $d_0$ and $\bar{d}$ as in Proposition 2. In particular, this implies that

$$ \limsup_{\tilde{t} \to \infty} \|y(\tilde{t}) - \hat{y}(\tilde{t})\| \le \frac{2\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda) \bar{d}. \quad (29) $$

The proof of Proposition 4 is provided in Appendix C.

We emphasize that all the theorems established in this section remain valid for the system expressed in the original coordinates, by virtue of the linear coordinate transformation (11).

<caption>Table 3. Summary of notation and parameters appearing in Proposition 2.</caption>

$$
\begin{align*}
c_{gr}(\lambda) &:= \frac{1}{2} \left( \pi_1 \pi_2 + \lambda - \sqrt{(\lambda - \pi_1 \pi_2)^2 + (\pi_2 \pi_4 + c_4 c_5(\lambda))^2} \right) \\
\ell_{gz} &:= \pi_1 + \pi_4 \qquad \ell_{hd} := \frac{1}{\pi_4} (1 + \pi_7 \bar{s}_2) \\
\ell_{gd} &:= c_3^2 \pi_1^2 + (c_3^2 \pi_1^2 + 1) \pi_7^2 \bar{s}_2^2 \qquad \ell_{hy}(\lambda) := \pi_2 + \frac{1}{\pi_4} c_5(\lambda) \\
\lambda_{\max}^{\epsilon} &:= \frac{\pi_4}{(\pi_1 + \pi_4)\epsilon} - \pi_2\pi_4 - \pi_5\pi_6 - \pi_7\bar{s}_1 \\
\delta_c(\lambda) &:= \frac{\ell_{hy}(\lambda)}{c_{gr}(\lambda)} (\ell_{gz}\ell_{hd} + \ell_{gd})\bar{d} \qquad \epsilon^*(\lambda) := (\ell_{hy}(\lambda)\ell_{gz})^{-1} \\
c_y(\lambda) &:= \epsilon^{-1} - \ell_{hy}(\lambda)\ell_{gz} > 0 \qquad \delta_c(\lambda) := \ell_{hd}\bar{d} + \delta_c(\lambda) \\
\delta_y(\lambda) &:= \ell_{gz}\ell_{hd} + \frac{\ell_{gz}\ell_{hy}(\lambda)}{c_{gr}(\lambda)} (\ell_{gd} + \ell_{gz}\ell_{hd}) \\
\delta_z(\lambda) &:= \left( \ell_{hd} + \frac{\ell_{hy}(\lambda)\ell_{hd}}{c_{gr}(\lambda)} + \frac{\ell_{hy}(\lambda)\ell_{gd}}{c_{gr}(\lambda)} \right) (1 + \ell_{hy}(\lambda)\ell_{gz}) \\
E_z(t, \lambda, y_0, z_0, y_{r,0}, d_0) &:= e^{-c_y(\lambda)t} \|z_0 - z^*(y_0, d_0)\| \\
&\quad + E_b(t, \lambda, y_{r,0}, d_0) + \ell_{hy}(\lambda) E_y(t, \lambda, y_0, z_0, y_{r,0}, d_0) \\
\text{Case 1: } c_{gr}(\lambda) \neq c_y(\lambda) \quad &\begin{aligned}[t]
E_y(t, \lambda, y_0, z_0, y_{r,0}, d_0) &:= \left( \ell_{gz} \|z_0 - z^*(y_0, d_0)\| - \frac{\delta(\lambda)}{c_y(\lambda)} \right) \\
&\quad \left( \frac{e^{-c_y(\lambda)t} - e^{-c_{gr}(\lambda)t}}{c_{gr}(\lambda) - c_y(\lambda)} \right) + \left( \ell_{hy}(\lambda) \|g_r(y_{r,0}, d_0)\| \right. \\
&\qquad \left. - \delta_c(\lambda) \right) \left( \frac{e^{-c_{gr}(\lambda)t} - e^{-c_y(\lambda)t}}{(c_y(\lambda) - c_{gr}(\lambda))^2} - \frac{te^{-c_y(\lambda)t}}{(c_y(\lambda) - c_{gr}(\lambda))} \right) \\
E_b(t, \lambda, y_{r,0}, d_0) &:= -e^{-c_y(\lambda)t} \frac{\ell_{hd}\bar{d} + \delta_c(\lambda)}{c_y(\lambda)} \\
&\quad + (\ell_{hy}(\lambda) \|g_r(y_{r,0}, d_0)\| - \delta_c(\lambda)) \left( \frac{e^{-c_{gr}(\lambda)t} - e^{-c_y(\lambda)t}}{c_y(\lambda) - c_{gr}(\lambda)} \right) \\
\text{Case 2: } c_{gr}(\lambda) &= c_y(\lambda) \\
E_y(t, \lambda, y_0, z_0, y_{r,0}, d_0) &:= \left( \ell_{gz} \|z_0 - z^*(y_0, d_0)\| - \frac{\delta(\lambda)}{c_y(\lambda)} \right) \\
te^{-c_{gr}(\lambda)t} - \ell_{gz} \delta(\lambda) e^{-c_{gr}(\lambda)t} + \left( \ell_{hy}(\lambda) \|g_r(y_{r,0}, d_0)\| \right. \\
&\qquad \left. - \delta_c(\lambda) \right) \frac{1}{2} t^2 e^{-c_y t} \\
E_b(t, \lambda, y_{r,0}, d_0) &:= -e^{-c_y(\lambda)t} \frac{\ell_{hd}\bar{d} + \delta_c(\lambda)}{c_y(\lambda)} \\
&\quad + (\ell_{hy}(\lambda) \|g_r(y_{r,0}, d_0)\| - \delta_c(\lambda)) (te^{-c_y(\lambda)t})
\end{aligned}
\end{align*}
$$

<table><caption>Table 4. Parameters appearing in Proposition 2.</caption><tr><td>s&#773;<sub>1</sub> = 2&radic;2&pi;<sub>8</sub>e<sup>-1/2</sup></td><td>s&#773;<sub>2</sub> = &pi;<sub>9</sub>s&#773;<sub>1</sub></td></tr><tr><td>c<sub>3</sub> = 1/(&pi;<sub>3</sub>&pi;<sub>4</sub>)</td><td>c<sub>4</sub> = c<sub>3</sub>&pi;<sub>1</sub>(1 - &pi;<sub>3</sub>)</td></tr><tr><td>c<sub>5</sub>(&lambda;) = &lambda; + &pi;<sub>5</sub>&pi;<sub>6</sub> + &pi;<sub>7</sub>s&#773;<sub>1</sub></td><td></td></tr></table>

## 4. NUMERICAL ILLUSTRATION

The objective of this section is to illustrate how the proposed controller performs in a realistic scenario through numerical simulations. All the results presented in this section are displayed in the original coordinates. For the sake of clarity, we retain the notations $v$ and $v_{red}$ to denote the velocity trajectories of system (9) in closed-loop with (15) and of the reduced model (20), respectively, both expressed in the original coordinates.

### 4.1 Simulation Scenario

We consider as initial position $p_0 := 0$ m with initial condition $x_0 = (0, 0, 0)$. The target destination is located at position $p^* := 1500$ m and it has to be reached with zero velocity. The track from $p_0$ to $p^*$ consists of two segments: (i) a straight section from $p_0$ to $p_1 := 800$ m, where the pod velocity is
limited to $v_{max}$; and (ii) a curved segment from $p_1$ to $p^*$ where the velocity is limited to $v_{c,max}$. The values of $v_{max}$ and $v_{c,max}$ are given in Table 1. We design the reference trajectory with the aim to reach $p^*$ with zero velocity in minimum time, subject to the constraints stated in SA3. We elaborate more on this below.

## 4.2 Reference Trajectory

The reference trajectory is obtained by solving a minimum time optimal control problem considering the reduced-order model and the constraints in SA3 with a 10% conservative margin to account for model uncertainty. We select $\lambda = 40$ in (15), which belongs to set $\Lambda^\epsilon$ in (23). We also consider a constant wind velocity $w = 2$ m/s. The reference trajectory and reference input $\tilde{v}^*$ are then derived by direct optimization, after discretizing the reduced-order model using a 4th-order Runge-Kutta scheme with a sampling period of 0.59 s. The obtained minimum time is $t_f := 177.6$ s. The reference trajectory is thus given by the reduced-order model initialized at $(0, 0)$ with the feedforward input $\tilde{v}^*$. As illustrated in the forthcoming figures, the reference trajectory and input do not approach the safety constraints specified in SA3, owing to the 10% margin discussed above.

## 4.3 Velocity Tracking

We compare the reference velocity and acceleration with those obtained from the full model (9) in closed-loop with (15), driven by $\tilde{v}^*$, as shown in Figure 4. We observe that the generated velocity trajectories remain close at all times, consistently with Theorem 3. This guarantees the velocity tracking objective while satisfying the constraints in SA3, just as the reference trajectory does by design. Figure 4 also provides the corresponding positions, respectively denoted $p$ and $p_{\text{red}}$, with dynamics $\dot{p} = v$ and $\dot{p}_{\text{red}} = v_{\text{red}}$, $p(0) = p_{\text{red}}(0) = p_0$. We observe that the positions reach the target $p^*$ with zero velocity, as desired.

<figure><img src="image_5.png" /><figcaption>Fig. 4. (a) Reference input $\tilde{v}^*$ and controller inputs $u_{\text{red}}$ and $u$ for the reduced and full models; (b) velocity trajectories $v_{\text{red}}$ and $v$; (c) acceleration trajectories $\dot{v}_{\text{red}}$ and $\dot{v}$; (d) position trajectories $p_{\text{red}}$ and $p$.</figcaption></figure>

## 4.4 Contraction Properties

We now evaluate the performance of the controller for different initial velocities of the full order model. The top plot in Figure 5 shows the velocity trajectories obtained from the full order model with the designed controller, for different initial conditions. The bottom plot displays the corresponding absolute error with respect to the trajectory with zero initial velocity, denoted $e$. In line with Proposition 4, we see that the velocities rapidly converge toward one another, and the simulations even suggest that this convergence may be asymptotic.

<figure><img src="image_6.png" /><figcaption>Fig. 5. (a) Velocity trajectories of (9) with controller (15) with different initial conditions $v(0) \in \{0, 3, 5\}$; (b) errors $e$ and ultimate bound $\text{UB} := v_* \frac{2\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda)-\epsilon} \delta_y(\lambda) \bar{d}$ given by (29) in Proposition 4.</figcaption></figure>

## 4.5 Robustness

Finally, we evaluate the robustness of the control law (15) by perturbing the full order model (but not its controller). To this aim, we introduce two separate perturbations: (i) we perturb the wind velocity entering the full order model by adding a bias of $10 \sin(\frac{\pi}{5}t)$ on the time interval $[50, 100]$ only, (ii) we perturb the pod mass towards the new value $M = 1090$ kg, while the controller and the reference trajectory have been designed with $M = 950$ kg. The corresponding velocities are shown in Figure 6. We see that these remain close to the reference and satisfy the velocity constraints, thereby illustrating the robustness of the control law in these cases.

# 5. CONCLUSION

We developed a physics-based model of an Urbanloop pod and revealed a two-time-scale structure enabling a simplified reduced-order description. Building on this, we designed a contraction-based feedback controller with a feedforward component that ensures (approximate) velocity tracking for the full system. Numerical simulations confirmed the tracking performance, convergence properties, and robustness of the proposed approach. Future work will incorporate track elevation, relax the assumptions on the knowledge of the wind velocity, and validate the method experimentally.
<figure><img src="image_7.png" /><figcaption>Fig. 6. Velocity trajectories $v_{\text{red}}$ (solid blue), $v$ with wind disturbance (dashed light blue), and $v$ with mass uncertainty (dash-dotted black).</figcaption></figure>

## DECLARATION OF GENERATIVE AI AND AI-ASSISTED TECHNOLOGIES IN THE WRITING PROCESS

During the preparation of this work, the authors used ChatGPT to assist with spelling and grammar correction only. After using this tool, the authors reviewed and edited the content as needed and take full responsibility for the content of the publication.

## REFERENCES

Boersma, R., Mica, D., Arem, B., and Rieck, F. (2018). Driverless electric vehicles at businesspark rivium near Rotterdam (the Netherlands): from operation on dedicated track since 2005 to public roads in 2020. *EVS 31 & EVTeC 2018*.

Buckingham, E. (1914). On physically similar systems; illustrations of the use of dimensional equations. *Physical Review*, 4(4), 345–376.

Bullo, F. (2024). *Contraction Theory for Dynamical Systems*. Kindle Direct Publishing, 1.2 edition.

Cothren, L., Bullo, F., and Dall'Anese, E. (2023). Online feedback optimization and singular perturbation via contraction theory. *arXiv preprint arXiv:2310.07966*.

Cottrell, W.D. (2022). Automated transit dissected: An overview of lawrence j. fabian's writings. *Journal of Engineering Research and Reports*, 23(3), 15–30.

Dincel, E., Nak, H., Akkaya, Ş., Canevi, M., Mutlu, İ., and Söylemez, M.T. (2018). Robust control of railway traction system. *IFAC-PapersOnLine*, 51(25), 171–177.

Furman, B., Fabian, L., Ellis, S., Muller, P., and Swenson, R. (2014). Automated transit networks (atn): A review of the state of the industry and prospects for the future. Technical report, Mineta Transportation Institute, San Jose, CA.

Gillespie, T. (2021). *Fundamentals of Vehicle Dynamics*. SAE International, Pennsylvania, U.S.A.

González-Romeo, L.L., Reyes-Báez, R., Guerrero-Castellanos, J.F., Jayawardhana, B., Cid-Monjaraz, J.J., and Félix-Beltrán, O.G. (2020). Contraction-based nonlinear controller for a laser beam stabilization system using a variable gain. *IEEE Control Systems Letters*, 5(3), 761–766.

Greenwood, D.T. (1988). *Principles of Dynamics*, volume 21. Prentice Hall, NJ, U.S.A.

Howlett, P., Milroy, I., and Pudney, P. (1994). Energy-efficient train control. *Control Engineering Practice*, 2(2), 193–200.

Kokotović, P., Khalil, H., and O'Reilly, J. (1999). *Singular Perturbation Methods in Control: Analysis and Design*. SIAM.

Kozłowski, M. (2019). Analysis of dynamics of a scaled prt (personal rapid transit) vehicle. *Journal of Vibroengineering*, 21(5), 1426–1440.

Lohmiller, W. and Slotine, J.J.E. (1998). On contraction analysis for non-linear systems. *Automatica*, 34(6), 683–696.

Mao, Z., Yan, X.G., Jiang, B., and Chen, M. (2019). Adaptive fault-tolerant sliding-mode control for high-speed trains with actuator faults and uncertainties. *IEEE Transactions on Intelligent Transportation Systems*, 21(6), 2449–2460.

Park, R.H. (1929). Two-reaction theory of synchronous machines generalized method of analysis-part i. *Transactions of the American Institute of Electrical Engineers*, 48(3), 716–727.

Reyes-Báez, R., van der Schaft, A., Jayawardhana, B., and Pan, L. (2020). A family of virtual contraction based controllers for tracking of flexible-joints port-Hamiltonian robots: Theory and experiments. *International Journal of Robust and Nonlinear Control*, 30(8), 3269–3295.

Scheepmaker, G., Goverde, R., and Kroon, L. (2017). Review of energy-efficient train control and timetabling. *European Journal of Operational Research*, 257(2), 355–376.

Singh, S., Landry, B., Majumdar, A., Slotine, J.J., and Pavone, M. (2023). Robust feedback motion planning via contraction theory. *The International Journal of Robotics Research*, 42(9), 655–688.

Su, S., Wang, X., Tang, T., Wang, G., and Cao, Y. (2021). Energy-efficient operation by cooperative control among trains: A multi-agent reinforcement learning approach. *Control Engineering Practice*, 116, 104901.

Ultra (2011). Ultra global prt, www.ultraglobalprt.com.

Varga, B., Tettamanti, T., Kulcsár, B., and Qu, X. (2020). Public transport trajectory planning with probabilistic guarantees. *Transportation Research Part B: Methodological*, 139, 81–101.

Wang, R., Tóth, R., Koelewijn, P., and Manchester, I. (2024). Virtual control contraction metrics: Convex nonlinear feedback design via behavioral embedding. *International Journal of Robust and Nonlinear Control*, 34(12), 7698–7721.

West Virginia University (1975). WVU personal rapid transit system https://prt.wvu.edu.

Wu, J., Kulcsár, B., Qu, X., et al. (2021). A modular, adaptive, and autonomous transit system (maats): An in-motion transfer strategy and performance evaluation in urban grid transit networks. *Transportation Research Part A: Policy and Practice*, 151, 81–98.

Yasunobu, S., Miyamoto, S., and Ihara, H. (1983). Fuzzy control for automatic train operation system. *IFAC Proceedings Volumes*, 16(4), 33–39.

## Appendix A. PROOF OF PROPOSITION 2

Before giving the proofs, we introduce following notation and terminology that are borrowed from Bullo (2024).

Given $A \in \mathbb{R}^{n \times n}$, we denote the logarithmic norm (log-norm) induced by $\| \cdot \|$ as $\mu(A)$. The determinant of $A \in \mathbb{R}^{n \times n}$ is denoted by $\det(A)$. Moreover, given two normed spaces $(\mathcal{X}, \| \cdot \|)$, a map $F: \mathcal{X} \to \mathcal{Y}$ is Lipschitz from $(\mathcal{X}, \| \cdot \|_{\mathcal{X}})$ to $(\mathcal{Y}, \| \cdot \|_{\mathcal{Y}})$ with constant $\ell \in \mathbb{R}_{\ge 0}$ if for all $x, \hat{x} \in \mathcal{X}$, it holds that $\|F(x) - F(\hat{x})\|_{\mathcal{Y}} \le \ell \|x - \hat{x}\|_{\mathcal{X}}$. For maps dependent on multiple variables, consider the normed spaces $(\mathcal{X}_i, \| \cdot \|_{\mathcal{X}_i})$ for $i \in \{1, \dots, k\}$ and $(\mathcal{Y}, \| \cdot \|_{\mathcal{Y}})$ with $k \in \mathbb{N}_{\ge 0}$, a map $F: \mathcal{X}_1 \times \dots \times \mathcal{X}_k \to \mathcal{Y}$ is Lipschitz with respect to $x_1 \in \mathcal{X}_1$ uniformly in $z \in \mathcal{X}_2 \times \dots \times \mathcal{X}_k$ with constant $\ell_{x_1} \in \mathbb{R}_{\ge 0}$, if for all $x_1, \hat{x}_1 \in \mathcal{X}_1$
$\mathcal{X}_1$ and for any fixed $z \in \mathcal{X}_2 \times \dots \times \mathcal{X}_k$, it holds that $\|F(x_1, z) - F(\hat{x}_1, z)\|_y \le \ell_{x_1} \|x_1 - \hat{x}_1\|_{\mathcal{X}_1}$; we denote by $\text{Lip}_{x_1}(F)$ the minimum Lipschitz constant $\ell_{x_1}$ of $F$ with respect to variable $x_1$. Similar definitions hold for $\text{Lip}_{x_i}(F)$ for $i = 1, 2, \dots, k$. A continuous map $F: \mathbb{R}_{\ge 0} \times \mathbb{R}^{n_x} \to \mathbb{R}^{n_x}$, $(t, x) \mapsto F(t, x)$ with norm $\|\cdot\|$ and compatible weak pairing $[\cdot; \cdot]$ (see (Bullo, 2024, Definition 2.27)) is one-sided Lipschitz with respect to $x$ with constant $-c \in \mathbb{R}$ if $[F(t, x) - F(t, \hat{x}), x - \hat{x}] \le -c\|x - \hat{x}\|^2$ holds for all $t \in \mathbb{R}_{\ge 0}$ and $x, \hat{x} \in \mathbb{R}^{n_x}$ (Bullo, 2024, Chapter 3); we denote the minimum one-sided Lipschitz constant of $F$ with respect to variable $(\cdot)$ as $\text{osLip}_{(\cdot)}(F)$. Given a differentiable map $x \mapsto F(t, x)$, the Jacobian of $F$ with respect to $x$ is denoted by $D_x F(t, x) := \partial F(t, x)/\partial x$ for any $(t, x) \in \mathbb{R}_{\ge 0} \times \mathbb{R}^{n_x}$.

We rely on the next lemma to prove Proposition 2. The proof is omitted for space reason.

**Lemma 5.** The following holds for any $(y_2, d_2) \in \mathbb{R} \times \mathbb{R}$, and $\lambda > 0$,

(i) $\tilde{\sigma}(y_2, d_2) \in [0, 1]$,

(ii) $D_{y_2} \tilde{\sigma}(y_2, d_2) \in \bar{s}_1[-1, 1]$ with $\bar{s}_1 := 4\sqrt{\pi_8}e^{-1/2}$,

(iii) $D_{d_2} \tilde{\sigma}(y_2, d_2) \in \bar{s}_2[-1, 1]$ with $\bar{s}_2 := \pi_9 \bar{s}_1$,

(iv) $(D_{y_2} \tilde{\psi}(\lambda, y_2, d_2))^2 < c_5^2(\lambda)$,

where we recall that $\tilde{\psi}(\lambda, y_2, d_2) = -\lambda y_2 + \pi_5 \tanh(\pi_6 y_2) + \pi_7 \tilde{\sigma}(y_2, d_2)$, $\tilde{\sigma}(y_2, d_2) = (\frac{2}{1+e^{-2\pi_8(y_2-\pi_9 d_2)^2}} - 1)\text{sign}(v_* y_2 - w_* d_2)$, and $c_5(\lambda)$ is given in Table 4. $\square$

Proposition 2 is proved by applying (Cothren et al., 2023, Theorem 4.9). Therefore, we need to verify that the conditions of (Cothren et al., 2023, Theorem 4.9) are satisfied in our setting. For this purpose, let $\lambda \in \Lambda^\epsilon$ with $\Lambda^\epsilon$ as in (23).

Assumption 4.1 in Cothren et al. (2023) is verified as $\text{osLip}_z(h(y, z, d)) \le -1$, in view of (19). Assumption 4.2 in Cothren et al. (2023) holds as $\text{Lip}_y(g(y, z, d)) \le \ell_{g_y}(\lambda)$ for $g$ in (18), where $\ell_{g_y}(\lambda) := c_3\pi_1 c_5(\lambda) + \pi_5\pi_6 + \pi_7\bar{s}_1 > 0$. Assumptions 4.3 and 4.4 in Cothren et al. (2023) are verified with the Lipschitz constants $\ell_{g_z}, \ell_{h_y}(\lambda), \ell_{g_d}$, and $\ell_{h_d} > 0$ defined in Table 3, such that $\text{Lip}_z(g(y, z, d)) \le \ell_{g_z}, \text{Lip}_y(h(y, z, d)) \le \ell_{h_y}(\lambda), \text{Lip}_d(g(y, z, d)) \le \ell_{g_d}$, and $\text{Lip}_d(h(y, z, d)) \le \ell_{h_d}$, respectively, in view of (18) and (19). Moreover, Assumption 4.8 in Cothren et al. (2023) holds with one-sided Lipschitz constant $-c_{g_r}(\lambda) < 0$ defined in Table 3 such that $\text{osLip}_{y_r}(g_r(y_r, d)) \le -c_{g_r}(\lambda)$ for $g_r$ in (22). All vector fields (18), (19), and (22) are globally Lipschitz by Lemma 5. Finally, Assumption 4.5 holds since $d = [\tilde{\nu}, \tilde{w}]^\top$ is locally absolutely continuous by SA3 (iii) and our choice of $\tilde{\nu}$. All the conditions of (Cothren et al., 2023, Theorem 4.9) hold for systems (17) and (20), we thus apply it to obtain the desired result.

There are two remarks. (i) $\ell_{f_t} = \ell_{f_\epsilon} = \ell_{g_\epsilon} = 0$ in the notation of Cothren et al. (2023) as both $g$ in (18) and $h$ in (19) are independent of $\tilde{t}$ and $\epsilon$. (ii) In our case, $\epsilon$ is defined explicitly in (13), whereas $\epsilon$ is a design parameter in Cothren et al. (2023). This distinction imposes a constraint on the admissible values of $\lambda$, e.g., $0 < \lambda < \lambda_{\text{max}}^\epsilon$, so that $\epsilon$ satisfies the inequality $0 < \epsilon < \epsilon^*(\lambda)$ from (Cothren et al., 2023, Equation (4.5)).

## Appendix B. PROOF OF THEOREM 3

To prove Theorem 3, we rely on the next lemma.

**Lemma 6.** Given any $\lambda \in \Lambda^\epsilon$, for any locally absolutely continuous function $d: \mathbb{R}_{\ge 0} \to \mathbb{R}^2$ and any initial conditions $y_{r,0}, \hat{y}_{r,0} \in \mathbb{R}^2$, let $y_r, \hat{y}_r$ be the corresponding solutions to the reduced model (20), respectively, driven by the same input $d$. Then, for any $\tilde{t} \ge 0$ it holds that

$$ \|y_r(\tilde{t}) - \hat{y}_r(\tilde{t})\| \le e^{-c_{g_r}(\lambda)\tilde{t}} \|y_{r,0} - \hat{y}_{r,0}\|, \quad (B.1) $$

where $c_{g_r}(\lambda)$ as in Table 3. $\square$

**Proof of Lemma 6.** We want to use (Bullo, 2024, Corollary 3.17), with $f, t, x, u$ in this notation replaced here by $g_r, \tilde{t}, y_r, d$, respectively. For this, we verify that the conditions of (Bullo, 2024, Corollary 3.17) hold in our setting. Let $\lambda \in \Lambda^\epsilon$, we first note that $g_r$ in (22) is a continuous map. Moreover, the assumptions (A1) and (A2) in (Bullo, 2024, Corollary 3.17) are satisfied as $\text{osLip}_{y_r}(g_r(y_r, d)) \le -c_{g_r}(\lambda)$, with $c_{g_r}(\lambda) > 0$, and $g_r$ is $\ell_{g_r d}$-Lipschitz uniformly in $y_r$ for some $\ell_{g_r d} > 0$, respectively, as $\lambda \in \Lambda^\epsilon$. Therefore, for any locally absolutely continuous function $d: \mathbb{R}_{\ge 0} \to \mathbb{R}^2$ and any initial conditions $y_{r,0}, \hat{y}_{r,0} \in \mathbb{R}^2$, the corresponding solutions $y_r$ and $\hat{y}_r$ to the reduced model (20), respectively, with same input $d$, verify for any $\tilde{t} \ge 0$

$$ \|y_r(\tilde{t}) - \hat{y}_r(\tilde{t})\| \le e^{-c_{g_r}(\lambda)\tilde{t}} \|y_{r,0} - \hat{y}_{r,0}\|. \quad \blacksquare \quad (B.2) $$

We now prove Theorem 3. Let $\lambda \in \Lambda^\epsilon$, $d$ be a locally absolutely continuous input, $(y_0, z_0) \in \mathbb{R}^2 \times \mathbb{R}$, $y_{r,0} \in \mathbb{R}^2$, and let $\hat{y}_{r,0} = y_0$. Denote by $(y, z)$ the solution to (17) with initial condition $(y_0, z_0)$ and input $d$, and denote by $y_r, \hat{y}_r$ the solutions to the reduced model (22) with initial conditions $y_{r,0}, \hat{y}_{r,0}$, respectively, and same input $d$. Then, for all $\tilde{t} \ge 0$ we obtain

$$ \begin{aligned} \|y(\tilde{t}) - y_r(\tilde{t})\| &= \|y(\tilde{t}) - \hat{y}_r(\tilde{t}) + \hat{y}_r(\tilde{t}) - y_r(\tilde{t})\| \\ &\le \|y(\tilde{t}) - \hat{y}_r(\tilde{t})\| + \|\hat{y}_r(\tilde{t}) - y_r(\tilde{t})\|. \end{aligned} \quad (B.3) $$

By Proposition 2 (see (24)) and Lemma 6, for all $\tilde{t} \ge 0$,

$$ \begin{aligned} \|y(\tilde{t}) - y_r(\tilde{t})\| &\le \frac{\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda)\bar{d} + E_y(\tilde{t}, \lambda, y_0, z_0, y_0, d_0) \\ &\quad + e^{-c_{g_r}(\lambda)\tilde{t}} \|y_0 - y_{r,0}\|, \end{aligned} \quad (B.4) $$

where $\epsilon, \epsilon^*(\lambda), c_{g_r}(\lambda), \delta_y(\lambda), E_y, d_0$ and $\bar{d}$ as in Proposition 2. This establishes the bound stated in (26). In addition, $E_y(\tilde{t}, \cdot)$ converges to zero exponentially as $\tilde{t} \to \infty$, recovering (27), i.e.,

$$ \limsup_{\tilde{t} \to \infty} \|y(\tilde{t}) - y_r(\tilde{t})\| \le \frac{\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda)\bar{d}. \quad (B.5) $$

<figure><img src="image_8.png" /></figure>

## Appendix C. PROOF OF PROPOSITION 4

Let $\lambda \in \Lambda^\epsilon$, $d: \mathbb{R}_{\ge 0} \to \mathbb{R}^2$ a locally absolutely continuous function and $(y_0, z_0), (\hat{y}_0, \hat{z}_0) \in \mathbb{R}^2 \times \mathbb{R}$. Let $(y, z)$ and $(\hat{y}, \hat{z})$ be the solutions to system (17), with initial conditions $(y_0, z_0), (\hat{y}_0, \hat{z}_0)$, respectively, and input $d$. For any $\tilde{t} \ge 0$,

$$ \begin{aligned} \|y(\tilde{t}) - \hat{y}(\tilde{t})\| &= \|y(\tilde{t}) - y_r(\tilde{t}) + y_r(\tilde{t}) - \hat{y}(\tilde{t})\| \\ &\le \|y(\tilde{t}) - y_r(\tilde{t})\| + \|y_r(\tilde{t}) - \hat{y}(\tilde{t})\|, \end{aligned} \quad (C.1) $$

where $y_r$ is the solution to the reduced model (20) with initial condition $y_{r,0} = y_0$ and input $d$. By Theorem 3, for all $\tilde{t} \ge 0$,

$$ \begin{aligned} \|y(\tilde{t}) - \hat{y}(\tilde{t})\| &\le \frac{2\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda)\bar{d} + E_y(\tilde{t}, \lambda, y_0, z_0, y_0, d_0) \\ &\quad + E_y(\tilde{t}, \lambda, \hat{y}_0, \hat{z}_0, y_0, d_0) + e^{-c_{g_r}(\lambda)\tilde{t}} \|y_0 - \hat{y}_0\|, \end{aligned} \quad (C.2) $$
where $\epsilon, \epsilon^*(\lambda), c_{g_r}(\lambda), \delta_y(\lambda), E_y, d_0$ and $\bar{d}$ as in Proposition 2.
This yields the bound in (28). As $\tilde{t} \to \infty, E_y(\tilde{t}, \cdot) \to 0$. Thus,

$$ \limsup_{\tilde{t} \to \infty} \|y(\tilde{t}) - \hat{y}(\tilde{t})\| \le \frac{2\epsilon\epsilon^*(\lambda)}{\epsilon^*(\lambda) - \epsilon} \delta_y(\lambda)\bar{d}. \quad (C.3) $$

■