手続き的アプローチ対論理的アプローチ セマンティックソフトウェアシステムを構築するための2つの主要なパラダイムは、手続き型 と論理型 でした。手続き型パラダイムは、 リスト構造を操作する再帰的な手続きを特徴とするLisp [ 2 ] によって象徴されています。
論理パラダイムは、統一証明手続きに基づく導出(証明)ファインダー によって象徴的に表された。[ 3 ] 論理パラダイムによれば、手続き的知識を取り入れることは「不正行為」であった。[ 4 ]
知識の手続き的埋め込み Plannerは知識の手続き的埋め込みを目的として発明され[ 5 ] 、解決 統一証明手続きパラダイム[ 6 ] を否定するものであった。
すべてを節形式に変換しました。 すべての情報を節形式 に変換することは、情報の根底にある構造を隠してしまうため、問題があります。次に、証明すべき定理の否定の節形式を追加することで、分解法を用いて背理法による証明を試みた。推論 規則として分解法のみを用いるのは、証明の根底にある構造を隠してしまうため問題がある。また、すべての実践的な知識領域の公理化は実際には矛盾しているため、背理法を用いるのも問題がある。Plannerは、プログラミング可能性と論理的推論を組み合わせた、手続き型パラダイムと論理型パラダイムのハイブリッドのようなものでした。Plannerは、論理文の手続き的解釈を特徴としており、(PはQを意味する)という 形式の含意は、パターン指向呼び出しを使用して、次のような方法で手続き的に解釈できます。
前方連鎖 (先行詞): Pを主張する場合 、 Qを主張する assert not Qならばassert not P を唱える後方連鎖 (結果として) 目標 Q、目標 P目標がPでない場合 、目標は Qではないこの点において、Plannerの開発は、自然演繹 論理体系(特に フレデリック・フィッチ [1952]によるもの)の影響を受けている。
マイクロプランナーの実装 マイクロプランナーと呼ばれるサブセットは、ジェリー・サスマン 、ユージン・チャーニアック 、テリー・ウィノグラッドによって実装され [ 7 ] 、ウィノグラッドの自然言語理解プログラムSHRDLU 、ユージン・チャーニアックの物語理解の研究、ソーン・マッカーティの法的推論の研究、およびその他のいくつかのプロジェクトで使用されました。これはAI分野で大きな興奮を巻き起こしました。また、AIの主要パラダイムの1つであった論理アプローチに代わるものを提案したため、論争も巻き起こしました。
SRI International では、ジェフ・ルリフソン、ヤン・デルクセン、リチャード・ウォルディンガーが 、Planner の構成要素を基に、データベース内の式にモジュール性を持たせるためのコンテキスト機構を導入したQA4 を開発しました。アール・サセルドティとレネ・レボは、 INTERLISP に組み込まれた QA4 の拡張である QLISP を開発しました。これは、手続き型言語に組み込まれた Planner のような推論機能を提供し、その豊富なプログラミング環境で開発されました。QLISP は、リチャード・ウォルディンガー とカール・レヴィットによってプログラム検証に、アール・サセルドティによって計画と実行の監視に、ジャン=クロード・ラトンベ によってコンピュータ支援設計に、ナフム・ダーショウィッツ によってプログラム合成に、リチャード・フィークスによって演繹的検索に、そしてスティーブン・コールズによって計量経済モデルの使用をガイドする初期のエキスパートシステムに使用されました。
コンピュータは高価だった。プロセッサは1つしかなく動作も遅く、メモリ容量も現在と比べると非常に小さかった。そこでプランナーは、以下のような効率化のための工夫を採用した。
バックトラッキング[ 8 ] は、代替案を探索する際に一度に1つの可能性のみに取り組み、それを保存することで、時間とストレージの使用を節約するために採用されました。 スペースと時間を節約するため、異なる名称は異なる対象物を指すという前提を採用した。例えば、北京(旧中華人民共和国首都名)と北京市(現在の中華人民共和国首都の音訳)は、異なる対象物を指すものと想定した。 閉じた世界仮説は、 目標を完全に証明しようとする試みが失敗したかどうかを条件付きでテストすることによって実現できる。後にこの機能は「失敗としての否定 」という誤解を招く名前が付けられた。なぜなら、目標Gに対して「 Gを 達成しようとする試みが完全に失敗した場合、(Not G) を主張する」と言うことが可能だったからである。
Prologの起源 ジェリー・サスマン 、ユージン・チャーニアック 、シーモア・パパート 、テリー・ウィノグラードは1971年に エジンバラ 大学を訪れ、マイクロプランナーとSHRDLU について広め、エジンバラ論理学者の主軸であった分解統一証明手続きアプローチに疑問を投げかけた。エジンバラ大学では、ブルース・アンダーソンがマイクロプランナーのサブセットであるPICO-PLANNER [ 9 ] を実装し、ジュリアン・デイヴィス(1973)はプランナーのほぼすべてを実装した。
ドナルド・マッケンジーによれば、パット・ヘイズは、パパートのMITの同僚カール・ヒューイットによれば「 人工知能 のロジックランドの中心地」となっていたエディンバラへのパパートの訪問の影響を回想している。パパートは、エディンバラで主流となっている解決アプローチに対する批判を雄弁に述べ、「…そして、少なくとも1人はパパートのせいで職を辞した」。[ 10 ]
上記のような展開は、エジンバラの論理学者たちの間で緊張を生み出した。この緊張は、英国科学研究評議会がジェームズ・ライトヒル卿に英国における人工知能研究の状況に関する報告書の作成を依頼したことでさらに悪化した。その結果作成された報告書 [ Lighthill 1973; McCarthy 1973]は、 SHRDLU については好意的に言及されていたものの、非常に批判的な内容だった。
パット・ヘイズは スタンフォード大学を訪れ、そこでプランナーについて学んだ。エジンバラに戻ると、彼は友人のボブ・コワルスキーに、自動定理証明に関する共同研究でプランナーを考慮に入れるよう働きかけた。「分解定理証明は、ホットな話題から誤った過去の遺物へと格下げされた。 ボブ・コワルスキーは 、分解定理証明の可能性に対する信念を頑固に持ち続けた。彼はプランナーを注意深く研究した。」[ 11 ] コワルスキー[1988]は、「プランナーがSL分解 に似ているとヒューイットを説得しようとしたことを覚えている」と述べている。しかし、プランナーは知識の手続き的埋め込みを目的として発明され、分解統一証明手続きパラダイムの否定であった。コルメラウアーとルーセルは、プランナーについて知ったときの反応を次のように回想している。
「1971年9月にジャン・トルーデルと共にIJCAI大会に出席した際、ロバート・コワルスキー と再会し、テリー・ウィノグラードによる自然言語処理に関する講演を聴講しました。彼が統一的な形式体系を使用していなかったことに私たちは戸惑いました。この時、カール・ヒューイットのプログラミング言語であるPlannerの存在を知りました。この言語の形式化の欠如、Lispに関する私たちの無知、そして何よりも私たちが論理学に完全に傾倒していたという事実から、この研究は後の私たちの研究にほとんど影響を与えませんでした。」[ 12 ]
1972年の秋、フィリップ・ルーセルは Prolog ( PRO grammation en LOG iqueの略で、フランス語で「論理プログラミング」を意味する)と呼ばれる言語を実装した。Prologプログラムは一般的に次の形式をとる(これはPlannerのバックワードチェイニングの特殊なケースである)。
目標 Q、目標 P1 、 そして ... 、目標 Pnの場合 PrologはMicro-Plannerの以下の側面を再現した。
パターン指向による目標からのプロシージャ呼び出し(すなわち、 後方連鎖 ) パターン指向の手続きと基本文を索引付けしたデータベース。 定理証明に関するこれまでの研究を特徴づけてきた完全性パラダイムを放棄し、プログラミング言語の手続き的知識埋め込みパラダイムに置き換える。 Prologは、Micro-Plannerの以下の機能も再現しており、これらは当時のコンピュータにとって実用的に有用であった。なぜなら、これらの機能はスペースと時間を節約できたからである。
バックトラッキング制御構造 異なる名称はそれぞれ異なる実体を指すという固有名称仮定。例えば 、北京とペキンは異なるものと仮定される。 失敗の具体化。Planner では、何かが証明可能であることを確立する方法は、それを目標として試みて成功することであり、何かが証明不可能であることを確立する方法は、それを目標として試みて明示的に失敗することであった。もちろん、もう 1 つの可能性は、目標を証明しようとする試みが永遠に実行され、値を返さないことである。Planner には、式が 失敗した 場合に成功する(not expression) という構造もあり、これが Planner における「否定を失敗として 扱う」という用語を生み出した。 オープンシステムに注目が集まると、一意の名前の仮定と否定を失敗とみなす方法の妥当性が疑問視されるようになった。[ 13 ]
Micro-Plannerの以下の機能はPrologから除外されました。
アサーションから手続きプランをパターンに基づいて呼び出す(すなわち 、前方連鎖 ) 論理的否定、例 :(人間ソクラテスではない) 。 Prologに否定が含まれていない理由の一つは、実装上の問題が生じるためです。例えば、以下のPrologプログラムに否定が含まれていた場合を考えてみましょう。
Qではない。 Q :- P. 上記のプログラムは、数学的論理の規則に従っているにもかかわらず、「P ではない 」ことを証明することはできません。これは、Prolog(Plannerと同様)がプログラミング言語として設計されているため、プログラムの宣言的な解釈から導かれる多くの論理的帰結を (それ自体では)証明しないという事実を示す例です。
Prologの開発は、Plannerよりもはるかにシンプルであるという点で価値がありました。しかし、言語の表現力を高める必要性が高まるにつれ、Prologは当初のPrologには含まれていなかったPlannerの多くの機能を取り入れるようになりました。
参考文献 ↑ Carl Hewitt「論理プログラミングの中間史:解決、プランナー、プロローグ、そして日本の第5世代プロジェクト」arXiv 2009. arXiv : 0904.3036 ↑ マッカーシー他 1962 ↑ ロビンソン 1965 ↑ グリーン 1969 ↑ ヒューイット 1971 ↑ ロビンソン 1965 ↑ サスマン、チャーニアック、ウィノグラード 1971 ↑ ゴロンブとバウマート 1965 ↑ アンダーソン 1972 ↑ マッケンジー 2001 p 82。 ↑ Bruynooghe、Pereira、Siekmann、van Emden [2004] ↑ コルメラウアー とルーセル 1996↑ ヒューイットとデ・ヨング 1983 年、ヒューイット 1985 年、ヒューイットとインマン 1991 年
参考文献 ブルース・アンダーソン。LIB PICO-PLANNERのドキュメント。エジンバラ大学人工知能学部。1972年 ブルース・バウムガート著。「マイクロプランナー代替リファレンスマニュアル」スタンフォードAIラボ運用ノートNo.67、1972年4月。 コールズ、スティーブン(1975)、「ヒューリスティックモデリングへの人工知能の応用」、第2回日米コンピュータ会議 。フィケス、リチャード(1975)、「状態記述モデルのための演繹的検索メカニズム」 、IJCAI 。フィッチ、フレデリック(1952)『記号論理学入門』 ニューヨーク:ロナルド・プレス 。グリーン、コーデル(1969)、「定理証明の問題解決への応用」、IJCAI 。Hewitt, Carl (1969). "PLANNER: ロボットにおける定理証明のための言語". IJCAI . CiteSeerX 10.1.1.80.756 . Hewitt, Carl (1971)、「プランナーにおける知識の手続き的埋め込み」、IJCAI 。カール・ヒューイット著「オープンシステムの課題」Byte誌、1985年4月号 Carl Hewitt および Jeff Inman。「DAI の狭間:『インテリジェント エージェント』からオープン システム サイエンスへ」IEEE Transactions on Systems, Man, and Cybernetics。1991 年 11 月/12 月。 Carl Hewitt および Gul Agha。「ガード付きホーン節言語:演繹的かつ論理的か?」第 5 世代コンピュータ システム国際会議、オームシャ 1988、東京。また、『MIT における人工知能』 第 2 巻、MIT Press 1991 にも収録。 Hewitt, Carl (2006年3月)、「論理プログラミングの度重なる衰退と、それが復活する理由 ― 何が間違っていたのか、そしてその理由:AI研究と応用からの教訓」 (PDF) 、技術報告書、AAAI Press、2017年12月10日にオリジナル(PDF)からアーカイブ済み 。ウィリアム・コーンフェルドとカール・ヒューイット。「科学コミュニティのメタファー」 MIT AIメモ641。1981年1月。 ビル・コーンフェルドとカール・ヒューイット。「科学コミュニティのメタファー」IEEE Transactions on Systems, Man, and Cybernetics、1981年1月。 ビル・コーンフェルド。「ヒューリスティック探索を実装するための並列処理の利用」IJCAI 1981。 ビル・コーンフェルド。「問題解決における並列処理」MIT EECS博士論文。1981年8月。 ビル・コーンフェルド。「組み合わせ的爆縮アルゴリズム」CACM、1982年 ロバート・コワルスキー。「論理の限界」 1986年ACM第14回コンピュータサイエンス年次会議議事録。 ロバート・コワルスキー著「論理プログラミングの黎明期」 CACM 1988年1月号。 ラトンブ、ジャン=クロード(1976)、「コンピュータ支援設計における人工知能」、CADシステム 、ノースホランド 。マッカーシー、ジョン;エイブラハムズ、ポール;エドワーズ、ダニエル;ハート、ティモシー;レヴィン、マイケル(1962)『Lisp 1.5 プログラマーズマニュアル』 、MIT 計算センターおよび電子工学研究所 。Robinson, John Alan (1965)、「分解原理に基づく機械指向論理」、Communications of the ACM 、12 : 23–41 、doi : 10.1145/321250.321253 。ジェリー・サスマンとテリー・ウィノグラード。「マイクロプランナー参照マニュアルAIメモNo.203、MITプロジェクトMAC、1970年7月」。 テリー・ウィノグラード。「自然言語理解のためのコンピュータプログラムにおけるデータ表現としての手続き」 MIT AI TR-235。1971年1月。 Gerry Sussman、Terry Winograd、Eugene Charniak。「マイクロプランナーリファレンスマニュアル(更新版)」 AIメモ203A、MIT AIラボ、1971年12月。 Carl Hewitt。「ロボットAIにおける定理の証明とモデルの操作のための言語であるPlannerの説明と理論的分析(スキーマの使用)」、メモNo.251、MITプロジェクトMAC、1972年4月。 ユージン・チャーニアック。 「子どもの物語理解モデルに向けて」 MIT AI TR-266。1972年12月。 Julian Davies著。「Popler 1.6 リファレンスマニュアル」、エジンバラ大学、TPUレポートNo.1、1973年5月。 Jeff Rulifson、Jan Derksen、およびRichard Waldinger。「QA4、直観的推論のための手続き的計算」SRI AIセンター技術ノート73、1973年11月。 スコット・ファールマン。「ロボット建設作業のための計画システム」MIT AI TR-283、1973年6月 ジェームズ・ライトヒル。「人工知能:概論的考察 人工知能:論文シンポジウム」。英国科学研究評議会。1973年。 ジョン・マッカーシー。「『人工知能:概論』のレビュー 人工知能:論文シンポジウム」。英国科学研究評議会。1973年。 ロバート・コワルスキー「プログラミング言語としての述語論理」メモ70、エジンバラ大学人工知能学科、1973年 パット・ヘイズ著「計算と演繹:コンピュータ科学の数学的基礎」:シンポジウムおよびサマースクールの議事録、チェコスロバキア、ハイタトラス山脈、シュトルブスケ・プレソ、1973年9月3日~8日。 Carl Hewitt、Peter Bishop、Richard Steiger。「人工知能のための普遍的なモジュール型アクター形式」IJCAI 1973。 L・ソーン・マッカーティ著「TAXMANに関する考察:人工知能と法的推論に関する実験」ハーバード・ロー・レビュー第90巻第5号、1977年3月 ドリュー・マクダーモットとジェリー・サスマン。『コニバー・リファレンス・マニュアル』 MIT AIメモ259A。1974年1月。 アール・サセルドティ他、「QLISP:複雑なシステムの対話型開発のための言語」AFIPS、1976年 Sacerdoti, Earl (1977), 『計画と行動の構造』 、Elsevier North-Holland 。ウォルディンガー、リチャード、レヴィット、カール(1974)、『プログラムに関する推論:人工知能』 。
外部リンク アラン・コルメラウアーとフィリップ・ルーセルによる、1992年のProlog誕生に関する記述( Wayback Machine に アーカイブ済み、2003年7月27日保存)