Top Down? Bottom Up? A Survey of Hierarchical Design Methodologies


[Note: At first glance, this article will look purely about AI/optimizer design, and nothing about blockchains. But, since token design is a lot like optimizer design, this article might also be useful for token engineering to span multiple token ecosystems.]

How do you optimize, synthesize, or evolve a design that has 10 thousand parts? 10 billion parts? Doing it flat could easily fail.

There is a way! In many practical cases, we can recursively decompose the problem into many sub-problems. We then solve each sub-problem and stitch it together to solve the main problem. We can do this in a well-structured fashion: a hierarchical design methodology. There are top-down and bottom-up variants; both achieve remarkable results. The video, slides, and paper below describe those approaches. Could this be how nature scales?


I gave this as a talk at the Machine Learning Group Berlin, Berlin, Feb. 26, 2018.


Here are the slides that accompany the talk.

Original paper

This is based on work by myself and colleagues from KU Leuven, Belgium, for analog circuit design.

Here’s the paper.

Reference: G. G. E. Gielen, T. McConaghy, T. Eeckelaert, “Performance space modeling for hierarchical synthesis of analog integrated circuits”, in Proc. Design Automation Conference (DAC), pp. 881–886, June 13–17, 2005.