Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
498 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 47, NO. 2, FEBRUARY 2001 Factor Graphs and the Sum-Product Algorithm Frank R. Kschischang , Senior Member, IEEE , Brendan J. Frey , Member, IEEE , and Hans-Andrea Loeliger , Member, IEEE Abstract— Algorithms that must deal with complicated global functions of many variables often exploit the manner in which the given functions factor as a product of “local” functions, each of which depends on a subset of the variables. Such a factorization can be visualized with a bipartite graph that we call a factor graph . In this tutorial paper, we present a generic message-passing algo- rithm, the sum-product algorithm, that operates in a factor graph. Following a single, simple computational rule, the sum-product algorithm computes—either exactly or approximately—var- ious marginal functions derived from the global function. A wide variety of algorithms developed in artificial intelligence, signal processing, and digital communications can be derived as specific instances of the sum-product algorithm, including the forward/backward algorithm, the Viterbi algorithm, the iterative “turbo” decoding algorithm, Pearl’s belief propagation algorithm for Bayesian networks, the Kalman filter, and certain fast Fourier transform (FFT) algorithms. Index Terms— Belief propagation, factor graphs, fast Fourier transform, forward/backward algorithm, graphical models, iter- ative decoding, Kalman filtering, marginalization, sum-product algorithm, Tanner graphs, Viterbi algorithm. I. INTRODUCTION T HIS paper provides a tutorial introduction to factor graphs and the sum-product algorithm, a simple way to under- stand a large number of seemingly different algorithms that have been developed in computer science and engineering. We con- sider algorithms that deal with complicated “global” functions of many variables and that derive their computational efficiency by exploiting the way in which the global function factors into a product of simpler “local” functions, each of which depends on a subset of the variables. Such a factorization can be visual- ized using a factor graph , a bipartite graph that expresses which variables are arguments of which local functions. Manuscript received August 3, 1998; revised October 17, 2000. The work of F. R. Kschischang was supported in part, while on leave at the Massachu- setts Institute of Technology, by the Office of Naval Research under Grant N00014-96-1-0930, and by the Army Research Laboratory under Cooperative Agreement DAAL01-96-2-0002. The work of B. J. Frey was supported, while a Beckman Fellow at the Beckman Institute of Advanced Science and Technology, University of Illinois at Urbana-Champaign, by a grant from the Arnold and Mabel Beckman Foundation. The material in this paper was presented in part at the 35th Annual Allerton Conference on Communication, Control, and Computing, Monticello, IL, September 1997. F. R. Kschischang is with the Department of Electrical and Computer
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 22


This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online