Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

Frontier-Based Exploration

  • 又稱: frontier exploration, frontier-based mapping
  • 類別: State estimation & navigation › Navigation
  • 標籤: exploration, navigation, mapping, occupancy-grid, mobile-robots

一種探索策略:機器人反覆前往已建圖的空曠空間與未探索空間之間的分界,逐步擴展地圖,直到不再有這樣的分界為止。

定義

基於邊界的探索(Frontier-based exploration)是一種為未知環境建立地圖的策略。邊界(frontier)是機器人已觀測為空曠的空間,與尚未觀測的空間之間的分界。這個概念由 Brian Yamauchi 於 1997 年提出,重點在於:移動到邊界是取得新資訊最直接的方式,因為朝邊界另一側的感測器會看到尚未探索的空間。

基本迴圈很簡單。機器人建立一張包含空曠、佔據與未知格子的佔據格網。它偵測邊界格子,也就是與未知格子相鄰的空曠格子,把相鄰的邊界格子歸併為邊界區域,並捨棄小到無關緊要的區域。接著它選定一個目標邊界,規劃一條前往的路徑,並在行進途中更新地圖。舊的邊界被清除時,新的邊界會出現;當不再有可到達的邊界時,探索便結束。

各種方法之間的差異大多在於如何挑選下一個邊界。最初的做法是挑選最近的邊界。後來的方法以行進成本與預期資訊增益(也就是可能揭露的未知空間大小)的組合為邊界評分,或採用下一最佳視點規劃,在邊界附近挑選一個視點,而不是邊界格子本身。三維版本為無人機使用體素地圖,多機器人版本則把不同的邊界分派給不同的機器人,以避免重複作業。

邊界方法可靠且容易實作,但只會對目前的地圖做出反應。學習式探索策略則嘗試預料邊界之外有什麼,例如一條走廊很可能會繼續延伸,這類策略常以基於邊界的探索作為基準來比較。

為何重要

基於邊界的探索為機器人提供一種簡單、已被充分理解的方法,能在沒有人引導的情況下為未知空間建立地圖。它至今仍是自主探索研究的標準基準,也是建圖機器人中實用的元件。

主要應用

  • 建築物、倉庫與地下空間的自主建圖
  • 以地面機器人與無人機進行搜救探索
  • 多機器人協同探索
  • 作為學習式探索策略的基準比較

實際應用

打造自主建圖機器人的團隊,通常會執行 SLAM 來維護佔據格網,在每次地圖更新後擷取邊界格子並加以分群,再依距離與大小為每一群評分。導航堆疊會規劃一條路徑,前往最佳群集的中心點或其附近某個可到達的點;若目標結果無法到達,就把它列入黑名單,改試下一個候選。在以 ROS 為基礎的系統中,這套邏輯通常包裝成一個探索節點,把目標提供給導航堆疊。

常見誤解

  • 邊界探索一定前往最近的邊界 — 那是最初的規則,但許多變體會在行進成本與預期資訊增益之間權衡
  • 地圖看起來完整時探索就結束了 — 探索在不再有可到達的邊界時才結束,這可能讓無法到達的區域留下未建圖
  • 邊界方法需要完美的地圖 — 它們能使用含雜訊的佔據格網,但必須濾除虛假的小邊界

誰需要了解

  • 移動機器人導航工程師
  • 自主探索與主動建圖領域的研究人員
  • 為未知環境建圖的無人機自主系統工程師

相關技術

  • 佔據格網(Occupancy Grid)
  • SLAM
  • 下一最佳視點規劃(Next-Best-View Planning)
  • ROS 導航堆疊(ROS Navigation Stack)
  • 資訊增益(Information Gain)

相關術語

  • SLAM
  • Topological Map
  • AMR
  • Obstacle Avoidance

相關專案

  • LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
  • Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics
  • OpenDroneMap: Open-source photogrammetry toolkit that turns drone images into maps and 3D models
  • Nav2: ROS 2 navigation stack with path planning and obstacle avoidance for mobile robots
  • DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required
  • RTAB-Map: Versatile graph-based SLAM supporting RGB-D, stereo, and LiDAR with real-time operation

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。