  A low-density parity-check (LDPC) code is a linear block code described by a
sparse parity-check matrix, which can be efficiently represented by a bipartite
Tanner graph. The standard iterative decoding algorithm, known as belief
propagation, passes messages along the edges of this Tanner graph. Density
evolution is an efficient method to analyze the performance of the belief
propagation decoding algorithm for a particular LDPC code ensemble, enabling
the determination of a decoding threshold. The basic problem addressed in this
work is how to optimize the Tanner graph so that the decoding threshold is as
large as possible. We introduce a new code optimization technique which
involves the search space range which can be thought of as minimizing
randomness in differential evolution or limiting the search range in exhaustive
search. This technique is applied to the design of good irregular LDPC codes
and multiedge type LDPC codes.
