(57)【要約】【課題】本発明は、疎グラフ符号における疎グラフを効率的に作成することを目的とする。【解決手段】本発明は、選択的ＰＥＧアルゴリズムに関し、行重み／列重みを任意のマルチレベルで保ちながら疎行列を生成していき、その過程で、任意のノード間で形成される最小ループが大きくなるように、任意のエッジをｉｎａｃｔｉｖｅにするか、制約付きインターリーブを行うことにより行列空間が狭い場合の符号化効率を改善する。【選択図】図３
2015082712.tif 000002
【特許請求の範囲】
【請求項１】
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成装置であって、
疎グラフ中の少なくとも一部のノードをイナクティブにするイナクティブ化部と、
前記イナクティブ化部によってイナクティブにされた残りの疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索部と、
前記探索部の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択部と、
前記ノード選択部にて選択されたノードとルートノードを接続するルートノードエッジ接続部と、
を備える疎グラフ作成装置。
【請求項２】
前記ノード選択部は、それまでのノード生成の過程から得られた探索に関する情報から次に探索する範囲を限定して探索することで少ない演算量でループを大きくとるノードを選択する
ことを特徴とする請求項１に記載の疎グラフ作成装置。
【請求項３】
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成装置であって、
疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索部と、
前記探索部の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択部と、
前記ノード選択部にて選択されたノードとルートノードを接続するルートノードエッジ接続部と、
前記ルートノードエッジ接続部によって選択された位置にエッジが生成された疎グラフの各ノードを、疎行列の各重みが空間的に均一に配置されるように並び替える制約付きインターリーブ部と、
を備える疎グラフ作成装置。
【請求項４】
前記制約付きインターリーブ部は、アクティブなノードのグラフ構造を保つように、疎グラフ中のノードを入れ替える
ことを特徴とする請求項３に記載の疎グラフ作成装置。
【請求項５】
疎グラフのエッジ総数が変わらずかつ最小のループが短くならないように、新たなノードを設置するノード拡張部をさらに備えることを特徴とする請求項１から４のいずれかに記載の疎グラフ作成装置。
【請求項６】
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成方法であって、
疎グラフ中の少なくとも一部のノードをイナクティブにするイナクティブ化手順と、
前記イナクティブ化手順によってイナクティブにされた残りの疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索手順と、
前記探索手順の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択手順と、
前記ノード選択手順にて選択されたノードとルートノードを接続するルートノードエッジ接続手順と、
を順に有する疎グラフ作成方法。
【請求項７】
前記ノード選択手順において、それまでのノード生成の過程から得られた探索に関する情報から次に探索する範囲を限定して探索することで少ない演算量でループを大きくとるノードを選択する
ことを特徴とする請求項６に記載の疎グラフ作成方法。
【請求項８】
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成手順であって、
疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索手順と、
前記探索手順の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択手順と、
前記ノード選択手順にて選択されたノードとルートノードを接続するルートノードエッジ接続手順と、
前記ルートノード接続手順によって選択された位置にエッジが生成された疎グラフの各ノードを、疎行列の各重みが空間的に均一に配置されるように並び替える制約付きインターリーブ手順と、
を順に有する疎グラフ作成方法。
【請求項９】
前記制約付きインターリーブ手順において、アクティブなノードのグラフ構造を保つように、疎グラフ中のノードを入れ替える
ことを特徴とする請求項８に記載の疎グラフ作成方法。
【請求項１０】
疎グラフのエッジ総数が変わらずかつ最小のループが短くならないように、新たなノードを設置するノード拡張手順を、前記ノード選択手順の後でありかつ前記制約付きインターリーブ手順の前にさらに有することを特徴とする請求項６から９のいずれかに記載の疎グラフ作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、疎グラフ符号の疎グラフ生成装置及び方法に関し、特に任意のノード間で形成される最小ループを大きくとることにより疎グラフ符号を効率的に可能とする装置および方法に関する。
【背景技術】
【０００２】
現在、誤り訂正技術は衛生デジタル放送やインターネットでの通信、モバイル端末での通信など、各種通信システムで広く用いられている。とりわけ、近年のブロードバンド環境の発展に伴いインターネットを用いた動画配信サービスなどが期待されており、インターネット網に対する誤り訂正技術は重要なものになっている。以下、インターネット網を例に話を進める。
【０００３】
インターネットを用いてサービスを行う側から通信路をみると、インターネット網は消失通信路（ＰＥＣ：Ｐａｃｋｅｔ  Ｅｒａｓｕｒｅ  Ｃｈａｎｎｅｌ）と捉えることができる。これは２元消失通信路（図１）がパケットの単位としてグループ化されたものであり、通信路出力は正しい情報で出力されるか回線中の何らかの障害によって不明になったとして出力されるかのどちらかの場合となる通信路である。この通信系においては、ＦＥＣ（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ）やＡＲＱ（Ａｕｔｏｍａｔｉｃ  Ｒｅｐｅａｔ  ｒｅＱｕｅｓｔ）と呼ばれる消失パケット回復手法が用いられる。一般的なＩＰベースのサービスでは、ＴＣＰ／ＩＰプロトコルが用いられ、デコーダ側では誤り検出のみにとどめ、誤りが発生した場合は再送制御などで誤りを回復する方法が用いられている（ＡＲＱ方式）。しかし、マルチキャスト配信のような大規模なサービスを想定した場合、受信側で受け取ったデータを元に誤り訂正をすることが求められ、帰還通信路を必要とせず受信側のみで誤りを訂正できる方法が用いられる（ＦＥＣ方式）。この、ＦＥＣ方式は再送制御等を行わないことから遅延が少なく、リアルタイム性が重要となるテレビ会議システムでもＦＥＣ方式が用いられる。以下、ＦＥＣ方式について話を進める。
【０００４】
ＦＥＣ方式として、ディジタル放送などではリードソロモン符号（ＲＳ符号）が広く用いられている。日本のディジタル放送では符号長２０４バイトと定義されており、元データ１８８バイトに対しておよそ１０［％］のパリティバイトを付加することで誤りに対して耐性を持たせている。しかし、一般に誤り訂正符号として符号長の長い符号を利用すれば性能がよくなることが知られているが、符号長が長くなると復号が複雑になり計算量が膨大になってしまうという弊害も知られている。そのため、ＲＳ符号では、符号長を２５６バイト以下として扱うことが前提とされている。また、ＲＳ符号をＩＰベースのパケットレベルＦＥＣと呼ばれるパケットに適応する場合、上記の理由から２５６パケットを１ブロックとして扱う必要が生じる。
【０００５】
これに対して、確率伝搬アルゴリズム（Ｂｅｌｉｅｆ  ｐｒｏｐａｇａｔｉｏｎ  ａｌｇｏｒｉｔｈｍ）に基づいた復号法は符号長が長い場合に実用的な演算量で優れた復号特性を持つことが知られており、疎グラフにより定義される線形符号である低密度パリティ検査符号（Ｌｏｗｄｅｎｓｉｔｙ  ｐａｒｉｔｙ  ｃｈｅｃｋ  ｃｏｄｅ：ＬＤＰＣ符号（例えば、非特許文献１参照）はＳｈａｎｎｏｎにより定義された通信路容量に迫る現実的な誤り訂正方法として注目されている。また、疎グラフに基づく消失訂正符号としては、Ｄｉｇｉｔａｌ  Ｆｏｕｎｔａｉｎ社のＬＴ  ｃｏｄｅ（例えば、非特許文献２参照）やＲａｐｔｏｒ  ｃｏｄｅ（例えば、非特許文献３参照）が知られており、符号化効率を大きく劣化させずに任意の符号データを受信しただけで復号できる符号特性を実現的な演算量で達成することが知られている。この性質はインターネットマルチキャストプロトコルであるＡＬＣ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｌａｙｅｒｅｄ  Ｃｏｄｉｎｇ（例えば、非特許文献４参照）と適合するために、レイヤード構成されたマルチキャスト通信などで広く用いられている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Ｒ．Ｇ．Ｇａｌｌａｇｅｒ，“Ｌｏｗ  ｄｅｎｓｉｔｙ  ｐａｒｉｔｙ  ｃｈｅｃｋ  ｃｏｄｅｓ”，ｉｎ  Ｒｅｓｅａｒｃｈ  Ｍｏｎｏｇｒａｐｈ  ｓｅｒｉｅｓ．  Ｃａｍｂｒｉｄｇｅ，ＭＩＴ  Ｐｒｅｓｓ，１９６３
【非特許文献２】Ｍ．Ｌｕｂｙ，“ＬＴ  Ｃｏｄｅｓ”，Ｔｈｅ  ４３ｒｄ  Ａｎｎｕａｌ  ＩＥＥＥ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｆｏｕｎｄａｔｉｏｎｓ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ，２００２
【非特許文献３】Ｓｈｏｋｒｏｌｌａｈｉ，Ａ，“Ｒａｐｔｏｒ  ｃｏｄｅｓ”、Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｈｅｏｒｙ，ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｖｏｌｕｍｅ  ５２，Ｉｓｓｕｅ  ６，２００６
【非特許文献４】“Ａｓｙｎｃｈｒｏｎｏｕ  ｌａｙｅｒｅｄ  ｃｏｄｉｎｇ  ｐｒｏｔｏｃｏｌ  ｉｎｓｔａｎｔｉａｔｉｏｎ”，ＩＥＴＦ  ＲＦＣ  ３４５０，Ｄｅｃ．２００２
【非特許文献５】Ｘｉａｏ−Ｙｕ  Ｈｕ，Ｅｖａｎｇｅｌｏｓ  Ｅｌｅｆｔｈｅｒｉｏｕ，  Ｄｉｅｔｅｒ−Ｍｉｃｈａｅｌ  Ａｒｎｏｌｄ，“Ｐｒｏｇｒｅｓｓｉｖｅ  Eｄｇｅ−Gｒｏｗｔｈ  Ｔａｎｎｅｒ  Gｒａｐｈｓ”，ＩＥＥＥ  Ｇｌｏｂａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｃｏｎｆｅｒｅｎｃｅ，２００１．ＧＬＯＢＥＣＯＭ’０１
【非特許文献６】Ｓｈｉｖａ  Ｋ．  Ｐｌａｎｊｅｒｙ  ａｎｄ  Ｔ．Ａａｒｏｎ  Ｇｕｌｌｉｖｅｒ，“Ｄｅｓｉｇｎ  ｏｆ  Ｒａｔｅ−Ｃｏｍｐａｔｉｂｌｅ  Ｐｕｎｃｔｕｒｅｄ  Ｒｅｐｅａｔ−Ａｃｃｕｍｕｌａｔｅ  Ｃｏｄｅｓ”，ＩＥＥＥ  Ｇｌｏｂａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｃｏｎｆｅｒｅｎｃｅ，２００７．ＧＬＯＢＥＣＯＭ’０７
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述のように、疎グラフと確率伝搬アルゴリズムを用いた誤り訂正符号は従来達成出来なかった符号化特性を達成する。しかし、一般的に、疎グラフ符号が良く働く疎グラフ符号を構成することは難しいことが知られている。それは、確率伝搬アルゴリズムは疎グラフ中にループが無い場合にある種の最適性があることが知られているが実際にはループが発生してしまい、ループができるだけ大きくなる疎グラフを構成することは演算量の観点から困難であることが知られているためである。
【０００８】
この問題を解決するために、疎グラフ全体としてみると最適とはならないループ構造を持つが、現実的な演算量で良い疎グラフを作る方法が提案されている（例えば、非特許文献５参照）。ＰＥＧ（Ｐｒｏｇｒｅｓｓｉｖｅ  Ｅｄｇｅ−Ｇｒｏｗｔｈ）アルゴリズムと呼ばれる方法は、疎グラフ全体に対してノードの経（ｇｉｒｔｈ）を長くなるようにグローバル最適化するわけでなく、ノードを生成していく過程において、注目したノードに対してローカルグラフを作成し、その範囲でループを長くすることで、ある程度少ない演算量で良い疎グラフを作成する方法である。グラフでいうところの枝（線）をエッジと呼び、ＰＥＧアルゴリズムはこのエッジを作成する。また、疎行列とグラフの対応は、行列の列に対応するものを情報ノード、行に対応するものをチェックノード、疎行列の１のたつ場所が情報ノードとチェックノードをつなぐエッジに相当する。
【０００９】
しかし、ＰＥＧアルゴリズムはローカルの範囲で短いループで満たされ、大きいループのエッジを作れない状態になってしまった場合、その後の行列はランダムに生成された行列となりループが大きくなる保証は全くなくなる。この状態になるとノードはランダムに作成されていくこととほぼ等しく、短いループが発生しやすくなる。この事象により、たとえば、レート可変型のＬＤＰＣ符号（例えば、非特許文献６参照）などで作成された疎グラフを用いる場合など、疎グラフの一部が用いられるなどするために顕著な符号化効率の低下などを招くことがある。
【００１０】
また、いくつかの列重みを有したイレギュラーの疎行列（以下、イレギュラー行列）を作成する場合、ＰＥＧアルゴリズムでは、重い列または行が入った後にループの大きくなるノードを見つけるのが難しくなりランダムに生成された疎グラフとなることが起きやすくなる。エッジが増え、ループが生まれやすくなるためである。
【００１１】
本発明は上記の点に鑑みなされたもので、本発明は、疎グラフ符号における疎グラフを効率的に作成することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本願発明は、ＬＤＰＣ符号のための疎行列の生成方法に関するものであり、特に、ＰＥＧ（ｐｒｏｇｒｅｓｓｉｖｅ
ｅｄｇｅ−ｇｒｏｗｔｈ）アルゴリズムを改良して、疎行列中の任意ノード集合間で発生する短いループを長くするローカル最適化を行うために、疎行列の要求に応じてループを長くとるノード集合を選択することで、伝送レートに応じて符号化する効率を向上する。
【００１３】
具体的には、本発明に係る疎グラフ作成装置は、
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成装置であって、
疎グラフ中の少なくとも一部のノードをイナクティブにするイナクティブ化部と、
前記イナクティブ化部によってイナクティブにされた残りの疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索部と、
前記探索部の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択部と、
前記ノード選択部にて選択されたノードとルートノードを接続するルートノードエッジ接続部と、
を備える。
【００１４】
本発明に係る疎グラフ作成装置では、前記ノード選択部は、それまでのノード生成の過程から得られた探索に関する情報から次に探索する範囲を限定して探索することで少ない演算量でループを大きくとるノードを選択してもよい。
【００１５】
具体的には、本発明に係る疎グラフ作成装置は、
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成装置であって、
疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索部と、
前記探索部の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択部と、
前記ノード選択部にて選択されたノードとルートノードを接続するルートノードエッジ接続部と、
前記ルートノードエッジ接続部によって選択された位置にエッジが生成された疎グラフの各ノードを、疎行列の各重みが空間的に均一に配置されるように並び替える制約付きインターリーブ部と、
を備える。
【００１６】
本発明に係る疎グラフ作成装置では、前記制約付きインターリーブ部は、アクティブなノードのグラフ構造を保つように、疎グラフ中のノードを入れ替えてもよい。
【００１７】
本発明に係る疎グラフ作成装置では、疎グラフのエッジ総数が変わらずかつ最小のループが短くならないように、新たなノードを設置するノード拡張部をさらに備えてもよい。
【００１８】
具体的には、本発明に係る疎グラフ作成方法は、
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成方法であって、
疎グラフ中の少なくとも一部のノードをイナクティブにするイナクティブ化手順と、
前記イナクティブ化手順によってイナクティブにされた残りの疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索手順と、
前記探索手順の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択手順と、
前記ノード選択手順にて選択されたノードとルートノードを接続するルートノードエッジ接続手順と、
を順に有する。
【００１９】
本発明に係る疎グラフ作成方法では、前記ノード選択手順において、それまでのノード生成の過程から得られた探索に関する情報から次に探索する範囲を限定して探索することで少ない演算量でループを大きくとるノードを選択してもよい。
【００２０】
具体的には、本発明に係る疎グラフ作成方法は、
疎グラフ符号に用いられる疎グラフを生成する疎グラフ作成手順であって、
疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する探索手順と、
前記探索手順の探索結果から設定された条件を満たすノードを、エッジを生成する位置に選択するノード選択手順と、
前記ノード選択手順にて選択されたノードとルートノードを接続するルートノードエッジ接続手順と、
前記ルートノード接続手順によって選択された位置にエッジが生成された疎グラフの各ノードを、疎行列の各重みが空間的に均一に配置されるように並び替える制約付きインターリーブ手順と、
を順に有する。
【００２１】
本発明に係る疎グラフ作成方法では、前記制約付きインターリーブ手順において、アクティブなノードのグラフ構造を保つように、疎グラフ中のノードを入れ替えてもよい。
【００２２】
本発明に係る疎グラフ作成方法では、疎グラフのエッジ総数が変わらずかつ最小のループが短くならないように、新たなノードを設置するノード拡張手順を、前記ノード選択手順の後でありかつ前記制約付きインターリーブ手順の前にさらに有してもよい。
【００２３】
なお、上記各発明は、可能な限り組み合わせることができる。
【発明の効果】
【００２４】
本発明によれば、疎グラフ符号における疎グラフを効率的に作成することができる。
【図面の簡単な説明】
【００２５】
【図１】パケット消失通信路の一例を示す。
【図２】本実施形態に係る通信システムの一例を示す。
【図３】実施形態１に係る疎行列作成装置の一例を示す。
【図４】疎行列キャッシュ部１０２に保存されている行列の一例を示す。
【図５】ＬＤＧＭ符号のパリティ検査行列のツリー展開の一例を示す。
【図６】長さ４のループの一例を示す。
【図７】長さ６のループの一例を示す。
【図８】イナクティブ化の一例を示す。
【図９】実施形態２に係る疎行列作成装置の一例を示す。
【図１０】インターリーブ前の行列の一例を示す。
【図１１】インターリーブ後の行列の一例を示す。
【図１２】インターリーブ前の２つの行列の一例を示す。
【図１３】実施形態３に係る疎行列作成装置の一例を示す。
【図１４】レート可変型疎行列の生成過程の一例であり、生成された小さい疎行列を示す。
【図１５】レート可変型疎行列の生成過程の一例であり、拡張された小さい疎行列を示す。
【図１６】レート可変型疎行列の生成過程の一例であり、列拡張された小さい疎行列を示す。
【図１７】レート可変型疎行列の生成過程の一例であり、制約付きインターリーブ後の疎行列を示す。
【図１８】ノードの拡張例を示す。
【図１９】実施形態３に係る疎行列作成装置の第２の構成例を示す。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、本発明は、以下に示す実施形態に限定されるものではない。これらの実施の例は例示に過ぎず、本発明は当業者の知識に基づいて種々の変更、改良を施した形態で実施することができる。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００２７】
本発明は通信路の種類に依存せずに実施することができるが、一例としてマルチキャスト配信で用いられるＵＤＰプロトコルを用いたパケット配信を例として説明する。ＵＤＰプロトコルを用いると、ＵＤＰパケットがロスした場合もＴＣＰプロトコルとは異なり再送処理は行われないが、図１に示すように、受信パケットは正しいか否かを判別できると共にロスしたパケットの位置が正確に判別できる消失通信路と見える特徴がある。
【００２８】
図２に、本実施形態に係る通信システムの一例を示す。本実施形態に係る通信システムは、通信路符号化装置９１と、パケット伝送装置９２と、パケットベース受信装置９３と、通信路復号装置９４と、を備える。通信路符号化装置９１は、疎行列を用いて送信データの符号化を行う。パケット伝送装置９２は符号化した送信データを送信する。パケットベース受信装置９３は送信データを受信する。通信路復号装置９４は、疎行列を用いて受信データの復号化を行う。通信路符号化装置９１における符号化及び通信路復号装置９４における復号化は、本実施形態に係る疎行列作成装置として機能する疎行列作成部１０の作成した疎行列を用いる。
【００２９】
本実施形態に係る通信システムの一例として、本発明により実現可能なパケットレベルＦＥＣに対する誤り訂正機能を説明する。映像データや音声データといった送信データは通信路符号化装置９１により符号化が行われる。この際、通常、通信路符号化装置９１は、後に接続されるパケット伝送装置９２のパケットサイズなどを考慮してフラグメントなどを行う。符号化にＬＤＰＣ符号などの線形符号が用いられる場合、通信路符号化装置９１は以下の符号化処理により冗長化データを作成する。
【００３０】
【数１】
2015082712.tif 000003
ただし、Ｓは映像データなどの入力データがある一定の大きさでフラグメントされたものであり、Ｇ及びＴは疎グラフに対応する疎行列である。また、ＬＤＰＣ符号がＬＤＰＣ−Ｓｔａｉｒｃａｓｅと呼ばれるタイプである場合、Ｔは階段行列となる。Ｔ−１はアキュムレータに置き換えることができ、アキュムレータを用いることで符号化の処理を高速に出来る。
【００３１】
図中の疎行列作成部１０は、符号化効率及び復号化効率が良くなるような行列Ｇ及びＴを、少ない演算量で生成する。作成された疎行列の情報量は多いため、一般的には疎行列のパラメータを抽出して復号側の通信路復号装置９４に通知する。パラメータは、例えば、生成されたパリティーデータ及びＦＥＣ補助情報である。パケットベース伝送装置９２は、抽出したパラメータを映像データや音声データと共に、ＦＬＵＴＥ規格（ＲＦＣ  ３９２６）やＭＰＥＧ  ｍｅｄｉａ  ｔｒａｎｓ−ｐｏｒｔ（ＩＳＯ／ＩＥＣ  ２３００８−１）規格などで伝送される。受信側のパケットベース受信装置９３は、パケットベース伝送装置９２から送信されたパケットを受信する。この際、パケットベース受信装置９３は、ＦＬＵＴＥのヘッダーフォーマット等と照らしあわせ、パケット消失が発生している場合は通信路復号装置９４にて消失パケットの回復が試みられる。通信路復号装置９４は、符号化に対応し、以下の制約式が成り立つことが補助情報などから予め共有されている。
【００３２】
【数２】
2015082712.tif 000004
【数３】
2015082712.tif 000005
ここで、Ｇ及びＴは疎グラフに対応する疎行列であり、符号化側と全く同じ情報を用いる。
【００３３】
通常、疎行列情報はデータ量が多いため、パラメータとして符号化側から復号側に通知されることで共有されることが一般的である。復号側は、通知されるパラメータから、疎行列作成部１０によって符号化側と同じ疎行列を生成する。復号側では消失したパケットを、上式を用いて復号する。今、εを消失したパケットのインデックス集合とし、Ｈεを消失したパケットに対応するパリティ検査行列とし、ｘεを消失したパケットの集合とすると、上式は次式に書き換えられる。
【００３４】
【数４】
2015082712.tif 000006
ただし、右辺のε’は受信したパケットのインデックス集合である。
【００３５】
上式より、もしＨεのランク数が消失パケットの数｜ｘε｜であれば消失したパケットは最尤復号により回復することができる。復号方法は様々な手法が提案されており、メッセージパッシングアルゴリズムにより回復を行う方法、ガウスの消去法により回復を行う方法などがある。一般的に、メッセージパッシングアルゴリズムでは、疎グラフの疎性を活かした復号が可能なためＯ（Ｎ）での復号が可能であるが、ガウスの消去法においては、逆行列を求めるプレ処理にＯ（Ｎ３）、パケットを実際に回復する演算処理にＯ（Ｎ２）の演算が必要になる。
【００３６】
本発明によると、通信路符号化装置および通信路復号装置において誤り訂正能力の高い、符号化効率の高い疎行列を高速に作成することができ、また、本行列はメッセージパッシングアルゴリズムでもガウスの消去法でも効率的に誤りを訂正することができる。さらに、レート可変型のＬＤＰＣ符号と組み合わせることで、行列を毎回０から作り直さなくてもよいため、１つの疎行列を様々なレートに適用した場合も符号化効率の高い誤り訂正を実行することができる。
【００３７】
（実施形態１）
本実施形態では、選択的ＰＥＧアルゴリズムは行重み／列重みを任意のマルチレベルで保ちながら疎行列を生成していき、その過程で、任意のエッジをｉｎａｃｔｉｖｅにすることにより行列空間が狭い場合の符号化効率を改善する。
【００３８】
本実施形態に係る疎グラフ作成方法は、イナクティブ化手順と、探索手順と、ノード選択手順と、ルートノードエッジ接続手順と、を順に有する。
イナクティブ化手順では、疎グラフ中の少なくとも一部のノードをイナクティブにする。
探索手順では、イナクティブにされた残りの疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する。
ノード選択手順では、探索結果から設定された条件を満たすノードを選択する。
ルートノードエッジ接続手順では、ノード選択手順にて選択されたノードとルートノードを接続する。
【００３９】
図３に、本実施形態に係る疎行列作成装置の基本構成図を示す。本実施形態に係る疎行列作成装置１００は、代数的構造生成部１０１と、疎行列キャッシュ部１０２と、乱数生成部１０３と、ルートノードエッジ接続部１０４と、ノードイナクティブ化部１０５と、イナクティブ化制御部１０６と、探索深度制御部１０７と、探索部１０８と、ノード選択部１０９と、インターリーブ部１１０と、を備える。これによって、本実施形態に係る疎行列作成部１００及び疎グラフ作成方法は、マルチレベルのレート制御を高効率に達成するレート可変型の誤り訂正符号を実現する。
【００４０】
代数的構造生成部１０１は、疎グラフが特別な構造を持っていた場合に考慮される。疎行列キャッシュ部１０２は、生成していく疎行列を保存する。乱数生成部１０３は、確率的に符号を構成する。ルートノードエッジ接続部１０４は、ローカルグラフにおけるループを大きく取る際に基準とするルートノードと接続するエッジを選択する。ノードイナクティブ化部１０５は、ローカルグラフにおけるループを大きく取る際に考慮しないノードを選択する。イナクティブ化制御部１０６は、ノードイナクティブ化部１０５の処理においてその条件を定める。探索深度制御部１０７は、ローカルグラフにおけるループを大きく取る際に探索するノードの深さを制御する。探索部１０８は、探索深度制御部１０７の制御情報に基づきルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードの探索を行う。ノード選択部１０９は、探索部１０８の探索結果から条件を満たすノードを選択する。条件とは、例えばいかなる５つのエッジを通じてもルートノードから到達できないチェックノードなどである。インターリーブ部１１０は、作成された疎行列を列入れ替えなどにより入れ替える制約付きインターリーブ部である。以下それぞれの構成要素について説明する。
【００４１】
本システムは消失通信路上で発生した消失を効率的に回復する通信路復号システムである。以下では簡単のために、本システムが有効に機能する１つの最良の例として、消失通信路の代表的な通信路であるインターネット上でのＩＰパケット伝送を想定し、疎グラフで構成されるＬＤＰＣ−Ｓｔａｉｒｃａｓｅ符号を想定した例を述べる。
【００４２】
入力データが疎行列作成装置１００に入力され疎行列の作成が開始される。入力されるデータは、符号化レートに関わる行列のサイズ、行列の重みに関する情報、探索深度の初期値、など、行列生成に必要な情報が入力される。行列のサイズは、例えば、縦サイズ及び横サイズである。行列の重みに関する情報は、例えば、列重み３が何列で、列重み７が何列かである。
【００４３】
まず、代数的構造生成部１０１では、今回ＬＤＰＣ−Ｓｔａｉｒｃａｓｅ符号を想定しているので、代数的構造として階段行列が生成される。生成された階段行列は疎行列キャッシュ部１０２に保存される。
次に、ルートノードエッジ接続部１０４にてローカルグラフを作成する際のルートノードと１つのノードがエッジを通じて接続される。ここで、ローカルグラフとは、疎グラフの生成過程においてルートノードから接続される候補となるノードから構成されるグラフである。ルートノードとは、新しくエッジを追加していくターゲットとしているノードであり、ツリーで表現したときに一番上に配置されるノードである。
【００４４】
疎グラフの生成過程において列に対応するルートノードが初めて選択される場合、そこからエッジにて接続するノードを選択する方法は様々な方法が考えられるが、例えば、行重みを計算して一番重みの軽いチェックノード集合の中からランダムに選択するなどが実施される。この制約を課した場合、行方向にレギュラーな疎行列が生成されることとなる。この処理の際、乱数生成部１０３により生成される乱数によりルートノードから接続されるチェックノードを選択する。
【００４５】
ルートノードエッジ接続部１０４でルートノードと接続されるチェックノードが選択されエッジ接続されると、次はノードイナクティブ化部１０５に移行する。ノードイナクティブ化部１０５ではローカルグラフを作成する際に探索に含めないノードを、イナクティブ化制御部１０６の情報に基づいて、指定する。しかし、行列を生成するにあたり、探索時間を極端に減らしたい等の特別な要望が無い場合は、ノードをイナクティブにするメリットが無いため、行列が生成されるある時点まで、イナクティブ化制御部１０６は、通常、イナクティブにするノードを指定しない。
【００４６】
探索部１０８では、イナクティブ化されていないアクティブなノードに対して、探索深度制御部１０７の情報に基づいて探索を行う。探索操作について図４及び図５を用いて説明する。図４は疎行列キャッシュ部１０２に保存されている行列の一例であり、図５はルートノードと最小のエッジ数で接続されるチェックノードとの接続関係を示す。
【００４７】
今、図４記載の行列が既に生成されており、丸で囲まれている「１」がルートノードエッジ接続部１０４においてルートノードと接続されるチェックノードに選択されているとする。また、全てのノードがアクティブな状態であり、探索深度（Ｄｅｐｔｈ）は「１」が与えられているとする。本実施形態において、Ｄｅｐｔｈ＝１というのは１段階の探索を表すこととする。この場合、探索部１０８では、１段階の探索を実施することとする。１段階の探索とは、ルートノードとアクティブなチェックノードが、３つのエッジを通じてつながっている（長さ３でつながる）ノードを探すことである。図５で示した例では、ルートノードに相当するソースノードＮＳ００と長さ３でつながるチェックノードは４つあり、１番目、２番目、３番目、５番目のチェックノードＮＣ０１、ＮＣ０２、ＮＣ０３、ＮＣ０５とつながっていることがわかる。図４の例では、ルートノードと３番目のチェックノードが接続されているため３番目のチェックノードには１は立てられない。この場合、１番目、２番目、５番目のチェックノードＮＣ０１、ＮＣ０２、ＮＣ０５に１を立てた場合、図５のＤｅｐｔｈ＝１で示されているように、長さ４のループが出来てしまう。ここで、長さ４のループとは、ノードを表す「１」が図６に示すようなノード配置になった状態である。この配置は符号化効率が落ちるため、長さ４のループは無い方が好ましい。
【００４８】
なお、２段階の探索を行った場合、５本のエッジを通じて到達できるチェックノードを探索することになり、４番目のチェックノードにもエッジが到達してしまうため、図５に示すノードの配置では、図７に示すような長さ６のループを回避するチェックノードの選択は出来ない。
【００４９】
ノード選択部１０９は、探索部１０８の探索結果を受けて、追加するノード位置を決定する。例えば、いかなる３つのエッジを通じてもルートノードから到達できないノードなどである。選択候補が複数ある場合は、候補のノード集合からランダムに選択するか、行列上部から埋めていく、行重みが軽いものから埋めていく、などの方法がとられる。また、ランダムに選択する場合は、乱数生成部１０３にて生成される乱数を利用する。
【００５０】
ノード選択部１０９で１つのノードが選択されたら、ルートノードエッジ接続部１０４に戻り、今度はノード選択部１０９に選択されたノードとのエッジを追加して１０５、１０８、１０９と同様の処理を行う。任意のノード数（ｅ．ｇ．３つのノード等）が生成され列処理が終わると、選択されたノードは疎行列キャッシュ部１０２に保存される。
【００５１】
なお、処理を進めていく上でノード選択部１０９にて選択できるノードが無い場合（条件を満たす候補が無い場合）、探索深度制御部１０７が探索深度を変更して探索する範囲を狭くする、または、イナクティブ化制御部１０６にてイナクティブにするノードを選択し、探索対象となるアクティブとなるノードを減らす、処理を行う。これらの処理は、片方ずつ行うこともできるし、同時に行うこともできるが、たとえば、探索範囲制御部１０７にて探索する深度の変更を行っていき、１段階の探索でも選択できるノードが無くなった場合、イナクティブ化制御部１０６の設定を変更し、それまでに生成したノードをイナクティブにし、再び探索範囲制御部１０７の探索深度を大きくして行列生成を続ける、などの方法が有効となる。
【００５２】
図８を用いてノードイナクティブ化部１０５の処理の説明を行う。図８の左の行列は行列の生成を進めていった途中過程のものである。今、９列目のノードを作成しようとしており、１番目のチェックノードをルートノードとして選択している。しかし、１段階の探索を行った際に２番目、３番目、４番目、５番目のその他全てのチェックノードにおいて長さ３のエッジで接続されてしまい、どこのノードを選択しても長さ４のループが発生してしまう状況である。そこで、イナクティブ化制御部１０６は、既に作成したノードの半分をイナクティブにすると判断し、ノードイナクティブ化部１０５が１列目から４列目までのノードをイナクティブ化にする（図８の右）。このイナクティブ化により、３番目、４番目、５番目のいずれのチェックノードも選択することが出来るようになっている。これにより、本実施形態に係る疎行列作成装置１００は、生成された行列の一部が用いられた場合も、優れた符号化効率が達成できる他、イナクティブ化をするノードを列重みにより変更などすることで素早く効率的に符号化効率の良い疎行列を作成することが可能となる。なお、イナクティブ化するノードはレート可変のパラメータ等により任意に変更される。例えば、本例では階段行列に相当するノードは需要度が高いためイナクティブ化をせず、常にアクティブにしておくことが望ましい結果となる。
【００５３】
最後に、疎行列の要素ができあがると、生成された疎行列はインターリーブ部１１０に送られる。インターリーブ部１１０では、任意の範囲で切り取った場合もループが広くなりかつ行列重みが平均的になるような列の並び替えが行われ、疎行列情報が出力データとして出される。
【００５４】
（実施形態２）
本実施形態では、選択的ＰＥＧアルゴリズムは行重み／列重みを任意のマルチレベルで保ちながら疎行列を生成していき、その過程で、制約付きインターリーブを行うことにより行列空間が狭い場合の符号化効率を改善する。
【００５５】
本実施形態に係る疎グラフ作成方法は、探索手順と、ノード選択手順と、ルートノードエッジ接続手順と、制約付きインターリーブ手順と、を順に有する。
探索手順では、疎グラフのなかから、ローカルグラフを作成する際のルートとなる任意のルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードを探索する。
ノード選択手順では、探索結果から設定された条件を満たすノードを選択する。
ルートノードエッジ接続手順では、ノード選択手順にて選択されたノードとルートノードを接続する。
制約付きインターリーブ手順では、選択された位置にノードが生成された疎グラフの各ノードを、ローカルグラフの関係を保つように疎行列の各重みが空間的に均一に配置されるように並び替える。
【００５６】
図９に、本実施形態に係る疎行列作成装置の基本構成図を示す。本実施形態に係る疎行列作成装置２００は、代数的構造生成部２０１と、疎行列キャッシュ部２０２と、乱数生成部２０３と、ルートノードエッジ接続部２０４と、探索部２０８と、探索深度制御部２０７と、ノード選択部２０９と、制約付きインターリーブ部２１０と、を備える。本実施形態に係る疎行列作成装置２００は、マルチレベルのレート制御を高効率に達成するレート可変型の誤り訂正符号を実現する。
【００５７】
代数的構造生成部２０１は、疎グラフが特別な構造を持っていた場合に考慮される。疎行列キャッシュ部２０２は、生成していく疎行列を保存する。乱数生成部２０３は、確率的に符号を構成する。ルートノードエッジ接続部２０４は、ローカルグラフにおけるループを大きく取る際に基準とするルートノードと接続するエッジを選択する。探索部２０８は、探索深度制御部２０７の制御情報に基づき最短のエッジ数を通じて到達できるノードの探索を行う。探索深度制御部２０７は、探索部２０８で探索する深度をコントロールする。ノード選択部２０９は、探索結果から条件を満たすノードを選択する。制約付きインターリーブ部２１０は、作成された疎行列を列入れ替えなどにより入れ替える。以下それぞれの構成要素について説明する。
【００５８】
本システムは消失通信路上で発生した消失を効率的に回復する通信路復号システムである。以下では簡単のために、本システムが有効に機能する１つの最良の例として、消失通信路の代表的な通信路であるインターネット上でのＩＰ。パケット伝送を想定し、符号を疎グラフで構成されるＬＤＰＣ−Ｓｔａｉｒｃａｓｅ符号を想定した例を述べる。
【００５９】
入力データが疎行列作成装置２００に入力され疎行列の作成が開始される。入力されるデータは、符号化レートに関わる行列のサイズ（ｅ．ｇ．、縦サイズ、横サイズ）、行列の重みに関する情報（ｅ．ｇ．、列重み３が何列で、列重み７が何列か）、探索深度の初期値、など、行列生成に必要な情報が入力される。
【００６０】
まず、代数的構造生成部２０１は、今回ＬＤＰＣ−Ｓｔａｉｒｃａｓｅ符号を想定しているので、代数的構造として階段行列が生成される。生成された階段行列は疎行列キャッシュ部２０２に保存される。
次に、ルートノードエッジ接続部２０４は、ローカルグラフを作成する際のルートとなるノードから接続されるノードをエッジで接続する。ルートノードからチェックノードに接続されるエッジがその列で初めて選択される場合、エッジの選択方法は様々な方法が考えられるが、例えば、行重みを計算して一番重みの軽いチェックノード集合の中からランダムに選択するなどが実施される。この制約を課した場合、行方向にレギュラーな疎行列が生成されることとなる。この処理の際、乱数生成部２０３により生成される乱数によりチェックノードを選択しエッジで接続する。
【００６１】
ルートノードエッジ接続部２０４でルートノードからエッジが接続されると、探索部２０８では探索深度制御部２０７の情報に基づいて探索を行う。探索部２０８の動作は、実施形態１記載の探索部１０８と同じであるためにここでは探索操作の詳細については省略する。
【００６２】
ノード選択部２０９では、探索部２０８の探索結果を受けて、追加するノードを決定する。選択候補が複数ある場合は、候補のノード集合からランダムに選択するか、行列上部から埋めていく、行重みが軽いものから埋めていく、などの方法がとられる。また、ランダムに選択する場合は、乱数生成部２０３にて生成される乱数を利用する。
【００６３】
ノード選択部２０９で１つのノードが選択されたら、ルートノードエッジ接続部２０４に戻り、今度は選択されたエッジをルートノードと接続して探索部２０８及びノード選択部２０９と同様の処理を行い、任意のノード数（ｅ．ｇ．３つのノード等）が作成され列処理が終わるまで繰り返す。その後、選択されたノードは疎行列キャッシュ部２０２に保存される。
【００６４】
なお、処理を進めていく上でノード選択部２０９にて選択できるノードが無い場合（条件を満たす候補が無い場合）、探索深度制御部２０７が探索深度を変更して探索する範囲を狭くするのも実施形態１と同様である。しかし、探索範囲を狭めて行ってもノード選択部２０４にて選択できるノードが現れない場合も発生する。その際は、探索深度制御部２０７にて探索をしないように制御し、探索部２０８をスキップすることで任意の重みを有した疎行列を生成していく。
【００６５】
なお、本実施形態にてイレギュラー行列の生成を行う場合、先に軽い重みを有した列（ｅ．ｇ．列重み３の列）を生成していき、その後に重い重みを有した列（ｅ．ｇ．列重み７の列）を生成していく、などすることで符号化効率の良い行列を生成することができる。図１０及び図１１に、疎行列全てのノード選択が行われた後に疎行列キャッシュ部２０２に保存されている疎行列例を示す。まず、疎行列は、代数的構造生成部２０１で作成された階段行列を左から有しており、その次に列重み３の疎行列が続き、最後に列重み７の疎行列が続いている。
【００６６】
最後に、疎行列の要素ができあがると、生成された疎行列は制約付きインターリーブ部２１０に送られ、任意の範囲で切り取った場合もループが広くなりかつ行列重みが平均的になるような列の並び替えが行われ、疎行列情報が出力データとして出される。この制約付きインターリーブ部２１０により、たとえば、図１０に示す疎行列は、図１１に示す行列へと並び替えられる。
【００６７】
すなわち、図１０の「Ｔ」で示す階段行列は、パリティ検査行列の右側に位置される。また、図１０において列重み３の「Ｇ１」で示される疎行列と列重み７の「Ｇ２」で示される疎行列は、図１１に示される混合疎行列「Ｇ」が作成されている。混合疎行列「Ｇ」は、列重み３の疎行列と列重み７の疎行列とが空間的な平均を取った場合に均一となるように混ぜられている。
【００６８】
また、同時に、この混合疎行列「Ｇ」は、列重み３の疎行列内、また、列重み７の疎行列内の順番関係を保っている。すなわち、列重み３のノードＮ３１、Ｎ３２、Ｎ３３、Ｎ３４、列重みのＮ７１、Ｎ７２、Ｎ７３、Ｎ７４の各列が、混合疎行列「Ｇ」においてＮ３１、Ｎ７１、Ｎ３２、Ｎ７２、Ｎ３３、Ｎ７３、Ｎ３４、Ｎ７４の順に配列されている。このように制約付きインターリーブすることにより、たとえば、ソースに関する長さを変更しようと、４番を０埋め処理によりレート可変にしたとしても、優れた符号化性能が保たれるように処理されている。
【００６９】
なお、制約付きインターリーブ部２１は、２つの疎行列から合成して１つの疎行列を生成してもよい。図１２に、本実施形態に係る疎行列作成装置が生成した、列重みの異なる２つの疎行列を示す。この場合も、制約付きインターリーブ部２１０により、列重み３の疎行列、列重み７の疎行列は、図１１に示すような列重み３と列重み７の混合疎行列「Ｇ」として混ぜられ、階段行列が右側にくるように並び替えられている。
【００７０】
本実施形態では、実施形態１のノードイナクティブ化部１０５を備えないため、複数の疎行列を作成することで実施形態１のノードイナクティブ化部１０５と類似した機能を持たせることもできる。
【００７１】
（実施形態３）
図１３に、本実施形態に係る疎行列作成装置の基本構成図を示す。本実施形態に係る疎行列作成装置３００は、マルチレベルのレート制御を高効率に達成するレート可変型の誤り訂正符号を実現する。本実施形態に係る疎行列作成装置３００は、代数的構造生成部３０１と、疎行列キャッシュ部３０２と、乱数生成部３０３と、ルートノードエッジ接続部３０４と、ノードイナクティブ化部３０５と、イナクティブ化制御部３０６と、探索深度制御部３０７と、探索部３０８と、ノード選択部３０９と、拡張エッジ選択部３１０と、ノード拡張部３１１と、制約付きインターリーブ部３１２と、を備える。
【００７２】
代数的構造生成部３０１は、疎グラフが特別な構造を持っていた場合に考慮される。疎行列キャッシュ部３０２は、生成していく疎行列を保存する。乱数生成部３０３は、確率的に符号を構成する。ルートノードエッジ接続部３０４は、ローカルグラフを作成する際のルートとなるノードから接続されるノードをエッジで接続する。ノードイナクティブ化部３０５は、ローカルグラフにおけるループを大きく取る際に考慮しないノードを選択する。イナクティブ化制御部３０６は、ノードイナクティブ化部３０５の処理においてその条件を定める。探索深度制御部３０７は、ローカルグラフにおけるループを大きく取る際に探索する深さを制御する。探索部３０８は、探索深度制御部３０７の制御情報に基づきルートノードと接続されているアクティブなノードから最短のエッジ数を通じて到達できるノードの探索を行う。ノード選択部３０９は、探索部３０８の探索結果から条件を満たすノードを選択する。拡張エッジ選択部３１０は、拡張するチェックノードに移行するエッジを選択する。ノード拡張部３１１は、疎グラフ中のエッジの数を保ったままチェックノードを増やす。制約付きインターリーブ部３１２は、作成された疎行列を列入れ替えなどにより入れ替える。以下それぞれの構成要素について説明する。
【００７３】
本システムは消失通信路上で発生した消失を効率的に回復する通信路復号システムである。以下では簡単のために、本システムが有効に機能する１つの最良の例として、消失通信路の代表的な通信路であるインターネット上でのＩＰパケット伝送を想定し、符号を疎グラフで構成されるＬＤＰＣ−Ｓｔａｉｒｃａｓｅ符号を想定した例を述べる。また、本実施形態では、特に冗長度を大きく変更することが可能なレート可変型に特化した例にて説明を行う。
【００７４】
入力データが疎行列作成装置３００に入力され疎行列の作成が開始される。入力されるデータは、符号化レートに関わる行列のサイズ（ｅ．ｇ．、縦サイズ、横サイズ）、行列の重みに関する情報（ｅ．ｇ．、列重み３が何列で、列重み７が何列か）、探索深度の初期値、など、行列生成に必要な情報が入力される。また、加えて、レート可変に対応するパラメータとして、最小の行列サイズや、最大の行列サイズ、それぞれの冗長化率といった情報が入力される。
【００７５】
代数的構造生成部３０１での処理から、ノード選択部３０９までの処理では、基本的には実施形態１の１０１〜１０９までのそれぞれの処理と同様なため詳細は省略するが、レート可変に対応する行列を生成するために、ルートノードエッジ接続部３０４とノード選択部３０９のノード選択において、最小行列サイズの範囲に収まるようにノードを選択し、エッジにて接続する。すなわち、図１４のようにノードを選択する領域を制限して小さい疎行列は生成され、疎行列キャッシュ部３０２に保存される。なお、図１４〜図１７のＧ１は任意の重みを持つ疎行列であり、レギュラー行列、イレギュラー行列、様々なものを作成することができる。
【００７６】
次に、生成された小さい疎行列は拡張エッジ選択部３１０およびノード拡張部３１１を通りチェックノードの拡張が行われる。この拡張のやり方は様々な方法が考えられるが、ここでは、ソースノードおよびエッジの数は変わらず、チェックノードの数のみ変更する方法を用いることとする。図１８にその処理の概要を示す。図１８左は、図１４のＧ１が拡張される前の状態を表している。拡張エッジ選択部３１０が拡張エッジを選択する。すなわち、図１８ではＮＣ１及びＮＣ２に接続しているエッジのうち、拡張するエッジを選択する。そして、ノード拡張部３１１がチェックノードＮＣ３及びＮＣ４を増設し、拡張エッジ選択部３１０で選択されたエッジをはり替える。これにより、図１８右に示すように、チェックノードＮＣ３及びＮＣ４が増える。
【００７７】
この拡張の際、拡張エッジ選択部３１０ではエッジではどのエッジを拡張されたノードに接続するか（またはそれまでに接続されていたチェックノードに残すか）の選択は乱数生成部３０３にて生成される乱数によりランダムに選択される。また、この処理ではどのチェックノードも接続しているエッジの数が大体同じになるように、拡張エッジを選択する。このエッジ選択を受け、ノード拡張部３１１がチェックノードの拡張を行う。この拡張の結果、図１４のＧ１は図１５のＧ２となり、チェックノードが増えた疎グラフ構造をもつようになる。拡張された疎行列は、疎行列キャッシュ部３０２に保存される。
【００７８】
その後、さらに、列方向へのノード生成を続ける。手順はそれまでのプロセスと同様であり、ルートノードエッジ接続部３０４からノード選択部３０９までの列作成手順を実行する。この際、ルートノードエッジ接続部３０４およびノード選択部３０９では、前手順で行っていた空間的な制限を設けない。それにより、図１６に示すＧ３のように、領域限定されない部分的な疎行列が生成される。
【００７９】
最後に、疎行列の要素ができあがると、生成された疎行列は制約付きインターリーブ部３１２に送られ、任意の範囲で切り取った場合もループが広くなりかつ行列重みが平均的になるような列の並び替えが行われ、疎行列情報が出力データとして出される。例えば、図１７に示すように、疎行列Ｇ２及びＧ３は列重みが平均的になるように並び替えられて疎行列Ｇ２’及びＧ３’となる。疎行列Ｇ２’及びＧ３’は、図１０及び図１１に示した制約付きインターリーブのように、列重みが同じものでは列の入れ替えが行われない制約がついたインターリーブとなっている。このように構成することにより、Ｇ３’の右側から０埋めによりレート可変した場合や、Ｇ２’をパンクチャー処理によりレート可変にした場合でも、符号化効率の高い行列を生成することができる。
【００８０】
なお、本実施形態では、単純なレート可変の例で説明を行ったが、本実施形態は容易にマルチレートのレート可変に対応する行列を生成する方法に拡張することができる。
【００８１】
本実施形態では、実施形態１の構成にさらに拡張エッジ選択部３１０及びノード拡張部３１１を備える例について説明したが、これに限定されない。例えば、図１９に示すように、実施形態２の構成にさらに拡張エッジ選択部３１０及びノード拡張部３１１を備えてもよい。
【００８２】
また、本実施形態に係る発明は、実施形態１の構成にさらに実施形態２で説明した制約付きインターリーブの機能を備える。このように、実施形態１の発明と実施形態２の発明を組み合わせることも可能である。この組み合わせによって、符号化効率をさらに改善することができる。
【００８３】
以上の説明で明らかなように本発明によれば、本発明は、疎グラフ符号の疎行列作成において、マルチレベルのレート制御を高効率に達成するレート可変型の誤り訂正符号を実現する疎行列の作成を可能とする。
【産業上の利用可能性】
【００８４】
本発明は情報通信産業に適用することができる。
【符号の説明】
【００８５】
１０：疎行列作成部
９１：通信路符号化装置
９２：パケットベース伝送装置
９３：パケットベース受信装置
９４：通信路復号装置
１００、２００、３００、４００：疎行列作成装置
１０１、２０１，３１０、４０１：代数的構造生成部
１０２、２０２、３０２、４０２：疎行列キャッシュ部
１０３，２０３、３０３、４０３：乱数生成部
１０４、２０４、３０４、４０４：ルートノードエッジ接続部
１０５、３０５：ノードイナクティブ化部
１０６、３０６：イナクティブ化制御部
１０７、２０７、３０７、４０６：探索深度制御部
１０８、２０８、３０８、４０５：探索部
１０９、２０９、３０９、４０７：ノード選択部
１１０：インターリーブ部
２１０、３１２、４１０：制約付きインターリーブ部
３１０、４０８：拡張エッジ選択部
３１１、４０９：ノード拡張部
９１１：通信路符号化部
９２１：パケット伝送部
９３１：受信データ解析部
９４１：通信路復号部
【図１】
2015082712.tif 000007
【図２】
2015082712.tif 000008
【図３】
2015082712.tif 000009
【図４】
2015082712.tif 000010
【図５】
2015082712.tif 000011
【図６】
2015082712.tif 000012
【図７】
2015082712.tif 000013
【図８】
2015082712.tif 000014
【図９】
2015082712.tif 000015
【図１０】
2015082712.tif 000016
【図１１】
2015082712.tif 000017
【図１２】
2015082712.tif 000018
【図１３】
2015082712.tif 000019
【図１４】
2015082712.tif 000020
【図１５】
2015082712.tif 000021
【図１６】
2015082712.tif 000022
【図１７】
2015082712.tif 000023
【図１８】
2015082712.tif 000024
【図１９】
2015082712.tif 000025