1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【フィジカルAI入門 #00】フィジカルAIとは何か ― ソフトウェアエンジニアのための「身体を持つAI」全体地図

1
Posted at

はじめに

LLM、RAG、AI エージェントの普及で、ソフトウェアエンジニアの仕事は大きく変わりました。そして2026年、次の大きな波として急速に存在感を増しているのが フィジカルAI(Physical AI) です。

NVIDIA の Jensen Huang 氏は CES 2026 の発表で「ロボティクスの ChatGPT モーメントが来た」と表現しました1。Google DeepMind は 2026年7月に全身制御まで扱う Gemini Robotics 2 を発表しています2。また Hugging Face の LeRobot を使えば、数万円のロボットアームで模倣学習まで試せるようになりました3。

本連載は、クラウド、AI、Web・業務システムなどを開発しているソフトウェアエンジニアが、フィジカルAIを「理論+実践」で体系的に学ぶ ためのシリーズです。第0章では、連載全体の地図を示したうえで、次の3点を押さえます。

  • フィジカルAIとは何か(生成AI・従来のロボットとの違い)
  • なぜ「今」なのか、2026年時点の技術スタックと主要プレイヤー
  • 最初の一歩として、MuJoCo で Sense → Think → Act ループ を動かす

想定読者

  • Python が読み書きできるソフトウェアエンジニア(クラウド、AI、Java / Web 開発など、分野は問いません)
  • 機械学習や LLM アプリ開発の経験があると理解が早いですが、必須ではありません
  • ロボット工学・制御工学の知識は不要です。数式は必要最小限にとどめ、記号の意味はその都度説明します

本記事の業界動向は 2026年9月時点 の各社公式発表・報道をもとにしています。この分野の変化は非常に速いため、最新情報は参考文献のリンク先で確認してください。


連載目次

# タイトル 主なテーマ
00 フィジカルAIとは何か(本記事) 全体像・技術スタック・環境構築
Part 1:Agent から Embodied Agent へ
01 Tool Calling から Action へ SayCan / RT-1 / RT-2 の系譜
02 LLM でロボットを動かす Code as Policies・階層型プランニング
Part 2:ロボット工学の基礎(エンジニア版)
03 座標変換と運動学 同次変換・クォータニオン・順運動学
04 逆運動学(IK) ヤコビアン・数値IK
05 制御と軌道生成 PID・軌道計画
Part 3:シミュレーション
06 MuJoCo 入門 物体把持環境の構築
07 Isaac Sim / Isaac Lab GPU 並列シミュレーション
08 Genesis 次世代 GPU ネイティブシミュレータ
Part 4:ロボット学習
09 強化学習(RL) PPO / SAC・報酬設計
10 模倣学習(IL) BC / ACT / Diffusion Policy
11 LeRobot 実践 データセット・学習・評価
Part 5:基盤モデルの時代
12 Vision-Language-Action(VLA) RT-2 / OpenVLA / π0 系 / SmolVLA / GR00T
13 World Model Dreamer / Cosmos・「想像」で学ぶ
14 合成データ 動画生成 → 行動データ
Part 6:Agent × フィジカルAI
15 RAG for Robots 手順書・安全規程を参照するロボット
16 マルチエージェント・ロボティクス Planner / Executor / Safety Agent
17 MCP とロボット Robot MCP Server の設計
Part 7:実世界へ
18 Sim2Real Domain Randomization・ギャップの正体
19 エッジ推論と Jetson 量子化・リアルタイム推論
20 実機実践 SO-101 などの低価格アーム

各章は原則として 「理論 → 最小実装 → まとめ」 の構成です。Part 6 では、LLM アプリや Agent 開発の知識をロボットにどう活かせるかを扱います。


1. フィジカルAIとは何か

1.1 一言でいうと

フィジカルAI = センサーで世界を知覚し、推論し、身体(アクチュエータ)を通じて物理世界に働きかける AI

あえて単純化すると、次のように整理できます。

LLM          = 頭脳
AI Agent     = 頭脳 + ツール(API)
Physical AI  = 頭脳 + ツール + 身体(センサー / モーター)

Agent がツールを呼び出す先が、API ではなく モーター になったもの、と捉えると理解しやすいでしょう。ただし後述するように、「出力先が物理世界になる」というこの一点が、設計を根本から変えます。

1.2 基本ループ:Sense → Think → Act

フィジカルAIの本質は、次のループを 現実世界の時間の中で回し続けること です。

LLM とのチャットは「1回の入力に1回の出力」で完結します。一方フィジカルAIでは、行動の結果が次の観測を変える 閉ループになります。

クラウドエンジニアであれば、Kubernetes の Reconciliation Loop(現在の状態を監視し、あるべき状態との差を埋める操作を繰り返す仕組み)を思い浮かべるとわかりやすいかもしれません。ロボットは、これを 1秒間に数百回という速さで、物理世界を相手に回しています。

1.3 用語の整理

似た言葉が多いので、本連載での使い分けを決めておきます。

用語 意味 位置づけ
ロボティクス 機械(身体)の設計・制御を扱う工学 身体はあるが、動作はあらかじめ決められたものが中心
生成AI テキスト・画像・音声などを生成する AI 知能は高いが、出力はデジタル
Embodied AI 身体を持つ AI の研究分野 主に学術的な概念
フィジカルAI 知覚 → 推論 → 計画 → 行動を実世界で統合する AI ロボティクスと生成AIが重なる領域。産業実装寄りの呼び方

ロボットアームや人型ロボットだけでなく、自動運転車、ドローン、AMR(自律移動ロボット)、工場設備 もフィジカルAIの対象です。


2. 生成AIとの本質的な違い ― 5つの壁

「LLM がこれだけ賢いなら、ロボットもすぐに動かせるのでは?」と思うかもしれません。しかし、物理世界には生成AIにはない壁があります。

観点 生成AI(LLM) フィジカルAI
① 可逆性 やり直せる(再生成すればよい) 不可逆。落としたコップは元に戻らない
② 時間制約 数秒の応答でも許容される 制御は 数十〜数百 Hz(1秒間に数十〜数百回)で判断し続ける必要がある
③ 出力空間 離散的なトークン(語彙の中から1つ選ぶ) 連続値(関節の角度や速度を実数で指定する)
④ データ Web 上に大量のテキストがある ロボットの行動データは 少なく、収集コストが高い
⑤ 身体の差 モデルはどの環境でも同じように動く ロボットごとに関節の数や形状が違う(Embodiment Gap)

さらに 安全性 の重みが別格です。LLM のハルシネーションは誤情報で済む場合もありますが、ロボットの誤判断は 物理的な事故 に直結します。

2.1 数式で見る違い

LLM は、それまでのトークン列から次のトークンを予測します。

$$
p_\theta(x_{t+1} \mid x_{1}, \dots, x_{t})
$$

一方、ロボットの 方策(Policy)、つまり「状況に応じてどう動くかを決める関数」は、観測と言語指示から 行動 を出力します。近年の主流は、1ステップ分ではなく 未来 $H$ ステップ分の行動をまとめて出力する(Action Chunking) 方式です。

$$
\pi_\theta(a_{t}, a_{t+1}, \dots, a_{t+H-1} \mid o_t, \ell)
$$

  • $\pi_\theta$:パラメータ $\theta$(ニューラルネットワークの重み)を持つ方策
  • $o_t$:時刻 $t$ の観測(カメラ画像、関節角など)
  • $\ell$:「赤いコップを取って」のような言語指示
  • $a_t, \dots, a_{t+H-1}$:これから $H$ ステップ分の行動(関節角の目標値など)

この $\pi_\theta$ を大規模なデータで事前学習したものが、第12章で扱う VLA(Vision-Language-Action)モデル です。「GPT は次のトークンを予測し、VLA は次の一連の行動を予測する」と覚えておけば十分です。


3. なぜ「今」なのか

ロボット研究には数十年の歴史がありますが、2024〜2026年に注目度が一気に高まりました。背景には、技術と産業の両面の変化があります。

3.1 技術的なブレイクスルー

要因 内容 解説する章
VLA モデル Web 規模のデータで学習した VLM(画像と言語を扱うモデル)の知識を、ロボットの行動生成に転用できるようになった(RT-2 以降) 12
拡散モデル / Flow Matching による行動生成 「右から掴んでも左から掴んでもよい」のように 正解が複数ある動作 を、安定して学習できるようになった 10, 12
World Model 未来の映像や状態を予測する「世界のモデル」を作り、学習や評価に使えるようになった 13
GPU シミュレーション 数千の環境を並列に動かし、仮想空間で大量の試行錯誤ができるようになった 07, 08
オープンソース化と低価格ハード LeRobot や SO-101 などで、個人でもデータ収集から学習まで一通り試せるようになった 11, 20
エッジ推論 Jetson などを使い、ロボット本体の上で大型モデルを動かせるようになった 19

3.2 産業側のニーズ

  • 人手不足:少子高齢化により、製造・物流・建設・介護の担い手が不足している
  • 危険作業の代替:災害現場、高所、有害環境など、人が入りにくい場所での作業
  • 多品種少量生産:ティーチング(ロボットに動作を1つずつ教え込む作業)では変化に追いつかない

従来の産業用ロボットは、決められた動作を正確に繰り返す ことは得意ですが、未知の物体や環境の変化への対応は苦手でした。フィジカルAIは、センシングと学習によって 状況に合わせて柔軟に動く ことを目指します。


4. フィジカルAIの技術スタック全体像

フィジカルAIは単一のモデルではなく、多層のシステム です。本連載で学ぶ内容をこの地図に当てはめると、次のようになります。

ポイントは 「遅い頭脳」と「速い身体制御」の分離 です。人間も、「今日の献立を考える」ようなゆっくりした思考(System 2)と、「熱いものに触れて瞬時に手を引っ込める」ような速い反応(System 1)を使い分けています。

NVIDIA の GR00T は、ゆっくり考える VLM 側(System 2)と、高頻度で動作を生成する側(System 1)を組み合わせた構成です4。Google DeepMind も、推論を担う Gemini Robotics ER 2 と、行動を生成する VLA の Gemini Robotics 2 を組み合わせています2。

ソフトウェアエンジニアが注目すべき点
Gemini Robotics ER 2 では、VLA やナビゲーション API などの低レベル制御を 「ツール」として宣言し、推論モデルがそれを呼び出す 構成が紹介されています5。つまり、LLM アプリ開発でおなじみの Function Calling 型の Agent アーキテクチャが、そのままロボットの上位層になりつつある ということです。第1・2章と Part 6 でこの構造を掘り下げます。


5. 主要プレイヤーと2026年の動向

2026年9月時点の主な動きを整理します(いずれも各社の発表ベースです。性能に関する主張は各社自身の評価である点に注意してください)。

プレイヤー 主なモデル / ツール 2026年の主な動き
NVIDIA Cosmos(World Model)、Isaac GR00T(人型ロボット向け VLA)、Isaac Sim / Lab、Jetson CES 2026 で Cosmos Transfer / Predict 2.5、Cosmos Reason 2、GR00T N1.6、評価基盤 Isaac Lab-Arena、Jetson T4000 を発表し、LeRobot との統合も発表1。その後、推論・世界生成・行動生成を1つにまとめた「オムニモデル」Cosmos 3 を公開6
Google DeepMind Gemini Robotics 2 / ER 2 / On-Device 2 2026年7月に発表。人型ロボットの全身制御、器用な操作、複数ロボットの協調を打ち出した。ER 2 は Gemini API から利用できる25
Physical Intelligence π0 / π0.5 / FAST トークナイザ 汎用ロボット基盤モデルの代表格。行動系列を離散コサイン変換(DCT)で圧縮してトークン化する FAST などを提案。2026年には後継モデルも発表している7
Hugging Face LeRobot、SmolVLA、SO-101 オープンソースのロボット学習ライブラリ。低価格アーム SO-101 と組み合わせると、データ収集から模倣学習・推論まで一通り体験できる3
ヒューマノイド各社 Tesla、Figure、Unitree、Apptronik、Boston Dynamics など 工場などでの実証導入が進んでいる。Gemini Robotics 2 のデモでは Apptronik の Apollo 2 が使われた8

全体として、2026年は 「オープンモデル+シミュレーション+合成データ+エッジ推論」をまとめて提供するプラットフォーム競争 の段階に入っています。LLM の世界で起きた「基盤モデル → ファインチューニング → エコシステム」という流れが、ロボティクスでも再現されつつあると言えます。


6. ソフトウェアエンジニアのための対応表

ソフトウェア開発や AI 開発でなじみのある概念を、フィジカルAIの概念に対応づけておきます。今後の章を読むときの「辞書」として使ってください。

なじみのある概念 フィジカルAIでの対応 解説する章
トークン 行動トークン(離散化した関節角、FAST など) 12
次トークン予測 行動予測 / Action Chunking 10, 12
事前学習 + ファインチューニング ロボット基盤モデル + 自分のロボットでの追加学習 11, 12
API / Function Calling スキル(Pick、Place、Move)、VLA をツールとして呼び出す 01, 02, 17
Agent のプランニング タスク分解・階層型制御(System 2 → System 1) 02, 16
RAG 手順書・安全規程・設備マニュアルの参照 15
テスト環境 / ステージング シミュレーション(本番=実機の前に仮想環境で検証) 06〜08, 18
評価データセット / LLM-as-a-Judge シミュレーション評価・World Model による評価・実機評価 13, 18
合成データ シミュレーションデータ・生成動画 14
ガードレール / サーキットブレーカー 安全制約・緊急停止・フェイルセーフ 05, 16
ハルシネーション / 本番障害 誤った把持や衝突などの 物理事故 全体

7. 実践:Sense → Think → Act を MuJoCo で動かす

理論はここまでにして、手を動かしましょう。第0章のゴールは、環境構築 と、フィジカルAIの最小単位である 制御ループを自分で書いて動かすこと です。

7.1 シミュレータの選び方

本連載では次の3つのシミュレータを使います。実機がなくても、これらのソフトウェア上で物理法則に従うロボットを動かし、学習させることができます。

シミュレータ 特徴 必要環境 本連載での役割
MuJoCo Google DeepMind が保守する、軽量で高精度な物理エンジン。研究で広く使われている CPU のみで動作。Windows / macOS / Linux メイン(第3〜6章、第10〜12章)
Genesis GPU ネイティブで高速な新しいシミュレータ GPU があると高速 第8章
Isaac Sim / Isaac Lab NVIDIA の写実的なシミュレータ。大規模な並列強化学習の定番 RT コアを持つ RTX GPU が必須(公式の最小要件は RTX 4080 / VRAM 16GB) 第7章(クラウド GPU で実施)

7.2 GPU についての注意(GTX 10xx 世代を使う場合)

GTX 1080 など Pascal 世代の GPU を使う場合は、次の2点に注意してください。

  1. Isaac Sim は動きません。 RT コアを持たない GPU はサポート対象外です9。第7章はクラウド GPU(Azure / AWS / GCP の RTX 系インスタンスなど)で実施します。
  2. PyTorch はビルドを選ぶ必要があります。 PyTorch 2.8 以降の CUDA 12.8 ビルドでは Maxwell / Pascal 世代のサポートが外れ、CUDA 13 系でも Pascal はサポートされません10。GTX 1080 を使う場合は CUDA 12.6 ビルド を選び、インストール後に次のコマンドで確認してください。
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu126
python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_arch_list())"
# get_arch_list() に sm_60 が含まれていれば GTX 10xx で動作します

第6章までは CPU だけ で実行できます。GPU がなくても、まずは MuJoCo で基礎を固めましょう。VLA の学習(第11〜12章)では、ローカル GPU か Google Colab / クラウド GPU を使います。

7.3 環境構築

Python 3.10 以上を想定しています。パッケージ管理には uv をおすすめしますが、pip でも問題ありません。

# uv を使う場合
uv init physical-ai-study && cd physical-ai-study
uv add mujoco numpy

# pip を使う場合
python -m venv .venv
# Windows: .venv\Scripts\activate / macOS・Linux: source .venv/bin/activate
pip install mujoco numpy

インストールできたか確認します。

python -c "import mujoco; print(mujoco.__version__)"

7.4 2関節アームで Sense → Think → Act

2つの関節を持つ平面アームを作り、手先を緑色のターゲット位置まで動かします。コードは sense() / think() / act() の3つの関数に分けてあり、1.2節のループをそのまま実装しています。

sense_think_act.py
"""第0章: Sense → Think → Act ループの最小実装(MuJoCo)"""
import mujoco
import numpy as np

# ---- 1. 世界(ロボット+環境)を MJCF で定義 ----
MJCF = """
<mujoco model="two_link_arm">
  <option timestep="0.002" gravity="0 0 0"/>
  <worldbody>
    <light pos="0 0 3"/>
    <geom type="plane" size="1 1 0.1" rgba="0.9 0.9 0.9 1"/>
    <body name="link1" pos="0 0 0.05">
      <joint name="shoulder" type="hinge" axis="0 0 1" damping="0.5"/>
      <geom type="capsule" fromto="0 0 0 0.3 0 0" size="0.02" rgba="0.2 0.4 0.8 1"/>
      <body name="link2" pos="0.3 0 0">
        <joint name="elbow" type="hinge" axis="0 0 1" damping="0.5"/>
        <geom type="capsule" fromto="0 0 0 0.25 0 0" size="0.02" rgba="0.8 0.4 0.2 1"/>
        <site name="hand" pos="0.25 0 0" size="0.02"/>
      </body>
    </body>
    <site name="target" pos="0.2 0.35 0.05" size="0.025" rgba="0 1 0 0.6"/>
  </worldbody>
  <actuator>
    <motor joint="shoulder" gear="1" ctrlrange="-5 5"/>
    <motor joint="elbow"    gear="1" ctrlrange="-5 5"/>
  </actuator>
</mujoco>
"""

model = mujoco.MjModel.from_xml_string(MJCF)
data = mujoco.MjData(model)
hand_id = mujoco.mj_name2id(model, mujoco.mjtObj.mjOBJ_SITE, "hand")
target_id = mujoco.mj_name2id(model, mujoco.mjtObj.mjOBJ_SITE, "target")

# 初期姿勢:腕が一直線(特異姿勢)だとヤコビ転置法ではうまく動かせないため、肘を少し曲げておく
data.qpos[:] = [0.0, 0.8]
mujoco.mj_forward(model, data)   # 位置・ヤコビアンなどを計算して状態を確定


def sense(model, data):
    """知覚: センサー値(ここではシミュレータの真値)を観測として取り出す"""
    return {
        "qpos": data.qpos.copy(),          # 関節角度 [rad]
        "qvel": data.qvel.copy(),          # 関節角速度 [rad/s]
        "hand": data.site_xpos[hand_id].copy(),
        "target": data.site_xpos[target_id].copy(),
    }


def think(model, data, obs, kp=300.0, kd=1.0):
    """判断: 手先を目標へ近づけるトルクを計算(ヤコビ転置法)"""
    error = obs["target"] - obs["hand"]            # 手先位置の誤差(ワールド座標)
    jacp = np.zeros((3, model.nv))
    mujoco.mj_jacSite(model, data, jacp, None, hand_id)  # 手先の並進ヤコビアン
    tau = kp * jacp.T @ error - kd * obs["qvel"]   # τ = Kp・Jᵀ・e − Kd・q̇
    return tau


def act(model, data, tau):
    """行動: アクチュエータに指令を送り、物理を1ステップ進める"""
    data.ctrl[:] = np.clip(tau, -5, 5)
    mujoco.mj_step(model, data)


# ---- 2. 制御ループ ----
for step in range(1500):                      # 0.002s × 1500 = 3秒
    obs = sense(model, data)
    tau = think(model, data, obs)
    act(model, data, tau)
    if step % 100 == 0 and step <= 600:
        dist = np.linalg.norm(obs["target"] - obs["hand"])
        print(f"t={data.time:4.2f}s  手先={obs['hand'][:2].round(3)}  目標までの距離={dist:.4f} m")

final = np.linalg.norm(data.site_xpos[target_id] - data.site_xpos[hand_id])
print(f"最終誤差: {final * 1000:.1f} mm")

実行結果(MuJoCo 3.x で確認):

t=0.00s  手先=[0.474 0.179]  目標までの距離=0.3230 m
t=0.20s  手先=[0.178 0.368]  目標までの距離=0.0289 m
t=0.40s  手先=[0.199 0.353]  目標までの距離=0.0032 m
t=0.60s  手先=[0.2   0.351]  目標までの距離=0.0008 m
t=0.80s  手先=[0.2  0.35]  目標までの距離=0.0002 m
t=1.00s  手先=[0.2  0.35]  目標までの距離=0.0001 m
t=1.20s  手先=[0.2  0.35]  目標までの距離=0.0000 m
最終誤差: 0.0 mm

約0.5秒で、手先が目標位置 (0.2, 0.35) に収束しています。

7.5 コードの解説

① 世界の定義(MJCF)

MuJoCo では、ロボットと環境を MJCF という XML 形式で記述します。HTML でページの構造を書くのと同じ感覚です。body が剛体(1つのかたまりとして動く部品)、joint が関節、geom が見た目と当たり判定の形状、site が座標を取得するための目印、actuator がモーターに対応します。書き方の詳細は第6章で扱うので、ここでは「XML でロボットの形と関節の構造を定義している」と理解できれば十分です。

② Think:ヤコビ転置法

think() では、次の式でトルク(関節を回す力)$\tau$ を計算しています。

$$
\tau = K_p , J(q)^\top \left( x^{*} - x \right) - K_d , \dot{q}
$$

  • $\tau$:各関節に加えるトルクのベクトル
  • $x^{*} - x$:目標位置と現在の手先位置の差(どちらへ、どれだけ動けばよいか)
  • $q$:関節角度のベクトル(このロボットなら [肩の角度, 肘の角度])。$\dot{q}$ はその角速度
  • $J(q)$:ヤコビアン。関節を少し動かしたとき、手先がどちらへどれだけ動くかを表す行列(第4章で詳しく扱います)
  • $K_p, K_d$:ゲイン(どのくらい強く補正するかを決める係数)

$J^\top$(ヤコビアンの転置)を掛けることで、「手先を目標へ引っ張る力」を「各関節が出すべきトルク」に変換しています。$-K_d \dot{q}$ は、動きすぎや振動を抑えるためのブレーキ(ダンピング項)です。

直感的には、手先を目に見えないバネで目標へ引っ張っている イメージです。バネの強さが $K_p$、動きにブレーキをかける粘性抵抗が $K_d$ に対応します。制御工学では、このように「誤差に比例する力」と「速度に比例するブレーキ」を組み合わせる方式を PD制御 と呼びます(第5章で扱います)。

③ 特異姿勢の罠

コード中の data.qpos[:] = [0.0, 0.8] を削除し、腕がまっすぐ伸びた状態から始めてみてください。手先が目標に届かず、途中で止まってしまいます。 腕が一直線になると、ヤコビアン $J$ が特定の方向への動きを表現できなくなるためです。この状態を 特異姿勢 と呼びます。人間の腕も、肘を伸ばしきった状態からは、手先をそれ以上遠くへは動かせません。これと似た状況です。

「数式としては正しいのに、特定の姿勢では物理的に動けなくなる」という問題は、ロボティクス特有の難しさです。第4章の逆運動学(IK)で詳しく扱います。

④ この実装と「フィジカルAI」の関係

今回の think() は、人間が数式で書いた ルールベースの制御器 です。本連載のゴールは、この think() の部分を段階的に置き換えていくことです。

sense() と act() の形は最後まで変わりません。「Think をどう作るか」の進化こそが、フィジカルAIの歴史そのもの だと言えます。

7.6 ビューアで動きを見る(任意)

ローカル PC であれば、MuJoCo のビューアで動きを確認できます。制御ループを次のように書き換えてください。

import time
import mujoco.viewer

with mujoco.viewer.launch_passive(model, data) as viewer:
    while viewer.is_running() and data.time < 5.0:
        obs = sense(model, data)
        act(model, data, think(model, data, obs))
        viewer.sync()
        time.sleep(model.opt.timestep)   # 実時間に合わせる

macOS では python の代わりに mjpython コマンドで実行する必要があります。Google Colab など画面表示のない環境ではビューアを使えないため、第6章で画面を表示せずに描画する方法(オフスクリーンレンダリング)を紹介します。

7.7 演習

  1. target の pos を変えて、アームが届く範囲と届かない範囲を確かめてみましょう(アームの長さは 0.3 + 0.25 = 0.55 m です)。
  2. kp と kd を変えると、収束の速さや振動はどう変わるでしょうか。第5章の PID 制御につながる体験です。
  3. ループの途中(例:step == 750)でターゲットの位置を変え、アームが追従するか確かめてみましょう。ヒント:model.site_pos[target_id] = [...] で位置を変えたあと、mujoco.mj_forward(model, data) を呼びます。

8. まとめ

  • フィジカルAI は、知覚 → 推論 → 行動のループを物理世界で回す AI。Agent の出力先が「身体」になったものと捉えると理解しやすい
  • 生成AIとの違いは 不可逆性・リアルタイム性・連続的な行動空間・データ不足・Embodiment Gap、そして 安全性
  • 2026年は、VLA・World Model・GPU シミュレーション・低価格ハードがそろい、基盤モデルを中心としたプラットフォーム競争 の段階に入っている
  • 最新のアーキテクチャは「推論する上位層」と「行動を生成する下位層」に分かれ、上位層は Function Calling 型の Agent に近づいている。ここにソフトウェアエンジニアの知識が活きる
  • 実践では MuJoCo で Sense → Think → Act を実装した。今後の連載は、この think() を学習ベースの方策へ置き換えていく旅になる

次回予告

第1章「Tool Calling から Action へ」 では、LLM Agent とロボットの接点を扱います。SayCan、RT-1、RT-2 の流れを追いながら、「LLM がロボットのスキルを呼び出す」最小構成の Agent を実装します。


参考文献

  1. NVIDIA Newsroom, "NVIDIA Releases New Physical AI Models as Global Partners Unveil Next-Generation Robots", 2026-01-05. https://nvidianews.nvidia.com/news/nvidia-releases-new-physical-ai-models-as-global-partners-unveil-next-generation-robots ↩ ↩2

  2. Google DeepMind, "Gemini Robotics 2 brings whole body intelligence to robots", 2026-07-30. https://deepmind.google/blog/gemini-robotics-2-brings-whole-body-intelligence-to-robots/ ↩ ↩2 ↩3

  3. Hugging Face, "SO-101 – LeRobot Documentation". https://huggingface.co/docs/lerobot/so101 ↩ ↩2

  4. NVIDIA et al., "GR00T N1: An Open Foundation Model for Generalist Humanoid Robots", arXiv:2503.14734, 2025. https://arxiv.org/abs/2503.14734 ↩

  5. Google, "Introducing Gemini Robotics ER 2", 2026-07-30. https://blog.google/innovation-and-ai/models-and-research/google-deepmind/gemini-robotics-er-2/ ↩ ↩2

  6. NVIDIA, "Physical AI with World Foundation Models | NVIDIA Cosmos". https://www.nvidia.com/en-us/ai/cosmos/ ↩

  7. ODSC, "Physical AI in 2026: What Robotics Foundation Models Actually Mean for Engineers", 2026-08-07. https://opendatascience.com/physical-ai-in-2026-what-robotics-foundation-models-actually-mean-for-engineers/ ↩

  8. RobotToday, "Google DeepMind Unveils Gemini Robotics 2 AI Model for Humanoid Robots", 2026-07-31. https://robottoday.com/industry-briefing/google-deepmind-unveils-gemini-robotics-2-ai-model-for-humanoid-robots/9890 ↩

  9. NVIDIA, "Isaac Sim Requirements". https://docs.isaacsim.omniverse.nvidia.com/latest/installation/requirements.html ↩

  10. PyTorch Developer Mailing List, "CUDA toolkit version and architecture support update: Maxwell and Pascal architecture support removed in CUDA 12.8 and 12.9 builds", 2025-07. https://dev-discuss.pytorch.org/t/cuda-toolkit-version-and-architecture-support-update-maxwell-and-pascal-architecture-support-removed-in-cuda-12-8-and-12-9-builds/3128 ↩

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?