説明

通信制御装置、通信制御方法、ノード及び通信システム

【課題】ノード間のデータ発信機会を不均等にするように、ノード間のタイムスロットを形成することができるようにする。
【解決手段】本発明の通信制御装置は、近傍ノードのデータ発信のタイミングを示す状態変数信号を受信する状態変数信号受信手段と、受信した状態変数信号に基づいて、それぞれ周期が異なる複数の位相をそれぞれ変化させて、各位相の状態を同期させるよう相互作用を与えることで、各位相のうちのある位相の周期内で、各位相の周期に基づく自ノード及び近傍ノード間のデータ発信タイムスロット幅が異なる複数のデータ発信周期を時間的に多重化させて形成する通信タイミング計算手段と、通信タイミング計算手段により相互作用された各位相のいずれかの位相状態に基づいて、自ノードからのデータ発信のタイミングを決定する状態変数信号を送信する状態変数信号送信手段とを備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信制御装置、通信制御方法、ノード及び通信システムに関し、例えば、センサネットワーク、あるいはLAN(Local Area Network)に接続された複数の機器から構成されるシステム等のように、空間に分散配置された多数のノードや移動体に設置されたノードが、相互にデータ通信を行なうシステムに関するものである。
【背景技術】
【0002】
空間に分散配置された複数のノードが衝突することなくデータ通信し得るようにするための方式として、TDMA方式、CSMA(CSMA/CAやCSMA/CD)方式などがある(非特許文献1)。
【0003】
また、集中管理サーバを必要とせず、個々のノードが自律分散的にタイムスロット割当を相互調整することによって、通信データの衝突を回避する方法が種々提案されている(特許文献1)。
【0004】
上記提案されている各ノードが自律分散的にタイムスロット割当を調整する方法は、各ノードが近傍ノードとの間で周期的なインパルス信号の送受信により相互作用することで調整する技術である。これにより、インパルス信号の到達範囲(以後、相互作用範囲と呼ぶ)内のノード間で、1周期(インパルス信号の発信周期)をほぼ均等に分割するタイムスロット割当を実現する。
【0005】
例えば、図2に示すような、複数のノードから構成されるセンサネットワークにおいて、ノードAは、相互作用範囲内の他ノード(ノードB及びノードC)との間で、インパルス信号の発信周期である周期Tを、ほぼ均等に分割するタイムスロット割当を実現する。そして、ネットワーク上のすべてのノードが、このような動作を行なうことにより、各ノードにおけるセンシングデータ(タイムスロットを使用して発信するデータ信号)をマルチホップで、シンクノードにデータ転送することが可能になる。
【0006】
【特許文献1】特開2005−094663号公報
【非特許文献1】松下温、中川正雄編著、「ワイヤレスLANアーキテクチャ」、共立出版、1996年、p.47、53〜59、69
【発明の開示】
【発明が解決しようとする課題】
【0007】
ところで、必要に応じて、特定のノードに大きな割合でタイムスロットを割り当てて、ノード間のデータ発信機会を不均等にすることで、ネットワークの利用を促進し、効率的なデータ伝送を図ることが期待できる。
【0008】
しかしながら、上述した従来技術をそのまま適用して、ノード間のタイムスロット割当を不均等にしようとすると、次のような問題が発生する。
【0009】
(1)インパルス信号とデータ信号との発信衝突が発生する。
【0010】
そのため、上記課題を解決し、ノード間のデータ発信機会を不均等にするように、ノード間のタイムスロットを形成することができる通信制御装置、通信制御方法、ノード及び通信システムが求められている。
【課題を解決するための手段】
【0011】
かかる課題を解決するために、第1の本発明の通信制御装置は、通信システムを構成する複数のノードのそれぞれに搭載される通信制御装置において、(1)近傍ノードのデータ発信のタイミングを示す状態変数信号を、近傍ノードから受信する状態変数信号受信手段と、(2)受信した近傍ノードからの状態変数信号に基づいて、それぞれ周期が異なる複数の位相をそれぞれ変化させて、各位相の状態を同期させるよう相互作用を与えることで、各位相のうちのある位相の周期内で、各位相の周期に基づく自ノード及び近傍ノード間のデータ発信タイムスロット幅が異なる複数のデータ発信周期を時間的に多重化させて形成する通信タイミング計算手段と、(3)通信タイミング計算手段により相互作用された各位相のいずれかの位相状態に基づいて、自ノードからのデータ発信のタイミングを決定する状態変数信号を送信する状態変数信号送信手段とを備えることを特徴とする。
【0012】
第2の本発明の通信制御方法は、通信システムを構成する複数のノードのそれぞれに搭載される通信制御装置による通信制御方法において、(1)状態変数信号受信手段が、近傍ノードのデータ発信のタイミングを示す状態変数信号を、近傍ノードから受信する状態変数信号受信工程と、(2)通信タイミング計算手段が、受信した近傍ノードからの状態変数信号に基づいて、それぞれ周期が異なる複数の位相をそれぞれ変化させて、各位相の状態を同期させるよう相互作用を与えることで、各位相のうちのある位相の周期内で、各位相の周期に基づく自ノード及び近傍ノード間のデータ発信タイムスロット幅が異なる複数のデータ発信周期を時間的に多重化させて形成する通信タイミング計算工程と、(3)状態変数信号送信手段が、通信タイミング計算手段により相互作用された各位相のいずれかの位相状態に基づいて、自ノードからのデータ発信のタイミングを決定する状態変数信号を送信する状態変数信号送信工程とを備えることを特徴とする。
【0013】
第3の本発明のノードは、第1の本発明の通信制御装置を有することを特徴とする。
【0014】
第4の本発明の通信システムは、第3の本発明のノードを複数配置して有することを特徴とする。
【発明の効果】
【0015】
本発明の通信制御装置、通信制御方法、ノード及び通信システムによれば、ノード間のデータ発信機会を不均等にするように、ノード間のタイムスロットを形成することができる。
【発明を実施するための最良の形態】
【0016】
(A)第1の実施形態
以下、本発明の通信制御装置、通信制御方法、ノード及び通信システムの実施形態を、図面を参照しながら詳説する。
【0017】
本実施形態は、本発明の通信制御装置、通信制御方法、ノード及び通信システムを用いて、特定のノードに大きな割合でタイムスロットを割り当て、ノード間のデータ発信機会が不均等な通信形態を形成し得る通信システムに適用した場合を示す。
【0018】
例えば、図3は、不均等な通信形態を形成した通信システム構成の一例を示すイメージ図である。図3では、例えば、ノードAで発生したデータを最優先で、リアルタイムにシンクノードに伝送させるべく、ある領域に属するノードのデータ発信割合を増大させ、またその周辺の領域のデータ発信割合を低下させることで実現させる。
【0019】
なお、以下では、ある領域に属するノードのデータ発信割合を増大させるノードをバイパスノードといい、ある領域に属すノードのデータ発信割合を低下させるノードを非バイパスノードといい、上記以外のノードをノーマルノードと示して説明する。
【0020】
(A−1)ノードの内部構成
図4は、本実施形態に係る各ノード10の内部構成を示すブロック図である。図4に示すように、本実施形態の各ノード10は、インパルス信号受信手段11、通信タイミング計算手段12、インパルス信号送信手段13、同調判定手段14、データ通信手段15、センサ16、収束判定手段17、を少なくとも有して構成される。
【0021】
なお、通信制御装置としては、インパルス信号受信手段11、通信タイミング計算手段12、インパルス信号送信手段13、同調判定手段14、収束判定手段17が構成要素となっている。
【0022】
インパルス信号受信手段11は、近傍ノード(自ノードが他ノードの相互作用範囲内に属す場合の他ノード)が発信した出力インパルス信号を入力インパルス信号として受信するものである。ここで、インパルス信号はタイミング信号として授受されるものであり、例えば、ガウス分布形状等のインパルス形状を有するものである。また、インパルス信号受信手段11は、受信したインパルス信号に付加されているノード識別属性情報に基づいて、当該発信元の他ノードのノード識別属性を認識するものである。
【0023】
ここで、ノード識別属性情報とは、自ノードがバイパスノード、非バイパスノード若しくはノーマルノードであることを示すために、発信元ノードがインパルス信号に付加する情報である。インパルス信号受信手段11は、このノード識別属性情報に基づいて、発信元ノードがどのノードであるかを識別することができる。
【0024】
また、インパルス信号受信手段11は、ノード識別属性情報に基づいて発信元ノードが属す属性情報と受信したインパルス信号を、通信タイミング計算手段12に与えるものである。
【0025】
通信タイミング計算手段12は、その詳細な機能は後述するが、インパルス信号受信手段11から与えられた受信インパルス信号に基づいて、自ノードでの通信タイミングを規定する位相信号を形成し、出力するものである。なお、通信タイミング計算手段12は、受信インパルス信号がない場合であっても(例えば初期動作を起動するノードの場合)、自ノードで計算させた位相信号を形成し、出力することができる。
【0026】
また、通信タイミング計算手段12は、後述するように、それぞれ周期が異なる2つの非線形振動子モデルを実現する機能部である、第1階層演算部121、第2階層演算部121を備える。
【0027】
本実施形態の通信タイミング計算手段12は、自ノードをバイパスノード、非バイパスノード若しくはノーマルノードとして機能させる場合の違いに応じて、第1階層演算部121及び第2階層演算部122の動作を制御するものである。
【0028】
この点については後で詳細に説明するが、自ノードをノーマルノードとして機能させる場合、通信タイミング計算手段12は、第1階層演算部121により求められた位相信号をインパルス信号送信手段13に与えるものである。
【0029】
また、自ノードをバイパスノード又は非バイパスノードとして機能させる場合、通信タイミング計算手段12は、第1階層演算部121及び第2階層演算部122の動作を協調的に動作させるように制御するものである。
【0030】
ここで、通信タイミング計算手段12が有する、第1階層演算部121及び第2階層演算部122の動作機能の基本的な意味合いを、図5及び図6を用いて詳述すると以下の通りである。
【0031】
なお、図5及び図6に示す状態変化は、インパルス信号送信手段13の機能も関係しているので、インパルス信号送信手段13の機能も含めて説明する。
【0032】
図5及び図6は、ある1つのノードに着目したときに、着目ノード(自ノード)と近傍ノード(他ノード)との間に形成される関係、すなわち、それぞれの非線形振動リズム間の位相関係が時間的に変化していく様子を示している。
【0033】
図5は、着目ノードiに対して近傍ノードjが1個存在する場合である。図5において、円上を回転する2つの質点の運動は、着目ノードと近傍ノードに対応する非線形振動リズムを表しており、質点の円上の角度がその時刻での位相信号の値を表している。質点の回転運動を縦軸あるいは横軸に射影した点の運動が非線形振動リズムに対応する。後述する(1.1)式に基づく動作により、2つの質点は相互に逆相になろうとし、仮に、図5(a)に示すように初期状態で2つの質点の位相が近くても、時間経過と共に、図5(b)に示す状態(過渡状態)を経て、図5(c)に示すような2つの質点の位相差がほぼπである定常状態に変化していく。
【0034】
2つの質点は、それぞれ固有角振動数パラメータωを基本的な角速度(自己の動作状態を遷移させる基本速度に相当)とする回転をしている。ここで、ノード間でインパルス信号の送受信に基づく相互作用が生じると、これらの質点は、それぞれ角速度を変化(緩急)させ、結果的に、適当な位相関係を維持する定常状態に到達する。この動作は、2つの質点が回転しながら相互に反発しあうことによって、安定な位相関係を形成するものと見ることができる。定常状態では、後述するように、それぞれのノードが所定の位相(例えば0)のときに出力インパルス信号を発信するとした場合、互いのノードにおける発信タイミングは、適当な時間関係を形成していることになる。
【0035】
また、図6は、着目ノードiに対して2個の近傍ノードj1、j2が存在する場合を表している。近傍ノードが2個存在する場合においても、上述と同様に、それぞれの質点が回転しながら相互に反発しあうことによって、安定な位相関係(時間的な関係に関する安定性)を形成する。近傍ノード数が3個以上の場合についても同様である。
【0036】
上述の安定な位相関係(定常状態)の形成は、近傍ノード数の変化に対して非常に適応的(柔軟)な性質を持つ。例えば、今、着目ノードに対して近傍ノードが1個存在し、安定な位相関係(定常状態)が形成されているときに、近傍ノードが1個追加されたとする。定常状態は一旦崩壊するが、過渡状態を経た後、近傍ノードが2個の場合における新たな定常状態を再形成する。また、近傍ノードが削除された場合や故障等により機能しなくなった場合においても、同様に適応的な動作をする。
【0037】
また、通信タイミング計算手段12は、得られた位相信号(=θi(t))を、インパルス信号送信手段13、同調判定手段14及びデータ通信手段15に出力するものである。
【0038】
インパルス信号送信手段13は、その詳細機能は後述するが、通信タイミング計算手段12から位相信号を受け取ると、収束判定手段17による通信タイミング計算手段12の処理が収束した否かの判定結果に応じて、所定のタイミングでインパルス信号を発信するものである。
【0039】
また、インパルス信号送信手段13は、インパルス信号を発信する際、発信するインパルス信号に自ノードが属すノード識別属性情報を付加し、ノード識別属性情報を付加したインパルス信号を発信するものである。
【0040】
同調判定手段14は、自ノードや1又は複数の近傍ノードの間で行われる出力インパルス信号の送信タイミングの相互調整が、「過渡状態」(図5(b)、図6(b)参照)あるいは「定常状態」(図5(c)、図6(c)参照)のいずれの状態にあるかを判定するものである。同調判定手段14は、受信インパルス信号(他ノードの出力インパルス信号に対応する)及び出力インパルス信号の発生タイミングを観測し、インパルス信号を授受し合う複数のノードの発生タイミング間の時間差が時間的に安定している場合に「定常状態」であると判定する。なお、この実施形態の場合には、同調判定手段14には、自ノードからの出力インパルス信号の発生タイミングを捉えるための信号として、出力インパルス信号に代えて、位相信号が入力されている。
【0041】
同調判定手段14は、例えば、以下の(a)〜(d)のような処理を実行して同調判定を行なうものである。
【0042】
(a)受信インパルス信号の発生タイミングにおける位相信号の値βを、位相信号の1周期に亘って観測する。ここでは、上記の観測を行った結果、得られる位相信号の値βをそれぞれ、β,β,…,β(0<β<β<…<β<2π)とする。
【0043】
(b)観測された位相信号の値βに基づいて、隣接値間の差(位相差)△1=β,△2=β−β,…,△N=β−β(N−1)を算出する。
【0044】
(c)上記(a)及び(b)の処理を位相信号の周期単位に行ない、相前後する周期における位相差△の変化量(差分)γ=△1(τ+1)−△1(τ),γ=△2(τ+1)−△2(τ),…,γ=△N(τ+1)−△N(τ)を算出する。ここで、τは、位相信号のある周期を示しており、τ+1は、位相信号のその次の周期を示している。
【0045】
(d)上述の変化量γが、いずれも微小パラメータ(閾値)εよりも小さい場合、すなわち、γ<ε,γ<ε,…,γ<εの場合に、「定常状態」であると判定する。
【0046】
なお、γ<ε,γ<ε,…,γ<εという条件がM周期に亘って満足される場合を定常状態と判定するようにしても良い。Mの値を大きくするほど、より安定性の高い状態で「定常状態」と判定できる。また、一部の受信インパルス信号に基づいて、「定常状態」の判定を行なっても構わない。
【0047】
同調判定手段14は、位相信号の周期毎に、判定結果を示す同調判定信号と、受信インパルス信号の発生タイミングにおける位相信号の値βの最小値βをスロット信号としてデータ通信手段15に出力する。
【0048】
なお、最小値βをスロット信号として出力するようにしたのは、上述したように、α=0としていることと関係しており、αの値の選定によっては、スロット信号に適用するβの値は変化する。
【0049】
当該ノード10は、他のノードから受信したデータを中継して送信する機能と、自己を送信元とするデータ送信機能とを有している。
【0050】
センサ16は、後者の場合の一例として書き出したものであり、例えば、音や振動の強度、化学物質の濃度、温度など、物理的又は化学的な環境情報を検知して観測データをデータ通信手段15に出力するものである。また、前者の場合には、データ通信手段15に、近傍ノードが送信したデータ信号(出力データ信号)が入力データ信号として受信される。
【0051】
データ通信手段15は、観測データ及び又は入力データ信号(両方の場合を含む)を出力データ信号として他ノードに送信するものである。データ通信手段15は、この送信を、同調判定信号が「定常状態」を示す場合に、後述するタイムスロット(システムなどが割り当てた固定的な時間区間ではないが、「タイムスロット」という用語を用いる)で行ない、同調判定信号が「過渡状態」を示す場合には送信動作を停止している。なお、出力データ信号は、出力インパルス信号と同一周波数帯で送信周波数とするものであっても良い。
【0052】
収束判定手段17は、その詳細な機能は後述するが、通信タイミング計算手段12による処理が収束したか否かを判定するものであり、その判定結果をインパルス信号送信手段13に与えるものである。
【0053】
(A−2)第1の実施形態のノードの主な構成の詳細な機能説明
図1は、本実施形態の各ノード10が備える主な内部構成を示しており、以下では、これら機能構成間の処理機能について図1を参照しながら詳細に説明する。
【0054】
(A−2−1)通信タイミング計算手段
通信タイミング計算手段12は、上述したように、それぞれ周期が異なる2つの非線形振動子モデルを実現する機能部である、第1階層演算部121、第2階層演算部122を備える。
【0055】
本実施形態において、バイパスノード及び非バイパスノードの通信タイミング計算手段12は、第1階層演算部121と第2階層演算部122を備え、複数の周期の異なる非線形振動子モデルを協調動作させることによって、ノード間に多重化された時間的関係性(時間構造)を形成する動作を実行する。
【0056】
すなわち、通信タイミング計算手段12は、ある位相周期内において、各ノードがデータ発信できるタイムスロット幅が異なる複数の(本実施形態は2個の)データ発信周期を、時間的に多重化させて形成する。
【0057】
なお、本実施形態では、2つの非線形振動子モデルを実現する機能部を備える場合を説明するが、それぞれ周期が異なる3以上の非線形振動子モデルを実現する機能部を備えるようにしてもよい。
【0058】
また、ノーマルノードの通信タイミング計算手段12は、第1階層演算部121又は第2階層演算部122のいずれかのみ動作させればよく、本実施形態では、第1階層演算部121のみ動作させ、第2階層演算部122を動作させないものとして説明する。
【0059】
図1に示すように、第1階層演算部121は、非線形振動計算手段1211と仮想ノードモデル計算手段1212と有し、また第2階層演算部122も、同様に、非線形振動計算手段1221と仮想ノードモデル計算手段1222とを有している。
【0060】
ここで、第1階層演算部121及び第2階層演算部122の機能を実現する機能構成は、種々の構成をとることができるが、例えば、図7に示すような構成をとり、式(1.1)及び(1.2)のような非線形振動をモデル化した数式に基づく演算を実行するものとする。なお、図7では、第1階層演算部121の内部構成として示すが、第2階層演算部122も同様の対応構成を有するものとする。
【0061】
図7において、第1階層演算部121は、位相算出手段71、衝突率算出手段72、蓄積ストレス算出手段73、ストレス応答関数値算出手段74、位相応答関数特性決定手段75、仮想ノードモデル計算手段1212、を有する。
【0062】
仮想ノードモデル計算手段1212及び1222は、詳細な機能は後述するが、他ノードjからインパルス信号を受信した際に、そのインパルス信号の発信元ノードに対する仮想的な位相モデル(以後、仮想位相モデルと呼ぶ)を自ノード内部に仮想するものである。仮想ノードモデル計算手段1212及び1222が、この仮想位相モデルを用いて擬似的に他ノードjの位相を算出させることで、自ノードiと他ノードjとの間の位相差を、時間連続的に観測可能にすることができる。
【0063】
(a−1)第1階層演算部
第1階層演算部121は、受信した他ノードjのインパルス信号と、所定の演算式とに基づいて、第1階層演算部121における非線形振動モデルの位相θi(t)を求めるものである。また、第1階層演算部121は、求めた第1階層演算部121における非線形振動モデルの位相θi(t)を第2階層演算部122に与えるものである。
【0064】
第1階層演算部121は、例えば、式(1.1)及び(1.2)のような非線形振動をモデル化した数式に基づく演算を実行するものである。
【数1】

【0065】
式(1.1)及び(1.2)は、他ノードjから受信したインパルス信号に基づいて、自ノードiの第1階層演算部121における非線形振動のリズムを時間的に変化させる規則(時間発展規則)を表す方程式である。
【0066】
以下では、式(1.1)及び(1.2)を構成する各演算要素について説明する。
【0067】
tは、時間を表す変数であり、θi(t)は、自ノードiの第1階層演算部121における非線形振動の位相(時刻tにおける位相状態を表す状態変数)を表す。θi(t)は、mod2π(2πで割った余り)の演算を施すことにより、常に、区間0≦θi(t)<2πの値を取るものとする。
【0068】
d/dtは、時間tに関する微分演算を表す記号であり、dθi(t)/dtは位相θi(t)を時間tで微分した状態変数を表す。
【0069】
ωi1は、固有角振動数パラメータであり、ノードiの第1階層演算部121における非線形振動固有のリズムを表す。ここでは、最も簡単な場合の例として、ω1の値をあらかじめシステム全体で同一の値に統一しておくものと仮定する。この場合、第1階層演算部121における収束状態での振動周期Ti1は、Ti1=2π/ωi1となる。ωi1の値の決定方法は、後述の第2階層演算部で説明する。
【0070】
Θij(t)は、他ノードjの第1階層演算部121における非線形振動の位相を、自ノードiで擬似的に算出した仮想位相を表す。Θij(t)は、他ノードjから受信したインパルス信号に基づいて、自ノードiの第1階層演算部121における仮想ノードモデル計算部1212によって算出される。なお、仮想ノードモデル計算部1212による仮想位相Θij(t)の算出方法については、式(1.1)及び(1.2)の説明の後に説明する。
【0071】
△Θij(t)は、他ノードjの第1階層演算部121に対する仮想位相Θij(t)から自ノードiの位相θi(t)を引くことにより得られる位相差である。ただし、位相差△Θij(t)は、2πを加算した値に、mod2π(2πで割った余り)の演算を施すことにより、便宜的に区間0≦△Θij(t)<2πの値を取るものとする。
【0072】
1(△Θij(t))は、位相差△Θij(t)に応じて、自ノードiの第1階層演算部121における振動リズムを変化させる応答特性を表す位相応答関数である。関数R1(△Θij(t))は、他ノードjの仮想位相Θij(t)に対して、自ノードiの位相θi(t)を反発する方向に変化(斥力が働く方向に変化)させる力学的特性を有する。Σの項は、他ノードjに関する関数R1(△Θij(t))の総和を表す。kR1は、位相θi(t)の時間発展に対する関数R1(△Θij(t))の寄与度(重み)を決定する結合定数パラメータであり、その値は任意であり例えば実験的に決定できる。
【0073】
ξ1(Si1(t))は、自ノードiと他ノードjとの相対位相差が小さい場合にストレスを蓄積し、蓄積されたストレス値Si1(t)に応じて、ランダムな大きさの位相シフト(位相状態遷移)を実行する働きをするストレス応答関数である。
【0074】
ここで、相対位相差PD1とは次式で定義される量である。
【0075】
[相対位相差PD1の定義]
△Θij(t)≦πのとき PD1=△Θij(t) …(1.1.1)
△Θij(t)>πのとき PD1=2π−△Θij(t)…(1.1.2)
すなわち、関数ξ1(Si1(t))は、蓄積されたストレス値Si1(t)に対する応答特性を表す関数である。
【0076】
次に、本実施形態の第1階層演算部121における、位相応答関数R1(△Θij(t))とストレス応答関数ξ1(Si1(t))との具体例を説明するが、その前にこれら関数に関連する用語、(ア)「データ発信の衝突」、(イ)「衝突率(衝突時間を基準とする場合)」、(ウ)「衝突率(衝突回数を基準とする場合)」について説明する。
【0077】
(ア)「データ発信の衝突」
(ア−1) 各ノードがデータの発信を行なうために最低限必要なタイムスロットの大きさWminに対応する位相幅をφcとする。位相幅φcは、Wminと固有振動数パラメータωi1の積(φc=Wmin・ωi1)として算出することができる。また、Wminは、用途等に応じて決まる定数パラメータである。
【0078】
(アー2) 各ノードにおいて、インパルス信号を受信可能な空間的距離範囲に存在する近傍ノードとの相対位相差が、上記位相幅φcよりも小さい場合は「データ発信の衝突が生起している」ものとする。複数の受信インパルス信号に対して、1つでも相対位相差が位相幅φcよりも小さいものが存在する場合は衝突が生起しているものとする。
【0079】
(イ)「衝突率(衝突時間を基準とする場合)」の算出方法の一例
自ノード(ノードi)の第1階層演算部121において、時刻tにデータ発信の衝突が生起しているか否かを表す関数として、関数xi1(t)を(1.1.3)式に示すように定義する。
【数2】

【0080】
関数xi1(t)は、時刻tに衝突が生起しているとき(collision)に1、そうでないとき(else)に0の値を取る関数である。すると、n周期間における累積衝突時間yi1(t)は、(1.1.4)式に示すように、関数xi1(t)の値をn周期に亘って累積(時間積分)することによって得られる。(1.1.4)式において、Ti1はノードiの第1階層演算部121における周期を表す。累積衝突時間yi1(t)は、n周期間において関数xi1(t)が1の値を取る時間の総和を表し、関数xi1(t)の値を観測することによって算出することができる。
【0081】
このような累積衝突時間yi1(t)を最大累積衝突時間で規格化した値ci1(t)は、n周期間に生起した衝突の時間的な割合を表し、これを衝突率と定義する。ここで、最大累積衝突時間は、累積衝突時間yi1(t)の最大値である。各ノードが、大きさWmin(=φc/ωi1)のタイムスロットを用いて発信を行なうと仮定すると、n周期間における累積衝突時間の最大値は、n・Wmin(=n・φc/ωi1)となる。従って、衝突率c(t)は、(1.1.5)式を用いて算出することができる。
【0082】
但し、各ノードの第1階層演算部121における位相θが(1.1)式に従って変化するため、周期Ti1は、毎周期ごとに異なる値を取り得る。このため、累積衝突時間yi1(t)が、最大累積衝突時間n・Wminを超える場合、すなわち、衝突率ci1(t)が1を超える場合が発生し得る。ここでは、衝突率ci1(t)が1を超える場合は、1として扱うものとする。
【0083】
上記の衝突率の定義では、一例として、同時に複数の衝突が生起しているか否かを考慮しない形態を示した。しかし、衝突率の定義方法は、上記の方法に限定されないものである。例えば、同時に複数の衝突が生起している場合を考慮する方法を用いることも可能である。また、上記の衝突率の定義では、衝突時間を基準に衝突率を算出したが、衝突回数を基準に衝突率を算出することも可能である。
【0084】
(ウ)「衝突率(衝突回数を基準とする場合)」の算出方法の一例
(S1)1周期単位に衝突が生起したか否かを観測する。但し、1周期内に衝突が複数回生起した場合においても、衝突の有無だけを問題にするものとし、カウントを1とする。
【0085】
(S2)n周期間に生起した衝突回数、すなわち、累積衝突数γをカウントする。
【0086】
(S3)そして、累積衝突数γを最大累積衝突数(n周期間に生起し得る最大衝突回数n)で規格化した値を衝突率と定義する。すなわち、衝突率ci1(t)を、次の(1.1.6)式によって定義し、(1.1.6)式を用いて、衝突率を算出する。
【0087】
i1(t)=γ/n …(1.1.6)
(1.1.6)式の定義式を用いて衝突率を算出する場合においても、(1.1.5)式の場合と同様に、衝突率が1を超える場合が発生し得る。衝突率が1を超える場合は、1として扱うものとする。また、上記の衝突率の定義では、一例として、1周期内における複数回の衝突を考慮しない形態(衝突の有無だけを問題にする形態)を示したが、これを考慮する形態を用いることも可能である。
【0088】
以上の(イ)及び(ウ)の項で説明した衝突率の定義(衝突時間を基準とする場合、及び、衝突回数を基準とする場合)は、衝突時間や衝突回数を一般化して衝突量と呼ぶことにすると、次のように表現することができる。
【0089】
n周期間における累積衝突量を観測し、それを最大累積衝突量(n周期間に生起し得る最大衝突量)で規格化した値を衝突率と定義する。
【0090】
図7における衝突率算出手段72は、(1.1.5)式又は(1.1.6)式で定義された衝突率c(t)を算出するものである。
【0091】
次に、位相算出手段71が内部で算出処理している位相応答関数R1(ΔΘij(t))の具体例とその機能を説明する。
【0092】
(1.1)式は、上述したように、受信インパルス信号の入力に応じて、自ノード(ノードi)の第1階層演算部121における非線形振動のリズムを時間的に変化させる規則(時間発展規則)を表す方程式である。ここで、受信インパルス信号は、近傍ノードjが発信した出力インパルス信号に対応する。各ノードの第1階層演算部121が(1.1)式に基づいて動作することにより、近傍ノード間において相互に安定な位相差を形成しようとする。その際、第1の実施形態では、位相応答関数R1(ΔΘij(t))の特性を、衝突率ci1(t)の変化に応じて変化させる。図7における位相応答関数特性決定手段75は、衝突率ci1(t)に応じて位相応答関数R1(ΔΘij(t))の特性を変化させる動作を実行する。
【0093】
第1の実施形態の位相応答関数R1(ΔΘij(t))の具体例は、(1.1.7)式〜(1.1.10)式及び(1.1.11)式で与えられる。
【数3】

【0094】
(1.1.7)式〜(1.1.10)式及び(1.1.11)式は、近傍ノード間において均等な位相差が形成されるようにした位相応答関数R1(ΔΘij(t))である。上式において、pは均等な位相差を決定する定数パラメータである。均等な位相差が、1周期をp分割した時間に対応する位相幅2π/pになるように定められている。pの最適な値は、ノードの配置状態等により変化するため、実験的に決定する。位相幅2π/pは、データ発信に最低限必要な位相幅φc以上の値を取る(2π/p≧φc)。また、α及びbは定数パラメータであり、その値はpと同様に実験的に決定する。
【0095】
但し、位相応答関数R1(ΔΘij(t))の関数形は上記のものに限定されないことは勿論である。自ノードと近傍ノードとの相対位相差を、衝突率ci1(t)の値に応じて変化させる関数は、種々の形態(関数形)を用いて実現可能である。
【0096】
次に、蓄積ストレス算出手段73及びストレス応答関数値算出手段74の順次の算出処理によって求められるストレス応答関数ξ1(Si1(t))の具体例とその機能とを説明する。
【0097】
ストレス応答関数ξ1(Si1(t))は、例えば、以下の式(1.1.12)〜(1.1.16)式によって規定されるものである。
【数4】

【0098】
(1.1.16)式における関数s(ci1(t))は、時刻tにおける衝突率ci1(t)に対するストレス値を表す関数である。例えば、衝突率ci1(t)が高いほど、大きなストレス値を示すような特性を備える関数として実現する。一例としては、シグモイド関数などの非線形関数を用いて、衝突率ci1(t)の増大とともに、急激に大きなストレス値を示すような特性を備える関数が挙げられる。
【0099】
(1.1.16)式で定義される関数Si1(t)は、時刻tにおけるストレス値s(ci1(t))を蓄積(時間積分)した値を示す関数である。蓄積する時間区間は、前回、蓄積されたストレス値Si1(t)に応じてランダムな位相シフトを実行した時刻tsから現在の時刻tまでである。つまり、関数Si1(t)は、ランダムな位相シフトを実行すると、一旦、値がリセットされ、その時刻から再度ストレス値s(ci1(t))を蓄積していく動作を繰り返す。関数Si1(t)における積分演算は、時間tが離散化して与えられる場合、各時刻におけるストレス値s(ci1(t))の総和として計算することができる。蓄積ストレス算出手段73が、蓄積ストレスSi1(t)を算出する。
【0100】
(1.1.14)式又は(1.1.15)式で定義される関数q(Si1(t))は、蓄積されたストレス値Si1(t)に応じた確率で乱数値を返す関数である。確率Si1(t)で値μを返し、確率1−Si1(t)で値0を返す。値μは、区間ε≦μ<δ内の乱数であり、値ε及びδは、実験的に決定する定数パラメータである。
【0101】
ストレス応答関数ξ1(Si1(t))は、蓄積されたストレス値Si1(t)をn周期ごとに評価し、それに応じた確率で乱数値(μ又は0)を返す関数である。ストレス応答関数ξ(S(t))を、ストレス応答関数値算出手段74が算出する。
【0102】
従って、上述した(1.1)式に示すように、非線形振動のモデルに対してストレス応答関数ξ1(Si1(t))を導入することにより、(I)蓄積されたストレス値Si1(t)がn周期ごとに評価され、(II)その評価値に基づく確率でランダムな位相シフトが実行される、という動作が実現される。つまり、衝突によるストレス値の蓄積が大きい場合ほど、高い確率でランダムな位相シフトが実行されることになる。n周期の整数倍の時刻以外では、ストレス応答関数ξ1(Si1(t))の値は0であり、ランダムな位相シフトは実行されない。但し、ストレスの蓄積は、前述したようにn周期間とは限らず、前回、ランダムな位相シフトを実行した時刻tsから現在の時刻tまでであることに注意を要する。これは、例えば、ストレス値s(ci1(t))が小さくても、n周期以上の長時間に亘って持続的に蓄積され続けると、やがてストレス値の蓄積Si1(t)が大きくなり、ランダムな位相シフトが実行され得ることを意味する。
【0103】
位相算出手段71は、ストレス応答関数値ξ1(Si1(t))を適用しながら位相θ(t)を算出するものである。
【0104】
なお、以上のような演算を適宜実行する通信タイミング計算手段12を、ソフトウェアによって実現しても良く、また、演算を実行する電子回路群によるハードウェアによって実現しても良く、さらには、ソフトウェアとハードウェアとを混在させて実現しても良い。
【0105】
また、例えば、(1.1)式で示した演算の実行手段は、文献「戸川隼人著、「UNIXワークステーションによる科学技術計算ハンドブック―基礎篇C言語版」、サイエンス社発行」に開示されるルンゲ・クッタ法などの一般的なソフトウェアとしてノード上に実装することができる。ルンゲ・クッタ法は、微分方程式を差分化(連続時間変数tを離散化)して得られる差分方程式(漸化式)を用いて状態変数の変化(時間発展)を計算する手法の一つである。また、同文献に開示される形態と同様に、他の差分化方法により得られる差分方程式を用いて状態変数の変化を計算することも可能である。
【0106】
また、特願2004−257562号及び特願2004−257567号の第1の実施形態においても、相互作用信号としてインパルス信号を用い、非線形振動をモデル化した数式に基づく動作によって通信タイミング制御を実現する方法が開示されている。しかし、これらの方法では、自ノードと他ノードとの位相差(位相関係)に応じて自ノードの振動リズムを変化させる機能(位相関係調整機能)が、他ノードからインパルス信号を受信したタイミングだけでしか働かない。つまり、他ノードからインパルス信号を受信した離散的な時間にしか位相関係調整機能は働かない。
【0107】
それに対して、本発明では、他ノードからインパルス信号を受信した際に、その発信元ノードに対する仮想的な位相モデルを自ノード内部に生成する。この仮想的な位相モデルを用いて擬似的に他ノードの位相を算出し、自ノードと他ノードとの位相差を時間連続的に観測可能とする。これにより、自ノードと他ノードとの位相差(位相関係)に応じて自ノードの振動リズムを変化させる機能(位相関係調整機能)を、時間連続的に働かせることが可能となる。
【0108】
その結果、近傍ノード間において最適な位相関係を形成する動作が、現在の位相関係をリアルタイムに反映したスムーズな調整動作となり、それぞれのノードが獲得するタイムスロットの大きさをほぼ均等にすることが可能になる。
【0109】
(a−2)第1階層演算部における仮想ノードモデル計算手段による仮想位相Θij(t)の算出方法
本実施形態の仮想ノードモデル計算手段1212は、上述したように、他ノードjからの受信インパルス信号を受け取り、他ノードjに対する仮想的な位相モデルを生成して、擬似的に他ノードjの位相を算出するものである。
【0110】
図8は、本実施形態の仮想ノードモデル計算手段1212の内部構成を示す機能ブロック図である。以下では、インパルス信号に発信元ノードを示すID情報(ノード識別番号)等を付与しない場合を例に挙げて説明する。なお、インパルス信号のID情報を付与した場合にも同様に適用できる。
【0111】
図8において、仮想ノードモデル計算手段1212は、仮想位相モデル生成判定手段81、仮想位相計算手段82を有する。
【0112】
仮想位相モデル生成判定手段81は、他ノードjからインパルス信号を受信した際に、以下に示すような方法により、他ノードjに対する位相モデルを生成する。なお、本実施形態では、各ノードはインパルス信号を位相Ψ(例えば、位相Ψ=0)で発信することに予め統一されていると仮定する。
【0113】
(a)後述する仮想位相計算手段82により算出される他ノードj(j=1,2,…,N^i)に対する仮想的な位相Θij(t)と位相Ψとの相対位相差δ^ij(t)を算出する。ここで、N^iは、インパルス信号を受信した時刻tにおけるノードi内部の仮想的な位相モデルの総数である。また、相対位相差δ^ij(t)は、下記式を用いて算出する。
【0114】
(b)上記(a)により得られる相対位相差δ^ij(t)(j=1,2,…,N^i)の最小値を算出する。また、相対位相差δ^ij(t)の最小値を与える仮想的な位相モデルの番号u(uは、1,2,…,N^iのいずれかの番号)を検出する。
【0115】
(c)上記(b)により得られる相対位相差の最小値が追加判定パラメータ(閾値)eより小さい場合は、その最小値を与える仮想的な位相モデルの位相Θij(t)を位相Ψに修正する。また、逆に相対位相差の最小値が追加判定パラメータ(閾値)e以上の場合は、仮想位相計算手段に新しく仮想的な位相モデルを追加する。ここで、追加するモデルの初期位相は位相Ψとする。上記の追加判定パラメータeは定数パラメータで、その値は実験的に決定する。
【数5】

【0116】
但し、ρ^ij(t)は、2πを加算した値にmod2π(2πで割った余り)の演算を施すことにより、便宜的に区間0≦ρ^ij(t)<2πの値を取るものとする。
【0117】
上記(a)〜(c)の処理は、数式を用いて記述すると以下のようになる。
【数6】

【0118】
ここで、Ziは、ノードi内部(仮想位相計算手段82)に生成された他ノードj(j=1,2,…,N^i)に対する仮想的な位相モデルの集合を表す。
【0119】
次に、図8における仮想位相計算手段82の機能について説明する。仮想位相計算手段82は、他ノードjに対する仮想的な位相モデルを用いて、擬似的に他ノードの位相を算出する演算を実行するものである。
【0120】
仮想位相計算手段82は、ある仮想位相モデルに対して位相修正処理が、N周期(Nは定数パラメータ)継続して実行されない場合、その仮想的な位相モデルを消滅する。
【0121】
この定数パラメータNは、任意であり、実験的に決定することができる。また、後述のように、本実施形態の他ノードjは、収束情報において、必ずしも、一定周期Ti1(第1階層演算部121における収束状態での振動周期)で、インパルス信号を発信するわけではない。例えば、第2階層演算部における収束状態での振動周期Ti2(Ti1<Ti2)で発信する場合も存在する。そのため、定数パラメータNは、少なくとも、NTi1≧Ti2を満足するように値を設定する必要がある。
【0122】
(b−1)第2階層演算部
次に、第2階層演算部122の機能構成について説明する。
【0123】
第2階層演算部122は、受信した他ノードjからのインパルス信号と、自ノードiの第1階層演算部121により求められた非線形振動モデルの位相θi(t)と、所定の演算式とに基づいて、第2階層演算部122における非線形振動モデルの位相λi(t)を求めるものである。
【0124】
第2階層演算部122は、例えば、式(1.4)、(1.5)及び式(1.6)のような非線形振動をモデル化した数式に基づく演算を実行する。
【数7】

【0125】
式(1.4)、(1.5)及び(1.6)は、他ノードjから受信したインパルス信号に基づいて、自ノードiの第2階層演算部122における非線形振動のリズムを時間的に変化させる規則(時間発展規則)を表す方程式である。
【0126】
以下、式(1.4)、(1.5)及び(1.6)を構成する各構成部分について説明する。
【0127】
tは、時間を表す変数であり、λi(t)は、自ノードiの第2階層演算部122における非線形振動の位相(時刻tにおける位相状態を表す状態変数)を表す。
【0128】
λi(t)は、mod2π(2πで割った余り)の演算を施すことにより、常に、区間0≦λi(t)<2πの値を取るものとする。
【0129】
d/dtは、時間tに関する微分演算を表す記号であり、dλi(t)/dtは、位相λi(t)を時間tで微分した状態変数を表す。
【0130】
ωi2は、固有角振動数パラメータであり、ノードiの第2階層演算部122における非線形振動固有のリズムを表す。ここでは、最も簡単な場合の例として、ωi2の値をあらかじめシステム全体で同一の値に統一しておくと仮定する。この場合、第2階層演算部122における収束状態での振動周期Ti2は、Ti2=2π/ωi2となる。
【0131】
また、本実施形態では、ωi1>ωi2と仮定する。したがって、Ti1<Ti2であり、第2階層演算部122は、第1階層演算部121より振動周期が大きいと仮定していることになる。
【0132】
Λij(t)は、他ノードjの第2階層演算部122における非線形振動の位相を、自ノードiで擬似的に算出した仮想位相を表す。Λij(t)は、他ノードjから受信したインパルス信号に基づいて、自ノードiの第2階層演算部122における仮想ノードモデル計算手段1222によって算出される。仮想ノードモデル計算手段1222による仮想位相Λij(t)の算出方法については、式(1.4)、及び(1.5)、(1.6)の説明の後に、詳細に説明する。
【0133】
ΔΛij(t)は、他ノードjの第2階層演算部に対する仮想位相Λij(t)から自ノードiの位相λi(t)を引くことにより得られる位相差である。ただし、位相差ΔΛij(t)は、2πを加算した値にmod2π(2πで割った余り)の演算を施すことにより、便宜的に区間0≦ΔΛij(t)<2πの値を取るものとする。
【0134】
2(ΔΛij(t))は、位相差ΔΛij(t)に応じて自ノードiの第2階層演算部122における振動リズムを変化させる応答特性を表す関数である。式(1.6)に示すように、関数G2(ΔΛij(t))は、自ノードi及び他ノードjがともに非バイパスノードの場合(i,j∈NBPのとき)と、それ以外の場合とで応答特性が異なる。ここでNBPは非バイパスノードの集合を表す。
【0135】
2(ΔΛij(t))は、自ノードiの位相λi(t)を他ノードjの仮想位相Λij(t)に一致させる方向に変化させる力学的特性を有する。
【0136】
上記の特性を持つ関数H2(ΔΛij(t))は、例えば、正弦波関数sin(ΔΛij(t))や、以下の式(1.6.1)に示す関数を用いて実現することができる。ただし、H2(ΔΛij(t))の関数形は、これらに限定されないことに注意されたい。
【数8】

【0137】
一方、R2(ΔΛij(t))は、他ノードjの仮想位相Λij(t)に対して、自ノードiの位相λi(t)を反発する方向に変化させる力学的特性を有する。
【0138】
上記の特性を持つ関数R2(ΔΛij(t))の具体例は、上述したR1(ΔΘij(t))と同様の算出方法により得ることができる。関数R2(ΔΛij(t))において、均等な位相差を決定する定数パラメータをpとする。pは、第2階層演算部における1周期Ti2の分割数を表し、その値は実験的に決定する。なお、R2(ΔΛij(t))の関数形は、これに限定されないことに注意されたい。
【0139】
関数G2(ΔΛij(t))の働きを整理すると以下のようになる。
【0140】
(a)自ノードi、及び他ノードjがともに非バイパスノードの場合、自ノードiの位相λi(t)を他ノードjの仮想位相Λij(t)に一致させる方向に変化させる。
【0141】
(b)上記以外の場合、他ノードjの仮想位相Λij(t)に対して、自ノードiの位相λi(t)を反発する方向に変化させる。
【0142】
Σの項は、他ノードjに関する関数G2(ΔΛij(t))の総和を表す。kH2及びkR2は、それぞれ位相λi(t)の時間発展に対する関数H2(ΔΛij(t)),R2(ΔΛij(t))の寄与度(重み)を決定する結合定数パラメータであり、その値は任意であり実験的に決定できる。
【0143】
ξ2(Si2(t))は、自ノードiと他ノードjとの相対位相差が小さい場合にストレスを蓄積し、蓄積されたストレス値Si2(t)に応じて、ランダムな大きさの位相シフト(位相状態遷移)を実行する働きをするストレス応答関数である。ここで、相対位相差とは次式で定義される量である。
【0144】
[相対位相差PD2の定義]
△Λij(t)≦πのとき PD2=△Λij(t) …(1.6.2)
△Λij(t)>πのとき PD2=2π−△Λij(t)…(1.6.3)
すなわち、関数ξ2(Si2(t))は、蓄積されたストレス値Si2(t)に対する応答特性を表す関数である。関数ξ2(Si2(t))の関数形は、上述した関数ξ1(Si1(t))と同様の算出方法により規定される。
【0145】
ただし、第2階層演算部122では、自ノードi及び他ノードjがともに非バイパスノードの場合(j,j∈NBPのとき)の相対位相差PD2を、蓄積されたストレス値Si2(t)の算出演算に反映しない。これは、関数G2(ΔΛij(t))によりi,j∈NBPの場合は相対位相差PD2の値が0に等しくなる方向に変化させる力学的作用を与えているためである。したがって、ストレス応答関数ξ2(Si2(t))は、i,j∈NBP以外の場合のみ機能する。
【0146】
ωi1とωi2の値は、以下の式(1.7.1)の関係を満足するように決定する。式(1.7.1)において、mは整数値の定数パラメータである。したがって、収束状態における第1階層演算部と第2階層演算部との振動周期の比は、Ti2/Ti1=mとなる。さらに、本発明の第1の実施形態では、整数値mは、以下の式(1.7.2)の関係を満足するように決定する。式(1.7.2)において、nは整数値の定数パラメータであり、pは、関数R2(ΔΛij(t))において、均等な位相差を決定する定数パラメータである。このようにmの値をpの整数倍にすることにより、後述する関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})に関する処理を比較的簡単な形態にすることができる。
【数9】

【0147】
関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})は、自ノードiにおける第1階層演算部と第2階層演算部との間に一定の位相関係を形成する機能を有する関数である。ここで、{Θij(t)|j}は、自ノードiの第1階層演算部に生成された「すべての他ノードj(j=1,2,3…)に対する仮想位相Θij(t)」の集合を表し、この集合の全要素が関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})の独立変数(関数への入力変数)になっていることを表している。同様に、{Λij(t)|j}は、自ノードiの第2階層演算部に生成された「すべての他ノードj(j=1,2,3…)に対する仮想位相Λij(t)」の集合を表し、この集合の全要素が関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})の独立変数になっていることを表している。ここで、「すべての他ノードjに対する仮想位相」とは、自ノードiの相互作用範囲内(自ノードのインパルス信号が到達する範囲内)に存在する「すべての他ノードjに対する仮想位相」を意味する。したがって、Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})は、自ノードiの第1階層演算部、及び第2階層演算部の位相θi(t),λi(t)だけでなく、相互作用範囲内に存在する「すべての他ノードjに対する仮想位相{Θij(t)|j},{Λij(t)|j}」の値を用いて作動する関数である。以下では、仮想位相も単に位相と呼ぶ。
【0148】
F2は、位相λi(t)の時間発展に対する関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})の寄与度(重み)を決定する結合定数パラメータであり、その値は実験的に決定する。式(1.4)及び(1.5),(1.6)に関する処理は、以下の手順に従って実行する。関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})の具体的な関数形は、以下の説明の中で示す。
【0149】
(STEP1)
ノードiの動作開始時点におけるkF2の値をkF2=0とする。すなわち、ノードの動作開始時点では、一旦、第1階層演算部と第2階層演算部との接続関係を除去し、それぞれ独立に他ノードとの間に位相関係を形成する動作を実行する。この動作は、第2階層演算部では、式(1.4)及び(1.5),(1.6)におけるFi(t),λi(t),{Θij(t)|j},{Λij(t)|j})以外の関数が有する機能により実現される。また、第1階層演算部は、元々、第2階層演算部から影響を受けずに動作する構成になっているため、通常と同様の動作を実行することにより実現される。
【0150】
(STEP2)
「第1階層演算部,及び第2階層演算部のそれぞれにおいて、他ノードとの間に、ほぼ均等な位相差が形成された状態」を検出する。この検出処理は、例えば、前述の同調判定手段14における定常状態の判定方法と同様にして行うことができる。第1階層演算部,及び第2階層演算部がそれぞれ独立に定常状態になったことが検出された場合に、kF2≠0とすることにより、第1階層演算部と第2階層演算部との間に位相関係を形成する機能を作動させる。
【0151】
(STEP3)
(3−1) 位相θi(t)とmλi(t)との相対位相差Γ(θi(t),mλi(t))を算出する。また、位相θi(t)とmΛij(t)との相対位相差Γ(θi(t),mΛij(t))を、すべての他ノードjに対して算出する。ここで、mλi(t)は位相λi(t)をm倍した値、mΛij(t)は位相Λij(t)をm倍した値を表す。以下では、位相をm倍した値も同様に位相と呼ぶ。mλi(t),及びmΛij(t)は、mod2π(2πで割った余り)の演算を施すことにより、常に、区間0≦mλi(t)<2π,0≦mΛij(t)<2πの値を取るものとする。相対位相差の定義は前述と同様である。次に、以下の式(1.7.3)を用いて、上記の相対位相差の総和Sumi(t)を求める。
【数10】

【0152】
Sumi(t)は、自ノードiに対して、ただ1つ求まる値である。
【0153】
(3−2) 他ノードkに対する位相Θik(t)と、他ノードjに対する位相mΛij(t)との相対位相差Γ(Θik(t),mΛij(t))を、すべてのk,jの組合せに対して算出する。次に、以下の式(1.7.4)を用いて、相対位相差Γ(Θik(t),mΛij(t))をすべてのjについて加算した値Sumk(t)を求める。Sumk(t)は、個々の他ノードkに対して、それぞれ求まる値である。
【数11】

【0154】
(3−3) 以下の式(1.7.5)を用いて、自ノードiに対するSumi(t)及び個々の他ノードkに対するSumk(t)の中で最小値を与えるノード番号u(i,及びすべてのkの中のいずれかを示す番号)を求める。
【数12】

【0155】
(STEP4) 式(1.4)及び(1.5),(1.6)を用いて、位相λi(t)の時間発展を規定する演算を実行する。その際、関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})の値は、式(1.7.5)より得られるノード番号u,及び以下の式(1.7.6)を用いて算出する。
【数13】

【0156】
式(1.7.6)において、関数fは、位相差θi(t)−mλi(t)あるいはΘiu(t)−mλi(t)を0にする特性を有する関数であり、例えば、以下の式(1.7.7)に示す関数を用いて実現することができる。ただし、関数fの関数形は、これに限定されないことに注意されたい。位相差θi(t)−mλi(t),及びΘiu(t)−mλi(t)は、2πを加算した値にmod 2π(2πで割った余り)の演算を施すことにより、便宜的に区間0≦θi(t)−mλi(t)<2π,0≦Θiu(t)−mλi(t)<2πの値を取るものとする。
【数14】

【0157】
関数Fが上記の特性を有することにより、自ノードiが他ノードjとの間に形成した位相関係を壊すことなく、第1階層演算部と第2階層演算部との間に一定の位相関係が形成される。これは、「第2階層演算部が1周期位相を進める期間に、第1階層演算部がm周期位相を進めて、2つの位相θi(t)とλi(t)が一致する」という一連の動作を繰り返す関係(m:1の整数比の周期で同期した関係)である。
【0158】
このようにして、第1階層演算部と第2階層演算部が、それぞれ他ノードとの間に均等な位相差を形成するとともに、両者が整数比の周期で同期した関係を形成することにより、多重化した周期構造に基づく不均等なタイムスロット割当を実現可能にする点が、本発明の特徴である。
【0159】
式(1.4)、(1.5)及び(1.6)で示した演算は、例えば、ルンゲ・クッタ法等の一般的な数値計算法を用いて、ソフトウェアとしてノード上に実装可能である。ルンゲ・クッタ法は、微分方程式を差分化(連続時間変数tを離散化)して得られる差分方程式(漸化式)を用いて状態変数の変化(時間発展)を計算する手法の1つの手法である。
【0160】
また、特願2004−257562号明細書に開示される形態と同様に、ルンゲ・クッタ法よりも簡易な他の差分化方法により得られる差分方程式を用いて状態変数の変化を計算することも可能である。
【0161】
さらに、式(1.4)、(1.5)及び(1.6)と同様の動作をする電子回路を構成すれば、ハードウェアとしてノード上に実装することも可能である。
【0162】
以上では、第2階層演算部122が実行する式(1.4)、(1.5)及び(1.6)について説明した。
【0163】
次に、第2階層演算部122の仮想ノードモデル計算手段1222による仮想位相Λij(t)の算出方法について説明するが、本実施形態の仮想ノードモデル計算手段1222の動作は、インパルス信号の発信方法と深く関連する。
【0164】
そこで、以下では、まず、本実施形態におけるインパルス信号の発信方法について説明し、その後に、仮想位相Λij(t)の算出方法について説明する。
【0165】
以下では、「インパルス信号にノード識別番号(ID情報)を付加しない場合」を想定して説明するが、「インパルス信号にノード識別番号を付加する場合」も同様の方法で仮想位相Λij(t)を算出することができる。
【0166】
(b−2)インパルス信号の発信方法の説明
ノーマルノードは、自ノードiの第1階層演算部121における非線形振動の位相θi(t)に基づいて、インパルス信号を発信する。すなわち、位相θi(t)が特定の値(例えばθi(t)=0)のとき、インパルス信号を発信する。したがって、インパルス信号は、第1階層演算部121の振動周期で発信される。さらに、各ノードが発信するインパルス信号には、自ノードiがノーマルノードであることを示す識別情報を付加する。
【0167】
一方、バイパスノード及び非バイパスノードは、収束過程(過渡状態)と収束状態(定常状態)とで、インパルス信号を発信する方法が異なる。ここで、収束状態とは、後述の「収束判定手段の説明」における第2段階の収束判定で「第2の収束状態」と判定された状態を意味する。また、収束過程とは、同様に、「第2の収束状態」と判定されていない状態を意味する。以後、単に収束過程あるいは収束状態と表現した場合は、同様の意味を表すことに注意されたい。
【0168】
以下、バイパスノード及び非バイパスノードにおけるインパルス信号の発信方法について説明する。
【0169】
(イ)収束過程におけるインパルス信号の発信方法
収束過程(過渡状態)では、自ノードiの第1階層演算部121における非線形振動の位相θi(t)に基づいて、インパルス信号を発信する。すなわち、位相θi(t)が特定の値(例えば、θi(t)=0)のとき、インパルス信号を発信する。したがって、インパルス信号は、第1階層演算部121の振動周期で発信される。さらに、各ノードが発信するインパルス信号には、以下の情報を付加する。
【0170】
(a)自ノードiの第2階層演算部122における非線形振動の位相λi(t)。すなわち、インパルス信号の発信時刻tにおける位相λi(t)の値。
【0171】
(b)自ノードiが、バイパスノード、及び非バイパスノードのどちらに該当するかを示す識別情報。
【0172】
ωi1>ωi2(すなわち、Ti1<Ti2)であるから、インパルス信号に付加される位相λi(t)の値は、0≦λi(t)<2πにおける離散的な値を取ることに注意されたい。
【0173】
(ロ)収束状態におけるインパルス信号の発信方法
以下の2つの場合で、インパルス信号を発信する方法が異なる。以下の2つの場合が示す期間の意味は、後述の「タイムスロット割当の実現形態の例の説明」において説明する。
【0174】
(a)相互作用蝿囲内の全ノードがタイムスロットを獲得している期間
収束過程におけるインパルス信号の発信方法と同様である。
【0175】
(b)相互作用範囲内のバイパスノードのみタイムスロットを獲得している期間
非バイパスノードは、インパルス信号の発信を停止する。バイパスノードのみ、自ノードiの第2階層演算部122における非線形振動の位相λi(t)に基づいて、インパルス信号を発信する。すなわち、位相λi(t)が特定の値(例えば、λi(t)=0)のとき、インパルス信号を発信する。したがって、インパルス信号は、第2階層演算部122の振動周期で発信される。各ノードが発信するインパルス信号には、特に情報を付加する必要はない。
【0176】
(b−3)第2階層演算部122における仮想ノードモデル計算手段による仮想位相Λij(t)の算出方法
(b−3−1)収束過程、及び収束状態における「相互作用範囲内の全ノードがタイムスロットを獲得している期間」の場合
この期間は、全ノードがインパルス信号を発信する。自ノードiの第1階層演算部121における非線形振動の位相θi(t)が特定の値(例えば、θi(t)=0)のとき、インパルス信号を発信する。
【0177】
自ノードiの第2階層演算部122における仮想ノードモデル計算手段1222では、他ノードjから受信したインパルス信号に付加された「当該ノードの第2階層演算部122における位相λj(t)」を用いる。以下に、位相λj(t)を用いた仮想位相Λij(t)の算出方法を示す。
【0178】
自ノードiの第2階層演算部122では、他ノードjからインパルス信号を受信した際に、その発信元ノードjに対する仮想位相モデルを生成する。この処理は、自ノードiの第1階層演算部121における仮想位相モデルの生成と同時に(連動して)実行する。
【0179】
すなわち、第1階層演算部121において、仮想位相モデルを生成する所定条件が満足された場合に実行する。
【0180】
したがって、自ノードiの内部には、他ノードjに対する仮想位相モデルが、第1階層演算部121と第2階層演算部122とに対を成した形で生成される。このような同一の他ノードjに対する一対の仮想位相モデルは、接続関係を結んで対応付けが可能な状態にしておく。
【0181】
ただし、他ノードjがノーマルノードの場合、第2階層演算部122は当該ノードに対する仮想位相モデルの生成を行なわない。したがって、ノーマルノードに対する仮想位相モデルは、第1階層演算部121だけに生成される。
【0182】
一方、バイパスノード、及び非バイパスノードに対する仮想位相モデルは、第1階層演算部121と第2階層演算部122との両方に生成される。
【0183】
また、自ノードiの第1階層演算部121において、ある仮想位相モデルを消滅させる条件が満足された場合、第2階層演算部122では、それと接続関係で結ばれた対応する仮想位相モデルを同時に(連動して)消滅させる。したがって、仮想位相モデルの消滅処理が実行された場合においても、常に、存在する仮想位相モデルは、第1階層演算部121と第2階層演算部122とに対を成した状態を維持する。
【0184】
第2階層演算部122に生成される仮想位相モデルの最も簡単な場合の例は、次式で与えられる。
【数15】

【0185】
ただし、0≦Λij(t)<2πとする。また、Ωij2は、自ノードiにおける他ノードjに対する仮想位相モデルの固有角振動数パラメータ(以後、仮想固有角振動数パラメータと呼ぶ)を表す。
【0186】
仮想固有角振動数パラメータΩij2は、最も簡単な場合の例として、自ノードiの固有角振動数パラメータωi2と同一の値を設定する。ただし、この場合、あらかじめ各ノードの固有角振動数パラメータωi2は、システム全体で同一の値に統一しておくと仮定する。d/dtは、微分演算を表す記号である
式(1.9)は、他ノードjに対する仮想位相Λij(t)が、仮想固有角振動数パラメータΩij2で与えられる一定のリズムで振動する現象を表す数理モデル(時間発展規則)を用いて算出されることを意味する。仮想位相Λij(t)を算出する際の初期位相(初期値)は、他ノードjから受信したインパルス信号に付加された位相λj(t)の値を用いる。以後、他ノードjからインパルス信号を受信するたびに、その時刻における仮想位相Λij(t)の値を位相λj(t)の値にリセットして、式(1.9)に基づく演算を実行する。これにより、他ノードjに対する仮想位相Λij(t)を算出する。
【0187】
式(1.9)に示した演算は、微分方程式を差分化(連続時間変数tを離散化)して得られる差分方程式(漸化式)を用いて、ソフトウェアとしてノード上に実装可能である。さらに、式(1.9)と同様の動作をする電子回路を構成すれば、ハードウェアとしてノード上に実装することも可能である。
【0188】
(b−3−2)収束状態における「相互作用範囲内のバイパスノードのみタイムスロットを獲得している期間」の場合
この期間は、バイパスノードのみインパルス信号を発信する。バイパスノードjは、第2階層演算部122における非線形振動の位相λj(t)が特定の値(例えば、λj(t)=0)のとき、インパルス信号を発信する。
【0189】
自ノードiの第2階層演算部122における仮想ノードモデル計算手段12222では、上記(a)の期間に生成された仮想位相モデル式(1.9)に基づく演算を実行することにより、仮想位相Λij(t)の値を算出する。ただし、他ノードj(バイパスノードj)からインパルス信号を受信するたびに、その時刻における当該ノードに対する仮想位相Λij(t)の値を、上記の「位相λj(t)の特定の値(例えば、λj(t)=0)」にリセットして、式(1.9)に基づく演算を実行する。
【0190】
以上、仮想ノードモデル計算手段1222による仮想位相Λij(t)の算出方法について説明した。
【0191】
次に、本発明におけるタイムスロット割当の実現形態の例について説明する。
【0192】
(b−4)本実施形態のタイムスロット割当処理の例の説明
以下では、位相応答関数R1(ΔΘij(t))及びR2(ΔΛij(t))に対する1周期の分割数を、それぞれp、p、とする。定数パラメータp、pの値は実験的に決定する。
【0193】
図9は、あるバイパスノードに着目した場合に、収束状態において、相互作用範囲内のノード間に形成される位相関係の最も簡単な例である。
【0194】
図9は、p=9、p=6とした場合の例であり、上段は第2階層演算部122に形成される位相関係を示し、下段は第1階層演算部121に形成される位相関係を示す。
【0195】
図9において、第1階層演算部121は、1周期をp等分(すなわち、9等分)する位相関係を形成し、また、第2階層演算部122は、1周期をp等分(すなわち、6等分)する位相関係を形成するものとする。
【0196】
また、図9において、黒丸はバイパスノードの位相状態を示し、白丸は非バイパスノードの位相状態を示し、第2階層演算部122の非バイパスノードが重なっている部分は、複数のノードが位相を一致させた状態で動作(図9の円上を回転運動)していることを表す。
【0197】
いま、図9(a)の状態にあるときの時刻を仮にt=tとする。図9(b)、及び図9(c)は、それぞれ時刻t=t+Wi2、t=t+Ti2の状態を示す。
【0198】
ここで、Ti2は、収束状態における第2階層演算部122の周期(図9では回転周期に対応)を表し、Wi2は、周期Ti2を第2階層演算部122における1周期の分割数pで割った値Wi2=Ti2/pを表す。
【0199】
(b−4−1)時刻t=tからt=t+Wi2の期間の動作
時刻t=tからt=t+Wi2の期間に、第2階層演算部122における非バイパスノード群(白丸のノード群)は、位相を0から2π/pまで進める(図9(b)に示すように、第2階層演算部122に矢印で示された量だけ位相を進める)。
【0200】
一方、第1階層演算部121は、同一期間に位相を1周期(0から2πまで)進める(円上を1回転する)。この期間を、「相互作用範囲内の全ノードがタイムスロットを獲得する期間」とする。
【0201】
各ノードは、第1階層演算部121の1周期をp等分した期間(図9(b)第1階層演算部121の円内部に矢印で示された量だけ位相を進める期間)Wi1=Ti1/pをタイムスロットとして獲得する。ここで、Ti1は、収束状態における第1階層演算部121の周期(図9では回転周期に対応)を表す。
【0202】
(b−4−2)時刻t=t+Wi2からt=t+Ti2の期間の動作
時刻t=t+Wi2からt=t+Ti2の期間に、第2階層演算部122における非バイパスノード群(白丸のノード群)は、位相を2π/pから2πまで進める(図9(c)に示すように、第2階層演算部122の円外部に矢印で示された量だけ位相を進める)。
【0203】
一方、第1階層演算部121は、同一期間に位相を(p−1)周期進める(円上を(p−1)回転する)。図9では、p−1=5であるから、位相を5周期進める。この期間を、「バイパスノードのみタイムスロットを獲得する期間」とする。
【0204】
各ノードは、第2階層演算部122の1周期をp等分した期間(図9(c)第2階層演算部122の円内部に矢印で示された量だけ位相を進める期間)Wi2=Ti2/pをタイムスロットとして獲得する。
【0205】
図10は、以上説明した図8の動作に対応するタイムスロット割当の例である。図10において、時刻t=tからt=t+Wi2の期間は、相互作用範囲内の全ノードがタイムスロットを獲得し、続く時刻t=t+Wi2からt=t+Ti2の期間は、バイパスノードのみタイムスロットを獲得することを示している。
【0206】
この多重化された時間構造は周期的に繰り返される。このような形態をとることによって、バイパスノードの発信する割合を大幅に増加させることが可能になる。
【0207】
その際、非バイパスノードは発信する割合を低下させるだけで、決して発信を停止するわけではない。非バイパスノードによる周期的な発信を確保しつつ、バイパスノードが大きな割合で発信することを可能にする点が、本実施形態の特徴である。
【0208】
図9及び図10においては理解を容易にするため、「時刻t=tからt=t+Wi2の期間に、第1階層演算部121は位相を1周期進める」と説明した。しかし、この動作は一例に過ぎない。
【0209】
本実施形態では、Wi2=Τi2/p2=nΤilの関係が成立する。したがって、実際には、この期間に第1階層演算部が位相をn周期進める形態を実現することが可能である。nは、可変パラメータであり、p2は実験的に値を決定するパラメータである。図9及び図10は、p2=6,n=1とした場合の例である。
【0210】
以上説明したタイムスロット割当の実現形態の例を一般化すると、以下のように表現することができる。
【0211】
本実施形態では、自ノードがバイパスノード、あるいは非バイパスノードの場合、自ノード内部の第1階層演算部121と第2階層演算部122によりそれぞれ算出される「自ノードと他ノードとの位相関係」の組合せに基づいて、各ノードの通信タイミング計算手段12が個々に自ノードのタイムスロットを決定する。
【0212】
上記の例では、第2階層演算部122における「自ノードと他ノードとの位相関係」を算出する演算に、バイパスノード、あるいは非バイパスノードという識別情報を反映させることによって、両者の獲得するタイムスロットの割合に大きな差を生むことを可能としている。
【0213】
(A−2−2)収束判定手段
図1に戻り、収束判定手段17の機能について説明する。収束判定手段17は、通信タイミング計算手段12により処理された処理結果に基づいて収束したか否かを判定するものである。つまり、収束判定手段17は、相互作用範囲内のノード間におけるタイムスロット割当の相互調整が収束したか否かを判定する。
【0214】
ここで、収束判定手段17による収束判定方法には、種々の方法があるが、例えば、次に示す方法がある。
【0215】
収束判定手段17は、各ノード単位に収束判定を行うものであり、次の2段階で収束判定結果を出力する。
【0216】
(a)第1段階の収束判定
上記(STEP2)の処理過程で、「第1階層演算部において、他ノードとの間に、ほぼ均等な位相差が形成された状態」を検出する。その際、第2階層演算部において、同様の状態が形成されたか否かは問題にしない。この検出処理は、上記(STEP2)に記載したように、例えば、前述の同調判定手段14における定常状態の判定方法と同様にして行うことができる。
【0217】
第1階層演算部は、元々、第2階層演算部から影響を受けずに動作する構成になっているため、第1段階の収束判定では、まず、「第1階層演算部において、他ノードとの間に、ほぼ均等な位相差が形成された状態」を検出し、「第1の収束状態」と判定する。
【0218】
「第1の収束状態」が検出された時点で、第1階層演算部によるスロット割当に基づくデータ通信を開始することが可能である。つまり、ノーマルノードと同様に「均等なスロット割当によるデータ通信」を行うことができる。ただし、一旦、データ通信を開始しても、その後、「第1階層演算部において、他ノードとの間に、ほぼ均等な位相差が形成された状態」が崩れた場合、すなわち、「第1の収束状態」の条件を満たさなくなった場合は、データ通信を停止する。
【0219】
(b)第2段階の収束判定
第2段階の収束判定では、以下の2つ条件[b−条件1],[b−条件2]をともに(同時に)満足した場合に、「第2の収束状態」と判定する。「第2の収束状態」の条件を満足した場合に、第1階層演算部と第2階層演算部の両方を用いた不均等なスロット割当に基づくデータ通信を開始することができる。ただし、一旦、データ通信を開始しても、その後、条件を満たさなくなった場合は、データ通信を停止する。再度、ノード間における位相関係を形成する動作を実行し、「第1の収束状態」あるいは「第2の収束状態」の条件が満足されるまではデータ通信は実行しない。
【0220】
[b−条件1]
「第1階層演算部,及び第2階層演算部のそれぞれにおいて、他ノードとの間に、ほぼ均等な位相差が形成された状態」である。この状態の検出処理は、例えば、前述の同調判定手段14における定常状態の判定方法と同様にして行うことができる。
【0221】
[b−条件2]
式(1.4),及び(1.5),(1.6)において、kF2≠0の条件の下で、関数Fi(t),λi(t),{Θij(t)|j},{Λij(t)|j})=0の状態が一定期間以上持続する。
【0222】
(A−2−3)インパルス信号送信手段
インパルス信号送信手段13は、ノーマルノードの場合、自ノードiの第1階層演算部121における非線形振動の位相θi(t)に基づいて、インパルス信号を発信するものである。
【0223】
すなわち、位相θi(t)が特定の値(例えば、θi(t)=0)のとき、インパルス信号を発信する。したがって、インパルス信号は、第1階層演算部121の振動周期で発信される。さらに、各ノードが発信するインパルス信号には、自ノードiがノーマルノードであることを示す識別情報を付加する。
【0224】
また、インパルス信号送信手段13は、バイパスノード及び非バイパスノードの場合、収束過程(過渡状態)と収束状態(定常状態)とで、インパルス信号を発信する方法が異なる。
【0225】
以下では、バイパスノード及び非バイパスノードの場合におけるインパルス信号の発信方法について説明する。
【0226】
(1−1)収束過程におけるインパルス信号の発信方法
収束過程では、自ノードiの第1階層演算部121における非線形振動の位相θi(t)に基づいて、インパルス信号を発信する。すなわち、位相θi(t)が特定の値(例えば、θi=0)のとき、インパルス信号を発信する。したがって、インパルス信号は、第1階層演算部121の振動周期で発信される。さらに、各ノードが発信するインパルス信号には、以下の情報を付加する。
【0227】
(a)自ノードiの第2階層演算部における非線形振動の位相λi(t)。すなわち、インパルス信号の発信時刻tにおける位相λi(t)の値。
【0228】
(b)自ノードiが、バイパスノード及び非バイパスノードのどちらに該当するかを示す識別情報。
【0229】
ωi1>ωi2(すなわち、Ti1<Ti2)であるから、インパルス信号に付加される位相λi(t)の値は、0≦λi(t)<2πにおける離散的な値を取ることに注意されたい。
【0230】
(1−2)収束状態におけるインパルス信号の発信方法
以下の2つの場合で、インパルス信号を発信する方法が異なる。
【0231】
(a)相互作用他囲内の全ノードがタイムスロットを獲得している期間
(図9及び図10では、t<t<t+Wi2の期間に対応の期間の開始タイミングは含まれるが、終了タイミングは含まれないことに注意。)収束過程におけるインパルス信号の発信方法と同様である。
【0232】
(b)相互作用範囲内のバイパスノードのみタイムスロットを獲得している期間
(図9及び図10では、t+Wi2≦t<t+Ti2の期間に対応期間の開始タイミングは含まれるが、終了タイミングは含まれないことに注意。)非バイパスノードは、インパルス信号の発信を停止する。バイパスノードのみ、自ノードiの第2階層演算部122における非線形振動の位相λi(t)に基づいて、インパルス信号を発信する。
【0233】
すなわち、位相λi(t)が特定の値(例えば、λi(t)=0)のとき、インパルス信号を発信する。したがって、インパルス信号は、第2階層演算部の振動周期で発信される。各ノードが発信するインパルス信号には、特に情報を付加する必要はない。
【0234】
(A−3)第1の実施形態の効果
以上のように、本実施形態によれば、相互にインパルス信号を送受信することによって、自律分散的にタイムスロット割当を行なう各ノードが、周期が異なる非線形振動子モデルを複数備え、これらを協調動作させることによって、相互作用範囲内のノード間において多重化された位相関係を形成する力学的特性を有する相互作用演算を実行することができる。
【0235】
これにより、相互作用範囲内のノード間に多重化された時間構造が形成され、特定のノード(バイパスノード)に大きな割合でタイムスロットを割り当てるような不均等なスロット割当を行なう通信形態(すなわち、発信の機会がノード間で不均等に与えられる通信形態)を実現することが可能になる。この形態は、非バイパスノードによる周期的な発信を確保しつつ、バイパスノードが非常に大きな割合で発信することを可能とする。
【0236】
また、本実施形態によれば、さらに、以下の効果を同時に得ることができる。
【0237】
(1)インパルス信号とデータ信号との発信衝突が発生しない。
【0238】
(B)他の実施形態
上記各実施形態の説明においても変形実施形態に言及したが、さらに以下に例示するような変形実施形態が考えられる。
【0239】
(B−1)本発明では、ノード間において送受信するインパルス信号の実現形態は、特定のタイミングを伝え合うことが可能であれば、特に制約はないことに注意されたい。インパルス信号の最も簡単な実現形態の例として、ガウス分布や矩形等の関数形状を有する単一パルスが挙げられる。しかし、インパルス信号は必ずしも単一パルスである必要はなく、複数のパルスを用いて一つの意味を成すインパルス信号を構成する形態であっても構わない。例えば、特定のビットパターンに対応するパルス列を一つのインパルス信号として扱う形態である。こうした形態は、多くのノイズが存在する環境において単一パルスでは信号識別が困難な場合に有効である。本発明の実施形態で説明したインパルス信号の示す意味は、特定のタイミングを示す信号ということを概念的に表すものであり、その実現形態は種々の形態が存在する。
【0240】
(B−2)上述した実施形態において、上記のインパルス信号(特定のタイミングを示す信号)にノード識別番号というある種のデータを付加した信号を、インパルス信号として扱った。待定のタイミングを示す信号にある種のデータを付加した信号も、その実現形態は、種々の形態が存在することに注意されたい。
【0241】
(B−3)上述した実施形態において、固有角振動数パラメータωi1及びωi2、その一例として、システム全体で同一の値に統一するものと仮定した。しかし、固有これは本発明を実施する上で必須事項ではない。ノードごとにωi1及びωi2の値が異なっても動作させることが可能である。例えば、各ノードのωi1及びωi2の値が、基準値を中心にその近傍でガウス分布等の確率分布に従って小さくばらついていても動作させるようにしてもよい。
【0242】
(B−4)上述した実施形態においては、通信タイミング計算手段12における処理の説明に、(1.1)式の微分方程式を用いた。しかし、微分方程式を用いた記述は、算出方法を規定する一例の表現にしか過ぎない。
【0243】
また、位相θ(t)の時間発展を時間軸方向に離散化して扱う方法や、時間軸方向の離散化に加えて、さらに状態変数に対しても離散化、すなわち、位相θ(t)の値そのものを離散化(量子化)して扱う記述方法を用いることも可能である。
【0244】
(B−5)上述した実施形態では、非線形振動をモデル化した数式として、(1.1)式を示し、さらに、その他の記述方法として、種々の変形形態が可能であることを上述した。
【0245】
しかし、本発明を実現する非線形振動をモデル化した数式の記述方法は、上記各実施形態や既に言及した変形実施形態に限定されない。例えば、文献3「戸田盛和、渡辺慎介著、「非線形力学」、共立出版発行」に開示されるファン・デル・ポール方程式等の一般的な非線形振動やカオス振動のモデルを用いることも可能である。無論、ノード間における相互作用が、時間に関して離散的(パルス的)な場合、及び連続的な場合、ともに実現することが可能である。ファン・デル・ポール方程式は、電子回路上で発生する非線形振動現象をモデル化した式である。ファン・デル・ポール方程式による動作は、電子回路を用いてハードウェアとしてノード上に実装することが可能である。また、ルンゲ・クッタ法等の一般的な数値計算法を用いて、ソフトウェアとしてノード上に実装することも可能である。
【0246】
本発明は、時間や動作状態,あるいは相互作用等に関する離散モデル、及び連続モデル、その他、特定の振動現象を表現するモデルといった、個別的なモデルの記述方法の違いに依拠するものではなく、ある時間発展規則に従って動作状態が遷移する種々のモデルを用いて実現することが可能である。動作状態が周期的、あるいはカオス的に変化するモデルを用いる形態は、本発明の実施形態の例として位置付けられる。
【0247】
(B−6)第1の実施形態では、空間に分散配置された多数のノードが、相互に無線でデータをやり取りするシステムを想定して説明した。しかし、本発明の利用形態は、無線通信を行なうシステムに限定されない。空間に分散配置された多数のノードが、相互に有線でデータをやり取りするシステムに適用することも可能である。例えば、イーサネット(登録商標)などのように有線接続されたLANシステムに適用することも可能である。また、同様に有線接続されたセンサやアクチュエータ、あるいはサーバなど、異なる種類のノードが混在するネットワークに適用することも可能である。無論、有線接続されたノードと、無線接続されたノードが混在するネットワークに適用することも可能である。
【0248】
さらに、本発明は、インターネット上で、各ルータが相互に異なるタイミングでルーティングテーブルを交換するための通信プロトコルとして利用することができる。ここで、ルータとは、ネットワーク上を流れる情報の行き先を振り分ける(通信経路選択)機能を有する中継機器のことである。また、ルーティングテーブルとは、情報の行き先を振り分ける際に参照される通信経路選択規則である。効率的な通信を実現するためには、ネットワーク上における変更や局所的なトラフィックの変化等に応じて、逐次、ルーティングテーブルを更新する必要がある。このため、ネットワーク上に存在する多数のルータは、相互に一定の時間間隔でルーティングテーブルの交換を行っている。しかし、文献「Floyd,S.,and Jacobson,V.,“The Synchronization of Periodic Routing Messages”, IEEE/ACM Transactions on Networking, Vol.2 No.2, pp.122-136, April 1994.」に開示されるように、各ルータがそれぞれ独立にルーティングテーブルを発信しているにもかかわらず、ルータ相互の発信が次第に同期(衝突)する現象が発生することが分かっている。上記文献では、ルーティングテーブルの交換に用いられる通信プロトコルに対して、各ノードの処理周期にランダムな変動性を与えることによって、この問題に対処する方法を提案し、一定の効果が得られることを示している。しかし、上記文献に開示される方法は、基本的にランダム性のみに依存した方法であるため、その効果は十分ではない。
【0249】
それに対して、本発明を上記の問題に適用すると、近傍のルータ間において、ルーティングテーブルを発信するタイムスロットを自律的に相互調整することが可能である。従って、各ルータの発信は、相互に異なるタイミングとなり、上記文献に開示される方法に比べて高い効果を得ることができる。
【0250】
以上、説明したように、本発明は無線系、有線系を問わず、あらゆるネットワークに存在する発信データの衝突や同期の問題に適用可能であり、適応性と安定性を兼ね備えた効率的なデータ通信を実現する通信プロトコルとして利用することが可能である。
【0251】
(B−7)本発明は、通信タイミング情報(実施形態での位相信号)の取得制御に特徴を有し、そのタイミング情報を通信にどのような利用するかは問われない。例えば、各ノードからのデータ信号の送信周波数が異なる場合であれば、タイムスロットを設定することなく通信を行なうようにしても良く、この場合であっても、データ通信の始期を通信タイミング情報から定めるようにすれば良い。
【0252】
(B−8)上述した実施形態では、位相応答関数R(Δθij(t))の具体例を示したが、関数の形態はこれに限定されず、本発明を実施する上で位相応答関数は他の種々の関数を用いて構成可能である。
【0253】
(B−9)上述した実施形態では、位相Δθ(t)に対し、衝突率c(t)を、ストレス応答関数値として反映させ、かつ、位相応答関数R(Δθij(t))の特性切替えという形で反映させるものを示したが、位相応答関数R(Δθij(t))の特性切替えという形でのみ反映させるものであっても良い。
【0254】
(B−10)本願発明に関係する先願の特許出願として、特願2003−328530号、特願2004−257562号及び特願2004−257567号があるが、その先願特許出願の明細書及び図面には多数の変形実施形態が記載されており、そのうち、本願に適用可能なものは本願の変形実施形態にもなる。
【0255】
(B−11)上述した実施形態において、ノーマルノードは、上述した不均等なタイムスロット割当を行なう通信形態と、ほぼ均等なタイムスロット割当を行なう通信形態とを、ネットワーク内に共存させることが可能である。
【0256】
また、局所的に発生した大量のデータを優先伝送するバイパスを形成する形態のタイムスロット割当が実現されると、そのバイパスノード群から空間的に離れた位置に存在するノーマルノード群の領域では、ほぼ均等なタイムスロット割当が実現される。したがって、ネットワーク内の各ノードによって発生するトラヒックが大きく異なる状況に対処及び適応可能な極めて効率的な通信が実現される。
【0257】
(B−12)本発明は、ノード間で送受信される相互作用信号としてインパルス信号を用い、通信タイミング計算手段の構成に対して、仮想ノードモデル計算手段を導入した形態を想定して説明したが、本発明の適用はこの形態に限定されるものではない。
【図面の簡単な説明】
【0258】
【図1】第1の実施形態のノードの主な構成を示す機能ブロック図である。
【図2】従来の通信システムの構成を示す構成図である。
【図3】第1の実施形態の通信システムの構成を示す構成図である。
【図4】第1の実施形態のノードの内部構成を示す機能ブロック図である。
【図5】第1の実施形態の通信システムでのノード間の同調の説明図(1)である。
【図6】第1の実施形態の通信システムでのノード間の同調の説明図(2)である。
【図7】第1の実施形態の第1階層演算部及び第2階層演算部の内部構成を示す機能ブロック図である。
【図8】第1の実施形態の仮想ノードモデル計算手段の機能を説明する機能ブロック図である。
【図9】第1の実施形態の相互作用範囲内のノード間に形成される位相関係例を説明する説明図である。
【図10】第1の実施形態のタイムスロット割当の様子を説明する説明図である。
【符号の説明】
【0259】
10…ノード、11…インパルス信号受信手段、12…通信タイミング計算手段、13…インパルス信号送信手段、14…同調判定手段、15…データ通信手段、17…収束判定手段、121…第1階層演算部、122…第2階層演算部、1211及び1221…非線形振動計算手段、1212及び1222…仮想ノードモデル計算手段。

【特許請求の範囲】
【請求項1】
通信システムを構成する複数のノードのそれぞれに搭載される通信制御装置において、
近傍ノードのデータ発信のタイミングを示す状態変数信号を、近傍ノードから受信する状態変数信号受信手段と、
受信した近傍ノードからの状態変数信号に基づいて、それぞれ周期が異なる複数の位相をそれぞれ変化させて、上記各位相の状態を同期させるよう相互作用を与えることで、上記各位相のうちのある位相の周期内で、上記各位相の周期に基づく自ノード及び近傍ノード間のデータ発信タイムスロット幅が異なる複数のデータ発信周期を時間的に多重化させて形成する通信タイミング計算手段と、
上記通信タイミング計算手段により相互作用された上記各位相のいずれかの位相状態に基づいて、自ノードからのデータ発信のタイミングを決定する状態変数信号を送信する状態変数信号送信手段と
を備えることを特徴とする通信制御装置。
【請求項2】
上記通信タイミング計算手段による相互作用処理を受けている上記各位相の状態に基づいて上記各位相の状態が収束しているか否かを判定する収束判定手段を備え、
上記状態変数信号通信手段が、上記収束判定手段の判定結果に応じて、所定の情報を付加した上記状態変数信号を送信することを特徴とする請求項1に記載の通信制御装置。
【請求項3】
上記通信タイミング計算手段は、第1周期で位相状態を変化させる第1階層演算部と、上記第1周期と異なる1又は複数の第2周期で位相状態を変化させる第2階層演算部とを有し、
上記通信タイミング計算手段が、上記第1階層演算部により求められた受信した状態変数信号に含まれている近傍ノードの第1周期の位相と自ノードの第1周期の位相との位相関係と、上記第2階層演算部により求められた受信した状態変数信号に含まれている近傍ノードの各第2周期の位相と自ノードの各第2周期の位相との位相関係と、に基づいて、上記各データ発信周期を決定することを特徴とする請求項1又は2に記載の通信制御装置。
【請求項4】
上記通信タイミング計算手段が、上記収束判定手段の判定結果と、上記第2階層演算部により求められた受信した状態変数信号に含まれている近傍ノードの各第2周期の位相と自ノードの各第2周期の位相との位相関係と、に基づいて、上記各データ発信周期を決定することを特徴とする請求項1又は2に記載の通信制御装置。
【請求項5】
上記第1階層演算部は、
受信した状態変数信号に含まれている近傍ノードにおける第1周期の位相状態に対して、自ノードの第1周期の位相を反発する方向に変化させる力学的特性を有する第1位相応答関数特性決定部を有し、
上記第2階層演算部は、
上記第1周期の位相状態と上記各第2周期の位相状態とを同期させるために、上記各第2周期の位相状態に対して所定の整数倍周期の位相を作用させる第1位相同期形成部と、
近傍ノード及び自ノードのノード識別属性に応じて、自ノードの各第2周期の位相状態を、受信した状態変数信号に含まれている近傍ノードにおける各第2周期の位相状態に一致させる、又は、近傍ノードにおける各第2周期の位相状態に対して、自ノードの各第2周期の位相を反発する方向に変化させる、力学的特性を有する第2位相応答関数特性決定部と
を有する
ことを特徴とする請求項1〜4のいずれかに記載の通信制御装置。
【請求項6】
上記第1階層演算部と上記第2階層演算部とは、動作開始時点においてはそれぞれ独立に第1位相応答関数特性決定部と第2位相応答関数特性決定部とを動作させ、
上記第2階層演算部は、上記収束判定手段により、第1階層演算部と第2階層演算部とのそれぞれにおいて、他ノードとの間に、ほぼ均等な位相差が形成された状態が検出された場合、上記第2位相応答関数特性決定部と共に上記第2位相形成部を動作させることを特徴とする請求項5に記載の通信制御装置。
【請求項7】
上記第2位相形成部は、第1周期と第2周期との比を、第2周期の位相分割数の整数倍とし、自ノードあるいは他ノードに対する第1周期の位相の中から、自ノードに対する第2周期の位相を同期させるべき対象を選択する同期対象選択部を備え、
上記同期対象選択部が、近傍ノード間で共通の対象を選択する機能を有することを特徴とする請求項5又は請求項6に記載の通信制御装置。
【請求項8】
上記収束判定手段は、
上記第2階層演算部とは無関係に、第1階層演算部において、他ノードとの間に、ほぼ均等な位相差が形成された状態を検出する第1の収束状態検出部と、
上記第1階層演算部と上記第2階層演算部とのそれぞれにおいて、他ノードとの間に、ほぼ均等な位相差が形成された状態であり、かつ上記第2位相形成部が定常状態になったことを検出する第2の収束状態検出部と
を有することを特徴とする請求項5〜7のいずれかに記載の通信制御装置。
【請求項9】
通信システムを構成する複数のノードのそれぞれに搭載される通信制御装置による通信制御方法において、
状態変数信号受信手段が、近傍ノードのデータ発信のタイミングを示す状態変数信号を、近傍ノードから受信する状態変数信号受信工程と、
通信タイミング計算手段が、受信した近傍ノードからの状態変数信号に基づいて、それぞれ周期が異なる複数の位相をそれぞれ変化させて、上記各位相の状態を同期させるよう相互作用を与えることで、上記各位相のうちのある位相の周期内で、上記各位相の周期に基づく自ノード及び近傍ノード間のデータ発信タイムスロット幅が異なる複数のデータ発信周期を時間的に多重化させて形成する通信タイミング計算工程と、
状態変数信号送信手段が、上記通信タイミング計算手段により相互作用された上記各位相のいずれかの位相状態に基づいて、自ノードからのデータ発信のタイミングを決定する状態変数信号を送信する状態変数信号送信工程と
を備えることを特徴とする通信制御方法。
【請求項10】
請求項1〜8のいずれかに記載の通信制御装置を有することを特徴とするノード。
【請求項11】
請求項10に記載のノードを複数配置して有することを特徴とする通信システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2007−266910(P2007−266910A)
【公開日】平成19年10月11日(2007.10.11)
【国際特許分類】
【出願番号】特願2006−88191(P2006−88191)
【出願日】平成18年3月28日(2006.3.28)
【国等の委託研究の成果に係る記載事項】(出願人による申告)国等の委託研究の成果に係る特許出願(平成17年度総務省戦略的情報通信研究開発推進制度「大規模ユビキタスセンサネットワークを自己組織化する相互適応通信制御方式の研究開発」委託研究、産業活力再生特別措置法第30条の適用を受けるもの)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【Fターム(参考)】