Evolutionary Algorithms for Designing Reversible Cellular Automata
This work addresses the design of RCA for applications in cryptography and reversible computing, but it is incremental as it builds on existing methods and findings.
The authors tackled the problem of designing reversible cellular automata (RCA) with conserved landscapes by formulating it as an optimization problem and using genetic algorithms and programming. Their experiments confirmed prior findings and provided new insights into the optimization difficulty, relevance in cryptography and computing, and the relationship between reversibility and Hamming weight.
Reversible Cellular Automata (RCA) are a particular kind of shift-invariant transformations characterized by a dynamics composed only of disjoint cycles. They have many applications in the simulation of physical systems, cryptography and reversible computing. In this work, we formulate the search of a specific class of RCA -- namely, those whose local update rules are defined by conserved landscapes -- as an optimization problem to be tackled with Genetic Algorithms (GA) and Genetic Programming (GP). In particular, our experimental investigation revolves around three different research questions, which we address through a single-objective, a multi-objective, and a lexicographic approach. The results obtained from our experiments corroborate the previous findings and shed new light on 1) the difficulty of the associated optimization problem for GA and GP, 2) the relevance of conserved landscape CA in the domain of cryptography and reversible computing, and 3) the relationship between the reversibility property and the Hamming weight.