biblio-excerptise:   a book unexamined is not worth having

Knowledge-based design systems

R. D. Coyne and M. A. Rosenman and A.D. Radford and M. Balachandran and J.S. Gero

Coyne, R. D.; M. A. Rosenman; A.D. Radford; M. Balachandran; J.S. Gero;

Knowledge-based design systems

Addison Wesley 1990 567 pages

topics: |  design | ai | kbs


The problem of design is central to that of intelligence. Leonardo
da Vinci was one of the greatest minds of all time primarily because
he was a great designer, although his creativity expressed itself in
many other channels as well. Design is also one of the harder
problems of AI, and merits more attention than it has had in the past
decades. A harbinger of change is perhaps the new book,
Knowledge-Based Design Systems, by R.D. Coyne, M.A. Rosenman, A.D.
Radford, M. Balachandran, and J.S. Gero (Addison Wesley, 1990, 567
pages), which presents the problem from a didactic point of view,
being based on an extensive teaching program and related research by
this group at the University of Sidney.

One enters this book with certain preconceptions. Here is a problem somewhat
different from the traditional bailiwick of AI; perhaps the problems
encountered here will be different also. However, going through the book
only serves to strenghthen the feeling that all the hard problems of AI are
now converging on the same set of issues, and that the problems precluding
groundbreaking progress in design are much the same as those in vision,
planning, learning, etc. These include problems such as identifying concept
similarities, nonmonotonic reasoning, reasoning with uncertainty,
etc. Indeed, at the end of the book the authors do what the rest of AI is
also doing today - they look briefly towards Neural Networks in a gesture of
half-hope, half-despair. And we are left with an unanswered question - Is
symbolic AI not enough? Say it ain't so!

The book opens with an excellent discussion of the design task, and
the role of knowledge in guiding this task. The sophistication of
design activity can be measured by the categories of refining,
adapting, and creating prototypes. Refining is extending the
functionality of the prototype. Adapting is extending the domain of
the prototype, and a cogent argument runs that to some extent, all
creation is an extensive form of adaptation based on previously
existing prototypes. Underlying this process is knowledge about the
functional aspects of these prototypes. The general paradigm adopted
for designs is based on the availability of this knowledge, which is
used to identify possible control actions, which can then be used to
refine/adapt the prototype to meet the design goals. The design
problem is then reduced to the problem of searching through these
possible control actions to identify a sequence that will result in
the desired functionality. Standard search and control techniques
are used in this process.

One of the problems of design is specifying the design intent. There
is a good discussion of this issue - goals can be expressed as
hierarchies, and different aspects of the goal may be achievable by
using different prototypes, reducing the problem to that of a
planning-type search through a space of possibly conflicting
constraints. Another problem is that of determining whether a given
design description is complete. This is difficult; the constraints
may be too few, leaving many possible designs, or they
may be too many, resulting in conflicting criteria that cannot all be
satisfied. There does not appear to be any clear solution
methodology yet. Another problem is determining that goals have been
achieved, or that certain goals creating conflicts may need to be
modified before a successful design can be achieved. A related
consideration is evaluation of the design, where one needs to take
into account the degree of effectiveness, cost, and other factors.

Design, like other hard AI problems, is a process of meta-exploration
that is not constrained to the initial bounds of the problem, but may
call for changes in the problem statement itself. The contexts of
the problem shift as more is discovered about the characteristics of
the design, so essentially there is an element of learning in the
design task. This an important issue and the book devotes an entire
chapter to it. There is also the issue of brittleness in traditional
symbolic approaches - the design constructs clearly can be no general
than the symbolic structures already available for the
representation; machine thought cannot transcend its own vocabulary.
These two motivations are among the reasons why the authors turn to
analog and neural models in the final chapter.

Where the book falls short is in illustrating the difference between
the design task and other traditional AI problems such as planning or
search. A lot of the discussion is on issues that are of broader
interest in AI and knowledge-based systems - inheritance hierarchies,
model-based reasoning, search/control issues, dealing with
uncertainty/incomplete information, learning/creativity, and even the
use of neural networks. Some of the other issues that one would have
felt are of great significance to design are not dealt with in as
much detail as one would expect. For instance, the first three
examples given of design prototype knowledge facts are all spatial in
nature (inside, next-to, and longer-than). Indeed, it seems clear
that many design tasks are related to spatial reasoning,
and yet discussions on modeling spatial attributes of design are
restricted to only 7 pages out of 500+. However, many approaches to
spatial reasoning in design have been discussed in the literature,
such as using configuration-space for kinematic design ([Joskowicz
and Addanki 89]), hierarchical models [Samet 90], or qualitative
approaches to modeling space ([Davis 90], [Mukerjee and Joe 90]).
Another area which in my opinion merits some discussion in a book on
design is the topic of traditional CAD systems, their methodologies
and their predilection towards drafting as opposed to design.

A large body of work exists today in the area of design. Other book
level references include ([Rowe 87] [Brown and Chandrasekharan 88],
and [McDermott and Sternberg 89]. Also see the Winter 1990 issue of
AI Magazine (vol.11:4). By virtue of the teaching experience that
has gone behind this book though, it is more comprehensive, and
presents its viewpoint in a systematic, orderly progression. The
differences between the approaches by different groups are really
rather similar. For example, the PCM - or Propose, Critique and
Modify approach of Chandrasekaran's group (AI Magazine, Winter 1990)
is akin to the prototype creation, refinement and adaptation idea
described above. The authors do not make a strong attempt to fuse
the disparate terminology of the field.

On the whole though, this is a constructive, thought-provoking book,
and one of the first to take a long, cold look at the problem of
design. Traditional CAD systems provide excellent tools for encoding
the final forms of a design, but clearly there is a need for
embodying more of the functionality and decision making into the CAD
process. Do AI techniques have what it takes to provide this power?
This book provides no clear answers, but it does shed light on the
progress so far and the possibilities ahead.- AM 12/1990  [AI Mag]


amitabha mukerjee (mukerjee [at] gmail.com) 17 Feb 2009