hanruihua/ir-sim

A Python-based lightweight robot simulator designed for navigation, control, and learning

What it solves

IR-SIM is a lightweight, Python-based robot simulator designed to lower the barrier for prototyping robotics algorithms. It eliminates the need for complex coding or expensive hardware when testing navigation, control, and learning algorithms in custom 2D scenarios.

How it works

The simulator uses a YAML-driven configuration system, allowing users to define the world, robot kinematics, sensors, and behaviors without writing extensive code. It includes a built-in collision detection system and a Matplotlib-based renderer for rapid visualization and debugging. The simulation loop is managed via a simple Python API where the environment is stepped and rendered in each iteration.

Who it’s for

It is primarily aimed at academic researchers and students in robotics and AI, specifically those focusing on multi-agent systems, reinforcement learning for navigation, and motion planning.

Highlights

  • Diverse Kinematics: Supports differential drive, omnidirectional, and Ackermann steering models.
  • Integrated Sensors: Includes 2D LiDAR, FMCW LiDAR, and FOV detectors.
  • Flexible Geometries: Supports circles, rectangles, polygons, and binary grid maps.
  • Built-in Behaviors: Comes with pre-defined policies like RVO (Reciprocal Velocity Obstacle), ORCA, and Social Force Model (SFM).
  • YAML Configuration: Rapid scenario setup via simple configuration files.

Related

  • Project
  • Project
  • Project
  • Project
  • Project