Web Simulation 

 

 

 

 

Cellular Triangulation (Multilateration) 

In cellular network positioning, we measure Time of Flight (ToF) or Signal Strength (RSSI) to estimate distance from each base station. Each distance defines a circle (or sphere in 3D) around that tower. The intersection of three circles collapses the Area of Uncertainty into a single coordinate. However, four cells are needed for a robust real-world solution.

Pseudo-Range and Clock Bias

The UE's clock is not synchronized with the towers. The measured pseudo-range adds a clock-bias term to the true geometric distance:

pi = √((x−xi)2 + (y−yi)2 + (z−zi)2) + c·Δt

where Δt is the clock bias (time offset). The UE uses a cheap quartz oscillator, not an atomic clock, so its timer drifts. The 4th tower is mathematically required to solve for the extra unknown Δt.

Time is distance: radio travels at c ≈ 3×108 m/s, so a clock error of just 1 µs maps to a 300 m positioning error. This is why an unknown clock bias cannot be ignored — it must be solved as a fourth coordinate alongside (x, y, z).

3D and the Z-Axis

With only 3 towers, the intersection of three spheres yields two potential points (one above ground, one below). The 4th tower disambiguates the true altitude. In urban environments (e.g., 10th floor), height matters.

Dilution of Precision (DOP)

If towers are collinear, the matrix becomes singular and vertical precision is lost. Good geometry requires towers spread around the UE.

Noise Types

Source

Effect on the estimate

Thermal jitter

Electronics noise makes ToA fluctuate; the position “jitters” even when the UE is still.

Multipath / NLOS

Signals bouncing off buildings (Non-Line-of-Sight) travel farther, so the tower over-estimates the distance.

GDOP

Poor tower geometry amplifies small measurement errors — 1 m of noise can become 50 m when towers are nearly collinear.

Centroid LLS: the 3-tower solver uses a centroid-based approach (not Tower 1-anchored), distributing error across all towers for a fair, unbiased estimate.

Weighted 4D Solver

The 4-tower solver uses weighted least squares to prioritize 2D (map) accuracy. When tower heights are similar (vertical geometry weak), the solver dampens altitude updates and weights X,Y more heavily than Z. This mimics real GPS: HDOP (horizontal) is typically better than VDOP (vertical). Without weighting, the 4-cell solution can sometimes show a larger 2D error than the 3-cell case because the solver "trades off" horizontal accuracy to fit altitude or clock bias.

Simulation

The interactive simulator is below. Use the controls to explore the concepts described above.

0 0 0

Usage

Defaults: 3 towers, UE Height 0, Clock Drift 0, Thermal Jitter 0.

Drag UE: Move the black circle. The search rings (sphere projections) expand/contract.

Drag Towers: Reposition T1–T4. T4 appears only when "4 Towers" is selected.

Towers: Switch between 3 and 4 towers (default: 3). With 4 towers, the system solves for clock bias Δt; the weighted solver prioritizes 2D accuracy when clock bias is present.

UE Height: Simulates altitude (e.g., building floor). Affects 3D distance and projected circle radii.

UE Clock Drift: Simulates UE clock offset (1 µs = 300 m). With 3 towers the circles form a "buffer zone" triangle; with 4 towers the solved position stays stable. Dashed circles = true range R; solid = pseudo-range R′ = R + c·Δt.

Residual (RMS): Red = 3 towers (assume perfect clock); Green = 4 towers (clock bias corrected).

Thermal Jitter: Gaussian-like ToA fluctuation. Position "jitters" even when UE is still.

Multipath (Building): Drag the building between a tower and UE. Blocked LOS adds +50 px "ghost" distance (NLOS).

Satellite View: Overlays a map background (NYC area). Canvas pixels map to GPS: top-left (0,0) = 40.7128°N, 74.0060°W. Drag UE to see GPS fix in degrees/minutes/seconds. Heatmap alpha = 0.1 so the map stays visible. Lines are drawn thicker for visibility. Use "Satellite (NYC)" preset to position the building over a visible structure; multipath triggers when UE is behind it.

GDOP: Poor tower geometry (collinear) amplifies noise. Red uncertainty = unreliable fix.

Math Sidebar: Shows symbolic pseudo-range equation, plugged equations with (x,y,z) coordinates per tower, final solution, and Error = √((xtrue−xest)²+(ytrue−yest)²) in pixels. Residual (RMS) measures how well the circles meet at the estimate.

Key Concepts

  • 4th tower: Solves for clock bias and disambiguates altitude. The weighted solver prioritizes 2D accuracy when vertical geometry is weak.
  • Thermal jitter: Electronics noise causes position to dance.
  • Multipath/NLOS: Reflected signal makes you appear farther than you are.
  • GDOP: Poor geometry amplifies small errors into large ones.
  • 3 vs 4 towers: Set UE Clock Drift to 50 µs to see the 3-tower error explode; 4-tower weighted solver corrects for clock bias and reduces 2D error.

Limitations

  • Schematic, pixel units: distances are in canvas pixels (with an illustrative NYC GPS overlay), not calibrated meters, and the noise models are simplified Gaussian/offset terms.
  • Static snapshot: the solver fixes a single position; it does not track motion or fuse measurements over time (no Kalman filtering or Doppler).
  • Idealized multipath: NLOS is modelled as a fixed +distance behind one building; real multipath is frequency- and geometry-dependent with many reflected paths.
  • Few towers, 2D-focused: only 3–4 towers and a weak-vertical-geometry assumption; real networks use many cells, AoA, and TDOA combinations for robustness.