【第31回】AIは行動の計画を立てられる?STRIPSとは
ロボットが目的地にたどり着くには、何をどんな順番で行えばよいのでしょうか?
前回の「プランニング」を具体化し、AIが行動のルールを理解するためのテンプレート、それが「STRIPS(ストリップス)」です。
この記事では、AIがいかにして計画の「書き方」を決めているのか、その仕組みをやさしく解説します。
1. 読み方
STRIPS (ストリップス)
※Stanford Research Institute Problem Solver の略称です。
2. 意味(定義)
STRIPSとは、AIがプランニング(計画作成)を行う際に、「アクション(行動)」の内容を、コンピュータが理解しやすい形式で記述するための言語(ルール)のことです。
「この行動をするには、これが必要だ(前提条件)」と「この行動をすると、世界がこう変わる(結果)」という情報を、決まったフォーマットで書き込みます。
AIが計画を立てるときは、まず以下の要素を整理します。
初期状態 (Initial State): 今、目の前にある状況。(例:生卵がある)
目標状態 (Goal State): 最終的に達成したい状況。(例:卵焼きができている)
アクション (Action): 行うべき動作。
そして、この「アクション」の中身を、コンピュータが迷わず手順書を作れるように、以下の3つのセットでルール化するのがSTRIPSの特徴です。
前提条件 (Precondition): その動作をするために、あらかじめ満たされていなければならない条件。(例:生卵がある、フライパンがある、火がついている)
削除リスト (Delete list): その動作をした結果、失われてしまう状態。(例:「生卵」という状態がなくなる)
追加リスト (Add list): その動作をした結果、新しく発生する状態。(例:「卵焼き」が完成した!)
💡 料理のレシピで例えると
「卵を焼く」というアクションをSTRIPS風に書くとこうなります。
【アクション】: 卵を調理する
【前提条件】: 卵がある、フライパンがある、火がついている
【追加リスト】: 「卵焼き」が完成した!
【削除リスト】: 「生卵」がなくなっちゃった
このように、「何が必要で(前提)」「何が増えて(Add)」「何が消えるか(Delete)」をセットで書くのがSTRIPS流です。
📌 ここで整理!試験対策まとめ
計画(手順書)そのもの: プラン (Plan)
計画を立てること: プランニング (Planning)
計画を立てさせるための仕組み・ルール: STRIPS
3. 歴史・背景
STRIPSは、1970年代にアメリカのスタンフォード研究所 (SRI) という有名な研究機関で開発されました。
この時代のAIは、今のような「大量のデータから学習する」スタイルではなく、「人間がルールを書き込んで、論理的に考えさせる」というシンボリックAI(記号的AI)が主流でした。
当時の研究者たちは、「どうすれば複雑な問題を、コンピュータが計算可能な『アクションの組み合わせ』に変換できるか?」という課題に直面していました。
その模索の末に生まれた、プランニングのための非常に強力でシンプルな記述ルールこそが、STRIPSです。まさに「論理的な計画立て」における金字塔といえる技術なのです。
4. 比較・対比(似た用語との違い)
■ プランニング vs STRIPS
プランニング: 「ゴールへ辿り着くための手順を探す」という「行為・プロセス」そのもの。
STRIPS: アクションの内容を記述するための「言語・フォーマット」。 (例:プランニングは「料理を作る工程」、STRIPSは「レシピの書き方ルール」)
■ STRIPS vs 一般的なIf-Thenルール
If-Thenルール: 「もしAならBせよ」という、単発の命令。
STRIPS: 「Aという条件を満たし、実行すると世界からCが消えてDが増える」という、「状態の変化」を伴う記述。 (例:If-Thenは「信号が赤なら止まれ」、STRIPSは「交差点を通ると、自分の位置情報が更新される」)
■ STRIPS vs 探索 (BFS/DFS)
探索: すでに存在する迷路のルートを、端から辿ってゴールを探すこと。
STRIPS: 「この道具を使って、こう動かせば、ゴールにたどり着けるはずだ」という、新しい手順(プラン)そのものを組み立てるためのルール。
■ STRIPS vs ディープラーニング (現代のAI)
STRIPS(シンボリックAI): 明確なルールと論理に基づいた、人間が理解可能な計画。(ルールベース / 記号的AI)
ディープラーニング: 大量のデータから「なんとなくこういうパターンだ」と学習する、確率的な判断。(データ駆動型 / ニューラルネットワーク)
5. 活用シーン
STRIPSの考え方は、ルールが明確な「状態の変化」を扱う分野で今も生きています。
ロボットの動作計画: 「ロボットアームが部品を掴む(前提:格納箱を開いている、結果:部品を保持している)」といった動作の組み立て。
自動倉庫の管理システム: 「荷物を棚から出す(前提:通路が開いている、結果:棚が空になる)」といった、物流の流れの最適化。
物流・配送システム: 「トラックAに荷物(荷物X)を積み、ルートBを通って、倉庫Cに届ける」という、一連連動した配送プランの作成。
ゲームのイベント進行: 「プレイヤーが鍵を入手する(前提:鍵が近くにある、結果:扉を開ける条件を満たす)」といった、シナリオの制御。
※現代では、STRIPSSTRIPSの考え方をさらに進化させた「PDDL」などのより高度な記述言語が使われることが一般的です。
6. G検定での出題傾向
G検定では、STRIPSそのものの細かい仕様よりも、「何ができるルールなのか」というエッセンスが狙われます!
キーワード: 「前提条件(Precondition)」「追加リスト(Add list)」「削除リスト(Delete list)」を見たら、STRIPSの構成要素です。
役割の理解: STRIPSは「アクションを記述するための言語(形式)」である、という点。
シンボリックAIとの関連: 古典的AI(ルールベース)の文脈で登場します。
7. G検定の例題
【問題1:最頻出】
STRIPSにおける「アクション」を記述する際、その行動によって新しく発生した状態を示す要素として、適切なものはどれですか?
A. 前提条件 (Precondition)
B. 追加リスト (Add list)
C. 削除リスト (Delete list)
D. 期待値 (Expected value)
【問題2:頻出】
STRIPSの仕組みに関する記述として、最も適切なものはどれですか?
A. 大量の画像データから、物体の特徴を自動的に抽出するためのルールである。
B. アクションを実行した結果、失われる状態(消滅する要素)を定義するものである。
C. 確率的なゆらぎを計算し、未来の数値を予測するための数学的モデルである。
D. ニューラルネットワークの重みを更新するための学習アルゴリズムである。
【問題3:ひっかけ】
STRIPSに関する記述として、誤っているものはどれですか?
A. アクションを実行するために満たされている必要がある条件を「前提条件」と呼ぶ。
B. STRIPSは、アクションの結果として起こる「状態の変化」を扱うことができる。
C. STRIPSを用いることで、AIがゴールへ向かうための手順(プラン)を構築できる。
D. STRIPSは、学習データから自動的に新しいルールを発見するための機械学習手法である。
8. 解答と解説
【問題1】 正解:B
解説: 「新しく発生した状態」を示すのは、**追加リスト(Add list)**です。Aは行動前に必要な条件、Cは失われる要素、Dは統計学の用語です。
【問題2】 正解:B
解説: STRIPSには「何が消えるか」を定義する**削除リスト(Delete list)**が含まれます。Aはディープラーニング(畳み込みなど)、Cは確率統計、Dはバックプロパゲーション(誤差逆伝播法)の説明です。
【問題3】 正解:D
解説: これがひっかけです!STRIPSは「人間がルールを記述する」手法であり、データから「自動的にルールを発見する」機械学習(学習)の手法ではありません。A, B, CはいずれもSTRIPSの正しい説明です。
📝 総評・まとめ 今回の「STRIPS」では、AIが計画を立てるための「言葉のルール」を学びました。「前提条件」「追加リスト」「削除リスト」という3つの要素さえ押さえておけば、プランニングの仕組みを理解したことになります。
🚀 次回予告 「手順書(プラン)」と「書き方(STRIPS)」がついに完結! 次のステージは、AIの脳内で行われる「計算と数学」の世界へ。
【第32回】AIは「まだ決まっていない値」をどう扱う? 確率変数とは
お楽しみに!
✅ この記事が役に立ったら「スキ」で応援してください!
あなたの応援が、次の解説を作るエネルギーになります!🚀
