Genetic Algorithms and Case-Based Reasoning as a Discovery and Learning Machine in the Optimization of Combinational Logic Circuits

In this paper we show how case-based reasoning techniques can be used to extract and reuse solutions previously found by a heuristic (a genetic algorithm in our case) used to solve problems in a specific domain (MSI and SSI combinational circuit design). This reuse of partially built solutions allows us to improve convergence time of our heuristic since the building blocks of the "good" solutions in design space are incorporated earlier in the search process. Our system is illustrated with the design of a full adder circuit being this circuit the solution of two interconnected half-adder. Furthermore, with the analysis of the obtained results we are able to rediscover several of the traditional Boolean rules used for circuit simplification and we are also able to find a new and interesting simplification rule.