- J. Bowen and Dennis Bahler,
A Language for Building Concurrent Engineering Design
Advisors: An Extended Abstract,
8th Natl. Conf. on Artificial Intelligence (AAAI-90),
Workshop on Concurrent Engineering Design, Boston, 1990.
Concurrent Engineering (also known as
Simultaneous Engineering or Life-Cycle Engineering)
is an approach to design which takes
into account not just the functionality of a product but also
its manufacturability, testability, maintainability, and so on.
We aim to develop a generic programming technology which can be used to
produce on-line design advisors that will encourage human
designers to adopt a life-cycle perspective.
To that end, we are using constraint networks
to represent in an explicit way
the mutually constraining influences that are exerted by a
product's functionality, the material from which it is made, and the various
processes involved in its manufacture, testing and maintenance.
A constraint network is a collection of objects
and a set of constraints that specify
relationships which must
be satisfied by the values that are assumed by the objects.
A major attraction of these networks is that the
constraints can support non-directional inference.
This means that when values are acquired by any of the objects involved
in a constraint, values can be inferred for other objects
attached to the constraint.
Thus, for example, a constraint network can capture the effect
that a design decision has on manufacturing options.
Equally, the same network could limit the designer's options
if manufacturing decisions are made early on.
Our research is aimed at developing a generic constraint programming
language for Concurrent Engineering applications.
Our methodology has been to develop a series of
prototype languages, based on a study of the nature of
life-cycle information in a variety of application domains.
(190kb PDF)