(57)【特許請求の範囲】
【請求項１】
メッセージパッシングを使用して符号を復号するための方法であって、前記符号は、ファクタグラフによって表され、前記ファクタグラフは、ｉによってインデックスされる変数ノード及びａによってインデックスされる制約ノードを含み、前記変数ノード及び前記制約ノードは、前記変数ノードから前記制約ノードへ出行するメッセージｍｉ→ａ及び前記制約ノードから前記変数ノードへ入来するメッセージｍａ→ｉを転送するためのエッジによって接続され、前記メッセージｍｉ→ａは、受信されたシンボルの集合ｙに基づく変数ノードの集合の信念ｂｉと、前記方法のステップを反復して実行するためのプロセッサとを使用して初期化され、前記方法は、
前記制約ノードにおいて前記メッセージｍｉ→ａを、分割射影によって示されたオーバーシュート量に基づいてオーバーシュートすることによって前記メッセージｍａ→ｉを生成するステップと、
前記メッセージｍａ→ｉを使用して前記変数ノードにおいて前記信念ｂｉを更新するステップと、
前記符号語が見つかったか否かを求めるステップと、
前記符号語が見つかった場合には、前記符号語を出力するステップと、
前記符号語が見つからなかった場合には、前記オーバーシュートの訂正を使用して前記メッセージｍｉ→ａを更新するステップと、
を含むメッセージパッシングを使用して符号を復号するための方法。
【請求項２】
終了条件に達した場合には、終了するステップをさらに含む請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項３】
前記復号は、分割統治信念伝搬（ＤＣＢＰ）復号器において実行される請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項４】
前記復号は、差分マップ信念伝搬（ＤＭＢＰ）復号器において実行される請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項５】
前記復号は、高データレートの用途において適用される請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項６】
前記復号は、高密度記憶の用途において適用される請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項７】
前記符号はシンボルを含み、前記シンボルは、２つの値又はそれよりも多くの値を有する請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項８】
前記符号語はシンボルを含み、前記ファクタグラフは、各パラメータチェック制約につき１つの制約ノード、及び前記符号語ｃの各シンボルｘｉにつき１つの変数ノードを有し、すべての前記変数ノードは、エネルギー制約ノードに接続され、前記エネルギー制約ノードは、対数尤度比（ＬＬＲ）ノードＬｉの集合に接続される請求項３に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項９】
前記シンボルは、値０又は１を有するビットであり、０を＋１にマッピングし、１を−１にマッピングするステップをさらに含む請求項８に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１０】
前記変数ノードから前記制約ノードへの次のメッセージｍｉ→ａは、現在のメッセージｍａ→ｉ及び前の反復中の同じメッセージｍｉ→ａに依存する請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１１】
前記変数ノードから前記制約ノードへの次のメッセージｍｉ→ａは、
【数１】
0005586336.tif 000032
に従って、前記メッセージｍｉ→ａと前記メッセージｍａ→ｉとの間の差分を前記信念ｂｉから引くことによって更新され、ここで、λは所定のパラメータである請求項１０に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１２】
λ＝１／２である請求項１１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１３】
各信念ｂｉは、平均
【数２】
0005586336.tif 000033
であり、ここで、前記変数ノードｉは、前記制約ノードの集合に従属し、ｔは反復を表し、Ｍ（ｉ）は、変数ｉが受ける制約の集合である請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１４】
前記エネルギー制約は、Ｅ≦Ｅｍａｘであり、ここで、Ｅｍａｘはパラメータであり、
【数３】
0005586336.tif 000034
であり、Ｌｉは、対数尤度比（ＬＬＲ）ノードの集合であるベクトルＬのｉ番目のエントリーを示す請求項８に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１５】
前記パラメータＥｍａｘは、前記エネルギー制約が決して充足されないような値に設定さて、前記信念ｂｉを前記受信されたシンボルｙと実質的に同じに保つ請求項１４に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１６】
前記ファクタグラフは、各パリティチェック制約につき１つの制約ノード、及び前記符号語ｃの各ビットにつき１つの変数を有し、各変数ノードは、エネルギー制約ノードに接続され、各エネルギー制約ノードは、対数尤度比ノードＬｉに接続される請求項４に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１７】
前記メッセージｍｉ→ａは、
【数４】
0005586336.tif 000035
を使用して更新され、ここで、ｍｊ→ａ＞０の場合にはｓｇｎ（ｍｊ→ａ）＝１であり、ｍｊ→ａ＜０の場合にはｓｇｎ（ｍｊ→ａ）＝−１であり、それ以外の場合には０である請求項１６に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１８】
前記メッセージｍｉ→ａは、
【数５】
0005586336.tif 000036
に従って更新される請求項１６に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項１９】
各信念ｂｉは、
【数６】
0005586336.tif 000037
に従って更新され、ここで、ｚは、前記復号の性能を最適化するように選択されたパラメータであり、Ｌｉは、対数尤度比（ＬＬＲ）ノードの集合であるベクトルＬのｉ番目のエントリーを示す請求項１に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項２０】
前記パラメータｚは、０．２５〜０．５の範囲の値に設定される請求項１９に記載のメッセージパッシングを使用して符号を復号するための方法。
【請求項２１】
メッセージパッシングを使用して符号を復号するための復号器であって、前記符号は、ファクタグラフによって表され、前記ファクタグラフは、ｉによってインデックスされる変数ノード及びａによってインデックスされる制約ノードを含み、前記変数ノード及び前記制約ノードは、前記変数ノードから前記制約ノードへ出行するメッセージｍｉ→ａ及び前記制約ノードから前記変数ノードへ入来するメッセージｍａ→ｉを転送するためのエッジによって接続され、前記メッセージｍｉ→ａは、受信されたシンボルの集合ｙに基づく信念ｂｉに基づいて初期化され、プロセッサを含み、
前記制約ノードにおいて前記メッセージｍｉ→ａを、分割射影によって示されたオーバーシュート量に基づいてオーバーシュートすることによって前記メッセージｍａ→ｉを生成する手段と、
前記メッセージｍａ→ｉを使用して前記信念ｂｉを更新する手段と、
前記符号語が見つかったか否かを求める手段と、
前記符号語が見つかった場合には、前記符号語を出力する手段と、
前記符号語が見つからなかった場合には、前記オーバーシュートの訂正を使用して前記メッセージｍｉ→ａを更新する手段と、
を含むメッセージパッシングを使用して符号を復号するための復号器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的には、復号器に関し、より詳細には、メッセージパッシング復号器を使用して、低密度パリティチェック（ＬＤＰＣ）符号を含むグラフベース符号（ｇｒａｐｈ−ｂａｓｅｄ  ｃｏｄｅ）を復号することに関する。
【背景技術】
【０００２】
ＬＤＰＣ符号の標準的なＢＰ復号器に関する問題
適切に設計された低密度パリティチェック（ＬＤＰＣ）符号は、信念伝搬（ＢＰ）復号器を使用して復号されると、信号対雑音比（ＳＮＲ）が符号しきい値に近いいわゆる「ウォータフォール」レジームで近シャノン限界性能を達成することができる。多数のＢＰ復号器が、従来技術において知られている。米国特許データベースは、５万（５０，０００）件を超える関連特許及び関連出願を公開している。
【０００３】
従来技術のＢＰ復号器は、「ファクタグラフ」として知られているグラフ表現を操作するメッセージパッシング方法の一実例である。これについては、Ｆ．Ｒ．Ｋｓｃｈｉｓｃｈａｎｇ，Ｂ．Ｊ．Ｆｒｅｙ及びＨ．−Ａ．Ｌｏｅｌｉｇｅｒの「Ｆａｃｔｏｒ  Ｇｒａｐｈｓ  ａｎｄ  ｔｈｅ  Ｓｕｍ−Ｐｒｏｄｕｃｔ  Ａｌｇｏｒｉｔｈｍ」，ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｈｅｏｒｙ，ｖｏｌ．４７，ｐｐ．４９８−５１９，２００１を参照されたい。ＢＰ復号器は、ファクタグラフの「変数ノード」と「制約ノード」との間で「メッセージ」をパスし、復号された符号語が何であるべきかについての確率（「信念」）を更新する。本明細書では、「信念」は、ＢＰ復号器を説明するのに一般に使用される専門用語である。異なるＢＰ復号器を区別する主な特徴は、メッセージ及び信念がどのように反復して更新されるのかということである。
【０００４】
「最小和（ｍｉｎ−ｓｕｍ）」（又は等価な「最大積（ｍａｘ−ｐｒｏｄｕｃｔ）」）ＢＰ復号器及び「積和（ｓｕｍ−ｐｒｏｄｕｃｔ）」ＢＰ復号器というＢＰ復号器の２つのバージョンが標準的であると考えられている。最小和復号器は、符号を表すファクタグラフがツリーであるとき、当該最小和復号器が、常に、最も送信される可能性の高い符号語を返すという意味で最適である。あいにく、良い符号のファクタグラフは、必ずサイクルを含み、サイクルが存在する状態では、最小和ＢＰ復号器は準最適となる。
【０００５】
準最適な積和ＢＰ復号器は、それにもかかわらず、ウォータフォールレジームでは良いグラフベース符号について近シャノン限界性能を達成するが、あいにく、同じことは、高ＳＮＲレジームでは当てはまらない。高ＳＮＲレジームでは、積和ＢＰ復号器及び最小和ＢＰ復号器とペアにされるグラフベース符号は、「エラーフロア」現象という難点を有することが多く、これによって、ＳＮＲが増加しても、復号器のエラーレートは、それにつれてゆっくりとしか改善しない。エラーフロアは、高いビット密度及びデータレートについて極めて高い信頼性を必要とする用途では重大な問題である。これによって、このような用途における現在の世代のグラフベース符号の適用性が制限される。このような用途には、磁気光学データ記憶装置及び光ファイバ通信が含まれる。
【０００６】
ＢＰ復号器を使用するグラフベース符号のエラーフロアは、「近符号語（ｎｅａｒ−ｃｏｄｅｗｏｒｄ）」、「疑似符号語」、「インスタントン」、「吸収集合（ａｂｓｏｒｂｉｎｇ  ｓｅｔ）」、及び「トラッピング集合（ｔｒａｐｐｉｎｇ  ｓｅｔ）」という名称で通っている符号の構造に起因するものであると広く信じられている。これについては、Ｔ．Ｒｉｃｈａｒｄｓｏｎの「Ｅｒｒｏｒ  Ｆｌｏｏｒｓ  ｏｆ  ＬＤＰＣ  Ｃｏｄｅｓ」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ４１ｓｔ  Ａｌｌｅｒｔｏｎ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ，Ｃｏｎｔｒｏｌ，ａｎｄ  Ｃｏｍｐｕｔｉｎｇ，２００３を参照されたい。これらのパターンと強く重なるチャネル伝送に起因するエラーパターンは、復号器によって訂正が不可能である。
【０００７】
良好なウォータフォール挙動を維持しつつエラーフロアを改善する手法は、２つのグループに分類することができる。１つのグループは、標準的なＢＰ復号器を使用して復号されるとき、より少ないトラッピング集合を有し、したがって、改善されたエラーフロアを有する符号を構築するものである。例えば、ファクタグラフの短いサイクルをより少なくした符号を構築することによって、トラッピング集合の個数は改善され、したがって、エラーフロアは改善される。ＥＧ−ＬＤＰＣ符号等の特殊な部類のＬＤＰＣ符号、又はより少ないトラッピング集合を有する一般化されたＬＤＰＣ符号も考慮に入れることができる。しかしながら、多くの用途では、指定された符号、すなわち指定されたブロック長及びレートの符号が必要とされる場合があり、標準的なＢＰ復号器を使用して復号されるときに良好なエラーフロア挙動も有する要求仕様を満たす符号を構築する方法がない場合があるので、この手法は実施が不可能な場合がある。
【０００８】
本発明に関連したエラーフロア挙動を改善する他の手法群は、復号器を改良するものである。この手法は、ランダムな正則ＬＤＰＣ符号が（高い確率で）優れた距離特性を有し、したがって、復号器が最適な最尤（ＭＬ）復号を使用した場合にエラーフロアを有しないので、論理的である。（しかしながら、最適な復号器は、通常、実用化するにはあまりにも複雑であるであることに留意されたい）。
【０００９】
例えば、特定の符号のトラッピング集合が列挙される場合、「２モードシンドローム消去復号器（ｂｉ−ｍｏｄｅ  ｓｙｎｄｒｏｍｅ−ｅｒａｓｕｒｅ  ｄｅｃｏｄｅｒ）」が、エラーフロア挙動を改善することができる。これについては、Ｙ．Ｈａｎ及びＷ．Ｅ．Ｒｙａｎの「Ｌｏｗ−ｆｌｏｏｒ  ｄｅｃｏｄｅｒｓ  ｆｏｒ  ＬＤＰＣ  Ｃｏｄｅｓ」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ４５ｔｈ  Ａｎｎｕａｌ  Ａｌｌｅｒｔｏｎ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ，Ｃｏｎｔｒｏｌ，ａｎｄ  Ｃｏｍｐｕｔｉｎｇ  ２００７，ｐｐ．４７３−４７９を参照されたい。しかしながら、多くの符号では、トラッピング集合の列挙は、それ自体、極めて困難なタスクである。
【００１０】
別の改良された復号器は、混合整数線形計画法（ＭＩＬＰ）復号器である。このＭＩＬＰ復号器は、トラッピング集合についての情報を必要とせず、ＭＬ性能に近づくものではあるが、復号複雑度が大きい。ＭＩＬＰ復号器の複雑度に対処するために、多段復号器を使用することができる。これについては、Ｙ．Ｗａｎｇ，Ｊ．Ｓ．Ｙｅｄｉｄｉａ及びＳ．Ｃ．Ｄｒａｐｅｒの「Ｍｕｌｔｉ−ｓｔａｇｅ  Ｄｅｃｏｄｉｎｇ  Ｖｉａ  Ｍｉｘｅｄ−Ｉｎｔｅｇｅｒ  Ａｄａｐｔｉｖｅ  Ｌｉｎｅａｒ  Ｐｒｏｇｒａｍｍｉｎｇ」，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｈｅｏｒｙ，２００９，ｐｐ．２１５１−２１５５を参照されたい。ＭＩＬＰ復号器と同様に動作し、高い平均スループットを有する復号器を得ることができるように、多段復号器は、高速ではあるが低性能の復号器をより強力ではあるがより低速なＭＩＬＰ復号器と組み合わせたものである。それにもかかわらず、多段復号器は、複数の復号器を必要とし、最悪の場合のスループットがＭＩＬＰ復号器と同程度に低いという点で、かなりの実用上の難点を有する。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
したがって、標準的なＢＰ復号器と比較して改善されたエラーフロアを有するが、同等の複雑度を有し、大きな不都合を有しない、ＬＤＰＣ符号用の実用的なＢＰ復号器を提供することが望まれている。
【００１２】
分割統治制約最適化方法（Ｄｉｖｉｄｅ  ａｎｄ  Ｃｏｎｑｕｅｒ  Ｃｏｎｓｔｒａｉｎｔ  Ｏｐｔｉｍｉｚａｔｉｏｎ  Ｍｅｔｈｏｄ）
後述する本発明は、Ｇｒａｖｅｌ及びＥｌｓｅｒの「Ｄｉｖｉｄｅ  ａｎｄ  Ｃｏｎｃｕｒ：  ａ  Ｇｅｎｅｒａｌ  Ａｐｐｒｏａｃｈ  ｔｏ  Ｃｏｎｓｔｒａｉｎｔ  Ｓａｔｉｓｆａｃｔｉｏｎ」，Ｐｈｙｓ．Ｒｅｖ．Ｅ  ７８，０３６７０６，２００８に説明された方法により部分的に動機付けられている。以下では、分割統治（Ｄｉｖｉｄｅ  ａｎｄ  Ｃｏｎｑｕｅｒ）をＤ＆Ｃという。
【００１３】
Ｇｒａｖｅｌ及びＥｌｓｅｒの動機は、ｘ線結晶学における高分子の形状を再現する問題等、複雑な計算問題を解決することであった。Ｄ＆Ｃ方法を使用して研究された他の用途は、タンパク質折り畳み、スピングラスの基底状態の検出、充足可能性テスト、タンパク質構造予測、ラムゼイ数、ディオファントス方程式の解法、さらには数独パズルの解法に関するものである。それらの用途の多くは、ＮＰ完全問題である。彼らの動機のもう１つは、球充填等、いくつかの古いよく研究された最適化問題の改良された解決法を見つけることであった。
【００１４】
Ｄ＆Ｃ方法は、Ｎ個の変数及びＭ個の制約を有する制約充足問題の解決技法である。各制約は、Ｎ個の変数から成る部分集合を伴う。目的は、Ｍ個のすべての制約が充足されるようなＮ個の変数の構成を求めることである。Ｄ＆Ｃは、変数値を直接処理するのではなく、その代わり、変数の「レプリカ」のダイナミクスに関係している。特定の制約に関与している各変数について、その変数のレプリカが生成される。特定の変数のレプリカの個数は、その変数が関与している制約の個数に等しい。
【００１５】
Ｄ＆Ｃは、「分割射影（ｄｉｖｉｄｅ  ｐｒｏｊｅｃｔｉｏｎ）」及び「統治射影（ｃｏｎｑｕｅｒ  ｐｒｏｊｅｃｔｉｏｎ）」を使用する。分割射影中、レプリカ値は、各制約がローカルに充足されるように、できるだけ小さな変化分だけ変更される。統治射影中、同じ変数の（場合によっては異なる）レプリカが、それらの値を平均化することによって強制的に互いに等しくされる。
【００１６】
Ｄ＆Ｃアルゴリズムのキーとなるアイデアは、各反復における「分割」射影及び「統治」射影の「差分マップ（ｄｉｆｆｅｒｅｎｃｅ  ｍａｐ）」（ＤＭ）組み合わせを使用して、ダイナミクスにおける「短いサイクル」（又は「トラップ」）を回避することである。
【００１７】
ｒを、すべての変数のレプリカのすべての値を含むベクトルとする。このベクトルは、２つの異なる方法で、互いに背反する集合に区画することができる。第１に、このベクトルは、各制約に対応するレプリカの集合に区画することができる。制約ａに関連付けられたすべてのレプリカのレプリカ値のベクトルを表記するのに、ｒ（ａ）を使用することにする。ここで、ａは、１とＭとの間の整数値を取ることができる。第２に、このベクトルは、各変数に対応するレプリカの集合に区画することができる。変数ｉに関連付けられたすべてのレプリカのレプリカ値のベクトルを表記するのに、ｒ［ｉ］を使用することにする。ここで、ｉは、１とＮとの間の整数値を取ることができる。
【００１８】
「分割射影」ＰＤは、レプリカ値ｒ（ａ）をできるだけ小さく変更することによって、すべての制約を強制的に充足させ、１〜Ｍのａについて各集合ｒ（ａ）に独立に適用される。分割射影の適用後、同じ変数のレプリカは、必ずしも互いに一致しない。
【００１９】
「統治射影」ＰＣは、同じ変数のレプリカを等しくし、１〜Ｎまでのｉについて各集合ｒ［ｉ］に独立に適用される。統治射影の適用後、同じ変数のレプリカは、互いに一致するが、制約は、必ずしもすべてが充足されるとは限らない。
【００２０】
２つの射影を組み合わせて、すべての制約を充足するレプリカ値の集合を見つけると同時に、各変数に関連付けられたすべてのレプリカが等しいことを確保する方策が必要とされる。おそらく、レプリカの手続き並びに分割射影及び統治射影を使用する最も自明な方法は、２つの射影を単純に交互にすることである。この「交互射影」手法は、凸制約にうまく機能するが、それ以外では、時に、正しい解に対応しない短いサイクルで「行き詰る」ことがある。
【００２１】
図５は、交互射影手法が失敗する一例を示す。この図では、ｘ値及びｙ値によって表される２つのレプリカのみが存在する。斜めの線は、レプリカ値が等しいという要件を表す一方、点Ａ及びＢは、もう一方の制約を充足するレプリカ値の２つの対に対応する。制約、及びレプリカ値が等しいという要件を充足する唯一の解は点Ａである。レプリカ値が、点Ｄに対応するレプリカ値に初期化されるものとする。交互射影を適用した場合、開始点Ｄは、最初に、制約を充足する最も近い値対に射影される。これは点Ｂである。統治射影の適用によって、次の更新は、実線に沿った最も近いレプリカ値対、すなわち点Ｃに来る。その後、交互射影によって、レプリカ値対は、短いサイクルで行き詰り（Ｂ←→Ｃ）、Ａにおける真の解は決して見つからない。
【００２２】
差分マップ（ＤＭ）ダイナミクスは、短いサイクルを「リペラ（ｒｅｐｅｌｌｅｒ）」に変えるように分割射影及び統治射影の組み合わせを変更することによって、交互射影方策を改良するものである。単一の反復のＤＭのダイナミクスは、３つのステップのプロセスである。
第１のステップにおいて、レプリカは、分割射影によって示される所望の量の２倍を移動する。それらレプリカの新しい値は、次に、レプリカの「オーバーシュート」値と呼ばれる。
第２のステップにおいて、統治射影が、レプリカのオーバーシュート値に適用されて、レプリカの「被統治（ｃｏｎｑｕｅｒｅｄ）」値が得られる。
第３のステップにおいて、レプリカ値が第１のステップにおいて「オーバーシュート」された量を引くことにより、レプリカの被統治値が訂正され、次の反復用のレプリカが得られる。
【００２３】
ＤＭのダイナミクスは図６に示されている。この図に示すシナリオは、図５のものと同じである。したがって、レプリカ値をｒ１において初期化し、交互射影を適用する場合、ダイナミクスはＢとｒ１との間のサイクルで行き詰る。この図は、その代わりに、レプリカがｒ１に初期化されるがＤＭが適用された場合に何か起こるのかを示している。ＤＭダイナミクスは、サイクルから１つをはじき（ｒｅｐｅｌ）、（破線ｒ１ｏｖｅｒ、ｒ１ｃｏｎｑ＝ｒ１、及びｒ２で表記する３つのステップを介して）ｒ２に移動し、次いで、ｒ３に移動し、ｒ４＝ｒ＊で終了する。ｒ４＝ｒ＊は、Ａにおける解に対応する。この例の計算シーケンス及び更新値は、以下のテーブルＩに表にされている。
【００２４】
【表１】
0005586336.tif 000002
【００２５】
当然ながら、ＤＭは、より複雑なサイクル又は「ストレンジアトラクタ（ｓｔｒａｎｇｅ  ａｔｔｒａｃｔｏｒ）」に捕らえられる場合もあり、存在する解を１つも見つけない場合があるが、少なくとも、単純なローカルサイクルには捕らえられない。
【課題を解決するための手段】
【００２６】
本発明の実施の形態は、標準的な信念伝搬（ＢＰ）復号器と比較してエラーフロアを大幅に改善する低密度パリティチェック（ＬＤＰＣ）の信念伝搬（ＢＰ）復号器を提供する。
【００２７】
本発明の復号器は、標準的なＢＰ復号器において不十分なエラーフロア性能を引き起こす「トラッピング集合」が、反復される射影アルゴリズムの「トラップ」に関連しているというアイデアによって動機付けられ、したがって、本発明の復号器は、ＤＣ方法からの「差分マップ」のアイデアを使用して、これらのトラップを回避し且つ改善されたエラーフロア性能を有する復号器を作成する。本発明の復号器は、２つの実施の形態になる。
【００２８】
１つの実施の形態は、ＤＣ反復制約充足プロセスのアイデアではあるが、エラー訂正復号器を作成するのに必要な変更を有するアイデアに、より密接に従うものではある。この実施の形態は、良好なエラーフロア挙動を有するが、符号語を求めるのに多数の反復を必要とし、最も可能性の高い符号語でない符号語を返す可能性がある。これらの符号語は、「見逃しエラー」と呼ばれる。このＢＰ復号器を分割統治（ＤＣ）信念伝搬（ＤＣＢＰ）復号器と呼ぶことにする。
【００２９】
ＢＰ復号器の別の実施の形態は、標準的な「最小和」ＢＰ復号器又は「積和」ＢＰ復号器と類似する更新ルールではあるが、分割統治方法からの「差分マップ」（ＤＭ）アイデアに基づく重要な変更を有する更新ルールを使用するものである。
【発明の効果】
【００３０】
この「差分マップ信念伝搬」（ＤＭＢＰ）復号器は、加法性白色ガウス雑音及び２元対称チャネルの双方において、標準的なＢＰ復号器の複雑度と同等の複雑度でエラーフロアを劇的に改善することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施の形態による分割統治信念伝搬（ＤＣＢＰ）復号器のファクタグラフである。
【図２】本発明の実施の形態によるＤＣＢＰ復号器のフロー図である。
【図３】本発明の実施の形態による差分マップ信念伝搬（ＤＭＢＰ）復号器のファクタグラフである。
【図４】本発明の実施の形態によるＤＭＢＰ復号器のフロー図である。
【図５】従来技術で知られている分割統治プロセスの概略図である。
【図６】従来技術で知られている分割統治プロセスの概略図である。
【発明を実施するための形態】
【００３２】
本発明の実施の形態は、新規な信念伝搬（ＢＰ）復号器を使用して、低密度パリティチェック（ＬＤＰＣ）符号を含むグラフベース符号を復号するための方法を提供する。この符号は、データの記憶及び通信を行うのに使用することができる。より具体的には、本発明は、磁気光学記憶媒体及び光ファイバ通信システム等の高密度記憶及び高データレートによく適している。
【００３３】
本発明者らは、ＬＤＰＣ符号及びＢＰ復号器に関する広範囲の研究を行ってきた。これについては、米国特許第７，３７６，１７３号明細書、米国特許第７，３７３，５８５号明細書、米国特許第７，１９１，３７６号明細書、米国特許第７，１０３，８２５号明細書、米国特許第７，１０３，８１８号明細書、米国特許第６，８５７，０９７号明細書、米国特許第６，７７１，１９７号明細書、及び米国特許出願公開第２００８０３１６０６９号明細書、米国特許出願公開第２００８０２３５５１５号、米国特許出願公開第２００８００５２５９４号明細書、米国特許出願公開第２００７０２１７４３２号明細書、米国特許出願公開第２００７０１７４６３３号明細書、米国特許出願公開第２００６０１２３２４１号明細書、米国特許出願公開第２００６００４８０３８号明細書、並びに多数の科学論文を参照されたい。したがって、本発明者らは、Ｄ＆Ｃ方法の原理のいずれかをＬＤＰＣ符号及びＢＰ復号器に適用できるか否かに興味があった。本発明のＢＰ復号器の要素を予想するものが従来のＤ＆Ｃ方法には何もないことを特筆しておく。
【００３４】
本発明者らは、特に、トラップがＤ＆Ｃによって回避される方法が、標準的なＢＰ復号器を悩ませる問題、すなわち許容できないエラーフロアにつながるトラッピング集合、を解決できるか否かに関心があった。
【００３５】
本発明者らは、Ｄ＆Ｃが、パリティチェック制約を導入することによって復号問題に適合できるか否か分からず興味があった。しかしながら、本発明者は、Ｄ＆Ｃに基づいて復号器を構築しようと試みる際に、チャネル観測結果によって提供されるエビデンス（ｅｖｉｄｅｎｃｅ）を考慮する「エネルギー」制約がパリティチェック制約よりもさらに重要であることを見出した。このエネルギー制約は、純粋な制約充足問題には存在しないタイプの情報である。
【００３６】
本発明のＤＣＢＰ復号器では、エネルギー制約は、チャネル観測結果、すなわち受信信号と、所望の符号語との間の相関が、少なくとも或る最小量になるべきことを強制するのに必要とされる。エネルギー制約によって、復号プロセス中に、「候補解」が実際のチャネル観測結果からあまりにも遠く「動き回ら」ないことが確保される。
【００３７】
本発明者らは、トラップを回避する改良された最小和ＢＰ復号器又は積和ＢＰ復号器を構築するために、Ｄ＆ＣのＤＭ概念が標準的な最小和ＢＰ復号器設定又は積和ＢＰ復号器設定に適合できるか否かも分からず興味があった。本発明者らは、したがって、差分マップのアイデアを変換してＢＰ復号器に適合させ、差分マップ信念伝搬（ＤＭＢＰ）復号器を提供する方法を発明した。このＤＭＢＰ復号器は、最小和ＢＰ復号器又は積和ＢＰ復号器であるが、変更されたダイナミクスを有する。本発明のＤＭＢＰ復号器は、標準的な最小和信念伝搬（ＢＰ）復号器又は積和信念伝搬（ＢＰ）復号器と比較してエラーフロアを大幅に改善する。
【００３８】
メッセージパッシング方法としてのＤ＆Ｃ
Ｄ＆Ｃ方法のアイデアを使用してＢＰ復号器を構築するには、本発明者らは、先ず、メッセージパッシング方法の手続きを使用してＤ＆Ｃを再構築する必要があった。ＢＰ復号器がファクタグラフ上で「メッセージ」をパスすることを思い出されたい。これは、一目見ただけで、Ｄ＆Ｃ方法で実行されるレプリカ値の更新とは非常に異なっている。Ｄ＆Ｃを達成するために本発明者が定義する「メッセージ」及び「信念」は、従来のＢＰ復号器のものと同様であるが、メッセージ更新ルール及び信念更新ルールは異なる。
【００３９】
図１に示すように、２部ファクタグラフ３００を構築することにする。本発明者のファクタグラフでは、有効な各構成には、同じ重みが与えられ、無効な構成には、０の重みが与えられる。本発明者のファクタグラフは、ａによってインデックスされる制約ノード及びｉによってインデックスされる変数ノードを含む。制約ノードは、パリティチェック制約ノード３１０又は単一のエネルギー制約ノード３３０のいずれかである。変数ノードは、符号語ビット３２０を表す「隠れ（ｈｉｄｄｅｎ）」変数ノード又は各ビットのチャネルエビデンスから得られた対数尤度比３４０を表す「被観測（ｏｂｓｅｒｖｅｄ）」変数ノードのいずれかである。
【００４０】
各変数ノードは、関連付けられた制約にエッジによって接続される。各エッジ上には、そのエッジに隣接する制約ノードからそのエッジに隣接する変数ノードへのメッセージと、もう一方の方向のメッセージとの２つのメッセージがある。図１では、符号語ビットｉを表す変数ノードからのメッセージのいくつかを矢印によって表記している。符号語ビット３２０とパリティチェック制約３１０とを接続するエッジの集合３１５が符号を求める。
【００４１】
ほとんどのＢＰ復号器では、「信念」は、通例、特定の値を有する変数ノードの確率又は対数尤度比を示す。以下でより詳細に説明する本発明のＤＣＢＰ復号器では、値０又は１の符号語ビットの、値＋１又は−１のシンボルへのそれぞれのマッピングを行うことにする。次に、ビットの「信念」が任意の実際の値を有することを可能にする。正の値の数値が大きいほど、そのビットが値０を有する大きな尤度に対応し、負の値の数値が大きなほど、そのビットが１を有するより大きな尤度に対応する。
【００４２】
おそらく驚くことに、本発明者らは、Ｄ＆Ｃレプリカ値を、本発明者のグラフのエッジに沿ってパスされるメッセージと同一視する。反復ｔの初めに変数ｉを制約ａに連結するエッジ上のレプリカの値をｒ［ｉ］ａ（ｔ）と表記することにする。同様に、同じレプリカの「オーバーシュート」値を
【数１】
0005586336.tif 000003
と表記し、「被統治（ｃｏｎｑｕｅｒｅｄ）」値を
【数２】
0005586336.tif 000004
と表記することにする。メッセージの対応する専門用語では、ｒ［ｉ］ａ（ｔ）は、ｍｉ→ａ（ｔ）と表記され、反復ｔにおける変数ノードｉから制約ノードａへの出行メッセージである。
【００４３】
上述したようなＤ＆Ｃ方法の最初のステップにおいて、レプリカ値は、分割射影によって示された量の２倍を移動することによって、オーバーシュート値に更新される。本発明は、従来通り、シュート又はパスが的を外すようにオーバー又は超過することを意味するようにオーバーシュートを定義している。オーバーシュートは、後の訂正と組み合わさって、ローカルトラップにおける行き詰まりを回避するように機能するため、故意にターゲット値をオーバーシュートすることにする。
【００４４】
オーバーシュートメッセージは、入来メッセージの関数として制約ノードにおいてローカルに計算されるので、オーバーシュート値
【数３】
0005586336.tif 000005
は、ノードａからの出行メッセージ、すなわちｍａ→ｉ（ｔ）と考えることができる。時刻ｔにおけるノードａからのすべての出行メッセージの集合は、ｍａ→と表記される。すべての入来メッセージの集合ｍ→ａ（ｔ）も、同じように定義される。
【００４５】
Ｄ＆Ｃ方法の２番目のステップは、統治射影をオーバーシュートレプリカに適用して、「被統治」レプリカ値
【数４】
0005586336.tif 000006
を得る。被統治値は、すべての入来メッセージから求められた「信念」ｂｉと考えることができる。
【００４６】
標準的なＢＰでは、信念は、すべての入来メッセージの関数でもある。しかしながら、標準的な最小和ＢＰでは、信念は、すべての入来メッセージの合計であるが、Ｄ＆Ｃでは、被統治レプリカは、平均
【数５】
0005586336.tif 000007
である。ここで、Ｍ（ｉ）は、変数ｉが受ける制約の集合である。
【００４７】
Ｄ＆Ｃの３番目のステップは、オーバーシュートを訂正することによって次の反復のレプリカ値を生成する。具体的には、出行メッセージと入来メッセージとの差分の２分の１を信念ｂｉ（ｔ）から引く。式にすると、次式（１）で表される。
【００４８】
【数６】
0005586336.tif 000008
【００４９】
本発明者らは、式（１）の所定のパラメータ１／２を、より一般的なパラメータλに置き換えることで実験を行ったが、λ＝１／２を選ぶことが最良の結果を与えることを見出した。
【００５０】
次の出行メッセージが、前の反復における同じメッセージの値にも依存することを特筆しておく。これは、通常の更新ルールが、次式（２）で表される標準的な最小和ＢＰには当てはまらない。
【００５１】
【数７】
0005586336.tif 000009
【００５２】
標準的な最小和ＢＰの全体的な構造及びＢＰの専門用語で提示されたＤ＆Ｃ方法は類似している。これら双方において、信念は、制約ノードからの入来メッセージにより反復して更新される。この入来メッセージは、変数ノードからの入来メッセージに依存する。異なるＢＰ復号器のすべての変形と同様に、それらの相違は、メッセージ更新ルール及び信念更新ルールの特定の形態、並びにＢＰのＤ＆Ｃバージョンにおける変数ノードからのメッセージのメッセージ更新ルールが前の反復における同じメッセージの値にも依存することにある。後者の相違は、特に自明ではなく、明らかに新規なものである。
【００５３】
ＬＤＰＣ符号のＤＣＢＰ復号器
分割統治方法の本発明の特定のバージョンを、グラフベース符号を復号するコンテキストでは、ＤＣＢＰ復号と呼ぶことにする。バイナリＬＤＰＣ符号を復号する本発明の手法を説明することにするが、他のファクタグラフベース符号及びｑ項符号への一般化は簡単である。符号語ｃを探索することは、バイナリシーケンスを探し出すことと等価であり、これは、すべての単一パリティチェック（ＳＰＣ）制約３１０を同時に充足する。
【００５４】
復号の際にはいずれの有効な構成でも用が足りる標準的な制約充足問題とは異なり、本発明者らは、最も可能性の高い構成（符号語）を見つけたい。制約付き充足のコンテキストでこれを行うために、１つの重要な付加的制約であるエネルギー３３０制約を追加することにする。この制約は、バイナリシーケンスが見つけられる尤度が、或る最小量に等しいか又はその最小量を超えなければならないことを強制するものである。この付加的制約によって、復号は、多くの単純な部分問題に分割することができ、それら部分問題は、独立して解くことができる。
【００５５】
Ｍ及びＮを、それぞれ、ＳＰＣ制約３１０の個数及びバイナリＬＤＰＣ符号３２０のビット数とする。Ｈをパリティチェック行列とする。このパリティチェック行列は符号を定義する。例示として、２相位相シフトキーイング（ＢＰＳＫ）信号変調方式が使用され、バイナリ符号語ｃが＋１及び−１のシンボルのシーケンスｘにマッピングされるものと仮定することにする。シーケンスｘは、チャネルを通じて送信され、シーケンスｙとして受信される。ｙからｘを回復することが、ＢＰ復号中の目標である。
【００５６】
シーケンスｙに対応する図１の対数尤度比（ＬＬＲ）ノード３４０の集合は、ベクトルＬと表すことができる。ここで、このベクトルＬのｉ番目のエントリーは、次式で表される。
【００５７】
【数８】
0005586336.tif 000010
【００５８】
ｙが与えられると、ｘの最も可能性の高い値は、
【数９】
0005586336.tif 000011
として定義されるエネルギーＥを最小にしつつ、すべてのＳＰＣ制約３１０を充足する±１のシーケンスとなる。本発明は、エネルギーを直接最小にするのではなく、エネルギー制約を定義する。このエネルギー制約は、エネルギーが或る最大量Ｅｍａｘ未満になることを必要とするものでる。本発明者らの当初のアイデアは、最も可能性の高いシーケンスのみがすべての制約を満たすことができるように、Ｅｍａｘを十分に負にすることであった。
【００５９】
要約すれば、図１に示すように、本発明は、Ｎ個の変数ｘｋ  ３２０及びＭ＋１個の制約を有する。Ｍ＋１個の制約のうちのＭ個は、ＳＰＣ制約３１０であり、１つはエネルギー制約３３０
【数１０】
0005586336.tif 000012
である。ここで、パラメータＥｍａｘの異なるものを選択すると、その結果、復号器は異なったものとなる。低密度パリティチェック符号では、各ＳＰＣ制約は、少数の符号語ビット変数のみを伴うが、エネルギー制約は、すべての符号語ビット変数を伴う。
【００６０】
パラメータＥｍａｘをどのように選択するのが最良であるのかは本発明者らに明らかではなかった。本発明者は、実験を行い、復号器の性能を最適化するＥｍａｘを探索した。驚くことに、本発明者は、Ｅｍａｘの最良の選択が、エネルギー制約を実際には決して充足することができないものであることを発見した。すなわち、
【数１１】
0005586336.tif 000013
である。ここで、０＜ε≪１である。ｘ値は±１であるので、任意の構成のエネルギーの大きさは、
【数１２】
0005586336.tif 000014
によって下限が定められる。
【００６１】
本発明者らは、自身が選ぶ終了基準のために、エネルギー制約を決して充足することができないことがＤＣＢＰにとって問題ではないことに気付いた。エネルギー制約３３０が充足されるか否かにかかわらず、復号器は、すべてのＳＰＣ制約３１０を充足する符号語を見つけたときに終了する。したがって、エネルギー制約の役割は、信念を、受信された符号語のシンボルｙと実質的に同じに保つことである。
【００６２】
全体的なＤＣＢＰ復号器の詳細をすべて説明するために、次に、本発明がＬＤＰＣ復号の分割射影及び統治射影をどのように構築するのかを説明することにする。
【００６３】
ＬＤＰＣ復号の分割射影及び統治射影
以下では、全体的な分割射影ＰＤをＭ＋１個の射影
【数１３】
0005586336.tif 000015
の集合に区画することにする。各射影は、制約ノードａに入来するメッセージのベクトル
【数１４】
0005586336.tif 000016
を独立に操作し、同じ次元を有する射影されたメッセージ
【数１５】
0005586336.tif 000017
のベクトルを出力する。
【００６４】
出力されたベクトルは、ａ番目の制約を満たしつつ、当初のメッセージｍ→ａ（ｔ）にできるだけ近いものである。単一パリティチェック（ＳＰＣ）制約３１０は、制約に関与する変数がすべて±１であること、及び偶数個が−１であることを必要とする。各ＳＰＣ制約について、以下のステップを実行する。
ｍｉ→ａ≧０の場合には「ハード」判定ｈｉａ＝１を割り当て、それ以外の場合にはｈｉａ＝−１を割り当てる。
ｈａが偶数個の−１を有するか否かをチェックする。そうである場合には、
【数１６】
0005586336.tif 000018
を返す。
そうではなく、ｈａが奇数個の−１を有する場合、ｖ＝ａｒｇｍｉｎ｜ｍｉ→ａ｜とする。２元対称チャネルの場合、いくつかのメッセージは、同じ最小値を有することができる。この場合、ランダムに１つを選択し、そのインデックスをｖとして使用することにする。
ｈｖａを反転する。すなわち、ｈｖａ＝−１の場合にはｈｖａを１に設定し、ｈｖａ＝１の場合にはｈｖａを−１に設定する。次に、
【数１７】
0005586336.tif 000019
を返す。
【００６５】
エネルギー制約について、以下のステップを実行する。先ず、エネルギー制約は、
【数１８】
0005586336.tif 000020
であることを思い出されたい。
【００６６】
これは、メッセージｍ→０（ｔ）のベクトルに対する分割射影を暗に意味する。分割射影は以下のように実行される。
エネルギー制約が現在のメッセージｍ→０（ｔ）によって充足される場合、現在のメッセージを返す。すなわち、
【数１９】
0005586336.tif 000021
である。（しかしながら、上記で指定されたＥｍａｘについて、エネルギー制約３３０は決して充足されない。）
エネルギー制約が現在のメッセージによって充足されない場合、ｍ→０（ｔ）に最も近いベクトルであるｈ０を見つけ、エネルギー制約を一時的に充足する。ｉ番目の成分ｈｉ０は、
【数２０】
0005586336.tif 000022
であり、
【数２１】
0005586336.tif 000023
を返す。
【００６７】
統治射影ＰＣは、範囲１〜Ｎのｉの各変数ｉにつき１つの合計Ｎ個の射影
【数２２】
0005586336.tif 000024
の集合に区画することができる。各射影は、メッセージ
【数２３】
0005586336.tif 000025
のベクトルを独立に操作し、信念ｂｉを返す。この信念は、ベクトルｍ→ｉの成分全体にわたる平均である。
【００６８】
ＤＣＢＰ復号器
図２は、本発明の実施の形態によるＤＣＢＰ復号器のステップを示す。この方法のステップは、図４に示す方法と同様に、プロセッサにおいて実行される。プロセッサは、この技術分野で知られているように、メモリ及び入出力インターフェースを含むことができる。この方法は、特定用途向け集積回路（ＡＳＩＣ）において実施することもできる。
【００６９】
初期化４００
反復の最大回数をＴｍａｘに設定し、現在の反復ｔを１に設定し、すべての符号語ビットノードｉ及び変数ノードｉに隣接する制約ノードａ、すなわちａ∈Ｍ（ｉ）について、メッセージｍｉ→ａ（ｔ＝１）＝２ｐｉ−１に設定する。ここで、ｐｉは、送信されたｉ番目のシンボルｘｉが１であるという信念を示す初期化パラメータである。初期化パラメータの１つの良い選択は、公式
ｐｉ＝ｅｘｐ（Ｌｉ）／（１＋ｅｘｐ（Ｌｉ））
によって与えられる。
【００７０】
オーバーシュートによる制約から変数へのメッセージの更新４１０
制約ａへ入来するメッセージｍ→ａは、オーバーシュート公式
【数２４】
0005586336.tif 000026
を使用して出行メッセージｍａ→を求めるのに使用される。ここで、
【数２５】
0005586336.tif 000027
は、制約ａの分割射影操作である。
【００７１】
信念の更新４２０
統治投影
【数２６】
0005586336.tif 000028
を使用して、変数ノードｉにおいて信念を更新することにする。
【００７２】
符号語が見つかった否かのチェック４３０
ｂｉ（ｔ）＜０の場合にはｃ＝１に設定し、そうではなく、ｂｉ（ｔ）＞０の場合にはｃ＝０に設定し、ｂｉ（ｔ）＝０の場合にはｃを０又は１にランダムに設定する。行列積Ｈｃを計算する。Ｈｃ＝０の場合、符号語としてｃを出力し（４３１）、停止する。
【００７３】
オーバーシュート訂正による変数から制約へのメッセージの更新４４０
ｔ＝ｔ＋１にインクリメントする（４５０）。ｔ＞Ｔｍａｘの場合には終了し、失敗を返す（４４１）。それ以外の場合には、式（１）のように、「オーバーシュート」を訂正するように各変数ノードから出行するメッセージｍｉ→ａを更新し、ステップ１に行く。
【００７４】
ＤＭＢＰ復号器
上述したように、ＤＣＢＰ復号器は、適度に良好に動作し、その結果、ビットエラーレート（ＢＥＲ）性能は、標準的なＢＰ復号器と等しくなり、エラーフロアレジームでは標準的なＢＰ復号器よりも優れていることさえある。しかしながら、ＤＣＢＰ復号器は、収束するのに多くの反復を要することが多く、ＤＣＢＰ復号器のエラーは、「見逃し」エラーであることが多く、送信されない符号語に収束する。これとは異なり、ＢＰは、通常、誤った符号語に収束するというよりは収束しない。本発明者らは、Ｄ＆Ｃ方法の中核を成す差分マップ（ＤＭ）の概念を抽出して、ＤＭを本発明者のＢＰ復号器に適合させる。その結果は、新規な差分マップ信念伝搬（ＤＭＢＰ）復号器となる。ＤＭＢＰ復号器の複雑度は、標準的なＢＰ復号器の複雑度と同等であるが、エラーフロアレジームにおいては標準的なＢＰ復号器よりも大幅に低いＢＥＲを有する。
【００７５】
図３に示すように、図１と同様に、本発明者らは、標準的なＢＰ復号器で使用される２部グラフと本質的には同一の２部ファクタグラフ５００を構築する。本発明のファクタグラフ５００は、パリティチェック制約ノード（Ｃ）５１０及び符号語ビット変数ノード（Ｖ）５２０を含む。各符号語ビット変数は、自身が関連付けられた制約にエッジによって接続される。エッジはメッセージを転送する。メッセージは、符号語が何であるかに従って信念を更新するのに使用される。符号語ビットとパリティチェック制約とを接続するエッジの集合５１５が符号を求める。
【００７６】
図３のファクタグラフは、各符号語ビットｘｉが、その観測された対数尤度比Ｌｉ５４０に、対応するエネルギーファクタノード５３０を通じて別々に接続されるという点で、図１に示すＤＣＢＰ復号器に使用されたファクタグラフとは異なることに注目されたい。これとは対照的に、図１のＤＣＢＰファクタグラフでは、単一のエネルギー制約３３０がある。
【００７７】
ＤＭＢＰ復号器を発明する本発明の動機は、ＢＰ復号器が一般的には良好に動作するが、反復される射影方策のようなものを使用するように見えるということであった。本発明者らは、従来のＢＰ復号器のエラーフロアを引き起こすトラッピング集合が、Ｄ＆Ｃの差分マップダイナミクスが改善することになっている「トラップ」に関連していると期待した。
【００７８】
したがって、Ｄ＆Ｃの差分マップ（ＤＭ）のアイデアをＢＰ復号器に適用することにする。簡単にするために、対数尤度比（ＬＬＲ）５４０に対応するメッセージ及び信念を使用する最小和ＢＰ復号器の点からのＤＭＢＰのバージョンを説明することにする。結果の復号器を最小和ＤＭＢＰと呼ぶことにする。最小和メッセージ更新ルールが、従来の積和ルール
【数２７】
0005586336.tif 000029
よりもハードウェア実施がはるかに簡単であることを特筆しておく。
【００７９】
通例、積和ＢＰ復号器又は積和ＢＰ復号器の或る近似したものは、性能がより優れていることから、最小和ＢＰ復号器よりも好ましい。しかしながら、本発明者らが驚くことに、本発明の最小和ＤＭＢＰ復号器は、従来の積和ＢＰ復号器よりも良好な性能を有するだけでなく、類似の積和ＤＭＢＰ復号器よりも良好な性能も有する。
【００８０】
ＤＣＢＰ復号器の説明で使用したメッセージ及び信念と同じ表記を使用することにする。直観的なレベルにおいて、変数ノード及び制約チェックノードの双方における信念更新及びメッセージ更新の点から、最小和ＤＭＢＰ復号器をＤＣＢＰ復号器と比較することにする。
【００８１】
オーバーシュートを有する最小和ＢＰ更新ルール
チェックノードにおけるメッセージ更新から開始して、標準的な最小和ＢＰ更新ルールは、入来メッセージｍｉ→ａを取り込み、
【数２８】
0005586336.tif 000030
に従って出行メッセージを求める。ここで、Ｎ（ａ）＼ｉは、変数ノードｉを除くノードａに隣接する変数ノードの集合であり、ｍｊ→ａ＞０の場合にはｓｇｎ（ｍｊ→ａ）＝１であり、ｍｊ→ａ＜０の場合にはｓｇｎ（ｍｊ→ａ）＝−１であり、それ以外の場合には０である。
【００８２】
標準的な最小和更新は、或る意味で、正しい解も「オーバーシュート」する。チェックノードから変数ノードへのメッセージを更新するための標準的な最小和ルールは、その変数ノードからの入来メッセージを無視する。その結果、チェックノードから出行するメッセージは、少なくとも符号の点で、制約を充足するのに必要な値を「オーバーシュート」する。例えば、３つの正の入来メッセージ及び１つの負の入来メッセージを有する制約ノードでは、３つの負の出行メッセージ及び１つの正の出行メッセージを得る。非常にゆるやかな解釈で、或る想像を膨らませると、これは、偶数個の負のメッセージを有する「正しい」解を「オーバーシュート」する。チェックノードの標準的な最小和更新ルールがオーバーシュートを行い、本発明者らがオーバーシュートを必要とすることから、パリティチェック制約から変数へのメッセージの標準的な最小和更新ルールを、最小和ＤＭＢＰ用に変更することなく直接使用することにする。
【００８３】
信念更新ルールの折衷
特定の変数ノードの現在の信念を計算するための標準的な最小和ＢＰルールは、チャネル出力の観測結果からのメッセージを含めて、その変数ノードに向けて入来するすべてのメッセージを合計する。Ｄ＆Ｃルールは、そうではなく、入来メッセージを平均する。したがって、ＤＭＢＰでは、本発明者らは、折衷ルール
【数２９】
0005586336.tif 000031
を使用することに決定した。ここで、ｚは、復号器性能を最適化するように選択されたパラメータである。ｚ＝１の従来の値の代わりに、範囲０．２５〜０．５のｚの値、例えばｚ＝０．４を使用することにする。この値の理由は、この値が、本発明者らが試みた符号のほとんどに最良に機能するからである。
【００８４】
最後に、変数ノードにおけるメッセージ更新ルールについて、Ｄ＆Ｃのオーバーシュート「訂正」ルール、すなわち差分マップ（ＤＭ）、を正確に実施することにする。本発明者らの直観的なアイデアは、おそらく、従来のＢＰが或る訂正をしそこない、これは、ＤＭがＤ＆Ｃのローカルトラップに役立つように、トラッピング集合を免れるのに重要であるということである。
【００８５】
図４は、本発明の実施の形態によるＤＭＢＰ復号器のステップを示す。
【００８６】
初期化６００
反復の最大回数をＴｍａｘに設定し、現在の反復ｔを１に設定し、すべてのｉ及びすべてのａ∈Ｍ（ｉ）についてメッセージｍｉ→ａ（ｔ＝１）＝Ｌｉに設定する。
【００８７】
オーバーシュートによる制約から変数へのメッセージの更新６１０
制約ノードａへ入来するメッセージｍ→ａ（ｔ）が与えられると、出行メッセージｍａ→（ｔ）が、式（３）で上述した最小和更新ルールを使用して計算される。
【００８８】
信念の更新６２０
信念ｂｉ（ｔ）は、式（４）で上述した折衷更新ルールを使用して各変数ノードｉにおいて計算される。
【００８９】
符号語が見つかった否かのチェック６３０
長さＮのベクトルｃを次のように構築する。ｂｉ（ｔ）＜０の場合にはｃｉ＝１に設定し、そうではなく、ｂｉ（ｔ）＞０の場合にはｃｉ＝０に設定し、ｂｉ（ｔ）＝０の場合にはｃｉを０又は１にランダムに設定する。Ｈｃ＝０である場合、符号語としてｃを出力し、停止する。
【００９０】
オーバーシュート訂正による変数から制約へのメッセージの更新６４０
ｔ＝ｔ＋１にインクリメントする（６５０）。ｔ＞Ｔｍａｘの場合には終了し、失敗を返す（６４１）。それ以外の場合、式（１）に与えられた「オーバーシュート訂正」ルールを使用して変数ノードからの各メッセージを更新し、ステップ１に戻る。
【図１】
0005586336.tif 000038
【図２】
0005586336.tif 000039
【図３】
0005586336.tif 000040
【図４】
0005586336.tif 000041
【図５】
0005586336.tif 000042
【図６】
0005586336.tif 000043