Error-Correcting Code

Slides:



Advertisements
Similar presentations
Noise-Predictive Turbo Equalization for Partial Response Channels Sharon Aviran, Paul H. Siegel and Jack K. Wolf Department of Electrical and Computer.
Advertisements

Ulams Game and Universal Communications Using Feedback Ofer Shayevitz June 2006.
Software Testing Technique. Introduction Software Testing is the process of executing a program or system with the intent of finding errors. It involves.
Bison Management Suppose you take over the management of a certain Bison population. The population dynamics are similar to those of the population we.
Exact Inference. Inference Basic task for inference: – Compute a posterior distribution for some query variables given some observed evidence – Sum out.
Routing in a Parallel Computer. A network of processors is represented by graph G=(V,E), where |V| = N. Each processor has unique ID between 1 and N.
Great Theoretical Ideas in Computer Science for Some.
(speaker) Fedor Groshev Vladimir Potapov Victor Zyablov IITP RAS, Moscow.
Gillat Kol (IAS) joint work with Ran Raz (Weizmann + IAS) Interactive Channel Capacity.
Capacity of Wireless Channels
Loopy Belief Propagation a summary. What is inference? Given: –Observabled variables Y –Hidden variables X –Some model of P(X,Y) We want to make some.
Optimal Policies for POMDP Presented by Alp Sardağ.
Gossip Algorithms and Implementing a Cluster/Grid Information service MsSys Course Amar Lior and Barak Amnon.
1 Finite-Length Scaling and Error Floors Abdelaziz Amraoui Andrea Montanari Ruediger Urbanke Tom Richardson.
Belief Propagation by Jakob Metzler. Outline Motivation Pearl’s BP Algorithm Turbo Codes Generalized Belief Propagation Free Energies.
Near Shannon Limit Performance of Low Density Parity Check Codes
Linear-time encodable and decodable error-correcting codes Daniel A. Spielman Presented by Tian Sang Jed Liu 2003 March 3rd.
LSRP: Local Stabilization in Shortest Path Routing Hongwei Zhang and Anish Arora Presented by Aviv Zohar.
Erasure Correcting Codes
Parallel Routing Bruce, Chiu-Wing Sham. Overview Background Routing in parallel computers Routing in hypercube network –Bit-fixing routing algorithm –Randomized.
Quantum Computation and Error Correction Ali Soleimani.
5 Qubits Error Correcting Shor’s code uses 9 qubits to encode 1 qubit, but more efficient codes exist. Given our error model where errors can be any of.
Ensemble Learning: An Introduction
6/20/2015List Decoding Of RS Codes 1 Barak Pinhas ECC Seminar Tel-Aviv University.
EXPANDER GRAPHS Properties & Applications. Things to cover ! Definitions Properties Combinatorial, Spectral properties Constructions “Explicit” constructions.
Computer Architecture Project
Message Passing for the Coloring Problem: Gallager Meets Alon and Kahale Sonny Ben-Shimon and Dan Vilenchik Tel Aviv University AofA June, 2007 TexPoint.
Code and Decoder Design of LDPC Codes for Gbps Systems Jeremy Thorpe Presented to: Microsoft Research
Linear-Time Encodable and Decodable Error-Correcting Codes Jed Liu 3 March 2003.
1 Verification Codes Michael Luby, Digital Fountain, Inc. Michael Mitzenmacher Harvard University and Digital Fountain, Inc.
Copyright © Cengage Learning. All rights reserved.
The Role of Specialization in LDPC Codes Jeremy Thorpe Pizza Meeting Talk 2/12/03.
CS774. Markov Random Field : Theory and Application Lecture 10 Kyomin Jung KAIST Oct
Analysis of Performance
Primal-Dual Meets Local Search: Approximating MST’s with Non-uniform Degree Bounds Author: Jochen Könemann R. Ravi From CMU CS 3150 Presentation by Dan.
Distributed Constraint Optimization Michal Jakob Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech Technical University A4M33MAS.
Wireless Mobile Communication and Transmission Lab. Theory and Technology of Error Control Coding Chapter 7 Low Density Parity Check Codes.
Message-Passing for Wireless Scheduling: an Experimental Study Paolo Giaccone (Politecnico di Torino) Devavrat Shah (MIT) ICCCN 2010 – Zurich August 2.
Threshold Phenomena and Fountain Codes Amin Shokrollahi EPFL Joint work with M. Luby, R. Karp, O. Etesami.
Distributed computing using Projective Geometry: Decoding of Error correcting codes Nachiket Gajare, Hrishikesh Sharma and Prof. Sachin Patkar IIT Bombay.
Salah A. Aly,Moustafa Youssef, Hager S. Darwish,Mahmoud Zidan Distributed Flooding-based Storage Algorithms for Large-Scale Wireless Sensor Networks Communications,
CprE 545 project proposal Long.  Introduction  Random linear code  LT-code  Application  Future work.
Continuous Variables Write message update equation as an expectation: Proposal distribution W t (x t ) for each node Samples define a random discretization.
15-853:Algorithms in the Real World
3.1 System of Equations Solve by graphing. Ex 1) x + y = 3 5x – y = -27 Which one is the solution of this system? (1,2) or (-4,7) *Check (1,2)Check (-4,7)
Dr. Sudharman K. Jayaweera and Amila Kariyapperuma ECE Department University of New Mexico Ankur Sharma Department of ECE Indian Institute of Technology,
linear  2.3 Newton’s Method ( Newton-Raphson Method ) 1/12 Chapter 2 Solutions of Equations in One Variable – Newton’s Method Idea: Linearize a nonlinear.
© 2009 Ilya O. Ryzhov 1 © 2008 Warren B. Powell 1. Optimal Learning On A Graph INFORMS Annual Meeting October 11, 2009 Ilya O. Ryzhov Warren Powell Princeton.
Back-Propagation Algorithm AN INTRODUCTION TO LEARNING INTERNAL REPRESENTATIONS BY ERROR PROPAGATION Presented by: Kunal Parmar UHID:
Part 1: Overview of Low Density Parity Check(LDPC) codes.
Low Density Parity Check codes
Belief Propagation and its Generalizations Shane Oldenburger.
Team trivia 3 Rounds Bid 1, 3 or 5 points on each question (must use each point value per round)
Solving Systems of Equations by Graphing
Data Communications and Networking
Turbo Codes. 2 A Need for Better Codes Designing a channel code is always a tradeoff between energy efficiency and bandwidth efficiency. Lower rate Codes.
Raptor Codes Amin Shokrollahi EPFL. BEC(p 1 ) BEC(p 2 ) BEC(p 3 ) BEC(p 4 ) BEC(p 5 ) BEC(p 6 ) Communication on Multiple Unknown Channels.
Sporadic model building for efficiency enhancement of the hierarchical BOA Genetic Programming and Evolvable Machines (2008) 9: Martin Pelikan, Kumara.
Hamming Distance & Hamming Code
Distributed cooperation and coordination using the Max-Sum algorithm
Bayesian Belief Propagation for Image Understanding David Rosenberg.
1 Aggregated Circulant Matrix Based LDPC Codes Yuming Zhu and Chaitali Chakrabarti Department of Electrical Engineering Arizona State.
1 Implementation and performance evaluation of LT and Raptor codes for multimedia applications Pasquale Cataldi, Miquel Pedros Shatarski, Marco Grangetto,
Introduction of BP & TRW-S
Integer Programming An integer linear program (ILP) is defined exactly as a linear program except that values of variables in a feasible solution have.
Minimum Spanning Tree 8/7/2018 4:26 AM
Maximal Independent Set
Optimizing LDPC Codes for message-passing decoding.
7.1 System of Equations Solve by graphing.
Chris Jones Cenk Kose Tao Tian Rick Wesel
Presentation transcript:

Error-Correcting Code Message 0 1 0 0 1 0 1 Encoding Algorithm cn Encoding 0 1 0 0 1 0 1 0 1 0 0 1 0 1 Transmission Received 0 1 0 1 1 0 0 0 0 0 0 0 0 1 Decoding Algorithm Message 0 1 0 0 1 0 1

Performance Measures Encoding and decoding times Decoding guarantee How many errors can you recover from?

Encoding Process Encoding time is linear in number of edges.

Decoding Process Correct one layer at a time. WLOG assume previous layer corrected. Bipartite graph message bits check bits = correct bits = erroneous bits

Decoding Hard decision decoding [Gallager 62] No probabilities in the state, votes. All votes are 1 bit, 0/1. Goal: votes converge to correct values. 1 From my other check bits, I vote that I am a 0. From my other message bits, I vote you are a 1.

Mental Picture: A Regular Tree

Example: Regular Graphs Strategy: message bit m will send received bit to c unless all other check bits say otherwise. Assume initial message all zeroes. m 1 c

Round 0, initial received bits m 1 1 Initial vote = Bit received

Round 1, message to check c 1 m 1 1 1

Round 1, check to message c m 1 1 1

Round 2, message to check c 1 m 1 1

Round 2, check to message c m 1 1

Threshold Generalization Strategy: message bit m will send initial vote to c unless at least b other check bits say otherwise. Optimize the b value for each round. Initially, b begins high. Strategy eventually becomes: message bit passes on decision of majority of other check bits (or initial vote if tied).

Irregular Graphs Same algorithm Strategy: message bit m with degree j will send initial vote to c unless the discrepancy (|# 0 votes - #1 votes|) is at least b. Value b is independent of j! Vary b according to round as before.

Degree of Right Nodes The higher the degree on the right, the less information it yields to the nodes on the left.

High Degree Nodes on Left Left nodes of high degree get information from many right nodes; quickly their beliefs converge to their correct value.

Low Degree Nodes on Left = high degree Left nodes of low degree get less information; however, as high degree nodes settle on a value, their info. grows more accurate, and their beliefs converge correctly.

Irregular Decoding High degree nodes get corrected FIRST. Low degree nodes get corrected LATER.

Analysis Assume graph looks like a tree (for constant number of levels). Derive recursive formula for probability pr after r rounds. Show pr goes to 0. c 1 m

Finding Irregular Graphs Our analysis yields equations Given graph description, can find percentage of errors that can be corrected Goal: find graphs with good performance. Methodology: use equations to design a linear program Given right hand side, find the best left hand side Experimented with just one degree on right

Experimental Results Best regular graph gets 5.17% asymptotically Analysis gives Code 10: 5.78%, Code 14: 6.27% Shannon bound is 11.1%

A Better Algorithm Belief propagation. Send probabilities, instead of 0/1 votes. Nodes keep track of their conditional probabilities of being a 0/1. 0.78 0.83 From my other check bits, I believe my probability of being 0 is 0.78 From my other message bits, I believe your probability of being 0 is 0.83

One Level of Belief Propagation message bit check bits must be correct! message bits A node R looks at neighboring check bits, and their neighboring message bits. From this it determines its conditional probability of being correct.

Belief Propagation R If R knows the values of the complete tree down message bit check bits If R knows the values of the complete tree down L levels, it can determine its conditional probability of being correct. message bits check bits message bits check bits

Belief Propagation : Implementation These conditional probabilities are easy to compute. Nodes update themselves in parallel over rounds. Each round equivalent to exploring one level further in graph. Process stops when current solution is consistent, or fails after preset number of rounds.

Results: Left/Right = 2/1

Time to Decode Time is proportional to product of number of edges and number of rounds Irregular graphs have more edges, but often succeed in fewer rounds. Current times (for 2/1 ratio) at peak about: 1 second for 2K left nodes 10-25 seconds for 20K left nodes 80-130 seconds for 100K left nodes.