Ripple Down Product Modelling System

Project Proposal by Martin Stacey


Ripple Down Product Modelling System

Software

Java or C++ or Smalltalk or another object oriented language with good GUI facilities

Covers

Programming, object-oriented design, some artificial intelligence

Skills Required

Programming, object-oriented design, some interest in artificial intelligence, ideally some interest in engineering

Challenge

Conceptual ??? Technical ?? Programming ????

Brief Description

A powerful new development in artificial intelligence is the development of techniques for building and maintaining expert systems using ripple down rules. In this approach, expert systems are developed incrementally, by adding variants to rules in new situations that reveal that the current ruleset is inadequate. This way, much larger expert systems can be built and modified with a manageable amount of effort compared to conventional approaches to building expert systems.

One of my research interests is in how to build product models that describe mechanical and mechatronic systems. Product models are the cornerstone of computer support systems for engineering designers. I’m also interested in how to build models of the tasks that engineers have to perform to create designs for mechanical and mechatronic systems. I’m interested in using the ripple down approach to create product models as variants of the models developed for previous products. While I’m interested in engineering design, the same approach and maybe the same software tools could be used to develop sets of object models for a wide variety of situations in different industries.

The project is to develop an editor for product models, that allows the user to create families of product models by describing one as a variant of another. The editor will keep a family of available models, and allow the user to select one of these models to represent a particular design. The system will support and encourage designers to record the situations in which they differentiated between models, and their rationales for modelling decisions.

Extensions

What I want is a system that can handle product models that are hierarchical (that is, they comprise components that themselves have components), and that can be decomposed in different ways (into functional and structural subsystems). Build a system that can handle multiple decomposition.

Further develop the system so that it can create and handle different versions of a single design (or other situation).

Variant

Apply the same approach to developing a situation-model editor for something other than machines.


Back to