Who Went Where When on the Lunar Surface: Forensic Trajectory Analysis to Identify Byzantine Rovers
This preprint introduces a forensic trajectory analysis method for co-located lunar rover missions where some rovers may provide miscalibrated or deliberately falsified telemetry. An attribution-aware credibility method rejects whole non-credible rovers rather than individual outlier measurements and reconstructs trajectories from the remaining sources. In simulation it recalled up to 90.8% of non-credible measurements versus under 8% for robust pose-graph baselines, and on planetary-analogue data it was the only method to unambiguously expose a safety-zone incursion.
Can post-hoc pose-graph reconstruction identify which rovers are non-credible and recover accurate multi-rover trajectories when some rovers produce coherent but misleading measurement histories?
Future co-located lunar operations will combine rovers from multiple independent operators with only sparse downlinked pose priors and relative detections, and some operators may provide miscalibrated or deliberately falsified data. Robust pose-graph optimization assumes the true inlier set is internally consistent and outliers are smaller or inconsistent, so Byzantine rovers can create enough internally consistent false measurements to make truthful incriminating measurements appear as outliers.
Multi-robot C-SLAM pipelines such as DOOR-SLAM, Kimera-Multi, and Swarm-SLAM use robust pose-graph optimization back-ends, with pairwise consistency maximization (PCM) or graduated non-convexity (GNC) to reject false loop closures at the measurement level. These methods assume noisy or cooperative observations rather than adversarial sources that can supply coherent false trajectories.
The method first builds putative trajectories from pose priors, then scores every candidate subset of rovers by comparing the chi-square statistical consistency of relative detections inside the subset against detections crossing the subset boundary. It selects the credible subset with the highest internal-minus-boundary log probability, removes all priors and detections attributed to other rovers, adds weak smoothness motion constraints for the non-credible group, and runs pose-graph optimization using only the attributed credible measurements.
In simulated groups of 5 rovers with 5 runs per configuration, the method achieved 90.8% recall for range-bearing and 83.3% for bearing-only measurements with one Byzantine rover, and 89.2% and 64.6% with two collaborative Byzantine rovers. GNC achieved 7.1% (range-bearing) and 4.2% (bearing) with one Byzantine, and 4.4% and 5.0% with two; PCM achieved 6.4% and 5.4% using range-bearing-orientation. Method precision was 86.7% (range-bearing) and 80.8% (bearing) with one Byzantine, and 94.2% and 71.7% with two, while GNC precision was 20.1% and 19.8% for one and 13.5% and 18.3% for two; PCM precision was 31.1% and 45.2%. Under dropout, the method maintained 81.2% range-bearing recall at 50–80% dropout and 66.7% at 95%, versus 2.1% and 0.2% for GNC. On a three-rover planetary-analogue C-SLAM dataset with a simulated safety zone, the method identified the Byzantine rover and was the only one to unambiguously reconstruct its safety-zone intrusion.
The authors note future work should use real odometry, localisation, and relative detection front-ends; consider more Byzantine behaviours including multiple disjoint groups; and validate on real space or planetary analogue robotic platforms. Current results are based on idealised Gaussian-perturbed priors, small rover counts (five simulated, three in the real dataset), at most two collaborating Byzantine rovers, a known noise model, and an assumption that at least one and at most half the rovers are non-credible. No code release is reported in the paper.
Space agencies, commercial lunar operators, and multi-party mission consortia such as those operating under Artemis Accords safety-zone rules or missions like IM-2 could use this for post-hoc compliance auditing of co-located rover traffic. An operational system is likely 3+ years away because it first needs validated front-end data processing, agreed data-sharing and noise models, and testing on real multi-rover planetary analogue deployments; in the nearer term it could inform ground-based analytics and mixed-fleet autonomy testing.
Full paper
Who Went Where When on the Lunar Surface: Forensic Trajectory Analysis to Identify Byzantine Rovers
Published under CC BY-SA 4.0. Reproduced with attribution; original at arXiv:2610.02694 (PDF).
Abstract
Future planetary surface missions are likely to involve multiple independently operated rovers sharing the same deployment region, raising the need to verify compliance with operational constraints such as Lunar Safety Zones. Because continuous in-situ observability is rarely available, such verification requires post-hoc reconstruction of rover trajectories from sparse telemetry, including odometry, pose priors, and relative inter-rover detections. We introduce the problem of forensic trajectory analysis for non-cooperative planetary rovers in the presence of Byzantine agents: rovers that provide miscalibrated or deliberately falsified measurements to support an incorrect trajectory. We show that standard outlier-robust pose graph optimisation methods are vulnerable in this setting, because Byzantine rovers can generate measurements that are internally consistent and numerous enough to make truthful incriminating measurements appear as outliers. To address this, we propose an attribution-aware trajectory estimation method that reasons over rover credibility rather than individual measurement validity. The method evaluates candidate credible rover subsets by comparing the statistical consistency of their internal and boundary relative detections against provided priors, and then estimates trajectories using only measurements attributed to credible agents. Across synthetic simulations and real planetary-analogue trajectory data, the proposed method identifies Byzantine rovers and produces significantly more accurate trajectory estimates than existing robust pose graph optimisation baselines.
†
I Introduction
One of the key characteristics of the New Space era of the 21st century is the rise of space missions driven by private companies [1]. With lunar landings no longer solely the domain of individual nation-states, current and future missions involve the rovers and landers of multiple companies and countries working together in close proximity. This is exemplified by missions like IM-2, which involved multiple US and Japan-based companies [12]. For successful co-located operation of this kind, efforts like the Artemis Accords [21] and the Chinese-led International Lunar Research Station [23] are attempting to establish norms. One relevant provision of the Artemis Accords is that of Lunar Safety Zones, where stakeholders can establish areas where only certain parties may enter.
To be able to determine the compliance of different rovers with protocols like Lunar Safety Zones under the situational awareness constraints typical of planetary missions, a method for post-hoc determining the trajectories that rovers have taken based on relatively low-fidelity downlinked data is essential. This data includes metrics like odometry, map localisation estimates, and relative detections from infrequent images. For the real-world application of these trajectories, it is crucial to design a method that is Byzantine-resilient, which is to say capable of handling agents that are providing poorly calibrated or deliberately misleading data. This work introduces this problem of “forensic trajectory analysis”: post-hoc determination of multi-rover trajectories in the presence of adversarial measurements.
This paper makes three contributions:
- We formulate forensic trajectory analysis for non-cooperative planetary rovers as a post-hoc state-estimation problem with Byzantine measurement sources;
- We propose an attribution-aware credibility inference method that scores candidate rover subsets using internal consistency and boundary inconsistency of relative detections; and
- We demonstrate, using synthetic and planetary-analogue trajectories, that conventional robust pose graph optimisation (PGO) methods can be systematically misled by Byzantine agents, while the proposed method identifies non-credible rovers and improves trajectory reconstruction.
II Related work
This work sits at the intersection of multi-robot localisation, robust PGO, and Byzantine-resilient robotics. Multi-robot localisation provides the estimation framework for fusing odometry, pose priors, and inter-robot observations. Robust PGO addresses false loop closures and other measurement outliers. Byzantine robotics studies unreliable or adversarial agents in distributed systems. Crucially, forensic trajectory analysis builds on and differs from each of these settings: our task is post-hoc reconstruction from attributed measurements, where entire rovers may act as a coherent but unreliable source of evidence.
II-A Multi-Robot Localisation
One of the key problems in multi-agent robotic systems is that of localisation. While methods for accurate localisation of individual rovers over time exist [verma.etal.2024_enabling, 13], there has also been considerable investigation into how the relative detections between multiple rovers can be leveraged for even better estimation [4].
These kinds of approaches are used as the basis for multi-rover collaborative localisation and mapping (C-SLAM), with key implementations DOOR-SLAM [15], Kimera-Multi [3], and Swarm-SLAM [14]. Approaches for especially challenging environments like caves, mines, and planetary surfaces have been developed [8, 2, 16].
These systems generally assume that robots are cooperative participants in a shared estimation problem, whereas forensic trajectory analysis treats rovers as independently operated sources of evidence whose measurements may not be credible.
II-B Robust Pose Graph Optimisation
Pose graph optimisation is a form of Bayesian state estimation that is commonly used for SLAM back-ends, especially for state-of-the-art multi-agent SLAM [15, 3, 8, 14], with well-known forms for factors representing pose priors, odometry, relative measurements, and loop closures [7].
Perceptual aliasing causing loop closure outliers is a key challenge of SLAM. Two primary underlying approaches for outlier-robust PGO are Pairwise Consistency Maximisation (PCM) [19], which underpins [15, 8], and Graduated Non-Convexity (GNC) [24], which underpins [3, 14, 2]. These are the two methods that we compare against in this paper.
PCM [19] and variations [22, 9] robustly merge two maps with loop closures between them by leveraging graph theory to efficiently find the maximum clique of pairwise-consistent measurements. GNC [24] is a more general method for robust optimisation of any kind of factor graph, which uses robust cost functions with an iterative solver.
These robust PGO methods are very effective at handling perceptual aliasing and allowing successful SLAM back-end optimisation, but as we discuss further in Sec. III-C, they are insufficient for identifying and rejecting actively misleading information from Byzantine agents.
II-C Byzantine Robotics
While much of the literature focuses on the cases of cooperative agents working together to solve problems, there is also investigation into resilience against Byzantine agents – those who are adversarial or misleading when participating in multi-agent systems. While Byzantine resilience is relevant to all manner of distributed and networked systems, within robotics it is frequently considered in the context of multi-agent consensus [18, 25] or distributed learning [5, 17].
At the specific intersection of Byzantine resilience for robotic localisation, problems like Byzantine detection by comparing against GNSS signals in UAV swarms [11], and target and formation tracking [6, 10] have been investigated. These works address challenges in an online filtering context and with local, constrained communication and connectivity. This contrasts against our post-hoc, forensic trajectory analysis focus in this paper, which motivates using PGO as our underlying method and hence the comparisons to PCM and GNC.
The closest work we are aware of is by [20], which also explicitly considers the problem of Byzantine agents in a SLAM or PGO-based setting. Our work contrasts against theirs in a few key ways: we consider more advanced Byzantine behaviour including groups of consistent, collaborative agents; we use a statistically-motivated criteria for identifying Byzantine agents; we explain and demonstrate the vulnerability of robust PGO to Byzantine attacks; and we include the attribution of measurements and the identification of Byzantine agents as a first-class output of our system.
Taken together, there is a clear gap in the literature: existing multi-robot localisation methods provide the estimation machinery, and robust PGO methods provide measurement-level outlier rejection, but neither addresses adversarial measurement sources that can generate coherent false trajectories. In contrast, Byzantine robotics studies unreliable agents, but rarely in a post-hoc pose-graph reconstruction setting with attributed odometry, pose priors, and relative detections. Our work addresses this gap by treating credibility as a property of rovers rather than individual measurements.
III Method
In this section, we outline the problem formulation, our method for identifying non-credible rovers, and how we then calculate final trajectories. The process consists of first estimating putative trajectories from pose priors only; second scoring candidate credible rover subsets using internal and boundary consistency of relative detections; third selecting the credible set; and finally running PGO using only measurements attributed to credible rovers and weak smoothness constraints. This is illustrated further in Fig. 1. We then have a brief discussion of the fundamental limitations of robust PGO methods and how attribution of data is the key element that allows our method to work successfully in the Byzantine case.
III-A Problem Definition
Each rover provides trajectory priors and relative detections, but some rovers may be non-credible sources. Our goal is to identify the credible sources and reconstruct all rover trajectories. We assume that at least one and no more than half of the rovers are non-credible.
Consider a collection of |R| rovers
R=\{R_{1},R_{2},R_{3},\ldots,R_{|R|}\}\text{.}If the state of a rover R_{r} at time t is denoted by
x^{(r)}_{t}\in\text{SE}(2)and the overall state of all rovers over all times t=0,\ldots,T is denoted by
X=\{x^{(r)}_{t}\mid r\in\{1,\ldots,|R|\},t\in\{0,\ldots,T\}\}\text{,}we are interested in finding the optimal state estimate X^{\star} that approximates the real, ground-truth states of the rovers \tilde{X}. In this work, we use x^{(r)}_{t}\in\text{SE}(2) as we assume pose priors and detections are reported relative to an overhead two-dimensional map, like those commonly used for on-board navigation.
We consider two kinds of measurements z, required to be provided by rover operators to achieve this goal – pose priors, and relative detections of other rovers. It is reasonable to assume these measurements are available from rover operators, as they are readily derived from crucial localisation, navigation, and situational awareness systems. The pose priors have uncertainty at each timestep, and can take either an absolute form (like those from map-based localisation), or a relative form (like those from odometry.) Hence we have
z_{P}\in Z_{P}\text{ where }Z_{P}=\{z^{(r)}_{t}\text{ or }z^{(r)}_{t-1,t},\ldots\}\text{,}where the measurement takes the form of an absolute or relative pose z_{P}\in\text{SE}(2). For the relative detections of one rover by another at a particular timestep, we have
z_{D}\in Z_{D}\text{ where }Z_{D}=\{z^{(r_{1},r_{2})}_{t},\ldots\}\text{.}In this work, we consider three kinds of relative detections – bearing only, where z_{D}\in[$$,$$), range and bearing, where z_{D}\in\mathbb{R}\times[$$,$$), and full degree-of-freedom range, bearing, and orientation, where z_{D}\in\text{SE}(2).
For some subset of rovers
C\in\mathcal{P}(R)where \mathcal{P}(S) denotes the power set of S, we can consider the relevant subset of measurements originating from rovers in C,
Z^{C}=Z^{C}_{P}\cup Z^{C}_{D}=\{z^{(r)}_{t}\mid R_{r}\in C\}\cup\{z^{(r_{1},r_{2})}_{t}\mid R_{r_{1}}\in C\}\text{.}If we say that a rover R_{r} is credible, we take that to mean that each measurement it provides accurately represents the world state up to well-characterised noise, i.e.
z^{(r)}\sim\mathcal{N}\left(h(\tilde{X}),\Sigma^{(r)}\right)for the relevant measurement function h(X). If a certain subset of rovers \tilde{C} are credible, and all other rovers R\setminus\tilde{C} are non-credible, then our ultimate goal is to find the optimal state estimate X^{\star} which based on only measurements from credible rovers Z^{\tilde{C}}. As the true set of credible rovers \tilde{C} is impossible to know, the problem is realised in two steps where first an estimate of the credible rovers C^{\star} is found, and then a state estimate X^{\star} is made by considering Z^{C^{\star}}. This two step structure was found to perform more reliably than a joint optimisation in preliminary experiments.
III-B Identifying Byzantine Rovers
We first consider putative trajectories \hat{X} with uncertainties \hat{\Sigma} for each rover based on the pose priors data only. These are found either taking \hat{X}, \hat{\Sigma} from absolute priors directly, or by solving the following in the case where relative priors Z_{P} are provided:
\hat{X},\hat{\Sigma}\leftarrow\argmax_{X}p(X\mid Z_{P})\text{.}Then, for a candidate set of credible rovers C\in\mathcal{P}(R), we consider the set of internal relative detections
Z^{C}_{I}=\{z^{(r_{1},r_{2})}_{t}\mid z\in Z_{D},R_{r_{1}}\in C,R_{r_{2}}\in C\}i.e. the measurements between two rovers in C, as well as the set of boundary relative detections
Z^{C}_{B}=\{z^{(r_{1},r_{2})}_{t}\mid z\in Z_{D},R_{r_{1}}\in C\veebar R_{r_{2}}\in C\}where \veebar represents exclusive OR. This is illustrated graphically in Fig. 1(c), with C=\{R_{A},R_{B}\}. We are interested in determining the degree to which these measurements align with the provided priors – more specifically, we want to determine how well the internal set of measurements are consistent with the priors and how poorly the boundary set of measurements are consistent with the priors. As such, we can then calculate the internal and boundary sets of residual errors for some error function e(\cdot) as
\displaystyle E^{C}_{I} \\ \displaystyle=\{e(z,\hat{X},\hat{\Sigma})\mid z\in Z^{C}_{I}\}\text{ and} \\ \displaystyle E^{C}_{B} \\ \displaystyle=\{e(z,\hat{X},\hat{\Sigma})\mid z\in Z^{C}_{B}\}\text{.}If |Z^{C}_{I}|=0, the internal boundary set is degenerate and the candidate set C is skipped.
To determine the form of e(z,X,\Sigma) for the relative detection z^{(r_{1},r_{2})}_{t}, we first consider the raw measurement residual
e_{0}=z^{(r_{1},r_{2})}_{t}\ominus h(\hat{x}^{(r_{1})}_{t},\hat{x}^{(r_{2})}_{t})for measurement function h(\cdot). The effective information matrix, taking into account the uncertainty of the relative detection itself \Sigma_{D}\triangleq\hat{\Sigma}^{(r_{1},r_{2})}_{t} and the uncertainties of the two relevant poses \Sigma_{1}\triangleq\hat{\Sigma}^{(r_{1})}_{t} and \Sigma_{2}\triangleq\hat{\Sigma}^{(r_{2})}_{t}, is
\Lambda_{\text{eff}}=\Sigma_{\text{eff}}^{-1}=\left(\Sigma_{D}+H_{1}\Sigma_{1}H_{1}^{\top}+H_{2}\Sigma_{2}H_{2}^{\top}\right)^{-1}for Jacobians
H_{1}=\frac{\partial h}{\partial x_{1}}\text{ and }H_{2}=\frac{\partial h}{\partial x_{2}}evaluated at
x_{1}=\hat{x}^{(r_{1})}_{t}\text{ and }x_{2}=\hat{x}^{(r_{2})}_{t}\text{.}Interpreting the raw residual under these uncertainties therefore leads to the overall error function
e(z,X,\Sigma)=\lVert z^{(r_{1},r_{2})}_{t}\ominus h(\hat{X})\rVert^{2}_{\Sigma_{\text{eff}}}=e_{0}^{\top}\Lambda_{\text{eff}}\,e_{0}\text{.}This function has the nice property that as the pose prior uncertainties increase, a measurement that aligns less accurately with \hat{X} will be punished less and receive a lower residual.
If the noise is properly characterised, it is determined that we would expect the residual to follow the distribution
\lVert z-h(x)\rVert^{2}_{\Sigma}\sim\chi^{2}_{\nu}for \nu degrees of freedom in the measurement (i.e. \nu=1 for bearing, \nu=2 for range-bearing, \nu=3 for full state). As such, we can determine the p-values indicating the probability with which, all rovers being credible, we would expect to see these internal and boundary residuals. Due to the additivity of the \chi^{2} distribution, these can be calculated as
\displaystyle p^{C}_{I} \\ \displaystyle=P\left(\chi^{2}_{\nu\,\lvert r^{C}_{I}\rvert}\geq\textstyle\sum_{e\in E^{C}_{I}}e\right)\text{ and } \\ \displaystyle p^{C}_{B} \\ \displaystyle=P\left(\chi^{2}_{\nu\,\lvert r^{C}_{B}\rvert}\geq\textstyle\sum_{e\in E^{C}_{B}}e\right)\text{.}Finally, we can find a quality metric q^{C} for a particular subset C as the difference of log probabilities
q^{C}=\log p^{C}_{I}-\log p^{C}_{B}\text{.}Hence, our estimated set of credible rovers C^{\star} can be found as
C^{\star}=\argmax_{C\in\mathcal{P}(R)}q^{C}\text{.}Intuitively, we are interested in finding the group of rovers that simultaneously has the least surprising relative measurements between each other and has the most surprising relative measurements between themselves and out-group rovers.
Once we have our estimated set of credible rovers C^{\star}, we choose to trust the measurements attributed to these rovers, Z^{C^{\star}}. This set does not include any of the priors or relative detections that come from the deemed non-credible rovers R\setminus C^{\star}. Discounting the priors completely in this way causes the pose graph to become under constrained, so different constraints need to be added. The laws of physics dictate that even for a non-credible rover, the state x^{(r)}_{t+1} is going to be within some neighbourhood of x^{(r)}_{t}, represented by an expected relative pose offset
\breve{z}\in\text{SE}(2)=[\delta_{\text{forwards}},0,0]which indicates expected forwards motion and a corresponding, considerably large uncertainty in all three components. As such, we supplement our observations with “smoothness constraints”
\breve{Z}=\{\breve{z}_{t,t+1}^{(r)}\mid r\in R\setminus C^{\star},t\in\{0,\ldots,T-1\}\}We can then finally use typical pose-graph optimisation via the Levenberg-Marquardt method to estimate the trajectories of all rovers X^{\star}, which optimises:
X^{\star}=\argmax_{X}p\left(X\mid Z^{C^{\star}},\breve{Z}\right)\text{.}An overview of this method is shown in Alg. 1.
III-C Contrasting Against Robust Methods
The fundamental difference between our method and robust PGO methods like GNC and PCM is that we consider the attribution of measurements. Robust PGO methods are designed to mitigate false positive loop closures in SLAM, and as such have an underlying assumption that the true set of inlier measurements will be internally consistent and any consistent set of outliers will be smaller than the true set. This is encapsulated in their overall optimisation formulation
X^{\star}=\argmax_{X}p\left(X\middle|Z\right)which includes all measurements Z.
In the Byzantine case, this assumption no longer holds – Byzantine agents can produce essentially arbitrary volumes of data that is internally consistent and consistent with the true world state of credible agents, while being misleading about their own state. As an illustrative example, consider Fig. 1(a), where believing rover C’s false detections and consistent priors (four measurements in total) only requires disbelieving two true, incriminating edges. Maximising the likelihood over all measurements is going to prefer the solution which disbelieves fewer measurements. Thus, treating the Byzantine identification problem as a problem of rejecting outlier measurements fails systematically under coherent Byzantine attacks, and this is supported experimentally in the following section.
Furthermore, while GNC implicitly allows for outliers in odometry or pose prior measurements, PCM explicitly only identifies relative detections as outliers when they disagree with priors and so will always side with misleading measurements over incriminating ones. Considering the attribution of measurements, as our method does, is crucial in the Byzantine case.
IV Experiments
In this section, we evaluate the performance of our method against both simulated and real planetary-analogue trajectory data. We compare against GNC and PCM as representatives of a robust PGO approach, to demonstrate that this class of method – designed for robustness to false positive loop closures – is fundamentally untenable in the Byzantine case.
IV-A Simulation Definition
We begin by demonstrating our method in a 2D simulation environment. We consider groups of |R|=5 rovers, and evaluate across five different initial positions.
IV-A1 Motion Model
Each rover is modelled as a white noise on acceleration model, and hence is parameterised as
R_{r}=(x_{0},v_{0},\omega_{0},\sigma_{v},\sigma_{\omega})^{(r)}\text{,}with update equations
\displaystyle v_{t} \\ \displaystyle\sim\mathcal{N}(v_{t-1},\sigma_{v}^{2}) \\ \displaystyle\omega_{t} \\ \displaystyle\sim\mathcal{N}(\omega_{t-1},\sigma_{\omega}^{2}) \\ \displaystyle x_{t} \\ \displaystyle=x_{t-1}+\begin{bmatrix}v_{t}\cos(\theta_{t-1}+\omega_{t})\\
v_{t}\sin(\theta_{t-1}+\omega_{t})\\
\omega_{t}\end{bmatrix}\text{.}We use parameters v_{0}=$1\text{\,}\mathrm{m}\text{\,}{\mathrm{s}}^{-1}$, \sigma_{v}=$0.02\text{\,}\mathrm{m}\text{\,}{\mathrm{s}}^{-1}$, \omega_{0}=$0\text{\,}{\mathrm{s}}^{-1}$ and \sigma_{\omega}=$0.2\text{\,}{\mathrm{s}}^{-1}$, which produce relatively smooth trajectories representative of rover traverses.
IV-A2 Trajectory Priors
We consider two modes of supplied trajectory priors – relative and absolute – both created by perturbing the true trajectory with Gaussian noise. This is somewhat idealised, but serves to demonstrate the capability of our method independent of front-end performance.
For the former, relative case, we use a noise model of \sigma_{\text{forward}}=$0.3\text{\,}\mathrm{m}$, \sigma_{\text{left}}=$0.2\text{\,}\mathrm{m}$, \sigma_{\theta}=$$ to perturb the true relative pose between subsequent timesteps. A single pose prior at t=0 is also used to ground the odometry in the world frame, with noise model \sigma_{x}=\sigma_{y}=$2\text{\,}\mathrm{m}$, \sigma_{\theta}=$$.
For the latter, absolute, case, we use a noise model of \sigma_{x}=\sigma_{y}=$1\text{\,}\mathrm{m}$, \sigma_{\theta}=$$ to independently perturb the true absolute pose at each timestep.
For the smoothness constraints \breve{z} we use \delta_{\text{forward}}=$1\text{\,}\mathrm{m}$, \sigma_{\text{forward}}=$0.5\text{\,}\mathrm{m}$, \sigma_{\text{left}}=$0.25\text{\,}\mathrm{m}$, and \sigma_{\text{turn}}=$$.
IV-A3 Relative Detections
For the relative detections between rovers, we use a noise model of \sigma_{\text{range}}=$3\text{\,}\mathrm{m}$, \sigma_{\text{bearing}}=$$, and \sigma_{\text{orientation}}=$$. Each rover only produces a relative observation of other rovers every t=5 timesteps, and only observes rovers within a certain field-of-view of its forwards and backwards directions. We evaluate the effect of differing fields of view in the following section.
IV-A4 Byzantine Behaviour
We consider the effects of both one and two Byzantine agents on our group of five rovers. We leverage the concept of a “purported trajectory” to define the Byzantine behaviour, where this is the path that they intend for us to believe was taken. All measurements sourced from a Byzantine agent are based on perturbed (as above) measurements from this purported trajectory. Credible rovers still provide relative measurements to the Byzantine rover’s true state, as expected. Additionally, in the case of two Byzantine agents, we assume they are collaborating; i.e. the relative detections they provide between one another correspond to the differences between their respective purported trajectories and hence are internally consistent.
We consider a range of classes of purported trajectories. All are based on transformations of the rover’s initial trajectory, with different combinations of distance scaling, and offsets in translation and rotation applied. We additionally consider a “late turn”, where the rover’s purported trajectory aligns with its true trajectory for the first half of the experiment, and then diverges for the second half.
IV-B Simulation Experiments
The simulation environment is used for a series of comparisons against GNC and PCM. The most reasonable relative measurements to expect in a non-cooperative planetary context are either bearing (B) or range-bearing (RB), so we use these degrees of freedom to evaluate our method and GNC. The full three degree-of-freedom range-bearing-orientation (RBO) measurements are required for PCM, so we evaluate that method using these. We use N=5 runs with varied trajectories for each individual configuration of parameters.
IV-B1 One Byzantine Rover
First, we consider the cases of a single Byzantine rover, relative and absolute trajectory priors, and front and rear fields of view of 180°, 120°, and 90°. As demonstrated in Fig. 2, while all methods provide relatively accurate localisation results for the credible rovers, only our method provides at all comparable localisation results for the Byzantine rovers across all of the cases under consideration. This improved performance is seen across all measurement kinds, fields of view, and types of Byzantine behaviour, as shown in Fig. 3.
This can be explained by considering the recall metric in Tab. I, where we evaluate the proportion of non-credible measurements successfully rejected as outliers by each method. Our method of identifying non-credible rovers and rejecting all of their measurements performs very well, as indicated by the 83.3% and 90.8% recalls, while the robust PGO methods are misled by the internally consistent Byzantine measurements, as indicated by recalls of less than 10%. These methods’ lower precision in Tab. I further indicate that outlier rejection does not accurately detect Byzantine measurements.
- Ours
- RB
- 90.8
- 89.2
- 90.0
- 86.7
- 94.2
- 90.4
- —
- B
- 83.3
- 64.6
- 74.0
- 80.8
- 71.7
- 76.2
- GNC
- RB
- 7.1
- 4.4
- 5.7
- 20.1
- 13.5
- 16.8
- —
- B
- 4.2
- 5.0
- 4.6
- 19.8
- 18.3
- 19.0
- PCM
- RBO
- 6.4
- 5.4
- 5.9
- 31.1
- 45.2
- 38.1
This is further illustrated by the qualitative trajectories compared in Fig. 4, where the results from GNC largely follow the Byzantine rover’s purported trajectory and PCM fails to produce to a meaningful estimate, while ours successfully leverages the data from the credible rovers to track its true trajectory instead.
IV-B2 Two Byzantine Rovers
Largely the same trend is demonstrated for the case of two collaborative Byzantine rovers, as indicated in Tab. I and Fig. 5. This again is consistent across experimental conditions as demonstrated in Fig. 3. The recall performance in the case of bearing-only measurements under the case of two Byzantine rovers is markedly poorer than other circumstances, but still outperforms robust PGO by achieving 64.6% compared to their approximately 5% each.
IV-B3 Simulated Occlusions
To investigate the cases where rovers may not have clear views of one another, we run another suite of experiments where relative measurements have a probability of not being captured (“dropout”) at each potential timestep, rather than being constrained by rover field-of-view. As shown in Figs. 6 and II, our method maintains relatively consistent recall and precision performance up to even 80% dropout. The same trend as above, where bearing-only measurements perform worse than range-bearing measurements, is seen.
- Ours
- RB
- 83.8
- 81.2
- 81.2
- 66.7
- 85.0
- 81.2
- 85.0
- 58.8
- —
- B
- 77.5
- 68.8
- 67.9
- 50.0
- 85.0
- 73.8
- 71.8
- 50.0
- GNC
- RB
- 8.5
- 4.3
- 2.1
- 0.2
- 27.5
- 18.6
- 18.5
- 2.5
- —
- B
- 5.7
- 7.6
- 1.5
- 0.0
- 33.0
- 32.4
- 14.5
- 0.0
- PCM
- RBO
- 7.6
- 4.6
- 6.3
- 16.7
- 30.3
- 26.4
- 20.6
- 20.0
IV-C Planetary Analogue Experiments
To further validate the concept, the C-SLAM dataset collected by [16] is used, which has RTK GPS data serving as ground truth trajectories for three rovers exploring a planetary analogue environment. We consider the scenario where there is a Safety Zone that rover B is prohibited from entering, and so rover B purports a “shortcut” trajectory that bypasses the time it spent within the zone, as indicated in Fig. 7 (top).
For this experiment, we take the absolute poses at 0.3\text{\,}\mathrm{Hz} and perturb them with noise model \sigma_{x}=\sigma_{y}=$2\text{\,}\mathrm{m}$, \sigma_{\theta}=$$, which is more than generous based on the results in [verma.etal.2024_enabling]. We use a relative detection model with \sigma_{\text{range}}=$1\text{\,}\mathrm{m}$, \sigma_{\text{bearing}}=$$ (plus \sigma_{\text{orientation}}=$$ for PCM), with detections captured every t=8 timesteps, corresponding to almost 30\text{\,}\mathrm{s} of real time.
Our method successfully identifies rover B as Byzantine. Furthermore, consider the plotted final trajectory estimates in Fig. 7 (bottom). Although considerably smoothed due to the relative infrequency of relative measurements from credible rovers to guide rover B’s trajectory, our method is the only one that clearly and unambiguously shows that rover B intrudes into the Safety Zone for a considerable amount of time, which is one of the most important outcomes for this problem of forensic trajectory analysis.
V Conclusions
In this paper, we have introduced the problem of forensic trajectory analysis grounded in the needs of co-located operation of rovers by multiple stakeholders simultaneously. We demonstrate that traditional robust PGO is unable to provide suitable trajectory estimates in the case of Byzantine agents, and have introduced a statistically-motivated novel method based on the consistency of relative measurements observation and between groups of rovers. Experimental analysis has validated the accuracy of this method across a range of synthetic and real planetary analogue trajectories.
Future work should include investigating performance when using data from real odometry, localisation, and relative detection front-ends. It could also include a greater variety of Byzantine behaviours, including multiple disjoint groups of collaborative rovers, as well as further validation on real space or planetary analogue robotic platforms.
\AtNextBibliography