AIToday
ロボティクスAIコーディングQiita 機械学習掲載日時: 2026年11月7日 22:01

二輪倒立振子を模倣学習でAI制御

LINEで送る
二輪倒立振子を模倣学習でAI制御

3つのポイント

  1. 何が起きたか

    5ms周期のPD制御を1000サンプル記録後、2-4-1のMLPRegressorを学習し、出力のみをM5Stack Core2で実行。指で繰り返し押す外乱を受けても60秒間の連続平衡に成功した。

  2. なぜ重要か

    隠れ層4ニューロンのごく小さなネットワークが既存の制御器を十分模倣し、リアルタイムのロボット制御が可能だと実証。物理AIプロジェクトの入門として模倣学習の手軽さを示す。

わからないところ、AIに聞けます

質問と回答はこのページに公開されます。

こういう要約が、毎朝あなたのメールに届きます。

背景と解説

このプロジェクトは物理AIの実用的な課題に向き合っている。実機で直接学習すると試行錯誤の過程でロボットを壊す恐れがある。まず従来のPD制御で倒立振子を安定させれば、約5秒間にわたる安定した挙動を1000サンプル安全に収集できる。そのサンプルがPC上の小さなニューラルネットの学習データとなる。

ネットワーク自体は意図的に最小構成で、入力2つ(傾き角と角速度)、隠れ層4ニューロン、出力1つ(モーター指令)となっている。scikit-learnのMLPRegressorで学習後、重みとバイアスをCore2に移し、短いMicroPython関数で推論を行う。著者はこれは強化学習よりも行動クローニングに近いと指摘する。AIは新しい平衡戦略を発見するのではなく、制御器の入出力関係を再現しているのだ。

AIのみの制御中も安全策は維持された。PD指令を並行して計算し、AIとPDの指令が大きく乖離した場合、傾きが20度を超えた場合、制御周期が異常になった場合にはシステムを停止する。著者はまた、外乱の大きさを測定していないため、PDとAIの外乱抑制の比較は定量的ではないと注意を促している。

よくある質問
実験に使われたハードウェアは何ですか?
M5Stack Core2(内蔵の加速度計とジャイロを使用)、Roller485 Liteモータードライバー2基、直径約80mmのホイール、LEGOのフレームを使用。学習はWindows 11のPC上でscikit-learnにより行った。
AIは自力でバランスを取れるようになったのですか?
いいえ。ニューラルネットは既存のPD制御器の出力を模倣するよう学習されており、著者はこれを行動クローニングと呼んでいる。試行錯誤で平衡を発見したわけではない。
AIは元の制御器にどの程度一致しましたか?
モーター指令値の平均絶対誤差は約0.34。AIのみで動かした60秒間では、AIとPDの指令の平均差は約0.36、最大で約2.43だった。
Qiita 機械学習元記事を読む
LINEで送る

あなたの仕事に関係するAIニュースを、毎朝お届けします。

業界と使っているAIツールを選ぶと、仕事に関係するニュースが毎朝届きます。

登録無料・Googleアカウントなら30秒・いつでも解除できますAITodayについて →

AIに質問

この記事についてわからないことをAIに質問できます。AIはこの記事・AIToday の過去記事・Wikipedia を読み、出典を付けて答えます。Q&Aはこのページに公開され、他の読者も読めます。

質問と回答はこのページに公開されます。

このようなAIの動きを、御社の業界・競合に合わせて毎日届ける法人プランもあります → 詳しく見る

関連記事

次の記事へClaude Code製キットの初回実行、15か所で停止