"通信リンクにより接続している隣接装置のポテンシャル変数及び補助変数を保存し、隣接装置からポテンシャル変数及び補助変数を受信する度に、保存している該隣接装置のポテンシャル変数及び補助変数を更新する第1手段と、自装置のポテンシャル変数、補助変数及び密度制御変数を保存し、自装置のポテンシャル変数及び補助変数を隣接装置に送信する第2手段と、各隣接装置のポテンシャル変数及び補助変数、並びに、自装置のポテンシャル変数、補助変数及び密度制御変数に基づき自装置のポテンシャル変数及び補助変数を所定の計算式により更新する第3手段と、自装置のポテンシャル変数と、各隣接装置のポテンシャル変数に基づき所定の機能の実行を行うか否かを判定する第4手段と、を備えており、第4手段は、自装置のポテンシャル変数が、全隣接装置のポテンシャル変数より大きいこと、或いは、小さいことを、前記所定の機能の実行を行う条件の1つとし、前記所定の計算式は、自装置のポテンシャル変数の更新の際、該ポテンシャル変数が一定の閾値以上である場合0である項および乱数項を含む、通信装置。前記所定の計算式は、複数の前記通信装置から構成されるネットワークにおける各通信装置のポテンシャル変数を、極大値と極小値が繰り返す様に分布させるものであり、前記極大値と極小値の繰り返し密度は、前記密度制御変数により変化する、請求項1に記載の通信装置。A、ΔT、Δx、h及びkを正の定数とすると、隣接装置nの補助変数vnt、自装置のポテンシャル変数uit、自装置の補助変数vit及び自装置の密度制御変数citから、自装置の更新後のポテンシャル変数uit2Icを求める計算式は、であり、隣接装置nのポテンシャル変数unt、自装置のポテンシャル変数uitから、自装置の更新後の補助変数vitIcを求める計算式は、であり、であり、δtは-1≦δt≦1を満たす乱数である請求項1又は2に記載の通信装置。A、ΔT、Δx、h及びkを正の定数とすると、隣接装置nの2つの補助変数vnt及びwnt、自装置のポテンシャル変数uit、自装置の2つの補助変数vit及びwit、自装置の密度制御変数citから自装置の更新後のポテンシャル変数uit2Ic及び補助変数wit2Icを求める計算式は、それぞれ、であり、隣接装置nのポテンシャル変数unt、自装置のポテンシャル変数uitから、自装置の更新後の補助変数vitIcを求める計算式は、であり、であり、δtは-1≦δt≦1を満たす乱数である請求項1又は2に記載の通信装置。第4手段は、自装置のポテンシャル変数を更新することによる値の変化を、所定の閾値により大小判定し、変化が小さいことを前記所定の機能の実行を行う条件の1つとする、請求項1から4のいずれか1項に記載の通信装置。密度制御変数を、自装置の内部又は外部の監視対象の値により決定する、請求項1から5のいずれか1項に記載の通信装置。それぞれがポテンシャル変数、補助変数及び密度制御変数を管理する複数の通信装置を含むシステムにおいて、所定の機能を実行する通信装置を選択する方法であって、各通信装置が、通信リンクにより接続している隣接装置にポテンシャル変数及び補助変数を広告する第1ステップと、各通信装置が、隣接装置からポテンシャル変数及び補助変数を受信した場合において、該隣接装置のポテンシャル変数及び補助変数を既に保存している場合には、保存している該隣接装置のポテンシャル変数及び補助変数を更新し、保存していない場合には、該隣接装置のポテンシャル変数及び補助変数を保存する第2ステップと、各通信装置が、各隣接装置のポテンシャル変数及び補助変数、並びに、自装置のポテンシャル変数、補助変数及び密度制御変数に基づき、自装置のポテンシャル変数及び補助変数を所定の計算式により更新する第3ステップと、を繰り返し、各通信装置が、自装置のポテンシャル変数と、各隣接装置のポテンシャル変数に基づき所定の機能の実行を行うか否かを判定する第4ステップを有し、第4ステップにおいて、所定の機能の実行を行うと判定する条件の1つは、ポテンシャル変数が、全隣接装置のポテンシャル変数より大きいこと、或いは、小さいことであり、前記所定の計算式は、自装置のポテンシャル変数の更新の際、該ポテンシャル変数が一定の閾値以上である場合0である項および乱数項を含む、方法。前記所定の計算式は、ポテンシャル変数の値を高さとすると、各通信装置のポテンシャル変数の分布を、山と谷が繰り返す形状にするものであり、前記山と谷が生じる密度は、前記密度制御変数により変化する、請求項7に記載の方法。請求項1から6のいずれか1項に記載の通信装置としてコンピュータを機能させるプログラム。しかしながら、前記出願特願2009-253739では、各ノードがポテンシャル変数を自律分散的に変化させ、複数の山状のポテンシャルの空間分布を作り出すことによって上述のような、サーバの配置を実現する山の頂上に位置するノードがサーバとなる。しかし、前記出願では、起動直後および状況が変化する度に各ノードがポテンシャル変数の値を初期化しなければならない。これは次のような問題を引き起こす可能性がある。全ノードが起動する時刻は必ずしも同時ではない。起動時刻がノードごとに大きくずれると、各ノードのポテンシャルの値絶対値が非常に小さくなる。そのため、山状のポテンシャルの空間分布は形成されるが、ポテンシャルの起伏が小さすぎて識別できなくなる場合がある。状況の変化とは、クラスタ変数Cの変化にあたるクラスタ変数Cは山と山の間隔を決めるパラメータである。従来手法では、変数Cが変化する度に、ポテンシャル変数の値を乱数で初期化する。これはすなわち、それまでに生成されていたポテンシャル分布を完全に破棄して、最初からやり直すことを意味する。そのため、変数Cが変化するとサーバ機能をどのノードも一度放棄することになる。また、頻繁に変数Cの値が変化してしまうと、ポテンシャル変数すなわちポテンシャルの空間分布が定常状態に達することができなくなり、やはりサーバを決めることができなくなってしまう。したがって、本発明は、ネットワーク全体を管理する管理装置を設けることなく、ネットワークを構成する各通信装置の中で、所定の機能を実行する通信装置を、通信装置のポテンシャル変数の初期値に依存することなく、配置する方法と、そのための通信装置及びプログラムを提供することを目的とする。上記目的を実現するため本発明による通信装置は、通信リンクにより接続している隣接装置のポテンシャル変数及び補助変数を保存し、隣接装置からポテンシャル変数及び補助変数を受信する度に、保存している該隣接装置のポテンシャル変数及び補助変数を更新する第1手段と、自装置のポテンシャル変数、補助変数及び密度制御変数を保存し、自装置のポテンシャル変数及び補助変数を隣接装置に送信する第2手段と、各隣接装置のポテンシャル変数及び補助変数、並びに、自装置のポテンシャル変数、補助変数及び密度制御変数に基づき自装置のポテンシャル変数及び補助変数を所定の計算式により更新する第3手段と、自装置のポテンシャル変数と、各隣接装置のポテンシャル変数に基づき所定の機能の実行を行うか否かを判定する第4手段とを備えており、第4手段は、自装置のポテンシャル変数が、全隣接装置のポテンシャル変数より大きいこと、或いは、小さいことを、前記所定の機能の実行を行う条件の1つとし、前記所定の計算式は、自装置のポテンシャル変数の更新の際、該ポテンシャル変数が一定の閾値以上である場合0である項および乱数項を含む。また、前記所定の計算式は、複数の前記通信装置から構成されるネットワークにおける各通信装置のポテンシャル変数を、極大値と極小値が繰り返す様に分布させるものであり、前記極大値と極小値の繰り返し密度は、前記密度制御変数により変化することも好ましい。また、A、ΔT、Δx、h及びkを正の定数とすると、隣接装置nの補助変数vnt、自装置のポテンシャル変数uit、自装置の補助変数vit及び自装置の密度制御変数citから、自装置の更新後のポテンシャル変数uit2Icを求める計算式は、であり、隣接装置nのポテンシャル変数unt、自装置のポテンシャル変数uitから、自装置の更新後の補助変数vitIcを求める計算式は、であり、であり、δtは-1≦δt≦1を満たす乱数であることも好ましい。また、A、ΔT、Δx、h及びkを正の定数とすると、隣接装置nの2つの補助変数vnt及びwnt、自装置のポテンシャル変数uit、自装置の2つの補助変数vit及びwit、自装置の密度制御変数citから自装置の更新後のポテンシャル変数uit2Ic及び補助変数wit2Icを求める計算式は、それぞれ、であり、隣接装置nのポテンシャル変数unt、自装置のポテンシャル変数uitから、自装置の更新後の補助変数vitIcを求める計算式は、であり、であり、δtは-1≦δt≦1を満たす乱数であることも好ましい。また、第4手段は、自装置のポテンシャル変数を更新することによる値の変化を、所定の閾値により大小判定し、変化が小さいことを前記所定の機能の実行を行う条件の1つとすることも好ましい。また、密度制御変数を、自装置の内部又は外部の監視対象の値により決定することも好ましい。上記目的を実現するため本発明による方法は、それぞれがポテンシャル変数、補助変数及び密度制御変数を管理する複数の通信装置を含むシステムにおいて、所定の機能を実行する通信装置を選択する方法であって、各通信装置が、通信リンクにより接続している隣接装置にポテンシャル変数及び補助変数を広告する第1ステップと、各通信装置が、隣接装置からポテンシャル変数及び補助変数を受信した場合において、該隣接装置のポテンシャル変数及び補助変数を既に保存している場合には、保存している該隣接装置のポテンシャル変数及び補助変数を更新し、保存していない場合には、該隣接装置のポテンシャル変数及び補助変数を保存する第2ステップと、各通信装置が、各隣接装置のポテンシャル変数及び補助変数、並びに、自装置のポテンシャル変数、補助変数及び密度制御変数に基づき、自装置のポテンシャル変数及び補助変数を所定の計算式により更新する第3ステップと、を繰り返し、各通信装置が、自装置のポテンシャル変数と、各隣接装置のポテンシャル変数に基づき所定の機能の実行を行うか否かを判定する第4ステップを有し、第4ステップにおいて、所定の機能の実行を行うと判定する条件の1つは、ポテンシャル変数が、全隣接装置のポテンシャル変数より大きいこと、或いは、小さいことであり、前記所定の計算式は、自装置のポテンシャル変数の更新の際、該ポテンシャル変数が一定の閾値以上である場合0である項および乱数項を含む。また、前記所定の計算式は、ポテンシャル変数の値を高さとすると、各通信装置のポテンシャル変数の分布を、山と谷が繰り返す形状にするものであり、前記山と谷が生じる密度は、前記密度制御変数により変化することも好ましい。本発明のプログラムによれば、上記通信装置としてコンピュータを機能させることを特徴とする。本発明では、各ノードのポテンシャル変数の初期値に依存せず、既存手法と同等のポテンシャルの空間分布を生成する。初期値に依存しないため、起動直後はポテンシャル変数を0などの適当な数値にしておくだけでよい。また、既存手法のように変数Cが変化する度にポテンシャル変数に乱数をセットする必要はない。そのため、変数Cが変化しても、それまでに形成されていたポテンシャルの空間分布は維持され、そこから新たな空間分布へと連続的に変化する。したがって、サーバも空間分布の変化に伴って刻々と移動するため、サーバが決定できないという事態を避けることができる。本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。図1は、本発明による通信システムを示す図である。本発明による通信システムは、図1において四角形で表されている本発明による通信装置を複数台含んでいる。なお、図1において、各通信装置を接続する線は通信リンクである。本発明の通信装置により構成されるネットワークにおいては、例えば、P2Pネットワークや、無線のアドホックネットワークの様に、ネットワーク構成、つまり、通信装置間の通信リンクや、ネットワークに参加している通信装置が、時間の経過により変化する可能性がある。なお、以下の説明において、隣接装置とは、ある通信装置から見て、通信リンクにより接続されている通信装置を意味するものとする。つまり、図1の縦線で塗り潰された四角形に対応する通信装置は、図1の斜線で塗り潰された四角形に対応する通信装置の隣接装置である。図2に、本発明による通信装置の簡略化した構成を示す。図2に示す様に、本発明による通信装置は、隣接装置変数管理部1と、変数計算部2と、自装置変数管理部3と、実行判定部4とを備えている。また、以下に説明する本発明の第1実施形態において、各通信装置は、ポテンシャル変数uと、補助変数vと、密度制御変数クラスタ変数Cを管理している。ここで、ポテンシャル変数とは、各通信装置が、所定の機能の実行を行うか否かを判定するために使用する値であり、補助変数とは、ポテンシャル変数の計算に利用する変数であり、密度制御変数とは、所定の機能を実行する通信装置の密度を変化させる変数である。ここで、第1実施形態において、密度制御変数は、各通信装置にあらかじめ設定されている値とする。隣接装置変数管理部1は、隣接装置のポテンシャル変数及び補助変数を、当該隣接装置の識別子に関連付けて保持している。具体的には、隣接装置変数管理部1は、隣接装置が所定のスケジュールに基づいて広告する、当該隣接装置のポテンシャル変数及び補助変数を含む信号を受信する度に、保持している当該隣接装置のポテンシャル変数及び補助変数を受信した値に更新し、ある通信装置と通信リンクが新たに設定され、これにより当該通信装置から初めて広告を受信した場合には、広告に含まれる当該通信装置の識別子に関連付けて、広告に含まれるポテンシャル変数及び補助変数を保存する。なお、ある隣接装置から所定の期間、ポテンシャル変数及び補助変数を含む信号を受信しなかった場合、当該隣接装置とはもはや隣接関係にはないと看做すことができるので、隣接装置変数管理部1は、当該隣接装置であった通信装置のポテンシャル変数及び補助変数を削除する。自装置変数管理部3は、自装置のポテンシャル変数、補助変数及び密度制御変数を保持しており、所定のスケジュールに基づいて自装置のポテンシャル変数及び補助変数を隣接装置に広告する。変数計算部2は、隣接装置変数管理部1が保持している各隣接装置のポテンシャル変数及び補助変数と、自装置変数管理部3が保持している自装置のポテンシャル変数、補助変数及び密度制御変数に基づき、所定のスケジュールで指定されるタイミングにおいて、自装置のポテンシャル変数及び補助変数の値を新たに決定する。自装置変数管理部3は、管理している自装置のポテンシャル変数及び補助変数を、変数計算部2が決定した値に更新する。なお、自装置変数管理部3は、変数計算部2が決定した値にポテンシャル変数の値を更新する前に、更新前の値を実行判定部4に出力し、実行判定部4は、この値を、自装置のポテンシャル変数の1つ前の値として保持する。実行判定部4は、所定のスケジュールで指定されるタイミングにおいて、保持している自装置の1つ前のポテンシャル変数と、自装置変数管理部3が保持している自装置の最新のポテンシャル変数と、隣接装置変数管理部1が管理している各隣接装置のポテンシャル変数から、所定の機能の実行を行うか否かを判定する。判定時に所定の機能を実行していない場合において、実行するとの判定になった場合には所定の機能の実行を開始し、実行しないとの判定になった場合には、所定の機能の実行は開始しない。同様に、判定時に所定の機能を実行している場合において、実行するとの判定になった場合には、そのまま所定の機能の実行を継続し、実行しないとの判定になった場合には、所定の機能の実行を停止する。続いて、第1実施形態におけるシステムの動作について説明する。なお、初期状態において、各通信装置は、ポテンシャル変数及び補助変数に所定の値、例えば0を設定する。本実施形態において、変数計算部2は、自装置のポテンシャル変数及び補助変数を、更新間隔Icのタイミングにて周期的に計算して更新し、自装置変数管理部3は、m×Icに1回、自装置のポテンシャル変数を広告し、実行判定部4は、n×Icに1回、所定の機能の実行判定を行う。なお、m及びnは整数である。図3に、m=1、n=4の場合における処理の流れを示す。なお、ポテンシャル変数及び補助変数の更新は、異なるタイミングで行っても良い。つまり、時刻TxIcxは整数にポテンシャル変数の更新を行い、時刻TxIcIc/2に補助変数の更新を行う形態であっても良い。続いて、変数計算部2における、自装置のポテンシャル変数及び補助変数の更新処理について説明する。なお、下記の式1および式2は、ある時刻tにおいて、変数uが計算されていたということを前提としている。uitはノードiが時刻tで算出した自ノードの変数uの値である。untは時刻t-Ic~時刻tIcの間にノードiが隣接ノードから受信した変数uの値である。vitIcはノードiが時刻tIcで算出した自ノードの変数vの値である。vntは時刻t~時刻t2Icの間にノードiが隣接ノードから受信した変数vの値である。citはノードiの時刻tにおける密度制御変数Cの値である。まず、変数計算部2は、自装置変数管理部3が保持しているポテンシャル変数uit、補助変数vit、密度制御変数cit、隣接装置変数管理部1が保持している隣接装置の補助変数をvntから、自装置の更新後のポテンシャル変数uit2Icを、以下の式1により求める。その後、自装置変数管理部3は、保持しているポテンシャル変数uitを、求めたuit2Icに更新する。続いて、変数計算部2は、自装置変数管理部3が保持しているポテンシャル変数uit、隣接装置変数管理部1が保持している隣接装置の補助変数untから、自装置の更新後の補助変数vitIcを、以下の式2により求める。ただし、であり、δtは-1≦δt≦1を満たす乱数である。また、上式においてΣは、総ての隣接装置について足し合わせることを意味している。なお、上述した例では、式1は時刻t2Icにおいて実施される計算、式2は時刻tIcにおいて実施される計算を示している。また、Aは正の定数で拡散係数などと呼ばれる事もある。ΔxおよびΔTは空間および時間を離散化するための小さな値であるΔT=Icとしてもよい。これらすべての定数はすべてのノードに共通である。また、A、Δx、ΔTの値のバランスによって、変数uの値のネットワーク内での空間分布つまりポテンシャルの空間分布がクラスタ内で定常状態になるまでの時間が変わる。式1では、関数gおよび関数δの項が含まれている。付加する値は小さな値であり、定数h、kによって小さな値を実現する。h,kもすべてのノードで共通である。関数gの定義の中の定数Xは、形成されるポテンシャルの空間分布の山の高さを決める値であるXもすべてのノードで共通である。山の高さはおよそX/sinΔx/citになると見積もられる。なおhは小さいほどよいが、小さすぎると定常状態に達するのに時間がかかるhはAの10分の1以下が適当だと考えられる。また、kはGthresh2Icよりも十分に小さな値とする例えば10分の1以下など。なお、Gthreshは、実行判定部4での閾値と同じである。なお、上述した例では、式1により自装置のポテンシャル変数uを先に更新し、その後、更新後のポテンシャル変数を使用して、式2により、自装置の補助変数vを更新していたが、補助変数を先に更新し、その後、ポテンシャル変数を計算する形態であっても良い。ただし、その順序は固定的とする。つまり、式1によりポテンシャル変数を先に更新するのであれば、各タイミングにおいてポテンシャル変数を先に更新し、その後、式2による補助変数の更新を行う。式1及び式2は、n次元ユークリッド空間における以下の式3を、時間1階空間2階の偏微分方程式と、空間2階の微分方程式の連立微分方程式に分割し、それらを時間および空間について離散化した式であると考えられる。ただし、P2Pネットワークはユークリッド空間と異なり隣接ノードの数が固定ではないためn次元ユークリッド空間では隣接点はすべての点について2n個となる、各ノードはそれぞれすべての隣接ノードの変数u、vと自ノードのu、vについての差分を求め、足し合わせている式1と式2のシグマ記号の部分に相当する。ただし、h、kは、小さな正の定数である。式3で、であり、微分演算子∇2は、ラプラシアンと呼ばれる微分演算子であり、n次元ユークリッド空間では以下の式4の様に定義される。同様に、∇4は以下の式5の様に定義される。したがって、は以下の式6の様に表される。も、式5から式6と同様にして求められる。各通信装置が、式1及び2に従い、ポテンシャル変数及び補助変数を更新していくと、各通信装置のポテンシャル変数の空間分布は、密度制御変数Cの値により決まる密度にて極大値及び極小値が繰り返す様になる。なお、密度制御変数Cの値が大きい程密度は低く、つまり、繰り返し周期が長くなる。図4は、各通信装置がそれぞれ4つの通信装置と通信リンクを設定し、つまり、ネットワーク構成が格子状である場合において、定常状態となったときの、ある一列の通信装置のポテンシャル変数の分布を示している。よって、例えば、通信装置Eは、通信装置D及びFの隣接装置である。ポテンシャル変数の値を高さとすると、図4は、12台の通信装置毎に山及び谷が生じている様子を示している。なお、図4は、ネットワークが格子状であるため、ポテンシャル変数は、正弦波状に分布しているが、実際には、通信リンクの設定状態により、図4に示すものより歪んだ分布となる。しかしながら、通信リンクの設定状態に係らず、ポテンシャル変数は、極大値及び極小値が繰り返す様に分布し、その密度については、密度制御変数Cにより制御することが可能である。なお、ΔT、Δx及びAの値により定常状態になるまでの時間が決定される。続いて、実行判定部4における所定の機能を実行するか否かの判定について説明する。まず、実行判定部4は、上述した様に、保持している自装置の1つ前のポテンシャル変数uitと、自装置変数管理部3が保持している自装置の最新のポテンシャル変数uit2Icと、ポテンシャル変数の更新間隔Icに基づき、自装置のポテンシャル変数の時間変化率=uit2Ic-uit/Icを求め、求めた時間変化率の絶対値が閾値Gthresh以下であるか否かを判定する。閾値より大きい場合には、ポテンシャル変数の分布が定常状態にないと判定できるため、所定の機能を実行しないと判定する。なお、この閾値は、理想的には0とすべきであるが、現実的には0とすることはできず、0に近い所定の値、例えば、RAND_MAX/Ic×0.0001等に設定するRAND_MAXは適当な実数定数であり、設計時に設定しておく。。なお、この閾値が低すぎると所定の機能の実行がなかなか開始されなくなり、高すぎると、多数の通信装置において無駄に所定の機能の実行が開始されることになる。時間変化率の絶対値が閾値以下である場合、実行判定部4は、自装置変数管理部3が保持している自装置の最新のポテンシャル変数uit2Icと、隣接装置変数管理部1が保持している全隣接装置のポテンシャル変数を比較し、自装置変数管理部3が保持している自装置の最新のポテンシャル変数uit2Icが最大である場合、所定の機能を実行すると判定し、それ以外の場合には、所定の機能を実行しないと判定する。これは、自装置が、ネットワークのポテンシャル変数の分布における極大値に該当する場合には、所定の機能を実行すると判定するものであるが、極小値の場合に所定の機能を実行すると判定する形態であっても、極大値及び極小値の両方において所定の機能を実行すると判定する形態であっても良い。なお、本実施形態においては、ポテンシャル変数の分布において山の頂点となっている通信装置が所定の機能を実行しているため、この所定の機能にアクセスしたい場合、通信装置は、隣接装置の中で、ポテンシャル変数が最大の通信装置に信号を送信すれば良い。信号を受信した通信装置は、自装置が所定の機能を実行していない場合、さらに、隣接装置の中で、ポテンシャル変数が最大の通信装置に信号を転送することで、最終的には、所定の機能を実行している通信装置に信号が到達することになる。続いて、本発明の第2実施形態について説明する。第1実施形態においては、1つの補助変数vのみを使用していたが、第2実施形態においては、2つの補助変数v及びwを利用する。したがって、隣接装置変数管理部1は、隣接装置のポテンシャル変数及び2つの補助変数を保持し、自装置変数管理部3は、自装置のポテンシャル変数、2つの補助変数及び密度制御変数を保持し、所定のスケジュールに基づいて自装置のポテンシャル変数及び2つの補助変数を隣接装置に広告する。また、変数計算部2は、隣接装置変数管理部1が保持している各隣接装置のポテンシャル変数及び2つの補助変数と、自装置変数管理部3が保持している自装置のポテンシャル変数、2つの補助変数及び密度制御変数に基づき、所定のスケジュールで指定されるタイミングにおいて、自装置のポテンシャル変数及び2つの補助変数の値を新たに決定する。本実施形態においては、各通信装置が広告する変数が増え、広告するデータ量と、変数の計算量が増加する。しかしながら、ΔT、Δx及びAが同一である場合、定常状態に収束する時間は第1実施形態より短くなる。以下に、第2実施形態におけるポテンシャル変数、補助変数の更新方法を説明する。その他の処理は第1実施形態と同じである。まず、初期状態において、各通信装置は、2つの補助変数及びポテンシャル変数に所定値、例えば0を設定する。ある時刻tにおいて、変数uが計算されていたということを前提としている。uitはノードiが時刻tで算出した自ノードの変数uの値である。untは時刻t-Ic~時刻tIcの間にノードiが隣接ノードから受信した変数uの値である。vitIcはノードiが時刻tIcで算出した自ノードの変数vの値である。vntは時刻t~時刻t2Icの間にノードiが隣接ノードから受信した変数vの値である。witはノードiが時刻tで算出した自ノードの変数wの値である。wntは時刻t~時刻t2Icの間にノードiが隣接ノードから受信した変数wの値である。citはノードiの時刻tにおける密度制御変数Cの値である。また、変数計算部2は、自装置変数管理部3が保持しているポテンシャル変数uit、2つの補助変数vit及びwit、密度制御変数cit、隣接装置変数管理部1が保持している隣接装置の2つの補助変数vnt及びwntから、自装置の更新後のポテンシャル変数uit2I及びwit2Iを、それぞれ、以下の式7及び8により求める。その後、自装置変数管理部3は、保持しているポテンシャル変数uitを求めたuit2Icに、さらに、保持している補助変数witを求めたwit2Icに更新する。続いて、変数計算部2は、自装置変数管理部3が保持しているポテンシャル変数をuit、隣接装置変数管理部1が保持している隣接装置の補助変数をuntから、自装置の更新後の補助変数vitIcを、以下の式9により求める。なお、A、ΔT、Δx、guit、δt、h及びk、さらに、Σの意味は第1実施形態と同じである。なお、第1実施形態と同様、先に式9により補助変数vを更新し、その後、式7及び8により、ポテンシャル変数及び補助変数wの更新を行う形態であっても良い。ただし、式7及び8による更新と、式9による更新の順番は、各タイミングにおいて同じとする。つまり、時刻TxIcxは整数にポテンシャル変数u及び補助変数wの更新を行い、時刻TxIcIc/2に補助変数vの更新を行う形態であっても良い。式7、8及び9は、n次元ユークリッド空間における以下の式10を、時間1階空間2階の偏微分方程式と、空間2階の微分方程式の連立微分方程式に分割し、それらを時間及び空間について離散化した式と考えることができる。なお、本発明におけるシステムは、n次元ユークリッド空間と異なり、隣接する通信装置の数が一定ではないため、式7、8及び9においては、各隣接装置と自装置の変数の差を積算している。なお、Aは、式1と同じく正の定数であり、ラプラシアンに関しては第1実施形態と同様である。上述した2つの実施形態において、各通信装置には、あらかじめ所定の値が密度制御変数Cとして設定されているものとしていた。しかしながら、各通信装置が、密度制御変数Cの値を、例えば、CPUの負荷率、通信用バッファの空き容量、センサが測定した温度等の環境値、通信装置が電池駆動である場合の電池の残量、通信装置が太陽電池で駆動されている場合の発電量等により動的に変更する形態であっても良い。例えば、通信装置が太陽電池で駆動されている場合において、発電量により密度制御変数Cを決定するものとすると、日向にあり発電量の多い領域においては高い密度で所定の機能を実行する通信装置が配置され、日陰にあり発電量の少ない領域においては低い密度で所定の機能を実行する通信装置が配置され、さらに、発電量の変化に応じてその密度が自律的に変更されることになる。同様に、CPUの負荷率により密度制御変数Cを決定するものとすると、負荷に応じて所定の機能を実行する通信装置の密度を制御することが可能になる。なお、本発明による通信装置は、コンピュータを図2の各部として機能させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。さらに、本発明は、ハードウェア及びソフトウェアの組合せによっても実現可能である。また、以上述べた実施形態は全て本発明を例示的に示すものであって限定的に示すものではなく、本発明は他の種々の変形態様および変更態様で実施することができる。従って本発明の範囲は特許請求の範囲およびその均等範囲によってのみ規定されるものである。"