ICAD

From Wikipedia, the free encyclopedia

ICAD (Corporate history: ICAD, Inc., Concentra, KTI, Dassault Systemes) is a Knowledge-Based Engineering system and is based upon the Lisp programming language. As such, ICAD has an open architecture that can utilize all the power and flexibility of the underlying language.

KBE, as implemented via ICAD, received a lot of attention due to the remarkable results that appeared to take little effort. ICAD allowed one example of end-user computing that in a sense is unparalleled. Most ICAD developers were degreed engineers. Systems developed by ICAD users were non-trivial and consisted of highly complicated code. In the sense of end-user computing, ICAD was the first to allow the power of a domain tool to be in the hands of the user at the same time being open to allow extensions as identified and defined by the domain expert or SME.

A recent Knowledge-Based Engineering Update looks at the resulting explosion of expectations (see AI Winter) that are not sustainable. Given such a bubble burst does not diminish the existence of capability that would be excellent if expectations and use were properly managed.

Contents

[edit] Principals

Larry Rosenfeld, Avrum Belzer, Pat O'Keefe, David Place, Stanley Knutson, ...

[edit] ICAD Particulars

ICAD uses a declarative language (IDL) that provides a mechanism for relating parts (defpart) via a hierarchical set of relationships. Technically, the ICAD Defpart is a Lisp macro. The ICAD defpart list is a set of generic classes that can be instantiated with specific properties depending upon what was represented. This defpart list is extendible via composite parts that represented domain entities. Along with the part-subpart relations, ICAD supports generic relations via the object modeling capabilities of Lisp.

Example applications of ICAD range from a small collection of defparts that represents a part or component to a larger collection that represents an assembly. In terms of power, an ICAD system, when fully specified, can generate thousands of instances of parts on a major assembly design.

(Need to collect examples with Stanley Knutson and others)

[edit] History

The original implementation of ICAD was on the Symbolics (a Lisp machine). The timeframe was 1984-85 (see Principals section; also, Philip Greenspun's list of Engineering Projects).

ICAD was ported to Unix when Common Lisp became compilable -- expand upon this -- and was then ported to the generic Unix machine (such as the Sun workstations) -- expand upon this evolution.

The original domain for ICAD was mechanical design with many application successes. However, ICAD has found use in other domains, such as electrical design, shape modeling, etc.

Prior to 2003, -- sketch out the historic view ... using examples projects, like this one.

Further examples can be found in the presentations at the annual IIUG (International ICAD Users Group) that have been published in the KTI Vault (1999 through 2002).

As of 2003, ICAD was featured strongly in several areas as evidenced by the Vision & Strategy Product Vision and Strategy presentation.

After 2003, ICAD use diminished. At the end of 2001, the KTI Company faced financial difficulties and laid off most of its best staff. They were eventually bought out by Dassault who effectively scuppered the ICAD product. The Genworks GDL product is the nearest functional eqivalent to ICAD currently available.

The ICAD system was very expensive, relatively. ICAD was in the price range of high-end systems. Market dynamics couldn't support this as there may not have been sufficient differentiating factors between ICAD and the lower-end systems (or the promises from Dassault). Yet, the question is open (witness the upcoming discussion at COE).

As of 2005, things are still a bit unclear. ICAD 8.3 was delivered. The recent COE Aerospace Conference had a discussion about the futures of KBE. One issue involves the stacking of 'meta' issues within a computer model. How this is resolved, whether by more icons or the availability of an external language, remains to be seen. -- more work here.

[edit] Futures (KBE,etc.)

One role for ICAD may be serving as the defining prototype for KBE which would require that we know more about what occurred the past 15 years (much information is tied up behind corporate firewalls and under proprietary walls). With the rise of the functional languages (an example is Haskell) on the landscape, perhaps some of the power that is attributable to Lisp may be replicated.

[edit] Recent usage

See IIUG at COE, 2003 (first meeting due to Dassault by KTI)

Boeing and Airbus used ICAD extensively to develop various components in the 1990's and early 21st century. KTI was absorbed by Dassault Systemes and ICAD is no longer considered the go-forward tool for knowledge-based engineering (KBE) applications by that company. They are promoting a suite of tools oriented around version 5 of their popular CATIA CAD application, with Knowledgeware the purported replacement for ICAD. As of this writing, Knowledgeware is too CATIA-task oriented and immature to be an adequate replacement for the ICAD development environment.

[edit] See also

[edit] External links