  Despite many successful applications, Cartesian Genetic Programming (CGP)
suffers from limited scalability, especially when used for evolutionary circuit
design. Considering the multiplier design problem, for example, the 5x5-bit
multiplier represents the most complex circuit evolved from a randomly
generated initial population. The efficiency of CGP highly depends on the
performance of the point mutation operator, however, this operator is purely
stochastic. This contrasts with the recent developments in Genetic Programming
(GP), where advanced informed approaches such as semantic-aware operators are
incorporated to improve the search space exploration capability of GP. In this
paper, we propose a semantically-oriented mutation operator (SOMO) suitable for
the evolutionary design of combinational circuits. SOMO uses semantics to
determine the best value for each mutated gene. Compared to the common CGP and
its variants as well as the recent versions of Semantic GP, the proposed method
converges on common Boolean benchmarks substantially faster while keeping the
phenotype size relatively small. The successfully evolved instances presented
in this paper include 10-bit parity, 10+10-bit adder and 5x5-bit multiplier.
The most complex circuits were evolved in less than one hour with a
single-thread implementation running on a common CPU.
