2026-05-10

The address number is the distance

Most people in Korea — including most who use Korean addresses every day — don’t know this:

The building number in a Korean road name address is a distance.

If you live at 강남대로 300 (Gangnam-daero 300), you live approximately 3,000 meters from where Gangnam-daero begins. Not figuratively. Literally.

The math is simple. Every named road in Korea has a starting point, fixed at the south-west terminus. Building plots are numbered outward from that origin at a fixed interval: every 10 meters on a gil (small lane), every 20 meters on a ro or daero (road or boulevard). Odd numbers go on one side of the street, even numbers on the other. So:

distance from origin = building_number / 2 × interval

Gangnam-daero 300 → 300/2 × 20m = 3,000 m

This isn’t a quirk. It’s how Korea’s road name address system was designed when it became the legal address standard in 2014. The numbering rule is in statute. Every named road follows it. Every building number on every road in Korea is, technically, a measurement.

And almost no system uses it that way.

What the world does instead

When you type a Korean address into Google Maps, Naver Maps, KakaoMap, or any GPS navigation system, here’s what happens:

  1. The address goes to a geocoding service.
  2. The service looks up coordinates: latitude and longitude, in floating point.
  3. The coordinates go into a spatial database.
  4. Any query — distance to a destination, “is this address inside a school zone”, “what pharmacies are nearby” — runs as floating-point geometry on a spatial index.

Step 1 throws away exactly the information that would have made steps 2–4 unnecessary. The address already encoded the location. Geocoding converts a precise integer into a floating-point coordinate, and we then run computations to recover what the integer was telling us in the first place.

It’s a round-trip that wastes the original signal.

What you can do once you don’t throw it away

Once the address number is the location, several things become possible — and several things that are currently expensive become cheap.

Distance, instantly. From any address to any other address on the same road, distance is a subtraction. No GPS, no map, no spatial database. “How far is 테헤란로 152 from 테헤란로 88?”(152 − 88)/2 × 20 m = 640 m. One CPU instruction.

Zone membership without polygons. A school protection zone is “300 m around a school gate.” Today that gets stored as a coordinate polygon — about 80 floating-point values per zone, requiring a spatial database to query. Encoded as BSI intervals, the same zone is 8–12 integers. “Is this car inside the school zone?” becomes n_a ≤ n ≤ n_b — one integer comparison.

Routing without coordinates. Build a graph where roads are nodes and intersections are edges. Routing through Seoul becomes Dijkstra on integer-arithmetic edges. Tested on Gangnam-gu: 24 millisecond median latency on a laptop, no GPS coordinates anywhere in the pipeline.

Position through GPS-denied zones. A car driving into a tunnel loses GPS but doesn’t lose the road. By tracking distance traveled along the road, position keeps updating: “I was at 강남대로 100, I’ve gone another 200 m, so I’m at 강남대로 110.” The address number itself maintains topological position. GPS re-acquisition becomes a refinement, not a restart.

Indoor and outdoor in one system. An indoor address anchored at a building entrance (“entry at 강남대로 200, Floor 3”) plugs into the same graph as a child node of the entry-point BSI. No coordinate bridge between outdoor and indoor required.

Smart city data, integer-indexed. CCTV cameras, accident records, bus stops, crosswalks — anything with a road name address can be re-indexed to BSI once. After that, every analysis (“which roads have the highest accident density?”, “find all clinics within walking distance of this point”) is an integer query, not a spatial join.

Why this hasn’t happened yet

The reason is mostly inertia. Korea’s road name address system was designed for one purpose: to give every building a unique, structured identifier. The fact that this identifier is also a measurement was a side effect — not the headline feature. Once GPS-based mapping became the norm, every navigation system built its pipeline around coordinates, and the address layer became something to convert out of as quickly as possible.

The result is that one of the most useful properties of the system is hidden in plain sight. The Road Name Address Act made every address in Korea a coordinate-free location, and almost no production system has ever used it that way.

What changes if it does

For autonomous driving: a routing layer that stays correct under combined turn restrictions, time-of-day rules, and vehicle-class constraints — without the multiplicative node explosion that conventional graph methods suffer.

For real-time traffic: congestion as a directional vector along a road, tracked at 10–20 m granularity, instead of one average value per intersection-to-intersection link.

For public services: reachability analysis (“which roads are within 2 km walking of any clinic?”) that runs in milliseconds instead of seconds, on a laptop instead of a GIS server.

For smart city data integration: a single integer identifier that any database can use, no spatial extensions required.

For indoor navigation: continuity from the street to the elevator without a coordinate transformation.

For ITS modernization: incremental upgrade. Existing Node/Link IDs map to BSI ranges through a one-time conversion table. Not a big-bang replacement.


The address number is already the distance. The infrastructure to use it that way is mostly database tables and integer arithmetic. The hardest part is noticing.


Source — three-paper series on the same idea: BSI as a Coordinate-Free Linear Reference System · Constraint-Efficient Routing via Dual Graph · Geocoding-Free Attribute Binding.