Ein Roboter, der ein neues Gebäude betritt, weiß nichts darüber. Bevor er einen Weg zur Laderampe oder in die Küche planen kann, muss er herausfinden, wo Wände, Regale und Türen sind. Dieses Wissen baut er aus dem, was seine Sensoren sehen, Scan für Scan zu einer Karte zusammen. Die verbreitetste Form dafür ist das Belegungsgitter (Occupancy Grid): Der Boden wird in kleine Quadrate geteilt, und für jedes Quadrat schätzt der Roboter, ob es frei, belegt oder noch unbekannt ist.
Dies ist Teil 1 von Level 2 in unserem Lernpfad Physical AI, der zeigt, wie die Systeme innen arbeiten. Wir haben einen Roboter mit Lidar-Sensor durch eine erfundene Halle mit vier Räumen, Regalen und Türen fahren lassen. Sie erfahren, was ein Lidar-Scan enthält, wie eine Gitterkarte Belege aus vielen Scans sammelt und warum die beste Karte wertlos ist, wenn sich der Roboter über seine eigene Position irrt.
Was ein Lidar sieht
Ein 2D-Lidar ist ein Laser, der sich dreht und in vielen Richtungen den Abstand zum nächsten Gegenstand misst. Unser simulierter Sensor sendet 360 Strahlen pro Umdrehung, einen je Grad, mit 10 Metern Reichweite und einem Messrauschen von etwa 2 Zentimetern — typische Werte für die Lidars von Liefer- und Lagerrobotern. Jeder Strahl sagt dem Roboter zweierlei: Der Raum entlang des Strahls bis zum gemessenen Abstand ist frei, und der Punkt, an dem der Strahl endete, ist belegt. Ein Strahl, der in seiner Reichweite nichts trifft, sagt nur, dass der Raum entlang des Strahls frei ist.

Belege statt Ja oder Nein
Der Roboter markiert ein Quadrat nicht nach einer einzigen Messung als frei oder belegt. Sensoren irren sich, Menschen laufen durch den Strahl, und Glas kann einen Laser seltsam ablenken. Stattdessen führt jedes Quadrat einen laufenden Punktestand, die sogenannten Log-Odds. Jedes Mal, wenn ein Strahl durch das Quadrat läuft, sinkt der Stand ein wenig; jedes Mal, wenn ein Strahl darin endet, steigt er. Erst wenn genug Belege zusammenkommen, gilt das Quadrat als frei oder belegt. Eine einzelne falsche Messung verändert den Stand, kann aber viele gute nicht umwerfen.
| Zustand eines Quadrats | Bedeutung | Typische Ursache |
|---|---|---|
| Unbekannt | Noch kein Strahl hat es erreicht | Hinter einer Wand, um die Ecke, außer Reichweite |
| Frei | Viele Strahlen liefen hindurch | Offener Boden, Gänge, Türöffnungen |
| Belegt | Viele Strahlen endeten darin | Wände, Regale, Pfeiler |
| Unsicher | Die Belege widersprechen sich | Bewegte Menschen, Glas, Kanten von Gegenständen |
Unsere Simulation: Die Karte wächst mit jedem Scan
Unser Roboter fuhr 55,6 Meter durch das Gebäude und machte jeden halben Meter einen Scan, insgesamt 119. Nach zehn Scans hatte er 42,4 % der freien Bodenfläche erkundet, vor allem den ersten Raum. Am Ende waren es 94,3 %. Die restlichen Flecken liegen hinter Regalen und in Ecken, die kein Strahl von der Route aus erreichen konnte. Weil der Roboter in diesem Lauf seine genaue Position kannte, sitzen die Wände in der Karte, wo sie hingehören: 100 % der als belegt markierten Quadrate liegen auf oder direkt neben einer echten Wand.
| Scans | Erkundete Fläche | Wände treffsicher |
|---|---|---|
| 5 | 35,2 % | 100,0 % |
| 10 | 42,4 % | 100,0 % |
| 20 | 62,2 % | 100,0 % |
| 40 | 70,3 % | 100,0 % |
| 80 | 89,0 % | 100,0 % |
| 119 | 94,3 % | 100,0 % |
| 119, Position driftet | 93,8 % | 55,9 % |
Eigene Simulation: erfundener Grundriss 24 × 14 m, Raster 10 cm; Lidar mit 360 Strahlen, Reichweite 10 m, Rauschen 2 cm; ein Scan alle 0,5 m auf 55,6 m Weg. Belegungsgitter mit Log-Odds. Drift: Richtung 0,1 °/m, Strecke 2 % zu lang. Erkundet = Anteil der freien Fläche, die als frei erkannt ist; treffsicher = Anteil der als belegt erkannten Zellen, die höchstens eine Zelle neben einer echten Wand liegen.
Die ersten Scans bringen am meisten, danach flacht die Kurve ab. Jeder neue Raum bringt einen Sprung, jede Fahrt durch einen bekannten Gang wenig. Deshalb planen kartierende Roboter ihre Wege so, dass sie Orte besuchen, die sie noch nicht gesehen haben — eine Strategie namens Exploration.
Warum die Position stimmen muss
Die Karte ist nur so gut wie das Wissen des Roboters darüber, wo er bei jedem Scan stand. In einem zweiten Lauf haben wir genau dieselben Scans genutzt, sie aber an der Position eingetragen, die der Roboter aus Rädern und Kreisel schätzte. Wie in unserer Simulation zur Lokalisierung in Level 1 driftet diese Schätzung langsam: hier um 0,1 Grad Richtung pro Meter und 2 % in der Strecke.

Das Ergebnis ist eine Karte, in der Wände doppelt erscheinen, leicht gedreht und verschoben. Nur noch 55,9 % der belegten Quadrate liegen an einer echten Wand; 44,1 % sind Geisterwände, die es nicht gibt. Ein Roboter, der mit dieser Karte plant, sähe geschlossene Türen, wo Öffnungen sind, und freie Fläche, wo ein Regal steht.
Deshalb werden Kartierung und Lokalisierung gemeinsam gelöst. Das Verfahren heißt SLAM, gleichzeitige Lokalisierung und Kartierung. Während der Roboter die Karte baut, vergleicht er jeden neuen Scan mit der bisherigen Karte und korrigiert seine Position, wenn beides nicht zusammenpasst. Kehrt er an einen Ort zurück, den er schon gesehen hat, kann er die Drift der ganzen Schleife auf einmal korrigieren — das heißt Schleifenschluss (Loop Closure).
Was sich in der echten Welt ändert
Unsere Simulation zeigt den Kern des Verfahrens, doch echte Gebäude sind schwieriger:
- Glas und Spiegel. Laser gehen durch Glastüren oder prallen von Spiegeln ab; die Karte zeigt dann Wände an falscher Stelle oder gar keine.
- Bewegte Dinge. Menschen, Gabelstapler und Türen verändern die Szene. Roboter halten ihre Karten aktuell und behandeln Bewegtes gesondert.
- Drei Dimensionen. Ein 2D-Lidar in einer Höhe übersieht eine Tischplatte oder ein überstehendes Regal. Viele Roboter verbinden es deshalb mit 3D-Lidar oder Tiefenkameras.
- Größe und Speicher. Eine Halle von mehreren Hektar braucht bei 10 Zentimetern pro Quadrat Millionen Quadrate; große Karten werden deshalb in Kacheln geteilt und bei Bedarf geladen.
So haben wir simuliert
Wir haben einen Grundriss von 24 mal 14 Metern mit vier Räumen, fünf Regalen und Türen gezeichnet, ihn in Quadrate von 10 Zentimetern geteilt und die Lidar-Strahlen gegen die Wände in Python mit numpy berechnet, mit festem Zufallsstartwert für das Rauschen. Erkundet heißt der Anteil der freien Bodenfläche, den die Karte als frei markiert; treffsicher heißt der Anteil der belegten Quadrate, die höchstens ein Quadrat von einer echten Wand entfernt liegen. Der nächste Teil dieses Levels nutzt eine Karte zum Planen: Wie ein Roboter oder ein Auto die kürzeste Route durch ein echtes Straßennetz findet.

