JP5574340B2 - LP decoder in linear code, integer solution calculation method and program - Google Patents

LP decoder in linear code, integer solution calculation method and program Download PDF

Info

Publication number
JP5574340B2
JP5574340B2 JP2011129334A JP2011129334A JP5574340B2 JP 5574340 B2 JP5574340 B2 JP 5574340B2 JP 2011129334 A JP2011129334 A JP 2011129334A JP 2011129334 A JP2011129334 A JP 2011129334A JP 5574340 B2 JP5574340 B2 JP 5574340B2
Authority
JP
Japan
Prior art keywords
coordinates
solution
value
linear programming
integer
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
JP2011129334A
Other languages
Japanese (ja)
Other versions
JP2012257108A (en
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.)
Nippon Telegraph and Telephone Corp
University of Tokyo NUC
Original Assignee
Nippon Telegraph and Telephone Corp
University of Tokyo NUC
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 Nippon Telegraph and Telephone Corp, University of Tokyo NUC filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011129334A priority Critical patent/JP5574340B2/en
Publication of JP2012257108A publication Critical patent/JP2012257108A/en
Application granted granted Critical
Publication of JP5574340B2 publication Critical patent/JP5574340B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Description

本発明は、線形符号におけるLP(線形計画)復号器及び整数解計算方法及びプログラムに係り、特に、線形計画法を用いた符号において整数出力を効率的に実現するためのLP復号器及び整数解計算方法及びプログラムに関する。   The present invention relates to an LP (Linear Programming) decoder and an integer solution calculation method and program in a linear code, and more particularly to an LP decoder and an integer solution for efficiently realizing an integer output in a code using linear programming. The present invention relates to a calculation method and a program.

従来、線形符号における最尤復号を実現する技術として以下のような手法がある。   Conventionally, there are the following techniques as techniques for realizing maximum likelihood decoding in a linear code.

対象となるアルファベットは2値{0,1}とし、2元体としての算法(加法および乗法)が適用されるものとする。   The target alphabet is binary {0, 1}, and binary arithmetic (addition and multiplication) is applied.

まず線形符号における最尤復号を定義する.最尤復号とは、{0,1}上の確率分布P、n×k行列A,及びシンドロームu∈{0,1}kが与えられたとき長さnの2値系列x∈{0,1]nFirst, we define maximum likelihood decoding for linear codes. Maximum likelihood decoding refers to a binary sequence x∈ {0, n of length n given a probability distribution P on {0,1}, an n × k matrix A, and a syndrome u∈ {0,1} k . 1] n

Figure 0005574340
として与えるものである。
Figure 0005574340
As given.

ここで、記号argは右辺のmaxを達成する   Where the symbol arg achieves max on the right

Figure 0005574340
を左辺のxとして出力するという意味である。
Figure 0005574340
Is output as x on the left side.

注目すべきことは式(1)をそのまま実行するのならばnに関して指数オーダーの実行時間が必要となるが、非特許文献1にて提案された緩和法を適用することによって近似的に線形計画法で記述できることが示されているということである。従って、もしAが疎行列、すなわち要素が1である個数が0である個数に比べて圧倒的に少ないならば、シンプレックス法や内点法を適用して式(1)の緩和問題を解けば符号長nに関して多項式オーダーの実行時間となる。式(1)を緩和法によって線形計画問題に書き換えて得られる近似解法をLP復号と呼ぶ(非特許文献1参照)。   What should be noted is that if the expression (1) is executed as it is, an execution time of exponential order is required for n. However, by applying the relaxation method proposed in Non-Patent Document 1, approximately linear programming is performed. It is shown that it can be described by law. Therefore, if A is overwhelmingly smaller than the sparse matrix, that is, the number of elements having 1 is 0, the simplex method or interior point method is applied to solve the relaxation problem of equation (1). The execution time is a polynomial order for the code length n. An approximate solution obtained by rewriting Equation (1) into a linear programming problem by a relaxation method is called LP decoding (see Non-Patent Document 1).

しかし一方で式(1)の条件部分を緩和したことによって、線形計画問題を解いて得られる解は必ずしも整数解とはならないという不都合が生じる。このとき、どのようにして整数解を得るのかが新たな問題である。例えば特許文献1では得られた非整数解において疎行列Aの冗長行と対応する成分を四捨五入によって固定し、残りの成分を連立一次方程式を解くことで求めている。しかしながら、このような方法はヒューリスティックな性質が強く、得られる整数解は確かに式(1)の拘束条件は満たすが、最適値を与えるという保証を与えるものではなかった。   However, on the other hand, by relaxing the condition part of Equation (1), there arises a disadvantage that the solution obtained by solving the linear programming problem is not necessarily an integer solution. At this time, how to obtain an integer solution is a new problem. For example, in Patent Document 1, components corresponding to redundant rows of the sparse matrix A in the obtained non-integer solution are fixed by rounding off, and the remaining components are obtained by solving simultaneous linear equations. However, such a method has strong heuristic properties, and the obtained integer solution certainly satisfies the constraint condition of Equation (1), but does not guarantee that an optimum value is given.

また、非特許文献2では適応的切除平面法という緩和条件に新たな条件を追加する方式で整数解を得る可能性を高めた。しかしながら追加する条件は必ずしも拘束条件の疎行列性を保持しなくなるので実行時間が符号長nに関して多項式オーダーである保証がなくなるという欠点を持つ。   Further, in Non-Patent Document 2, the possibility of obtaining an integer solution is increased by adding a new condition to the relaxation condition called the adaptive cutting plane method. However, the condition to be added does not necessarily hold the sparse matrix property of the constraint condition, so that there is a disadvantage that the execution time is not guaranteed to be in polynomial order with respect to the code length n.

特開2010−016684号公報JP 2010-016684 A

J. Feldman, M. J. Wainwright, and D. R. Karger, "Using linear programming to decode binary linear codes," IEEE Trans. Inform. Theory, vol. 51, no. 3, pp. 954-972, 2005.J. Feldman, M. J. Wainwright, and D. R. Karger, "Using linear programming to decode binary linear codes," IEEE Trans. Inform. Theory, vol. 51, no. 3, pp. 954-972, 2005. 村松 純, "線形計画法を用いた2元線形符号の復号における適応的切除平面法の改良," 信学技報, vol. IT2010, no. 40, pp. 37-42, 2010.Jun Muramatsu, "Improvement of adaptive cutting plane method for decoding binary linear codes using linear programming," IEICE Technical Report, vol. IT2010, no. 40, pp. 37-42, 2010.

上記のように、従来の手法では、LP復号器の実現において線形計画法を用いた際に、出力が非整数解となる、アルゴリズムの実行時間が符号長に関して多項式オーダーである保証がなくなるという欠点があった。   As described above, in the conventional method, when linear programming is used in the realization of the LP decoder, the output is a non-integer solution, and the execution time of the algorithm is not guaranteed to be in polynomial order with respect to the code length. was there.

本発明は、上記の点に鑑みなされたもので、前述の式(1)を緩和した線形計画問題をシンプレックス法などの適切な方法を用いて解いた際に最適な整数解を得やすくするために全体のアルゴリズムを見直し、また、見直した後のアルゴリズムの実行時間は符号を構成する行列が疎行列である場合、符号長nに関して多項式オーダーとなるようなLP復号器及び整数解計算方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above points, and makes it easy to obtain an optimal integer solution when solving a linear programming problem in which the above equation (1) is relaxed using an appropriate method such as the simplex method. The LP decoder and integer solution calculation method and program so that the execution time of the algorithm after the review is a polynomial order with respect to the code length n when the matrix constituting the code is a sparse matrix The purpose is to provide.

上記の課題を解決するため、対象となるアルファベットを2値{0,1}とし、該{0,1}上の確率分布P、n×k行列A,及びシンドロームu∈{0,1}kが与えられたとき長さnの2値系列x∈{0,1}nIn order to solve the above problem, the target alphabet is a binary {0, 1}, the probability distribution P on the {0, 1}, the n × k matrix A, and the syndrome u∈ {0, 1} k. Given a binary sequence x∈ {0,1} n of length n

Figure 0005574340
(但し、記号argは右辺のmaxを達成する
Figure 0005574340
(However, the symbol arg achieves max on the right side.

Figure 0005574340
を左辺のxとして出力することを意味する)
として与える線形符号の最適な整数解を求める最尤復号器であって、
前記式(1)の緩和問題を線形計画法によって解く線形計画問題処理手段と、
拘束条件とする座標数をλとして、前記2値系列のn個の座標xのうち、λ個をランダムに選択し、
実行可能領域を前記線形計画問題処理手段により得られた目的関数fの最適値から所定の値までを一定間隔εで等分した領域スライス領域として、一の前記スライス領域について
前記選択したλ個の座標xをそれぞれ0もしくは1に設定した一の場合について、
前記選択したλ個の座標x以外の(n−λ)個の座標のうちの一の座標xを対象として、当該座標xに0もしくは1を代入し、前記式(1)の緩和問題における実行可能解が存在するか否かを線形計画法によって判定し、
実行可能解が存在する場合には、当該座標xを前記代入した値に設定した上で、前記(n−λ)個の座標のうちの他の座標xを対象として同様の判定を実行し、
実行可能解が存在しない場合には、前記選択したλ個の座標xをそれぞれ0もしくは1に設定した他の場合について同様の判定を実行し、
前記選択したλ個の座標xをそれぞれ0もしくは1に設定したいずれかの場合について、全ての前記(n−λ)個の座標に対して実行可能解が存在すると判定された場合に、各座標xを前記代入した値に設定して、前記式(1)の緩和問題を線形計画法によって解き、前記目的関数fの最適値を与える各座標xが全て整数値ならば、当該各座標xを整数解として出力し、それ以外の場合はその時点で得られた非整数解を記憶手段に格納し、
他の前記スライス領域について同様の処理を実行し、すべての前記スライス領域について該処理を実行した時点でも整数解が得られない場合には、それまでに該記憶手段に格納されている解を出力する判別アルゴリズム実行手段と、を有する。
Figure 0005574340
Is output as x on the left side)
A maximum likelihood decoder for finding an optimal integer solution of a linear code given as
Linear programming problem processing means for solving the relaxation problem of the equation (1) by linear programming;
The number of coordinates as a constraint condition is λ, and among the n coordinates x of the binary series, λ are randomly selected,
With respect to one slice area , each area obtained by equally dividing an executable area from the optimal value of the objective function f obtained by the linear programming problem processing means to a predetermined value at a constant interval ε is defined as a slice area .
For the one case where the selected λ coordinates x are set to 0 or 1, respectively.
Execution in the relaxation problem of the equation (1) by substituting 0 or 1 for the coordinate x of one of (n−λ) coordinates other than the selected λ coordinates x. Determine whether a possible solution exists by linear programming ,
If feasible solution is you present, after setting the coordinates x to a value obtained by the assignment, perform the same determination as the object other coordinate x of the (n-lambda) pieces of coordinates ,
If no feasible solution exists, the same determination is performed for other cases where the selected λ coordinates x are set to 0 or 1, respectively.
For each case where the selected λ coordinates x are set to 0 or 1, respectively, when it is determined that there is an executable solution for all the (n−λ) coordinates, If x is set to the substituted value, the relaxation problem of the equation (1) is solved by linear programming, and each coordinate x giving the optimum value of the objective function f is an integer value, the coordinate x is Output as an integer solution, otherwise store the non-integer solution obtained at that time in the storage means,
It performs the same processing for the other of the slice areas, when no integer solution can be obtained even when all of executing the slice areas the processing for the output of the solution stored in the storage means so far Discriminating algorithm executing means.

上記のように、本発明によれば、LP復号問題における実行可能領域を適切に分割し、順番に各領域内に超立方体の頂点が含まれるかどうかを判別する、という方式を採用したことで、頂点を含む/含まない、の判別のための実行時間が符号長nに関して多項式オーダーであるならば符号化アルゴリズム全体も多項式オーダーとなることが示せる。   As described above, according to the present invention, the feasible region in the LP decoding problem is appropriately divided, and in order to determine whether or not a hypercube vertex is included in each region, If the execution time for determining whether or not the vertex is included is in the polynomial order with respect to the code length n, it can be shown that the entire encoding algorithm is also in the polynomial order.

これにより、LP復号器を用いるデータ圧縮符号化や誤り訂正符号化の実行時間を短縮することができ、効率のよい符号化の実現が可能となる。   As a result, it is possible to reduce the execution time of data compression coding and error correction coding using an LP decoder, and it is possible to realize efficient coding.

本発明の一実施の形態における線形符号器の構成図である。It is a block diagram of the linear encoder in one embodiment of this invention. 式(1)を緩和した線形計画問題の模式図である。It is a schematic diagram of the linear programming problem which relaxed Formula (1). 本発明の一実施の形態における実行可能領域の分割の例である。It is an example of the division | segmentation of the executable area | region in one embodiment of this invention. 本発明の一実施の形態における判別アルゴリズム(n=2)である。It is a discrimination algorithm (n = 2) in an embodiment of the present invention. 本発明の一実施の形態における全体アルゴリズムである。It is a whole algorithm in one embodiment of the present invention. 本発明の一実施の形態における判別アルゴリズムである。It is a discrimination algorithm in one embodiment of the present invention. 既存アルゴリズムとの比較である。It is a comparison with existing algorithms.

以下図面と共に、本発明の実施の形態を説明する。   Embodiments of the present invention will be described below with reference to the drawings.

図1は、本発明の一実施の形態におけるLP復号器の構成を示す。   FIG. 1 shows a configuration of an LP decoder according to an embodiment of the present invention.

本発明のLP復号器は、入力部1、記憶部2、出力部3、処理部10から構成される。記憶部2は、メモリやハードディスク等の記憶媒体である。   The LP decoder of the present invention includes an input unit 1, a storage unit 2, an output unit 3, and a processing unit 10. The storage unit 2 is a storage medium such as a memory or a hard disk.

処理部10は、判別アルゴリズム実行部11と線形計画問題処理部12から構成される。   The processing unit 10 includes a discrimination algorithm execution unit 11 and a linear programming problem processing unit 12.

入力部1は、シンドロームu(長さkの2値系列)、領域分割のパラメータε、判別アルゴリズムで拘束条件とする座標数λを入力する。   The input unit 1 inputs a syndrome u (binary series of length k), a region division parameter ε, and a coordinate number λ used as a constraint condition by a discrimination algorithm.

記憶部2は、n×k行列A、{0,1}上の確率分布Pを格納する。   The storage unit 2 stores the probability distribution P on the n × k matrix A, {0, 1}.

判別アルゴリズム実行部11は、実行可能領域を目的関数f平行にfの最適値から適切な値(例えばfの初期値)を一定間隔(ε)で分割した領域について、順に走査して単位正方形(単位超立方体)の頂点が含まれる場合に当該含まれる頂点の座標xを最適解として出力部3に出力する。判別アルゴリズム実行部11は、走査途中の暫定解を格納するためのメモリ(図示せず)を具備しているものとする。   The discrimination algorithm execution unit 11 sequentially scans an executable area in an object function f parallel to an appropriate value (for example, an initial value of f) from an optimal value of f at a constant interval (ε) to scan a unit square ( When the vertex of the unit hypercube is included, the coordinate x of the included vertex is output to the output unit 3 as an optimal solution. The discrimination algorithm execution unit 11 is assumed to include a memory (not shown) for storing a provisional solution during scanning.

線形計画問題処理部12は、前述の式(1)の緩和問題を線形計画法によって解く。   The linear programming problem processing unit 12 solves the relaxation problem of Equation (1) described above by linear programming.

図2は、式(1)を緩和した線形計画問題を模式化したものである。   FIG. 2 schematically shows a linear programming problem in which Equation (1) is relaxed.

同図の塗りつぶされた凸領域が実行可能領域で、この領域と図中の線a(目的関数fに相当する)とが接する点が線形計画問題の解である。   The filled convex area in the figure is the executable area, and the point where this area and the line a (corresponding to the objective function f) in the figure contact is the solution of the linear programming problem.

図2にて示される最適解は非整数解である。この場合、最適解を与えるxの値は(1,0)であるので、元の線形計画問題に新たな工夫を施して(1,0)を出力するようにしたい。   The optimal solution shown in FIG. 2 is a non-integer solution. In this case, since the value of x that gives the optimal solution is (1,0), it is desired to give a new idea to the original linear programming problem and output (1,0).

まず図3で示すように図2の線a(目的関数fの最適値Slice(0))と平行な直線(Slice(r))を一定間隔(ε)で描くことで実行可能領域を分割する。分割された各領域(以下、「スライス領域」と記す)は線形計画法の最適解を含む領域から順に番号付けが可能であることに注意する。   First, as shown in FIG. 3, the executable region is divided by drawing a straight line (Slice (r)) parallel to the line a in FIG. 2 (the optimum value Slice (0) of the objective function f) at a constant interval (ε). . Note that each divided region (hereinafter referred to as “slice region”) can be numbered sequentially from the region including the optimal solution of linear programming.

本実施の形態で行うことは、判別アルゴリズム実行部11において、判別アルゴリズムにより分割された各スライス領域を順に走査して、単位正方形の頂点を含むか否かをチェックすることである。単位正方形が含まれた最初の領域が見つかれば、判別アルゴリズム実行部11は領域に含まれる単位正方形の頂点座標(x0,x)を出力して終了する。ここで注意すべきことは間隔εを十分小さくとれば各領域の幅が小さくなるので、単位正方形の頂点を複数個含む場合の出現頻度は無視できることである。 What is performed in the present embodiment is that the discrimination algorithm execution unit 11 sequentially scans each slice area divided by the discrimination algorithm to check whether or not the vertex of the unit square is included. If the first area including the unit square is found, the discrimination algorithm execution unit 11 outputs the vertex coordinates (x 0 , x 1 ) of the unit square included in the area and ends. What should be noted here is that if the interval ε is sufficiently small, the width of each region is reduced, so that the appearance frequency when a plurality of unit square vertices are included can be ignored.

以下に、判別アルゴリズム実行部11において実行される判別アルゴリズムについて説明する。   Hereinafter, the discrimination algorithm executed by the discrimination algorithm execution unit 11 will be described.

図4は、本発明の一実施の形態における判別アルゴリズム(n=2)の例である。   FIG. 4 is an example of a discrimination algorithm (n = 2) in an embodiment of the present invention.

同図は、図3に示す各領域において単位正方形の頂点が含まれるか否かをチェックする判別アルゴリズム(n=2の場合)である。   This figure is a discrimination algorithm (in the case of n = 2) for checking whether or not the vertex of the unit square is included in each area shown in FIG.

まず、判別アルゴリズム実行部11は、拘束条件とする座標のインデックスjを0とし、領域のインデックスrを0とし、初期化を行う。   First, the discrimination algorithm execution unit 11 performs initialization by setting the coordinate index j as a constraint condition to 0 and the region index r to 0.

次に、xに0及び1を代入して前述の緩和問題の式(1)の拘束条件として追加した緩和問題について領域r内に実行可能解があるかどうかをチェックする(Step1)。実行可能解が存在すれば「OK」、存在しなければ「NG」とする。チェックはCase1〜Case4に示すとおりである。 Next, it is checked whether or not there is an executable solution in the region r for the relaxation problem added as a constraint condition of the above-described relaxation problem equation (1) by substituting 0 and 1 for x j (Step 1). If there is an executable solution, it is “OK”, and if not, “NG”. The check is as shown in Case 1 to Case 4.

Case1の場合(xj=0もxj=1もNG)は、r=r+1、j=0として当該Step1を繰り返す。 In Case 1 (x j = 0 and x j = 1 are both NG), Step 1 is repeated with r = r + 1 and j = 0.

Case2の場合(xj=0はOK、xj=1はNG)は、xj=0を式(1)の拘束条件に追加して、線形計画問題を解くソルバ(シンプレックス法や内点法等)を呼び出して緩和問題を解く。緩和問題を解いた結果、最適値を与えるx*が整数値をとるならば、xout=x*を整数解として出力部3に出力する。そうでない場合は、j=0のきはj=1とインクリメントして当該Step1を行う。j=1のときはr=r+1、j=0として当該Step1を行う。 In Case 2 (x j = 0 is OK, x j = 1 is NG), x j = 0 is added to the constraint in equation (1) to solve the linear programming problem (simplex method or interior point method) Etc.) to solve the relaxation problem. As a result of solving the relaxation problem, if x * giving the optimum value takes an integer value, x out = x * is output to the output unit 3 as an integer solution. If this is not the case, j = 1 is incremented to j = 1 and Step 1 is performed. When j = 1, Step 1 is performed with r = r + 1 and j = 0.

Case3の場合(xj=0はNG、xj=1はOK)は、xj=1を式(1)の拘束条件に追加して、上記と同様に、シンプレックス法や内点法等の線形計画問題を解くソルバを呼び出して緩和問題を解く。緩和問題を解いた結果、最適値を与えるx*が整数値をとるならば、xout=x*を整数解として出力部3に出力する。そうでない場合は、j=0のきはj=1とインクリメントして当該Step1を行う。j=1のときはr=r+1、j=0として当該Step1を行う。 In Case 3 (x j = 0 is NG, x j = 1 is OK), x j = 1 is added to the constraint condition of the formula (1), and the simplex method, interior point method, etc. Call a solver to solve the linear programming problem to solve the relaxation problem. As a result of solving the relaxation problem, if x * giving the optimum value takes an integer value, x out = x * is output to the output unit 3 as an integer solution. If this is not the case, j = 1 is incremented to j = 1 and Step 1 is performed. When j = 1, Step 1 is performed with r = r + 1 and j = 0.

Case4の場合(xj=0もxj=1もOK)は、最適値を与えるx*を整数値をとるように近似したものを暫定解としてメモリに保持する。j=0のきはj=1とインクリメントして当該Step1を行う。j=1のときはr=r+1、j=0として当該Step1を行う。 In the case of Case 4 (both x j = 0 and x j = 1), an approximation of x * giving the optimum value so as to take an integer value is held in the memory as a provisional solution. When j = 0, the step 1 is incremented with j = 1. When j = 1, Step 1 is performed with r = r + 1 and j = 0.

上記のStep1では、xに0及び1を代入して、式(1)の拘束条件として追加した緩和問題についてスライス領域r内に実行可能解があるかどうかをCase1〜Case4についてチェックしている。例えば、図3の領域bではx0=1の条件下で実行可能解が存在する(図4:Step 1のCase 3)が、x*は整数解とならない。整数解は図3の領域cに存在する。このとき、判別アルゴリズム(図4)のStep 1において、実行可能解の有無の判別は線形計画問題に帰着することに注意しておく。なお、図4のStep 1のCase 2およびCase 3でx*が整数値からなるかどうかを判別しているが、この際には厳密に整数かどうかの判別ではなくε/2程度の誤差を許容している。 In the above Step1, by substituting 0 and 1 to x j, are checked for whether there is a feasible solution for alleviating problems added as a constraint condition of formula (1) in the slice area r Case1~Case4 . For example, in the region b in FIG. 3, there is an executable solution under the condition of x 0 = 1 (FIG. 4: Case 1 in Step 1), but x * is not an integer solution. The integer solution exists in region c of FIG. At this time, it should be noted that in Step 1 of the discrimination algorithm (FIG. 4), the determination of the presence or absence of an executable solution results in a linear programming problem. Note that it is determined whether x * is an integer value in Case 2 and Case 3 of Step 1 in FIG. 4. In this case, an error of about ε / 2 is not used instead of determining whether or not it is an integer. Allowed.

図4のCase 4は、条件x=0もxj=1も注目しているスライス領域と交叉するか接する場合である。この場合、x=0もxj=1も有効な拘束条件とならないため現時点で得られている最適値x*(非整数解)を適切に処理したもの(処理の仕方は特許文献1などを参照)を暫定解としてメモリに記憶することになる。この暫定解は全てのスライス領域まで走査された後でも整数解が得られない場合にその時点でメモリに保持されているものが出力される役割を持つ。 Case 4 in FIG. 4 is a case where both the condition x j = 0 and x j = 1 intersect or touch the slice area of interest. In this case, neither x j = 0 nor x j = 1 is an effective constraint condition, and the optimum value x * (non-integer solution) obtained at the present time is appropriately processed (the processing method is, for example, Patent Document 1) Is stored in the memory as a provisional solution. This provisional solution has a role of outputting what is stored in the memory at that time when an integer solution cannot be obtained even after all slice regions have been scanned.

以上は、簡単のためにn=2の場合のアルゴリズムを説明した。一般の場合のアルゴリズムは図5および図6に示すように、全体アルゴリズムと判別アルゴリズムからなる。   The above describes the algorithm when n = 2 for simplicity. As shown in FIGS. 5 and 6, the general algorithm is composed of an overall algorithm and a discrimination algorithm.

まず、図5の全体アルゴリズムについて説明する。   First, the overall algorithm of FIG. 5 will be described.

最初に処理部10は、入力部1より長さkの2値系列uを取得し、記憶部2よりn×k行列Aと{0,1}上の確率分布Pを取得する。さらに、領域のインデックスrを0とする。   First, the processing unit 10 acquires a binary series u having a length k from the input unit 1, and acquires an n × k matrix A and a probability distribution P on {0, 1} from the storage unit 2. Further, the area index r is set to 0.

Step1において、線形計画問題処理部12は、入力されたu,A,Pを用いて、式(1)の緩和問題を線形計画法により解く。判別アルゴリズム実行部11は、線形計画問題処理部12で得られた値について、目的関数fの最適値(=f*)を与えるベクトルx*の各座標が全て整数値ならば、xout=xとして出力部3に出力して終了する。それ以外の場合は、
Slice(r)=目的関数の最適値,Slice(r+1)=Slice(r)+ε
として、Step2に移行する。
In Step 1, the linear programming problem processing unit 12 uses the input u, A, P to solve the relaxation problem of Equation (1) by linear programming. The discriminant algorithm execution unit 11 uses the value obtained by the linear programming problem processing unit 12 as long as all the coordinates of the vector x * giving the optimal value (= f * ) of the objective function f are integer values, x out = x Is output to the output unit 3 and the process ends. Otherwise,
Slice (r) = optimal value of objective function, Slice (r + 1) = Slice (r) + ε
Then, go to Step2.

Step2では、判別アルゴリズム実行部11において、   In Step 2, in the discrimination algorithm execution unit 11,

Figure 0005574340
ならば終了する。この場合は走査中の暫定解を格納するメモリ上にある値が出力される。ここで、fmaxは目的関数fの最大値(もしくはfの初期値)である。そうでないならば、図6に示す判別アルゴリズムを実行する。
Figure 0005574340
If so, exit. In this case, a value on a memory storing the provisional solution being scanned is output. Here, f max is the maximum value of the objective function f (or the initial value of f). Otherwise, the discrimination algorithm shown in FIG. 6 is executed.

図6の判別アルゴリズムについて説明する。   The discrimination algorithm of FIG. 6 will be described.

判別アルゴリズム処理部11は、入力部1より領域のインデックスr、領域の下限のSlice(r)、記憶部2より拘束条件とする座標数λ、領域分割のパラメータεを取得する。更に、初期化処理として、拘束条件のインデックスjを0とし、   The discrimination algorithm processing unit 11 acquires the region index r, the lower limit Slice (r) of the region from the input unit 1, the coordinate number λ as a constraint condition, and the region division parameter ε from the storage unit 2. Furthermore, as an initialization process, the constraint condition index j is set to 0,

Figure 0005574340
を[0:n-1]よりランダムに選ぶ。
Figure 0005574340
Is randomly selected from [0: n-1].

Step1において、座標集合I1,I2について、 In Step1, for coordinate sets I 1 and I 2 ,

Figure 0005574340
を求める。
Figure 0005574340
Ask for.

Step2において、I2 =I1ならばStep4に移行し、そうでないならばI2:=I1, i:=0とし、Step3に移行する。 In Step 2, if I 2 = I 1 , the process proceeds to Step 4; otherwise, I 2 : = I 1 , i: = 0, and the process proceeds to Step 3.

Step3において、i ∈ I1ならば、i:= i + 1とし、Step3へ進む。この処理は既定の拘束条件I1に加え、新たな拘束条件に対応するインデックスを探すためのものである。i ∈ I1でないならば、線形計画問題処理部12において、xに0もしくは1を代入して、xの値及びIndexにおいて2以外の値をとる座標の値及びSlice(r)≦f<Slice(r+1)を拘束条件に追加した式(1)の緩和問題における実行可能解の有無を線形計画法で解き、実行可能解が存在する場合はOK、そうでない場合はNGとする。 In step 3, if i ∈ I 1 , i: = i + 1 is set, and the process proceeds to step 3. This process, in addition to the default constraints I 1, is intended for searching an index corresponding to the new constraints. If i ∈ not I 1, in the linear programming problem processor 12, by substituting 0 or 1 to x i, the coordinates of a value other than 2 in value and Index of x i values and Slice (r) ≦ f <Solve the feasibility of the relaxation problem of equation (1) with Slice (r + 1) added to the constraint by linear programming. If there is a feasible solution, it is OK. Otherwise, it is NG. .

Case1の場合(x=0もx=1もNG)は、j:=j+1としてI1を別の拘束条件の組にインクリメントし、Step1に戻る。もし、 In Case 1 (x i = 0 and x i = 1 are both NG), j: = j + 1 and I 1 is incremented to another set of constraint conditions, and the process returns to Step 1. if,

Figure 0005574340
ならば、r:=r+1として図5の全体アルゴリズムのStep2へ戻る。
Figure 0005574340
Then, r: = r + 1 and return to Step 2 of the overall algorithm of FIG.

Case2の場合(x=0はOK、x=1はNG)は、Indexの第i座標を0にセットし、 In Case 2 (x i = 0 is OK, x i = 1 is NG), the i-th coordinate of Index is set to 0,

Figure 0005574340
とし、i<nならばStep3へ移行し、i=nならばStep2へ戻る。
Figure 0005574340
If i <n, go to Step 3. If i = n, go back to Step 2.

Case3の場合(x=0はNG、x=1はOK)は、Indexの第i座標を1にセットする。 In Case 3 (x i = 0 is NG, x i = 1 is OK), the i-th coordinate of Index is set to 1.

Figure 0005574340
とし、i<nならばStep3へ移行し、i=nならばStep2へ戻る。
Figure 0005574340
If i <n, go to Step 3. If i = n, go back to Step 2.

Case4の場合(x=0もx=1もOK)は、i:=i+1とし、i<nならばStep3へ移行し、i=nならばStep2へ戻る。各rに対して拘束条件の集合I1が大きくなれば次のStep4において整数解を得やすくなるというのが本アルゴリズムの眼目である.
Step4において、線形計画問題処部12は、Indexにおいて2以外の値をとる座標の値及びSlice(r)≦f<Slice(r+1)を拘束条件に追加した式(1)の緩和問題を線形計画法で解く。その結果、目的関数fの最適値(=f*)を与えるベクトルx*の各座標が全て整数値ならばxout=x*として終了する。それ以外の場合は、適切な方法(例えば、非特許文献1)による出力をxoutの暫定解としてメモリに保持し、r:=r+1として図5の全体アルゴリズムのStep2へ戻る。
In Case 4 (both x i = 0 and x i = 1 are OK), i: = i + 1 is set, and if i <n, the process proceeds to Step 3, and if i = n, the process returns to Step 2. The eye of this algorithm is that if the set of constraints I 1 for each r becomes larger, it becomes easier to obtain an integer solution in the next Step 4.
In Step 4, the linear programming problem processing unit 12 solves the relaxation problem of the equation (1) in which a coordinate value having a value other than 2 in Index and Slice (r) ≦ f <Slice (r + 1) are added as constraints. Solve with linear programming. As a result, if all the coordinates of the vector x * giving the optimum value (= f *) of the objective function f are all integer values, the processing ends as x out = x *. Otherwise, a suitable method (e.g., Non-Patent Document 1) output by the hold in the memory as an interim solution for x out, r: = a r + 1 Return to Step2 overall algorithm of FIG.

上記の図5・図6と図4との大きな違いは、座標に関する拘束条件(x=0またはxj=1)を式(1)に追加に追加する前に、新たに前提 The major difference between FIG. 5 and FIG. 6 and FIG. 4 is that a new assumption is made before adding a constraint condition related to coordinates (x j = 0 or x j = 1) to equation (1).

Figure 0005574340
を既定の拘束条件としてアドホックに固定していることである。この前提条件は図6のStep 1において
Figure 0005574340
Is fixed to ad hoc as a default constraint. This precondition is shown in Step 1 of FIG.

Figure 0005574340
の全ての場合を(最悪の場合)尽くすことになる(図7で示すシミュレーションではλ=3である)。
Figure 0005574340
(Worst case) is exhausted (λ = 3 in the simulation shown in FIG. 7).

また、図6のStep 1で定義する座標集合Indexはその要素の値が2以外の座標についてはIndexにある値が注目しているスライス領域での拘束条件となる。   In addition, the coordinate set Index defined in Step 1 of FIG. 6 is a constraint condition in the slice region where the value in the Index is focused on for coordinates whose element value is other than 2.

なお、図6のStep 2においてI2=I1となる場合は、その前処理のStep 3においてI1に入っていない全ての座標xjに関してxj=0もxj=1も新たな拘束条件として追加されなかったことを示すことに注意する。このときは、最終的な拘束条件I1(もしくはIndex)を用いてStep 4にて最適化を実行する。 If I 2 = I 1 in Step 2 of FIG. 6, x j = 0 and x j = 1 are new constraints for all coordinates x j not included in I 1 in Step 3 of the preprocessing. Note that it indicates that it was not added as a condition. At this time, optimization is executed in Step 4 using the final constraint condition I 1 (or Index).

また、図6のStep 4で保持される暫定解は、全てのスライス領域まで走査された後でも整数解が得られない場合にその時点で保持されているものが出力される役割を持つ。   Further, the provisional solution held in Step 4 of FIG. 6 has a role of outputting the one held at that time when an integer solution cannot be obtained even after all slice regions have been scanned.

上記のように、本実施の形態では、式(1)の近似解法を念頭に置いた。情報理論では式(1)は情報源符号化問題において出現する最適化問題である。一方、通信路符号化問題や有歪み情報源符号化問題においても式(1)と等価な問題に帰着できることが知られている(文献:S. Miyake and J. Muramatsu, "Construction of a lossy source code using LDPC matrices," IEICE Trans. Fundam., vol. E-91A, no. 6, pp. 1488-1501, 2008.)。従って、データ圧縮、誤り訂正に関する問題における符号を疎行列を用いて構成する場合、本アルゴリズムを線形計画法と併用することによって効率良い符号化実現が可能となる。   As described above, in the present embodiment, the approximate solution method of Equation (1) is considered. In information theory, equation (1) is an optimization problem that appears in the information source coding problem. On the other hand, it is known that the channel coding problem and the distortion information source coding problem can be reduced to a problem equivalent to the equation (1) (reference: S. Miyake and J. Muramatsu, “Construction of a lossy source”). code using LDPC matrices, "IEICE Trans. Fundam., vol. E-91A, no. 6, pp. 1488-1501, 2008.). Therefore, when a code related to data compression and error correction is configured using a sparse matrix, efficient encoding can be realized by using this algorithm in combination with linear programming.

なお図7は、式(1)を緩和して線形計画法で解く際に非整数解出力を回避するための既存のアルゴリズム(非特許文献2)と比較したものである。同図中、"Standard","Cutting Plane","Slice"はそれぞれ式(1)を緩和したものを線形計画問題で解いただけのもの、Standardの条件に加え切除平面法を用いたもの、Standardの条件に加え本アルゴリズムを用いたものである。切除平面法を用いたアルゴリズムの結果が復号誤りの観点からは最も良く、本発明によるものがそれに次ぐ。ただし、非特許文献2の切除平面法は、符号を構成する行列から新たな拘束条件を見出し追加するという方式であるため、必ずしも行列の疎行列性は有効に利用されない。従って本方式とは異なり符号長nに関する多項式オーダーの実行時間は保証されていない。   FIG. 7 is a comparison with an existing algorithm (Non-Patent Document 2) for avoiding non-integer solution output when the equation (1) is relaxed and solved by linear programming. In the figure, "Standard", "Cutting Plane", and "Slice" are obtained by solving the equation (1) with a linear programming problem, using the cutting plane method in addition to the Standard conditions, and Standard In addition to the above conditions, this algorithm is used. The result of the algorithm using the cut-off plane method is the best from the viewpoint of decoding error, followed by the one according to the present invention. However, since the cutting plane method of Non-Patent Document 2 is a method in which a new constraint condition is found and added from a matrix constituting a code, the sparse matrix property of the matrix is not always effectively used. Therefore, unlike this method, the execution time of the polynomial order for the code length n is not guaranteed.

なお、上記の実施の形態では、図1の線形符号器の構成に基づいて説明したが、当該装置は、コンピュータとプログラムによっても実現でき、プログラムを記憶媒体に記録することも、ネットワークを通して提供することも可能である。   Although the above embodiment has been described based on the configuration of the linear encoder in FIG. 1, the apparatus can be realized by a computer and a program, and the program can be recorded on a storage medium or provided through a network. It is also possible.

本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。   The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.

1 入力部
2 記憶部
3 出力部
10 処理部
11 判別アルゴリズム実行部
12 線形計画問題処理部
1 Input unit 2 Storage unit 3 Output unit 10 Processing unit 11 Discrimination algorithm execution unit 12 Linear programming problem processing unit

Claims (3)

対象となるアルファベットを2値{0,1}とし、該{0,1}上の確率分布P、n×k行列A,及びシンドロームu∈{0,1}kが与えられたとき長さnの2値系列x∈{0,1}n
Figure 0005574340
(但し、記号argは右辺のmaxを達成する
Figure 0005574340
を左辺のxとして出力することを意味する)
として与える線形符号の最適な整数解を求める最尤復号器であって、
前記式(1)の緩和問題を線形計画法によって解く線形計画問題処理手段と、
拘束条件とする座標数をλとして、前記2値系列のn個の座標xのうち、λ個をランダムに選択し、
実行可能領域を前記線形計画問題処理手段により得られた目的関数fの最適値から所定の値までを一定間隔εで等分した領域スライス領域として、一の前記スライス領域について
前記選択したλ個の座標xをそれぞれ0もしくは1に設定した一の場合について、
前記選択したλ個の座標x以外の(n−λ)個の座標のうちの一の座標xを対象として、当該座標xに0もしくは1を代入し、前記式(1)の緩和問題における実行可能解が存在するか否かを線形計画法によって判定し、
実行可能解が存在する場合には、当該座標xを前記代入した値に設定した上で、前記(n−λ)個の座標のうちの他の座標xを対象として同様の判定を実行し、
実行可能解が存在しない場合には、前記選択したλ個の座標xをそれぞれ0もしくは1に設定した他の場合について同様の判定を実行し、
前記選択したλ個の座標xをそれぞれ0もしくは1に設定したいずれかの場合について、全ての前記(n−λ)個の座標に対して実行可能解が存在すると判定された場合に、各座標xを前記代入した値に設定して、前記式(1)の緩和問題を線形計画法によって解き、前記目的関数fの最適値を与える各座標xが全て整数値ならば、当該各座標xを整数解として出力し、それ以外の場合はその時点で得られた非整数解を記憶手段に格納し、
他の前記スライス領域について同様の処理を実行し、すべての前記スライス領域について該処理を実行した時点でも整数解が得られない場合には、それまでに該記憶手段に格納されている解を出力する判別アルゴリズム実行手段と、
を有することを特徴とするLP復号器。
The target alphabet is a binary value {0, 1}, and a probability distribution P on the {0, 1}, an n × k matrix A, and a syndrome u∈ {0, 1} k are given length n. The binary series x∈ {0,1} n
Figure 0005574340
(However, the symbol arg achieves max on the right side.
Figure 0005574340
Is output as x on the left side)
A maximum likelihood decoder for finding an optimal integer solution of a linear code given as
Linear programming problem processing means for solving the relaxation problem of the equation (1) by linear programming;
The number of coordinates as a constraint condition is λ, and among the n coordinates x of the binary series, λ are randomly selected,
With respect to one slice area , each area obtained by equally dividing an executable area from the optimal value of the objective function f obtained by the linear programming problem processing means to a predetermined value at a constant interval ε is defined as a slice area .
For the one case where the selected λ coordinates x are set to 0 or 1, respectively.
Execution in the relaxation problem of the equation (1) by substituting 0 or 1 for the coordinate x of one of (n−λ) coordinates other than the selected λ coordinates x. Determine whether a possible solution exists by linear programming ,
If feasible solution is you present, after setting the coordinates x to a value obtained by the assignment, perform the same determination as the object other coordinate x of the (n-lambda) pieces of coordinates ,
If no feasible solution exists, the same determination is performed for other cases where the selected λ coordinates x are set to 0 or 1, respectively.
For each case where the selected λ coordinates x are set to 0 or 1, respectively, when it is determined that there is an executable solution for all the (n−λ) coordinates, If x is set to the substituted value, the relaxation problem of the equation (1) is solved by linear programming, and each coordinate x giving the optimum value of the objective function f is an integer value, the coordinate x is Output as an integer solution, otherwise store the non-integer solution obtained at that time in the storage means,
It performs the same processing for the other of the slice areas, when no integer solution can be obtained even when all of executing the slice areas the processing for the output of the solution stored in the storage means so far A discrimination algorithm executing means for
An LP decoder comprising:
対象となるアルファベットを2値{0,1}とし、該{0,1}上の確率分布P、n×k行列A,及びシンドロームu∈{0,1}kが与えられたとき長さnの2値系列x∈{0,1}n
Figure 0005574340
(但し、記号argは右辺のmaxを達成する
Figure 0005574340
を左辺のxとして出力することを意味する)
として与える線形符号の最適な整数解を求める整数解計算方法であって、
線形計画問題処理手段が、前記式(1)の緩和問題を線形計画法によって解く線形計画問題処理ステップと、
判別アルゴリズム実行手段が、
拘束条件とする座標数をλとして、前記2値系列のn個の座標xのうち、λ個をランダムに選択し、
実行可能領域を前記線形計画問題処理ステップで得られた目的関数fの最適値から所定の値までを一定間隔εで等分した領域スライス領域として、一の前記スライス領域について
前記選択したλ個の座標xをそれぞれ0もしくは1に設定した一の場合について、
前記選択したλ個の座標x以外の(n−λ)個の座標のうちの一の座標xを対象として、当該座標xに0もしくは1を代入し、前記式(1)の緩和問題における実行可能解が存在するか否かを線形計画法によって判定し、
実行可能解が存在する場合には、当該座標xを前記代入した値に設定した上で、前記(n−λ)個の座標のうちの他の座標xを対象として同様の判定を実行し、
実行可能解が存在しない場合には、前記選択したλ個の座標xをそれぞれ0もしくは1に設定した他の場合について同様の判定を実行し、
前記選択したλ個の座標xをそれぞれ0もしくは1に設定したいずれかの場合について、全ての前記(n−λ)個の座標に対して実行可能解が存在すると判定された場合に、各座標xを前記代入した値に設定して、前記式(1)の緩和問題を線形計画法によって解き、前記目的関数fの最適値を与える各座標xが全て整数値ならば、当該各座標xを整数解として出力し、それ以外の場合はその時点で得られた非整数解を記憶手段に格納し、
他の前記スライス領域について同様の処理を実行し、すべての前記スライス領域について該処理を実行した時点でも整数解が得られない場合には、それまでに該記憶手段に格納されている解を出力する判別アルゴリズム実行ステップと、
を行うことを特徴とする整数解計算方法。
The target alphabet is a binary value {0, 1}, and a probability distribution P on the {0, 1}, an n × k matrix A, and a syndrome u∈ {0, 1} k are given length n. The binary series x∈ {0,1} n
Figure 0005574340
(However, the symbol arg achieves max on the right side.
Figure 0005574340
Is output as x on the left side)
An integer solution calculation method for obtaining an optimal integer solution of a linear code given as
A linear programming problem processing means for solving the relaxation problem of the equation (1) by linear programming;
The discrimination algorithm execution means is
The number of coordinates as a constraint condition is λ, and among the n coordinates x of the binary series, λ are randomly selected,
With respect to one slice area , each area obtained by equally dividing an executable area from the optimal value of the objective function f obtained in the linear programming problem processing step to a predetermined value at a constant interval ε is defined as a slice area .
For the one case where the selected λ coordinates x are set to 0 or 1, respectively.
Execution in the relaxation problem of the equation (1) by substituting 0 or 1 for the coordinate x of one of (n−λ) coordinates other than the selected λ coordinates x. Determine whether a possible solution exists by linear programming ,
If feasible solution is you present, after setting the coordinates x to a value obtained by the assignment, perform the same determination as the object other coordinate x of the (n-lambda) pieces of coordinates ,
If no feasible solution exists, the same determination is performed for other cases where the selected λ coordinates x are set to 0 or 1, respectively.
For each case where the selected λ coordinates x are set to 0 or 1, respectively, when it is determined that there is an executable solution for all the (n−λ) coordinates, If x is set to the substituted value, the relaxation problem of the equation (1) is solved by linear programming, and each coordinate x giving the optimum value of the objective function f is an integer value, the coordinate x is Output as an integer solution, otherwise store the non-integer solution obtained at that time in the storage means,
It performs the same processing for the other of the slice areas, when no integer solution can be obtained even when all of executing the slice areas the processing for the output of the solution stored in the storage means so far A discrimination algorithm execution step to perform,
An integer solution calculation method characterized by:
コンピュータを、
請求項1記載のLP復号器の各手段として機能させるための整数解計算プログラム。
Computer
An integer solution calculation program for functioning as each means of the LP decoder according to claim 1.
JP2011129334A 2011-06-09 2011-06-09 LP decoder in linear code, integer solution calculation method and program Expired - Fee Related JP5574340B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011129334A JP5574340B2 (en) 2011-06-09 2011-06-09 LP decoder in linear code, integer solution calculation method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011129334A JP5574340B2 (en) 2011-06-09 2011-06-09 LP decoder in linear code, integer solution calculation method and program

Publications (2)

Publication Number Publication Date
JP2012257108A JP2012257108A (en) 2012-12-27
JP5574340B2 true JP5574340B2 (en) 2014-08-20

Family

ID=47528236

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011129334A Expired - Fee Related JP5574340B2 (en) 2011-06-09 2011-06-09 LP decoder in linear code, integer solution calculation method and program

Country Status (1)

Country Link
JP (1) JP5574340B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104660270B (en) * 2014-12-25 2018-03-13 西安电子科技大学 The linear programming interpretation method of multi-system linear block codes
JP6647591B2 (en) * 2016-06-29 2020-02-14 本田技研工業株式会社 Apparatus and method for estimating possible area of specific state quantity of mobile robot

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8261170B2 (en) * 2007-06-19 2012-09-04 Mitsubishi Electric Research Laboratories, Inc. Multi-stage decoder for error-correcting codes
US20090034661A1 (en) * 2007-07-31 2009-02-05 Pascal Olivier Vontobel Coordinate-ascent method for linear programming decoding
JP4883455B2 (en) * 2008-07-04 2012-02-22 日本電信電話株式会社 Encoding apparatus, encoding method, and encoding program
JP5064442B2 (en) * 2009-05-28 2012-10-31 日本電信電話株式会社 Estimation apparatus, encoder, decoder, estimation method, encoding method, decoding method, and program
JP5005743B2 (en) * 2009-08-13 2012-08-22 日本電信電話株式会社 Encoding device, decoding device, encoding method, decoding method, encoding program, and decoding program

Also Published As

Publication number Publication date
JP2012257108A (en) 2012-12-27

Similar Documents

Publication Publication Date Title
JP2007228582A (en) Method and apparatus for cabac-based encoding having high compression ratio using improved context model selection and method and apparatus for cabac-based decoding
KR20100087645A (en) Network re-encoding method and device for re-encoding encoded symbols to be transmitted to communication equipments
CN105933009A (en) Data compression method, data compression system, data decompression method and data decompression system
GB2561824A (en) Encoding and decoding of geometry data in a 3D model based on evaluated regularity of the model
JP5574340B2 (en) LP decoder in linear code, integer solution calculation method and program
JP2015230702A (en) Processing flow generation apparatus, processing flow generation method, processing flow generation program, manufacturing method of information processor and manufacturing method of information processing program
Huang et al. An A*-based algorithm for constructing reversible variable length codes with minimum average codeword length
KR102009216B1 (en) Method and system for graph summarization and compression
Tang et al. Error-correcting codes for short tandem duplication and edit errors
Justesen et al. Analysis of iterated hard decision decoding of product codes with Reed-Solomon component codes
JP2009077176A (en) Image coder, image decoder, and their control methods
WO2018028474A1 (en) Encoding method and device, decoding method and device, and storage medium
JP5225420B2 (en) Method and system for compression and decompression of dot matrix font data by computer
JP6188344B2 (en) Scanning order generation apparatus, moving picture encoding apparatus, moving picture decoding apparatus, scanning order generation method, and program
Blanes et al. Redundancy and optimization of tANS entropy encoders
JP7251615B2 (en) ALIGNMENT PROCESSING DEVICE, ALIGNMENT PROCESSING METHOD, AND PROGRAM
JPWO2018109809A1 (en) Decoding device, decoding method and program
JP2010535459A (en) Coordinate ascent method for linear programming decoding.
JP5005743B2 (en) Encoding device, decoding device, encoding method, decoding method, encoding program, and decoding program
JP4883455B2 (en) Encoding apparatus, encoding method, and encoding program
JP2007336056A (en) Encoding device, encoding method and program
Marx et al. Subexponential parameterized algorithms for graphs of polynomial growth
JP5817645B2 (en) Encoding / decoding system and method, encoding program, and decoding program
WO2023175680A1 (en) Encoding device, encoding method, and program
KR101391859B1 (en) Method and device of encoding/decoding using sparse inverse code

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20121029

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20121029

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130814

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130814

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140311

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140512

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: 20140617

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140624

R150 Certificate of patent or registration of utility model

Ref document number: 5574340

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees