1. 定義と概要
推論エンジンとは、知識ベース(専門家の知識やルールをコンピュータが扱える形で蓄積したデータ)に格納された事実やルールを使って、与えられた状況から新しい結論を導き出す仕組みです。エキスパートシステム(専門家の知識をルールとして持たせ、専門家のように判断するコンピュータプログラム)は、知識ベースと推論エンジンという2つの要素で構成されます。知識ベースが「何を知っているか」を蓄える部分であるのに対し、推論エンジンは「その知識をどう使って結論を出すか」を担う処理の仕組みです。例えば「もしAならばBである」というIF-THENルール(「もし〜ならば〜である」という形で書かれた規則)と「Aが成り立つ」という事実があるとき、推論エンジンはこの2つを組み合わせて「Bが成り立つ」という新しい結論を導きます。
従来のプログラムは処理手順とデータを一体的に記述することが多く、知識が増えたり変わったりするたびにプログラム全体を書き換える必要があるという課題を抱えていました。
1965年にスタンフォード大学でDENDRAL(未知の有機化合物の構造を質量分析データから推定する、世界初のエキスパートシステムとされるプログラム)が開発されました。DENDRALは、知識を蓄える部分と、その知識を使って判断する部分を分離する設計の先駆けとなりました。この設計思想は、1980年代の第2次AIブーム(人工知能研究が活発になった時期の一つ)でエキスパートシステムの研究が進むにつれて広く確立されていきました。
この分離により、知識の追加や修正は知識ベース側の更新だけで済み、推論エンジン自体を作り直す必要がなくなるという利点が生まれました。この設計は、MYCIN(1970年代初めに開発された、血液感染症の診断を支援するエキスパートシステム)をはじめとする多くのエキスパートシステムに引き継がれています。
2. 試験対策ポイント
エキスパートシステムが知識ベースと推論エンジンという2要素で構成されるという組み合わせは、押さえておきたいポイントです。知識ベースは知識の追加・修正によって内容が変化する可変的な部分であるのに対し、推論エンジンは知識を処理する仕組みそのものであり、比較的固定的な部分にあたります。この役割分担を分離する設計の利点として、知識の追加・修正が必要になった場合でも知識ベース側を更新するだけで済み、推論エンジン側の処理ロジックを変更する必要がないという扱いやすさが挙げられます。
推論エンジンが知識を適用して結論を導く方式には、2つの方向があります。
| 方式 | 出発点 | 進め方 | 採用した代表例 |
|---|---|---|---|
| 前向き推論(フォワードチェイニング) | 既知の事実 | 当てはまるルールを順に適用して結論へ進む | DENDRAL |
| 後ろ向き推論(バックワードチェイニング) | 結論となる仮説 | 裏付ける証拠を遡って確認していく | MYCIN |
1965年に開発されたDENDRALは質量分析データという事実から出発し、1970年代初めに開発されたMYCINは原因菌の候補という仮説から証拠を確認します。両システムの対比は、あわせて整理しておきたい視点です。
推論エンジンという構造は、事実やルールに基づいて判断を行う現在のルールベースの仕組みの源流としても位置づけられます。チャットボット(利用者からの質問に自動で応答するプログラム)の応答分岐や業務システムの審査ロジックなど、ルールに従って判断する仕組みの多くが、この考え方を引き継いでいます。
3. 関連概念との比較・相違点
知識ベースとの最大の違いは、役割分担にあります。知識ベースは事実やルールといった「知識そのもの」を蓄える可変的な部分であり、推論エンジンはその知識を「どう使って結論を出すか」を担う処理の仕組みです。知識ベースを専門知識のデータベースに、推論エンジンをそれを操作するプログラムにたとえると、両者の関係がつかみやすくなります。エキスパートシステムを構築する際、知識ベースと推論エンジンは別々に設計・更新されることが多く、この分離こそがエキスパートシステムの扱いやすさを支える設計の要です。
もうひとつの重要な対比が、前向き推論と後ろ向き推論という2つの推論方式の違いです。前向き推論は既知の事実から出発してルールを順に適用し、新しい結論へと進む方式で、化学分野の質量分析データの解析にDENDRALが採用しました。後ろ向き推論は結論となる仮説から出発し、それを裏付ける証拠を遡って確認する方式で、感染症の診断にMYCINが採用しました。同じ推論エンジンという仕組みでありながら、事実から結論に向かうか、結論から事実に向かうかという進み方が正反対である点が、両者を分ける最大の軸です。
4. ビジネス・実務での活用シナリオ
コールセンターやチャットボットの分野では、問い合わせ内容という事実からルールを順に適用して該当する回答へたどり着く、前向き推論に近い考え方が自動応答システムのシナリオ設計に応用されています。
金融・保険の審査業務では、融資や保険の引受可否という結論(仮説)を検証するために必要な条件を遡って確認していく、後ろ向き推論に近い考え方が採用されています。判断根拠を人に説明できる形で運用するルールエンジン(審査基準を判定ロジックから切り離して一元管理する仕組み)に、この考え方が生きています。
設備の故障診断では、センサーの異常値という事実から故障箇所を絞り込む仕組みが使われます。知識ベース(過去の故障パターン)と推論エンジン(ルールを適用する処理)を分離しておくことで、新しい故障パターンが見つかった際に知識ベースの更新だけで対応できるという利点が生きています。
5. 要点まとめ
- 推論エンジンとは、知識ベースに蓄積された知識やルールを使って新しい結論を導き出す、エキスパートシステムの中核となる仕組みです。
- エキスパートシステムは知識ベース(可変)と推論エンジン(比較的固定)の2要素で構成され、両者を分離することで知識の追加・修正が知識ベース側の更新だけで済むという扱いやすさが生まれます。
- 推論エンジンの推論方式には、事実から結論へ進む前向き推論(DENDRALが採用)と、結論の仮説から証拠を遡る後ろ向き推論(MYCINが採用)の2種類があり、両者の違いが重要な対比です。
6. 確認問題
問1推論エンジンとは、知識ベースに蓄積された事実やルールを用いて、新しい結論を導き出すエキスパートシステムの中核部分である。
解答・解説をみる
○ 正しい
エキスパートシステムは知識ベースと推論エンジンの2要素で構成され、推論エンジンは知識ベースの知識を使って結論を導く役割を担います。
問2エキスパートシステムでは、知識が追加・修正されるたびに推論エンジン側の処理ロジックも書き換える必要がある。
解答・解説をみる
× 誤り
正しくは、知識ベースと推論エンジンを分離しているため、知識の追加・修正は知識ベース側の更新だけで済み、推論エンジンを変更する必要はありません。これは両者を分離する設計の利点です。
問3DENDRALは既知の事実から出発してルールを適用していく前向き推論(フォワードチェイニング)を、MYCINは結論となる仮説から証拠を遡って確認する後ろ向き推論(バックワードチェイニング)を採用した。
解答・解説をみる
○ 正しい
DENDRALは化学分野の質量分析データという事実からルールを適用する前向き推論、MYCINは感染症の診断という仮説から証拠を確認する後ろ向き推論を用いました。両者の対比は取り違えやすい点です。

