Hardware based projection onto the parity polytope and probability simplex

This paper is concerned with the adaptation to hardware of methods for Euclidean norm projections onto the parity polytope and probability simplex. We first refine recent efforts to develop efficient methods of projection onto the parity polytope. Our resulting algorithm can be configured to have either average computational complexity O (d) or worst case complexity O (d log d) on a serial processor where d is the dimension of projection space. We show how to adapt our projection routine to hardware. Our projection method uses a sub-routine that involves another Euclidean projection; onto the probability simplex. We therefore explain how to adapt to hardware a well know simplex projection algorithm. The hardware implementations of both projection algorithms achieve area scalings of O(d (log d)2) at a delay of O ((log d)2). Finally, we present numerical results in which we evaluate the fixed-point accuracy and resource scaling of these algorithms when targeting a modern FPGA.

[1]  Richard Heusdens,et al.  Large Scale LP Decoding with Low Complexity , 2013, IEEE Communications Letters.

[2]  Sanjeev Saxena,et al.  On Parallel Prefix Computation , 1994, Parallel Process. Lett..

[3]  Ralf Koetter,et al.  Towards Low-Complexity Linear-Programming Decoding , 2006, ArXiv.

[4]  Jon Feldman,et al.  Decoding error-correcting codes via linear programming , 2003 .

[5]  Paul H. Siegel,et al.  Adaptive Methods for Linear Programming Decoding , 2008, IEEE Transactions on Information Theory.

[6]  Donald E. Knuth,et al.  The Art of Computer Programming: Volume 3: Sorting and Searching , 1998 .

[7]  Paul H. Siegel,et al.  Efficient iterative LP decoding of LDPC codes with alternating direction method of multipliers , 2013, 2013 IEEE International Symposium on Information Theory.

[8]  Yoram Singer,et al.  Efficient projections onto the l1-ball for learning in high dimensions , 2008, ICML '08.

[9]  Donald E. Knuth,et al.  The art of computer programming: sorting and searching (volume 3) , 1973 .

[10]  Martin J. Wainwright,et al.  Using linear programming to Decode Binary linear codes , 2005, IEEE Transactions on Information Theory.

[11]  David Burshtein,et al.  Iterative Approximate Linear Programming Decoding of LDPC Codes With Linear Complexity , 2008, IEEE Transactions on Information Theory.

[12]  Paul H. Siegel,et al.  Adaptive Cut Generation Algorithm for Improved Linear Programming Decoding of Binary Linear Codes , 2011, IEEE Transactions on Information Theory.

[13]  Stark C. Draper,et al.  Decomposition methods for large scale LP decoding , 2011, 2011 49th Annual Allerton Conference on Communication, Control, and Computing (Allerton).

[14]  A.J. Al-Khalili,et al.  Performance of Parallel Prefix Adders implemented with FPGA technology , 2007, 2007 IEEE Northeast Workshop on Circuits and Systems.

[15]  Stephen P. Boyd,et al.  Distributed Optimization and Statistical Learning via the Alternating Direction Method of Multipliers , 2011, Found. Trends Mach. Learn..