[net.ai] Engineering Problem Solving

WELD%MIT-OZ@MIT-MC.ARPA (04/09/84)

From:  "Daniel S. Weld" <WELD%MIT-OZ@MIT-MC.ARPA>

           [Forwarded from the MIT bboard by SASW@MIT-MC.]

AI Revolving Seminar
Wednesday, April 11, 4:00pm 8th floor playroom

Jerry Roylance  --  "Programs that Design Circuits"

        People can design circuits; this task -- at least partially --
can be done by computers.  I'll talk about how designers think about
circuits and how to make computers think that way, too.  While the talk
will be directed toward circuit design, that is not the sole intent.
How will building problem solvers in one engineering domain help us
build them in other domains?  What "domain-independent" facts can be
carried across?
        Engineering domains (such as circuit design) are good ones to
teach computers.  They have well defined models that let the machine
verify and debug its designs (thus allowing some chance at creativity).
Engineering domains also have many "standard problems" with cookbook
solutions.  If the computer can be clever about recognizing instances of
these problems and combining them together, it can produce nontrivial
designs.  The quality of a design in an engineering domain is also easy
to assess.
        The circuit design domain is not simple, however.  Hierarchical
expansion of abstract components fails to account for many designs.  The
parts of a design are not independent and that makes it difficult for
the knowledge sources to be modular.  Arithmetic constraints solve some
of these problems; some others can be solved by manipulating mechanism
constraints.
        An important perspective:  when teaching a system a new trick,
find out why the some one thought of that trick in the first place.