Papers
Topics
Authors
Recent
Search
2000 character limit reached

Zonotope Shadow Matching for GNSS Localization

Updated 6 July 2026
  • Zonotope Shadow Matching is a 3-D map-aided GNSS localization method that uses constrained zonotopes to represent buildings and GNSS shadows, returning continuous, multi-modal feasible receiver regions.
  • It refines receiver positions by intersecting LOS/NLOS‐based shadow polygons with an area of interest, thereby improving precision and robustness in urban environments.
  • The method demonstrates computational efficiency with faster Minkowski sums and offers interpretable uncertainty bounds compared to conventional grid-based shadow matching.

Zonotope Shadow Matching (ZSM) is a set-valued, 3-D map-aided GNSS localization method that replaces grid-based shadow matching with constrained-zonotope geometry. Buildings and GNSS shadows are represented using constrained zonotopes, and a coarse initial receiver region is recursively refined according to whether each satellite is inferred to be line-of-sight (LOS) or non-line-of-sight (NLOS). Rather than returning a single point candidate on a discretized grid, ZSM returns a continuous feasible receiver-position set, which may be disconnected and therefore explicitly multi-modal (Bhamidipati et al., 2022).

1. Urban GNSS localization setting

ZSM arises from the urban GNSS problem in which buildings block, reflect, scatter, and diffract satellite signals. In dense urban areas, conventional pseudorange positioning becomes unreliable, cross-street accuracy degrades sharply, and errors can become large enough to matter at the level of street or side-of-street decisions. Three-dimensional map-aided GNSS addresses this by using a city model to infer where satellites should be visible or blocked, and classical shadow matching implements that idea by evaluating a grid of candidate receiver points against map-predicted satellite visibility (Bhamidipati et al., 2022).

The central limitation of classical shadow matching is that its accuracy is tied to grid resolution. A coarse grid reduces computational burden but degrades localization precision; a fine grid improves fidelity but substantially increases offline precomputation, online evaluation cost, and storage. ZSM replaces this pointwise discretization with a continuous feasible set. This shift is important not only for nominal accuracy, but also for robustness: a set-valued estimate can represent non-Gaussian and multi-modal uncertainty directly, and geometric bounds can be read from the final feasible region rather than inferred from weighted point clouds or empirical covariance surrogates (Bhamidipati et al., 2022).

The method is formulated on a 3-D building map together with a 2-D ground-plane receiver model. For each satellite/building pair, the map is used to compute a GNSS shadow, meaning the area on the ground where direct LOS reception from that satellite is blocked by the building. ZSM then treats LOS/NLOS classification as a geometric constraint: an NLOS satellite implies the receiver should lie inside the relevant shadow region, whereas an LOS satellite implies the receiver should lie outside it. Repeating this across satellites refines the feasible receiver set (Bhamidipati et al., 2022).

2. Constrained-zonotope representation and shadow geometry

The core set representation is the constrained zonotope

$Z = \zono{c,G,A,b} = \left\{c + G\beta \in \mathbb{R}^n \;\middle|\; \beta \in [-1,1]^m\ \text{and}\ A\beta = b \right\},$

with center cc, generator matrix G=[g1,,gm]G=[g_1,\dots,g_m], coefficient vector β\beta, and linear equality constraints Aβ=bA\beta=b. Ordinary zonotopes appear as the unconstrained special case. The representational motivation is that constrained zonotopes can represent arbitrary convex polytopes while still supporting efficient Minkowski-sum and intersection operations through generator and constraint concatenation (Bhamidipati et al., 2022).

In the urban-GNSS formulation, each building BiR3B_i\subset \mathbb{R}^3 is represented as a union of constrained zonotopes,

Bi=l=1niZl.B_i = \bigcup_{l=1}^{n_i} Z_l.

This union structure is operationally important because unions of constrained zonotopes are not generally convex and are therefore not themselves encoded as a single constrained zonotope. Standard triangle-mesh city models are converted by representing vertices as degenerate constrained zonotopes and forming triangle patches through repeated convex-hull operations. The area of interest (AOI) on the ground plane is likewise represented as one or more constrained zonotopes, and the initial receiver uncertainty set is taken to be this AOI (Bhamidipati et al., 2022).

For building BiB_i and satellite sjR3s_j\in\mathbb{R}^3, ZSM computes a representative building point bib_i from the building vertices and defines the unit shadow direction

cc0

A long line segment in that direction is encoded as

cc1

with cc2 chosen large enough to exceed relevant building scales; the reported implementation uses cc3. The building shadow volume is then the Minkowski sum

cc4

Intersecting this 3-D volume with the ground-plane AOI yields the 2-D GNSS shadow used by the localization algorithm (Bhamidipati et al., 2022).

The required set operations are explicit. If cc5 and cc6, then the Minkowski sum is

cc7

with block-diagonalized constraints, and the intersection is

cc8

with augmented equality constraints enforcing consistency of the two set parameterizations. These concatenation-based formulas are one reason constrained zonotopes are computationally attractive in the shadow-construction stage (Bhamidipati et al., 2022).

3. Core ZSM algorithm

The online ZSM pipeline begins from a coarse feasible set cc9, initialized to the AOI in vertex representation. For each satellite, the algorithm computes the aggregate 2-D GNSS shadow by traversing buildings, forming their satellite-dependent shadow volumes, intersecting those volumes with the AOI, and converting the resulting pieces to vertices for polygonal union. At this stage ZSM uses constrained zonotopes for 3-D shadow construction and intersections, but the practical 2-D feasible set is maintained as polygons because set subtraction and disconnected outputs are easier in vertex form (Bhamidipati et al., 2022).

The classification signal used in the original formulation is carrier-to-noise density G=[g1,,gm]G=[g_1,\dots,g_m]0, denoted G=[g1,,gm]G=[g_1,\dots,g_m]1 for satellite G=[g1,,gm]G=[g_1,\dots,g_m]2. In the baseline experiments, a threshold rule is used: G=[g1,,gm]G=[g_1,\dots,g_m]3 with G=[g1,,gm]G=[g_1,\dots,g_m]4 dB-Hz in the simple emulation study. The corresponding feasible-set updates are the core ZSM rules: G=[g1,,gm]G=[g_1,\dots,g_m]5

G=[g1,,gm]G=[g_1,\dots,g_m]6

where G=[g1,,gm]G=[g_1,\dots,g_m]7 is the satellite’s ground shadow polygon (Bhamidipati et al., 2022).

Several structural properties follow directly from this formulation. First, ZSM is a snapshot algorithm: it uses only the measurements available at one epoch and does not assume a motion model. Second, the order in which satellites or buildings are processed does not affect the final set-valued estimate, so the method is naturally parallelizable. Third, the output can contain multiple disconnected feasible components. This is not an implementation artifact; it is a geometric consequence of the fact that different urban locations can satisfy the same LOS/NLOS evidence (Bhamidipati et al., 2022).

A recurrent misconception is that ZSM remains entirely within constrained-zonotope algebra. The reported implementations do not. Constrained zonotopes are used where Minkowski sums and intersections are most effective, but the final feasible set and satellite shadows are converted to polygon or polytope representations to support subtraction and multi-component geometry. This hybrid representation is central to the practical algorithm rather than a minor implementation detail (Bhamidipati et al., 2022).

4. Computational behavior and baseline empirical performance

The original ZSM study reports that constrained-zonotope Minkowski sums are substantially faster than comparable vertex-based polytope sums in preprocessing-style experiments: on 1000 random polytopes, the vertex-based Minkowski sum averaged 71.3 ms, while the constrained-zonotope implementation averaged 5.5 ms. The paper attributes this to the fact that a Minkowski sum with a line segment adds only one generator in the constrained-zonotope representation, whereas the corresponding vertex growth can be much less predictable in a polytope representation (Bhamidipati et al., 2022).

In the simple simulated 3-D map with two buildings and 9 visible GPS satellites, ZSM produced point error G=[g1,,gm]G=[g_1,\dots,g_m]8 m in G=[g1,,gm]G=[g_1,\dots,g_m]9, a bound of β\beta0 m, offline time β\beta1 s, and online time β\beta2 s. Conventional shadow matching on a 5 m grid required 1524.41 s offline and 1.66 s online, with a covariance-derived bound of β\beta3 m; coarser 10 m and 15 m grids reduced online cost but retained very large bounds. The comparison in that study is therefore not only about point error, but also about the geometry and interpretability of the returned uncertainty region (Bhamidipati et al., 2022).

In the dense San Francisco map experiment, ZSM with all 14 satellites produced two disjoint feasible sets, one containing the true location. For the true-containing mode, the reported centroid error was β\beta4 m and the bounds were β\beta5 m, with offline time 162.5 s and online time 4.4 s. Reducing the satellite set to 10 random or 8 random satellites degraded the set quality only moderately in the true-containing mode, whereas restricting to satellites with elevation β\beta6 generated several components but still preserved one accurate mode. This behavior is consistent with the set-valued design: good localization may survive even when some constraints are discarded, provided the correct mode remains intact (Bhamidipati et al., 2022).

Later field-test reporting gives per-epoch timing that is more directly tied to online deployment. In that implementation, GNSS-shadow computation required 0.1729 s per satellite per epoch, receiver-position-set estimation required 0.0176 s per epoch, and total ZSM online time was 0.1905 s per epoch. The same paper reports offline conversion of the map to constrained zonotopes as 172.5 s for 448 epochs. These values indicate that the main online cost remains geometric shadow construction rather than the final feasible-set update (Kim et al., 4 Jan 2026).

5. Ambiguity, risk-awareness, and conservative constraint admission

Because ZSM can return multiple disconnected feasible sets, mode ambiguity is a central downstream issue. One study formalizes each connected component of the ZSM output as a mode and considers the problem of selecting which mode actually contains the receiver. In that framework, if the correct mode were always selected, RMS error would be 14.02 m; using an earlier satellite-pseudorange consistency (SPC) mode selector gave 17.70 m, while a proposed single-timestep enhanced-SPC method based on mode-conditioned multipath estimation reduced this to 16.87 m. Over 104 epochs, the existing SPC method selected the correct mode in 90/104 epochs (86%), and the enhanced method selected the correct mode in 95/104 epochs (91%) (Kim et al., 16 Feb 2025).

A different line of work extends baseline ZSM into a risk-aware posterior over a mosaic of polytopes rather than a single hard-decision feasible set. Mosaic Zonotope Shadow Matching (MZSM) uses ZSM’s shadow extraction as a front-end, but replaces brittle LOS/NLOS commitment with a recursively expanding binary tree over LOS and NLOS branches. The resulting leaf polytopes form a weighted mosaic, with branch weights determined by β\beta7 and β\beta8. The method yields an exact shadow matching distribution, an AOI-violation probability

β\beta9

and confidence collections defined by leaf subsets whose normalized posterior mass exceeds a target confidence level. In simulation with 14 satellites, the reported tree had 196 leaves and median runtime about 0.63 s, with empirical quadratic growth in satellite number (Neamati et al., 2022).

Constraint admission itself can also be made conservative. A later reliability-oriented study keeps a satellite for downstream ZSM only if three classifiers—RF, GBDT, and SVM—produce unanimous LOS/NLOS labels and all three confidences exceed 0.7. On 146 urban test epochs, this reduced the mean number of misclassified satellites entering ZSM to 0.41 per epoch, achieved 100% positioning success and 61.0% receiver containment, but increased the cross-street and along-street bounds to 52.3 m and 108.7 m, respectively. The same study reports that single-classifier pipelines gave lower containment, ranging from 26.0% to 42.5%, illustrating the trade-off between tighter but brittle feasible sets and looser but more reliable ones (Kim et al., 17 Jul 2025).

Taken together, these developments indicate that baseline ZSM is best understood as a geometric feasible-set generator rather than a complete urban localization stack. Mode selection, probabilistic branching, and conservative measurement screening are additional layers motivated by concrete failure modes of the original hard-decision formulation. This suggests that high-performance ZSM deployments depend as much on constraint management as on shadow geometry itself.

6. Shadow and reflection matching as an extension of ZSM

ZSM uses only GNSS shadows, so an LOS satellite merely excludes shadowed regions and an NLOS satellite merely enforces membership in them. A later extension, Zonotope Shadow and Reflection Matching (ZSRM), argues that this binary use of visibility information is insufficient because outside-shadow regions are often much larger than inside-shadow regions, and shadow constraints are typically stronger in the cross-street direction than along the street. ZSRM therefore adds a second geometric object, the GNSS reflection, defined as an area on the ground where both LOS and reflected NLOS signals are simultaneously received (Kim et al., 4 Jan 2026).

ZSRM replaces the LOS/NLOS split by a three-class signal-reception model: LOS-only, LOS+NLOS, and NLOS-only. The feasible-set rules become stronger: Aβ=bA\beta=b0

Aβ=bA\beta=b1

Aβ=bA\beta=b2

where Aβ=bA\beta=b3 is the aggregate GNSS reflection set for satellite Aβ=bA\beta=b4. Reflection geometry is constructed by identifying building planes that can act as reflectors, mirroring the satellite across such planes, forming reflected propagation volumes, and then subtracting invisible, blocked, and shadow-only regions to obtain the final reflection area (Kim et al., 4 Jan 2026).

The empirical gains reported for ZSRM are substantial. In the field tests, the paper states that the RMS horizontal position error of ZSRM improved by 10.0% to 53.6% compared with ZSM, while the RMS cross-street and along-street position bounds improved by 18.0% to 50.1% and 30.7% to 59.3%, respectively. Under ideal classification with ideal mode selection, the reported ZSM horizontal RMS error was 17.5 m and the ZSRM value was 7.1 m; the corresponding cross-street and along-street bounds changed from 51.2 m and 67.5 m to 25.5 m and 27.5 m. The price is increased complexity: average total online time rose from 0.1905 s per epoch for ZSM to 0.9328 s per epoch for ZSRM, with the dominant added cost coming from invisible and blocked reflection computation (Kim et al., 4 Jan 2026).

ZSRM therefore does not supersede ZSM so much as generalize it. ZSM remains the shadow-only baseline and is still relevant when only binary LOS/NLOS classification is available, when computation is more constrained, or when reflection classification is not sufficiently reliable. ZSRM demonstrates, however, that the zonotope framework is not restricted to occlusion geometry; it can accommodate additional signal-propagation structures while preserving a set-valued output (Kim et al., 4 Jan 2026).

7. Broader zonotope-theoretic context

Although ZSM is an urban-GNSS localization method, its name is not accidental: the underlying set representation belongs to a broader convex-geometric theory of zonotopes as projections of hypercubes and Minkowski sums of line segments. A standard zonotope generated by a matrix Aβ=bA\beta=b5 is

Aβ=bA\beta=b6

and thus already a projection of the hypercube. A randomized vertex-enumeration result shows that exposed zonotope vertices can be generated from support directions by the sign map

Aβ=bA\beta=b7

with the inverse image of a vertex equal to the interior of its normal cone. This means that random support directions recover vertices with probability equal to the measure of their normal cones, so prominent extremes are sampled more often than nearly flat ones (Stinson et al., 2016).

A complementary oracle-based line of work characterizes zonotope vertices as subset sums of generators whose signed generator sets span pointed cones, and shows that support-direction sign patterns partition direction space into regions of constant maximizing subset sum. This supplies a combinatorial language for exposed faces, support cells, and adjacency relations between zonotope vertices. Such results are not GNSS localization algorithms, but they clarify why shadows, support directions, and generator sign patterns are natural companions in a zonotopal framework (Deza et al., 2019).

Containment theory provides a third useful perspective. For a zonotope Aβ=bA\beta=b8, the support function is

Aβ=bA\beta=b9

This turns zonotope comparison into directional support comparison. A recent containment study gives a sampling-based BiR3B_i\subset \mathbb{R}^30-approximation algorithm for BiR3B_i\subset \mathbb{R}^31 in the membership-oracle model, proves nearly tight lower bounds, and develops sparsification results that preserve the support profile of structured zonotopes through much smaller generator sets. This suggests a broader interpretation of “shadow matching” in which zonotopal objects are compared through directional extents, support functions, and sparse generator summaries rather than solely through urban occlusion geometry (Eisenbrand et al., 5 May 2026).

In this broader setting, ZSM can be viewed as a domain-specific instantiation of a more general zonotope program: represent geometry through projected line-segment structure, extract directional or visibility-induced feasible regions by set operations, and reason about ambiguity through the combinatorics of exposed faces. The urban-GNSS literature supplies the application-specific semantics—buildings, LOS/NLOS evidence, multipath, and protection bounds—while general zonotope theory supplies the support-function, projection, and generator-level language in which those semantics can be analyzed.

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Zonotope Shadow Matching (ZSM).