Jump to content

Knowledge engineering: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Yamit29 (talk | contribs)
Yamit29 (talk | contribs)
Line 34: Line 34:
The independence of each layer enables implementation of different approaches at different layers. The hierarchical layering of control and abstraction of lower by upper layers enables the cooperation and solution of contradictions arising from the use of a variety of different approaches<ref>Zviel-Girshin, R., and Rosenberg, N. 2015. ''Lego in Teaching Object Oriented Programming Course.'' (Hebrew),5<sup>th</sup> Conference Initiative for Advancement of Higher Education, (Israel, May 2015).</ref> <ref>Zviel-Girshin, R. 2004. Web-based Lab-Oriented Teaching of Internet Programming Course. In L. Cantoni & C. McLoughlin (Eds.), ''Proceedings of EdMedia: World Conference on Educational Media and Technology 2004'' (pp. 740-746). Association for the Advancement of Computing in Education (AACE).</ref>.
The independence of each layer enables implementation of different approaches at different layers. The hierarchical layering of control and abstraction of lower by upper layers enables the cooperation and solution of contradictions arising from the use of a variety of different approaches<ref>Zviel-Girshin, R., and Rosenberg, N. 2015. ''Lego in Teaching Object Oriented Programming Course.'' (Hebrew),5<sup>th</sup> Conference Initiative for Advancement of Higher Education, (Israel, May 2015).</ref> <ref>Zviel-Girshin, R. 2004. Web-based Lab-Oriented Teaching of Internet Programming Course. In L. Cantoni & C. McLoughlin (Eds.), ''Proceedings of EdMedia: World Conference on Educational Media and Technology 2004'' (pp. 740-746). Association for the Advancement of Computing in Education (AACE).</ref>.


In very broad, plain terms, at each layer there is a small intelligent system controlling, generalizing and inducing the cooperation of different approaches in a larger intelligent system of the next layer [11].
In very broad, plain terms, at each layer there is a small intelligent system controlling, generalizing and inducing the cooperation of different approaches in a larger intelligent system of the next layer<ref>Zviel-Girshin, R. 2005. Web Search as Interactive Learning Environment for Graduation Projects. ''Journal of Interactive Learning Research'' 16(1), 21-30.</ref>.


=== Gestalt ===
=== Gestalt ===

Revision as of 00:37, 14 June 2018

Knowledge engineering (KE) refers to all technical, scientific and social aspects involved in building, maintaining and using knowledge-based systems.

A more specific definition of the domain restricts it to expert systems (ES) (frequently called knowledge-based systems). Although the terms sound very general, actually they have acquired a very technical, restricted meaning of referring to narrow set of computer systems fulfilling quite rigid conditions. Such definition is not representative of cornucopia of knowledge intensive applications and technologies flooding the digital world. A more general view regards KE as an area of engineering dealing with knowledge in general, beyond ES. The more general view extends and generalizes the definition of knowledge-based systems.

Background

Expert systems

One of the first examples of an expert system was MYCIN, an application to perform medical diagnosis. In the MYCIN example, the domain experts were medical doctors and the knowledge represented was their expertise in diagnosis.

Expert systems were first developed in artificial intelligence laboratories as an attempt to understand complex human decision making. Based on positive results from these initial prototypes, the technology was adopted by the US business community (and later worldwide) in the 1980s. The Stanford heuristic programming projects led by Edward Feigenbaum was one of the leaders in defining and developing the first expert systems.

Knowledge systems

Before the AI winter SE were the main example of KS. With the technological ICT advances and business and social changes sometimes called the fourth industrial revolution, more general non-algorithmic systems have been and are being developed. The field witnesses awe-inspiring deluge of divergent technologies and applications.

History

In the earliest days of expert systems there was little or no formal process for the creation of the software. Researchers just sat down with domain experts and started programming, often developing the required tools (e.g. inference engines) at the same time as the applications themselves. As expert systems moved from academic prototypes to deployed business systems it was realized that a methodology was required to bring predictability and control to the process of building the software. There were essentially two approaches that were attempted:

  1. Use conventional software development methodologies
  2. Develop special methodologies tuned to the requirements of building expert systems

Many of the early expert systems were developed by large consulting and system integration firms such as Andersen Consulting. These firms already had well tested conventional waterfall methodologies (e.g. Method/1 for Andersen) that they trained all their staff in and that were virtually always used to develop software for their clients. One trend in early expert systems development was to simply apply these waterfall methods to expert systems development.

Another issue with using conventional methods to develop expert systems was that due to the unprecedented nature of expert systems they were one of the first applications to adopt rapid application development methods that feature iteration and prototyping as well as or instead of detailed analysis and design. In the 1980s few conventional software methods supported this type of approach.

The final issue with using conventional methods to develop expert systems was the need for knowledge acquisition. Knowledge acquisition refers to the process of gathering expert knowledge and capturing it in the form of rules and ontologies. Knowledge acquisition has special requirements beyond the conventional specification process used to capture most business requirements.

These issues led to the second approach to knowledge engineering: development of custom methodologies specifically designed to build expert systems.[1] One of the first and most popular of such methodologies custom designed for expert systems was the Knowledge Acquisition and Documentation Structuring (KADS) methodology developed in Europe. KADS had great success in Europe and was also used in the United States.[2]

GML paradigm

General Outline

The Gestalt-Multiplex-Layering (GML) paradigm entails: gestalt – a deeper model of the expert knowledge and reasoning process; multiplicity – simultaneous use and cooperation of different and conflicting approaches; layering – use of a hierarchy of independent layers of control and processing, through which the input and intermediate results are propagated[3] [4][5][6].

The independence of each layer enables implementation of different approaches at different layers. The hierarchical layering of control and abstraction of lower by upper layers enables the cooperation and solution of contradictions arising from the use of a variety of different approaches[7] [8].

In very broad, plain terms, at each layer there is a small intelligent system controlling, generalizing and inducing the cooperation of different approaches in a larger intelligent system of the next layer[9].

Gestalt

Gestalt is the skeleton, the deeper model, the concept, the meta-model of the lower layer, abstracting, generalizing, controlling and interfacing it, and mediating between the lower layer, the upper layers and the user [12].

IS are frequently built around ontology, schema, meta-model controlling and coordinating: ontologies and semantic schema coordinating a multi-agent ES [13]; tentative designs, templates [14]; scenario generation [15]; knowledge acquisition filtered by models [16); story model [17]-[19]; fuzzy model [20]; active behavioral database of goals and rules coordinating the knowledge database [21]; declarative and executable object-oriented model [22]; data structure at object level [23]; frame templates [24]; interaction manager [25]; knowledge model used by agents to manage the others [17].

Gestalt has at least three facets: the declarative: the data and knowledge, the static aspect of knowledge; the procedural: the reasoning models, the data processing techniques, the inference engines, the dynamic aspect of knowledge; organizational: the interaction control of the multiplicity at the lower level, conflict resolution, user interface control, user involvement, feedback and the integration manager.

In general, the gestalt will involve a different approach than the lower level, and include more than one component. Architecturally it is quite a complex structure. It can be viewed as a small intelligent system at the heart of and controlling the larger one. In a multi-agent society, it’s the ruler and the governing strategy.

Multiplicity

The basic platitude: “two heads are better than one” is validated by such hard science approaches as dialectics, to become a central component in our basic approach. The cognitive science teaches us that the integration of a variety of different techniques in a soft approach has immense advantages.

Many modern IS integrate more than one basic method: multi-agent society of different behavior patterns and different roles [13],[17]; integrating inductive decision trees and neural networks [26]; multiple input channels and methods [27]; CBR with RBR discrepancies solution [28]; three independent models of knowledge representation and inference [20]; integrating CBR, neural networks and discrimenant analysis [29];  blackboard method of integrating multiple experts (sources of knowledge); integrating IS with DB approaches; integration of various rule paradigms into a single KBS; a hybrid neuro-fuzzy reasoning [31]; voting over multiple different learners; multi-intelligent systems combining such different approaches as extensional and intentional [21]; integration of conflicting schemas; integrating different analytical decision models [22]; integrating semantic expressions with examples [23]; combination of relational and object-oriented paradigms [24].

We can conclude, as a guideline, that the more different, even conflicting techniques we use, the wider and deeper view of the solution we will achieve. But this is too general and we need a more restrictive and precise method of integration.

First we prefer merging to compromise. While compromise loses some of the positive features of each ingredient, a price for one monolithic consistent approach, merging recruits all, as contradictory as they may be, and the larger the diversity, the softer and fuzzier the result.

This requires such components built into the system as conflict resolution, control manager of interaction, data flow and resource allocation, user transparency and involvement, priority indexing of approaches. These are among the components of our gestalt, deep model driven, structural, hierarchical, layered architecture paradigm, which transforms the chaotic multiplicity into a well behaved, disciplined one.

Layered Approach

The layered approach proved itself very useful in such different areas as computer networks (the reigning ISO OSI seven layers model and later Internet five layers model), operating systems (e.g. the UNIX kernel-shells model), compilers (the three layered: lexical, syntactical and semantic phases), client-server, front-end back-end approach. Among the many advantages are: independence, structuring, error protection, abstraction, precise interaction model, modularity, transparency, portability.

In the IS domain layering is now also widely used in such contexts as: structured libraries of behavior; client-server; hierarchical cases and domain specific indexing; two-level model with kernel and coordinating module [15]; three layers: semantic, syntactic and lexical for structured processing [14]; a hierarchical architecture modeling and inference [20]; an object-oriented organizational layering; intentional layer over extentional [21]; layering by generalization of schemas; hierarchical structuring of models [23]; dual hierarchy, by structure and logic of data [24]; three layers structured by human-computer interaction [25]; a layered agents society [17].

In the GML paradigm the layering permits structured abstraction, conflict solution by a higher level, different approaches at different layers, control and management, changeability and user involvement.

See also

References

  1. ^ Feigenbaum, Edward; McCorduk, Pamela (1983). The Fifth Generation (1st ed.). Reading, MA: Addison-Wesley. ISBN 978-0-201-11519-2. OCLC 9324691.
  2. ^ Schreiber, August Th.; Akkermans, Hans; Anjewierden, Anjo; Dehoog, Robert; Shadbolt, Nigel; Vandevelde, Walter; Wielinga, Bob (2000), Knowledge engineering and management: the CommonKADS methodology (1st ed.), Cambridge, MA: The MIT Press, ISBN 978-0-262-19300-9
  3. ^ Zviel-Girshin, R., and Rosenberg, N. 2015. ICT for education – an OK approach. ILAIS, Israel, 61-64.
  4. ^ Turing, A. M. 1950. Computing Machinery and Intelligence. Mind (49), pp.433-460.
  5. ^ Minsky, M. 1988. The Society of Mind. New York: Simon and Schuster.
  6. ^ R. Zviel-Girshin, and N. Rosenberg, “Montessori + SE + ICT = SEET:using SE to teach SE,”  in Proceedings of the IEEE/ACM 5th International Workshop on Theory-Oriented Software Engineering, TOSE 2016, 14 May 2016, pp.1-7, DOI: 10.1109/TOSE.2016.009
  7. ^ Zviel-Girshin, R., and Rosenberg, N. 2015. Lego in Teaching Object Oriented Programming Course. (Hebrew),5th Conference Initiative for Advancement of Higher Education, (Israel, May 2015).
  8. ^ Zviel-Girshin, R. 2004. Web-based Lab-Oriented Teaching of Internet Programming Course. In L. Cantoni & C. McLoughlin (Eds.), Proceedings of EdMedia: World Conference on Educational Media and Technology 2004 (pp. 740-746). Association for the Advancement of Computing in Education (AACE).
  9. ^ Zviel-Girshin, R. 2005. Web Search as Interactive Learning Environment for Graduation Projects. Journal of Interactive Learning Research 16(1), 21-30.

Template:Computable knowledge