JP5086935B2 - 膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラム - Google Patents

膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラム Download PDF

Info

Publication number
JP5086935B2
JP5086935B2 JP2008206697A JP2008206697A JP5086935B2 JP 5086935 B2 JP5086935 B2 JP 5086935B2 JP 2008206697 A JP2008206697 A JP 2008206697A JP 2008206697 A JP2008206697 A JP 2008206697A JP 5086935 B2 JP5086935 B2 JP 5086935B2
Authority
JP
Japan
Prior art keywords
value
node
field
field value
nodes
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.)
Expired - Fee Related
Application number
JP2008206697A
Other languages
English (en)
Other versions
JP2010044483A (ja
Inventor
健 久保
亨 長谷川
達也 須田
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.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2008206697A priority Critical patent/JP5086935B2/ja
Priority to US12/539,178 priority patent/US8190729B2/en
Publication of JP2010044483A publication Critical patent/JP2010044483A/ja
Application granted granted Critical
Publication of JP5086935B2 publication Critical patent/JP5086935B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Description

本発明は、膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラムに関する。より詳細には、大量のノードが動作することによってサービスが提供されるようなシステムにおいて、ネットワーク内におけるノードの役割を動的かつ自律分散的に制御する方法、該方法を実行するノードおよび制御プログラムに関する。
大量のデバイスが動作することによってサービスが提供されるようなシステムの例としてセンサーネットワークが例示される。センサーネットワークでは、環境を測定するセンサーデバイスは、単一のデバイスだけで利用されるだけでなく、多数のデバイスを環境中に分散配置して、広い範囲にわたる環境情報を取得するという用途にも利用される。その際、多数のデバイスが必ずしもすべて同時に稼動するわけではなく、測定地域をカバーする必要十分な個数のデバイスのみが稼動するように制御する仕組みや、それらのデバイスが測定した情報を、データ処理を行うサーバに集めるために情報を適切なノードへと転送する仕組みなどが必要となる。
事実、この分野において、多数のデバイスをコントロールするための仕組みが盛んに検討されている。しかし、センサーデバイスのような小型で比較的低機能なもので構成される場合だけでなく、P2Pネットワークのように各ノードがPCのような高機能なもので構成される場合も考えられる。
従来のコンピュータネットワークでは、各ノードがどのような役割をするべきかということがあらかじめ決まっており、その制約条件の下でシステムが適切に動作できるように様々な制御手法が考案され実装されている。例えば、センサーネットワークの例をとると、多数のセンサーデバイス(以下、単にノードと呼ぶ)の中に、Sinkノードと呼ばれるノードが存在する。Sinkノードとは、周囲のノード群から情報を収集し、それを別のネットワーク上(例えばInternet)にあるサーバへ渡すゲートウェイの役割を果たす。環境中に多数のノードがばら撒かれている場合、これらが持っている情報を効率よくSinkノードへと送り届ける必要があり、様々な手法が考案されている(非特許文献1および2)。
また、これとは少し異なる手法として、非特許文献3では地理的な領域に応じて保持する情報を変えるというものもある。多数のノードがばら撒かれた大地域を考える。ある場所のノードが取得した情報がAという種別の情報だったとき、地域a(大地域内の一画)にその情報を送る(Aとaのマッピングルールはあらかじめ決まっており、センサーノードがそれを知っている)。地域aには多数のノードがいるため、そのいずれかが情報を保持する。次に、このネットワーク内から情報を取得する場合を考える。ここで情報Aが要求されているとすると、要求者(ネットワークの外にいる場合もある)がこのセンサーネットワークに対して要求パケットを送信する。センサーノード群がAを地域aに変換し、その要求パケットを地域aに転送する。そして、その中で該当する情報を持っているノードが、要求に対して応答し必要な情報を返信する。
"Directed Diffusion for WirelessSensor Networking," C. Intanagonwiwat, R. Govindan, D. Estrin, J.Heidemann, and F. Silva, IEEE/ACM Transactions on Networking, VOL. 11, NO. 1,pp2, 2003. "GRAdient Broadcast: A Robust DataDelivery Protocol for Large Scale Sensor Networks," F. Ye, G. Zhong, S. Luand L. Zhang, ACM Wireless Networks, Volume 11, Number 3, pp. 285-298(14),2005. "Data-Centric Storage in Sensornetswith GHT, A Geographic Hash Table," S. Ratnasamy, B. Karp, S. Shenker, D.Estrin, R. Govindan, L. Yin and F. Yu, ACM Mobile Networks and Applications,Volume 8 , Issue 4, pp. 427 - 442,2003.
上述の2つの例に共通することは、ネットワーク制御のための役割があらかじめ決められているという点である。つまり、前者では誰がSinkノードになるかは決まっており、後者ではどの種類の情報をどの地域で管理するかが決まっている。ただし後者の場合は、ノードそのものに役割が紐付いているわけではなく、地理的な場所(絶対的な場所)に役割が紐付いている。
しかしながら、このように、あらかじめ役割が決まっている場合、何らかの障害(多数のノードが故障した場合や不意に移動してしまった場合、通信の接続性が途絶えた場合など)が起こったときに、システムとしての動作を維持することが困難になる。例えばSinkノードが故障した場合、何らかの方法で別のノードにSinkノードの役割をさせるような手続きを実施する必要がある。しかし、システムを構成するノードの数が膨大になった場合、相手を特定して情報をやり取りし、動作を制御することは非常に困難になるという課題がある。
したがって、本発明は、膨大な数のノードで構成されるネットワークにおいて、ネットワーク全体が自律分散的に動作可能となるように、ネットワーク内におけるノードの役割を動的かつ自律分散的に制御する方法、該方法を実行するノードおよび制御プログラムを提供することを目的とする。
上記目的を実現するため本発明によるノードの場の値uを制御する方法は、ネットワーク内のノードの場の値uを制御する方法であって、前記場の値uの初期値を決定するステップと、前記場の値uを隣接ノードに広告し、前記ノードの環境から環境パラメータωを測定し、前記隣接ノードから、該隣接ノードの場の値uを受信して記録し、前記環境パラメータωが一定範囲内にあるノードの場の値を、任意の分布と一致させるように、前記場の値u、前記隣接ノードの場の値uおよび前記環境パラメータωから新しい場の値uを計算し、以前の場の値uを削除し、前記新しい場の値uを記録することにより、前記場の値uを更新するステップとを有する。
また、前記分布は、前記環境パラメータωが一定範囲内であるノードに対して、該範囲の中央に近いノードほど、大きな値を与える分布であることも好ましい。
また、前記新しい場の値uの計算は、a、b、c、xが定数である微分方程式
Figure 0005086935
を初期条件
u(0)=uおよびv(0)=0
のもとで解u(t)を求め、一定時間後のu(t)の値を新しい場の値uとすることも好ましい。
また、前記場の値uの初期値は、一定の範囲内からランダムに決定されることも好ましい。
上記目的を実現するため本発明によるノードは、ノードの場の値uを制御する場の値制御部と、環境パラメータωを測定する環境入力部とを備えているネットワーク内のノードにおいて、前記場の値制御部が、前記ノードの場の値uの初期値を決定する手段と、前記場の値制御部が、前記場の値uを隣接ノードに広告し、前記環境入力部が、前記ノードの環境から前記環境パラメータωを測定し、前記場の値制御部が、前記隣接ノードから、該隣接ノードの場の値uを受信して記録し、前記場の値制御部が、前記環境パラメータωが一定範囲内にあるノードの場の値を、任意の分布と一致させるように、前記場の値u、前記隣接ノードから広告された場の値uおよび前記環境パラメータωから新しい場の値uを計算し、前記場の値制御部が、以前の場の値uを削除し、前記新しい場の値uを記録することにより、前記場の値uを更新する手段とを備える。
また、前記ノードは、条件および該条件が満たされた場合の動作が記載された動作リストおよび該動作を制御する動作制御部をさらに有し、前記条件は、前記場の値uに基づくものであることも好ましい。
また、前記ノードは、条件および該条件が満たされた場合の動作が記載された動作リストおよび該動作を制御する動作制御部をさらに有し、前記条件は、前記場の値uおよび前記隣接ノードの場の値に基づくものであることも好ましい。
上記目的を実現するため本発明によるプログラムは、ネットワーク内のコンピュータを、前記コンピュータの場の値uの初期値を決定する手段と、前記場の値uを隣接コンピュータに広告し、前記コンピュータの環境から環境パラメータωを測定し、前記隣接コンピュータから、該隣接コンピュータの場の値uを受信して記録し、前記環境パラメータωが一定範囲内にあるコンピュータの場の値を、任意の分布と一致させるように、前記場の値u、前記隣接コンピュータの場の値uおよび前記環境パラメータωから新しい場の値uを計算し、以前の場の値uを削除し、前記新しい場の値uを記録することにより、前記場の値uを更新する手段として機能させ、前記コンピュータの場の値uを制御する。
ネットワーク内の各ノードが隣接ノードとのみ通信するだけで、自律分散的に同じような状況下にあるノード群をグループ化することができる。この場合、各ノードには、IPアドレスのような識別子は必要なく、ネットワークには、システム全体の状況を把握しているような中央集中的なサーバが必要ない。
ノード群が自律分散的にグループ化するため、何らかの障害が起こったとき、ノードの故障や環境の変化に追従して、グループが動的に変化する。つまり、グループを構成するノードが動的に変わる。
また、このように作成されたグループごとに1つ(一連の)のサービスを実施することが可能になる。
本実施形態では、似たような状況下にあるノード群が自律的にグループを構成し、各グループがひとつのサービスを提供する。ひとつのサービスを提供するために、そのグループ内には複数の役割が含まれる。したがって、ネットワーク内に存在するノードは、自律的にグループを構成し、さらに自律的にグループ内で果たす役割を決定する。これによって、膨大な数のノードで構成されるネットワークにおいても、ネットワーク全体が自律分散的に動作可能となる。
具体的には、本実施形態では自律的に構成されたグループにおいて、それぞれのノードがグループの中心付近に位置しているのか、それとも端の方に存在しているのかを知ることができ、それを利用して、それぞれのノードは自分の位置に応じて動作を決める。ただし、各ノードは自分の位置を測位するGPSのような手段は持たず、またあらかじめ決められたIPアドレスのような識別子も持たないため、相手を指定した通信はできない。
以下では、図面を用いて、本発明を実施するための最良の形態について詳述する。本実施形態では、多数のノードによって構成されたネットワークの例としてセンサーネットワークを用いて説明する。ノードは、センサーデバイスのような小型で比較的低機能なもの、P2PネットワークのPCのような高機能なもののどちらであっても構わない。
図1は、本実施形態におけるネットワークを示す。本ネットワークは、多数のノード11で構成されたネットワークであり、あるエリアに存在するノード群が似たような状況下にある。ここで、「状況」とは、例えば各ノード11が測定した温度や湿度、ノード11の電池残量、保持している情報量や保持している情報の種別などを指す。したがって「似たような状況下」にあるノード群とは、似たような温度、湿度などの情報を持っているノード群を指す(図1では2種類の状況が存在する)。本実施形態では、ネットワーク内のノード11間に隣接関係がある。隣接関係とはすなわち直接通信可能かどうかを示すものである。センサーネットワーク等の場合には無線で通信することが多い。この場合、各ノード11が送出する無線が届く範囲内のノード11としか直接通信ができないため、ネットワーク内のノード11はこの範囲のノード11と隣接関係を持つ。また、P2Pネットワークのような有線の場合、隣接関係は論理的な接続関係に置き換えられる。つまり、ノード11同士がお互いを通信相手として認識し、直接相手を指定して情報の授受を行う場合に、隣接していると考える。図1では、通信リンク12が設定されているノード間に隣接関係がある。
なお、これらのノード11は、IPアドレスのような識別子を持つ必要がなく、またGPSなどの位置測位手段も持つ必要がない。
本実施形態では、ネットワーク内の各ノード11は、自身の動作を決定するパラメータである「場の値」を保持している。
図2は、本実施形態で作り出される場の値の分布の一例を示す。この分布は、ネットワーク内の各ノードが隣接関係にあるノードの場の値を見ながら自身の場の値を変化させる後述のアルゴリズムによって、作り出される。それぞれのノードは前述のように隣接ノードとしか直接通信できないが、システム全体としてみると、同じような状況下にあるノード群がグループ化し、そしてそれぞれのグループごとに場の値の分布ができる。図2の分布は、グループの中央ほど場の値が大きい分布である。ここで、グループの中央とは、グループに属さないノードからの距離が最も大きいノードの位置である。なお、グループの中央のノードは、1つとは限らない。また、ここでの距離は、ノード間の物理的距離だけではなく、ノード間の通信リンクに基づく論理的な距離でもある。図2の場合、左側のグループに属するノード21とノード22を比べると、左側のグループに属さないノード23からの距離は、ノード21のほうが大きく、中央に近い。このため、ノード21の場の値はノード22の場の値より大きくなる。
一般に、「状況(例えば温度)」は変化する。また、ノードが故障したり移動してしまったりする場合もある。そのため、「同じ状況にあるノード群の中央付近」は一意に決めておくことはできない。しかし、本実施形態によれば、各ノードが動的に場の値を変化させることによって、常に図2に示すようなグループごとの場の値の分布を形成することが可能になる。
図3は、本実施形態のノードの基本構成を示す。ノード31は、場の値制御部32、動作制御部33、および環境入力部34から構成され、場の値、環境パラメータおよび、動作リストを内部に保持している。
場の値制御部32は、自身の場の値と隣接ノード(隣接関係にあるノード)の場の値と環境パラメータとから場の値を更新する、隣接ノードの場の値を受信する、および自身の場の値を隣接ノードに広告する手段である。動作制御部33は、動作リストに記載されている動作を実施する手段である。この動作リストには、場の値等に関する複数の条件およびこの条件が満たされた場合にノードが取りうる動作が記載される。環境入力部34は、ノードの外部または内部環境から情報を入力し、この情報を数値化する手段である。それぞれ手段の詳細は後述される。
[場の値制御部、場の値、環境パラメータ]
以下にノード31の場の値制御部32が、環境パラメータ等に基づいて自身の場の値を決定する手順を示す。
(1)場の値制御部32は、場の値収集期間(Iとする)に隣接ノードが広告している場の値を受信し、記録していく(つまり、時刻T〜T+Iまでの間)。ただしここでは、誰が送った広告であるかを区別する必要はなく、単に値を記録するだけでよい。
(2)収集期間終了後(つまり、時刻T+Iに)、場の値制御部32は、「自身の場の値」と「環境パラメータ」の値を取得する。
(3)場の値制御部32は、時刻T+I(Iは広告間隔)のとき「自身の場の値」を周囲へ広告する。なお、I=N*Iとし、場の値収集N回ごとに1回広告を行う。
(4)場の制御部32は、時刻T+Iで(2)で取得した情報を元に、時間I後の自身の場の値を下記の式を用いて計算する。
Figure 0005086935
初期条件 u(0)=uおよびv(0)=0
ここで、tは時間、u(t)は求める場の値の関数、uは手順(1)で記録していた隣接ノードから広告された場の値、uは手順(2)で取得した自身の場の値、ωは手順(2)で取得した環境パラメータの値、a、b、c、xは定数である(accelはu、vの値によって変化する)。また、vは場の値uを計算する際に出る副産物であるため、特に何らかの入力があるわけではない。なお、du(t)/dtの式中のΣは、保持しているすべての隣接ノードの場の値と自分の場の値の差を合計することを示している。もし期間中にひとつも隣接ノードから場の値を受け取らなかった場合、Σの部分は0とする。
(5)記録していた隣接ノードの場の値および自身の場の値を削除し、求めた関数u(t)のt=T+2Iでの値u(t=T+2I)を新しい自身の場の値とする。
(6)(1)へ戻って処理を繰り返す。
なお、各ノードの場の値の初期値は、適当な範囲内(例えば−1から1の間)のランダムな値とすればよい。環境パラメータωは、ノードが置かれた何らかの状況を環境入力部34が収集し、それを数値化したものである。最も単純な例は、ノードが温度センサーだった場合に、測定した温度の値をそのままωとするものである。その他にも、ノードが保持する情報量や、ノードが使用可能な帯域、ノード上の空きバッファサイズ、ノードの電池残量のようなものが考えられる。
図4は、N=2の場合での場の値制御部の処理の流れを示す。
図4に示すように、ある時刻Tにおいて、その時点における場の値uを隣接ノードに広告する。さらに、その時点における場の値uや環境パラメータωの値、それまで取得した隣接ノードの場の値uの値を用いて、上述の微分方程式を解き、解u(t)を求め、時刻T+Iにおける場の値u(T+I)を算出する(ここでの添え字Tは、解u(t)が時刻Tにおいて求められたことを意味する)。次の時刻T+Iでは、同様にして、再度微分方程式を解き、解uT+Ic(t)を求め、T+2Iにおける場の値uT+Ic(T+2I)を算出する。次の時刻T+2Iでは、場の値uT+Ic(T+2I)を隣接ノードに広告する。また、同様にしてT+3Iにおける場の値をuT+2Ic(T+3I)を算出する。この後も同じ動作が繰り返される。
なお、この微分方程式を解くには、ルンゲ・クッタ法やオイラー法などの数値計算手法を用いればよい。理想的にはIの値は0に極めて近い数値、つまりIの期間中に高々1個の広告を受け取る程度が好ましい。しかしIを短くすることは、計算負荷の上昇につながるため、むやみに小さな値にすることは困難であるため、適度な値、例えば10ミリ秒〜100ミリ秒程度が適切である。この値は起こりうるωの値や隣接関係にあるノード数に依存する。目安としては、ネットワーク内で起こりうるωの最大値をωとした場合、「1/√(ω)」の数分の一秒程度、または「I/(最大隣接ノード数)」の数分の一秒程度のいずれか小さい方が適当と考えられる。また、手順(3)のNの値も小さいほうがよい(理想的にはN=1)。しかし、Nを減少させれば広告されるパケット量が増大するため、Iの値に応じて適度に調節する必要がある。例えばI=0.1〜1秒程度になるようにする。
上述の手順を実施すると、環境パラメータωが変化しなければ場の値がある値の範囲内で振動(ほぼ単振動)するようになる。その際の振動周波数はほぼωの平方根の値になる。その際、振動の振幅は、似たような環境パラメータを持つグループの中心ほど大きく、端ほど小さくなる。
図5は、ノードが1次元に配置された場合の場の値uの振幅の様子を示す。図5に示すように、ωの値が同じノード群がひとつのグループをなし、その振動の振幅について中央ほど大きく端ほど小さいという分布ができる。また、それぞれのグループにおける振動はほとんど同期する。なお、各ノードのωの値がどの程度の範囲であれば「似たような環境パラメータ」であるとみなせるかについては、上の式のaおよびxの値に依存し、aが大きく、xが小さいほど、「似たような環境パラメータ」とみなせるωの範囲が小さくなる。なお、図5はωの値が10である部分の範囲を取り出した図であり、図の左側には図示されていないωの値が20のノードが存在し、図の右側には図示されていないωの値が5のノードが存在する。
隣接ノードとの接続関係が大きくが変化したり、環境パラメータが変化した場合、各ノードの場の値の振動は一時的に乱れるが、少し時間がたつとまた単振動するようになる(単振動に収束する時間は上の式のaに依存する。aが大きいほど収束は早くなる)。例えば環境パラメータとして測定した温度の値を用いる場合、環境の温度分布が変化すればそれに追従して各ノードの場の値uの値の振動が変化し、そして新たなエリアにおいて中心ほど振幅が大きく、端ほど振幅が小さくなるようなuの値の振動の分布が再構築される。
[動作制御部、動作リスト]
以下にノード31の動作制御部33が、動作リストに基づいてノード31の動作を決定することを示す。
ネットワーク内の各ノードは、自身の動作を決定する動作リストを持っている。動作リストの各エントリには、「条件」および「動作」が記述されており、ノードの動作制御部33は、条件がマッチするエントリの動作を実施する。そして、この条件が場の値に関連するものとなる。なお、動作リストに含まれる条件には、場の値だけではなく別のパラメータも考慮することができる。動作リストの具体的な例を以下に示す。
[動作リスト]
・条件:自分が情報を保持しており、自分の場の値よりも大きな場の値を持つノードが隣接ノードに存在する。
→ 動作:持っている情報をより大きな場の値を持つノードへ転送する。
・条件:自分が情報を保持しているが、周囲に自分の場の値よりも大きな場の値を持つノードが存在しない。
→ 動作:情報を保持したまま何もしない(転送しない)。
・条件:自分が情報を保持していない。
→ 動作:何もしない。
この動作リストの場合、図2の例では各グループの中央付近に情報が集まり、グループごとにグループの中央に情報を集めるという一連のサービスが実施される。
上述の「条件」は2種類に大別することができる。ひとつは自分の場の値(またはそれに関連する情報)を条件とするもの、もうひとつは隣接ノードの場の値と自身の場の値の関係を条件とするものである(例えば、隣接ノードの場の値と自身の場の値の差が正か負か、等)。前者で、場の値に関連する情報とは、場の値の瞬時値ではなく例えば振幅の最大値のような値のことである。後者の場合、隣接ノードの場の値を取得する必要がある。もちろん、後者の場合も場の値の瞬時値ではなく、場の値に関連する情報を考えることもできる。いずれにしても、動作制御部33は動作リストの条件判定に必要な情報(値)を場の値制御部32から取得する。本実施形態では、前者および後者の例をそれぞれ示す。
最初に、自分の場の値を条件とする場合の例を示す。
ノードは次のような能力を併せ持っており、環境中に多数ばら撒かれているものとする。
・温度を測定することができる(温度センサー)
・発光することができる(発光デバイス)
このようなデバイスノードが、前述のような手順で場の値uを変動させる。このとき、環境パラメータωは測定した温度の値を用いるものとする。動作リストには、uの値の最大振幅値に関する条件をもつエントリを記述しておく。なお、各ノードのuの値の最大振幅値Aは、A=√(u+v/ω)で容易に求められる(場の値制御部32がこのAの値を動作制御部33へ渡す)。したがって、計算過程の副産物であるvおよびそのノードの環境パラメータωも動作リストの条件に含まれることになる(この場合でも、uの値に関連する情報であることには変わりはない)。具体的な動作リストは以下のようになる。
[動作リスト]
・条件:温度を測定しており、自分の最大振幅値Aが閾値Th以下である。
→ 動作:発光する。
・条件:温度を測定していない、または自分の最大振幅値Aが閾値Thより大きい。
→ 動作:発光しない。
図6は、自分の場の値を条件とする場合でのノードの動作の一例を示す。このノード群では、20℃、10℃、および30℃の3つのグループができている。このノード群に上記のような動作リストを用いることによって、同一の(または似たような)温度となっているエリアの境界付近だけが発光する。つまりデータを一切収集することなく、現地で温度境界を視認することができるようになる。なお、閾値Thは適当な定数である。
次に、自分の場の値と隣接ノードの場の値の関係を条件とする場合の例を示す。
ノードは、温度センサーであり、自身の電池残量を知ることができるものとする。環境パラメータωはノードの電池残量の値を用いるものとする。動作リストには、uの値の最大振幅値に関する条件をもつエントリおよび隣接ノードのuの値と自身のuの値の差に関する条件をもつエントリを記述しておく。最大振幅は上述と同様にして求めることができる。隣接ノードのuの値と自身のuの値の差については、前述の手順(1)において、広告を受信した際に記録をとっているのでそれを用いればよい。具体的な動作リストは以下のようになる。なお、ここで、Dn=u−uとする(nは0から受信した広告の数−1の値をとり、Dnは広告されたそれぞれの隣接ノードのuの値と自身のuの値の差を考慮している)。
[動作リスト]
・条件1:自分が情報(温度データ)を保持しており、場の値収集期間Iの間に他のノードから場の値の広告を受け取った場合で、[u>0かつDn>0]または[u≦0かつDn<0]となるnがひとつでも存在する。
→ 動作:持っている情報パケットをブロードキャストする。このとき、送信元の情報として自身のAの値(最大振幅値)を付加しておく。
・条件2:自分が情報を保持しており、場の値収集期間Iの間に他のノードから場の値の広告を受け取った場合で、[u>0かつDn>0]または[u≦0かつDn<0]となるnがひとつも存在しない(つまりuの値が付近で常に最大となっている)。
→ 動作:情報を保持したまま何もしない(転送しない)
・条件3:自分が情報を保持しているが、場の値収集期間Iの間に他のノードから場の値の広告を受け取らなかった。
→ 動作:情報を保持したまま何もしない(転送しない)
・条件4:情報パケットを受け取った場合で、送信元情報の最大振幅値Anと自身の最大振幅値AがAn<Aである。
→ 動作:受信パケット内の情報を保持する。
・条件5:情報パケットを受け取った場合で、送信元情報の最大振幅値Anと自身の最大振幅値AがAn≧Aである。
→ 動作:受信パケットを破棄する。
この動作リストに基づいて各ノードが動作すると、システム全体の動作は次のようになる。
ノードが温度情報を測定すると、自身のuの値と隣接ノードのuの値の差をとり、条件1〜3のどれに当てはまるかを調べ、該当する動作を実施する。あるノードで条件1を満たすと温度情報をブロードキャストされる。このパケットを受信したノードは条件4または5に当てはまるかを調べ、4に当てはまるならそのパケットを受信し、保持する。温度情報を受信したノードは、「情報を保持している」状態なので、条件1〜3についてチェックする。このノードが条件1に当てはまれば、自身が持つ情報のすべて(または一度に送りきれなければ一部)をブロードキャストする。なお、このとき、他のノードから受信した情報だけでなく、自分が測定した情報も併せて送信する。
このような動作によって、似たような電池残量になっているノード群がグループをなし、そのグループの中央付近に温度データが自律的に集結する(条件1と4によってグループの中央付近へ情報が転送されるため)。
なお、情報はブロードキャストされるので、同一のデータを複数のノードが受信する可能性もあり、最終的に集まったデータは重複を多数含む可能性がある。この場合、各データに適当なIDをつけておけば、転送途中に同一IDのデータを受信したノードは、ひとつだけを残して他を削除することができる。また、データを転送する場合、送信が完了したらすぐに持っていた情報を削除してもよいが、一定期間保持し続けることによって、データの転送の確実性を向上させることができる(何度も同じデータをブロードキャストさせることになるため)。
また、以上述べた実施形態は全て本発明を例示的に示すものであって限定的に示すものではなく、本発明は他の種々の変形態様および変更態様で実施することができる。従って本発明の範囲は特許請求の範囲およびその均等範囲によってのみ規定されるものである。
本実施形態におけるネットワークを示す。 本実施形態で作り出される場の値の分布の一例を示す。 本実施形態のノードの基本構成を示す。 N=2の場合での場の値制御の処理の流れを示す。 ノードが1次元に配置された場合の場の値uの振幅の様子を示す。 自分の場の値を条件とする場合でのノードの動作の一例を示す。
符号の説明
11、21、22、23、31 ノード
12 通信リンク
32 場の値制御部
33 動作制御部
34 環境入力部

Claims (8)

  1. ネットワーク内のノードの場の値uを制御する方法であって、
    前記場の値uの初期値を決定するステップと、
    前記場の値uを隣接ノードに広告し、
    前記ノードの環境から環境パラメータωを測定し、
    前記隣接ノードから、該隣接ノードの場の値uを受信して記録し、
    前記環境パラメータωが一定範囲内にあるノードの場の値を、任意の分布と一致させるように、前記場の値u、前記隣接ノードの場の値uおよび前記環境パラメータωから新しい場の値uを計算し、
    以前の場の値uを削除し、前記新しい場の値uを記録することにより、
    前記場の値uを更新するステップと、
    を有することを特徴とするノードの場の値を制御する方法。
  2. 前記分布は、前記環境パラメータωが一定範囲内であるノードに対して、該範囲の中央に近いノードほど、大きな値を与える分布であることを特徴とする請求項1に記載のノードの場の値を制御する方法。
  3. 前記新しい場の値uの計算は、a、b、c、xが定数である微分方程式
    Figure 0005086935
    を初期条件
    u(0)=uおよびv(0)=0
    のもとで解u(t)を求め、一定時間後のu(t)の値を新しい場の値uとすることを特徴とする請求項2に記載のノードの場の値を制御する方法。
  4. 前記場の値uの初期値は、一定の範囲内からランダムに決定されることを特徴とする請求項1から3のいずれか1項に記載のノードの場の値を制御する方法。
  5. ノードの場の値uを制御する場の値制御部と、環境パラメータωを測定する環境入力部とを備えているネットワーク内のノードにおいて、
    前記場の値制御部が、前記ノードの場の値uの初期値を決定する手段と、
    前記場の値制御部が、前記場の値uを隣接ノードに広告し、
    前記環境入力部が、前記ノードの環境から前記環境パラメータωを測定し、
    前記場の値制御部が、前記隣接ノードから、該隣接ノードの場の値uを受信して記録し、
    前記場の値制御部が、前記環境パラメータωが一定範囲内にあるノードの場の値を、任意の分布と一致させるように、前記場の値u、前記隣接ノードから広告された場の値uおよび前記環境パラメータωから新しい場の値uを計算し、
    前記場の値制御部が、以前の場の値uを削除し、前記新しい場の値uを記録することにより、
    前記場の値uを更新する手段と、
    を備えることを特徴とするノード。
  6. 条件および該条件が満たされた場合の動作が記載された動作リストおよび該動作を制御する動作制御部をさらに有し、前記条件は、前記場の値uに基づくものであることを特徴とする請求項5に記載のノード。
  7. 条件および該条件が満たされた場合の動作が記載された動作リストおよび該動作を制御する動作制御部をさらに有し、前記条件は、前記場の値uおよび前記隣接ノードの場の値に基づくものであることを特徴とする請求項5に記載のノード。
  8. ネットワーク内のコンピュータを、
    前記コンピュータの場の値uの初期値を決定する手段と、
    前記場の値uを隣接コンピュータに広告し、
    前記コンピュータの環境から環境パラメータωを測定し、
    前記隣接コンピュータから、該隣接コンピュータの場の値uを受信して記録し、
    前記環境パラメータωが一定範囲内にあるコンピュータの場の値を、任意の分布と一致させるように、前記場の値u、前記隣接コンピュータの場の値uおよび前記環境パラメータωから新しい場の値uを計算し、
    以前の場の値uを削除し、前記新しい場の値uを記録することにより、
    前記場の値uを更新する手段と、
    して機能させ、前記コンピュータの場の値uを制御することを特徴とするプログラム。
JP2008206697A 2008-08-11 2008-08-11 膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラム Expired - Fee Related JP5086935B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008206697A JP5086935B2 (ja) 2008-08-11 2008-08-11 膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラム
US12/539,178 US8190729B2 (en) 2008-08-11 2009-08-11 Method for controlling network comprised of enormous nodes, and node and control program to perform said method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008206697A JP5086935B2 (ja) 2008-08-11 2008-08-11 膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラム

Publications (2)

Publication Number Publication Date
JP2010044483A JP2010044483A (ja) 2010-02-25
JP5086935B2 true JP5086935B2 (ja) 2012-11-28

Family

ID=41653917

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008206697A Expired - Fee Related JP5086935B2 (ja) 2008-08-11 2008-08-11 膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラム

Country Status (2)

Country Link
US (1) US8190729B2 (ja)
JP (1) JP5086935B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5682919B2 (ja) * 2011-02-15 2015-03-11 Kddi株式会社 アクティブノード決定方法、該方法のための通信装置およびプログラム
US20180124587A1 (en) * 2015-03-23 2018-05-03 Romano Rapallini Network device, computer network and method for controlling environments

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005184727A (ja) * 2003-12-24 2005-07-07 Hitachi Ltd 無線通信システム、無線ノード、無線通信システムの構築方法及びノードの位置測定方法
JP2005294956A (ja) * 2004-03-31 2005-10-20 Mitsui Eng & Shipbuild Co Ltd 分散データ収集システムおよび同システムの構築方法
CA2571654A1 (en) * 2004-06-22 2005-12-29 British Telecommunications Public Limited Company Wireless ad hoc network
DE102004035531B4 (de) * 2004-07-22 2006-10-26 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Ermitteln einer aktuellen Position eines mobilen Gerätes
US20060271661A1 (en) * 2005-05-27 2006-11-30 International Business Machines Corporation Method for adaptively modifying the observed collective behavior of individual sensor nodes based on broadcasting of parameters
JP2006343970A (ja) * 2005-06-08 2006-12-21 Mitsubishi Electric Corp 通信システム、ノード、変更通知方法及びプログラム並びに記憶媒体
US20070078540A1 (en) * 2005-10-05 2007-04-05 Invensys Systems, Inc. Utility for comparing deployed and archived parameter value sets within a field device editor
EP3247146B1 (en) * 2007-01-04 2020-04-29 Qualcomm Incorporated Method and apparatus for distributed spectrum sensing for wireless communication

Also Published As

Publication number Publication date
US8190729B2 (en) 2012-05-29
JP2010044483A (ja) 2010-02-25
US20100036937A1 (en) 2010-02-11

Similar Documents

Publication Publication Date Title
KR101940823B1 (ko) 모바일 컴퓨팅 장치 센서를 이용한 프라이빗 스페이스의 맵 생성
KR101476368B1 (ko) 분산 컴퓨팅 시스템에서 신뢰 관리를 위한 방법 및 시스템
US20220187886A1 (en) Methods, systems, articles of manufacture and apparatus to reduce temperature of a networked device
Ranga et al. A hybrid timer based single node failure recovery approach for WSANs
CN105164989B (zh) 减少服务器-客户端会话的数目
JP2019522392A (ja) センサネットワークにおける自動適応クラスタリングを達成するための方法およびシステム
JP4954328B2 (ja) 通信ネットワークにおけるデータ管理のための方法およびシステム
JP5086935B2 (ja) 膨大なノード群で構成されるネットワークを制御する方法、該方法を実行するノードおよび制御プログラム
JP5154313B2 (ja) Sipメッセージ振分方法およびsipメッセージ振分装置
Kumar et al. An optimized replica allocation algorithm amidst of selfish nodes in MANET
Anh et al. Context-aware mobility in Internet of Thing: A survey
Chilipirea et al. Social-based routing algorithm for energy preservation in mobile opportunistic networks
Gungor Efficient available energy monitoring in wireless sensor networks
Magadán et al. Clustered wsn for building energy management applications
JP6709689B2 (ja) 計算機システム及び計算機システムの制御方法
Alouf et al. Fitting genetic algorithms to distributed on-line evolution of network protocols
JP5303416B2 (ja) ネットワーク内において所定の機能を実行する装置が分散する様に変更する方法、該方法のための通信装置及びプログラム
Buvana et al. An efficient cluster based service discovery model for mobile ad hoc network
Gungor A forecasting-based monitoring and tomography framework for wireless sensor networks
Meka et al. ROMAN: routing and opportunistic management of airborne networks
JP5522800B2 (ja) 所定の機能を実行する通信装置を、通信装置が有する値に基づく密度で選択する方法、該方法のための通信装置及びプログラム
Singh et al. Performance analysis of AODV & DSR routing protocols in wireless sensor networks
KR20140097909A (ko) 무선 메쉬 네트워크 환경에서 가용 대역폭을 고려한 플로우별 라우팅 장치 및 방법
Feng On data caching for mobile clouds
Dragan et al. Multimedia sharing over opportunistic networks

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100824

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110304

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120730

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120828

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120907

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150914

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees