An object-oriented framework for the creation of customized expert system for CAD
With the advancements in the fields of Computer Aided Design (CAD) and Artificial Intelligence (AI), a number of CAD systems that are developed have built-in expert systems to aid the designer in the design process. Recently there has been a trend in industries and research organizations to custom create CAD software to satisfy specific in-house needs. But there are not enough tools available to custom create expert systems to meet the needs of CAD. Expert systems currently have to be developed from basics using languages that are not in everyday use by the CAD programmers. Expert system shells available in the market do not have the flexibility or portability to support the creation of an expert system for multi-disciplinary parametric design. Thus there is a lack of repeatable use software to support the creation of customized expert systems to meet the special needs of parametric design in CAD.
In this thesis, the design of an object oriented framework which will aid in the creation of customized expert systems for CAD applications is presented. This framework, known as the Expert Consultation Environment, provides the CAD programmer with tools to create the expert system. This framework consists of various object-oriented classes which the programmer could use. The central part of this framework is the Expert Technician (ET) class. This class represents an expert in a real world situation. Each expert created by the programmer would have its own methods and knowledge in a domain of design. The ET would thus assist the designer using the expert system in that particular domain. The ET would be able to interact with the user in several different modes. These modes are the Consultant, the Transactor, the Observer, the Teacher and the Student modes. The method of interaction between the designer and the ET depends on the mode of operation of the ET.
A programmer of the expert system would be able to create these experts by providing knowledge and the design parameters to the ETs. In the case of a multi-disciplinary design the programmer would provide each ET with the knowledge regarding the specific domain of the design. In the case of concurrent engineering, each ET would be provided with knowledge regarding the domain involved in the product cycle of a component.
The object-oriented design for the framework has been discussed in detail including class descriptions of all the classes in the framework. A prototype of the framework was developed using C++. The creation of an expert system using this prototype for a multi-disciplinary design application is also discussed in this thesis.