AI Coding: Learning to Construct Error Correction Codes
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. XX, NO. X, OCTOBER 2019 1 AI Coding: Learning to Construct Error Correction Codes Lingchen Huang, Member, IEEE, Huazi Zhang, Member, IEEE, Rong Li, Member, IEEE, Yiqun Ge, Member, IEEE, Jun Wang, Member, IEEE, Abstract—In this paper, we investigate an artificial- intelligence (AI) driven approach to design error correction Code codes (ECC). Classic error-correction code design based upon Performance coding-theoretic principles typically strives to optimize some performance-related code property such as minimum Hamming distance, decoding threshold, or subchannel reliability ordering. In contrast, AI-driven approaches, such as reinforcement learn- Coding AI ing (RL) and genetic algorithms, rely primarily on optimization methods to learn the parameters of an optimal code within a cer- Theory Techniques tain code family. We employ a constructor-evaluator framework, in which the code constructor can be realized by various AI algorithms and the code evaluator provides code performance Code metric measurements. The code constructor keeps improving the code construction to maximize code performance that is Construction evaluated by the code evaluator. As examples, we focus on RL and genetic algorithms to construct linear block codes and polar codes. The results show that comparable code performance can Fig. 1: Error correction code design logic be achieved with respect to the existing codes. It is noteworthy that our method can provide superior performances to classic constructions in certain cases (e.g., list decoding for polar codes). improve its code performance. Equivalently, given a target er- ror rate, we optimize code design to maximize the achievable Index Terms—Machine learning, Code construction, Artificial code rate, i.e.
[Show full text]