On the design of variable-length error-correcting codes

Ting Yi Wu, Po-Ning Chen, Fady Alajaji, Yunghsiang S. Han

Research output: Contribution to journalArticlepeer-review

8 Scopus citations


A joint source-channel coding problem that combines the efficient compression of discrete memoryless sources with their reliable communication over memoryless channels via binary prefix-free variable-length error-correcting codes (VLECs) is considered. Under a fixed free distance constraint, a priority-first search algorithm is devised for finding an optimal VLEC with minimal average codeword length. Two variations of the priority-first-search- based code construction algorithm are also provided. The first one improves the resilience of the developed codes against channel noise by additionally considering a performance parameter Bdfree without sacrificing optimality in average codeword length. In the second variation, to accommodate a large free distance constraint as well as a large source alphabet such as the 26-symbol English data source, the VLEC construction algorithm is modified with the objective of significantly reducing its search complexity while still yielding near-optimal codes. A low-complexity sequence maximum a posteriori (MAP) decoder for all VLECs (including our constructed optimal code) is then proposed under the premise that the receiver knows the number of codewords being transmitted. Simulations show that the realized optimal and suboptimal VLECs compare favorably with existing codes in the literature in terms of coding efficiency, search complexity and error rate performance.

Original languageEnglish
Article number6573230
Pages (from-to)3553-3565
Number of pages13
JournalIEEE Transactions on Communications
Issue number9
StatePublished - 5 Aug 2013


  • average codeword length
  • Error resilient data compression
  • Joint source-channel coding
  • sequence maximum a posteriori decoding
  • Symbol error rate
  • Variable-length codes


Dive into the research topics of 'On the design of variable-length error-correcting codes'. Together they form a unique fingerprint.

Cite this