(57)【特許請求の範囲】
【請求項１】
制御対象物や環境に応じた学習機能を有するコンピュータシステムにおいて、
ＣＰＵを有するユニットを複数連結したユニット群より構成され、
前記ユニット群中の各ユニットの連結構造は、水平方向の並列的な連結構造と、垂直方向の階層構造を有する連結構造とを含み、
前記ユニット群中のユニットのうち、最上位の階層のユニットと最下位の階層のユニットとを除く各ユニットは、
自ユニットに接続されたセンサから取得した制御対象物や環境の情報（以下、第１の入力情報という）と、水平方向に連結された他のユニットがセンサから取得した制御対象物や環境の情報（以下、第２の入力情報という）とに基づいて、上位の階層のユニットより前回入力されたコマンドに対して自ユニットが前回出力したコマンドが、自ユニットにとってプラスの効果をもたらしたか否かを評価する評価手段と、
前記評価手段による評価の結果、自ユニットにとってプラスの効果をもたらしたと評価されたときに、前記前回入力されたコマンドと、前回の第１及び第２の入力情報と、前記前回出力したコマンドとの組み合わせデータを記憶する記憶手段と、
今回の第１及び第２の入力情報と上位の階層のユニットより入力された今回の入力コマンドとを含む組み合わせデータが、前記記憶手段に記憶された過去の組み合わせデータ中に存在するか否かを検索する検索手段と、
前記検索手段による検索の結果、今回の入力コマンドと今回の第１及び第２の入力情報とを含む組み合わせデータが、前記記憶手段に記憶された過去の組み合わせデータ中に存在するときに、該当の組み合わせデータ中の出力コマンドを、低位の階層のユニットに出力するコマンドとして決定し、前記検索手段による検索の結果、今回の入力コマンドと今回の第１及び第２の入力情報とを含む組み合わせデータが、前記記憶手段に記憶された過去の組み合わせデータ中に存在しないときに、前記記憶手段に記憶された過去の組み合わせデータ中に、今回の入力コマンドと今回の第１及び第２の入力情報とを含む組み合わせデータの類似データが存在するか否かの検索を行って、この結果、前記過去の組み合わせデータ中に類似データが存在する場合には、この類似データ中の出力コマンドを、低位の階層のユニットに出力するコマンドとして決定し、前記過去の組み合わせデータ中に類似データが存在しない場合には、ランダムに創成した出力コマンドを、低位の階層のユニットに出力するコマンドとして決定する決定手段とを備え、
前記ユニット群中の各ユニットと、入力側のセンサや他ユニットとの結合の種類が、入力側のセンサや他ユニットからの信号がオンの場合にそれぞれ、出力側の各ユニットにとってプラスの評価要因となる興奮性の結合と、出力側の各ユニットにとってマイナスの評価要因となる抑制性の結合と、出力側の各ユニットにとってプラスの評価要因にもマイナスの評価要因にもならない中性結合とより構成され、
前記評価手段は、
入力側のセンサや他ユニットから自ユニットへ入力された信号がオンのときに、該当の入力側のセンサや他ユニットとの結合の種類が興奮性の結合の場合は、評価値に所定の値をプラスし、該当の入力側のセンサや他ユニットとの結合の種類が抑制性の結合の場合は、評価値から所定の値をマイナスすることにより評価値の合計を求めて、この合計がプラスとなる場合に、上位の階層のユニットより前回入力されたコマンドに対して自ユニットが前回出力したコマンドが、自ユニットにとってプラスの効果をもたらしたと評価するようにしたことを特徴とする分散学習機能を有するコンピュータシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ロボット等の制御に用いられる制御対象物や環境に応じた学習機能を有するコンピュータシステムに関するものである。
【０００２】
【従来の技術】
従来のロボット等の制御に用いられるコンピュータシステムにおいて、ニューロンと結合回路網を基本とした生体の動作メカニズムに基づいて動作するニューロコンピュータがある。ニューロンは、神経細胞ともいい、生体内において情報処理を専ら担うように特殊化した細胞である。ニューロンを相互に結合したものが、脳の神経回路網（ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）である。ニューロコンピュータは、神経回路網の並列学習情報処理の原理をモデル化した神経回路網モデルを用いて、学習を行う。
【０００３】
【発明が解決しようとする課題】
しかしながら、上記のような従来のニューロコンピュータでは、学習処理に使用されるＣＰＵが一つであるため、制御対象物が増加した場合に、システムの拡張が難しく、また、学習処理の高速化が図れないという問題があった。また、人間の脳の神経回路網におけるニューロンの結合には、他の細胞の興奮を促す興奮性の結合と、逆に他の細胞の興奮を抑えようとする抑制性の結合とがあり、これらの結合を組み合わせて複雑な並列学習処理を実現しているが、これに対して、従来のニューロコンピュータでは、ニューロンに相当するセンサ等からの入力信号がオンの場合に、出力側のＣＰＵにとってプラスの評価要因となる興奮性の結合しか用いられていないため、複雑な学習処理を行うことができないという問題があった。
【０００４】
本発明は、上述した問題点を解決するためになされたものであり、複雑な学習処理を行うことができるようにして、複雑な環境に適応することが可能で、また、制御対象物が増加した場合でも、システムの拡張が容易で、学習処理の高速化を図ることが可能な学習機能を有するコンピュータシステムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成するために本発明は、制御対象物や環境に応じた学習機能を有するコンピュータシステムにおいて、ＣＰＵを有するユニットを複数連結したユニット群より構成され、前記ユニット群中の各ユニットの連結構造は、水平方向の並列的な連結構造と、垂直方向の階層構造を有する連結構造とを含み、前記ユニット群中のユニットのうち、最上位の階層のユニットと最下位の階層のユニットとを除く各ユニットは、自ユニットに接続されたセンサから取得した制御対象物や環境の情報（以下、第１の入力情報という）と、水平方向に連結された他のユニットがセンサから取得した制御対象物や環境の情報（以下、第２の入力情報という）とに基づいて、上位の階層のユニットより前回入力されたコマンドに対して自ユニットが前回出力したコマンドが、自ユニットにとってプラスの効果をもたらしたか否かを評価する評価手段と、前記評価手段による評価の結果、自ユニットにとってプラスの効果をもたらしたと評価されたときに、前回入力されたコマンドと、前回の第１及び第２の入力情報と、前回出力したコマンドとの組み合わせデータを記憶する記憶手段と、今回の第１及び第２の入力情報と上位の階層のユニットより入力された今回の入力コマンドとを含む組み合わせデータが、前記記憶手段に記憶された過去の組み合わせデータ中に存在するか否かを検索する検索手段と、前記検索手段による検索の結果、今回の入力コマンドと今回の第１及び第２の入力情報とを含む組み合わせデータが、前記記憶手段に記憶された過去の組み合わせデータ中に存在するときに、該当の組み合わせデータ中の出力コマンドを、低位の階層のユニットに出力するコマンドとして決定し、前記検索手段による検索の結果、今回の入力コマンドと今回の第１及び第２の入力情報とを含む組み合わせデータが、前記記憶手段に記憶された過去の組み合わせデータ中に存在しないときに、前記記憶手段に記憶された過去の組み合わせデータ中に、今回の入力コマンドと今回の第１及び第２の入力情報とを含む組み合わせデータの類似データが存在するか否かの検索を行って、この結果、前記過去の組み合わせデータ中に類似データが存在する場合には、この類似データ中の出力コマンドを、低位の階層のユニットに出力するコマンドとして決定し、前記過去の組み合わせデータ中に類似データが存在しない場合には、ランダムに創成した出力コマンドを、低位の階層のユニットに出力するコマンドとして決定する決定手段とを備え、前記ユニット群中の各ユニットと、入力側のセンサや他ユニットとの結合の種類が、入力側のセンサや他ユニットからの信号がオンの場合にそれぞれ、出力側の各ユニットにとってプラスの評価要因となる興奮性の結合と、出力側の各ユニットにとってマイナスの評価要因となる抑制性の結合と、出力側の各ユニットにとってプラスの評価要因にもマイナスの評価要因にもならない中性結合とより構成され、前記評価手段は、入力側のセンサや他ユニットから自ユニットへ入力された信号がオンのときに、該当の入力側のセンサや他ユニットとの結合の種類が興奮性の結合の場合は、評価値に所定の値をプラスし、該当の入力側のセンサや他ユニットとの結合の種類が抑制性の結合の場合は、評価値から所定の値をマイナスすることにより評価値の合計を求めて、この合計がプラスとなる場合に、上位の階層のユニットより前回入力されたコマンドに対して自ユニットが前回出力したコマンドが、自ユニットにとってプラスの効果をもたらしたと評価するようにしたものである。
【０００６】
上記構成においては、自ユニットに接続されたセンサ等から取得した制御対象物や環境等の情報と、水平方向に連結された他のユニットがセンサ等から取得した制御対象物や環境等の情報とに基づいて、上位の階層のユニットより前回入力されたコマンドに対して自ユニットが前回出力したコマンドが、自ユニットにとってプラスの効果をもたらしたか否かを評価することができる。従って、この評価を繰り返すことにより、それぞれのユニットが、入力されるコマンドの種類毎に、自ユニットにとってプラスの効果をもたらす出力コマンドを学習して、出力することができる。これにより、制御対象物が増加した場合でも、増加した制御対象物に対応したユニットを水平方向に追加して連結するだけの簡単な手順で、増加した制御対象物にとってプラスの効果をもたらす出力コマンドを出力することができるので、制御対象物の増加に応じて容易にシステムを拡張することができる。また、このようにシステムを拡張した場合でも、ユニット群中のそれぞれのユニットが、それぞれのユニット内のＣＰＵを用いてユニット毎に学習処理を行うことができるので、学習処理の高速化を図ることができる。さらにまた、ユニット群中の各ユニットの連結構造として、垂直方向の階層構造を有する連結構造を用いるようにしたので、自ユニットに接続されたセンサや水平方向に連結された他のユニットから取得した制御対象物や環境等の情報に基づいて、上位の階層のユニットより入力されたコマンドを、制御対象物や環境に応じたより詳細な命令を表すコマンドに展開することができる。
【０００７】
また、ユニット群中の各ユニットと入力側のセンサや他ユニットとの結合が、入力側のセンサや他ユニットからの信号がオンの場合に、出力側の各ユニットにとってプラスの評価要因となる興奮性の結合と、出力側の各ユニットにとってマイナスの評価要因となる抑制性の結合と、出力側の各ユニットにとってプラスの評価要因にもマイナスの評価要因にもならない中性結合とよりなるものとしてもよい。これにより、出力側の各ユニットが、従来の学習機能を有するコンピュータシステムで用いられていた興奮性の結合に加えて、抑制性の結合と中性結合とを用いて、入力側のセンサや他ユニットからの制御対象物や環境に関する情報を受け取ることができるので、出力側の各ユニットにとって好ましいコマンドに加えて、出力側の各ユニットにとって好ましくないコマンドを学習することができる。これにより、複雑な学習処理を行うことができる。また、出力側の各ユニットにとって、その時点で好ましいか否かが分からない中性結合したセンサ等からの情報を受け取ることができるので、より多くの情報に基づいて学習処理を行うことができる。
【０００８】
【発明の実施の形態】
以下、本発明の一実施形態による学習機能を有するコンピュータシステムについて図面を参照して説明する。本実施形態によるコンピュータシステムは、ロボット等に組み込まれて、アーム等のアクチュエータの制御に用いられる。図１（ａ）は本実施形態によるコンピュータシステムの基本単位となるユニットを個別に表した図、（ｂ）はユニットを垂直・水平ネットワークで接続した様子を示す図、（ｃ）はユニット内部に格納される入力データと出力コマンドの組み合わせデータのフォーマットを示す図である。ユニット１のユニット本体部２の内部には、不図示のＣＰＵ，ＲＡＭ、ＲＯＭが格納されており、また、ユニット１の入力側及び出力側には、それぞれ入力ポート３及び出力ポート４が設けられている。ユニット本体部２内部のＣＰＵは、上位の階層のユニット１より入力されたコマンド、及び自ユニットや他ユニットに接続されたセンサ系からの制御対象物や環境についての情報を、入力ポート３より受け取り、ＲＯＭに格納された学習処理用のプログラムを用いて、図１（ｃ）に示される自ユニットにとってプラスの効果をもたらす入力データと出力コマンドの組み合わせのデータをＲＡＭに蓄積していく。そして、蓄積されたデータに基づいて入力データに応じた自ユニットにとって好ましい出力コマンドを出力ポート４から出力する。図１（ｂ）に示される垂直・水平ネットワーク１０を構成する各ユニット１が、このような処理を繰り返すことにより、各ユニット１のそれぞれが環境や制御対象物に応じたコマンドを学習して出力することができるようになるので、垂直・水平ネットワーク１０内の最上位層（第３層）のユニット１の出力ポート４から、全てのユニット１にとって好ましい出力コマンドを、アーム等の駆動用のデバイスへ出力することができる。
【０００９】
図１（ｂ）に示されるセンサ系に用いられるセンサとしては、温度、湿度、接触、光度、音声等のセンサが考えられ、環境や制御対象物の状況を把握するために必要な情報をとらえることができるものであれば、特に制約はない。ただし、これらのセンサには、ＯＮ／ＯＦＦ接点の出力のあるものが用いられる。また、図１（ｂ）に示される間接出力は、各階層のユニット１の状況を把握するためのインジケータ等に用いられる。
【００１０】
次に、上記入力ポート３の持つ入力端子について説明する。各入力端子には、０か１かで表された２進数のデータが入力され、センサからの情報の入力用端子の場合は、１はＯＮを、０はＯＦＦを表す。また、コマンド入力用の端子の場合は、２進数で表した命令コードが入力される。センサ入力用端子から入力されたデータは、直前に出力したコマンドの評価値として用いられる。このセンサ入力用端子には、興奮端子、抑制端子、中性端子の３種類の入力端子がある。興奮端子に入力されたデータが１（ＯＮ）の場合には、ユニット１が前回入力されたデータに対して出力したコマンドが、そのユニット１にとってプラスの効果をもたらしたと評価される。これに対して、抑制端子に入力されたデータが１の場合には、ユニット１が前回入力されたデータに対して出力したコマンドが、そのユニット１にとってマイナスの効果をもたらしたと評価される。また、中性端子に入力されるデータについては、そのユニット１にとっての評価値として扱わない。この中性端子は、主に垂直・水平ネットワーク１０の接続ポートとして使用され、コマンドの伝達用に用いられるが、現時点ではそのユニット１にとってプラスか否か分からない要因について検知するセンサとの接続用にも用いられる。
【００１１】
次に、各ユニット１内のＲＯＭに内蔵される学習用のプログラムについて図２のフローチャートを参照して説明する。図に示されるプログラムは、垂直・水平ネットワーク１０内の全てのユニット１に常駐する。各ユニット１内のＣＰＵは、センサ情報とコマンドより構成された入力データを受け取って、自ユニットにとって好ましいコマンドを出力する。先ず、ＣＰＵは、入力ポート３に入力された入力データのＯＮ／ＯＦＦを読み取って（＃１）、興奮端子と抑制端子から入力されたセンサ情報に基づいて、ユニット１が前回の入力データに対して出力したコマンドが、自らのユニット１にとってプラスとなる環境をもたらしたか否かを評価する（＃２）。具体的には、興奮端子に入力されたデータが１の場合には、評価値に１をプラスし、抑制端子に入力されたデータが１の場合には、評価値から１をマイナスする。この結果、各端子に入力されたデータの評価値の合計がプラスとなる場合に限り、図１（ｃ）に示されるデータフォーマットに従って、ユニット１内部の一時メモリに記憶された前回の入出力データの組み合わせデータをユニット１内部のＲＡＭに保存する。
【００１２】
次に、ＣＰＵは、今回読み取った入力データと同じ入力データが、ＲＡＭ内の過去の組み合わせデータ中にあるか否かを検索し（＃３）、同じ入力データが存在する場合には（＃４でＹＥＳ）、過去の組み合わせデータ中の該当入力データと対になる出力コマンドを、出力データ中のコマンドに相当するビットのデータとしてセットする（＃５）。ＲＡＭ内の過去の組み合わせデータ中に同じ入力データが存在しない場合には（＃４でＮＯ）、過去の組み合わせデータ中に類似データが存在するか否かの検索を行い（＃６）、類似データが存在する場合には（＃７でＹＥＳ）、類似データ中の出力コマンドを、出力データ中のコマンドに相当するビットのデータとしてセットし（＃５）、類似データが存在しない場合には（＃７でＮＯ）、出力コマンドをランダムに創成して、出力データ中のコマンドに相当するビットのデータとしてセットする（＃８）。次に、ＣＰＵは、＃１で読み取った入力データ中のセンサ情報に基づいて、出力データ中のセンサ情報に相当するビットの情報を編集し、出力コマンドとセンサ情報よりなる出力データを、各ユニット間の出力の同期をとりながら、出力ポート４に出力する（＃９）。この際、今回の入力データと出力データの組み合わせデータを、ユニット１内部の一時メモリに記憶する。
【００１３】
制御対象物や環境が広範囲になった場合、及び制御対象物に対する制御や環境が複雑化した場合には、接続するユニット１を増やす必要がある。この接続方法には垂直方向の接続と、水平方向の接続がある。先ず、垂直方向接続時のデータの流れについて図３を参照して説明する。図３は、垂直方向ネットワークにおけるデータの流れを示す図である。垂直方向ネットワーク１１は、各階層のユニット１に接続されたセンサから入力された環境や制御対象物に関する情報に応じて、上位階層のユニット１から入力されたコマンドをより詳細なコマンドに展開することにより、環境や制御対象物に応じた合目的的な出力コマンドを創出することができる。
【００１４】
図３に示されるように、垂直方向ネットワーク１１は、直列的に階層をなして接続している。コマンドを含むデータは、上位階層のユニット１から下位階層のユニット１へ、すなわち、第ｎ＋２層から、第ｎ＋１層、第ｎ層へ出力されていく。図に示されるように、第ｎ＋２層から第ｎ＋１層に対して、”０１”というコマンドが出力されたとすると、この”０１”を入力データとして受け取った第ｎ＋１層のＣＰＵは、ＲＡＭ中の過去データを検索して、”０１”という入力データに対応した”０１００”という出力コマンドを第ｎ層に対して出力する。第ｎ層のＣＰＵは、同じ様に自ユニット内のＲＡＭ中の過去データを検索して、”０１００”という入力データに対応した”０１１０１１１０”という出力コマンドを制御対象物に対して出力する。このことは、垂直方向ネットワーク１１の階層構造とＲＡＭ内の過去データとを用いて、最上位層の第ｎ＋２層が出力する出力パターンを８桁から２桁へと１／４に圧縮しているといえる。これは、例えば、第ｎ＋２層で指示された「歩く」という動作を、第ｎ＋１層で「右足を前後に動かす」、「左足を前後に動かす」という動作に分解し、さらに第ｎ層で「右大腿四頭筋を収縮させる」、「右ひらめ筋を収縮させる」、「左・・・・」等、出力の最も簡単な単位的出力パターン（出力コマンド）に分解していくことにつながる。そして、第ｎ＋２層から同じ「歩く」というコマンド（”０１”）が出力された場合でも、各階層のユニット１でセンサ入力される情報を加味して出力コマンドを選択・創出することにより、状況に合った的確な「歩く」動作を表すコマンドを下位の階層のユニット１から出力することができ、例えば、「歩く」場所が坂道である場合には、「かかとの角度を変化させて歩く」等の的確な「歩く」動作を実現することができる。逆に、高位の階層のユニット１では、「歩く」、「曲がる」等のまとまった行動をセットで準備することができるようになるので、下位の階層のユニット１でセンサ入力情報に応じたコマンドの詳細化を図ることにより、対象物や環境に応じた合目的的な行動を選択することが可能になる。
【００１５】
上記垂直方向ネットワーク１１内の各階層のユニット１の違いは、一つのループにかかる処理時間の長さが異なることで、下位の階層では、１回のループにかかる時間は高位の階層における時間と比べて短くなる。この時間の設定は、各ユニット１が自動的に行う。各ユニット１における入力ポート３内のコマンド入力用端子の位置は、予め決められている。
【００１６】
次に、水平方向接続時のデータの流れについて図４を参照して説明する。図４は、水平方向ネットワークの接続例を示す図である。２つ以上のユニット１について、制御対象となる物又は環境が部分的に同じ場合、このように水平的に接続して、相互又は一方的に情報を提供することにより、実質的に各ユニット１に接続するセンサを増やし、結合した各ユニット１が、より多くの情報に基づいて、出力コマンドを正確に決定することができるようになる。
【００１７】
図４では、第ｍ局のユニット１と第ｍ＋１局のユニット１とが水平方向に接続されており、第ｍ局の出力が第ｍ＋１局の入力として、また、第ｍ＋１局の出力が第ｍ局の入力として相互に入力される。図４の場合は、第ｍ局から第ｍ＋１局へ”０”の値が入力され、第ｍ＋１から第ｍ局へ”１”の値が入力されている。第ｍ局において第ｍ＋１局のおかれている状況、すなわち第ｍ＋１局に接続されているセンサからの情報を全て把握する必要はない。それは、各ユニット１が自律的に過去のデータから他のユニットの状況を学習することで、対応することができるからである。水平方向ネットワーク１２において水平接続に関係するユニット１の数は、２つ以上あればよく、端子数が許す限りいくつでもよい。ただし、各ユニット１は、（入力データ−出力コマンド）の関係の中で学習を繰り返すので、各ユニット１自身にとって必要な状況を把握するための最小限の外部センサ入力用の端子は残しておく必要がある。接続端子としては、センサ用の接続端子と同様に、興奮・抑制・中性のいずれの種類の端子でも使用可能である。ある制御対象物又は環境についての入力情報が、接続している２つのユニットのそれぞれについて、同調する効果を奏する場合は興奮端子に接続し、相反する効果を奏する場合は抑制端子に接続し、どちらでもない場合は中性端子に接続するという点が基本になるが、この方法には限らない。一方が興奮端子に接続しているからといって、他方も興奮端子に接続する必要はなく、他の種類の端子に接続していてもよいし、どの端子とも接続していなくてもよい。
【００１８】
次に、垂直・水平ネットワーク１０の設計方法について図５（ａ）（ｂ）を参照して説明する。図５（ａ）（ｂ）は、それぞれ接続端子合計表と、接続端子合計表を用いた垂直・水平ネットワーク１０の設計例を示す図である。垂直・水平ネットワーク１０を設計する際に、各ユニット１相互間の入出力端子の接続関係について把握する必要がある。図５（ａ）に示される接続端子合計表は、各ユニット１の入出力用の接続端子数と接続関係を明らかにし、垂直・水平ネットワーク１０の設計に役立てるための表である。また、図５（ｂ）に示される垂直・水平ネットワーク１０の設計図では、Ｃｏｍｍａｎｄは、垂直方向ネットワーク１１の系統に従って接続していき、Ｓｅｎｓｏｒは、水平方向ネットワーク１２の系統に従って直接接続されるセンサの接続数と、水平方向の接続ユニットへの結線で接続していく。接続端子合計表中のユニット名には、階層と水平方向の位置が分かるように記入していくと、理解しやすい。図５（ｂ）の場合は、階層位置は数字で、水平方向の位置はアルファベットで示している。接続端子合計表中における接続数の欄は端子の数を記入するためのものである。１つのユニット１からの出力が分岐する点、及び２つ以上のユニット１からの出力が合流する点には、その端子数の内訳を記入するようにする。これらの内訳は、入力端子数と出力端子数に矛盾することなく、合っていなければならない。
【００１９】
上述したように、本実施形態による分散学習機能を有するコンピュータシステムによれば、ユニット群中のそれぞれのユニットは、センサや他ユニットから取得した自ユニットの現在の環境等に関する情報に基づき、前回入力されたコマンドに対する自ユニットの前回出力コマンドが、自ユニットにとってプラスの効果をもたらしたか否かを評価することができる。従って、この評価を繰り返すことにより、それぞれのユニットが、入力されるコマンドの種類毎に、自ユニットにとってプラスの効果をもたらす出力コマンドを学習して、出力することができる。これにより、制御対象物が増加した場合でも、増加した制御対象物に対応したユニットを水平方向に追加して連結するだけの簡単な手順で、増加した制御対象物にとってプラスの効果をもたらす出力コマンドを出力することができるので、制御対象物の増加に応じて容易にシステムを拡張することができる。また、ユニット群中の各ユニットの連結構造として、垂直方向の階層構造を有する連結構造を用いることにより、自ユニットに接続されたセンサや水平方向に連結された他のユニットから取得した環境等の情報に基づいて、上位の階層のユニットより入力されたコマンドを、制御対象物や環境に応じたより詳細な命令を表すコマンドに展開して、出力することができる。
【００２０】
本発明は、上記実施形態に限られるものではなく、様々な変形が可能である。例えば、上記実施形態では、前回の入力データに対する前回の出力コマンドがプラスの評価である場合には、前回の入力データと出力コマンドの組み合わせデータを無条件にユニット１内部のＲＡＭに保存したが、ＲＡＭ中に前回の組み合わせデータに加えて該当の出力コマンドを発行した際の評価値も保存し、ＲＡＭ中に前回の入力データに該当する組み合わせデータが既に格納されている場合には、ＲＡＭ中の該当出力コマンドを発行した際の評価値と前回の出力コマンドを発行した際の評価値とを比較することにより、ＲＡＭ中に保存する入力データと出力コマンドの組み合わせを択一的に決定するようにしてもよい。これにより、自ユニットにとって好ましい入力データと出力コマンドの組み合わせをより正確に学習することができる。
【００２１】
【発明の効果】
以上のように本発明によれば、ユニット群中のそれぞれのユニットは、前回入力されたコマンドに対する自ユニットの前回出力コマンドが、自ユニットにとってプラスの効果をもたらしたか否かを評価することができるので、この評価を繰り返すことにより、それぞれのユニットが、入力されるコマンドの種類毎に、自ユニットにとってプラスの効果をもたらす出力コマンドを学習して、出力することができる。これにより、制御対象物が増加した場合でも、増加した制御対象物に対応したユニットを水平方向に追加して連結するだけの簡単な手順で、増加した制御対象物にとってプラスの効果をもたらす出力コマンドを出力することができるので、制御対象物の増加に応じて容易にシステムを拡張することができる。また、このようにシステムを拡張した場合でも、ユニット群中のそれぞれのユニットが、ＣＰＵを有しており、それぞれのユニット毎に学習処理を行うことができるので、水平方向の連結を増やし、広範な制御対象物や環境についての情報に基づいて複雑な学習処理を行った場合でも、学習処理の高速化を図ることができる。さらにまた、ユニット群中の各ユニットの連結構造として、垂直方向の階層構造を有する連結構造を用いることにより、上位の階層のユニットより入力されたコマンドを、センサや他のユニットから取得した制御対象物や環境等の情報に基づいて、制御対象物や環境に応じたより詳細な命令を表すコマンドに展開して、出力することができる。
【００２２】
また、ユニット群中の各ユニットと入力側のセンサや他ユニットとの結合を、入力側のセンサや他ユニットからの信号がオンの場合に、出力側の各ユニットにとってプラスの評価要因となる興奮性の結合と、出力側の各ユニットにとってマイナスの評価要因となる抑制性の結合と、出力側の各ユニットにとってプラスの評価要因にもマイナスの評価要因にもならない中性結合とよりなるものとすることにより、出力側の各ユニットが、自ユニットにとって好ましいコマンドと、好ましくないコマンドとを学習することができる。これにより、複雑な学習処理を行うことができるので、複雑な環境に適応することができるようになる。また、出力側の各ユニットにとって、その時点で好ましいか否かが分からない中性結合したセンサ等からの情報を受け取ることができるので、より多くの情報に基づいて正確な学習処理を行うことができる。
【図面の簡単な説明】
【図１】（ａ）は本発明の一実施形態によるコンピュータシステムの基本単位となるユニットを個別に表した図、（ｂ）はユニットを垂直・水平ネットワークで接続した様子を示す図、（ｃ）はユニット内部に格納される入力データと出力コマンドの組み合わせデータのフォーマットを示す図である。
【図２】各ユニット内のＲＯＭに内蔵される学習用のプログラムの制御を示すフローチャートである。
【図３】垂直方向ネットワークにおけるデータの流れを示す図である。
【図４】水平方向ネットワークの接続例を示す図である。
【図５】（ａ）（ｂ）は、それぞれ接続端子合計表と、接続端子合計表を用いた垂直・水平ネットワークの設計例を示す図である。
【符号の説明】
１      ユニット
１１    垂直方向ネットワーク（垂直方向の階層構造を有する連結）
１２    水平方向ネットワーク（水平方向の並列的な連結）
【図１】
0004160677.tif 000002
【図２】
0004160677.tif 000003
【図３】
0004160677.tif 000004
【図４】
0004160677.tif 000005
【図５】
0004160677.tif 000006