平成7年度 委託研究ソフトウェアの提案 |
この点に関して提案者は ICOT 在籍時の末期から後継プロジェクトにおけるタ スクグループ活動を通して、モデル生成型定理証明器 MGTP 上でさまざまな高 次推論体系を実現する手法の開発に寄与してきた。とくに、知識の追加により 元の理論の定理が棄却されてしまう推論(非単調推論)や、観測結果からその 原因を説明するために仮説を生成する推論(アブダクション)に関して、理論 的基礎と MGTP による計算手続きを提案した。
また MGTP の観点から言えば、MGTP は定理証明分野における高速なプルーバ としての成果以外に、論理プログラミング分野において、選言付き論理プログ ラミング (disjunctive logic programming) のボトムアップ処理系として国 際的に評価されている。後者における MGTP の側面ではとくに、失敗による否 定 (negation as failure; NAF) の計算のための「井上・越村・長谷川の方法」 が、論理プログラムの安定モデル (stable model) の代表的な計算方式として、 昨年出版された Journal of Logic Programming の10周年記念論文のほか、 多くの研究者により紹介されている。しかしながら、この方式およびアブダク ションの MGTP による計算方式(IJCAI-93 で発表)を実現したソフトウェア に関しては、これまで未整備だったため、IFS としては未だに登録されておら ず、国内外の数多くの研究者からの問合せに対して十分対応できていなかった。
このように、(1) 高速な MGTP の整備が整いつつあり、(2) 非単調推論とアブ ダクションを MGTP で計算させる理論がほぼ整い、(3) 国際的にもプログラム の公開を希望する声が多いことなどから、高次推論プログラムを整理してソフ トウェアとして提供する必要性は非常に大きいといえる。
さらに、提案者の最新の研究では、ダイナミックに環境や知識が変化する問題 領域においては、信念や状態の変化を伴う推論方式について、上記の非単調推 論やアブダクションを応用することで取り扱うことができることがわかってき た。したがって、上記の高次推論に加えてこうした高度な知識表現をサポート する言語を処理するプログラムも MGTP 上で実現できるのではないかと考えら れる。
これまでに得られた結果の拡張としては、アブダクションと非単調推論の自然 な統一を目指す。このために、アブダクティブ論理プログラミング(Abductive Logic Programming; 以下 ALP と記す)の処理系を MGTP 上に実現する。ALP は Imperial College の Kowalski 教授のグループにより提案され、デフォル トの否定である NAF 以外に、アブダクションのための仮説を導入することが できるもので、非単調推論とアブダクションを同時に扱うことができる論理プ ログラミングの拡張されたクラスである。ALP の計算手続きとしてはまだ限定 されたクラスに対するものしか存在していないが、MGTP のボトムアップ計算 の特徴を活かせば、かなり広いクラスに対して健全かつ完全な手続きを得るこ とができる。しかもこの ALP の処理系を作ることで、NAF およびアブダクショ ンの MGTP 上での計算プログラムを同時に提供することができ、したがってこ れまでからの国内外からの希望にも答えることができる。
また本研究では新たな技術として、状態変化が記述できる言語(これをアクショ ン言語と呼ぶ)の処理系を MGTP 上に実現することも目指す。状態変化を扱う ことはAIにとって古典的な問題であり、かなり古くから研究されてきたが、 最近ロボット・プランニングなどでも脚光を浴びている。この問題に正面から 取り組もうとすると、非単調推論やアブダクションの技術が必要になる。した がって上記 ALP 処理系の応用プログラムとして、あるいはさらなる発展系と して、こうしたアクション言語を実現させることを目標とする。
まず、[1],[3] で Prolog 版を作る理由は、海外の研究者からの問合せが Prolog プログラムを望むものが多いということ、学生へのプログラミング教 育が Prolog から始められること、などによる。
[1a] では、「井上・越村・長谷川」の方式に基づき、NAF を含む論理プログ ラムである一般論理プログラム、選言付き論理プログラム、拡張論理プログラ ム、選言付き拡張プログラムなどのクラスにおける安定モデルあるいは解集合 (answer set) を求める手続きをインプリメントする。これは各種のプログラ ムを MGTP の入力節へ変換するような「一階述語コンパイラ」により行われ、 MGTP 上のボトムアップなモデル生成を通して得られたモデルを解集合の形に 戻す方式で行う。
[1b] では、アブダクションを行うための(NAF を含まない)プログラムを Skip 方式と呼ばれる変換方式により MGTP の入力節に変換する。したがって これも一階述語論理へのコンパイラの作成が中心になる。
[1c] で NAF とアブダクションを同時に変換するが、これは一階述語コンパイ ラの拡張であり、上記2つのソフトウェアを融合したものとなる。
[1d] の効率化では、マジックセット法などの技術の導入により、トップダウ ン的探索とボトムアップ的探索を融合する。
[2] では [1] のように a,b,c とは分けずに、[1] で得られたソフトウェアを 直接 KL1 で書き換える。
[3a] ではアクション言語をまず ALP の形に変換し、[1] の ALP 処理系上で 実行させる。ここでは非単調な常識規則である慣性の法則(law of inertia) を NAF を使ったルールで表現し、ある状態におけるある性質の推定をアブダ クションで表現する。ALP においてアクションの表現は McCarthy and Hayes の状況計算(situation calculus)の形式を踏襲し、アクションの列はリスト により表現する。
[3b] では ALP の表現形式を介さずに直接 MGTP の入力節に変換することで高 速化を図る。
[4] では [3] の KL1 による書き換えを行う。
以上のように、各種の高次推論体系から MGTP の入力節となる一階述語論理へ のコンパイラを作成し、MGTP 上でボトムアップ計算を行うという、共通した 手法を用いていることが、本研究の特徴である。すなわち、プログラミング技 法としては、MGTP 節への変換を変形させることで、さまざまな知識表現が扱 えることに本研究の汎用性がある。
このようにして、従来の一階述語論理上の演繹推論を越える論理体系に対する、 より効率的で新規的な手法が示される。
(2)そのソフトウェアの機能/役割/特徴
(機能) | ALP の信念集合をボトムアップに計算する。この信念集合は ALP に記述されたデフォルト式や仮説生成を含む、もっとも好ましい可能世界 に対応したモデルである。また ALP に対する質問応答が可能であり、与えら れた質問に対して条件となる仮説を付けて解を返す。 |
(役割) | ALP を「井上・越村・長谷川方式」、Skip 方式、ならびにそ れらの結合方式に従って、一階述語論理式に変換し、この変換式を MGTP への 入力としモデル構築を行う。ある観測式の説明を求めるアブダクション機能も 同様にして MGTP 上の処理に変換し、その結果を逆変換することで、ユーザに 説明を提示する。 |
(特徴) | ALP は失敗による否定 (NAF) と仮説を同時に記述できる論理 プログラムの拡張クラスであり、論理プログラミング分野においては、その知 識表現言語としての機能の高さから、現在非常に注目されている。また最も広 いクラスにおいては、論理否定や選言も記述可能である。本ソフトウェアは、 このようにアブダクションと非単調推論(デフォルト推論)を同時に行える言語 の処理系である。これまでに ALP の部分的なクラスにおいては、トップダウ ン処理系が提案されているが非効率であった。本ソフトウェアはボトムアップ 方式であるため、選言を含むすべての有限なクラスに適用可能であり、また MGTP の高速性と、その上でのノンホーン・マジックセット法が使えるため、 効率的な ALP 処理系が実現される。 |
(機能) | 状態変化が記述可能であるアクション言語で記述された知識ベー スに対し、さまざまな質問応答を可能にする。この言語上では、フレーム問題 に対する慣性の法則などの常識規則が記述でき、さらにプランニング問題も解 ける。 |
(役割) | アクション言語で書かれた問題領域知識を、MGTP の入力節集 合にコンパイルする。アクション言語上の知識ベースに対する質問応答もMGTP への入力に変換され、後処理として MGTP での結果をアクション言語に翻訳し ユーザに提示する。 |
(特徴) | 更新操作などにより動的に変化する知識ベースや、アクション 実行によって状態が変化する問題領域を扱うための宣言的言語の処理系である。 過去の計画プログラムとの違いは、フレーム問題を扱えること、論理プログラ ミングの枠内で計算すること、すべての問題領域知識が宣言的に記述されるた めに知識の見通しが非常によいこと、などが挙げられる。この形式においては、 フレーム問題に対して慣性の常識則で対処するため、非単調推論を実現しなけ ればならず、上記 ALP-MGTP の技術を活かすことで効率良い処理系が実現され る。 |
www-admin@icot.or.jp