Repolode
hanruihua

hanruihua/ir-sim

YAMLファイルで設定できる、ナビゲーション・制御・学習向けの軽量なPython製ロボットシミュレーター。

スター
1,169
フォーク
151
未解決の Issue
4
最終コミット
6 日前

これは何?

IR-SIMは、ナビゲーション、制御、ロボット学習の研究を目的としたPython製ロボットシミュレーターです。シナリオ、ロボット、センサー、障害物はYAMLファイルで定義できるため、セットアップに必要なコードは最小限、あるいは不要です。衝突判定を標準搭載し、Matplotlibベースのビューアーでシミュレーション結果を表示します。

差動駆動、全方向移動、Ackermann操舵に対応したロボットに加え、2D LiDAR、FMCW LiDAR、接触センサー、視野センサーをサポートしています。挙動には、目標への直接移動、RVOやORCAによるマルチエージェント衝突回避、社会力モデルに基づく歩行者モデルがあります。オブジェクトは円、長方形、多角形、線分列、バイナリーグリッドマップとして定義でき、剛体接触モードでは押す・積み重ねる動作を扱えます。

このパッケージはpipでインストールでき、Python 3.10以降が必要です。高精度な物理シミュレーションよりも、計画アルゴリズムや学習アルゴリズムを手早く試作できることを重視しており、学術・教育用途を想定しています。

主な機能

  • 01差動駆動、全方向移動、Ackermann方式の運動学に対応したロボット
  • 02ほとんどコードを書かずに使えるYAMLベースのシナリオ設定
  • 03LiDAR、接触センサー、視野センサーを標準搭載
  • 04マルチエージェント環境向けのRVO、ORCA、社会力モデルに基づく挙動
  • 05デバッグに使える軽量なMatplotlib描画

ユースケース

  • 実機で動かす前に、ナビゲーションや衝突回避アルゴリズムを試作する
  • ロボットナビゲーション向けの強化学習エージェントを訓練・評価する
  • 再現可能なシミュレーションシナリオを使ってロボティクスの授業を行う
  • 複数ロボットや歩行者の群集挙動をテストする

クイックスタート

  1. 1

    PyPIからパッケージをインストールします

    pip install ir-sim
  2. 2

    サンプルのYAMLをrobot_world.yamlとして保存し、Pythonのクイックスタートスクリプトを実行します

使う前に知っておきたいこと

  • Python 3.10以降が必要です。
  • Matplotlibベースのレンダリングを使用しており、高精細なグラフィックスではなく、軽量なデバッグを目的としています。

収録されている特集

トピック

よくある質問

ir-sim とは?
YAMLファイルで設定できる、ナビゲーション・制御・学習向けの軽量なPython製ロボットシミュレーター。 IR-SIMは、ナビゲーション、制御、ロボット学習の研究を目的としたPython製ロボットシミュレーターです。シナリオ、ロボット、センサー、障害物はYAMLファイルで定義できるため、セットアップに必要なコードは最小限、あるいは不要です。衝突判定を標準搭載し、Matplotlibベースのビューアーでシミュレーション結果を表示します。
ir-sim は無料で使えますか?ライセンスは?
ir-sim は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
ir-sim は今もメンテナンスされていますか?
活発にメンテナンス中。ir-sim の最終コミットは 2026年11月1日 です。
ir-sim は何に使えますか?
実機で動かす前に、ナビゲーションや衝突回避アルゴリズムを試作する ロボットナビゲーション向けの強化学習エージェントを訓練・評価する 再現可能なシミュレーションシナリオを使ってロボティクスの授業を行う 複数ロボットや歩行者の群集挙動をテストする
ir-sim のインストール方法は?
PyPIからパッケージをインストールします: pip install ir-sim サンプルのYAMLをrobot_world.yamlとして保存し、Pythonのクイックスタートスクリプトを実行します
ir-sim はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/hanruihua/ir-sim

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト