(57)【要約】【課題】分散ノード環境において、ノード間でのデータのやり取りの増加を抑制して、高信頼の分散符号化を実現することができるようにする。【解決手段】ソースノードとして、送信パケットの送信前に他の通信装置から送信された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、冗長パケットを生成して送信する。データベースノードとして、他の通信装置から送信された送信パケット及び冗長パケットのパケット集合から確率的に選択されるパケット集合の部分集合を用いて、符号化データを生成して、符号化データを含む符号化パケットを情報取得ノードへ送信する。【選択図】図２
2013126100.tif 000002
【特許請求の範囲】
【請求項１】
周辺の通信装置と無線通信を行うための通信手段と、
送信情報を含む送信パケットを送信するように前記通信手段を制御するソースノード用第１送信制御手段と、
前記送信パケットの送信前に他の通信装置から送信された送信パケットを検出するソースノード用パケット検出手段と、
冗長パケットを生成するか否かを確率的に決定するソースノード用決定手段と、
前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成するソースノード用冗長パケット生成手段と、
前記ソースノード用冗長パケット生成手段によって生成された前記冗長パケットを送信するように前記通信手段を制御するソースノード用第２送信制御手段と、
他の通信装置から送信された前記送信パケット及び前記冗長パケットを検出するデータベースノード用パケット検出手段と、
前記データベースノード用パケット検出手段によって検出された前記送信パケット及び前記冗長パケットからなるパケット集合から確率的に選択される前記パケット集合の部分集合を用いて、符号化データを生成するデータベースノード用符号化生成手段と、
前記符号化データを含む符号化パケットを送信するように前記通信手段を制御するデータベースノード用送信制御手段と、
他の通信装置から送信された前記符号化パケットを検出する情報取得ノード用パケット検出手段と、
前記情報取得ノード用パケット検出手段によって検出された前記符号化パケットの集合に基づいて、前記送信情報を復号すると共に、前記送信情報の復号が成功しなかった場合に、前記パケット検出手段によって新たに検出された符号化パケットを前記符号化パケットの集合に追加して、前記送信情報を復号する情報取得ノード用復号化手段と、
を含む通信装置。
【請求項２】
前記ソースノード用冗長パケット生成手段は、前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から、予め定められた確率分布関数に従って確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成する請求項１記載の通信装置。
【請求項３】
前記ソースノード用決定手段は、前記冗長パケットを生成する確率が所定の確率値となるように、前記冗長パケットを生成するか否かを確率的に決定し、
前記ソースノード用冗長パケット生成手段は、前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から、前記所定の確率値に応じて予め定められた確率分布関数に従って確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成する請求項２記載の通信装置。
【請求項４】
前記送信パケット、前記冗長パケット、及び前記符号化パケットの各々は、誤り検出符号を含み、
前記情報取得ノード用復号化手段は、前記情報取得ノード用パケット検出手段によって検出された前記符号化パケットの集合に基づいて、前記送信情報を復号すると共に誤り検出を行い、前記送信情報の復号が成功しなかった場合に、前記パケット検出手段によって新たに検出された符号化パケットを前記符号化パケットの集合に追加して、前記送信情報を復号すると共に誤り検出を行う請求項１〜請求項３の何れか１項記載の通信装置。
【請求項５】
前記送信パケットは、ソースノードとしての通信装置を識別するためのノード識別情報を含み、
前記冗長パケットは、前記選択された送信パケットの部分集合に対応する、ソースノードとしての通信装置を識別するためのノード識別情報を含み、
前記符号化パケットは、前記選択された前記パケット集合の部分集合を識別するためのパケット識別情報、及び前記パケット集合の部分集合に含まれる前記送信パケット又は前記冗長パケットに含まれるノード識別情報を含む請求項１〜請求項４の何れか１項記載の通信装置。
【請求項６】
前記通信手段は、他の通信装置による送信タイミングに対して時間をずらしてパケットを送信する請求項１〜請求項５の何れか１項記載の通信装置。
【請求項７】
送信情報を含む送信パケットを送信するように、周辺の通信装置と無線通信を行うための通信手段を制御するソースノード用第１送信制御手段、
前記送信パケットの送信前に他の通信装置から送信された送信パケットを検出するソースノード用パケット検出手段、
冗長パケットを生成するか否かを確率的に決定するソースノード用決定手段、
前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成するソースノード用冗長パケット生成手段、及び
前記ソースノード用冗長パケット生成手段によって生成された前記冗長パケットを送信するように前記通信手段を制御するソースノード用第２送信制御手段
を含む複数のソースノードと、
他の通信装置から送信された前記送信パケット及び前記冗長パケットを検出するデータベースノード用パケット検出手段、
前記データベースノード用パケット検出手段によって検出された前記送信パケット及び前記冗長パケットからなるパケット集合から確率的に選択される前記パケット集合の部分集合を用いて、符号化データを生成するデータベースノード用符号化生成手段、及び
前記符号化データを含む符号化パケットを送信するように、周辺の通信装置と無線通信を行うための通信手段を制御するデータベースノード用送信制御手段
を含む複数のデータベースノードと、
他の通信装置から送信された前記符号化パケットを検出する情報取得ノード用パケット検出手段、及び
前記情報取得ノード用パケット検出手段によって検出された前記符号化パケットの集合に基づいて、前記送信情報を復号すると共に、前記送信情報の復号が成功しなかった場合に、前記パケット検出手段によって新たに検出された符号化パケットを前記符号化パケットの集合に追加して、前記送信情報を復号する情報取得ノード用復号化手段
を含む複数の情報取得ノードと、
を含む通信システム
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、通信装置及び通信システムに係り、特に、ソースノードからの送信情報をデータベースノードに保存し、情報取得ノードで送信情報を取得する通信装置及び通信システムに関する。
【背景技術】
【０００２】
従来から、分散符号化技術として、ＬＴ（Ｌｕｂｙ  Ｔｒａｎｓｆｏｒｍ）  ｃｏｄｅが知られている（非特許文献１)。
【０００３】
ＬＴ  ｃｏｄｅでは、図１９（Ａ）に示すように、Ｋ個のソースノードの各々が、それぞれ順番に１パケットをデータベースノードにブロードキャストする。そして、図１９（Ｂ）に示すように、各データベースノードは受信したＫ個のパケットからランダムにいくつか選び排他的論理和をとり、保存する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】S. Punducheri, J. Kliewer, and T. E. Fuja, "Distributed LT codes, "IEEE International Symposium on Information Theory, Seattle WA, USA, 9 - 14 July 2006, pp.987-991.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の非特許文献１に記載の技術では、誤り特性にフロアが残ってしまう、という問題がある。これを解決するためには、ＬＤＰＣ符号などのプリコーディングを前処理として実施すればよいが、このようなプリコーディングを分散ノード環境で行うためには、符号化の度にノード間でのデータのやり取りが大幅に増えてしまうため実現的ではない、という問題がある。
【０００６】
本発明は、上記の問題点を解決するためになされたもので、分散ノード環境において、ノード間でのデータのやり取りの増加を抑制して、高信頼の分散符号化を実現することができる通信装置及び通信システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために本発明に係る通信装置は、周辺の通信装置と無線通信を行うための通信手段と、送信情報を含む送信パケットを送信するように前記通信手段を制御するソースノード用第１送信制御手段と、前記送信パケットの送信前に他の通信装置から送信された送信パケットを検出するソースノード用パケット検出手段と、冗長パケットを生成するか否かを確率的に決定するソースノード用決定手段と、前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成するソースノード用冗長パケット生成手段と、前記ソースノード用冗長パケット生成手段によって生成された前記冗長パケットを送信するように前記通信手段を制御するソースノード用第２送信制御手段と、他の通信装置から送信された前記送信パケット及び前記冗長パケットを検出するデータベースノード用パケット検出手段と、前記データベースノード用パケット検出手段によって検出された前記送信パケット及び前記冗長パケットからなるパケット集合から確率的に選択される前記パケット集合の部分集合を用いて、符号化データを生成するデータベースノード用符号化生成手段と、前記符号化データを含む符号化パケットを送信するように前記通信手段を制御するデータベースノード用送信制御手段と、他の通信装置から送信された前記符号化パケットを検出する情報取得ノード用パケット検出手段と、前記情報取得ノード用パケット検出手段によって検出された前記符号化パケットの集合に基づいて、前記送信情報を復号すると共に、前記送信情報の復号が成功しなかった場合に、前記パケット検出手段によって新たに検出された符号化パケットを前記符号化パケットの集合に追加して、前記送信情報を復号する情報取得ノード用復号化手段と、を含んで構成されている。
【０００８】
本発明に係る通信装置によれば、ソースノード用第１送信制御手段によって、送信情報を含む送信パケットを送信するように前記通信手段を制御する。ソースノード用パケット検出手段によって、前記送信パケットの送信前に他の通信装置から送信された送信パケットを検出する。ソースノード用決定手段によって、冗長パケットを生成するか否かを確率的に決定する。ソースノード用冗長パケット生成手段によって、前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成する。ソースノード用第２送信制御手段によって、前記ソースノード用冗長パケット生成手段によって生成された前記冗長パケットを送信するように前記通信手段を制御する。
【０００９】
そして、データベースノード用パケット検出手段によって、他の通信装置から送信された前記送信パケット及び前記冗長パケットを検出する。データベースノード用符号化生成手段によって、前記データベースノード用パケット検出手段によって検出された前記送信パケット及び前記冗長パケットからなるパケット集合から確率的に選択される前記パケット集合の部分集合を用いて、符号化データを生成する。データベースノード用送信制御手段によって、前記符号化データを含む符号化パケットを送信するように前記通信手段を制御する。
【００１０】
そして、情報取得ノード用パケット検出手段によって、他の通信装置から送信された前記符号化パケットを検出する。情報取得ノード用復号化手段によって、前記情報取得ノード用パケット検出手段によって検出された前記符号化パケットの集合に基づいて、前記送信情報を復号すると共に、前記送信情報の復号が成功しなかった場合に、前記パケット検出手段によって新たに検出された符号化パケットを前記符号化パケットの集合に追加して、前記送信情報を復号する。
【００１１】
このように、ソースノードとして、送信パケットの送信前に他の通信装置から送信された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、冗長パケットを生成して送信すると共に、データベースノードとして、他の通信装置から送信された送信パケット及び冗長パケットのパケット集合から確率的に選択されるパケット集合の部分集合を用いて、符号化データを生成して、符号化データを含む符号化パケットを情報取得ノードへ送信することにより、分散ノード環境において、ノード間でのデータのやり取りの増加を抑制して、高信頼の分散符号化を実現することができる。
【００１２】
本発明に係るソースノード用冗長パケット生成手段は、前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から、予め定められた確率分布関数に従って確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成するようにすることができる。
【００１３】
本発明に係るソースノード用決定手段は、前記冗長パケットを生成する確率が所定の確率値となるように、前記冗長パケットを生成するか否かを確率的に決定し、前記ソースノード用冗長パケット生成手段は、前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から、前記所定の確率値に応じて予め定められた確率分布関数に従って確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成するようにすることができる。
【００１４】
上記の送信パケット、前記冗長パケット、及び前記符号化パケットの各々は、誤り検出符号を含み、前記情報取得ノード用復号化手段は、前記情報取得ノード用パケット検出手段によって検出された前記符号化パケットの集合に基づいて、前記送信情報を復号すると共に誤り検出を行い、前記送信情報の復号が成功しなかった場合に、前記パケット検出手段によって新たに検出された符号化パケットを前記符号化パケットの集合に追加して、前記送信情報を復号すると共に誤り検出を行うようにすることができる。
【００１５】
上記の送信パケットは、ソースノードとしての通信装置を識別するためのノード識別情報を含み、前記冗長パケットは、前記選択された送信パケットの部分集合に対応する、ソースノードとしての通信装置を識別するためのノード識別情報を含み、前記符号化パケットは、前記選択された前記パケット集合の部分集合を識別するためのパケット識別情報、及び前記パケット集合の部分集合に含まれる前記送信パケット又は前記冗長パケットに含まれるノード識別情報を含むようにすることができる。
【００１６】
上記の通信手段は、他の通信装置による送信タイミングに対して時間をずらしてパケットを送信するようにすることができる。
【００１７】
本発明に係る通信システムは、送信情報を含む送信パケットを送信するように、周辺の通信装置と無線通信を行うための通信手段を制御するソースノード用第１送信制御手段、前記送信パケットの送信前に他の通信装置から送信された送信パケットを検出するソースノード用パケット検出手段、冗長パケットを生成するか否かを確率的に決定するソースノード用決定手段、前記ソースノード用決定手段によって前記冗長パケットを生成すると決定された場合、前記ソースノード用パケット検出手段によって検出された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、前記冗長パケットを生成するソースノード用冗長パケット生成手段、及び前記ソースノード用冗長パケット生成手段によって生成された前記冗長パケットを送信するように前記通信手段を制御するソースノード用第２送信制御手段を含む複数のソースノードと、他の通信装置から送信された前記送信パケット及び前記冗長パケットを検出するデータベースノード用パケット検出手段、前記データベースノード用パケット検出手段によって検出された前記送信パケット及び前記冗長パケットからなるパケット集合から確率的に選択される前記パケット集合の部分集合を用いて、符号化データを生成するデータベースノード用符号化生成手段、及び前記符号化データを含む符号化パケットを送信するように、周辺の通信装置と無線通信を行うための通信手段を制御するデータベースノード用送信制御手段を含む複数のデータベースノードと、他の通信装置から送信された前記符号化パケットを検出する情報取得ノード用パケット検出手段、及び前記情報取得ノード用パケット検出手段によって検出された前記符号化パケットの集合に基づいて、前記送信情報を復号すると共に、前記送信情報の復号が成功しなかった場合に、前記パケット検出手段によって新たに検出された符号化パケットを前記符号化パケットの集合に追加して、前記送信情報を復号する情報取得ノード用復号化手段を含む複数の情報取得ノードと、を含んで構成されている。
【発明の効果】
【００１８】
以上説明したように、本発明の通信装置及び通信システムによれば、ソースノードとして、送信パケットの送信前に他の通信装置から送信された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、冗長パケットを生成して送信すると共に、データベースノードとして、他の通信装置から送信された送信パケット及び冗長パケットのパケット集合から確率的に選択されるパケット集合の部分集合を用いて、符号化データを生成して、符号化データを含む符号化パケットを情報取得ノードへ送信することにより、分散ノード環境において、ノード間でのデータのやり取りの増加を抑制して、高信頼の分散符号化を実現することができる、という効果が得られる。
【図面の簡単な説明】
【００１９】
【図１】（Ａ）ソースノードからデータベースノードへ情報を保存する様子を示す図、及び（Ｂ）情報取得ノードがデータベースノードから情報を引き出す様子を示す図である。
【図２】（Ａ）２パケットを送信するソースノードを発生させる様子を示す図、（Ｂ）各ソースノードの送信パケットを示す図、及び（Ｃ）各データベースノードに保存される符号化データを示す図である。
【図３】本発明の第１の実施の形態に係る通信システムを示す図である。
【図４】本発明の第１の実施の形態に係る通信装置の構成を示すブロック図である。
【図５】冗長な送信パケットを送信しない確率値と確率分布関数との対応関係を示す図である。
【図６】サムプロダクトアルゴリズムに従って復号する方法を説明するための図である。
【図７】符号化パケットを再度取得する様子を示す図である。
【図８】本発明の第１の実施の形態に係る通信装置におけるソースノード時処理ルーチンの内容を示すフローチャートである。
【図９】本発明の第１の実施の形態に係る通信装置におけるデータベースノード時記録処理ルーチンの内容を示すフローチャートである。
【図１０】本発明の第１の実施の形態に係る通信装置におけるデータベースノード時送信処理ルーチンの内容を示すフローチャートである。
【図１１】本発明の第１の実施の形態に係る通信装置における情報取得ノード時処理ルーチンの内容を示すフローチャートである。
【図１２】（Ａ）各ソースノードから１つの送信パケットが送信される様子を示す図、（Ｂ）各ソースノードから複数の送信パケットが送信される様子を示す図、及び（Ｃ）各ソースノードから複数の送信パケットが送信される様子を示す図である。
【図１３】（Ａ）各データベースノードから１つの符号化パケットが送信される様子を示す図、（Ｂ）各データベースノードから複数の符号化パケットが送信される様子を示す図、及び（Ｃ）各データベースノードから複数の符号化パケットが送信される様子を示す図である。
【図１４】本発明の第２の実施の形態に係る通信システムを示す図である。
【図１５】本発明の第３の実施の形態に係る通信システムを示す図である。
【図１６】他の例に係る通信システムを示す図である。
【図１７】情報取得ノードの受信パケット数／ソースノードのパケット数に対するビット誤り率を示すグラフである。
【図１８】ＳＮＲに対する実効スループットを示すグラフである。
【図１９】（Ａ）従来技術におけるソースノードがパケットを送信する様子を示す図、及び（Ｂ）データベースノードがデータを保存する様子を示す図である。
【発明を実施するための形態】
【００２０】
以下、図面を参照して、本発明の好適な実施の形態について説明する。なお、本発明を適用した通信装置を複数の車両に各々搭載し、複数の通信装置の間で無線通信を行って、分散符号化を実現する通信システムを例に説明する。
【００２１】
＜発明の概要＞
まず、本発明では、図１（Ａ）、（Ｂ）に示すような、分散データベースネットワークにおける分散符号化を実現する。図１（Ａ）に示すように、ソースノードからデータベースノードへ情報を送信することにより、データベースノードに情報を保存する。図１（Ｂ）に示すように、情報取得ノードが、データベースノードから情報を引き出す。このとき、分散的な符号化を可能にすると共に、どのデータベースノードからも情報が引き出せるようにする。また、ノードの故障や離脱を保障すると共に、効率的な再送を実現する。
【００２２】
また、本発明では、誤り訂正符号化技術を用いて、高信頼であり、かつ、分散処理可能なデータベースシステムを実現する。このようなデータベースシステムを実現するための各ノードの処理について、図２を用いて説明する。
【００２３】
ここでは、情報をデータベースに保存したいＫ個のソースノード（情報源ノード）と、Ｎ個のデータベースノードとが存在する場合について説明する。
【００２４】
まず、図２（Ａ）に示すように、ソースノードが、各１パケットずつの情報を所持しているものとして、ある確率ｐ＜＜１に応じて、２パケットを送信するノードを発生させる。
【００２５】
そして、図２（Ｂ）に示すように、Ｋ個のソースノードは、順番にデータベースノードへ送信する。このとき、１パケットを送信するソースノードはそのまま送信する。一方、２パケットを送信するソースノードは、１パケットはそのまま送信すると共に、それ以前のソースノードから受信したパケットから複数をランダムに選択し、排他的論理和をとって、もう１パケットを送信する。
【００２６】
そして、図２（Ｃ）に示すように、各データベースノードは、ソースノードから送信された（Ｋ＋Ｋ‘）パケットからランダムにいくつか選び、排他的論理和をとって保存する。
【００２７】
このように、本発明では、情報アップロードの段階において、分散プリコーティング法を導入し、情報源に相関を持たせることができ、復号の際の事前情報を増やすことができる。これによって、符号化の分散処理を可能にしながら、高信頼を実現する。
【００２８】
〔第１の実施の形態〕
＜システム構成＞
【００２９】
図３に示すように、第１の実施の形態に係る通信システムでは、所定の情報保持エリア内の各車両に搭載された通信装置１０が、車車間通信により、ソースノードとして、送信情報を含むパケットを、他の通信装置１０に送信し、当該他の通信装置１０が、データベースノードとして、送信情報を含むパケットを保存する。通信装置１０が、情報取得ノードとして、他の通信装置１０へ情報の取得を要求すると、当該他の通信装置１０が、データベースノードとして保存している送信情報を含むパケットを送信し、情報取得ノードとしての通信装置１０が、情報を取得する。このように、第１の実施の形態に係る通信システムは、分散ノードでデータベースを管理するシステムを実現する。
【００３０】
送信情報としては、例えば、自装置を搭載している車両に設けられ、かつ、自装置の位置を測定するためのＧＰＳから得られた位置情報などが挙げられる。
【００３１】
また、図４に示すように、通信装置１０は、周辺の他の通信装置１０と無線通信を行うためのデータ通信部１４と、ソースノード、データベースノード、及び情報取得ノードとしての処理を行うコンピュータ１６とを備えている。
【００３２】
データ通信部１４は、無線通信によりブロードキャストを行って、周辺の他の通信装置１０と通信を行う。データ通信部１４は、他の通信装置１０による送信とタイミングをずらしてデータを送信することにより、マルチプルアクセスを実現する。例えば、ＴＤＭＡ、ＣＳＭＡ、ＴＤ／ＣＤＭＡ、ＴＤ／ＯＦＤＭＡなどの方式を用いて、データ通信部１４はデータ送信を行う。なお、時分割と併用して用いられる方法であれば、それ以外の方式であってもよい。
【００３３】
なお、本実施の形態では、データ通信部１４は、無線アドホック通信を行って、周辺の他の通信装置１０と通信を行い、アドホックルーティングによってエリア内にネットワークを形成する場合を例に説明する。
【００３４】
コンピュータ１６は、通信装置１０全体の制御を司るＣＰＵ、後述するソースノード時処理ルーチン、データベースノード時記録処理ルーチン、データベースノード時送信処理ルーチン、及び情報取得ノード時処理ルーチンのプログラム等を記憶した記憶媒体としてのＲＯＭ、ワークエリアとしてデータを一時格納するＲＡＭ、及びこれらを接続するバスを含んで構成されている。このような構成の場合には、各構成要素の機能を実現するためのプログラムをＲＯＭに記憶しておき、これをＣＰＵが実行することによって、各機能が実現されるようにする。
【００３５】
このコンピュータ１６をハードウエアとソフトウエアとに基づいて定まる機能実現手段毎に分割した機能ブロックで説明すると、上記図４に示すように、ソースノードとしてパケットを送信する処理を行うソースノード処理部１８と、データベースノードとして情報を保存する処理を行うデータベースノード処理部２０と、情報取得ノードとして情報を取得する処理を行う情報取得ノード処理部２２とを備えている。
【００３６】
ソースノード処理部１８は、送信情報を含む送信パケットを生成するパケット生成部３０と、冗長な送信パケットを送信するか否かを決定する冗長パケット送信決定部３２と、他の通信装置１０から送信された送信パケットをデータ通信部１４によって受信したことを検出する受信パケット検出部３４と、冗長な送信パケットを送信することを決定した場合に、自装置の送信タイミングより前に他の通信装置１０から受信した送信パケットの集合から部分集合を選択するサブセット選択部３６と、選択された送信パケットの部分集合を用いて冗長な送信パケットを生成する冗長パケット生成部３８と、生成された送信パケットをデータ通信部１４により送信するように制御する送信制御部４０とを備えている。なお、送信制御部４０は、ソースノード用第１送信制御手段及びソースノード用第２送信制御手段の一例である。
【００３７】
パケット生成部３０は、送信すべき送信情報を含む送信パケットを例えば１つ生成する。パケット生成部３０は、自装置のソースノードを識別するノード識別情報を、送信パケットのヘッダやプリアンブル部分などに含める。冗長パケット送信決定部３２は、冗長な２つ目の送信パケットを送信するか否かを確率的に決定する。例えば、５％の確率で、冗長な２つ目の送信パケットを送信するように決定する。
【００３８】
受信パケット検出部３４は、１つ目の送信パケットを送信する時点（自装置の送信タイミング）より前にデータ通信部１４によって受信した、他の通信装置１０から送信された送信パケットを検出する。
【００３９】
サブセット選択部３６は、予め定められた確率分布関数に従って、受信パケット検出部３４により検出した送信パケットの集合から、送信パケットの部分集合をランダムに選択する。確率分布関数は、シミュレーション（パラメータを変化させながら、復号誤り特性を調べる）により決定された、図５に示すような、パラメータＰと分布関数Ω（ｘ）との対応関係により求めればよい。ここで、パラメータＰは、冗長パケットを生成しない確率であり、Ｐ＝０．９５である場合、分布関数Ω（ｘ）＝ｘ60であるため、送信パケットの集合から、一様に６０パケットをランダムに選択する。
【００４０】
冗長パケット生成部３８は、サブセット選択部３６によって選択された送信パケットの部分集合に対して排他的論理和（ＸＯＲ）の計算を行い、冗長な２つ目の送信パケットを生成する。冗長パケット生成部３８は、選択された送信パケットの部分集合に含まれる各送信パケットに対するソースノードを識別するノード識別情報を、冗長な２つ目の送信パケットのヘッダやプリアンブル部分などに含める。
【００４１】
送信制御部４０は、他の通信装置１０の送信タイミングに対してずらした自装置の送信タイミングで、１つ目の送信パケットを送信するようにデータ通信部１４を制御する。冗長な２つ目の送信パケットを送信する場合、送信制御部４０は、更に、自装置の送信タイミングで、２つ目の送信パケットを送信するようにデータ通信部１４を制御する。
【００４２】
データベースノード処理部２０は、他の通信装置１０から送信された送信パケットをデータ通信部１４によって受信したことを検出する受信パケット検出部４２と、他の通信装置１０から受信した送信パケットの集合から部分集合を選択するサブセット選択部４４と、選択された送信パケットの部分集合を用いて符号化データを計算する符号データ計算部４６と、符号化データを記憶するデータ記憶部４８と、データ記憶部４８に記憶された符号化データを含む符号化パケットを生成するパケット生成部５０と、他の通信装置１０からの情報要求に応じて、符号化パケットを送信するようにデータ通信部１４を制御する送信制御部５２とを備えている。なお、符号データ計算部４６は、データベースノード用符号化生成手段の一例である。
【００４３】
受信パケット検出部４２は、データ通信部１４によって受信した、他の通信装置１０から送信された１つ目の送信パケット及び２つ目の送信パケットを検出する。
【００４４】
サブセット選択部４４は、予め定められた確率分布関数に従って、受信パケット検出部４２により検出した送信パケットの集合から、送信パケットの部分集合をランダムに選択する。確率分布関数Ω’（ｘ）は、例えば、以下の（１）式で表わされる。
【００４５】
Ω’（ｘ）
＝Σｍ＝１Ｍδｍｘｍ
＝0.007969ｘ＋0.493570ｘ２＋0.166220ｘ３＋0.072646ｘ４＋0.082558ｘ５＋0.056058ｘ８＋0.037229ｘ9＋0.055590ｘ19＋0.025023ｘ65＋0.0003135ｘ66
・・・（１）
【００４６】
なお、上記（１）式は、参考文献１（R. Palanki and J. Yedidia, "Rateles codes on noisy channels, "in International Symposium on Information Theory (ISIT 2004), Chicago, Illinois, USA, 27 June-2 July 2004, pp.1-12.）に記載されているものと同様であるため、詳細な説明を省略する。
【００４７】
ここで、サブセット選択部４４は、０＜ｑ＜１となる一様にランダムな値ｑを発生させ、（δ１＋…＋δｍ−１）＜ｑ＜（δ１＋…＋δｍ）であれば、選択する送信パケットの数をｍ個とする。
【００４８】
例えば、ｑ＝0.2が発生したとき、上記Ω’（ｘ）では、（δ１＝0.007969）＜（ｑ＝0.2）＜（δ１＋δ２＝0.007969＋0.493570）となり、ｍ＝２となる。つまり、２パケットをランダムに選択する。
【００４９】
符号データ計算部４６は、サブセット選択部４４によって選択された送信パケットの部分集合に対して排他的論理和（ＸＯＲ）の計算を行い、符号化データを生成する。
【００５０】
データ記憶部４８は、符号データ計算部４６によって生成された符号化データが記憶される。また、選択された送信パケットの部分集合を識別するパケット識別情報、及び選択された送信パケットの部分集合の各送信パケットに含まれるノード識別情報が、符号化データと共にデータ記憶部４８に記憶される。符号データ計算部４６によって符号化データが生成される毎に、データ記憶部４８に記憶される符号化データ、パケット識別情報、及びノード識別情報が更新される。
【００５１】
パケット生成部５０は、データ記憶部４８に記憶された符号化データを含む符号化パケットを生成する。パケット生成部５０は、データ記憶部４８に記憶されたパケット識別情報及びノード識別情報を、符号化パケットのヘッダやプリアンブル部分などに含める。
【００５２】
送信制御部５２は、データ通信部１４によって受信した、他の通信装置１０からの情報取得要求を検出すると、他の通信装置１０の送信タイミングとはずらした自装置の送信タイミングで符号化パケットを送信するようにデータ通信部１４を制御する。
【００５３】
情報取得ノード処理部２２は、他の通信装置１０から符号化パケットを受信するために、情報取得要求を送信するようにデータ通信部１４を制御する受信制御部５４と、他の通信装置１０から送信された符号化パケットをデータ通信部１４によって受信したことを検出する受信パケット検出部５６と、他の通信装置１０から受信した符号化パケットの集合から、各ソースノードからの送信情報を復号するパケット復号部５８と、送信情報を誤りなく復号することができたか否かを判定する復号判定部６０と、送信情報を誤りなく復号することができなかった場合に、情報取得要求を再度送信するようにデータ通信部１４を制御する再取得制御部６２と、正しく復号された各ソースノードからの送信情報を記憶する保存データ記憶部６４とを備えている。
【００５４】
受信パケット検出部５６は、データ通信部１４によって受信した、他の通信装置１０から送信された符号化パケットを検出する。
【００５５】
パケット復号部５８は、受信パケット検出部５６により検出した符号化パケットの集合から、符号化パケットに含まれるパケット識別情報及びノード識別情報を用いて、図６に示すようなサムプロダクトアルゴリズムに従って、各ソースノードからの送信情報を復号化する。なお、サムプロダクトアルゴリズムは、参考文献２（和田山正、“誤り訂正技術の基礎”、森北出版株式会社、２０１０年）に記載されているため、詳細な説明を省略する。
【００５６】
また、パケット復号部５８は、各パケットに含まれる誤り検出符号（ＣＲＣ）を用いて、復号化された送信情報の誤り検出を行う。
【００５７】
パケット復号部５８によって送信情報を誤りなく復号することができなかった場合には、再取得制御部６２が、情報取得要求を再度送信するようにデータ通信部１４を制御する。これによって、図７に示すように、周辺の通信装置１０から追加して符号化パケットを受信する。
【００５８】
そして、パケット復号部５８は、受信パケット検出部５６により検出した追加の符号化パケットの集合を含む符号化パケットの集合から、各ソースノードからの送信情報を復号化する。
【００５９】
＜通信システムの作用＞
次に、本実施の形態に係る通信システムの作用について説明する。通信装置１０を搭載した車両の走行中であって、かつ、例えば、所定の情報保持エリア内に存在する場合に、ソースノードとして、コンピュータ１６において、図８に示すソースノード時処理ルーチンが実行される。
【００６０】
まず、ステップ１００において、自装置の送信タイミングまで、ソースノードとしての他の通信装置１０から受信した送信パケットを検出し、復号する。
【００６１】
そして、ステップ１０２において、自装置の送信情報を含む送信パケットを生成する。このとき、自装置のソースノードを示すノード識別情報をヘッダやプリアンブル部分に含めると共に、誤り検出符号を送信パケットに付加する。
【００６２】
ステップ１０４では、上記ステップ１０２で生成された送信パケットを、自装置の送信タイミングに送信する。
【００６３】
ステップ１０６では、確率値（０以上１以下）をランダムに決定し、ステップ１０８において、上記ステップ１０６で決定された確率値が、冗長パケットを送信しない予め定められた確率Ｐ未満であるか否かを判定する。上記ステップ１０６で決定された確率値が、確率Ｐ未満である場合には、冗長な送信パケットを送信せずに、ソースノード時処理ルーチンを終了する。一方、上記ステップ１０６で決定された確率値が、確率Ｐ以上である場合には、ステップ１１０において、確率Ｐに応じて予め定められた確率分布関数Ω（ｘ）に従って、上記ステップ１００で受信した送信パケットの集合から、部分集合をランダムに選択する。
【００６４】
そして、ステップ１１２において、上記ステップ１００で選択した送信パケットの部分集合の排他的論理和を計算して、冗長な送信パケットを生成する。このとき、選択された送信パケットに対応するソースノードを示すノード識別情報をヘッダやプリアンブル部分に含めると共に、誤り検出符号を、冗長な送信パケットに付加する。
【００６５】
ステップ１１４では、上記ステップ１１２で生成された冗長な送信パケットを、自装置の送信タイミングに送信して、ソースノード時処理ルーチンを終了する。
【００６６】
また、通信装置１０は、例えば、所定の情報保持エリア内に存在する場合に、データベースノードとして、コンピュータ１６によって、所定の受信期間（１周期）毎に、図９に示すデータベースノード時記録処理ルーチンを実行する。
【００６７】
ステップ１２０において、所定の受信期間内に、ソースノードとしての他の通信装置１０から受信した複数の送信パケットを検出する。
【００６８】
そして、ステップ１２２において、予め定めた確率分布関数を用いて、ランダムに個数Ｄｃを決定する。次のステップ１２４では、上記ステップ１２０で受信した送信パケットの集合から、Ｄｃ個の送信パケットをランダムに選択する。
【００６９】
そして、ステップ１２６において、上記ステップ１２４で選択したＤｃ個の送信パケットの排他的論理和を計算して、符号化データを生成し、データ記憶部４８に格納する。また、選択された送信パケットを示すパケット識別情報を生成し、生成したパケット識別情報を、選択された各送信パケットに含まれるノード識別情報と一緒にデータ記憶部４８に格納する。なお、データ記憶部４８に、符号化データ、パケット識別情報、及びノード識別情報が既に記憶されている場合には、符号化データ、パケット識別情報、及びノード識別情報が更新されるように記憶される。
【００７０】
また、通信装置１０は、データベースノードとして、コンピュータ１６によって、図１０に示すデータベースノード時送信処理ルーチンを実行する。
【００７１】
ステップ１３０において、情報取得ノードとしての他の通信装置１０から、情報取得要求を受信したか否かを判定する。情報取得要求を受信すると、ステップ１３２へ進み、データ記憶部４８に記憶した符号化データを含む符号化パケットを生成する。このとき、データ記憶部４８に記憶されたパケット識別情報及びノード識別情報をヘッダやプリアンブル部分に含めると共に、誤り検出符号を符号化パケットに付加する。
【００７２】
そして、ステップ１３４において、上記ステップ１３２で生成した符号化パケットを、自装置の送信タイミングで送信して、データベースノード時送信処理ルーチンを終了する。
【００７３】
また、通信装置１０は、例えば、所定の情報保持エリア内に存在する場合に、情報取得ノードとして、コンピュータ１６によって、図１１に示す情報取得ノード時処理ルーチンを実行する。
【００７４】
ステップ１４０において、自装置の送信タイミングで、情報取得要求を周辺の通信装置１０に対して送信する。ステップ１４２において、上記ステップ１４０で送信した情報取得要求に応じて、データベースノードとしての他の通信装置１０から受信した複数の符号化パケットを検出する。
【００７５】
そして、ステップ１４４において、上記ステップ１４２で受信した符号化パケットの集合、又は上記ステップ１４２及び後述するステップ１５０で受信した符号化パケットの集合に基づいて、各ソースノードの送信情報を復号化すると共に、誤り訂正を行う。
【００７６】
ステップ１４６では、上記ステップ１４４において各ソースノードの送信情報を正しく復号化できたか否かを判定する。正しく復号化できなかった場合には、ステップ１４８において、自装置の送信タイミングで、情報取得要求を周辺の通信装置１０に対して再度送信する。ステップ１５０において、上記ステップ１４８で送信した情報取得要求に応じて、データベースノードとしての他の通信装置１０から受信した複数の符号化パケットを検出して、上記ステップ１４４へ戻る。
【００７７】
上記ステップ１４６において、正しく復号化できたと判定された場合には、ステップ１５２において、復号化された各ソースノードの送信情報を、保存データ記憶部６４に記憶して、情報取得ノード時処理ルーチンを終了する。
【００７８】
上記のように、各種処理ルーチンが各通信装置１０で実行されると、各ソースノードからの送信情報が、データベースノードに分散して記憶されると共に、ソースノード及びデータベースノードにおいて分散符号化が実現される。
【００７９】
以上説明したように、第１の実施の形態に係る通信システムによれば、ソースノードとして、送信パケットの送信前に他の通信装置から送信された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、冗長な送信パケットを生成して送信すると共に、データベースノードとして、他の通信装置から送信された送信パケット及び冗長な送信パケットのパケット集合から確率的に選択されるパケット集合の部分集合を用いて、符号化データを生成して、符号化データを含む符号化パケットを情報取得ノードへ送信する。これにより、分散ノード環境において、ノード間でのデータのやり取りの増加を抑制して、高信頼の分散符号化を実現することができる。
【００８０】
また、情報をデータベースノードへアップロードする段階において分散プリコーディング法を導入することで、情報源に相関を持たせることができ、復号の際の事前情報を増やすことができる。これにより、復号誤りや情報消失を補償するための誤り訂正符号化を、効率よく分散的に実施しながら、高信頼を実現することができる。
【００８１】
なお、上記の実施の形態では、図１２（Ａ）に示すように、Ｋ個のソースノードの各々から送信される自身の送信情報を含む送信パケットが１パケットである場合を例に説明したが、これに限定されるものではない。図１２（Ｂ）、（Ｃ）に示すように、ソースノード数と送信パケット数を任意の数に変更してもよい。また、すべてのソースノードが同一数のパケットを持つ場合を例に説明したが、これに限定されるものではなく、ソースノード毎に、自身の送信情報を含む送信パケットのパケット数が異なってもよい。
【００８２】
また、上記の実施の形態では、図１３（Ａ）に示すように、Ｎ個のデータベースノードの各々から送信される符号化パケットが１パケットである場合を例に説明したが、これに限定されるものではない。図１３（Ｂ）、（Ｃ）に示すように、データベースノード数と符号化パケット数を任意の数に変更してもよい。また、すべてのデータベースノードが同一数の符号化パケットを持つ場合を例に説明したが、これに限定されるものではなく、データベースノード毎に、符号化パケットのパケット数が異なってもよい。
【００８３】
また、全ての通信装置が、ソースノード、データベースノード、及び情報取得ノードとして処理を行う場合を例に説明したが、これに限定されるものではない。各通信装置が、ソースノード、データベースノード、及び情報取得ノードの少なくとも１つとして処理を行うようにすればよい。
【００８４】
〔第２の実施の形態〕
次に、第２の実施の形態に係る通信システムについて説明する。なお、第１の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【００８５】
第２の実施の形態では、車内センサネットワークを実現する通信システムに、本発明を適用した場合を例に説明する。
【００８６】
図１４に示すように、第２の実施の形態に係る通信システムは、通信装置及びメモリを有する複数のセンサノード２１０とコントロールユニット２１２とを備えている。
【００８７】
センサノード２１０の通信装置は、データ通信部１４、ソースノード処理部１８、及びデータベースノード処理部２０を備えている。ソースノード処理部１８は、センサ（図示省略）によって検出されたセンサ情報を含む送信パケットをデータ通信部１４により周辺のセンサノード２１０に対して送信するように制御する。データベースノード処理部２０は、周辺のセンサノード２１０から送信された送信パケットから符号化データを計算して記憶すると共に、コントロールユニット２１２からの情報取得要求に応じて、符号化パケットをデータ通信部１４によりコントロールユニット２１２に対して送信するように制御する。
【００８８】
このように、通常時は定期的に分散符号化により各センサノード２１０にセンサ情報が保存される。
【００８９】
コントロールユニット２１２は、データ通信部２１４及び情報取得ノード処理部２２を備えている。情報取得ノード処理部２２は、センサノード２１０に対して情報取得要求を送信するようにデータ通信部２１４を制御する。また、情報取得ノード処理部２２は、センサノード２１０から送信された符号化パケットに基づいて、各センサノード２１０のセンサ情報を復号化して、保存データ記憶部６４に記憶する。
【００９０】
このように、必要な時にコントロールユニット２１２がセンサ情報をセンサノード２１０からダウンロードする。
【００９１】
なお、第２の実施の形態に係る通信システムの他の構成及び作用については、第１の実施の形態と同様であるため、説明を省略する。
【００９２】
このように、第２の実施の形態に係る通信システムによれば、各センサノードによって、ソースノードとして、センサ情報を含む送信パケットの送信前に他の通信装置から送信された送信パケットの集合から確率的に選択される送信パケットの部分集合を用いて、冗長な送信パケットを生成して送信すると共に、データベースノードとして、他の通信装置から送信された送信パケット及び冗長な送信パケットのパケット集合から確率的に選択されるパケット集合の部分集合を用いて、符号化データを生成して、符号化データを含む符号化パケットを、コントロールユニットへ送信する。これにより、分散ノード環境において、ノード間でのデータのやり取りの増加を抑制して、高信頼の分散符号化を実現することができる。また、低消費電力及び低演算量を実現することができる。
【００９３】
〔第３の実施の形態〕
次に、第３の実施の形態に係る通信システムについて説明する。なお、第１の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
【００９４】
第３の実施の形態では、携帯端末が協調アドホック通信を実現する通信システムに、本発明を適用した場合を例に説明する。
【００９５】
図１５に示すように、第３の実施の形態に係る通信システムは、複数の携帯端末３１０を備えている。各携帯端末３１０は、データ通信部１４、ソースノード処理部１８、データベースノード処理部２０、及び情報取得ノード処理部２２を備えている。
【００９６】
各携帯端末３１０が、ソースノードとして、送信情報を含む送信パケットを、他の携帯端末３１０に送信し、当該他の携帯端末３１０が、データベースノードとして、送信情報を含む送信パケットから計算される符号化データを保存する。携帯端末３１０が、情報取得ノードとして、他の携帯端末３１０へ情報の取得を要求すると、当該他の携帯端末３１０が、データベースノードとして、保存している符号化データを含む符号化パケットを送信し、情報取得ノードとしての携帯端末３１０が、符号化パケットを受信して、送信情報を復号する。このように、第３の実施の形態に係る通信システムは、分散ノードでデータベースを管理するシステムを実現する。
【００９７】
なお、第３の実施の形態に係る通信システムの他の構成及び作用については、第１の実施の形態と同様であるため、説明を省略する。
【００９８】
このように、第３の実施の形態に係る通信システムによれば、複数の携帯端末による協調アドホック通信を行う場合に、分散ノード環境において、ノード間でのデータのやり取りの増加を抑制して、高信頼の分散符号化を実現することができる。
【００９９】
なお、図１６に示すように、ソースノードとしての携帯端末３１０が１つであってもよい。この場合には、ソースノードとしての携帯端末３１０から、データベースノードとしての複数の携帯端末３１０に送信パケットが送信され、当該複数の携帯端末３１０の各々から、符号化パケットが、情報取得ノードとしての携帯端末３１０に送信されて、協調アドホック通信が実現される。
【０１００】
＜実験例＞
次に、本発明の実施の形態で提案する分散符号化方法を用いた実験の結果について説明する。
【０１０１】
基本パラメータとして、ソースノード数Ｋを１０とし、アップロードパケット／Ｋ（１ソースノードあたりの送信パケット数）を10000（１パケット＝１ビット）とした。また、データベースノード数を２０とし、１つのデータベースノードあたりの保存パケット数を7500とした。また、伝搬路をＡＷＮＧ（additive white Gaussian noise、加法性ホワイトガウスノイズ）とし、ＳＮＲ＝５ｄＢとした。ソースノードに用いるパラメータＰ＝０．９５とし、ソースノードでのランダム選択数を８０とした。データベースノードでは、ランダム選択数を、参考文献１に記載のランダム分布関数に従って決定するようにして、実験を行った。
【０１０２】
比較手法として、非特許文献１に記載のＬＴ  ｃｏｄｅの手法、及びプリコーディング（ＬＤＰＣ符号）を前処理として実施するＲａｐｔｏｒ  ｃｏｄｅの手法を用いた。
【０１０３】
Ｒ-1（＝情報取得ノードの受信パケット数／ソースノードのパケット数）に対するビット誤り率を、図１７に示す。上記図１７に示すように、従来のＬＴ  ｃｏｄｅ手法では誤り特性にフロアが残ることがわかる。このＬＴ  ｃｏｄｅ手法の問題を解決するＲａｐｔｏｒ  ｃｏｄｅ手法と同様に、提案手法（本発明の実施の形態で提案する分散符号化方法）でも、誤り特性が改善されることがわかった。
【０１０４】
また、ＳＮＲ（signal-noise ratio）に対するスループット（１シンボルあたりのビット数）を、図１８に示す。上記図１８に示すように、Ｒａｐｔｏｒ  ｃｏｄｅ手法では、ＳＮＲに応じて、スループットが向上しない。これは、プリコーディングを分散ノード環境で行うため、符号化の度にノード間でのデータのやり取りが大幅に増えてしまうためである。提案手法では、ＬＴ  ｃｏｄｅと同様に、分散処理性により、スループットが向上することがわかった。このように、提案手法では、分散処理性を維持したまま、プリコーディングと同様の効果のある処理を行うことが可能であることがわかった。
【符号の説明】
【０１０５】
１０   通信装置
１４、２１４  データ通信部
１６   コンピュータ
１８   ソースノード処理部
２０   データベースノード処理部
２２   情報取得ノード処理部
３０、５０    パケット生成部
３２   冗長パケット送信決定部
３４、４２、５６     受信パケット検出部
３６   サブセット選択部
３８   冗長パケット生成部
４０、５２    送信制御部
４４   サブセット選択部
４６   符号データ計算部
４８   データ記憶部
５４   受信制御部
５８   パケット復号部
６０   復号判定部
６２   再取得制御部
６４   保存データ記憶部
２１０ センサノード
２１２ コントロールユニット
３１０ 携帯端末
【図１】
2013126100.tif 000003
【図２】
2013126100.tif 000004
【図３】
2013126100.tif 000005
【図４】
2013126100.tif 000006
【図５】
2013126100.tif 000007
【図６】
2013126100.tif 000008
【図７】
2013126100.tif 000009
【図８】
2013126100.tif 000010
【図９】
2013126100.tif 000011
【図１０】
2013126100.tif 000012
【図１１】
2013126100.tif 000013
【図１２】
2013126100.tif 000014
【図１３】
2013126100.tif 000015
【図１４】
2013126100.tif 000016
【図１５】
2013126100.tif 000017
【図１６】
2013126100.tif 000018
【図１７】
2013126100.tif 000019
【図１８】
2013126100.tif 000020
【図１９】
2013126100.tif 000021