next up previous
Next: Hypothesis Generation Up: CBR Assisted Explanation of Previous: Methodology

Circuit Design

We tested our system on the combinational circuit design problem. This problem's search space is poorly understood, discontinuous, and highly non-linear. The problem can be stated as follows: given a set of logic gates to work with, design a circuit that performs a desired function. One instantiation of this problem is a parity checker, a circuit that returns the parity of a fixed number of bits (Louis and Rawlins 1991). When encoded for the GA, a 5-bit parity checking problem results in a tex2html_wrap_inline405 sized search space having the troublesome properties listed above. We used a genotype of length 80, a population size of 20 and ran the GA for 25 generations. A candidate design is evaluated for fitness by testing a simulation on all possible inputs.

The GA does not solve the problem in 25 generations. In our experiments, a case-base was created by clustering the 500 individuals created by the GA and computing the 499 abstract cases. After examining the report and following the steps outlined in the methodology section, we examined the disjoint subtree list. The strongest such subtree (H) was also heavily weighted and spanned many generations. In addition, the best partial solutions all fell within H. We therefore suspected that a complete solution would fit H's schema. Since the order of the schema was appreciable (53 of 80), we could constrain the search to that schema and still hope to find a solution. The solution was in fact contained in H's schema.

  figure149
Figure: Parity circuit indicated by H, and the correct instantiation of choices.

Figure 6 shows the circuit indicated by our analysis of H. By decoding H, we were able to discern the general structure of a solution and determine which parts of it were important. The unlabeled boxes represent unimportant dimensions of the search space which can be safely ignored. Labeled boxes represent one of the logic gates eXclusive-or, And, Or, Not, and Wire. Since we are drawing the circuit represented by a schema, multiple labels on the boxes show its possible instantiations. Labels above boxes represent a correct instantiation found near the tex2html_wrap_inline437 generation of an unconstrained run. The top row should be considered adjacent to the bottom.


next up previous
Next: Hypothesis Generation Up: CBR Assisted Explanation of Previous: Methodology

Sushil J. Louis
Wed Jun 25 14:10:37 PDT 1997