Olasov@MIT-MULTICS.ARPA.UUCP (03/14/87)
I'm doing research on applications of various expert system techniques in architectural design <and, secondarily, engineering design>, with emphasis on interfacing knowledge based systems with CAD systems. In my research, I've developed a number of shells external to the CAD system, that are written in LISP, and that use different entry points to the CAD system. I've used rule based pattern matching shells and binary discrimination networks. I've also tried writing shells for an IBM-PC CAD package called AutoCAD, which has an internal LISP interpreter, with interesting results. I expected that an interpreter resident within the CAD system should be a superior strategy to that of having an interface of an external shell to the CAD package. I found that in the case of AutoLISP however, the internal LISP interpreter in AutoCAD, memory requirements for even trivial pattern matching algorhythms usually proved to be too great (yes, even in the latest versions of AutoCAD). Also, AutoLISP functions represent a very small subset of a full Common LISP, which makes ES applications exceedingly difficult to write, as functions which would otherwise be primitively defined must be defined at the interpreter level, thus using much of the precious memory it has to allocate to function definitions. Generally, small applications were successful. I would be very interested to learn about the research and experiences of others who are using, or attempting to use, expert system applications in CAD, particularly for architectural design purposes. Cheers, Ben Olasov <Olasov@MIT-MULTICS.ARPA>