エキスパートシステムにおける競合解消ルールの線型順序化
スポンサーリンク
概要
- 論文の詳細を見る
エキスパートシステムの一部として競合解消ルールがある。同時に発火可能なルールが複数個存在した場合のルールの選択手段である。競合解消ルールの与え方によってエキスパートシステムの動作は全く異なってくる。OPS5においては競合解消ルールとして,LEXとMEAが採用されている。これは最新のワーキングメモリに対応するルール,より条件の厳しいルールから発火するという戦略である。これに対して,OPS5の戦略はユーザにトリッキーなコーディングを要求するものであるという意見もある。OPS83やCLでは,ユーザに競合解消ルールのプログラミングを許している。またメタルールによる競合解消戦略の記述を行う手段も提唱されている。確かにユーザプログラマブルであればいかなる動作も記述できる。しかしユーザに競合解消ルールをプログラムさせるのは混乱を招くものであり,あくまでOPS5のパラダイムの中で戦略を考えるべきであるという意見もある。このように競合解消ルールに対する考え方はさまざまであるが,それによってシステムがどのように動くのかユーザに容易に認識できることが最も重要な条件であると思われる。そこで我々はルールの優先順位に着目した。ルールの優先順位とは,コンパイル時に任意のルールの組に対して定まる発火順序である。これによって競合解消ルールを作成すれば,ユーザは容易にシステムの動きをトレース出来る。発火可能なルールの組にたいしてどちらが優先されるかを記述すれば、任意の優先順位が記述できる。当リコーソフトウェア研究所で開発した推論エンジンGIEにおいては,全てのルールに自然数を割り当てることにより、ルールに線型順序を与え,競合解消をおこなっている。だが優先順位が必ず線型順序になるとは限らない。実際の局面で生じた競合集合のなかでは優先順位は線型順序になっているであろう。しかし同時発火可能な2つのルールを持ってきたときにどちらが優先か一意的に定められたとしても,その優先順位をまとめた関係は半順序にすらならない恐れがある。競合解消ルールを,順序関係でない優先順位として持っているとすると問題がある。静的に定まっているはずの優先順位を局面ごとに検索する必要が生ずるうえ,それが正当な優先順位かどうかチェックすることが出来ない。そこで同等の力を持つルールセットと優先順位で,優先順位が線型順序になっているものを生成することによって問題解決を試みた。
- 1988-09-12