本研究では知識ベース・システムを実時間制御問題に応用するための諸問題を取り扱う。この研究では、実時間制御の目的にはとかく敬遠されがちな知識ベース・システムの持つ様々な利点を、切実に必要としている問題が現実に存在していることに注目し、このような問題領域に対応できる知識システムの構築を目指す。 知識ベース・システムが実時間制御に忌避される理由としては、推論の実現が主に探索などによって行なわれるため、その処理に必要な時間の予測が困難になることなどが挙げられる。しかしその一方で、惑星間探査プローブなど未知の状況に適応する必要のあるシステムや、自律型生産制御システムなど対象とする状態空間が既知ではあるがあまりに広過ぎて、事前に全ての状態に対する対処法を準備できないケースなどが存在する。これらの問題に対処するには、知識をルールの形で蓄え、状況に応じて適切と判断されるルール群を用いた推論を行ないながら、システム全体を制御していく能力が必要とされる。この研究を通して、知識ベース・システムを利用することにより、巨大で複雑な環境やプログラム作成時には詳細に知ることのできない新しい環境の中で、与えられた目的に合致した制御を行なう可能性を探る。 本研究において、「実時間」とは制御対象の変化速度によって規定される時間内に、与えられた問題の解を得られること、もしくは解が見つけられないという結論を確定できることと定義する。現状では知識ベース・システムの問題解決に要する処理時間を保証することが困難であるため、知識ベース・システムをフィードバック・ループに組み込むことはせずに、状況を解析して人間に示唆を与える自動診断システムに応用することが行なわれてきた。知識を利用するシステムの解くべき問題はその内容によって、分析型の問題と合成型の問題とに大きく分類することができるが、今までの知識ベース・システムの対象とする領域としては分析型の問題がほとんどであった。一方の合成型の問題には設計、制御、スケジューリングなどが含まれるが、これらを目的とする知識ベース・システムを利用した問題解決システムはあまり実現されることがなかった。 知識システムを制御などの合成型の問題に応用するためには、その場面で適用可能なオペレータ群の中からあるオペレータを選択して適用した場合、それがどのような効果と副作用をもたらすかを予測し、その結果にしたがって適切なオペレータを採用する必要がある。このため合成型の問題を解決するシステムは必然的にシミュレーションを伴い、実時間性が要求される場合には将来の予測を実際の現象が生起する時間以内で行なえなければならない。このような探索問題では一般的に組合せ爆発の可能性をはらみ、探索空間を上手に制限することができるか否かがシステムの性能の鍵を握ることになる。ここに知識を階層化し、適切な場面で適切な知識を利用することによって探索空間を狭めていく能力が必要とされる。このような目的には手続き的な記述よりも述語的な記述の方が適切であると考えられ、知識ベース・システム利用の必要性が発生する。 本研究では、知識ベース・システムに基づく実時間制御システムを実現し、このシステムの上で実際に問題解決を行なうことによって、どのような知識が、特に知識の用い方に関する知識であるメタ知識について、どのようなものが有効であるかを示すことを主眼とする。同時にこの知見から実時間処理に不可欠な、あるいは有効なメタ述語を考え、その設計と実現を行なうことを目的とする。 これらの目的を達成するため、現存する実時間で知識処理を行なうシステム、および実時間での問題解決を必要とする問題の分析を行ない、このような問題領域に適用可能な実時間問題解決システムがどのような仕様を持たなければならないかを考察した。 ・推論(探索)の過程を充分制御できること メタ述語が利用できることが必要である。このため処理系が基礎とする論理体系がMulti Layered Logicであり、集合論に基づいた推論が可能であることが必要となる。 ・プログラム・レベルで実時間性を記述できること メタ述語に時間を引数とする述語がなければならない。例えば、ある問題解決に要する時間が指定時間を超過したら、その問題の解決を放棄することができる必要がある。 ・知識の階層性を活かしたプログラミングができること 多くのメタ・レベルの階層におけるプログラミングが、整理された形でわかりやすく行なえなければならない。またシステムがこのような情報を利用して、推論とオブジェクトのメタ・レベルに相応しい振る舞いをすることが要求される。 ・探索に用いる知識を切替えたり、編集できる能力を与えられること 推論時の環境に応じて、推論に用いる知識の選択や、推論システムが保持する知識の再構成が、よりメタな知識などによって行なえることが必要である。 このような要求仕様を踏まえ、また探索演算における探索空間と時間計算量に関する定量的な議論を行なった後、実時間推論制御処理系RRCSのプロトタイプを開発した。 このシステムは多層論理MLLに基づく述語論理システムであり、集合の扱いや属性の継承が容易に行なわれるようにした。また、この他に ・探索の方法を指定する豊富なメタ述語を備え、 ・一定の時間内での問題の解決、 ・問題を解くために用いるルール群の指定、 ・推論のメタ・レベルの特定によるbacktrack時のデータ回復の制御、 などが行なえるようにした。さらに、知識ベースに与えられるすべてのルールを、実時間推論制御処理系が扱う一般のデータと同じ構造で実現することによって、ルール自体を知識によって操作編集できるような能力をも与え、将来の知識の自動獲得に至る可能性を実現できるようにした。 さらにこのシステムの上でアプリケーションとしてOTVネットワークのスケジューリング・システムを開発し、試作した言語処理系がこのような問題の解決課程を表現するために必要最小限の機能を実現できているかどうかを確認するとともに、この過程を通して問題解決に有効と見られるメタ知識とはどのようなものかを考察した。 OTV(Orbital Transfer Vehicle)とは、地球周回軌道に存在する燃料ステーションから燃料補給を受けて、人工衛星などを所定の軌道へ低コストで輸送するロケットのことである。複数の燃料ステーションと複数のOTVがある場合、その運用形態はネットワーク様になる。衛星などが低高度軌道に打ち上げられてから目標軌道へ達するまで、どのステーションを経由しどのOTVで輸送するかを決定するのがOTVネットワークのスケジューリング問題である。この問題は計画問題であるが、OTVが故障したり、ペイロードの低高度軌道投入時刻が天候の影響などの理由により変更される可能性があるため、フレキシブルな対応ができるように、実時間でスケジューリングを行ないながら運用できることが必要である。 この問題の解決において、探索空間を狭めるために、メタ知識を用いた枝刈りと各種の探索の仕方を指定したメタ述語を用い、探索空間をうまく制御する事によって解の質をあまり低下させる事無く探索時間を減らす事が可能である事、その時に探索空間を減らすために用いるメタ知識が有効である事が実験できた。 今後の課題としては以下のものがある。 ・実時間推論制御処理系の改良 ・状況の認識を行なうメタ知識の同定 ・知識の自動獲得につながる状況の特徴抽出と抽象化 ・戦略決定時に見られるメタ・メタ知識の同定とシステム組み込み 今後とも引続き、これらに関する継続的な研究が必要であると考える。 |