富山大学 公開講座 2008 「QRコードを作ろう!」 ~ ハミング距離 ~ 講師: 幸山 直人 富山大学 公開講座 2008 「QRコードを作ろう!」 シャノンの情報理論 情報を確率的概念として定義 情報を定量化するために情報量を定義 (情報量の単位としてビットを導入) 情報源を定義し、情報源が発する情報量を 計算できること 通信系のモデルを示し、通信路容量を定義し、 この通信路容量を超えなければ適当な符号 化により誤りなしに伝達が可能であること 誤り訂正符号 富山大学 公開講座 2008 「QRコードを作ろう!」 シャノンの通信系のモデル 誤りを訂正するための符号語の付加 情報 情報源 符号語 符号器 誤りの検出と訂正 受信語 通信路 推定情報 復号器 誤りパターン 雑音 あて先 富山大学 公開講座 2008 「QRコードを作ろう!」 誤りの検出と訂正の原理 情報 Ak 送信空間 Bn f (誤り訂正コード語の付加) A=B=C=D,k<n 受信空間 Cn g 推定情報 Dk h (誤り訂正と推定情報の抽出) (誤りパターンの付加) 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離の例 例1: u=(0,1,1,0,1,0,1,0,0) v=(0,1,0,0,1,0,1,1,0) 9 dH(u,v)= (ui , vi ) =0+0+1+0+0+0+0+1+0=2 i 1 例2: u=(a,b,d,c,a,d,d,c,b,a) v=(b,b,d,c,d,d,d,a,b,d) 10 dH(u,v)= (ui , vi ) =1+0+0+0+1+0+0+1+1+0=4 i 1 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離の誤りの検出と訂正(1) t0 t1 t1 dmin t0 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離の誤りの検出と訂正(2) t2 t1 t1 dmin 富山大学 公開講座 2008 「QRコードを作ろう!」 最小距離に関する定理 定理: 誤り訂正符号 X(⊂Cn)の最小距離 dmin が dmin≧2t+1 を満たすなら、符号 Xはt個の誤りを訂正可能な符号である t c r dmin c’ t 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(1) どのように対応させれば良いのだろうか? Ak (0) (1) A=B={0,1},k=1 Bn(=Cn) 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(2) A=B={0,1},k=1 ,n=3 (0)→(0,0,0) (1)→(1,0,0) A=B={0,1},k=1 ,n=3 (0)→(0,0,0) (1)→(1,1,0) (1,0,1) (0,1,0) (0,0,0) (1,1,1) (0,0,0) (1,0,0) (0,0,1) (0,1,0) (1,0,0) (1,1,0) ハミング距離が1しかなく、 誤りの検出しかできない (1,1,0) (0,0,1) ハミング距離は2あるが、 誤りの検出しかできない 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(3) A=B={0,1},k=1 ,n=3 (0)→(0,0,0) (1)→(1,1,1) 最小距離:3 (0,1,0) (0,1,1) (1,0,0) (0,0,0) (0,0,1) (1,1,1) (1,1,0) 誤った受信語は誤りのない受信語(円の中心) に誤り訂正することができる (1,0,1) 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(4) A=B={0,1},k=1 ,n=3 (0)→(0,1,0) (1)→(1,0,1) 最小距離:3 (0,1,1) (1,1,1) (1,1,0) (0,1,0) (0,0,0) (1,0,1) (1,0,0) 「ハミング距離による誤り訂正符号(3)」に 同型な誤り訂正符号である (0,0,1) 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(5) A=B={0,1},k=1 ,n=5 最小距離:3 (0)→(0,0,0,0,0) (1)→(1,1,1,0,0) (0,0,0,0,1) (0,1,0,0,0) (1,1,1,0,1) (0,1,1,0,0) (0,0,0,0,0) (1,0,1,0,0) (1,0,0,0,0) (1,1,1,0,0) (0,0,1,0,0) (0,0,0,1,0) (1,1,1,1,0) (1,1,0,0,0) 誤った受信語は誤りのない受信語(円の中心) に誤り訂正することができるが、無駄が多い 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(6) A=B={0,1},k=1 ,n=5 最小距離:4 (0)→(0,0,0,0,0) (1)→(1,1,1,1,0) (0,0,0,0,0) (1,1,1,1,0) 黒色の点で表された受信語は、(0,0,0,0,0)と(1,1,1,1,0) からのハミング距離が2の受信語があるため、どちらにも訂正 することができない(誤りの検出はできる) 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(7) A=B={0,1},k=1 ,n=5 最小距離:5 (0)→(0,0,0,0,0) (1)→(1,1,1,1,1) (0,0,0,0,0) (1,1,1,1,1) 理想的な誤り訂正符号 (同型な誤り訂正符号がたくさんある) 富山大学 公開講座 2008 「QRコードを作ろう!」 ハミング距離による誤り訂正符号(8) 誤り訂正符号を効率的に構成できないか? 最小距離はいくつになるのか? Ak (0,0) (0,1) (1,0) (1,1) A=B={0,1},k=2 Bn(=Cn) 富山大学 公開講座 2008 「QRコードを作ろう!」 誤り訂正符号を如何に構成するか 誤り訂正符号を効率よく構成したい ⇒ 送信語を計算で求めたい 最小距離を正確に求めたい 誤りの検出を計算で行ないたい 誤りの訂正を計算で行ないたい 線形符号
© Copyright 2024 ExpyDoc