COOPERATIVE DESIGN MECHANISM 

A subcircuit is designed hierarchically within an agent. Figure 2 shows a snapshot. 
An adder of a subtracter (upper right) is about to be implemented with standard cells. 
There are three alternatives, from upper left to lower right. 


P.45 Figure 1
Figure 2. Hierarchical design
The evaluation-redesign mechanism within each agent uses sufficient conditions for constraint violation, nogood justifications (NJs). Satisfying an NJ means a con- straint violation and invokes the mechanism. See [Minoda 1992] for further details. Global evaluation-redesign takes place by agents exchanging design results (in case of success) or NJs (in case of failure). In our cooperative design mechanism, NJs re- ceived from other agents help narrow down the search space for an agent in the sense that NJs made out of the received ones enable the agent to prune the search space. That is the reason why we claim co-LODEX as "cooperative". The APPENDIX shows the flowchart of the cooperation algorithm. EXPERIMENTAL RESULTS We implemented co-LODEX on Multi-PSI in KL1. Experimental results show that (1) co-LODEX can efficiently carry out global optimization. (2) The best linear speedup has been observed by increasing the number of agents to 15. - 45 -