You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/_index.md
+95-26Lines changed: 95 additions & 26 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
+++
2
-
title = "Lies We Can Trust: Quantifying Action Uncertainty with Inaccurate Stochastic Dynamics Through Conformalized Nonholonomic Lie Groups"
2
+
title = "Lies We Can Trust"
3
3
[extra]
4
4
display_title = "<em>Lies</em> We Can Trust: Quantifying Action Uncertainty with Inaccurate Stochastic Dynamics Through Conformalized Nonholonomic <em>Lie</em> Groups"
Our goal is to provide, for a given admissible action `$u_{des}$`, a C-Space prediction region `$C^q \subseteq \mathcal Q$` that provably contains the next true unknown system configuration `$q_1$` with, at
45
+
**Setting**: Let `$q\in \mathcal Q$` be an n-dimensional vector denoting the C-Space configuration of a
46
+
robot with `$d$` degrees of freedom, `$\dot q \in Tq \mathcal Q$` be
47
+
the generalized velocity, and `$s := (q,\dot q) \in T\mathcal Q$` its state.
48
+
We consider both holonomic systems and robots subject to
49
+
nonholonomic constraints, i.e., non-integrable constraints on
50
+
the allowable velocities. These motion constraints are often
51
+
expressed in Pfaffian form as `$A(q)\dot q = 0$`, where`$A(q) \in \mathbb R^{k\times n}$`
52
+
is a configuration-dependent full-rank constraint matrix of
53
+
`$k$` constraints. We observe
54
+
the true dynamical system state at discrete points `$s_k := s(k\Delta t)$` where `$\Delta t$` is the sampling time between
55
+
measurements. We consider systems with time-invariant
56
+
stochastic dynamics whose Q can be represented by the
57
+
matrix Lie groups SE(2) and SE(3). This class is broad,
satellites, quadrupeds modeled by their center of mass,
61
+
and so on. We write the true
62
+
unknown dynamics of the observable discrete process as
63
+
```
64
+
$$
65
+
s_{k+1} = f(s_k, u_k, w_k), w_k ∼ P_{noise},
66
+
$$
67
+
```
68
+
where `$f$` is an unknown deterministic function, `$w_k$` is a
69
+
stochastic term drawn iid from an unknown distribution `$P_{noise}$`, and `$u_k \in \mathbb R^m$` is the control input. Inaccuracies in
70
+
modeling `$f$` may arise e.g., from domain shifts between fitting
71
+
and deployment, and result in epistemic uncertainty. On the
72
+
other hand, `$w_k$` makes the dynamics stochastic, introducing
73
+
aleatoric uncertainty, and may represent external disturbances
74
+
such as wind gusts, wheel slippage, or terrain bumps.
75
+
76
+
**Objective**: Our goal is to provide, for a given admissible action `$u_{des}$`, a C-Space prediction region `$C^q \subseteq \mathcal Q$` that provably contains the next true unknown system configuration `$q_1$` with, at
48
77
least, a user-defined probability `$(1-\alpha)$`, i.e.
where `$\alpha \in (0,1)$` is the user-set acceptable failure-probability.
84
+
While purely achieving this is trivial, e.g., by predicting the
85
+
entire space `$C^q =\mathcal Q$`, we additionally want `$C^q$` to be as
56
86
tight/volume-efficient as possible to make it practical for
57
-
downstream robotic tasks such as safe control. This is a chal-
58
-
lenging problem. We consider both aleatoric and epistemic
59
-
uncertainty, and do not make strong assumptions about the fi-
60
-
delity of ˜f , or the nature of the stochastic disturbances. While
61
-
we make no claims about how efficient our prediction regions
62
-
are, we show they can be tighter than existing methods.
63
-
87
+
downstream robotic tasks such as safe control. We consider both aleatoric and epistemic
88
+
uncertainty, and do not make strong assumptions about the fidelity of `$\tilde f$`, or the nature of the stochastic disturbances.
64
89
65
90
# CLAPS
66
91
92
+
**CLAPS** uses a dataset of state transitions `$(D_{cal})$` to *calibrate* the uncertainty estimates provided by approximate dynamics models.
93
+
**CLAPS** can be applied as a *post-hoc calibration layer* on top of existing Lie-algebraic Gaussian uncertainty estimators (e.g., Invariant EKF), turning their approximate covariances into *provably calibrated ones*.
94
+
By using a *symmetry-respective score metric*, our approach produces prediction regions that are more smaller than existing conformal prediction baselines that treat the robot's configuration as Euclidean.
**Method Figure.****C**onformal **L**ie-Group **A**ction **P**rediction **S**ets | Offline: a dataset of state transitions is used jointly with an approximate dynamical model to derive a rigorous symmetry-aware probabilistic error bound on the configuration predictions. Online: our algorithm takes in a desired action `$u_{des}$` and computes a *calibrated C-Space prediction region*`$\mathcal{C}^q$` that is marginally guaranteed to contain the true configuration resulting from executing `$u_{des}$`.
71
101
{% end %}
72
102
103
+
The prediction region constructed by **CLAPS** can be used for probably-safe control in three main ways:
104
+
- A given configuration `$g$`
105
+
- A C-space set `$C^q$` can be reconstructed, for example to check if `$C^q \subseteq \mathcal Q_{safe}$`, for a known safe set `$\mathcal Q_{safe} \subseteq \mathcal Q$`.
106
+
- The C-space set `$C^q$` can be inflated by the robot's radius and mapped to the workspace to perform collision checks with known obstacles.
107
+
108
+
For more details, check Section `$\S$`V in the paper.
109
+
73
110
# Experiments
74
-
TBD - explain
111
+
We compare **CLAPS** in both simulation (JetBot) and hardware (MBot) against seven baselines to demonstrate its improved *efficiency* and *representation quality*.
112
+
In both cases, we model the system as a second-order unicycle.
113
+
We perform standard system identification to estimate the inertial properties (mass and inertia)
114
+
75
115
76
116
## JetBot Experiments (Simulation)
77
117
78
-
put table, explain c-space below
118
+
In Isaac Sim, we independently sampled perturbations to the commanded actions to introduce aleatoric uncertainty into the system. Additionally, epistemic uncertainty arose from unmodeled effects (see paper) and imperfections in the inertial property estimation.
119
+
120
+
The Figure below demonstrate **CLAPS**' ability to fit the underlying dynamics uncertainty of the unknown system (represented by the Monte Carlo particles).
**Workspace (`$\mathbb{R}^2$`) footprint**. Workspace marginalization of the C-Space regions generated by the methods, over two of the 625 JetBot validation trials. Left: lower linear and angular velocity. Right: higher velocity case.
123
+
InEKF+MLE has expected pose `$\tilde{g}_1$` shown as the gray dot. All other methods
124
+
have the same expected pose, which is represented by the blue dot. Both InEKF+2M and InEKF+MLE produce the same uncertainty covariance for all initial states and control inputs.
125
+
The Point Prediction (PP) methods generate large regions with boundaries lying
126
+
outside the plots’ margins. SS EKF, InEKF, InEKF+2M, and InEKF+MLE
127
+
are not guaranteed to contain the resulting configuration at the user-set
128
+
likelihood.
129
+
Qualitatively, CLAPS appears to more accurately represent the
130
+
underlying uncertainty distribution than the symmetry-unaware baselines.
131
+
{% end %}
132
+
133
+
Quantitatively, **CLAPS** achieves the highest average Intersection over Union (IoU) with the MC particles, validating its alignment with the systems' uncertainty propagation, and **CLAPS** has a smaller C-space volume than all calibrated baselines in each of the 625 validation trials we tested.
{{ figure(alt=["LUCCa vs Baseline Performance Table"] src=["table_jetbot.svg"] dark_invert=[true] style="width:80%") }}
84
141
85
142
## MBot Experiments (Hardware)
86
143
87
-
epxlain
144
+
We also validated our method on an MBot (differential-drive vehicle) shown below. The configuration and velocity were estimated using a motion capture system.
88
145
89
146
{{ figure(alt=["LUCCa in Action", "Baseline Comparison"] src=["./mbot_videos/mbot_clip1.mp4", "./mbot_videos/mbot_clip2.mp4", "./mbot_videos/mbot_clip3.mp4"] subcaption=["**LUCCa in Action** - Robot navigating with calibrated uncertainty estimates", "**Baseline Comparison** - Traditional approach without conformal calibration"]) }}
90
147
148
+
Even with a relatively-small calibration dataset corresponding to `$\approx$`2 min of driving data `$(\lvert D_{cal}\rvert = 237)$`, our method was able to provably satisfy the user-specified safety guarantees, thanks to its *non-asymptotic guarantees*.
149
+
91
150
explain
92
151
93
152
put runtime in words.
94
153
154
+
The collection of system transitions is shown below.
0 commit comments