The second Kinewright engine now builds a map of the whole drive from what its sensors have seen, plans a route through it and drives it leg by leg, replanning as the map grows. When there is no way it says so, and this article shows that too: the sealed room, the gap too narrow for the body, the full map, and a door that closes behind it.
What this stage adds
- A belief map of the whole drive: cells of 0.02 m, each an integer of confidence. A scanner ray through a cell counts against it, a return counts for it: three hits make a cell occupied, nine misses free, with clamps either side. A cell no sensor has looked at is marked never seen. The scanner carves free space; the grid and the beam only mark; the bumper marks with certainty. The map is the scanner's plane.
- A planner on a 0.04 m copy of the map: an integer A* over a distance field. Cells within 0.156 m of an occupied one are lethal, the body's inscribed radius plus the clearance; the cost falls steeply to 0.26 m and decays to 0.35 m. An unknown cell is passable at a price, one of three declared levels.
- Replanning on events only: a cell on the route or within 0.26 m of it changes state, a leg ends, ten seconds pass. A new route replaces the old when it is at least an eighth cheaper, never within 0.2 s of the last switch.
- Two skills over the last stage's go-around. Route-to drives to a lookahead point 0.75 m along the route, each leg a go-around call. Explore drives to the nearest edge of the unknown until none is left.
- Six results, each a sentence on screen: at the goal; no way, every way out of the known space is closed; no way for this body, with the narrowest gap; stopped trying, after three recoveries without progress; map complete, with the number of rooms; out of time.
- Trust: a cell seen occupied on three visits with no flip is permanent and never decays; a cell that flipped is changeable and relaxes to unknown out of view. A rebuild is only flagged. Three scenes change between observations, a box appearing, a box vanishing, a door closing and opening, and the map follows within declared latencies.
- Every decision and observation is a recorded input. A drive replays byte for byte; the map and the decisions are integers, identical on two machines of different architectures.
How it decides
- The first route is optimistic: unknown cells cost more than free ones, never infinity, so a route to a goal behind walls runs straight through what it has not seen. A scan that shows a wall across it raises an event, and the planner reruns.
- Two tests say unreachable. Through the known free space, a search from the goal finds no way out; with unknown cells allowed, no route exists either: the goal is sealed. When the two disagree, a point search names the body: the gap is too narrow, and one confirming leg reads its width on the map.
- A frontier is a free cell beside an unknown one. Explore drives to the nearest reachable frontier; the map is complete on the first decision with none left.
- A recovery, on a blocked or stalled leg: clear the map within 0.85 m of the shell and replan; then back up 0.30 m; at most three without progress.
Numbers from this stage
- On the fixture scenes, 18 runs on both shells: no overlap on any tick; 1 431 plans, each on an event, 559 switches, each by the eighth. The goal behind the second wall is reached on all six of its runs; the sealed room and the narrow gap end as no way on both shells; the exploration ends with three rooms.
- The narrow gap reads 0.24 m on the map and on the planner's copy, against a true 0.25 m and a derived bound of 0.20 to 0.28 m.
- In the drive shown to the goal behind the wall: the first route at 0.5 s, 2.3 m known free and 4.3 m through unknown; seven replans; the goal at 28.6 s after 77 plans and 282 decisions. The sealed room ends at 9.8 s, the narrow gap at 17.9 s, the exploration at 20.9 s.
- In the door scene: the way home is planned through the left opening, seen open; the door closes on a tick no sensor sees; the next scan shows it closed, the route replans through the right opening at 8.5 s, and the shell arrives.
What it does not claim, and why
| What you see or might expect | Why | Changes at |
|---|---|---|
| The shell knows exactly where it is | The rays are placed by the engine's own pose, not an estimate; the map never drifts and is never rebuilt from corrected poses | The hardware stage: a pose from scan matching |
| The low box is not on the map | The map is the scanner's plane; a surface lower than the scanner is carved free by its rays and held only by the local map of the last stage while the beam hears it | A measured sensor and a real vehicle, later |
| The door seen closed ends the drive as no way | A seal made of changeable cells is a verdict on that decision's belief; waiting for a door to open is not this stage's | The moving-objects stage, whose caution policy may wait |
| The route has 45° corners | It is a grid path, 8-connected, up to about 8 % longer than the shortest; pure pursuit inside go-around smooths it | A later stage, if the staircase shows |
| It explores beyond the room | Its world is the box of what it has observed plus its goal; a way beyond is found only by exploring a frontier on the box's edge | The map that outlives a session, reserved |
| Nothing moves in the room | A change is applied only between observations; no object moves in view | The moving-objects stage |
| The numbers behind trust are validated | The visit count, the decay and the rebuild threshold are declared decisions, validated by no source | The hardware stage, against a real environment |
| A route here is safe | A route is what declared rules chose on a map built from what models of declared sensors report; no route or stop is called safe | Never claimed |
Two assumptions sit under everything here, as before: the honesty bound of the kinematic model and the tip threshold, both announced when crossed and never simulated. This stage adds no third one; the motion stays kinematic, and nothing is measured.




Top comments (0)