next up previous
Next: 2.2 プロダクションルールの表現 Up: 2 プロダクションシステム Previous: 2 プロダクションシステム

2.1 プロダクションシステムの構成

プロダクションシステムは, の3つを基本要素としています. 図1に,プロダクションシステムの構成を示します. プロダクションシステムは,あらかじめルールの集合を登録しておき(0),登録して 外界から初期データ(1)や目的とするパターンを与えて(2)用いるものです. ゴールが与えられた場合には,作業記憶の内容がゴール状態を満たし ているかを判定し(3),満たしていれば停止します. ゴールが与えられなかったり,ゴールが満たされていない状態であった場合に は,(4)と(5)のデータ移動によりマッチングがなされ,(6),(7)へと進みます. (7)でもう実行するルールがなくなると停止します. 実行できる処理があれば(8)それを行ないます. (9)は,ルールの行動部で新しくプロダクションルールを加えたり修正したり することを行なう場合を示します.このようにプロダクションメモリの内容を 変更する形のプロダクションシステムは,適応型プロダクションシステム (adaptive production system)と呼ばれたりします.
図 1: プロダクションシステムの構成図
\includegraphics[width=10.0cm]{pssystem2.eps}
プロダクションルールは,

             if 条件 then 行動
という形の知識を表現するためのルール記述です. インタプリタは,プロダクションルールの選択と実行を行ない,認識行動サイ クル(recognition-act cycle)と呼ばれる一連の動作を繰り返します. 認識行動サイクルは,まず,作業記憶内のデータと条件部が照合(matching)す るプロダクションルールをプロダクションメモリの中から探します.捜し出さ れたルールは競合集合(conflict set)と呼ばれます.競合集合が空集合になっ た場合には,認識行動サイクルは停止します.競合集合がひとつのルールだけ であれば,そのルールの行動部を実行します.競合集合のルールが複数ある場 合には,どのルールから行動を実行するかという制御方式が必要となります. また,競合集合を作りあげる場合に,どのルールの条件部から作業記憶データ と比較するかという選択の部分にも制御機構が必要となります. 一般に,初期データやルールセットから推論を行なう場合は前向き推論 (forward chain)と呼ばれ,目標とルールセットから推論を行なう場合は後ろ 向き推論(backward chain)と呼ばれます. 通常のプロダクションシステムは前向き処理を行なうものが多く,以下で示す プロダクションシステムも前向きの処理を行ないます.後ろ向き推論の代表例 が Prolog 言語です.
next up previous
Next: 2.2 プロダクションルールの表現 Up: 2 プロダクションシステム Previous: 2 プロダクションシステム
generated through LaTeX2HTML. M.Inaba 平成18年5月21日