# Learning In-Hand Translation Using Tactile Skin With Shear and Normal Force
Sensing

Jessica Yin1,2 Haozhi Qi1,3 Jitendra Malik1,3 James Pikul4 Mark Yim2 Tess
Hellebrekers1

###### Abstract

Recent progress in reinforcement learning (RL) and tactile sensing has
significantly advanced dexterous manipulation. However, these methods often
utilize simplified tactile signals due to the gap between tactile simulation
and the real world. We introduce a sensor model for tactile skin that enables
zero-shot sim-to-real transfer of ternary shear and binary normal forces.
Using this model, we develop an RL policy that leverages sliding contact for
dexterous in-hand translation. We conduct extensive real-world experiments to
assess how tactile sensing facilitates policy adaptation to various unseen
object properties and robot hand orientations. We demonstrate that our 3-axis
tactile policies consistently outperform baselines that use only shear forces,
only normal forces, or only proprioception.

1Meta FAIR 2University of Pennsylvania GRASP Lab 3UC Berkeley 4UW-Madison

Figure 1: We present a tactile skin model that enables zero-shot sim-to-real
transfer of ternary shear and binary normal forces. We use it to learn an RL
policy for dexterous in-hand translation that uses tactile and proprioceptive
feedback to adapt to unseen object geometries, novel hand orientations, and
new object dynamics. We evaluate our policies with over 190 real-world
rollouts. More videos are at our project website.

> Keywords: Tactile Sensing, Sim-to-Real, Dexterous Manipulation

##  1 Introduction

Humans rely on their sense of touch to manipulate objects throughout their
daily lives [1]. Inspired by this, a prominent area of manipulation research
focuses on equipping robots with tactile sensors [2, 3]. However, despite the
development of capable tactile sensors [4, 5, 6], there remains a significant
gap between the breadth of information they can capture and what state-of-the-
art robot controllers can utilize for feedback. Recently, reinforcement
learning (RL) and sim-to-real techniques have enabled breakthroughs in
integrating tactile feedback into low-level controllers for dexterous
manipulation [7, 8, 9]. However, these are constrained by the speed and
accuracy of tactile simulation techniques and often rely on simplified tactile
signals. Although tactile simulation has been actively pursued recently [10,
11, 12], simulating rich, large-area, and high-fidelity tactile sensing with
high throughput remains a challenge.

Tactile sensors approximate contact through soft body deformation, which is
traditionally modeled using slow and high-fidelity techniques like FEM [13,
14, 15]. At the other extreme, most simulators fast enough to train RL
controllers use overly simplified contact models for numerical stability,
which struggle to bridge the sim-to-real gap. Robotic dexterity requires a
balance between simulation speed and fidelity to fully leverage the progress
in both tactile sensing and RL techniques. To that end, we introduce a
tractable tactile skin model that outputs binary normal and shear forces at
5000 FPS on two GPUs, achieving 70% of the speed of training a proprioception-
only policy. We demonstrate the fidelity of the proposed tactile sensor model
through zero-shot sim-to-real transfer of policies trained entirely in
simulation.

We focus on in-hand translation of objects across the palm. In-hand
translation is useful for practical applications such as repositioning tools
to a specific grasp, and is also challenging because it requires controlled
sliding of the objects [16, 17, 18]. We choose this task specifically to
better investigate the utility of our ternary shear outputs in improving
policy performance. With current limitations in simulating contact dynamics
and tactile skin, we have yet to see examples of this dexterous skill with
tactile feedback including shear forces.

In summary, we introduce our sim-to-real approach for in-hand object
translation using tactile sensing. We make three key contributions:

  * •

To the best of our knowledge, we contribute the first RL-tractable sensor
model for compliant tactile skin that enables zero-shot sim-to-real transfer
of binary normal and shear signals.

  * •

We use our three-axis sensor model to learn RL control policies for in-hand
translation, a dexterous, contact-rich task that requires controlled sliding
contact.

  * •

We evaluate our control policies with 190 real-world rollouts and show that
policies with three-axis tactile sensing achieve superior in-domain task
performance and adaptation to unseen objects and hand orientations.

##  2 Related Work

Tactile Sensor Simulation. The crux of tactile sensor simulation is
efficiently and sufficiently modeling the deformations and forces at the soft
contact interface. Most works focus on simulating fingertip visuo-tactile
sensors, which use cameras to observe soft material deformations upon contact
[10, 19, 20]. Finite Element Method (FEM)-based approaches are high fidelity
[21, 22, 23], but their computational cost prevents their use in RL policy
learning. Si et al. [12] uses FEM to demonstrate a sim-to-real RL policy for
two-fingered grasping, but the tractability may not extend beyond this small
action space. Tacto [11], Mujoco [24], and IsaacGym [25] use collision
geometry penetration to efficiently estimate forces. While this can be
sufficiently accurate for normal forces, it produces sparse signals for shear.
Xu et al. [10] leverages rigid-body assumptions in tactile modeling for sim-
to-real, but assumes constant and sticking contact, and other contact modes
are not demonstrated.

Far fewer recent works explore non-camera based tactile skin simulation [26,
27]. These approaches decouple deformation modeling and sensor response to
account for cross-talk and noise, producing realistic data but suffering from
intractability for RL policy training. Yin et al. [8] simulates force-
sensitive resistors as binary tactile sensors using the default IsaacGym
tactile sensor model. In contrast, our work introduces a simulation model for
both normal and shear forces for a magnetic tactile skin [6, 28].

In-Hand Manipulation. In-hand manipulation has been studied for decades using
either classical control [18, 29, 30, 31, 32, 33, 34, 35] approaches or
learning-based methods. Learning-based methods can be categorized to real-
world imitation learning [36, 37, 38, 39, 40] and sim-to-real with
reinforcement learning [41, 42, 43, 44, 45]. Our method falls into the latter
category and differs from existing work from two perspectives. First, the
majority of existing methods focus on in-hand object reorientation [7, 8, 46,
47] while our work focuses on in-hand object translation. This task is a
complementary skill with in-hand rotation, and a critical step towards general
in-hand manipulation. Second, most existing learning-based in-hand
manipulation systems use vision [44] and proprioception [46], or simplified
touch sensing limited to normal forces [7, 8]. In contrast, our touch sensing
pipeline provides both shear and normal forces for controller feedback.

##  3 Tactile Skin Model

Figure 2: Our modeling approach for sim-to-real transfer of tactile skin. A)
We model the palm as a continuous surface with 16 discrete taxels, each
corresponding to an underlying magnetometer. B) We use a cylinder for each
taxel and extend the sensing range ($R$) beyond its collision geometry. C) We
sample points on the object and represent the collision surface as a point
cloud. Points within sensing range are denoted as $i$. D) We sum the
penetration distances $P_{i}=R-l_{i}$, where $l_{i}$ is the distance from
point $i$ to the sensor’s origin. We calculate the sensor signals for shear
and normal force using $\sum_{i=1}^{n}P_{i}$, object velocity, and object
point density.

Our sensor model focuses on ReSkin [6], a magnetic elastomer tactile skin,
which we adhere to the palm of the robot hand (Figure 2A). As the skin deforms
and the positions of the embedded magnetic particles change, underlying
magnetometers measure the magnetic flux as a proxy for 3-axis force. To
minimize the effects of hysteresis and cross-talk, we binarize the sensor
outputs in both simulation and reality. We implement our tactile sensor model
and train our RL policy in IsaacGym [25], and it achieves around 70% of
training speed compared to training without any tactile sensors. For context,
with 2 NVIDIA RTX-4090 GPUs, we get 5000 FPS training with tactile sensors and
approximately 7000 FPS without tactile sensors.

Our approach contrasts with the default tactile sensor models offered in
simulators such as Mujoco and IsaacGym, which report normal and shear signals
calculated primarily from collision geometry penetration (Figure 3). Although
this approach offers numerical stability in simulation by neglecting rapid
changes in frictional forces, it produces sparse and unrealistic signals for
shear forces in tactile sensor models. Our sensor model outputs sufficiently
accurate shear and normal forces for sim-to-real transfer, while still
leveraging the speed and stability of the simulator by using collision
geometry penetration to calculate dynamics and contact interactions.

###  3.1 Discretization

The ReSkin palm is modeled in two parts. First, we model the ReSkin palm pad
as a rigid volume with the same physical dimensions as the real sensing skin.
The simulated ReSkin palm pad acts as a continuous collision surface for more
accurate dynamics during the task. Second, although ReSkin is continuous, we
discretize the sensing skin to 16 discrete taxels, each corresponding to the
location of an underlying magnetometer (Figure 2A). We model each ReSkin taxel
as a cylinder collision geometry ($r=1.5$ cm), placed coincidentally on the
surface of the ReSkin palm.

###  3.2 Compliance

We use two techniques to model the compliance of ReSkin: 1) extending each
sensor’s range beyond its collision geometry, and 2) representing the
manipulated object as a point cloud, with each point contributing to the
tactile sensor signal. Extending the sensing range beyond its geometry allows
for sensor activation by object “contact” without collision (Figure 2B). This
mimics an interaction with a compliant volume by not exerting a large reaction
force on the object. For the object point cloud, we uniformly sample only from
the object surface to represent the contact geometry. For object points within
the sensing range, the penetration distances directly scale the sensor signal
(Figure 2C-D). This technique allows us to calculate tactile signals that
correspond with intersecting contact volumes, in contrast to using the typical
single point per two body collision approximation.

###  3.3 Shear and Normal Sensor Signals

To calculate shear signals, we draw inspiration from Coulomb models of sliding
and rolling contact [48] that scale tangential forces with normal force and
object velocity. We use:
$S_{x,t}=\frac{\sum_{i=1}^{n}P_{i}}{D}(v_{x,t}+\omega_{x,t})$ and
$S_{y,t}=\frac{\sum_{i=1}^{n}P_{i}}{D}(v_{y,t}+\omega_{y,t})$ where $x$ and
$y$ correspond to global coordinate axes and are tangential to the sensor
surface, $S_{x,t}$ and $S_{y,t}$ are the shear signals produced by each taxel,
$v_{x,t}$ and $v_{y,t}$ are the linear velocities of the object,
$\omega_{x,t}$ and $\omega_{y,t}$ are the angular velocities of the object,
$\sum_{i=1}^{n}P_{i}$ is the summation of object point penetration distances
within the sensing range, and $D$ is the object point density (total number of
object points divided by object volume). The point penetration distance is the
$L_{2}$ norm of sensor range and the 3D object point coordinates. For the
normal force signal, we use $S_{z,t}=\frac{\sum_{i=1}^{n}P_{i}}{D}$. We
calculate the normal force with the summation of object point penetration
distances, divided by object point density. The object point penetration
distances are a proxy for normal force. Dividing by object point density
accounts for different scales of the object.

To bridge the reality gap, we train the control policy with thresholded sensor
signals from our tactile skin model:
$S_{x,t}\in\\{-1,0,1\\},S_{y,t}\in\\{-1,0,1\\},\text{ and
}S_{z,t}\in\\{0,1\\}$. For the signed 3-axis policy variant (S3-Axis), we
retain positive and negative signs of shear signals, which give direction
along each axis. For the unsigned 3-axis policy variant (U3-Axis), we take the
absolute value of the shear signal. Additionally, $S_{x,t},S_{y,t}=0$ if
$v_{x,t},v_{y,t},\omega_{x,t},\omega_{y,t}=0$. Although this neglects
potentially nonzero friction forces while velocities are 0, it reflects how
real ReSkin signals are binarized.

Figure 3: Tactile signal comparisons during an entire episode of in-hand
translation. A) A representative example of real-world ReSkin palm taxel
output. The signals are periodic because the finger gait is periodic. B) The
force sensor output of a simulated palm taxel, using the default IsaacGym
force sensor model similar to [8, 47]. The signals are sparse because the
model relies on collision geometry penetration. C) The taxel outputs from our
simulated S3-Axis tactile skin model, for the same taxel and the same rollout
as B.

###  3.4 Real-World Binary Tactile Processing

Raw signals from ReSkin have significant hysteresis, such that simple
thresholding is not sufficient for binarization. Instead, we use a threshold
on the time derivative of the signal. We use two buffers: one for signal
history and one for the current signal. If the difference between the signal
history and current signal buffers exceeds the threshold, then a $1$ or $-1$
is returned (else $0$). We tune buffer sizes and thresholds per $x$, $y$, $z$
axis. There is a slight delay in binary sensor outputs due to the dependence
on signal history, but because ReSkin outputs data four times faster
($78\text{\,}\mathrm{Hz}$) than the policy sampling rate
($20\text{\,}\mathrm{Hz}$), we find this delay to be negligible. Additionally,
using the time derivative means that if there is no signal change, the
binarization algorithm will eventually output 0. We make this trade-off in our
binarization algorithm to cope with hysteresis; however, in practice, this
scenario is rare because the object is typically in motion and causes frequent
signal changes.

##  4 Learning In-Hand Translation with Tactile Skin

Figure 4: Overview of our training and deployment pipeline. We train the
policy in two stages, entirely in simulation. We use our tactile skin model in
the second stage. The policy is directly deployed in the real world.

To demonstrate the effectiveness of our simulated tactile skin model, we
perform sim-to-real experiments on the in-hand translation task. This task
requires rich, controlled sliding contact on the palm, so we hypothesize that
palm tactile feedback can be particularly useful.

Oracle Policy Learning. We adopt a two-stage method for policy learning from
[46, 7]. First, we train an oracle policy $\pi$ with privileged information
openly available from the simulator. Second, we train the tactile policy with
an observation encoder using our simulated sensor model and freeze the control
policy $\bm{\pi}$. During deployment, we directly deploy the control policy
and observation encoder in the real world. An overview is shown in Figure 4.

The privileged information includes object state and physical properties
sampled from the simulator. This information includes object position,
velocity, size, mass, center of mass, and coefficient of friction. It is then
encoded in an 8-dimensional vector, $z_{t}$, representing information that the
policy finds useful and relevant for the task. The inputs to the oracle
policy, $\pi$, are finger joint positions from proprioception and the encoded
privileged information, $z_{t}$. The policy outputs the 16 joint position
targets of the PD controller, $a_{t}$ $\in\mathbb{R}^{16}$. The observation
$o_{t}$ contains a temporal window of joint positions and actions, $o_{t}$ $=$
$[$$q_{t}$, $a_{t}$$]$ $\in\mathbb{R}^{96}$. This gives us $a_{t}$ $=$
$\pi$$($$o_{t}$, $z_{t}$$)$.

The task requires the control policy to translate objects in one direction
across the palm. Our reward function uses penalties on object state to specify
the in-hand translation task and penalties on robot behavior to produce finger
gaiting. The reward contains three main terms: task rewards
($r_{\text{iht}},r_{\text{goal}}$) to define the task, motion penalties
($r_{\text{rotp}},r_{\text{pose}}$), and energy penalties
($r_{\text{work}},r_{\text{torque}},r_{\text{force}}$). Please see the
Appendix for the detailed reward formulation. We use PPO [49] to optimize the
oracle policy and share weights between the policy and the critic network. An
extra linear projection layer estimates the value function. During training, a
cylinder with randomized physical properties is initialized in a stable grasp
for each environment and we assign a random goal position to the environment.

Tactile Policy Learning. The key difference between the oracle policy and the
tactile policy is the observation encoder. We concatenate simulated sensor
data from proprioception ($q_{t}$) and our tactile skin model
([$S_{x,t},S_{y,t},S_{z,t}$]) as inputs to the observation encoder. The
observation encoder is a transformer trained to minimize the $L_{2}$ norm
between: 1) $z_{t}$ and $\hat{z}_{t}$, aiming to replicate the privileged
representation from simulated sensor data, and 2) $a_{t}$ and $\hat{a}_{t}$,
aiming to replicate the same actions as the oracle control policy.

##  5 Experiment Setup

Hardware Setup. We use an Allegro Hand [50] for our experiments. It has four
fingers, each with four degrees of freedom (DoF). The 16 joints receives
target joint position from neural network controller at
$20\text{\,}\mathrm{Hz}$, and the commands will be converted to torque using a
PD controller at $300\text{\,}\mathrm{Hz}$. ReSkin, measuring approximately 37
mm x 96 mm, is adhered to the palm of the Allegro Hand and outputs tactile
data in $\mathbb{R}^{16\times 3}$ at $78\text{\,}\mathrm{Hz}$. Since there is
high friction between the objects and ReSkin, the ReSkin palm is covered with
a 0.25 mm sheet of PET-like plastic to reduce the required torque from the
robot fingers for the task, thus avoiding overheating.

Simulation Setup. We use the IsaacGym [25] simulator to train our policy. Each
environment contains a robot hand and randomly scaled cylinder (Figure 5). We
use our model from Section 3 to simulate tactile data. The simulation
frequency is $200\text{\,}\mathrm{Hz}$, and the control frequency is
$10\text{\,}\mathrm{Hz}$. Each episode lasts 400 time steps
($20\text{\,}\mathrm{s}$) and resets when the object falls.

Figure 5: Train and test sets. We train with cylinders and no hand tilt in
simulation. We test on real objects with varying COM, geometries, and hand
angles. Motion capture markers on the objects are only for measuring task
metrics.

Ablations. We ablate tactile modalities to compare our methods, Signed 3-Axis
(S3-Axis) and Unsigned 3-Axis (U3-Axis). All policies are trained with the
same oracle policy, and all tactile policies use proprioception and 16 palm
taxels.

  1. 1.

Signed Shear Only. The tactile sensors only output ternary values for shear
forces: $S_{x,t},S_{y,t}\in\\{-1,0,1\\}$ and $S_{z,t}\in{0}.$

  2. 2.

Normal Only. The tactile sensors only output binary values for normal forces:
$S_{x,t},S_{y,t}\in\\{0\\}$ and $S_{z,t}\in\\{0,1\\}.$ This baseline is
similar to [8].

  3. 3.

Proprioception Only. The policy is trained without tactile sensors.

Metrics. We use the following metrics to measure policy performance. We use
Optitrack motion capture to track object pose at $240\text{\,}\mathrm{Hz}$ to
calculate these metrics. For all metrics, higher is better.

  1. 1.

Success Rate. Success is defined as the policy achieving an object translation
distance greater than 0 mm within 120 s. We set the threshold to be 0 mm
because some policies completely fail to move the object or drop it,
especially when the hand is tilted.

  2. 2.

Average Object Distance. The average maximum distance (cm) an object moves
along the desired translation axis, calculated from successful rollouts.

  3. 3.

Average Object Velocity. The average object velocity (cm/s) along the desired
translation axis, calculated from successful rollouts.

Object Dataset. We evaluate policies with the following in-domain (ID) and
out-of-domain (OOD) objects. Our test set consists of real objects only:
cylinder (ID), hammer (OOD, skewed COM), screwdriver (OOD, challenging
geometry), and water bottle (OOD, variable COM) (Figure 5). More object
details are in the Appendix.

##  6 Results and Analysis

An overview of our deployment pipeline is shown in Figure 4, and notably, all
evaluations are conducted in the real world.

We first test in-domain policy performance on the canonical cylinder object,
to compare Proprio-Only and a 3-axis tactile policy. Then, with the same
cylinder, we test policy adaptation to OOD hand tilt angles against gravity.
These tilt angles passively bias object motion opposing the desired
translation direction, thus requiring more force from fingers and gait
adaptation to complete the task. This experiment isolates the effect of
tilting the hand. Finally, we test policy adaptation to OOD objects and hand
tilt angles. We are interested in the limits of policy adaptation, so
experiments focus on the maximum angles at which policies are still capable of
completing the task.

###  6.1 Tactile Sensing Boosts In-Domain Task Performance and Adaptation to
OOD Hand Tilt

First, we evaluate the performance of S3-Axis and Proprio-Only policies with
the same setting as in training: translate a cylinder with no hand tilt
(Figure 6A). We deploy 5 real-world rollouts for each policy. The S3-Axis
policy achieves an increase of 38% translation distance (+2 cm) and 94%
greater object velocity (+0.16 cm/s) compared to the Proprio-Only policy.
Additionally, the S3-Axis policy performs more consistently, with lower
standard deviations for both task metrics.

Next, we test the effect of hand tilt, an OOD condition that increases the
object’s tangential force opposing the desired direction of translation. We
test hand tilts from 0-15 degrees in increments of 5 degrees. As shown in
Figure 6A, the translation distance and object velocity generally decrease as
the tilt angle increases. This indicates that task difficulty increases with
hand tilt. The finger gait adaptations are less effective and the policy is
slower to find effective adaptations to OOD physics. However, S3-Axis still
outperforms Proprio-Only in both task metrics, across all tilt angles.

###  6.2 Three-Axis Tactile Sensing Enables Superior Out-of-Domain Adaptation

Figure 6: A. Real-world cylinder rollouts with S3-Axis and Proprio-Only. This
shows superior S3-Axis policy performance compared to Proprio-Only for both ID
and OOD conditions. Error bars indicate standard deviation. B. Three-axis
tactile sensing policies demonstrate the best adaptation to OOD objects and
unseen hand orientations. S3-axis enables 93% average success rate and +51%
increase in distance over Proprio-Only. U3-axis enables +60% increase in
velocity over Proprio-Only. These metrics are averaged over all real-world OOD
experiments (30 rollouts/policy).

In this section, we simultaneously test policy adaptation to two classes of
perturbations: hand angle tilt and OOD objects. The three-axis tactile sensing
policies achieve the best policy adaptation. We benchmark our results against
Signed Shear Only, Normal Only, and Proprio-Only. In the remaining section and
Figure 6B, we show that across all OOD experiments, S3-Axis and U3-Axis
policies achieve, on average, superior performance compared to the other
baselines. In Figure 7A, we highlight interesting cases. Full experimental
results are in the Appendix.

Screwdriver - Challenging Geometry - No Hand Tilt. We evaluate our policy on
the challenging screwdriver object. The screwdriver is highly nonuniform,
featuring distinctly discontinuous surfaces that create multiple points of
contact with the palm. This leads to very different tactile signatures
compared to the training distribution. All policies are capable of the task,
but the U3-Axis policy is the most effective, achieving +6.3% improvement in
distance and +32% improvement in velocity over the next best policy.

Hammer - Skewed COM and Rectangular Geometry - 15-20 Degree Hand Tilt. The
hammer has a skewed COM, located around the intersection of the head and
handle. This introduces OOD physics, as torque from gravity applied at the COM
(unsupported by the palm) makes the hammer inherently less stable during
translation. Also, the handle is rectangular, so there is more contact with
the palm, compared to cylinders from training. All policies are capable at 15
degrees, but there is significant performance degradation at 20 degrees. Here,
signed shear is particularly valuable: the S3-Axis and Signed Shear Only
policies achieve the best task metrics. The S3-Axis policy achieves +149%
distance and +20% success over the next best policy. Surprisingly, the U3-Axis
policy completely failed with this case, and the other policies struggled to
manipulate the hammer. The failure modes of the policies are: 1) the policy
does not adapt to produce an effective gait within 120 s, or 2) the hammer
slips and falls.

Water Bottle - Variable COM and Irregular Geometry - 0-10 Degree Hand Tilt.
The water bottle has a variable COM as the water sloshes in the bottle and the
bottle geometry is an irregular cylinder. When the hand is tilted and at the
beginning of the task, the water is at the bottom of the bottle, which applies
a torque on that end. As the water bottle moves across, the COM shifts to the
center and eventually to the other end. The most common failure mode is when
the policy fails to adapt the finger gait within 120 s. The U3-Axis policy
achieves +12.5% distance and +153% velocity over the next best policy.

###  6.3 Experimental Analysis

Latent Space Analysis. We analyze the extrinsics vector $\hat{z_{t}}$ from our
experiments in Figure 7A with t-SNE to produce 3D plots in Figure 7B. The
plots visualize $\hat{z_{t}}$ from the whole duration of 15 rollouts per
policy (5 per object). We find a correlation between high dispersion of
$\hat{z_{t}}$ clusters and complete policy failure. U3-Axis completely failed
with the hammer at 20 degrees and Proprio Only completely failed with the
water bottle at 5 degrees. The $\hat{z_{t}}$ clusters for these failed
rollouts are more dispersed compared to more successful rollouts. In contrast,
the S3-Axis policy was more successful overall and exhibited a dense cluster
of $\hat{z_{t}}$ from all rollouts.

Tactile Policies Explore More Finger Gaits. We analyze the joint states of all
policies from our experiments in Figure 7A. We compare the standard deviation
of intersections through Poincaré sections of the phase portraits for each
finger motor and find that on average, all tactile policies explore more joint
states relative to Proprio Only, particularly for the hammer and water bottle
experiments. Figure 7C shows the contrast in joint state exploration in phase
portraits of S3-Axis and Proprio-Only, where S3-Axis has an increase of 35%
standard deviation of intersections through the Poincaŕe section. Greater
joint state exploration is potentially a factor in task success and an
indicator of gait adaptation; however, other variables such as gait cycle
timing and finger coordination are also important to consider. More analysis
is in the Appendix.

Figure 7: A) Real world policy adaptation experiments. We highlight
experiments near policy adaptation limits, and show that our S3-Axis and
U3-Axis policies generally achieve the best task metrics. Water in the bottle
is annotated for contrast. B) Latent space analysis. We use t-SNE to examine
the extrinsics vector $\hat{z_{t}}$ from our experiments in A. Complete policy
failure correlates with high dispersion of $\hat{z_{t}}$, as shown with
U3-Axis and the hammer, and Proprio Only with the water bottle. C) Tactile
policies explore more finger gaits. These phase portraits show how gaits
differ between policies. Intersections through the Poincaré section in the
S3-Axis phase portraits have +35% standard deviation compared to Proprio Only.

Real-World Videos. We show videos of real-world experiments with our methods
and ablations on our Project Website. These videos can be used to observe task
metrics and policy gait adaptation.

##  7 Conclusion

In this work, we propose a novel sensor model and show it can be used to train
RL policies in simulation for a challenging task. Our dexterous in-hand
translation policies with ReSkin can be zero-shot deployed to the real-world.
We show that ReSkin shear and normal force sensing consistently enables the
best ID performance and adaptation to both OOD hand orientations and objects.
We see these contributions as a key step towards enabling tactile feedback for
general in-hand manipulation.

Limitations and Future Work. We mainly study the new sensor model for touch
simulation and learning, and do not consider vision as an input. We will need
vision for precise goal-specification. Our control policy is frozen during
deployment, but it would be interesting to use real world tactile feedback to
fine tune the policy. We can also investigate domain adaptation methods and
sensor simulation improvements for continuous tactile signals, which could
enable better performance.

#### Acknowledgments

This work was conducted while Jessica Yin was an intern and Haozhi Qi was a
research fellow with Meta FAIR. In their academic roles at UC Berkeley, Haozhi
Qi and Jitendra Malik are supported in part by ONR MURI N0001421-1-2801. In
her academic role at the University of Pennsylvania, Jessica Yin was supported
by the NSF Graduate Research Fellowship under Grant No. 202095381. We thank
Mustafa Mukadam, Mike Lambeta, Tingfan Wu, Luis Pineda, Taosha Fan, Patrick
Lancaster, Mrinal Kalakrishnan, Raunaq Bhirangi, Carolina Higuera, Akash
Sharma, Suddhu Suresh, and William Yang for helpful discussions and feedback
throughout this work. We thank Dr. Nadia Figueroa, Ho Jin Choi, Tianyu Li, and
Harshil Parekh for access and assistance with the Franka robot arm and
Optitrack system for hardware experiments.

## References

  * Johansson and Flanagan [2009] R. S. Johansson and J. R. Flanagan.  Coding and use of tactile signals from the fingertips in object manipulation tasks.  _Nature Reviews Neuroscience_ , 2009.
  * Lee [2000] M. H. Lee.  Tactile sensing: new directions, new challenges.  _IJRR_ , 2000.
  * Howe [1993] R. D. Howe.  Tactile sensing and control of robotic manipulation.  _Advanced Robotics_ , 1993.
  * Yuan et al. [2017] W. Yuan, S. Dong, and E. H. Adelson.  Gelsight: High-resolution robot tactile sensors for estimating geometry and force.  _Sensors_ , 2017.
  * Lambeta et al. [2020] M. Lambeta, P.-W. Chou, S. Tian, B. Yang, B. Maloon, V. R. Most, D. Stroud, R. Santos, A. Byagowi, G. Kammerer, et al.  Digit: A novel design for a low-cost compact high-resolution tactile sensor with application to in-hand manipulation.  _RA-L_ , 2020.
  * Bhirangi et al. [2021] R. Bhirangi, T. Hellebrekers, C. Majidi, and A. Gupta.  Reskin: versatile, replaceable, lasting tactile skins.  In _5th Annual Conference on Robot Learning_ , 2021.
  * Qi et al. [2023] H. Qi, B. Yi, Y. Ma, S. Suresh, M. Lambeta, R. Calandra, and J. Malik.  General in-hand object rotation with vision and touch.  In _CoRL_ , 2023.
  * Yin et al. [2023] Z.-H. Yin, B. Huang, Y. Qin, Q. Chen, and X. Wang.  Rotating without seeing: Towards in-hand dexterity through touch.  In _RSS_ , 2023.
  * Khandate et al. [2023] G. Khandate, S. Shang, E. T. Chang, T. L. Saidi, J. Adams, and M. Ciocarlie.  Sampling-based exploration for reinforcement learning of dexterous manipulation.  In _RSS_ , 2023.
  * Xu et al. [2023] J. Xu, S. Kim, T. Chen, A. R. Garcia, P. Agrawal, W. Matusik, and S. Sueda.  Efficient tactile simulation with differentiability for robotic manipulation.  In _CoRL_ , 2023.
  * Wang et al. [2022] S. Wang, M. Lambeta, P.-W. Chou, and R. Calandra.  Tacto: A fast, flexible, and open-source simulator for high-resolution vision-based tactile sensors.  _RA-L_ , 2022.
  * Si et al. [2024] Z. Si, G. Zhang, Q. Ben, B. Romero, Z. Xian, C. Liu, and C. Gan.  Difftactile: A physics-based differentiable tactile simulator for contact-rich robotic manipulation.  _arXiv:2403.08716_ , 2024.
  * Ma et al. [2019] D. Ma, E. Donlon, S. Dong, and A. Rodriguez.  Dense tactile force estimation using gelslim and inverse fem.  In _ICRA_ , 2019.
  * Sferrazza et al. [2019] C. Sferrazza, A. Wahlsten, C. Trueeb, and R. D’Andrea.  Ground truth force distribution for learning-based tactile sensing: A finite element approach.  _IEEE Access_ , 2019.
  * Du et al. [2024] W. Du, W. Xu, J. Ren, Z. Yu, and C. Lu.  Tacipc: Intersection-and inversion-free fem-based elastomer simulation for optical tactile sensors.  _RA-L_ , 2024.
  * Cole et al. [1992] A. A. Cole, P. Hsu, and S. S. Sastry.  Dynamic control of sliding by robot hands for regrasping.  _IEEE Transactions on robotics and automation_ , 1992.
  * Yang and Posa [2024] W. Yang and M. Posa.  Dynamic on-palm manipulation via controlled sliding.  In _RSS_ , 2024.
  * Teeple et al. [2022] C. Teeple, B. Aktas, M. C.-S. Yuen, G. Kim, R. D. Howe, and R. Wood.  Controlling palm-object interactions via friction for enhanced in-hand manipulation.  _RA-L_ , 2022.
  * Lin et al. [2022] Y. Lin, J. Lloyd, A. Church, and N. F. Lepora.  Tactile gym 2.0: Sim-to-real deep reinforcement learning for comparing low-cost high-resolution robot touch.  _RA-L_ , 2022.
  * Chen et al. [2023] Z. Chen, S. Zhang, S. Luo, F. Sun, and B. Fang.  Tacchi: A pluggable and low computational cost elastomer deformation simulator for optical tactile sensors.  _RA-L_ , 2023.
  * Si and Yuan [2022] Z. Si and W. Yuan.  Taxim: An example-based simulation model for gelsight tactile sensors.  _RA-L_ , 2022.
  * Narang et al. [2021] Y. Narang, B. Sundaralingam, M. Macklin, A. Mousavian, and D. Fox.  Sim-to-real for robotic tactile sensing via physics-based simulation and learned latent projections.  In _ICRA_ , 2021.
  * Luu et al. [2023] Q. K. Luu, N. H. Nguyen, et al.  Simulation, learning, and application of vision-based tactile sensing at large scale.  _T-RO_ , 2023.
  * Todorov et al. [2012] E. Todorov, T. Erez, and Y. Tassa.  Mujoco: A physics engine for model-based control.  In _IROS_ , 2012.
  * Makoviychuk et al. [2021] V. Makoviychuk, L. Wawrzyniak, Y. Guo, M. Lu, K. Storey, M. Macklin, D. Hoeller, N. Rudin, A. Allshire, A. Handa, and G. State.  Isaac gym: High performance gpu-based physics simulation for robot learning.  In _NeurIPS Datasets and Benchmarks_ , 2021.
  * Cremer et al. [2020] S. Cremer, M. N. Saadatzi, I. B. Wijayasinghe, S. K. Das, M. H. Saadatzi, and D. O. Popa.  Skinsim: A design and simulation tool for robot skin with closed-loop phri controllers.  _IEEE Transactions on Automation Science and Engineering_ , 2020.
  * Kappassov et al. [2020] Z. Kappassov, J.-A. Corrales-Ramon, and V. Perdereau.  Simulation of tactile sensing arrays for physical interaction tasks.  In _IEEE/ASME International Conference on Advanced Intelligent Mechatronics_ , 2020.
  * Hellebrekers et al. [2019] T. Hellebrekers, O. Kroemer, and C. Majidi.  Soft magnetic skin for continuous deformation sensing.  _Advanced Intelligent Systems_ , 2019.
  * Morgan et al. [2022] A. S. Morgan, K. Hang, B. Wen, K. Bekris, and A. M. Dollar.  Complex in-hand manipulation via compliance-enabled finger gaiting and multi-modal planning.  _RA-L_ , 2022.
  * Han and Trinkle [1998] L. Han and J. C. Trinkle.  Dextrous manipulation by rolling and finger gaiting.  In _ICRA_ , 1998.
  * Saut et al. [2007] J.-P. Saut, A. Sahbani, S. El-Khoury, and V. Perdereau.  Dexterous manipulation planning using probabilistic roadmaps in continuous grasp subspaces.  In _IROS_ , 2007.
  * Rus [1999] D. Rus.  In-hand dexterous manipulation of piecewise-smooth 3-d objects.  _IJRR_ , 1999.
  * Bai and Liu [2014] Y. Bai and C. K. Liu.  Dexterous manipulation using both palm and fingers.  In _ICRA_ , 2014.
  * Mordatch et al. [2012] I. Mordatch, Z. Popović, and E. Todorov.  Contact-invariant optimization for hand manipulation.  In _Eurographics_ , 2012.
  * Fearing [1986] R. Fearing.  Implementing a force strategy for object re-orientation.  In _ICRA_ , 1986.
  * Arunachalam et al. [2023] S. P. Arunachalam, I. Güzey, S. Chintala, and L. Pinto.  Holo-dex: Teaching dexterity with immersive mixed reality.  In _ICRA_ , 2023.
  * Haldar et al. [2023] S. Haldar, J. Pari, A. Rai, and L. Pinto.  Teach a robot to fish: Versatile imitation from one minute of demonstrations.  In _RSS_ , 2023.
  * Arunachalam et al. [2023] S. P. Arunachalam, S. Silwal, B. Evans, and L. Pinto.  Dexterous imitation made easy: A learning-based framework for efficient dexterous manipulation.  In _ICRA_ , 2023.
  * Qin et al. [2022] Y. Qin, H. Su, and X. Wang.  From one hand to multiple hands: Imitation learning for dexterous manipulation from single-camera teleoperation.  _RA-L_ , 2022.
  * Wang et al. [2024] C. Wang, H. Shi, W. Wang, R. Zhang, L. Fei-Fei, and C. K. Liu.  Dexcap: Scalable and portable mocap data collection system for dexterous manipulation.  In _RSS_ , 2024.
  * OpenAI et al. [2019a] OpenAI, M. Andrychowicz, B. Baker, M. Chociej, R. Józefowicz, B. McGrew, J. Pachocki, A. Petron, M. Plappert, G. Powell, A. Ray, J. Schneider, S. Sidor, J. Tobin, P. Welinder, L. Weng, and W. Zaremba.  Learning dexterous in-hand manipulation.  _IJRR_ , 2019a.
  * OpenAI et al. [2019b] OpenAI, I. Akkaya, M. Andrychowicz, M. Chociej, M. Litwin, B. McGrew, A. Petron, A. Paino, M. Plappert, G. Powell, R. Ribas, J. Schneider, N. Tezak, J. Tworek, P. Welinder, L. Weng, Q. Yuan, W. Zaremba, and L. Zhang.  Solving rubik’s cube with a robot hand.  _arXiv:1910.07113_ , 2019b.
  * Handa et al. [2023] A. Handa, A. Allshire, V. Makoviychuk, A. Petrenko, R. Singh, J. Liu, D. Makoviichuk, K. Van Wyk, A. Zhurkevich, B. Sundaralingam, Y. Narang, J.-F. Lafleche, D. Fox, and G. State.  Dextreme: Transfer of agile in-hand manipulation from simulation to reality.  In _ICRA_ , 2023.
  * Chen et al. [2023] T. Chen, M. Tippur, S. Wu, V. Kumar, E. Adelson, and P. Agrawal.  Visual dexterity: In-hand dexterous manipulation from depth.  _Science Robotics_ , 2023.
  * Lin et al. [2024] T. Lin, Z.-H. Yin, H. Qi, P. Abbeel, and J. Malik.  Twisting lids off with two hands.  _arXiv:2403.02338_ , 2024.
  * Qi et al. [2022] H. Qi, A. Kumar, R. Calandra, Y. Ma, and J. Malik.  In-hand object rotation via rapid motor adaptation.  In _CoRL_ , 2022.
  * Yang et al. [2024] M. Yang, C. Lu, A. Church, Y. Lin, C. Ford, H. Li, E. Psomopoulou, D. A. Barton, and N. F. Lepora.  Anyrotate: Gravity-invariant in-hand object rotation with sim-to-real touch.  _arXiv preprint arXiv:2405.07391_ , 2024.
  * Lynch and Park [2017] K. M. Lynch and F. C. Park.  _Modern robotics_.  Cambridge University Press, 2017.
  * Schulman et al. [2017] J. Schulman, F. Wolski, P. Dhariwal, A. Radford, and O. Klimov.  Proximal policy optimization algorithms.  _arXiv:1707.06347_ , 2017.
  * WonikRobotics [2013] WonikRobotics.  Allegrohand.  https://www.wonikrobotics.com/, 2013.

##  Appendix A Demonstrations

###  A.1 Generalization to Diverse Objects

We demonstrate the generalization of our 3-axis tactile policies to diverse
objects, outside of the 4 real world objects in our test set. Please see the
supplemental video for footage.

Figure 8: Demonstrations with diverse objects outside of our main test set.
All items are being manipulated by either the U3-Axis policy or the S3-Axis
policy. The weights of the objects range from $57$ g (paper towel roll) to
$524$ g (rolling pin).

###  A.2 Real ReSkin and U3-Axis Model Comparison

Here, we compare our U3-Axis tactile skin model to a representative example of
real ReSkin. This is the same taxel and same rollout as the examples shown in
Figure 3.

Figure 9: Tactile signal comparisons for one taxel during an entire episode of
in-hand translation for U3-Axis and real ReSkin.

##  Appendix B Experiments

###  B.1 Object Dataset

  1. 1.

Cylinder (ID). This 3D printed uniform cylinder evaluates the policy on an ID
object. It has a $6.5$ cm diameter and $22.2$ cm length, weighing $108$ g.

  2. 2.

Hammer (OOD). The hammer tests adaptation to a skewed COM and rectangular
handle geometry. It is 3D printed and inspired by a real hammer from McMaster-
Carr111https://www.mcmaster.com/5914A15/. All dimensions are scaled by 200% to
match the scale of an Allegro Hand compared to a human hand. It has a total
length of $37$ cm, and the handle is $6.1$ cm by $4.3$ cm. The hammer head is
$20$ cm by $4.8$ cm by $6.4$ cm. The total weight is $284$ g.

  3. 3.

Screwdriver (OOD). The screwdriver evaluates adaptation to complex geometry
and multiple contacts. It is 3D printed and inspired by a real screwdriver
from McMaster-Carr222https://www.mcmaster.com/7127A34/, also scaled by 200%.
The handle diameters range from $3.8$ cm to $5.4$ cm, and the handle is $23.4$
cm. The total length is $39.4$ cm, and it weighs $180$ g.

  4. 4.

Water Bottle (OOD). The water bottle tests adaptation to a variable COM and
non-uniform cylindrical geometry. The water bottle diameter ranges from $6$ to
$7$ cm, and the total weight is $252$ g. It contains $191$ g of water.

###  B.2 Real World Evaluation Results

Summary tables for all real world experiments are reported below.

Water Bottle - Variable COM
---
Hand Tilt | Policy | Success (of 5) $\uparrow$ | Avg. Dist. (cm) $\uparrow$ | Avg. Vel. (cm/s) $\uparrow$
0 deg. | Signed 3-Axis | $100$ | $9.38\scriptstyle{\pm 1.61}$ | $0.08\scriptstyle{\pm 0.07}$
| Unsigned 3-Axis | $100$ | $8.13\scriptstyle{\pm 0.83}$ | $0.27\scriptstyle{\pm 0.02}$
| Signed Shear Only | $100$ | $5.57\scriptstyle{\pm 4.70}$ | $0.08\scriptstyle{\pm 0.11}$
| Normal Only | $100$ | $8.17\scriptstyle{\pm 0.33}$ | $0.1\scriptstyle{\pm 0.02}$
| Proprioception Only | $100$ | $10.76\scriptstyle{\pm 0.64}$ | $0.13\scriptstyle{\pm 0.08}$
5 deg. | Signed 3-Axis | $100$ | $6.20\scriptstyle{\pm 2.63}$ | $0.11\scriptstyle{\pm 0.051}$
| Unsigned 3-Axis | $100$ | $9.50\scriptstyle{\pm 0.64}$ | $0.33\scriptstyle{\pm 0.09}$
| Signed Shear Only | $80$ | $4.71\scriptstyle{\pm 0.19}$ | $0.08\scriptstyle{\pm 0.04}$
| Normal Only | $100$ | $8.44\scriptstyle{\pm 4.05}$ | $0.13\scriptstyle{\pm 0.10}$
| Proprioception Only | $0$ | $0$ | $0$
10 deg. | Signed 3-Axis | $100$ | $1.36\scriptstyle{\pm 1.63}$ | $0.03\scriptstyle{\pm 0.03}$
| Unsigned 3-Axis | 0 | 0 | $0$
| Signed Shear Only | 0 | 0 | $0$
| Normal Only | 0 | 0 | $0$
| Proprioception Only | 0 | 0 | $0$
Table 1:  Results for policy adaptation with the water bottle. Success out of
5 trials, translation distance averaged over successful trials, object
velocity averaged over successful trials.  Cylinder - ID Object
---
Hand Tilt | Policy | Success (of 5) $\uparrow$ | Avg. Dist. (cm) $\uparrow$ | Avg. Vel. (cm/s) $\uparrow$
0 deg. | Signed 3-Axis | $100$ | $7.43\scriptstyle{\pm 0.19}$ | $0.33\scriptstyle{\pm 0.01}$
| Proprioception Only | $100$ | $5.39\scriptstyle{\pm 1.61}$ | $0.17\scriptstyle{\pm 0.07}$
5 deg. | Signed 3-Axis | $100$ | $7.1\scriptstyle{\pm 0.47}$ | $0.34\scriptstyle{\pm 0.02}$
| Proprioception Only | $100$ | $4.25\scriptstyle{\pm 0.95}$ | $0.05\scriptstyle{\pm 0.05}$
10 deg. | Signed 3-Axis | $100$ | $7.62\scriptstyle{\pm 0.32}$ | $0.22\scriptstyle{\pm 0.02}$
| Proprioception Only | $100$ | $3.72\scriptstyle{\pm 0.71}$ | $0.06\scriptstyle{\pm 0.02}$
15 deg. | Signed 3-Axis | $100$ | $2.66\scriptstyle{\pm 0.96}$ | $0.042\scriptstyle{\pm 0.01}$
| Proprioception Only | $40$ | $0.16\scriptstyle{\pm 0.15}$ | $0.001\scriptstyle{\pm 0.003}$
Table 2: Results for policy adaptation with the cylinder. Success out of 5
trials, translation distance averaged over successful trials, object velocity
averaged over successful trials.  Hammer - Skewed COM
---
Hand Tilt | Policy | Success (of 5) $\uparrow$ | Avg. Dist. (cm) $\uparrow$ | Avg. Vel. (cm/s) $\uparrow$
15 deg. | Signed 3-Axis | $100$ | $12.53\scriptstyle{\pm 1.08}$ | $0.23\scriptstyle{\pm 0.21}$
| Unsigned 3-Axis | $100$ | $5.30\scriptstyle{\pm 4.40}$ | $0.05\scriptstyle{\pm 0.11}$
| Signed Shear Only | $100$ | $6.55\scriptstyle{\pm 1.35}$ | $0.25\scriptstyle{\pm 0.05}$
| Normal Only | $100$ | $7.36\scriptstyle{\pm 5.93}$ | $0.14\scriptstyle{\pm 0.16}$
| Proprioception Only | $100$ | $11.33\scriptstyle{\pm 1.02}$ | $0.23\scriptstyle{\pm 0.02}$
20 deg. | Signed 3-Axis | $100$ | $6.20\scriptstyle{\pm 2.63}$ | $0.11\scriptstyle{\pm 0.051}$
| Unsigned 3-Axis | $100$ | $9.50\scriptstyle{\pm 0.64}$ | $0.33\scriptstyle{\pm 0.09}$
| Signed Shear Only | $80$ | $4.71\scriptstyle{\pm 0.19}$ | $0.08\scriptstyle{\pm 0.04}$
| Normal Only | $100$ | $8.44\scriptstyle{\pm 4.05}$ | $0.13\scriptstyle{\pm 0.10}$
| Proprioception | $0$ | $0$ | $0$
Table 3:  Results for policy adaptation with the hammer. Success out of 5
trials, translation distance averaged over successful trials, object velocity
averaged over successful trials.  Screwdriver - Challenging Geometry
---
Hand Tilt | Policy | Success (of 5) $\uparrow$ | Avg. Dist. (cm) $\uparrow$ | Avg. Vel. (cm/s) $\uparrow$
0 deg. | Signed 3-Axis | $100$ | $3.91\scriptstyle{\pm 0.08}$ | $0.23\scriptstyle{\pm 0.08}$
| Unsigned 3-Axis | $100$ | $6.19\scriptstyle{\pm 1.09}$ | $0.33\scriptstyle{\pm 0.07}$
| Signed Shear Only | $100$ | $3.22\scriptstyle{\pm 2.5}$ | $0.14\scriptstyle{\pm 0.29}$
| Normal Only | $100$ | $3.49\scriptstyle{\pm 1.86}$ | $0.19\scriptstyle{\pm 0.09}$
| Proprioception Only | $100$ | $5.82\scriptstyle{\pm 1.14}$ | $0.25\scriptstyle{\pm 0.13}$
Table 4:  Results for policy adaptation with the screwdriver. Success out of 5
trials, translation distance averaged over successful trials, object velocity
averaged over successful trials.

###  B.3 Gait Analysis

We show the phase portraits of the middle finger motor for all policies
evaluated in the Hammer, 20 degree hand tilt experiment. For this specific
example, we analyze joint state exploration by measuring the standard
deviation of intersections through the Poincarè section, which is a plane
through $\text{joint velocity}=0$ and $\text{joint angle}<0.9$. Here, S3-Axis
has +35% greater deviation, U3-Axis has +18% deviation, Signed Shear Only has
+26% deviation, and Normal Only has -40% deviation, relative to Proprio Only.
Although Normal Only is the exception here, we find that on average with the
highlighted experiments in Figure 7, tactile policies generally explore more
joint states.

Figure 10: Phase portraits of the middle finger motor, for all policies
evaluated for the hammer at 20 degrees.

##  Appendix C Implementation Details

###  C.1 Reward Function

This is the reward function we use to train the oracle policy:

$r\doteq
r_{\text{iht}}+\lambda_{\text{rotp}}r_{\text{rotp}}+\lambda_{\text{goal}}r_{\text{goal}}+\lambda_{\text{drop}}r_{\text{drop}}+\lambda_{\text{pose}}r_{\text{pose}}+\lambda_{\text{work}}r_{\text{work}}+\lambda_{\text{torque}}r_{\text{torque}}+\lambda_{\text{force}}r_{\text{force}}$
(1)

The in-hand translation task is defined as
$r_{\text{iht}}\doteq-(x_{\text{obj\\_pos}}-x_{\text{obj\\_goal\\_pos}})^{2}$,
where $x_{\text{obj\\_pos}}$ is the object’s current position and
$x_{\text{obj\\_goal\\_pos}}$ is the object’s goal position. In this work,
randomized goal positions are a curriculum to produce a versatile, robust
finger gait. However, using only this reward term results in policies that
exploit inaccurate sliding contact simulation that do not transfer from sim-
to-real. Thus, we add additional penalties on object state.
$r_{\text{rotp}}\doteq-(x_{\text{obj\\_left\\_end}}-x_{\text{obj\\_right\\_end}})^{2}$
penalizes object rotation,
$r_{\text{goal}}\doteq(1\,\text{if}\,\sqrt{(x_{i,\text{obj\\_pos}}-x_{i,\text{obj\\_goal\\_pos}})^{2}}<\epsilon\,\text{else}\,0)$
as another reward when the object reaches the goal position, and
$r_{\text{drop}}\doteq\min(\max((x_{\text{obj\\_pos}}-x_{\text{threshold}}),-1),0)$
to penalize dropping the object.

For the emergence of the finger gait, we use the following penalty terms on
the robot hand, similar to [46, 7]: $r_{\text{pose}}\doteq-||$$q$ $-$
$q_{\text{init}}$$||^{2}_{2}$ to penalize finger pose deviation,
$r_{\text{work}}\doteq-$$\tau$^T$\bm{$\dot{q}$}topenalizeenergyconsumption,$r_torque
≐-——$\bm{$\tau$}$——^2_2$topenalizeappliedfingertorque,where.Furthermore,weadd$r_force
≐-14 ∑_i=1^4 (F_i -
μ)^2$topenalizethevarianceofforcesappliedbyallfingers,where$F_i$isthetotalforceappliedbyallrigidbodiesinonefinger,$i$correspondstoeachfinger,and$μ$isthemeanforceofallfingers.Weempiricallyfoundthistermtoencouragepolicybehaviorsthattransferwelltotherealworld.$

###  C.2 Hyperparameters

Reward Function
---
Reward Term |  Scale, $\lambda$
$r_{\text{iht}}$ | $700$
$r_{\text{rotp}}$ | $500$
$r_{\text{goal}}$ | $10$
$r_{\text{drop}}$ | $1000$
$r_{\text{pose}}$ | $-0.3$
$r_{\text{work}}$ | $-2.0$
$r_{\text{torque}}$ | $-0.1$
$r_{\text{force}}$ | $500$
Table 5: Reward scales for the oracle policy.  Simulation Physics
---
Parameter | Randomization Range or Value
Object Scales | $[0.7,1.2]$
Object Mass |  $[0.1,0.35]$ kg
Object Center of Mass (COM) |  $[-0.01,0.01]$ m
Coefficient of Friction | $[0.3,3.0]$
PD Controller Stiffness | $[2.9,3.1]$
PD Controller Damping | $[0.09,0.11]$
Contact Offset | $0.002$
Bounce Threshold Velocity |  $0.2$ m/s
Max Depenetration Velocity |  $1.0$ m/s
Table 6: Physics parameters for policy training in simulation. For the object
scales, the range is discretized by 0.02 and the scales are applied to one
canonical cylinder.  Tactile Skin Simulation
---
Term | Value
Sensing Range Threshold (Beyond Taxel) |  $1$ cm
Sensing Range Randomization | $15\%$
Sensor Noise | $3\%$
Threshold for Binary Values |  $0.0005$ N
Table 7: Parameters for our tactile skin model implemented in IsaacGym.
Binary Filter for Real ReSkin
---
Axis | Threshold | Current Buffer Size | History Buffer Size | Filter Window |  Filter $\alpha$
X (Shear) | $0.75$ | $10$ | $50$ | $10$ | $0.4$
Y (Shear) | $0.7$ | $10$ | $50$ | $10$ | $0.4$
Z (Normal) | $0.67$ | $10$ | $50$ | $10$ | $0.4$
Table 8: Binarization filter parameters for real ReSkin, which uses two
buffers to calculate the time derivative of the signals. We smooth all raw
ReSkin inputs with an exponential moving average filter prior to input to the
buffers, and the window size and $\alpha$ smoothing parameter is reported
above.

###  C.3 Training Settings

Simulation Settings. When training the oracle policy, we use 32768 parallel
environments, distributed on 4 GPUs, to train the agent. Each environment
contains a simulated Allegro Hand, simulated ReSkin palm collision geometries,
a cylinder with randomized parameters (Table 6), as well as random initial and
goal positions. The ReSkin palm tactile outputs are not simulated for the
oracle policy, but we include the collision geometries for the oracle policy,
to have consistent dynamics when training the student policy. The simulation
frequency is $200$ Hz, the control frequency is $20$ Hz, each episode lasts
for 400 control steps ($20$ s). The wall clock time for oracle policy training
is 1.68 days.

When training the tactile and proprioceptive policies, we simulate the ReSkin
palm outputs (Table 7), and instead we use 1000 parallel environments
distributed across 2 GPUs. Unless mentioned otherwise, the simulation settings
are the same as the oracle policy. The wall clock time for training the
student policy with tactile skin simulation is 6.27 hours.

Stable Grasp Generation. Both the oracle and tactile policies assume that the
object is initialized in a stable grasp, similar to [46, 7]. We pre-generate
caches of stable grasp poses for training.

First, we define canonical poses for the fingers, which varies for each scale
of the object. Because we train for a large range of scales, the same
canonical pose will not work for the entire range. Then, we define a range of
relative offsets within $[-0.25,0.25]$ rad to randomly sample from.
Additionally, we define a canonical position for the object and sample from a
relative offset of $[-10,10]$ cm along the x-axis for the object. The
canonical object pose is the same for all scales:
$[x,y,z,w_{\text{quat}},x_{\text{quat}},y_{\text{quat}},z_{\text{{quat}}}]=[0,0,0.52,0,-0.5,0,0.5]$.

We let the simulation run for 0.5 s. The finger and object positions are saved
(i.e., deemed a stable grasp) if the following conditions are satisfied:

  1. 1.

All fingertips are within 10 cm of the object.

  2. 2.

At least 2 fingers are in contact with the object.

  3. 3.

The object did not fall below the hand.

  4. 4.

The object is in contact with the palm.

We sampled 50,000 grasps and object poses for each object scale.

Goal Generation. The goal position for the object is sampled from a range of
relative offsets $[3,10]$ cm along the x-axis from the object’s canonical
pose. The minimum offset is $3$ cm to encourage meaningful object translation,
and the maximum is $10$ cm which is at the end of the canonical cylinder
length.

###  C.4 Hardware Setup

Figure 11: Friction modifications for Allegro Hand and ReSkin.

We place a 0.25mm sheet of PET-like plastic on top of the ReSkin palm to
reduce friction between the sensing skin and the object. Reducing the friction
will reduce the required torque from the fingers to move the object; this
avoids overheating the motors. The plastic sheet is not adhered to the sensing
skin.

We also place high-friction 3M tape (3M 300LSE) at the base of thumb and index
finger motors. This reduces object slip and somewhat helps with object
translation, since the policy sometimes pinches the object between these
fingers during part of the finger gait. We also cover the outside casing of
the fingertips with the same 3M tape, although they typically do not contact
the object.


11institutetext: Department of Mechanical Engineering, Politecnico di Milano,
Via La Masa 1, Milan 20156, Italy
11email<EMAIL_ADDRESS>
# Speed Profile Definition for GLOSA Implementation on Buses Based on
Statistical Analysis of Experimental Data ††thanks: This work is part of the
project ”Joint Research Lab per la Mobilità urbana”. A particular
acknowledgment goes to Azienda Trasporti Milanesi S.p.A. and Comune di Milano
for the possibility of performing the road testing campaign, as well as
Vodafone Italia S.p.A. and Vodafone Automotive for the design and development
of the communication architecture.

Daniele Vignarca  0000-0003-2281-6038 Stefano Arrigoni  0000-0002-5316-7387
Edoardo Sabbioni  0000-0002-4356-8814 Federico Cheli  0000-0002-9807-5056

###### Abstract

Intelligent Transportation Systems (ITS) are pushing an increasing interest
and development when dealing with eco-driving systems. In this framework, this
paper presents a method to define speed profiles specifically designed for
Green Light Optimal Speed Advisory (GLOSA) systems on buses. GLOSA aims to
optimize traffic flow by providing vehicles with real-time speed
recommendations synchronized with traffic signal timings. Leveraging
statistical analysis of experimental data collected from an urban bus, the
study develops a methodology to extract meaningful insights into bus behaviour
and traffic dynamics. The proposed approach considers road topology, scheduled
bus stops, and signal timings to define simple although suitable speed
profiles considering the peculiarities of the motion of a bus in an urban
scenario. Through extensive data collection robust statistical data are
defined, allowing the definition of vehicle motion profile for effectively
develop and implement GLOSA systems. This research contributes to the
advancement of Intelligent Transportation Systems by providing realistic data
and practical insights for optimizing bus operations in urban environments.

###### Keywords:

Bus GLOSA statistics ITS speed profile.

##  1 Introduction

The latest advancements in vehicle automation have revealed significant
potential for enhancing traffic management via Advanced Driver Assist Systems
(ADAS), benefiting both safety and environmental considerations. Green Light
Optimal Speed Advisory (GLOSA) systems represent a significant application in
the Cooperative-Intelligent Transportation System (C-ITS) field adopting
Vehicle-to-Everything (V2X) communication technology [8]. Specifically, Green
Light Optimal Speed Advisory (GLOSA) systems present an opportunity by
providing real-time speed recommendations to vehicles, aiming to synchronize
their movement with traffic light timings. This synchronization not only
reduces fuel consumption, emissions, and travel time but also improves overall
traffic flow [1, 7]. However, current GLOSA implementations predominantly
target private vehicles, lacking the necessary customization to deal with
urban bus peculiarities and its interaction with the infrastructure.

The literature nowadays addresses quite extensively the GLOSA, and C-ITS in
general, for conventional vehicles like cars. At the same time, within this
framework, there is emerging research starting to involve also the public
transportation vehicles. The focus for buses is typically posed either on the
comfort and regularity of the service for passengers [5] or on the energy
consumption which is reduced by adopting suitable speed profiles for the
vehicle, thus avoiding unnecessary stops[6]. [12] introduced an eco-driving
strategy tailored for connected electric buses at signalized intersections,
incorporating bus stops to underscore the advantages of multi-objective
optimization in reducing energy consumption. In [3] energy-saving profile
planning for connected and automated electric buses is addressed, leveraging
non-linear programming techniques to optimize speed profiles while considering
motor characteristics. Beyond adjusting vehicle speed via GLOSA systems,
alternative approaches like Transit Signal Priority (TSP) systems aim to
extend traffic light green times and reduce red times during bus intersection
negotiations [10]. Additionally, the concept of Green Light Optimal Dwell Time
Advisory (GLODTA) suggests increasing bus dwell time at stops [2]. Many
studies advocate for a combined approach [13, 4, 9], aiming to harness the
comprehensive benefits of multiple systems.

In terms of modeling bus trajectories, [6] distinguishes between the impact
areas of bus stops and signalized intersections, ultimately formulating an
optimization problem aimed at minimizing energy consumption through the use of
the Dijkstra algorithm. The authors in [12] provide instead a comprehensive
description of the bus stop negotiation process, taking into account the
necessary time required for the vehicle to decelerate approaching the stop and
to accelerate upon resuming its journey. All these studies showcase the
increasing interest and progress in refining speed advisory systems for urban
buses, highlighting the importance of customized strategies to enhance energy
efficiency as well as passengers’ comfort within public transportation
networks.

This work presents a statistical analysis based on experimental data collected
in real-world urban scenarios over one entire year. The outcome of this
analysis allows the design of speed profiles typical for a public
transportation vehicle, accounting for features such as the bus stop station
for getting passengers off and on. The main contributions of the paper are the
following:

  * •

Report real-world statistical data in terms of dwell time at different bus
stops for different clusters based on the day of the week and time of the day.

  * •

Define a set of suitable speed profiles for GLOSA implementation on buses
(B-GLOSA), based on real vehicle parameters such as acceleration/deceleration
as well as dwell time available from the statistical analysis.

The remainder of the paper is organized as follows: after the description in
Section 2 of the experimental setup used for the data acquisition during the
regular service of the bus, the statistical analysis of the collected data is
presented in Section 3. Section 4 is then devoted to proposing different
possible speed profiles for GLOSA implementation that can be designed based on
the aforementioned statistical analysis. Finally, Section 5 concludes the work
and indicates possible future developments.

##  2 Experimental data acquisition

This section presents the experimental setup for data acquisition during the
vehicle’s regular passenger service on the road. In particular, the vehicle
shown in Fig. 1a is equipped with a Global Positioning System (GPS), an
Inertia Measurement Unit (IMU), and the connection with the CAN-bus is
established to read information coming from ECU such as vehicle speed and
doors status. These data are used for vehicle localization presented in [11],
as ego-vehicle position is then used to identify the bus stops present on the
path.

(a)

(b)

Figure 1: Schematics of the sensor and data acquisition setup on the vehicle.

As far as the data acquisition is concerned, the following elements have been
enclosed into a compact architecture: (a) a computational unit (Intel NUC Core
i7 1165G7), operating on a soft real-time-based architecture using Robotic
Operating System (ROS); (b) a 4 TB hard disk for data storage; (c) a 5G modem
for internet connection; (d) a multi-port switch for the connection with
sensors. All these devices, as well as the sensors, are powered by the 24V
battery module for auxiliaries existing on the vehicle.

##  3 Statistical Analysis

The present section is intended to report the results of the statistical
analysis conducted on the basis of the data collected throughout the whole
year. Indeed, the focus is on the dwell time the vehicle spends in
correspondence with the 16 bus stops along the considered route (i.e., a
portion of the route followed by the circular trolley-bus line 90/91 which
goes around the city of Milan). Thanks to vehicle localization and the date-
time reconstruction from recorded timestamps, it was possible to identify the
bus stops along the path and cluster the dwelling times. It is worth
mentioning on the one hand that the stop condition is detected by the combined
matching of the following three conditions: (1) vehicle position located in
the $\pm$ 20 meters around the bus stop position; (2) null vehicle speed and
(3) opening of at least one of the four doors for passengers. On the other
hand, samples associated with a stop duration shorter than 5 seconds and
longer than 30 seconds are discarded, as they most likely are either not
significant or affected by external factors.

As mentioned, the data are categorized according to the day of the week and
the time of the day. In particular, the weekdays are divided into the
following four clusters: (1) h 7-10; (2) h 10-16; (3) h 16-19; (4) h 19-7.
These clusters are associated with different peak and off-peak hours for
workers and students. During the weekend days, the day hours are divided just
for the morning (i.e., h 7-13) and the afternoon (i.e., h 13-19), keeping the
same cluster for the night hours (i.e., h 19-7). Each cluster is then fitted
using a Generalized Extreme Value (GEV) distribution, described by a mean
value $\mu$ and a standard deviation $\sigma$. As an example, Fig. 2 reports
the distributions for each cluster of one of the most crowded stops along the
path (i.e., in correspondence of the central railway station).

(a)

(b)

Figure 2: GEV distribution fitting for different clusters at bus stop number
10 (i.e., central railway station).

Table 1 summarizes the results of the measured dwelling time for the clusters
mentioned above, for all the 16 bus stops considered, reporting the mean of
the dwelling time, as well as its standard deviation. It is worth specifying
that for some bus stops, especially when dealing with the weekend clusters,
the data are not reported as the number of significant samples was limited or
badly distributed, making the GEV fitting unreliable. As can be observed from
the statistical data, some trends with the time of the day can be barely
inferred. Indeed, the central hours of the day (i.e., h 10-16) are
characterized by a higher flow of passengers, making the dwelling time longer
on average. On the other hand, there seems to be a not-so-evident difference
between week-days and weekend-days, as the route is part of a quite busy
portion of the city with a considerable amount of passengers throughout the
whole day.

Table 1: Dwell time statistical data for different clusters. |  | Week | Weekend
---|---|---|---
|  | h 7-10 |  | h 10-16 |  | h 16-19 |  | h 19-7 |  | h 7-13 |  | h 13-19 |  | h 19-7
|  |  $\mu$ [s] |  $\sigma$ [s] | N |  |  $\mu$ [s] |  $\sigma$ [s] | N |  |  $\mu$ [s] |  $\sigma$ [s] | N |  |  $\mu$ [s] |  $\sigma$ [s] | N |  |  $\mu$ [s] |  $\sigma$ [s] | N |  |  $\mu$ [s] |  $\sigma$ [s] | N |  |  $\mu$ [s] |  $\sigma$ [s] | N
Stop 1 |  | 12 | 4 | 97 |  | 13 | 4 | 175 |  | 14 | 3 | 121 |  | 13 | 3 | 105 |  | 14 | 4 | 61 |  | 14 | 4 | 46 |  | 13 | 4 | 28
Stop 2 |  | 11 | 4 | 110 |  | 14 | 4 | 175 |  | 14 | 4 | 108 |  | 12 | 4 | 92 |  | 12 | 4 | 59 |  | 13 | 4 | 46 |  | 13 | 4 | 29
Stop 3 |  | 14 | 4 | 92 |  | 14 | 4 | 135 |  | 13 | 3 | 98 |  | 12 | 3 | 96 |  | 12 | 3 | 57 |  | 12 | 3 | 44 |  | 13 | 4 | 29
Stop 4 |  | 12 | 4 | 103 |  | 12 | 3 | 143 |  | 12 | 3 | 106 |  | 11 | 3 | 93 |  | 11 | 3 | 49 |  | 12 | 3 | 35 |  | 12 | 3 | 28
Stop 5 |  | 14 | 5 | 95 |  | 16 | 4 | 159 |  | 16 | 4 | 104 |  | 15 | 4 | 94 |  | 17 | 4 | 50 |  | - | - | 34 |  | 15 | 5 | 27
Stop 6 |  | 12 | 4 | 92 |  | 12 | 4 | 122 |  | 12 | 4 | 72 |  | 11 | 3 | 66 |  | 11 | 3 | 36 |  | 14 | 4 | 40 |  | - | - | 9
Stop 7 |  | 14 | 4 | 119 |  | 15 | 4 | 190 |  | 13 | 3 | 117 |  | 13 | 4 | 96 |  | 15 | 4 | 42 |  | 16 | 5 | 36 |  | 14 | 4 | 21
Stop 8 |  | 11 | 3 | 114 |  | 10 | 3 | 153 |  | 10 | 3 | 106 |  | 10 | 2 | 83 |  | 9 | 2 | 38 |  | 10 | 2 | 43 |  | 11 | 3 | 15
Stop 9 |  | 12 | 3 | 98 |  | 14 | 4 | 154 |  | 12 | 4 | 103 |  | 11 | 3 | 97 |  | 11 | 3 | 46 |  | 13 | 4 | 52 |  | 11 | 3 | 26
Stop 10 |  | 13 | 4 | 117 |  | 16 | 4 | 125 |  | 15 | 4 | 83 |  | 14 | 3 | 77 |  | 15 | 3 | 40 |  | 16 | 5 | 23 |  | 14 | 5 | 21
Stop 11 |  | 11 | 3 | 104 |  | 13 | 3 | 175 |  | 12 | 4 | 102 |  | 11 | 3 | 82 |  | 13 | 4 | 46 |  | 13 | 4 | 32 |  | 13 | 3 | 25
Stop 12 |  | 15 | 4 | 94 |  | 14 | 4 | 78 |  | 13 | 3 | 73 |  | 14 | 4 | 75 |  | 13 | 3 | 44 |  | 14 | 4 | 40 |  | 12 | 2 | 22
Stop 13 |  | 11 | 3 | 99 |  | 12 | 3 | 152 |  | 11 | 3 | 113 |  | 10 | 3 | 92 |  | 1 | 3 | 47 |  | 11 | 3 | 47 |  | 10 | 2 | 17
Stop 14 |  | 13 | 5 | 100 |  | 16 | 5 | 123 |  | 16 | 5 | 92 |  | 17 | 5 | 72 |  | - | - | 36 |  | 14 | 6 | 35 |  | - | - | 16
Stop 15 |  | 11 | 3 | 108 |  | 10 | 2 | 157 |  | 10 | 2 | 111 |  | 9 | 2 | 91 |  | 9 | 2 | 43 |  | 10 | 2 | 47 |  | 10 | 2 | 24
Stop 16 |  | 12 | 3 | 108 |  | 12 | 4 | 139 |  | 11 | 3 | 107 |  | 11 | 3 | 77 |  | 11 | 3 | 48 |  | 10 | 2 | 44 |  | 12 | 4 | 20
Mean |  | 12 | 4 |  |  | 13 | 4 |  |  | 13 | 3 |  |  | 12 | 3 |  |  | 12 | 3 |  |  | 13 | 4 |  |  | 12 | 3 |

##  4 Speed profile definition

As reported in the previous section, the information about the dwell time for
every bus stop as a function of the date-time opens the possibility of
designing speed profiles suitable for GLOSA implementation of public transport
vehicles such as buses (B-GLOSA). In this case, the vehicle motion
optimization has to consider that it is going to stop for sure at a given
known point. Moreover, common GLOSA algorithms typically look for an optimal
speed allowing the vehicle to cross the upcoming intersection with the green
light is on. Within this process, the dwelling time of the bus is an
additional variable to be taken into account when dealing with B-GLOSA design.
As a result, having on this quantity a robust statistics to rely on, allows
simplifying the modeling taking as a reasonable assumption a known constant
dwelling time.

In this paper, four different possible speed profiles are proposed to address
the B-GLOSA implementation. For the speed profile design, these quantities are
assumed to be known: initial vehicle state (i.e., location along the path and
speed), traffic light phases (i.e., minimum and maximum time available to
reach the intersection with green light), bus stop location and corresponding
dwell time (i.e., coming from statistics presented in Section 3), vehicle
speed and acceleration limits (i.e., for both passengers safety and comfort
issues). As far as the most suitable speed profile is concerned, it can be
split into two sections: an initial one from the initial point to the bus stop
and a final one from the bus stop up to the upcoming intersection. Each of
these two sections is assumed to be either a simple uniformly accelerated
motion or a uniformly accelerated motion followed by a constant speed motion.
As a result, combining these options together, the four possible speed
profiles shown in Fig. 3 are:

  * •

P1: uniform acceleration - brake - dwell - uniform acceleration;

  * •

P2: uniform acceleration - brake - dwell - uniform acceleration - constant
speed;

  * •

P3: uniform acceleration - constant speed - brake - dwell - uniform
acceleration;

  * •

P4: uniform acceleration - constant speed - brake - dwell - uniform
acceleration - constant speed.

It is worth highlighting that, since the acceleration for the second section
of the profile (i.e., from stop to intersection) is fixed, the whole section
is constrained by the geometric characteristic of the path (i.e., the distance
between stop and traffic light). As a consequence, depending on this
information the chosen profile will either have a constant speed part (i.e.,
P2/P4) or not (i.e., P1/P3) as described in the flowchart in Fig. 4a, being
the speed limit set to $40\text{\,}\mathrm{k}\mathrm{m}\,\mathrm{h}^{-1}$ for
safety reasons.

Figure 3: Designed possible speed profiles.

Besides the topology of the route, the most affecting parameter is the time
available to reach the intersection within the green light phase. In fact, to
prioritize travel time reduction, the profile is designed so that the vehicle
reaches the intersection at the switching time from red to green. The process
followed for the timing choice is detailed in the flowchart reported in Fig.
4b, being constrained the deceleration (i.e.,
$-1\text{\,}\mathrm{m}\,\mathrm{s}^{-2}$) and the acceleration of the final
section (i.e., $-1\text{\,}\mathrm{m}\,\mathrm{s}^{-2}$). As a consequence of
these assumptions, the remaining free variable for the speed profile design is
the acceleration in the initial stage from the initial condition to the start
of the braking manoeuvre.

(a)

(b)

Figure 4: speed profile choice flowcharts.

##  5 Conclusion

This research paper presented a robust statistical analysis based on real-
world data collection throughout an entire year from an instrumented trolley
bus during its regular passenger service. The outcome of these statistical
results in terms of average dwelling time at the bus stop represented the
basis for the speed profile definition when dealing with the implementation of
a Green Light Optimal Speed Advisory system applied to local public
transportation vehicles. In particular, four different speed profiles have
been proposed leveraging topographic, vehicle performances, and timing
constraints. The availability of such a great amount of data from a bus real
service allows to perform further and deeper analysis of the data collected on
the road, thus representing a straightforward future development for this
activity. On the other hand, the implementation and testing, both numerical
and experimental, of a GLOSA system based on the proposed speed profiles would
give the possibility to assess them from a quantitative point of view.

## References

  * [1] Asadi, M., Fathy, M., Mahini, H., Rahmani, A.M.: A systematic literature review of vehicle speed assistance in intelligent transportation system. IET Intelligent Transport Systems 15, 973–986 (8 2021). https://doi.org/10.1049/itr2.12077
  * [2] Gallo, F., Sacco, N.: On optimizing bus dwell times to reduce the probability of stopping for a red light at intersections. In: 2022 IEEE 25th International Conference on Intelligent Transportation Systems (ITSC). vol. 2022-October, pp. 1637–1644. Institute of Electrical and Electronics Engineers Inc. (2022). https://doi.org/10.1109/ITSC55140.2022.9922295
  * [3] Ji, J., Bie, Y., Shi, H., Wang, L.: Energy-saving speed profile planning for a connected and automated electric bus considering motor characteristic. Journal of Cleaner Production 448 (4 2024). https://doi.org/10.1016/j.jclepro.2024.141721
  * [4] Seredynski, M., Laskaris, G., Viti, F.: Analysis of cooperative bus priority at traffic signals. IEEE Transactions on Intelligent Transportation Systems 21, 1929–1940 (5 2020). https://doi.org/10.1109/TITS.2019.2908521
  * [5] Seredynski, M., Ruiz, P., Szczypiorski, K., Khadraoui, D.: Improving bus ride comfort using glosa-based dynamic speed optimisation. In: 2014 IEEE International Parallel & Distributed Processing Symposium Workshops. pp. 457–463 (2014). https://doi.org/10.1109/IPDPSW.2014.58
  * [6] Shan, X., Wan, C., Hao, P., Wu, G., Zhang, X.: Connected eco-driving for electric buses along signalized arterials with bus stops. IET Intelligent Transport Systems 17, 575–587 (3 2023). https://doi.org/10.1049/itr2.12285
  * [7] Simchon, L., Rabinovici, R.: Real-time implementation of green light optimal speed advisory for electric vehicles. Vehicles 2, 35–54 (3 2020). https://doi.org/10.3390/vehicles2010003
  * [8] Stahlmann, R., Möller, M., Brauer, A., German, R., Eckhoff, D.: Exploring glosa systems in the field: Technical evaluation and results. Computer Communications 120, 112–124 (5 2018). https://doi.org/10.1016/j.comcom.2017.12.006
  * [9] Teng, K., Liu, H., Liu, Q., Lu, X.: A cooperative control method combining signal control and speed control for transit with connected vehicle environment. IET Control Theory and Applications (4 2023). https://doi.org/10.1049/cth2.12608
  * [10] Truong, L.T., Currie, G., Wallace, M., Gruyter, C.D., An, K.: Coordinated transit signal priority model considering stochastic bus arrival time. IEEE Transactions on Intelligent Transportation Systems 20, 1269–1277 (4 2019). https://doi.org/10.1109/TITS.2018.2844199
  * [11] Vignarca, D., Arrigoni, S., Sabbioni, E.: Vehicle localization kalman filtering for traffic light advisor application in urban scenarios. Sensors 23(15) (2023). https://doi.org/10.3390/s23156888
  * [12] Zhang, Y., Fu, R., Guo, Y., Yuan, W.: Eco-driving strategy for connected electric buses at the signalized intersection with a station. Transportation Research Part D: Transport and Environment 128 (3 2024). https://doi.org/10.1016/j.trd.2024.104076
  * [13] Zimmermann, L., Coelho, L.C., Kraus, W., Carlson, R.C., Koehler, L.A.: Bus trajectory optimization with holding, speed and traffic signal actuation in controlled transit systems. IEEE Access 9, 143284–143294 (2021). https://doi.org/10.1109/ACCESS.2021.3122087