自動計画(Automated Planning)
自動
計画は、
人工知能の一分野であり、特に機械やエージェントによる効果的な行動の順序や
戦略を設計することに焦点を当てています。この技術は、自律型ロボットや
無人航空機、知的エージェントなど、さまざまなアプリケーションで使用されています。その根底には、未知の状況の中でも最適な解決策を見出す必要があるという特徴があります。一般的な
制御システムでは予測可能な問題の解決が図られますが、自動
計画では、その解決策がしばしば複雑で多様な次元にわたるため、発見と最適化の手法が必須となります。
プランニングの概要
計画や
戦略の設定は、周辺環境が明確で理解可能な場合、人間や機械によって事前に行うことができる一方で、未知の環境では状況に応じて
戦略を変更することが多いです。
計画の方法は大きく分けて、あらかじめ
計画を立てる「オフラインプランニング」と、実行中に
戦略を変更する「オンラインプランニング」に分かれます。また、
計画を更新する行為を「リプランニング」と呼び、反復的な試行錯誤が伴うことが一般的です。
自動
計画の手法には、動的
計画法や
強化学習、
組合せ最適化などがあります。自動
計画器(プランナ)は、通常、初期状態、目的のゴール、実行可能なアクションの集合を入力として要求します。これらは形式的手法、特にSTRIPSを通じて記述されます。
古典的プランニング
古典的プランニングは、全ての前提条件を単純化した状態でのプランニングであり、不確実性やアクションの並列性が存在しない状況を想定します。このプランニングは、単純なモデルの扱いから来る計算の複雑性が高く、最も基本的な問題でもPSPACE完全性を持っています。このため、
計画の解決方法の研究は主に二つのカテゴライズに分かれます。
1.
モデルベースのプランニング: 問題を満たす条件問題(Satplan)へと変換し、多項式時間で解けるかが主眼とされています。
2.
状態空間探索: ヒューリスティック関数の開発や探索手法自体の研究が行われ、メモリ使用量や実行時間に影響を与えます。
ヒューリスティック関数
ヒューリスティック関数は、緩和問題を解くことによって得られると思われるコストの下限を抽出します。近年では、特定のドメインに依存しない非依存ヒューリスティックが重視されていますが、特定のアプリケーションにはドメイン依存ヒューリスティックによる研究も続いています。
非決定的プランニング
非決定的な環境でのプランニングは、アクションの実行が不確実な場合を扱います。アクションの結果が複数の可能性を持ち、それに伴う非決定性により、実行する
戦略が変わる状況での解決策を模索します。ここでは、アクションの結果を示す有向非循環グラフ(DAG)が生成され、問題は確率的プランニングによって明記されます。このような非決定性の影響を受けるケースでは、ポリシーが求められます。
実際の応用
自動
計画は、ロボティクスや宇宙探査、物流など、多くの実環境で利用されています。例えば、
ハッブル宇宙望遠鏡は短期
計画システム「SPSS」と長期
計画システム「Spike」を導入しており、これらは自動
計画の実際的な応用例の一部です。
このように、自動
計画は様々な環境や応用分野で必要とされ、技術の進化と共にその可能性が広がっている重要な領域です。