JPH0877116A - プログラム実行方式 - Google Patents

プログラム実行方式

Info

Publication number
JPH0877116A
JPH0877116A JP20647094A JP20647094A JPH0877116A JP H0877116 A JPH0877116 A JP H0877116A JP 20647094 A JP20647094 A JP 20647094A JP 20647094 A JP20647094 A JP 20647094A JP H0877116 A JPH0877116 A JP H0877116A
Authority
JP
Japan
Prior art keywords
program
data
recognition
knowledge
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP20647094A
Other languages
English (en)
Inventor
Tadamitsu Ryu
忠光 龍
Tetsuo Toshima
哲夫 戸島
Hiroyuki Izumi
寛幸 泉
Masahiko Murakawa
雅彦 村川
Masanobu Toyoda
雅信 豊田
Hiroyuki Tominaga
浩之 富永
Katsuichi Nakamura
勝一 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP20647094A priority Critical patent/JPH0877116A/ja
Publication of JPH0877116A publication Critical patent/JPH0877116A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】本発明は、複数のコンピュータで構成されるコ
ンピュータシステムで実行されるプログラム実行方式に
関し、負荷分散を自在に制御できるとともに、機能分散
を自在に制御できるようにすることを目的とする。 【構成】オブジェクトの実体を指すiD情報と、そのi
D情報のサフィックスとして機能するオブジェクト属性
の記号圧縮体との組み合わせでもって、オブジェクトの
内部iDとなるオブジェクトコマンドを定義する構成を
採るとともに、プログラムの中の各状態をそれぞれ独立
した1つの状態と捉えて、それらの各プログラム状態が
オブジェクト属性に従ってそれに応じたオブジェクトコ
マンドを持つように構成し、かつ、プログラムの実行途
中に、他コンピュータに処理を移動させる必要があると
きには、その時のプログラム状態に応じたオブジェクト
コマンドを実行先のコンピュータに送出していくように
構成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数のコンピュータで
構成されるコンピュータシステムで実行されるプログラ
ム実行方式に関し、特に、負荷分散を自在に制御できる
とともに、機能分散を自在に制御できるようになるプロ
グラム実行方式に関する。
【0002】
【従来の技術】従来のコンピュータシステムでは、図3
6に示すように、プログラムが作成されると、そのプロ
グラムに一義的な固定のプログラムiDを与える構成を
採って、そのプログラムiDが指定されるときに、その
プログラムを実行するという構成を採っていた。
【0003】そして、コンピュータシステムが複数のコ
ンピュータから構成されるときには、各コンピュータが
実行対象のプログラムを予め展開する構成を採って、図
37に示すように、自コンピュータに実行プログラムが
展開されていないときには、そのプログラムを展開する
コンピュータにプログラムiDを転送していくことで、
プログラムを実行していくという構成を採っていた。
【0004】
【発明が解決しようとする課題】しかしながら、このよ
うな従来技術に従っていると、コンピュータシステムが
複数のコンピュータから構成されるときに、負荷分散を
自在に制御できないとともに、機能分散を自在に制御で
きないという問題点があった。
【0005】すなわち、このような従来技術に従ってい
ると、予めどのコンピュータがどのプログラムを実行す
るのかを決めておかなくてはならないことから、負荷分
散を自在に制御できないとともに、機能分散を自在に制
御できないという問題点があったのである。
【0006】このようなことを背景にして、本発明者ら
は、ここのところで、新たなオブジェクト指向データ処
理システムを提案してきた。次に、この本発明者らが提
案したオブジェクト指向データ処理システムについて説
明する。
【0007】システム設計等をサポートするためには、
実世界をいかに簡単かつ忠実にモデル化するかが重要で
ある。そこで、本発明者らは、我々が使う人間の言葉が
「概念的認識をする外延的解釈」で行われていることに
着目し、外延的解釈を含んだO−id(外延的名辞又は
オブジェクトコマンドと称する)を導入して、この外延
的名辞によりオブジェクト設計を行うオブジェクト思考
設計法(この設計法が仮想人間を構築することから、我
々は、あえて、これをオブジェクト指向ではなくてオブ
ジェクト思考と呼んでいる)を考え出した。
【0008】これにより、通常我々が実世界で行ってい
る事象の捉え方と同じ感覚でオブジェクトモデルを構築
でき、オブジェクトの世界に人間世界を持ち込んだ仮想
人間世界とも言える世界を作り出すことが可能になっ
た。
【0009】このオブジェクト思考設計法では、実世界
の対象(オブジェクト)を外延的名辞の世界と情報隠蔽
された内包の世界とに分けて捉える。この外延的名辞の
世界をオブジェクト世界と呼ぶ。このオブジェクト世界
は、スキーマ論的に分類すると、大きくは、「静的モデ
ルの世界」、「動的モデルの世界」、「因果関係モデル
の世界」の3つに分類される。このオブジェクト世界に
おける静的モデルとは、モデル化の対象の時間を止めて
も同時に存在する関係を示すものであり、オブジェクト
世界における動的モデルとは、モデル化の対象の時間を
動かして存在する関係を示すものであり、オブジェクト
世界における因果関係モデルとは、静的モデルから展開
される動的モデルにおいての時間的関係を示すものであ
る。
【0010】このように、外延的名辞によって構成され
た静的世界、動的世界、因果関係世界は、ポインタやメ
ッセージで名辞の間を関係付けた、いわゆる「名辞によ
る複合の世界」となっている。
【0011】一般に、人間の思考は、これらの「複合
体」に対して更に性質を与えたり、名称を付与したりし
て使われている。一旦、それを定義すると、更に、その
名辞によってオブジェクト世界を構成することができ
る。その際、その複合体の構成子や定義は、オブジェク
ト世界つまり仮想人間世界では深く認識する必要はな
く、外延的解釈で行われる。
【0012】一方、情報隠蔽された内包の世界における
情報隠蔽モデルは、上述の外延的名辞の世界における静
的世界、動的世界、因果関係世界から帰結した定義や、
原子オブジェクト(オブジェクトの基本単位となるも
の)レベルでの実体や、内容全体をモデル化したもので
ある。この情報隠蔽モデルとオブジェクト世界(仮想人
間世界)との唯一のインタフェースは外延的名辞でとら
れている。
【0013】このような技術思想に立つ本発明者らが新
たに提案したオブジェクト思考データ処理システムは、
従来のソフトウェア技術とは全く異なる考え方に立脚す
るものであることから、新たなプログラム実行方式の実
現を可能ならしめることになる。
【0014】本発明はかかる事情に鑑みてなされたもの
であって、複数のコンピュータで構成されるコンピュー
タシステムにあって、負荷分散を自在に制御できるとと
もに、機能分散を自在に制御できるようになる新たなプ
ログラム実行方式の提供を目的とする。
【0015】
【課題を解決するための手段】図1に本発明の原理構成
を図示する。図中、1は複数のコンピュータ、2はコン
ピュータ1を相互に接続するネットワークである。
【0016】このコンピュータ1の実行するプログラム
は、オブジェクトを構成要素とするものであって、この
オブジェクトは、オブジェクトの実体を指すiD情報
と、そのiD情報のサフィックスとして機能するオブジ
ェクト属性の記号圧縮体との組み合わせで定義されるオ
ブジェクトコマンドを内部iDとして持つ。
【0017】10はコンピュータ1に展開されるプログ
ラムであって、現在実行されているプログラムであるも
の、11はコンピュータ1に展開される発行機構であっ
て、他コンピュータ1に対してオブジェクトコマンドを
送出するもの、12はコンピュータ1に展開される検索
機構であって、他コンピュータ1から送られてきたオブ
ジェクトコマンドの指すプログラムの実体が自装置内に
登録されているか否かを検索するものである。
【0018】13はコンピュータ1に展開されるラーニ
ング機構であって、他コンピュータ1から送られてきた
オブジェクトコマンドの指すプログラムの実体が自装置
内に登録されていないときに、その実体を持つコンピュ
ータ1に対してその実体の転送要求を発行することで、
その実体を入手するもの、14はコンピュータ1に展開
されるプログラムであって、これから実行されるプログ
ラムであるものである。
【0019】
【作用】本発明では、図2に示すように、プログラムの
構成要素となるオブジェクトは、オブジェクトの実体を
指すiD情報と、オブジェクト属性の記号圧縮体との組
み合わせで定義されるオブジェクトコマンドを内部iD
として持つ。そして、図3に示すように、オブジェクト
を構成要素とするプログラムの中の各状態をそれぞれ独
立した1つの状態と捉えて、それらの各プログラム状態
がオブジェクト属性に従ってそれに応じたオブジェクト
コマンドを持つように構成する。
【0020】これから、オブジェクトコマンドの持つオ
ブジェクト属性の記号圧縮体は、いわば、オブジェクト
の実体を指すiD情報のサフィックスとして機能し、従
って、プログラムの中の各プログラム状態が持つオブジ
ェクトコマンドの記号圧縮体部分は、図3に示すよう
に、プログラムの実体部分の中のどの部分であるかを表
すサフィックスとして機能する。
【0021】このように構成されるときにあって、プロ
グラム10を実行中のコンピュータ1は、ある処理以降
のプログラム処理を他のコンピュータ1に移動させる必
要があるときには、その処理に対応するオブジェクトコ
マンドを発生して、発行機構11を使って、そのオブジ
ェクトコマンドをそのコンピュータ1に送出する。例え
ば、オブジェクトコマンド“100-02”以降のプログラム
処理を他のコンピュータ1に移動させる必要があるとき
には、発行機構11を使って、オブジェクトコマンド
“100-02”をそのコンピュータ1に送出するのである。
【0022】このようにして送出されてくるオブジェク
トコマンドを受け取ると、受け取ったコンピュータ1
は、検索機構12を使って、送られてきたオブジェクト
コマンドの指すプログラム(例えばプログラム14)の
実体が自装置内に登録されているか否かを検索し、自装
置内に登録されていることを検索するときには、その検
索されたプログラム14を実行する。一方、自装置内に
登録されていないことを検索するときには、ラーニング
機構13を使って、その実体を持つコンピュータ1に対
してその実体の転送要求を発行することで、そのプログ
ラム14を入手して実行する。
【0023】このように、本発明によれば、複数のコン
ピュータから構成されるコンピュータシステムにおい
て、オブジェクトコマンドを飛ばすだけで、プログラム
の実行中に他コンピュータ1にプログラムの実行処理を
移動させることができるようになることから、負荷分散
を自在に制御できるとともに、1箇所で仕様を変更する
だけで機能を簡単に分散できるようになるのである。
【0024】
【実施例】以下、実施例に従って本発明を詳細に説明す
る。最初に、本発明者らが提案したオブジェクト思考デ
ータ処理システム(あえて、オブジェクト思考と書く)
について説明する。
【0025】本発明者らが提案したオブジェクト思考デ
ータ処理システムでは、図4に示すように、実世界を外
延/内包で解釈し、それに名辞を付ける。そして、この
名辞と外延とを一緒にして、言葉となる外延的名辞を定
義し、この言葉の深い意味である内包を情報隠蔽の世界
とする。この外延的名辞つまり言葉は、名辞と外延とで
出来ていることから、それを見るだけで、その言葉の意
味が簡単に分からなければならない。
【0026】そこで、この外延的名辞を表す説明文(外
延+内包のこと)を考え、この説明文(メタデータ)を
記号圧縮し、この言葉の実データであるオブジェクトi
Dと一緒にして、それをオブジェクトコマンドとして定
義する。
【0027】すなわち、オブジェクトは、図5に示すよ
うに、実データとメタデータとで出来ており、この実デ
ータは、直接、オブジェクトiDで表され、メタデータ
は、属性の圧縮体としてシグニチュアーデータで表され
る。この「オブジェクトiD+シグニチュアー」がオブ
ジェクトコマンドであり、このオブジェクトコマンド
が、「言葉/暗黙知」を意味している。ここで、図6に
示すように、言葉とは、外部的iDが「イヌ」のように
決まっている知識であり、暗黙知とは、言葉にならない
知識であって、外部的iDが何も決まっていない知識で
ある。このシグニチュアーを解読すれば、オブジェクト
の構造が全て分かることになる。
【0028】本発明者らが提案したオブジェクト思考デ
ータ処理システムでは、このオブジェクトコマンドの羅
列からなるメッセージを飛ばすことでデータを実行する
構成を採って、このオブジェクトコマンドを受け取った
アクターオブジェクト(本発明者らが提案したオブジェ
クト思考データ処理システムを実現するオブジェクトで
あって、後述する仮想人間世界を実現するオブジェク
ト)が実体を持っていない場合には、図7に示すよう
に、実体を持っているアクターオブジェクトからその実
体を転送してもらうことで、その実体をラーニングして
いく構成を採っている。すなわち、ラーニングという考
え方は、オブジェクトコマンドという必要最小限の情報
を飛ばすことで、あたかも細胞が増殖していくように実
体を自動的にコピーしていく機能であると言える。ここ
で、ラーニングの対象となるものは、データのみならず
プログラムも含むものである。
【0029】このメッセージ通信方法とラーニング機能
とに従って、複数のワークステーションから構成される
ときに、例えば、端末Aのプログラムは、端末Aのデー
タも端末Bのデータも取り扱えるようになる。すなわ
ち、各ワークステーションは、クライアントとしても機
能し、サーバとしても機能するので、クライアントとサ
ーバとを融合できるようになる。そして、各ワークステ
ーションは、自分以外のワークステーションを全てサー
バと見なすことができることから、理想的な分散処理を
実現できることになる。
【0030】本発明者らの考えたオブジェクト思考世界
の特徴は、このオブジェクトコマンドを言葉と解釈して
成り立っていることから、この言葉を使って仮想人間世
界を作り出せることにある。
【0031】すなわち、図8に示すように、オブジェク
ト思考世界では、情報隠蔽の世界が知識となり、オブジ
ェクト世界即ち仮想人間世界は、仮想社会のモデルと、
仮想人間のモデルとに見える。この情報隠蔽世界の知識
の中身は、ソース(プログラム、画面、定義の3つを含
んでいる)である。また、仮想社会モデルの中身は、上
述した静的世界と動的世界と因果関係世界とで成り立っ
ている。また、仮想人間モデルの中身は、仮想社会モデ
ルの中で生活する仮想人間である。
【0032】この仮想人間のモデルは、肉体に相当する
プログラム及び画面と、精神に相当する知識とで出来て
いて、この肉体と精神とを持った仮想人間は、情報行動
として、自己認識/自己評価/自己組織化/分散協調と
いうエージェント機能を発揮する。
【0033】すなわち、人間は、遺伝子により身体が出
来ているが、全く別々の姿や顔や形を持ち、この肉体と
は全く違う形で、知識という精神的なものを持つ。この
ような人間に合わせて、アクターオブジェクトでは、図
9に示すように、シグニチュアーを遺伝子に対応させ、
メソッド(プログラム)を身体に対応させ、ビュー(代
表として画面)を姿・顔・形に対応させ、言葉の定義を
知識に対応させる構成を採るのである。
【0034】この肉体的な様態であるメソッドの構造要
素は、原子となるプログラムをどういう順番で実行する
かというシーケンスであり、肉体的な様態であるビュー
の構造要素は、原子的な画面のパターン片をどの位置に
表示するかという座標であり、精神的な様態である言葉
の構造要素は、言葉表現の各要素である。すなわち、遺
伝子に相当するシグニチュアーには、大きく分けて、肉
体的な様態であるメソッドとビューに関しての構造的シ
グニチュアーと、精神的な様態である言葉に関しての精
神的シグニチュアーとがある。
【0035】ここで、自己認識とは、オブジェクトが自
己意識を持つということで、メタデータという知識を持
つことである。自己評価とは、オブジェクトが目標を持
つということで、自立機能に従って本能的にゴールの無
い目標へ成長し続けたり、自律機能に従ってユーザの示
したゴールのある目標を達成することになる。自己組織
化とは、本能に照らして自立/自律することで、この本
能とは、知識を獲得し学習し理解し思考することであ
る。分散協調とは、1つ1つ独立した他オブジェクトや
人間と協調することである。
【0036】一方、知識の実体とは、あらゆる知識の素
となる原子オブジェクトと、原子オブジェクトを組み合
わせた複合オブジェクトであり、そして、この原子オブ
ジェクトには、原子プログラムや、原子画面や、原子言
葉があり、複合オブジェクトには、複合プログラムや、
複合画面や、複合言葉がある。
【0037】これらのオブジェクトのメタデータには、
ディクショナリデータと、ディレクトリデータとがあ
り、このディクショナリデータは、オブジェクトの構造
や、管理データや、意味データ等を含み、一方、ディレ
クトリデータは、各データの格納アドレスを指す。これ
らの全てのデータを格納するものとして、部品属性ファ
イルが用意されることになる。
【0038】次に、オブジェクト思考世界の構造ネット
ワークについて説明する。情報隠蔽世界は、知識を格納
する所であり、原子オブジェクトと複合オブジェクトと
で出来ている。この原子オブジェクトは、ソフトIC群
から作られるもので、内部展開されてEXEプログラム
(実行プログラム)となっており、実メソッドである。
そのため、原子クラスとも呼んでいる。一方、複合オブ
ジェクトは、この原子クラスに付けられたオブジェクト
コマンドによって表される。そのため、複合オブジェク
トは、EXEプログラムではなくて、遺伝子アルゴリズ
ムによる定義体(シグニチュアー)で出来ていて、実体
は情報隠蔽されている。
【0039】原子オブジェクトは、部品としての再利用
が図られるために、カプセル化された完全な独立性を持
ち、その他の部品との組み合わせが可能になる直交性を
持ち、冗長度のない正規性を持ち、データ/手続きの自
由な入れ換えが可能な抽象性を持ち、シリーズ構造の単
純性を持つように構成される。
【0040】この独立性を与えるための1つの手段とし
て、因果関係の処理を別のプログラムに委ねる構成を採
っている。すなわち、各原子オブジェクト相互の間では
仮に例えば排他処理を必要とする如き関係が想定されて
も、それを度外視して夫々の原始オブジェクトを得てお
き、因果関係の処理を原始オブジェクトとは別の因果関
係処理プログラムの処理によって対処する構成を採って
いる。
【0041】また、この直交性を与えるための1つの手
段として、各原始オブジェクトには自己PR機能が設け
られていて、自己オブジェクトが如何なる型のもので、
どのようなデータを必要としているのか等をユーザに通
知する機能を備える構成を採っている。そして、指定さ
れる組み合わせが結合可能なようにと引数の相性合わせ
を実行する機構を備える構成を採っている。
【0042】また、この正規性を与えるための1つの手
段として、オブジェクト間に成立するis-aやpart-of の
関係を使って、原始オブジェクトをまとめる機構を備え
る構成を採っている。例えば、原始オブジェクトが生成
されていく間に、原始オブジェクトPと、原始オブジェ
クトQと、原始オブジェクトRとが存在するようになっ
て、それらの大部分が同一であり、特異な部分として夫
々P部分、Q部分、R部分とが存在するときには、共通
部分に対応させてスーパクラスに相当する原始オブジェ
クトAを生成して、原始オブジェクトPについては特異
なP部分を残して、そのスーパクラスが原始オブジェク
トAであることを指示し、原始オブジェクトQについて
は特異なQ部分を残して、そのスーパクラスが原始オブ
ジェクトAであることを指示し、原始オブジェクトRに
ついては特異なR部分を残して、そのスーパクラスが原
始オブジェクトAであることを指示する構成を採ってい
る。
【0043】また、この抽象性を与えるための1つの手
段として、原始オブジェクトは、何(WHAT)を入力
として与えるかをバッファに指示し、どんな(HOW)
処理を行わせるかをバッファに指示し、処理結果をどの
ようにする(DO)かをバッファに指示する統一化され
たWHD構造を持つ構成を採っている。
【0044】また、この単純性を与えるための1つの手
段として、if等のコントロール部品を原始オブジェクト
として用意する構成を採っている。例えば、分岐を持つ
オブジェクトが存在するときには、この分岐に該当する
部分をコントロール部分とし、それ以外の部分を非コン
トロール部品として切り出す。このようにして切り出し
たとすると、各非コントロール部品は分岐を持たないシ
リーズロジック性を持つことになる。そして、それらの
非コントロール部品を原始オブジェクトとして残すか否
かが決定されることで単純性を実現する構成を採ってい
る。
【0045】遺伝子アルゴリズムによる定義体(シグニ
チュアー)で作られる仮想人間世界の空間世界では、内
包側から外延側に挙げてみると、図10に示すように、
ストラクチャクラス、シーケンスクラス、インスタンス
クラスが経験則として定義され、時間世界で実際に動く
プログラムとして、セッションインスタンスがパラレル
に作り出される。それらのセッションインスタンスの間
には、図11に示すように、因果関係の同期取りが存在
する。
【0046】このストラクチャクラスは、原子オブジェ
クトをグループ化することで生成され、シーケンスクラ
スは、ストラクチャクラス内のつながりを規定すること
で生成され、インスタンスクラスは、シーケンスクラス
内のパラメータを固定化することで生成され、セッショ
ンインスタンスは、複数のインスタンスクラスの組み合
わせにより生成されることになる。
【0047】ここで、オブジェクトの複合化は、ハイパ
ー言語処理と呼ぶ機構が引数合わせの相性チェックを行
って実行する。すなわち、原子オブジェクト同士を組み
合わせることで新たな複合オブジェクトが生成され、原
子オブジェクトと既存の複合オブジェクトとを組み合わ
せることで新たな複合オブジェクトが生成され、既存の
複合オブジェクト同士を組み合わせることで新たな複合
オブジェクトが生成されることになるが、ハイパー言語
処理は、過去の組み合わせ結果を参照しつつ、必要に応
じてユーザと対話しながら、図12に示すように、引数
が合うようにとこの組み合わせの相性チェックを行って
いくことで複合オブジェクトを生成していくことにな
る。
【0048】一方、複合オブジェクトは、逆リンク技術
と呼ぶ遺伝子操作により変更され、これにより新たなオ
ブジェクトが生み出される構成も採っている。すなわ
ち、複合オブジェクトの構造を記述する遺伝子をビジュ
アル表示して、ユーザによりその遺伝子に対して削除や
追加等の遺伝子操作が施されると、それが指すメタデー
タや実データを変化させていくことで新たなオブジェク
トを連想し創造していく構成を採っている。例えば、複
数のオブジェクトのつながりの構造体の遺伝子の一部を
取り替えることでオブジェクトの連想が実行され、ま
た、その遺伝子に新たな遺伝子を追加することでオブジ
ェクトの創造が実行されるのである。
【0049】このような複合オブジェクトには、複合ク
ラスと複合インスタンスとがあり、上述したように、こ
の複合クラスには、原子クラス、ストラクチャクラス、
シーケンスクラス、インスタンスクラスがあり、複合イ
ンスタンスには、セッションインスタンスがある。
【0050】そして、この複合オブジェクトに起動がか
かるときは、図13に示すように、オブジェクト管理機
構と呼ぶメインプログラムが、その複合オブジェクトの
定義体に従い、因果関係の同期をとりながらEXEプロ
グラムの原子オブジェクトを呼び出していくことで、複
合オブジェクトを実行していくことになる。
【0051】従来のオブジェクト指向では、一旦インス
タンス化されると、その下にオブジェクトを作れない構
成を採っているが、本発明者らが提案するオブジェクト
思考では、インスタンス化されても永続化させる構成を
採って、その永続化されたインスタンスを足場にして、
その下にクラスを作って、そのクラスで全く新しいイン
スタンスを作るという逆スーパクラス/逆サブクラスの
仕掛けを設けている。例えば、図14に示すように、X
の値を、一旦null化することでクラス化し、再び、その
Xに別の値を当てはめることで新しいインスタンスを作
り出せるようにしている。
【0052】また、従来のオブジェクト指向では、オブ
ジェクト間の関係付けが極めて貧弱であるので、本発明
者らが提案するオブジェクト思考では、図15に示すよ
うに、クラス間の関係として、ツリー状の関係を規定す
るis-a、part-of 、a-kind-of 、has-a と、ネットワー
ク状の関係を規定するrelational-of 、networking-of
、2-term-of といったものを用意している。これらの
関係は、主に、オブジェクトの検索に用いられることに
なる。
【0053】このis-aは、例えば、「犬は動物である」
という場合の下位「犬」についての上位「動物」との関
係を階層化して、犬の相対位置を表現するものである。
part-of は、例えば、「九州」が「日本本土」の一部を
構成しているというような構成関係を表現するものであ
る。a-kind-of は、is-aとほぼ同じものであるが、is-a
が全てを含むのに対して、その中の小項目をグループ化
して表すときに使用する。例えば、「犬、猫、猿」と
「虎、豹、ライオン」とは、is-aでは同等と見なして哺
乳類と分類され、このとき、a-kind-of を使うことで、
is-aの関係が付いたまま、「犬、猫、猿」を「ペット」
に、「虎、豹、ライオン」を「猛獣」にグループ分けで
きることになる。
【0054】has-a は、part-of が親クラスの下に付い
ている子クラスの全てが揃わないと成立しないのに対し
て、子クラスの一部のみでも成立させるときに使用す
る。relational-of は、あるクラスがあるクラスに従属
しているときに使用する。networking-of は、グループ
の中を親子リンクで関連させた方が適切であるような場
合に使用する。2-term-of は、2項関連を表現するもの
である。
【0055】このis-aの関係では、図16に示すよう
に、例えば、クラスX1 とクラスX2とがis-aの関係に
あって、クラスX1 がメソッド属性Pa1 /データ属性
1 /振る舞いP1 で表され、クラスX2 がメソッド属
性Pa2 /データ属性A2 /振る舞いP2 で表されると
きに、クラスX2 が発火されるときにできる複合クラス
12では、メソッド属性及びデータ属性についてはan
dで処理され、振る舞いについてはorで処理されるこ
とになる。また、part-of の関係でもまた、例えば、ク
ラスX3 とクラスX4 とがクラスX34のpart-of の関係
にあるときに、クラスX34が発火されるときにできる複
合クラスY34では、メソッド属性及びデータ属性につい
てはandで処理され、振る舞いについてはorで処理
されることになる。
【0056】図17に、このようにして構築されるアク
ターオブジェクトのフレーム表現を図示する。すなわ
ち、従来のオブジェクトは、名称と、属性と、操作とで
構成されているが、アクターオブジェクトは、名称と、
知識と、構造レベルと、操作と、ビューとで構成される
ものである。ここで、この構造レベルとは、原始オブジ
ェクトであるとか、ストラクチャオブジェクトであると
かいった構造ネットワークの種別を表しており、操作の
パラメータとは、実行するオブジェクトのシーケンスを
表しており、ビューのパラメータとは、画面であれば表
示座標のことを表している。
【0057】最近、「強弱様々な度合いにおいて言語化
された“意味”エネルギーの泡立ちたぎる流動体」とも
言うべき言語アラヤ識なる概念が提案されている。この
言語アラヤ識では、深部に流動する“意味”エネルギー
のあれこれの部分が、時と場合の要請に応じて、単独あ
るいは幾つか連合して活性化されて、表面意識の白日の
光の中に浮かび上がってくることで知識を説明してい
る。すなわち、この言語アラヤ識では、知識とは、状況
によって様変わりするものであることを説明している。
【0058】知識は、理解できる言葉で置き換えられる
ものであるが、この言語アラヤ識なる概念での説明に対
応するように、同じ言葉でも、ドメインが異なるとその
意味が違ってくる。従って、知識とは、あるドメイン内
で理解し合える言葉と言え、言葉であるオブジェクトコ
マンドもまた、ドメインを考慮したものでなければなら
ないのである。
【0059】このようにして、本発明者らが提案したオ
ブジェクト思考データ処理システムでは、外延的名辞な
るオブジェクトコマンドを内部iDとして規定し、それ
をあるドメイン内で知識としての言葉とし、その言葉の
意味する定義又は性質を情報隠蔽の世界の原子部品/複
合部品で表す。そして、この意味を持った言葉を使っ
て、オブジェクト世界で仮想の人間を模倣する。この言
葉で表現される仮想人間は、空間的関係を表す静的世
界、時間的関係を表す動的世界、それらの間に存在する
同期関係を表す因果関係世界の中で生活することにな
る。
【0060】この構成に従って、本発明者らが提案した
オブジェクト思考データ処理システムは、実世界を簡単
かつ忠実にモデル化できることになる。次に、ドメイン
ビルダー/システムビルダーに適用した実施例に従っ
て、本発明について詳細に説明する。
【0061】図18に、本発明者らが提案したオブジェ
クト思考データ処理システムにより構成されるドメイン
ビルダー/システムビルダーの全体構成を図示する。図
中、20は知識獲得領域を構成するドメインビルダー
(図中では、ドメイン/部品ビルダーと称することもあ
る)、21は知識利用領域を構成するシステムビルダ
ー、22はシステムに共通に用意されるドメインに依存
しない共通知識、23はドメインビルダー20により構
築されるドメイン毎の知識を格納する知識格納領域であ
る。なお、図示していないが、この知識格納領域23に
は、システムで用意するものが予め格納されていること
がある。
【0062】このドメインビルダー20は、ドメインを
設定しつつ、共通知識22を使って、そのドメインの知
識即ち経験則を獲得して知識格納領域23に覚えていく
機構である。具体的には、ドメインビルダー20は、構
築対象となるドメインに精通しているエキスパートと対
話しながら、そのドメインの中に知識としてのオブジェ
クト部品(プログラム部品、ビュー部品、言葉部品の3
種類がある)を組み上げていくことになる。すなわち、
学習を行うのである。このとき、この新たに獲得された
知識は、共通知識22に反映され、これにより共通知識
22は成長していく。
【0063】図19に、このドメインビルダー20の実
行処理を図示する。この図に示すように、ドメインビル
ダー20のユーザであるエキスパートは、先ず最初に、
ドメインを認識する。ドメインが無ければ、ドメインを
新規に興し、ドメインが既に存在する場合には、そのド
メインを選択するのである。続いて、ドメイン内に知識
を生成する。この知識こそが、プログラム部品であり、
ビュー部品であり、それらの部品の構造等を説明するた
めに用いられるそのドメイン内で通用する言葉部品であ
る。
【0064】この知識の生成方法を具体的に説明するな
らば、ユーザであるエキスパートは、先ず最初に、共通
知識22からお手本となる知識を選んでコピーする。こ
のとき、共通知識22の全ての知識を全てコピーするこ
ともあるし、自分の気に入った知識のみをコピーするこ
ともある。続いて、その持ち込んだ知識をたたき台にし
て、その知識を自分のドメインの知識に作り変えたり、
新しい知識を作り込んでいく。この作業は、知識の定義
を変えたり、知識の定義を新規に作ることである。その
ため、その定義がその知識に相応しているものなのか否
かという相性合わせを行うことになる。プログラム部品
の相性合わせで説明するならば、そのプログラム部品を
作っている原始オブジェクト同士の引数を合わせる処理
を行うのである。
【0065】このようにして、ドメインビルダー20
は、自分のドメインの中に、仲間に通用する知識即ち言
葉を構築して知識格納領域23に覚えていくのである。
このドメインビルダー20の用いる共通知識22は、あ
らゆるドメインで考えられる知識の定義を重み無しで持
つものであり、上述した言語アラヤ識に相当するもので
あると言える。この共通知識22は、あらゆるドメイン
を考えて用意されるべきものであるが、最初から用意す
ることは到底不可能であるので、図18にも示したよう
に、新たに獲得された知識が共通知識22に反映されて
いくことで成長していく構成を採っている。
【0066】一方、システムビルダー21は、ドメイン
ビルダー20により作られた知識を使ってシステムを構
築していく機構である。具体的には、システムビルダー
21は、システムを構築するユーザにドメインビルダー
20により作られた知識を提供しながら、そのユーザの
望むシステムを構築していくことになる。すなわち、知
的活動を行うのである。このとき、ドメインビルダー2
0により作られた知識に不足部分があるときには、ドメ
インビルダー20に対して、その不足部分の知識の獲得
要求を発行することになる。
【0067】図20に、このシステムビルダー21の実
行処理を図示する。この図に示すように、システムビル
ダー21のユーザである方式設計者は、先ず最初に、ド
メインを認識し、自分の世界の言葉で表現できる世界を
用意する。続いて、システムのユーザと打ち合わせをし
ながら仕様全体を把握する。この把握は、打ち合わせの
議事録を集め整理することで行う。
【0068】続いて、議事録の中に示された語彙を分解
し、更に、議事録の中に示された意味的なことから語彙
を見つけ出し、それらの語彙集を使って、知識格納領域
23から必要なプログラム部品やビュー部品を類似検索
(例えば、シグニチュアーの類似度を評価することで行
う)等により引き出す。ここで、語彙分解を行って、直
接、プログラム部品やビュー部品を見つけ出すのに利用
されるのは、部品の構造定義(構造的シグニチュアー)
であり、一方、意味的にプログラム部品やビュー部品を
見つけだすのに利用されるのは、部品の精神的定義(精
神的シグニチュアー)である。
【0069】続いて、それらの語彙集をそのドメインの
中で意味のあるグループにまとめることで、部品をグル
ープ化し、それらの部品のつながりを規定することでシ
ナリオ化する。そして、シナリオ化した部品に具体的な
データを入れることで、そのシステムに必要なプログラ
ム部品やビュー部品を洗い出し、それを自動相性合わせ
により自動プログラミングし動作をチェックすることで
システムを完成するのである。すなわち、システムビル
ダー21は、図21に示すような手順に従って、システ
ムを完成していく。
【0070】このようにして、システムビルダー21
は、最初に、仕様書知識の段階的整理を行い、続いて、
仕様キーワードによる部品の検索を行い、続いて、経験
則による部品の結合を行い、続いて、仕様書・プログラ
ム・画面を生成していくことでシステムを構築すること
になる。
【0071】実世界を表現することになる構築対象のシ
ステムは、全貌としては、図22に示すように、いわ
ば、目次、章、項といったような階層構造を持つ知識と
して捉えることができることから、このシステムビルダ
ー21によるシステム構築は、設計手順的には、それに
合わせて、最初に、大まかなフォーマットを決める概念
設計を行い、続いて、インスタンス設計や同期設計やリ
ンク設計等の詳細設計を行い、続いて、インスタンス化
の具体設計という手順を踏むことを意味する。図23
に、この図22の具体的な一例を図示する。
【0072】このように、ドメインビルダー20は、ド
メインを設定しつつ、共通知識22を使って、そのドメ
インの知識即ち経験則を獲得して知識格納領域23に覚
えていくよう処理し、一方、システムビルダー21は、
ドメインビルダー20により作られた知識を使い知的活
動を行ってシステムを構築していくよう処理する。図2
4及び図25に、このドメインビルダー20/システム
ビルダー21の処理を図式化して示す。ここで、図中の
Q/A機能24は、システムビルダー21の必要とする
知識が知識格納領域23に格納されていないときに、ド
メインビルダー20に対して、その知識の獲得要求を発
行する機構である。また、ここでは、知識格納領域23
の中に共通知識22を展開する構成を採っている。
【0073】図26に、ドメインビルダー20の獲得す
る知識を展開する知識格納領域23の詳細構成を図示す
る。図中、30は認識モジュールファイル、31は認識
モジュールファイル30に展開される単体認識データ、
32は認識モジュールファイル30に展開される意味ネ
ットワーク認識データ、33は実データファイル、34
は認識インデックスファイル、35は認識インデックス
ファイル34を構成する単体認識インデックス、36は
認識インデックスファイル34を構成するナビゲート認
識インデックスである。
【0074】認識モジュールファイル30は、知識とな
るオブジェクトの属性をオブジェクトコマンドでもって
展開し、これに加えて、例えば、「コップは水を入れる
もので、ガラスからできていて、その水とは流体であ
る」とか、「リンゴと梨は果物である」とかいったよう
なオブジェクトの属性の間に成立する性質や構造の意味
ネットワークを認識モジュール(オブジェクトの属性)
毎に展開する。単体認識データ31がこのオブジェクト
の属性情報に相当し、意味ネットワーク認識データ32
がこの意味ネットワークに相当する。なお、意味ネット
ワーク認識データ32は、単体認識データ31が更新さ
れるときにそれに合わせて自動的に更新されることにな
る。
【0075】実データファイル33は、オブジェクトの
実体と、オブジェクト属性の実体とを格納するものであ
って、例えば、第1認識モジュールの実体はリレーショ
ナルデータベース構造のファイルに格納し、第2認識モ
ジュールの実体はネットワークデータベース構造のファ
イルに格納し、第3認識モジュールの実体は時系列デー
タベース構造のファイルに格納するといったように、認
識モジュールに適合した構造体を持つ複数のファイルを
使ってオブジェクトの実体を格納する。
【0076】認識インデックスファイル34の単体認識
インデックス35は、単体認識データ31のインデック
スを構成して、名称インデックス、ドメインインデック
ス、シーンインデックス、意味インデックスといったよ
うな認識モジュール毎のインデックスより構成される。
一方、認識インデックスファイル34のナビゲート認識
インデックス36は、意味ネットワーク認識データ32
のインデックスを構成して、名称ナビゲートインデック
ス、ドメインナビゲートインデックス、構造ナビゲート
インデックスといったような認識モジュール毎のインデ
ックスより構成される。このナビゲート認識インデック
ス36は、基本的には、スーパクラスと、その配下のク
ラスとの関係等を管理するものであるが、ある日と、そ
の日に起きたこと等のような、スーパクラスlikeと、そ
の配下のクラスとの関係等についても管理対象としてい
る。なお、この単体認識インデックス35及びナビゲー
ト認識インデックス36は、単体認識データ31が更新
されるときにそれに合わせて自動的に更新されることに
なる。
【0077】図27に、認識モジュールファイル30に
展開される単体認識データ31のデータ構造を図示す
る。ここで、この単体認識データ31の実体は、実デー
タファイル33に格納されている。
【0078】この実施例では、単体認識データ31は、
実体参照認識モジュールと、構造認識モジュール
と、名称認識モジュールと、発想支援認識モジュール
と、保守・管理認識モジュールと、ドメイン認識モ
ジュールと、意味認識モジュールと、成長認識モジ
ュールとを持つように構成される。
【0079】この実体参照認識モジュールは、オブジ
ェクトの実体の認識のために用意される認識モジュール
であり、オブジェクトの実データへのポインタ情報を管
理する。この実体参照認識モジュールを参照すること
で、オブジェクトの実体を認識できることになる。すな
わち、オブジェクトの実体をそのまま記憶するという従
来のコンピュータ技術の用いる記憶メカニズムについて
も、そのまま利用できる構成を採っている。
【0080】構造認識モジュールは、オブジェクトの
構造の認識のために用意される認識モジュールであり、
オブジェクトがプログラム部品/画面部品/定義部品の
いずれであるのかを表す部品種と、オブジェクトが原始
オブジェクト/ストラクチャオブジェクト/シーケンス
オブジェクト/インタンスオブジェクト/セッションオ
ブジェクトのいずれであるのかを表す構造レベルと、オ
ブジェクトの持つ構造についての遺伝子情報とを管理す
る。この構造遺伝子情報は、基本的には、そのオブジェ
クトを構成するオブジェクトの種類と、それらのオブジ
ェクト間のリンクデータとを表すものである。
【0081】この構造認識モジュールを参照すること
で、オブジェクトの構造を認識できることになる。すな
わち、プログラム部品であれば、その基になっているプ
ログラムの種類と、そのリンクデータと、そのパラメー
タ種別と、そのパラメータ値とを認識できるし、ビュー
部品であれば、その基となっているビューの種類と、そ
のリンクデータとを認識できるし、言葉部品であれば、
その基になっている言葉の種類と、そのリンクデータと
を認識できるのである。
【0082】この構造認識モジュールの管理するis-a
やpart-of 等のオブジェクトの構造データから、オブジ
ェクトの構造ネットワークが抽出されて、構造認識モジ
ュール対応に備えられる意味ネットワーク認識データ
32に意味ネットワークとして展開されることになる
が、この構造ネットワークは、その一部を別のものにす
ることで別のオブジェクトを作り出したり、構造自体は
変えずに、役割名を変えることで別のオブジェクトと見
なすというような部品の再利用メカニズムで主に使われ
ている。
【0083】ここで、この構造認識モジュールの管理
するオブジェクト構造の遺伝子情報は、オブジェクトの
持つ前後関係についても構造表現する。すなわち、図2
8に示すように、「いぬ」と、独立した「い」と「ぬ」
とは全く別物であり、「いぬが歩く」と、独立した「い
ぬ」と「歩く」とは全く別物であるというように、前後
関係を含んだオブジェクトは、それを構成するオブジェ
クト部分とは全く別のものとなる。このような極めて重
要な構造情報であるオブジェクトの持つ前後関係につい
ても、シグニチュアーで表されるオブジェクト構造の遺
伝子情報は構造表現しているのである。
【0084】名称認識モジュールは、オブジェクトの
名称等の認識のために用意される認識モジュールであ
り、オブジェクトの外部iDとなる名称と、オブジェク
トの内部iDとなるオブジェクトコマンドと、オブジェ
クトの表キーワードとを管理する。ここで、表キーワー
ドとは、名称と同じようなオブジェクトを特徴付ける言
葉である。また、このオブジェクトコマンドは、内部i
Dとして使用されるとともに、オブジェクト属性の記号
化データであることから、2つのオブジェクトの類似度
を評価するときに使用されることになる。この名称認識
モジュールを参照することで、オブジェクトの名称
や、オブジェクトコマンドや、オブジェクトのキーワー
ドを認識できることになる。
【0085】発想支援認識モジュールは、オブジェク
トの発想支援のために用意される認識モジュールであ
り、裏キーワードを管理する。この裏キーワードは、改
造元となったオブジェクトの持つ名称と、それが属する
ドメイン名との対データで定義されて、認識モジュール
ファイル30に登録されているオブジェクトを利用する
ユーザが、そのオブジェクトの持つ名称や、表キーワー
ドや、意味認識モジュールの意味データ等を変更する
ことで新たなオブジェクトを作成する場合(改造元のオ
ブジェクトはそのまま残されている)に、その改造元の
オブジェクトを登録したユーザが、その改造内容を知る
ことができるようにするために登録されるものである。
【0086】すなわち、この裏キーワードに従って、自
オブジェクトから作り出された他ドメインのオブジェク
トが検索可能になるので、この検索されたオブジェクト
と、自オブジェクトとの違いを見ることで、どのような
名称に変更されたり、どのような表キーワードに変更さ
れたり、どのような意味データに変更されたのかを知る
ことができるようになる。従って、この裏キーワードを
使うことで、オブジェクトを登録したユーザは、他ドメ
インでの別の見方を知ることができるようになって自己
啓発できる。例えば、表キーワードを登録したユーザ
が、リンゴを食べるものばかりだと考えていた場合に、
別のユーザが他ドメインでは文鎮にもなるとして改造す
ると、この裏キーワードにより文鎮としても利用される
ことを知ることができるのである。
【0087】保守・管理認識モジュールは、オブジェ
クトの保守・管理のために用意される認識モジュールで
あり、管理者や管理日時等の管理データと、オブジェク
トの新陳代謝の管理データと、時間管理やプロセス管理
等の管理データとを管理する。すなわち、そのオブジェ
クトを、何時、誰が、どういう目的で、どういう処理の
ために、作成・変更・追加・削除したのか等について管
理するものである。また、このオブジェクトの新陳代謝
の管理データは、更新されてきたオブジェクトの差分情
報を管理するものであり、これを使ってオブジェクトの
復元を行うことができる。
【0088】ドメイン認識モジュールは、異なるドメ
インとの調和のために用意される認識モジュールであ
り、自オブジェクトの属するドメイン名と、異なるドメ
インとの差異情報とを管理する。自オブジェクトの属す
るドメインが相手のドメインと異なるときには、このド
メイン認識モジュールの管理データを使って、自分の
知識を相手ドメインの知識にダイナミックに合わせるこ
とができ、いわば、相手の身になって考えることを実現
することになる。なお、ドメイン名は、例えば、どの業
種のどの装置であるのかというように階層化されてい
る。
【0089】意味認識モジュールは、オブジェクトの
意味の認識のために用意される認識モジュールであり、
オブジェクトの持つ性質や振る舞いや意味等の意味デー
タを管理するものであるが、同じドメイン(同じ業種の
同じ装置)内でも、人間にとっては、リンゴは食べ物と
なり、紙にとっては、リンゴは文鎮となり、絵画にとっ
ては、リンゴは形・色になるというように、相手即ちシ
ーン(場)が変われば、これらの意味も変わることか
ら、シーン毎に意味データを管理する構成を採ってい
る。このシーンとは、ユーザが今まさに使おうとしてい
る場面ということである。
【0090】この意味認識モジュールの管理する意味
データとしては、例えば、図29(a)に示すように、
意味レベル/目的/働き/性質/役割/実体/類似/反
意/接頭/接尾/説明の11種類がある。ここで、意味
レベルとは、そのオブジェクトが3つの様態の内のどれ
であるのかを表し、目的(What)とは、そのオブジ
ェクトをそのシーンで何に使うのかを表し、働き(Ho
w)とは、そのオブジェクトをそのシーンでどのように
使うのかを表し、性質(State)とは、そのオブジ
ェクトのそのシーンでの状態を表し、役割(Role)
とは、そのオブジェクトのそのシーンでの本来の役割を
表し、実体とは、そのオブジェクトのそのシーンでの実
際の機械は何であるかを表し、類似とは、そのオブジェ
クトのそのシーンでの類似語は何であるかを表し、反意
とは、そのオブジェクトのそのシーンでの反対語は何で
あるかを表し、接頭とは、そのオブジェクトのそのシー
ンでの接頭語は何であるかを表し、接尾とは、そのオブ
ジェクトのそのシーンでの接尾語は何であるかを表し、
説明とは、そのオブジェクトのそのシーンでのコメント
を表す。図29(b)に、この意味データの一例を図示
する。
【0091】この意味データの内、意味レベル/目的/
働き/性質/役割は、水平思考の考え方に立つ階層的意
味データとも言えるもので、その点から階層的意味認識
モジュールを構成している。また、この意味データの
内、実体は、実在の機械名であることから、実体名認識
モジュールを構成している。また、この意味データの
内、類似/反意/接頭/接尾は、連想の意味データとも
言えるもので、その点から連想記憶モジュールを構成し
ている。なお、この意味認識モジュールとドメイン認
識モジュールとで、いわば、状況判断認識モジュール
を構成することになる。
【0092】この意味認識モジュールの管理する意味
データの間の成立するis-aやpart-of 等の関係と、保守
・管理認識モジュールの管理する管理データの間の成
立するis-aやpart-of 等の関係と、名称認識モジュール
の管理する管理データの間の成立するis-aやpart-of
等の関係とから、オブジェクトの性質ネットワークが抽
出されて、認識モジュール毎に備えられる意味ネットワ
ーク認識データ32に意味ネットワークとして展開され
ることになるが、この性質ネットワークは、後述するよ
うに知識の想起等のために使われることから、主に、思
考メカニズムで使われるものとなる。
【0093】成長認識モジュールは、新しい認識が起
きるときに、自動的にスキーマを追加していくために用
意されるモジュールである。すなわち、この成長認識モ
ジュールは、認識モジュールファイル30に展開され
る単体認識データ31が成長していくための仕掛けとし
て用意されるのである。
【0094】このようにして、知識格納領域23は、こ
のような認識モジュール構造を持つ単体認識データ31
を認識モジュールファイル30に展開していくことで、
ドメインビルダー20の学習するオブジェクトを記憶し
ていくことになる。
【0095】図30に、ドメインビルダー20が実行す
る知識格納領域23へのオブジェクト格納処理の処理フ
ローを図示する。すなわち、ドメインビルダー20は、
この処理フローに示すように、上述したハイパー言語処
理に従ってオブジェクトの引数を合わせつつ組み合わせ
ることで新たなオブジェクト部品を作成すると、そのオ
ブジェクトの実データを実データファイル33に格納
し、続いて、そのオブジェクトのオブジェクトコマンド
を作成し、続いて、そのオブジェクトの単体認識データ
31を作成する。
【0096】続いて、認識モジュール毎に単体認識デー
タ31のインデックスを作成することで単体認識インデ
ックス35を作成する。そして、認識モジュール毎に、
is-a等の関係が含まれているか否かを検索して、含まれ
ている場合には、スーパクラスと、その配下のクラスと
を抽出して、それら等から意味ネットワーク認識データ
32を作成するとともに、その意味ネットワーク認識デ
ータ32に対応させてナビゲート認識インデックス36
を作成するのである。
【0097】この知識格納領域23へのオブジェクトの
登録にあたって、ドメインビルダー20は、人間の記憶
メカニズムに合わせて、その都度、登録対象のオブジェ
クトに適合した認識モジュールのカテゴリを創造してい
って、その創造した認識モジュールのカテゴリに従って
登録処理を実行していくという構成を採っている。そし
て、登録対象のオブジェクトが前後関係を含むときに
は、その都度、その前後関係のカテゴリを創造していっ
て、その創造した前後関係を含んだ形で登録処理を実行
していくという構成を採っている。
【0098】すなわち、人間は、例えば、証明用の人物
写真のときには、人物名のみが認識の対象となるのに対
して、旅行のときの人物写真のときには、どこで、何
時、誰と一緒だったかといったことも認識の対象となる
というように、常に決まった認識モジュールを使うので
はなくて、認識目的に合わせて、認識モジュールを自在
に選択し、必要があれば新たに作り出して実世界を記憶
するという記憶メカニズムを持っている。この人間の記
憶メカニズムに合わせて、ドメインビルダー20は、そ
の都度、登録対象のオブジェクトに適合した認識モジュ
ールのカテゴリを創造していって、オブジェクトを知識
格納領域23へ登録していくのである。なお、カテゴリ
の対象となる認識モジュールには、上述した認識モジュ
ール群の内部に展開される階層化された認識モジュール
群をも含まれている。
【0099】そして、登録対象のオブジェクトが前後関
係を含むときには、その都度、その前後関係のルールに
合わせて、その前後関係を含んだ形でオブジェクトを知
識格納領域23へ登録していくのである。
【0100】次に、システムビルダー21が実行する知
識格納領域23に格納されるオブジェクトの参照処理に
ついて説明する。システムビルダー21は、知識格納領
域23に格納されるオブジェクトを使ってシステム構築
の知的活動を行うときには、目的認識を実現するため
に、知的活動に必要なオブジェクトを特徴付ける認識モ
ジュールを使って、知識格納領域23に格納されるオブ
ジェクトを検索していくことで目的認識を実現する。例
えば、特定の日時に起きたことを知識として獲得する場
合には、保守・管理認識モジュールを使ってオブジェ
クトを検索していくのである。
【0101】この目的認識は、通常、最初に、名称を意
識しつつドメインを認識していくことから始まることか
ら、ドメイン認識モジュールと名称認識モジュール
を使って開始されることになり、その後、例えば、構造
認識モジュールを使って構造を認識し、続いて、意味
認識モジュールを使って意味を認識していくことなど
により実行されることになる。
【0102】上述したように、ドメインビルダー20
は、人間の記憶メカニズムに合わせてオブジェクトを知
識格納領域23に記憶していく構成を採っているが、こ
れに対して、システムビルダー21は、知識格納領域2
3に格納されるオブジェクトを使って、人間の記憶メカ
ニズムの持つ再認識・想起メカニズムを実現する構成を
採っている。
【0103】図31に、この人間の記憶メカニズムの持
つ想起メカニズムを実現するためにシステムビルダー2
1が実行する処理フローを図示する。すなわち、システ
ムビルダー21は、この処理フローに示すように、ステ
ップ1で、ユーザから1つ又は複数の名称や表キーワー
ド等を指定して目的認識の指示が発行されることを検出
すると、続くステップ2で、指定された認識モジュール
に対応付けて備えられる単体認識インデックス35を検
索し、続くステップ3で、その検索の結果、検索指示の
名称等が認識モジュールファイル30に登録されている
のか否かを判断する。
【0104】この判断処理により、認識モジュールファ
イル30に登録されていることを判断するときには、ス
テップ4に進んで、ユーザの指定する検索方法がナビゲ
ート検索であるのか、単体検索であるのかを判断して、
単体検索が指定されていることを判断するときには、ス
テップ5に進んで、単体認識インデックス35で検索さ
れた単体認識データ31の持つオブジェクトコマンドを
入手し、続くステップ6で、実データファイル33か
ら、そのオブジェクトコマンドの指すオブジェクトの実
データを検索して処理を終了する。なお、実データファ
イル33が図25に示すように複数ファイル構成に従っ
て実データを格納する構成を採る場合には、この実デー
タファイル33の検索処理はパラレルに実行されること
になる。
【0105】一方、ステップ4で、ナビゲート検索が指
定されていることを判断するときには、ステップ7に進
んで、指定された認識モジュールに対応付けて備えられ
るナビゲート認識インデックス36を検索し、続くステ
ップ8で、その検索の結果、検索指示の名称等が認識モ
ジュールファイル30の意味ネットワーク認識データ3
2に登録されているのか否かを判断する。
【0106】このステップ8で、検索指示の名称等が意
味ネットワーク認識データ32に登録されていることを
判断するときには、ステップ9に進んで、その検索指示
の名称等を起点にして、意味ネットワーク認識データ3
2をスーパクラスからその配下のクラスへとナビゲート
する等のナビゲート処理を実行することで、その検索指
示の名称等に関連する一連の単体認識データ31を検索
し、続くステップ10で、その検索された単体認識デー
タ31の持つオブジェクトコマンドを入手する。
【0107】続いて、ステップ11で、実データファイ
ル33から、そのオブジェクトコマンドの指すオブジェ
クトの実データを検索し、続くステップ12で、その実
データや、そのオブジェクトコマンドの指すオブジェク
トの属性情報を表示し、続くステップ13で、その表示
情報に対するユーザからの指示に従って、その検索した
単体認識データ31の一部を特化していくことで、検索
要求のあるオブジェクトを作成して処理を終了する。
【0108】一方、ステップ8で、検索指示の名称等が
意味ネットワーク認識データ32に登録されていないこ
とを判断するときには、ステップ14に進んで、ユーザ
にその旨を通知し、続くステップ15で、ユーザからの
指示に従った処理を実行して処理を終了する。
【0109】このようにして、システムビルダー21
は、ナビゲート検索機能を備えて、このナビゲート検索
機能に従って、認識モジュールファイル30に記憶され
ているオブジェクトを一般的カテゴリから個別的カテゴ
リへとナビゲイトしながらオブジェクトを検索していく
ことが可能になる。これにより、例えば、ある日に起き
た出来事というような、あるオブジェクトに関連する一
連のオブジェクトを検索できるようになる。
【0110】これは、とりも直さず、人間の記憶メカニ
ズムの持つ想起メカニズムを実現していることを意味し
ている。この図31の処理フローでは、システムビルダ
ー21が、人間の記憶メカニズムの持つ想起メカニズム
を実現することを開示したが、システムビルダー21
は、人間の記憶メカニズムの持つ再認識メカニズムにつ
いても実現できる。
【0111】この再認識メカニズムを実現する場合に
は、システムビルダー21は、ユーザから1つ又は複数
の名称や表キーワード等を指定して再認識メカニズムの
検索要求が発行されると、その名称等からシグニチュア
ーを作成して、認識モジュールファイル30の単体認識
データ31の中から、そのシグニチュアーに類似するシ
グニチュアーを持つ1つ又は複数の単体認識データ31
を検索する。
【0112】そして、ユーザからの指示に従って、その
検索した単体認識データ31の一部を変更したり、その
検索した単体認識データ31の持っている意味を変更し
ていくことで、検索要求のあるオブジェクトを作成して
処理を終了する。ここで、類似するものを検索するにあ
たって、類似度の高いものを検索することが一般的では
あるが、人間のヒラメキ等を実現するためには、極く僅
かしか類似しないものを検索していくことも必要であ
る。
【0113】このようにして、システムビルダー21
は、類似検索機能を備えて、この類似検索機能に従っ
て、認識モジュールファイル30に記憶されているオブ
ジェクトの中から、認識対象のオブジェクトに類似する
ものを検索し、認識対象のオブジェクトを、それまでに
記憶しているオブジェクトと比較しながら認識していく
ことが可能になる。
【0114】これにより、ユーザからこんなプログラム
が欲しいというような要求があるときに、登録プログラ
ムの中からそれに近いものを提示して、ユーザの要求プ
ログラムがどんなものであるのかをユーザに再認識させ
つつ、ユーザの指示に従ってその提示プログラムの属性
や構造の一部を変えることで、その要求プログラムを完
成させていくことができる。例えば、ユーザの要求プロ
グラムが、入力データがある規定値と等しいか否かを判
断する等値比較プログラムである場合に、2つの入力デ
ータの大小比較を判断する大小比較プログラムを提示し
て、その入力データの内の1つを規定値として役割を変
えていくことで、ユーザの要求プログラムを完成させて
いくのである。
【0115】これは、とりも直さず、人間の記憶メカニ
ズムの持つ再認識メカニズムを実現していることを意味
している。このようにして、システムビルダー21は、
図32に示すように、知識格納領域23に格納されるオ
ブジェクトを使って、人間の記憶メカニズムの持つ再認
識・想起メカニズムを実現する構成を採っているのであ
る。
【0116】ここで、図中にも示すように、このシステ
ムビルダー21の実現する再認識メカニズムと想起メカ
ニズムとは、複雑に絡み合っている。すなわち、再認識
メカニズムで得られた単体認識データ31からスーパク
ラスを作成して、それを起点にして想起メカニズムに移
ったり、再認識メカニズムで得られた単体認識データ3
1を使って意味ネットワーク認識データ32の検索に入
ったり、あるいは、想起メカニズムで得られた単体認識
データ31に類似するものを検索することで再認識メカ
ニズムに移ったり、想起メカニズムで得られた単体認識
データ31を使って再認識を実行したりというような複
雑な処理が可能であるが、この点から見ても、システム
ビルダー21は、正確に、人間の記憶メカニズムを実現
していると言える。
【0117】図28で説明したように、「いぬ」と、独
立した「い」と「ぬ」とは全く別物であり、「いぬが歩
く」と、独立した「いぬ」と「歩く」とは全く別物であ
るというように、前後関係を含んだオブジェクトは、そ
れを構成するオブジェクト部分とは全く別のものとな
る。そして、人間の記憶メカニズムでは、この前後関係
を考慮しつつオブジェクトを認識する構成を採っている
が、このオブジェクトの持つ前後関係の性質を利用する
と、新たなプログラム実行方式を実現できることにな
る。
【0118】次に、本発明に関わるこの新たなプログラ
ム実行方式について詳細に説明する。オブジェクトが複
合オブジェクトからなるプログラム部品であるときに
は、図33に示すように、プログラムの進行に伴って、
プログラムの構造データや管理データが変化していくこ
とで、プログラムの示すオブジェクトコマンドが変化し
ていくことになる。
【0119】この図33のプログラムで説明するなら
ば、プログラムが開始する前の状態が示すオブジェクト
コマンド“100-00”は、プログラムの開始時点の状態が
示すオブジェクトコマンド“100-01”とは当然異なり、
このオブジェクトコマンド“100-01”は、第1段階の処
理(この例では、「データの入手処理」)後の状態が示
すオブジェクトコマンド“100-02”とは当然異なり、こ
のオブジェクトコマンド“100-02”は、第2段階の処理
(この例では、「状態あるかの判断処理」)の分岐先の
状態が示すオブジェクトコマンド“100-03”とは当然異
なり、このオブジェクトコマンド“100-02”/オブジェ
クトコマンド“100-03”は、第2段階の処理のもう一方
の分岐先の状態が示すオブジェクトコマンド“100-04”
とは当然異なるというように、プログラムの進行に伴っ
て、プログラムの示すオブジェクトコマンドが変化して
いくことになるのである。
【0120】これから、このプログラムの各状態の持つ
オブジェクトコマンドは、それ以降の処理の起動を指示
するコマンドであるという性質を持つ。すなわち、オブ
ジェクトコマンド“100-00”は、いわば、プログラムを
主記憶に展開しろというコマンドであり、オブジェクト
コマンド“100-01”は、いわば、プログラムを起動しろ
というコマンドであり、オブジェクトコマンド“100-0
2”は、いわば、第1段階の処理以降の処理を実行しろ
というコマンドであり、オブジェクトコマンド“100-0
3”は、第2段階の処理で分岐する一方の処理以降の処
理を実行しろというコマンドであり、オブジェクトコマ
ンド“100-04”は、第2段階の処理で分岐するもう一方
の処理以降の処理を実行しろというコマンドであるとい
うように、プログラムの各状態の持つオブジェクトコマ
ンドは、それ以降の処理の起動を指示するコマンドであ
るという性質を持つのである。
【0121】このプログラムの進行に伴うプログラムの
示すオブジェクトコマンドの変化もまた、オブジェクト
の持つ前後関係を表していると言え、オブジェクトの持
つ前後関係のカテゴリが変化していくことを表してい
る。
【0122】このプログラムの各状態の持つオブジェク
トコマンドの性質と、図7で説明したラーニングの機能
とを使うことで、負荷分散を自在に制御できるととも
に、1箇所で仕様を変更するだけで機能を簡単に分散で
きるようになる新たなプログラム実行方式を実現できる
ようになる。
【0123】すなわち、あるコンピュータ1が、現在実
行中のプログラムのある処理以降のプログラム処理を他
のコンピュータ1に移動させる必要があるときには、そ
の処理に対応するオブジェクトコマンドを発生して、そ
のオブジェクトコマンドをそのコンピュータ1に送出す
る。例えば、オブジェクトコマンド“100-08”以降のプ
ログラム処理を他のコンピュータ1に移動させる必要が
あるときには、図34に示すように、そのオブジェクト
コマンド“100-08”をそのコンピュータ1に送出するの
である。
【0124】このようにして送出されてくるオブジェク
トコマンドを受け取ると、受け取ったコンピュータ1
は、送られてきたオブジェクトコマンドの指すプログラ
ムの実体が自装置内に登録されているか否かを検索す
る。そして、この検索結果に従って、送られてきたオブ
ジェクトコマンドの指すプログラムの実体が自装置内に
登録されていることを判断するときには、図34に示す
ように、その検索されたプログラムを実行する。
【0125】一方、この検索結果に従って、送られてき
たオブジェクトコマンドの指すプログラムの実体が自装
置内に登録されていないことを判断するときには、図7
で説明したラーニングの機能に従って、そのプログラム
の実体を持つコンピュータ1に対してその実体の転送要
求を発行することで、そのプログラムを入手して実行す
る。例えば、図35に示すように、そのオブジェクトコ
マンドを送出してきたコンピュータ1に対してその実体
の転送要求を発行することで、そのプログラムを入手し
て実行するのである。
【0126】このようにして、本発明のプログラム実行
方式では、コンピュータ1は、プログラム実行中に、例
えばオブジェクトコマンド“100-08”を飛ばすことで、
そのオブジェクトコマンド“100-08”以降のプログラム
処理を他のコンピュータ1に委ねることができる。すな
わち、本発明のプログラム実行方式では、予め設計して
おかなくても、オブジェクトコマンドを飛ばすだけで、
同一プログラムのデータ処理を自在に他のコンピュータ
1に移動させることができるのである。
【0127】
【発明の効果】以上説明したように、本発明によれば、
複数のコンピュータから構成されるコンピュータシステ
ムにおいて、オブジェクトコマンドを飛ばすだけで、プ
ログラムの実行中に他コンピュータにプログラムの実行
処理を移動させることができるようになることから、負
荷分散を自在に制御できるとともに、1箇所で仕様を変
更するだけで機能を簡単に分散できるようになるのであ
る。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】オブジェクトコマンドの説明図である。
【図3】プログラムの状態とオブジェクトコマンドの説
明図である。
【図4】オブジェクト思考モデルの説明図である。
【図5】オブジェクトコマンドの説明図である。
【図6】言葉と暗黙知の説明図である。
【図7】ラーニングの説明図である。
【図8】オブジェクト思考世界の説明図である。
【図9】アクターオブジェクトの様態の説明図である。
【図10】仮想人間世界の空間世界の説明図である。
【図11】因果関係の同期取りの説明図である。
【図12】相性合わせ処理の説明図である。
【図13】オブジェクト管理機構の説明図である。
【図14】逆スーパクラス/逆サブクラスの説明図であ
る。
【図15】クラス間の関係の説明図である。
【図16】is-a,part-ofの説明図である。
【図17】アクターオブジェクトのフレーム表現の説明
図である。
【図18】ドメインビルダー/システムビルダーの全体
構成図である。
【図19】ドメインビルダーの実行処理の説明図であ
る。
【図20】システムビルダーの実行処理の説明図であ
る。
【図21】システムビルダーの実行処理の説明図であ
る。
【図22】システム構築の設計手順の説明図である。
【図23】設計手順の具体例の説明図である。
【図24】ドメインビルダーの説明図である。
【図25】システムビルダーの説明図である。
【図26】知識格納領域の詳細構成の説明図である。
【図27】単体認識データのデータ構造の説明図であ
る。
【図28】前後関係を含んだオブジェクトの説明図であ
る。
【図29】意味データの説明図である。
【図30】ドメインビルダーの実行する処理フローであ
る。
【図31】システムビルダーの実行する処理フローであ
る。
【図32】システムビルダーの実行処理の説明図であ
る。
【図33】プログラムにおける前後関係の説明図であ
る。
【図34】オブジェクトコマンド転送の説明図である。
【図35】オブジェクト転送の説明図である。
【図36】従来技術の説明図である。
【図37】従来技術の説明図である。
【符号の説明】
1 コンピュータ 2 ネットワーク 10 プログラム 11 発行機構 12 検索機構 13 ラーニング機構 14 プログラム
───────────────────────────────────────────────────── フロントページの続き (72)発明者 村川 雅彦 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 豊田 雅信 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 富永 浩之 福岡県福岡市博多区博多駅前一丁目4番4 号 富士通九州通信システム株式会社内 (72)発明者 中村 勝一 福岡県福岡市博多区博多駅前一丁目4番4 号 富士通九州通信システム株式会社内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 複数のコンピュータがネットワークを介
    して相互に接続され、各コンピュータが、オブジェクト
    を構成要素とするプログラムを分散実行することでデー
    タ処理を実行する構成を採るコンピュータシステムにお
    いて、 オブジェクトの実体を指すiD情報と、当該iD情報の
    サフィックスとして機能するオブジェクト属性の記号圧
    縮体との組み合わせでもって、オブジェクトの内部iD
    となるオブジェクトコマンドを定義する構成を採るとと
    もに、 プログラムの中の各状態をそれぞれ独立した1つの状態
    と捉えて、それらの各プログラム状態がオブジェクト属
    性に従ってそれに応じたオブジェクトコマンドを持つよ
    うに構成し、 かつ、プログラムの実行途中に、他コンピュータに処理
    を移動させる必要があるときには、その時のプログラム
    状態に応じたオブジェクトコマンドを発生する構成を採
    って、当該オブジェクトコマンドを実行先のコンピュー
    タに送出していくよう構成されることを、 特徴とするプログラム実行方式。
  2. 【請求項2】 請求項1記載のプログラム実行方式にお
    いて、 他コンピュータからオブジェクトコマンドを受け取ると
    きに、当該オブジェクトコマンドの指すオブジェクトの
    実体を保有していないときには、当該実体を保有するコ
    ンピュータから、当該実体を転送してもらうよう構成さ
    れることを、 特徴とするプログラム実行方式。
  3. 【請求項3】 請求項1又は2記載のプログラム実行方
    式において、 オブジェクト属性の1つとして、そのオブジェクトの構
    造情報を持つよう構成されることを、 特徴とするプログラム実行方式。
  4. 【請求項4】 請求項1又は2記載のプログラム実行方
    式において、 オブジェクト属性の1つとして、そのオブジェクト属性
    の変化データを管理情報として持つよう構成されること
    を、 特徴とするプログラム実行方式。
JP20647094A 1994-08-31 1994-08-31 プログラム実行方式 Withdrawn JPH0877116A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20647094A JPH0877116A (ja) 1994-08-31 1994-08-31 プログラム実行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20647094A JPH0877116A (ja) 1994-08-31 1994-08-31 プログラム実行方式

Publications (1)

Publication Number Publication Date
JPH0877116A true JPH0877116A (ja) 1996-03-22

Family

ID=16523914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20647094A Withdrawn JPH0877116A (ja) 1994-08-31 1994-08-31 プログラム実行方式

Country Status (1)

Country Link
JP (1) JPH0877116A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7287222B2 (en) 2002-01-31 2007-10-23 Canon Kabushiki Kaisha Information processing apparatus and method that determines effectiveness of metadata for editing information content
US7983528B2 (en) 2002-03-05 2011-07-19 Canon Kabushiki Kaisha Moving image management method and apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7287222B2 (en) 2002-01-31 2007-10-23 Canon Kabushiki Kaisha Information processing apparatus and method that determines effectiveness of metadata for editing information content
US7983528B2 (en) 2002-03-05 2011-07-19 Canon Kabushiki Kaisha Moving image management method and apparatus

Similar Documents

Publication Publication Date Title
Laird et al. A standard model of the mind: Toward a common computational framework across artificial intelligence, cognitive science, neuroscience, and robotics
Gebhardt et al. Reasoning with complex cases
US7437703B2 (en) Enterprise multi-agent software system with services able to call multiple engines and scheduling capability
Angele et al. Domain and task modeling in MIKE
Jeusfeld et al. Metamodeling for method engineering
KR20070049416A (ko) 상황 인식 시스템에서 상황 지식의 공유와 재사용을 위한상황 지식 모델링 방법
Puigbo et al. Using a cognitive architecture for general purpose service robot control
Walker et al. PROLEXS: Creating law and order in a heterogeneous domain
Sitek et al. A declarative framework for constrained search problems
JPH0877116A (ja) プログラム実行方式
JPH0877014A (ja) 知識獲得処理方式
JPH0877006A (ja) オブジェクト知識データベース
JPH0877013A (ja) オブジェクト知識データベース
JPH0877008A (ja) 構造ネットワーク型システム構築方法
JPH0877055A (ja) オブジェクト知識データベース
Robertson Exploring historical RDF with Heml
CN117093259B (zh) 一种模型配置方法及相关设备
Wilkins Using the sipe-2 planning system
Sun Research on multi-agent intelligent decision support system based on blackboard
Macnee et al. Presenting dynamically expandable hypermedia
JPH09198291A (ja) コンカレントエンジニアリング支援システム及びコンカレントエンジニアリング支援方法
Pribeanu Task modeling for user interface design: a layered approach
Patel Deferred system's design: Situated system requirements gathering with Hyper-Tmodeller
JP2023056557A (ja) 知能生成システム、方法およびプログラム
JPH0922415A (ja) 知識データベースにおける知識記憶方法及び装置並びに再認識方法及び装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20011106