Skip to content

Framework

Class Diagram

classDiagram
direction LR
class Robot {
    +Array state
        +transition()
}
class Sensor {
    +sense()
}
class Task {
    +Robot robot
    +Sensor sensor
    +Array target_map
    +Array obstacle_map
    +float dt
    +step()
}
class Model {
    +learn()
    +predict()
}
class Objective {
    +eval()
}
class Planner {
    +plan()
}
class Controller {
    +control()
}

Robot --* Task
Sensor --* Robot
Model --* Task

Model --> Objective
Objective --> Planner
Planner --> Controller
Controller --> Task

Roadmap

Models

  • Gaussian Process Regression (GPR): continuous
  • Occupanocy Grid Map (OGM): discrete

Objectives

  • Entropy

Planners

  • Myopic Planner: produces a single informative waypoint
  • Monte Carlo Tree Search (MCTS): sampling-based, producesa sequence of waypoints or actions
  • Rapidly-Exploring Random Trees (RRT): sampling-based, producesa a sequence of waypoints
  • Bayesian Optimization (BO): trajectory optimization, producesa a parameterized trajectory
  • Covariance Matrix Adaptation Evolution Strategy (CMA-ES): trajectory optimization, produces a parameterized trajectory

Controllers

  • Proportional Derivative (PD) Controller
  • Model Predictive Controller (MPC)

Sensors

  • Single-Beam Ranger: sonar
  • Multi-Beam Ranger: LiDAR, depth camera

Robots

  • Omni-Directional Robot
  • Differential-Drive Robot
  • Ackermann-Steering Robot

Tasks

Note

Navigation is not a RIG task.

  • Navigation:
  • Active Mapping
    • Environmental Mapping
    • Occupancy Mapping
    • Autonomous Inspection
    • Search and Rescue
  • Active Localization
  • Active Simultaneous Localization and Mapping (SLAM)
Task Goal Requires Target Map Requires Obstacle Map Considers Collision Localization Algorithm Mapping Algorithm
Navigation Move from start position to goal position
Known
Environmental Mapping Build the target map
Unknown
❌/✅
Free/Known
❌/✅
Occupancy Mapping Build the obstacle map
Unknown
Autonomous Inspection Build the target map
Unknown
Dense

Unknown
Search and Rescue Locate as many victims as possible
Unknown
Sparse

Unknown
Active Localization Actively reduce localization uncertainty while navigation
Known
Active SLAM Actively reduce localization and mapping uncertainty
Unknown