Jump to content

Knowledge-based engineering

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Rjwilmsi (talk | contribs) at 17:23, 28 January 2016 (Journal cites, using AWB (11852)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Knowledge-based engineering (KBE) is the application of knowledge-based systems technology to the domain of manufacturing design and production. The design process is inherently a knowledge-intensive activity, so a great deal of the emphasis for KBE is on the use of knowledge-based technology to support computer-aided design (CAD) however knowledge-based techniques (e.g. knowledge management) can be applied to the entire product lifecycle.

The CAD domain has always been an early adopter of software-engineering techniques used in knowledge-based systems, such as object-orientation and rules. Knowledge-based engineering integrates these technologies with CAD and other traditional engineering software tools.

Benefits of KBE include improved collaboration of the design team due to knowledge management, improved re-use of design artifacts, and automation of major parts of the product lifecycle.[1]

Overview

KBE is essentially engineering on the basis of knowledge models. A knowledge model uses knowledge representation to represent the artifacts of the design process (as well as the process itself) rather than or in addition to conventional programming and database techniques.

The advantages to using knowledge representation to model industrial engineering tasks and artifacts are:

  • Improved integration. In traditional CAD and industrial systems each application often has its own slightly different model. Having a standardized knowledge model makes integration easier across different systems and applications.
  • More re-use. A knowledge model facilitates storing and tagging design artifacts so that they can easily be found again and re-used. Also, knowledge models are themselves more re-usable by virtue of using formalism such as IS-A relations (classes and subclasses in the object-oriented paradigm). With subclassing it can be very easy to create new types of artifacts and processes by starting with an existing class and adding a new subclass that inherits all the default properties and behaviors of its parents and then can be adapted as needed.
  • Better maintenance. Class hierarchies not only facilitate re-use they also facilitate maintenance of systems. By having one definition of a class that is shared by multiple systems, issues of change control and consistency are greatly simplified.
  • More automation. Expert system rules can capture and automate decision making that is left to human experts with most conventional systems.

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 includes 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).[2]

There are two primary ways that KBE can be implemented:

  1. Build knowledge models from the ground up using knowledge-based technology
  2. Layer knowledge-based technology on top of existing CAD, simulation, and other engineering applications

An early example of the first approach was the Simkit tool developed by Intellicorp in the 1980s. Simkit was developed on top of Intellicorp's Knowledge Engineering Environment (KEE). KEE was a very powerful knowledge-based systems development environment. KEE started on Lisp and added frames, objects, and rules, as well as powerful additional tools, such as hypothetical reasoning and truth maintenance. Simkit added stochastic simulation capabilities to the KEE environment. These capabilities included an event model, random distribution generators, simulation visualization, and more. The Simkit tool was an early example of KBE. It could define a simulation in terms of class models and rules and then run the simulation as a conventional simulation would. Along the way, the simulation could continue to invoke rules, demons, and object methods, providing the potential for much richer simulation as well as analysis than conventional simulation tools.

One of the issues that Simkit faced was a common issue for most early KBE systems developed with this method: The Lisp knowledge-based environments provide very powerful knowledge representation and reasoning capabilities; however, they did so at the cost of massive requirements for memory and processing that stretched the limits of the computers of the time. Simkit could run simulations with thousands of objects and do very sophisticated analysis on those objects. However, industrial simulations often required tens or hundreds of thousands of objects, and Simkit had difficulty scaling up to such levels.[3]

The second alternative to developing KBE is illustrated by the CATIA product suite. CATIA started with products for CAD and other traditional industrial engineering applications and added knowledge-based capabilities on to them; for example, their KnowledgeWare module.[4]

History

KBE developed in the 1980s. It was part of the initial wave of investment in Artificial Intelligence for business that fueled expert systems. Like expert systems, it relied on what at the time were leading edge advances in corporate information technology such as PCs, workstations, and client-server architectures. These same technologies were also facilitating the growth of CAx and CAD software. CAD tended to drive leading edge technologies and even push them past their current limits.[5] The best example of this was object-oriented programming and database technology, which were adapted by CAD when most corporate information technology shops were dominated by relational databases and procedural programming.[6]

As with expert systems, KBE suffered a downturn during the AI Winter.[7] Also, as with expert systems and artificial intelligence technology in general, there was renewed interest with the Internet. In the case of KBE, the interest was perhaps strongest in the business to business type of electronic commerce and technologies that facilitate the definition of industry standard vocabularies and ontologies for manufactured products.

The semantic web is the vision of Tim Berners Lee for the next generation of the Internet. This will be a knowledge-based Internet built on ontologies, objects, and frame technologies that were also enabling technologies for KBE. Important technologies for the semantic web are XML, RDF, and OWL.[8] The semantic web has excellent potential for KBE, and KBE ontologies and projects are a strong area for current research.[9]

KBE and product lifecycle management

Product Lifecycle Management (PLM) is the management of the manufacturing process of any industry that produces goods. It can span the full product lifecycle from idea generation to implementation, delivery, and disposal. KBE at this level will deal with product issues of a more generic nature than it will with CAx. A natural area of emphasis is on the production process; however, lifecycle management can cover many more issues such as business planning, marketing, etc. An advantage of using KBE is to get the automated reasoning and knowledge management services of a knowledge-based environment integrated with the many diverse but related needs of lifecycle management. KBE supports the decision processes involved with configuration, trades, control, management, and a number of other areas, such as optimization.

KBE and CAx

CAx refers to the domain of computer-aided tools for analysis and design. CAx spans multiple domains. Examples are computer-aided design of manufactured parts, software, the architecture of buildings, etc. Although each specific domain of CAx will have very different kinds of problems and artifacts, they all share common issues as well such as having to manage collaboration of sophisticated knowledge workers, design and re-use of complex artifacts, etc.

Essentially KBE extends, builds on, and integrates with the CAx domain typically referred to as Computer Aided Design (CAD). In this sense KBE is analogous to Knowledge-Based Software Engineering, which extended the domain of Computer Aided Software Engineering with knowledge-based tools and technology. What KBSE was to software and CASE, KBE is to manufactured products and CAD.

An example can be taken from Boeing's experience. The 777 Program took on the challenge of having a digitally-defined plane. That required an investment in large-scale systems, databases, and workstations for design and analytical engineering work. Given the magnitude of the computing work that was required, KBE got its toe in the door, so to speak, through a "pay as you go plan." Essentially, this technique was to show benefits and then to obtain more work (think agile engineering) thereby. In the case of the 777, the project got to where influences to changes in the early part of the design/build stream (loads) could be recomputed over a weekend to allow evaluation by downstream processes. As required, engineers were in the loop to finish and sign off on work. At the same time, CAx allowed tighter tolerances to be met. With the 777, KBE was so successful that subsequent programs applied it in more areas. Over time, KBE facilities were integrated into the CAx platform and are a normal part of the operation.[10]

KBE and knowledge management

One of the most important knowledge-based technologies for KBE is knowledge management. Knowledge management tools support a wide spectrum repository, i.e., a repository that can support all different types of work artifacts: informal drawings and notes, large database tables, multimedia and hypertext objects, etc. Knowledge management provides the various group support tools to help diverse stake holders collaborate on the design and implementation of products. It also provides tools to automate the design process (e.g., rules) and to facilitate re-use.[11]

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," proposes solutions which focus on the structuring and formalization steps as well as links to the implementation.[12]

An alternative to MOKA is to use general knowledge engineering methods that have been developed for expert systems across all industries [13] or to use general software development methodologies such as the Rational Unified Process or Agile methods.

Languages for KBE

Two critical issues for the languages and formalisms used for KBE are:

  • Knowledge-based vs. procedural programming
  • Standardization vs. proprietary

Knowledge-based vs. procedural programming

A fundamental trade-off identified with knowledge representation in artificial intelligence is between expressive power and computability. As Levesque demonstrated in his classic paper on the topic, the more powerful a knowledge-representation formalism one designs, the closer the formalism will come to the expressive power of first order logic. As Levesque also demonstrated, the closer a language is to First Order Logic, the more probable that it will allow expressions that are undecidable or require exponential processing power to complete.[14] In the implementation of KBE systems, this trade off is reflected in the choice to use powerful knowledge-based environments or more conventional procedural and object-oriented programming environments.

Standardization vs. proprietary

There is a trade off between using standards such as STEM and vendor- or business-specific proprietary languages. Standardization facilitates knowledge sharing, integration, and re-use. Proprietary formats (such as CATIA) can provide competitive advantage and powerful features beyond current standardization.[15]

Genworks GDL, a commercial product whose core is based on the AGPL-licensed Gendl Project,[16] addresses the issue of application longevity by providing a high-level declarative language kernel which is a superset of a standard dialect of the Lisp programming language (ANSI Common Lisp, or CL). Gendl/GDL itself is proposed as a de facto standard[17] for ANSI CL-based KBE languages.

In 2006, the Object Management Group released a KBE services RFP document and requested feedback.[18] To date, no OMG specification for KBE exists; however, there is an OMG standard for CAD services.[19]

An example of a system-independent language for the development of machine-readable ontologies that is in the KBE domain is Gellish English.

KBE in Academia

Implementations

The following KBE development packages are commercially available:

For CAD

For General-purpose development of Web-deployed applications

For analysis, design and engineering processes

See also

References

  1. ^ "Knowledge Based Engineering". http://www.technosoft.com. Technosoft. Retrieved 5 July 2014. {{cite web}}: External link in |website= (help)
  2. ^ Prasad, Brian. "What Distinguishes KBE from Automation". coe.org. Archived from the original on 24 March 2012. Retrieved 3 July 2014.
  3. ^ Drummond, Brian; Marilyn Stelzner (1989). "Simkit: A Model Building Simulation Toolkit". In Mark Richer (ed.). AI Tools and Techniques. Ablex. pp. 241–260. ISBN 0-89391-494-0. Retrieved 6 July 2014.
  4. ^ "What Is CATIA?". http://www.firstratemold.com. firstratemold. Retrieved 6 July 2014. {{cite web}}: External link in |website= (help)
  5. ^ Switlik, John (October–November 2005). "Knowledge Based Engineering (KBE): Update". coe.org. COE. Retrieved 6 July 2014. {{cite web}}: Check |archiveurl= value (help)
  6. ^ Spooner, David (1991). "Towards an Object-Oriented Data Model for a Mechanical CAD Database System". On Object-Oriented Database Systems Topics in Information Systems: 189–205. doi:10.1007/978-3-642-84374-7_13. Retrieved 6 July 2014.
  7. ^ "AI Winter". http://www.ainewsletter.com. ainewsletter. Retrieved 6 July 2014. the AI Winter of the late 80s. The phrase was coined by analogy with "nuclear winter" - the theory that mass use of nuclear weapons would blot out the sun with smoke and dust, causing plunging global temperatures, a frozen Earth, and the extinction of humanity. The AI Winter merely caused the extinction of AI companies, partly because of the hype over expert systems and the disillusionment caused when business discovered their limitations. {{cite web}}: External link in |website= (help)
  8. ^ Berners-Lee, Tim; Hendler, James; Lassila, Ora (May 17, 2001). "The Semantic Web A new form of Web content that is meaningful to computers will unleash a revolution of new possibilities". Scientific American. 284: 34–43. doi:10.1038/scientificamerican0501-34.
  9. ^ Zhang, W.Y.; Yun, J.W. (April 2008). "Exploring Semantic Web technologies for ontology-based modeling in collaborative engineering design". The International Journal of Advanced Manufacturing Technology. 36 (9–10): 833–843. doi:10.1007/s00170-006-0896-5. Retrieved 6 July 2014.
  10. ^ See Talk Page, Point-in-Time example - references need to be updated
  11. ^ Sainter, P (September 10–13, 2000). "PRODUCT KNOWLEDGE MANAGEMENT WITHIN KNOWLEDGE-BASEDENGINEERING SYSTEMS". Proceedings of DETC’00ASME 2000 Design Engineering Technical ConferenceAnd Computers and Information in Engineering Conference. Baltimore, Maryland: ASME. Retrieved 4 July 2014.
  12. ^ "MOKA: A Framework for Structuring and Representing Engineering Knowledge". web.archive.org. Esprit Project. Retrieved 5 July 2014. {{cite web}}: Check |archiveurl= value (help)
  13. ^ Kendal, S.L.; Creen, M. (2007), An introduction to knowledge engineering, London: Springer, ISBN 978-1-84628-475-5, OCLC 70987401
  14. ^ Levesque, Hector; Ronald Brachman (1985). "A Fundamental Tradeoff in Knowledge Representation and Reasoning". In Ronald Brachman and Hector J. Levesque (ed.). Reading in Knowledge Representation. Morgan Kaufmann. p. 49. ISBN 0-934613-01-X. The good news in reducing KR service to theorem proving is that we now have a very clear, very specific notion of what the KR system should do; the bad new is that it is also clear that the services can not be provided... deciding whether or not a sentence in FOL is a theorem... is unsolvable.
  15. ^ Wilson, Walter. "A Language For Engineering Design" (PDF). http://step.nasa.gov. Lockheed Martin. Retrieved 4 July 2014. {{cite web}}: External link in |website= (help)
  16. ^ "Genworks". http://www.genworks.com. Retrieved 4 July 2014. {{cite web}}: External link in |website= (help)
  17. ^ "GDL Language Specification".
  18. ^ "KBE Services for PLM RFP". omg.org. Object Management Group. 2006. Retrieved 4 July 2014.
  19. ^ "Computer Aided Design Services Specification". omg.org. Object Management Group. January 2005. Retrieved 4 July 2014.