Knowledge-based engineering 3030181 217707894 2008-06-07T08:12:52Z Timo Verwoest 7263344 {{Advert|date=January 2008}} '''Knowledge-based engineering''' (KBE) is a discipline with roots in [[computer-aided design]] (CAD) and [[knowledge-based systems]] but has several definitions and roles depending upon the context. An early role was support tool for a [[design engineer]] generally within the context of product design. Success of early KBE prototypes was remarkable (see [[Knowledge-based engineering#History|History]]); eventually this led to KBE being considered as the basis for generative design with many expectations for hands-off performance where there would be limited human involvement in the design process. ==Overview== KBE can be defined as engineering on the basis of electronic [[knowledge models]]. Such knowledge models are the result of [[knowledge modeling]] that uses [[knowledge representation]] techniques to create the computer interpretable models. The knowledge models can be imported in and/or stored in specific engineering applications that enable engineers to specify requirements or create designs on the basis of the knowledge in such models. There are various methods available for the development of knowledge models, most of them are system dependent. An example of a system independent language for the development of knowledge models as well as for the specification of designs (product models) is called [[Gellish English]]. An example of a system that can store knowledge and use it for design is the [[CATIA]] program through its [http://www.coe.org/Collaboration/DiscussionForum/ActiveDiscussions/tabid/210/view/topics/forumid/19/Default.aspx Knowledge] Workbench. KBE can have a wide scope that covers the full range of activities related to [[Product Lifecycle Management]] and [[Multidisciplinary design optimization]]. KBE's scope would include design, analysis ([[computer-aided engineering]] – CAE), [[manufacturing]], and support. In this inclusive role, KBE has to cover a large multi-disciplinary role related to many computer aided technologies ([[CAx]]). KBE also has more general overtones. One of its roles is to bridge [[knowledge management]] and design [http://www.coe.org/coldfusion/newsnet/Jun05/knowledge.cfm#1 automation]. [[Knowledge]] processing is a recent advance in [[computing]]. It has played a successful role in [[engineering]] and is now undergoing modifications (to be explained). An example of KBE’s role is [http://www.coe.org/coldfusion/newsnet/Apr05/ generative mechanical design]. There are others. KBE can be thought of as an advanced form of computer applications (in some forms with an extreme [[end-user computing]] flavor) that support [[Product Lifecycle Management|PLM]] and [[CAx]]. There are similar techniques, such as [[electronic design automation]]. [[AAAI]] provides a long list of [http://www.aaai.org/AITopics/html/engin.html engineering applications] some of which are within the KBE umbrella. At some point, the concept of KBE might split into several sub-categories as MCAD and ECAD are just two of many possible types of design automation. ==History == KBE essentially was a [http://www.coe.org/Newsnet/Oct05/index.cfm complementary development] to [[CAx]] and can be dated from the 1980s (See Also, [[ICAD]]). [[CAx]] has been developing along with the [http://www.memagazine.org/contents/current/features/cassist/cassist.html computer] after making large strides in the [[1970]]s. As with any bit of progress, KBE flashed on the horizon, lit the sky for a while, and then experienced a downslide (see [[AI Winter]]). KBE had sufficient success stories that sustained it long enough into the 1990s to get attention. Some prime contributors to the hiatus of KBE were unmanageable [[user expectations|expectations]], increasing tedium associated with forming completion of results, and some notion that the architecture for KBE was not sufficiently based upon the newer technology. KBE continued to exist in pockets. With the prevalence of [[object-oriented]] methods, systems advanced enough to allow re-implementation. This reconstruction has been on-going for several years and has been frustratingly slow. Now, with the basis for this discipline becoming more robust, it starts to get interesting again. KBE, as implemented with [[ICAD]] can be thought of as an advanced form of computer applications (in some forms with an extreme [[end-user computing]] flavor) that support [[Product Lifecycle Management|PLM]] and [[CAx]]. ==KBE and product lifecycle management == {{main|Product Lifecycle Management}} The scope of PLM involves all the steps that exist within any industry that produces goods. KBE at this level will deal with product issues of a more generic nature than it will with [[CAx]]. Some might call this level 'assembly' in orientation. However, it's much more than that as PLM covers both the technical and the business side of a product. KBE then needs to support the decision processes involved with configuration, trades, control, management, and a number of other areas, such as [[Multidisciplinary design optimization|optimization]]. Recently the [[Object Management Group]] released a [http://www.omg.org/cgi-bin/doc?dtc/05-09-11 RFP Document] titled "KBE services for PLM" and requested feedback. ==KBE and CAX== {{main|CAx}} CAx crosses many disciplinary bounds and provides a sound basis for [[Product Lifecycle Management|PLM]]. In a sense, CAx is a form of applied science that uses most of the disciplines of engineering and their associated fields. [[Materials science]] comes to mind. KBE's support of CAx may have some similarities with its support of [[Product Lifecycle Management|PLM]] but, in a sense, the differences are going to be larger. The KBE flavor at the CAx level may assume a strong behavioral flavor. Given the underlying [[object oriented]] focus, there is a natural use of entities possessing complicated attributes and fulfilling non-trivial roles. One vendor's approach provides a means via workbenches to embed attributes and methods within sub-parts (object) or within a joining of sub-parts into a part. As an aggregate, the individual actions, that are event driven, can be fairly involved. This fact identifies one major problem, namely control of what is essentially a [[nondeterministic algorithm|non-deterministic]] mixture. This characteristic of the [[decision problem]] will get more attention as the KBE systems subsume more levels and encompasses a broader scope of [[Product Lifecycle Management|PLM]]. ==KBE and knowledge management== {{main|Knowledge management}} KBE is related to [[knowledge management]] which has many levels itself. Some approaches to [[knowledge]] are [[reductionistic]], as well they ought to be given the pragmatic focus of [[knowledge modeling]]. However, due to KBE dealing with aggregates that can be quite complicated both in structure and in behavior, some [[holistic]] notions (note link to [[complexity theory]]) might be apropos. Also, given all the layers of KBE and given the fact that one part of an associated space is heavily mathematical (namely, [[manifold]] in nature), KBE is extremely interesting from the [[knowledge]] viewpoint (or one would hope). All one has to do is note that the KBE process's goal is to produce results in the [[reality|'real world']] via artifacts and to do so using techniques that are highly [[computational]]. That, in essence, is the epitome of applied science/engineering, and it could never be non-interesting. ==KBE methodology == The development of KBE applications concerns the requirements to identify, capture, structure, formalize and finally implement knowledge. Many different so-called KBE platforms support only the implementation step which is not always the main bottleneck in the KBE development process. In order to limit the risk associated with the development and maintenance of KBE application there is a need to rely on an appropriate methodology for managing the knowledge and maintaining it up to date. As example of such KBE methodology the EU project MOKA "Methodology and tools Oriented to Knowledge based Applications" propose solutions which focus on the structuration and formalization steps as well as links to the implementation see [http://www.kbe.coventry.ac.uk/moka/ MOKA project] ==KBE methodology in CATIA knowledgeware == <!-- This section is linked from [[CATIA]] --> {{Advert|date=January 2008}} [[CATIA]] provides the following types of tools. ::'''Basic''' - Parameters, formulas, laws, and such. Includes a Knowledge Inspector. ::'''Reactive''' - Rules, check, and reactions. These can apply against known geometry or cause geometry modification. ::'''Control''' - List and loop handlers. ::'''Reuse''' - Power copy, user feature, and catalog. Local extensions to the workbench functionality can be accomplished with [[visual basic]]. A recent [http://www.coe.org/coldfusion/newsnet/Jun05/knowledge.cfm#1 overview article] discussed how KBE differs from automation. “Automation” in this case deals with doing local extensions using [[C++]]. The argument is that a KBE system is dynamic, generic, generative, high level and demand driven. ==CATIA-related discussion group== An active discussion group related to KBE can be found at [http://www.coe.org/forums/categories.cfm?catid=19 COE Discussion Forum - Knowledge Based Engineering]. The discussions range from specifics of CATIA's workbenches to the more general topics of KBE's definitions and preferred processes. The group, under the leadership of Dr. Brian Prasad of Parker Aerospace who is the COE-DPC KBE Committee Chair, is using the COE Forum to develop a KBE Best Practices Document. Given that KBE rests at the heart of some fairly involved processes, such as the whole of [[Product Lifecycle Management|PLM]] and [[CAx]], this site for KBE is expected to become quite extensive. ==Languages for KBE== Some questions can be asked in regard to KBE implementation: can we represent knowledge in a vendor-neutral format? can the knowledge in our designs be retained for decades, long after a vendor system (such as, CATIA) has disappeared? These questions are addressed in a 2005 Aerospace COE presentation "[http://www.vought.com/ntcoe/data/presentation_wilson_20060217.pdf A Proposal for CATIA V6]" by Walter Wilson of Lockheed Martin. Mr. Wilson advocates using a type of programming language to define design data -- operations, parameters, formulas, etc. -- instead of a proprietary file format (such as Dassault's CATIA). One's data would no longer be tied to a specific CAD system. Unlike STEP, which inevitably lags commercial CAD systems in the features it supports, programmability would allow the definition of new design features. A [http://www.axiomaticlanguage.org logic programming language] is proposed as the basis for the engineering design language because of its simplicity and extensibility. The geometric engine for the language features would be open source to give engineers control over approximation algorithms and to better guarantee long-term accessibility of the data. ==KBE in Academia== *See Webliography for [http://web.cs.wpi.edu/Research/aidg/AIinD-hotlist.html AI in Design] hosted by Worcester Polytechnic Institute and the NSF Report "[http://asudesign.eas.asu.edu/events/NSF/report.html Research Opportunities in Engineering Design]." *[http://www.lr.tudelft.nl/dar Design of Aircraft and Rotorcraft], Faculty of Aerospace Engineering, Delft University of Technology, The Netherlands ==Implementations== The following KBE development packages are commercially available: ===For CAD=== *[http://www.navitech.us/Products/Magix/Overview.aspx Magix] by [http://www.navitech.us/ Navitech] *[http://www.plm.automation.siemens.com/en_us/products/nx/prog_custom/kbp.shtml Knowledge Fusion] from [[UGS Corp.]] *[[ICAD]] and [http://www.3ds.com/es/products-solutions/plm-solutions/catia/all-products/domain/Product_Synthesis Knowledgeware] from [[Dassault Systemes]] *GDL from [http://www.genworks.com/ Genworks International] *[[Pro/ENGINEER]] Expert Framework from [[Parametric Technology Corporation]] *[[SmartAssembly]] for Pro/ENGINEER from [[Sigmaxim Inc.]] *[[AutoLISP]] from [[Autodesk]] *[http://www.driveworks.co.uk/ DriveWorks] A SolidWorks Certified Gold Partner [http://www.solidworks.com]]] *Kadviser from [http://www.kadetech-industries.com/ Kadetech Industries] and now [http://www.nimtoth.com/kadviser.html NIMTOTH] *YVE - Your Variant Engineer from [http://www.tecneos.de/ tecneos software-engineering] *KBEWorks by [http://www.visionkbe.com/ VisionKBE] ===For analysis, design and engineering processes=== *[http://www.quaestor.org Quaestor] by [http://www.qnowledge.nl/index.php?page=Home&lang=en Qnowledge Modeling Technologies] ==KBE futures, KBE theory == {{SectOR|date=January 2008}} KBE, as a particular example of [[Knowledge-based systems|KS]], is a multi-disciplinary framework that has more than practical considerations. Not only will KBE require successful handling of issues of the computational ([http://www-ksl.stanford.edu/knowledge-sharing/papers/engmath.html Ontology], [[Artificial intelligence|Artificial Intelligence]], [[Entscheidungsproblem]], [[Interactive computation]], [[Category Theory]], ...) and logic ([[non-monotonic logic|non-monotonic]] issues related to the [[qualification problem|qualification]], [[frame problem|frame]], and [[ramification problem|ramification]] problems)), it will touch upon all [[sciences]] that deal with matter, its manipulations, and the related decisions. In a sense, [[Product Lifecycle Management|PLM]] allows us to have the world as a large laboratory for experimental co-evolution of our [[knowledge]] and our artificial co-horts. What better framework is there to explore the "increasingly complicated mappings between the human world and the computational"? In terms of [[methodology]] and their associated means, KBE offers support via several [[paradigms]]. These range from the home-grown all the way to strategically defined and integrated tools that cover both breadth and depth. A continuing theme will be resolving the contextual definitions for KBE into a [[coherent]] discipline (or at least attempting this) and keeping a handle on managing the necessary [[quantitative]] comparisons. One issue of importance considers what limits there may be to the computational; this study requires a multi-disciplinary focus and an understanding of the [[quasi-empirical]]. Given the knowledge focus of KBE, another issue involves what limits there might be to a computational basis for knowledge and whether these are overcome with the more advanced types of human-machine interface. ==See also== * [[Knowledge-based systems]] * [[Functional programming]] * [[Multidisciplinary design optimization]] * [[computer model|Model]] * [[Model (abstract)]] * [[Design]] * [[Entscheidungsproblem]] * [[Decision problem]] - KBE is mainly a collection of decision points. Several aspects of KBE approach what might be called a 'decidable' bounds though it's hard to get this fact discussed (hence the node here to foster the discussion). * [[Differential geometry]] ==External links== * [http://www.coe.org/ COE links] **[http://www.coe.org/coldfusion/Newsnet/Oct05/index.cfm Knowledge-Based Engineering: Update] **[http://www.coe.org/coldfusion/newsnet/Jun05/knowledge.cfm#1 What Distinguishes KBE from Automation] **[http://www.coe.org/coldfusion/newsnet/July05/knowledge.cfm#1 CATE, Lessons for KBE] **[http://www.coe.org/Collaboration/DiscussionForum/ActiveDiscussions/tabid/210/forumid/19/postid/102692/view/topic/Default.aspx KBE Best Practices] **[http://www.coe.org/coldfusion/newsnet/july03/ COE Feature: CATIA V4 and V5 - What Does the Difference Mean?] *[http://www.plm.automation.siemens.com/en_us/products/nx/prog_custom/kbp.shtml Knowledge Fusion] from [[UGS Corp.]] * [http://www.omg.org/cgi-bin/doc?dtc/05-09-11 KBE Services for PLM RFP] * [http://www.omg.org/cgi-bin/doc?mantis/2005-10-01 KBE services for PLM" RFP: feedback questionnaire] * [http://www.alcyon.co.in/whatiskbe.pdf Alcyon Engineering: Introduction to Knowledge Based Engineering] * [http://www.kbe.coventry.ac.uk/moka/links.htm MOKA Links] * [http://www.memagazine.org/contents/current/features/cassist/cassist.html ASME celebrates 125th Anniversary] * [http://ajswtlk.com/TruthEngineering.aspx Truth Engineering] * [http://www.gid.uji.es/docs/articles/bermellP_02_01.pdf A KBE System for the Design of Wind Tunnel Models Using Reusable Knowledge Components] * [http://www.lr.tudelft.nl/live/pagina.jsp?id=b5411c30-06d3-424a-849b-085b774687c5&lang=en Knowledge Based Engineering] department at the [http://www.lr.tudelft.nl Faculty of Aerospace Engineering] of the [http://www.tudelft.nl Delft University of Technology] * [http://ntnu-kbe.org/default.aspx Knowledge-based engineering] at the [[Norwegian University of Science and Technology]] (NTNU) [[Category:Computer-aided design]] [[Category:Knowledge engineering]] [[Category:Product lifecycle management]] [[de:Wissensbasierte Konstruktion]]