G-Shell: Grid -based Expert System Shell


about

は じめに

G-Shellは,GRID-Shellの略で,エキスパートシステムを作成するための道具(ツール)です. 対象領域の知識をデータとして格納し,それを使ってエキスパートシステムを開発することができることから, こうした道具のことをShell(枠組み)と呼んでいます. つまり,図1のようなユーザの知識の殻に当たるのがG-Shellです.G-shellはエキスパートの知識を問題可決に利用するエキスパートシステムを GRIDコンピューティングの環境に適用することで,これまでのワークステーションやPCだけでなく,Webブラウザや携帯電話を利用して,どこからでも アクセスできるようになります.

 


図1 G-Shellと応用領域

G-Shelにつつまれたユーザの知識は,実際にエキ スパートシステムに変わっていきます.医療診断のルール,自動車の故障診断といった事例 が,いわばユーザの領域の知識です.以下に,G-Shellの背景を簡単に述べます.またWisdomtexのスキンエキスパートでは,診断結果と商品と の関連付け,およびそれに要する処理をG-Shellを用いて記述しています.

具体的にG-Shellによるエキスパートシステムの展開のステップは次のようになります.

   1. Shell-KABAの知識ベースファイルの事例で,知識の記述方法を学ぶこと
   2. エキスパートシステムの実際の動作を知って,どのようにして自分の応用になるのかを考えること
   3. 知識ベースの構築や収集の方法を,知識ベース編集プロセスから学ぶこと
   4. エキスパートシステムをデモンストレーションして,現実問題に対応できるように考えること
   5. 次の規模の大きい問題のための準備をすること



G- Shell-KABAと他のShellとの関係について

 G -Shellにおけるエキスパートシステム構築の基本的枠組みは, "IF … THEN 〜"(もし…ならば〜である)というルールで知識を書いていく方法を採用しています. いわゆるルールプログラミングないし,プロダクションシステムです. 但し,ルールを適用していく制御方法は,種々の試みを取り入れています. 例えば,do_1型,do_all型というルールの活性化方法です. do_1型のルールは,一度ルールが適用されると再度は使われない制御です. do_all型は逆に,何度でもルールを活性化できるものです. マイクロコンピュータでのルール方式としては,こうした制御は導入されていないのが普通です.

  推論方式は,前向き方です.後戻り推論はスタンフォード大学のMYCYNに採用された推論方式ですが, 文脈を考慮して目標を設定することが非常に難しいため,普通はあまり使われていません. 

 EXPERT の形式の良いところは,質問項目を少なくしていくためのFFルール(データとデータの関係を述べるルール)と, FHルール(データから目標を結びつけるルール),HHルール(目標から次の目標,あるいは,次の処理を決めるルール) というルールの意味づけが明確な点です. その他,データを収集するための質問項目の設定(単一選択,複数選択など)も知識の整理には, 理解しやすい形式となっています.この点は,付録の故障診断の知識ベースを参考にしてください.

 G -Shellでは,フレーム型の知識,いわゆるオブジェクト指向は使えません. 但し,質問項目については,ややフレーム的な書き方ができますが,完全なものではありません.我々はこれまで,Prologによるオブジェクト指向言語を 開発してきましたが,Shellにするには, あまりにユーザに負担がかかるという点で,ルール方式をShell-KABAに採用しています. フレーム型の言語が市販の道具として開発されていますが,フレーム全体の制御をどのように記述するかが難しいので, G−Shellにフレームの枠組みを全面的には用いておりません.

G- Shellは東京理科大学バイオシステム研究所で開発されたShell-KABAをベースとして,拡張しています.そのため,Shell- KABAで作成されたルールもそのまま実行することができます.加えて,G-Shellは,ルールのXMLによる記述,エキスパートシステムのWebサー ビス化,エキスパートシステムのGrid化といった3つの拡張が施されており,従来のワークステーション,PCでのスタンドアロンアプリケーションに加え て,PCや携帯電話のWebブラウザからアクセスすることができます.Webベースの場合には,計算はサーバやGRIDコンピュータによって行われるた め,ローカルの計算機や携帯電話には計算負荷がかかることはありません.

<>G -Shellとその他のShellの関係は,図2のように整理することができます.


図2 Shell-KABAとその他のShellとの関係


G- Shellの利用形態

G- Shellは,上記に示したような If--Then形式のルールをG-Shellのファイル独自のXML形式で記述します.ルールの保存と利用形態は,以下の2つが可能となっています.
  1. ルールをローカル(PC)などに保存し,ローカル のスタンドア ロンアプリケーションとして実行する.
  2. ルールをサーバに保存し,Webサービスとして PCや携帯電話 などから利用する.
以 下にスタンドアロン版のG-Shellおよび,携帯電話から実行したWeb版のスクリーンショットを示します.


SRN1  CELL
ス タンドアロン版と携帯版のG-Shell