A block diagram of a typical CMAC is shown in Fig. 1. CMAC modules are designed to accept both input command variables from higher levels and feedback variables from sensors. Each CMAC merges these two inputs into a set of memory addresses wherein are stored the correct motor response. The combined input selects a set of memory locations from a large pool of memory locations. The output is the sum of the contents of the selected memory locations. Feedback input from sensors causes the behavior to evolve along a goal directed stimulus-response chain. As feedback changes,the output changes. This, in turn, causes the sensory feedback to change further. The result is a closed servo loop that makes the behavior reactive. The input command from above effectively selects a region of memory wherein the proper set of stimulus-response pairs to generate the desired behavior can be stored.