Knowledge Modelling: Foundations, Techniques and Applications Enrico Motta Knowledge Media Institute The Open University United Kingdom
User Interface Domain Knowledge Base Inference Engine Basic KBS Architecture
User Interface Domain Knowledge Base Inference Engine First Generation KBS Architecture Rule-based Backward-chaining Set of Domain rules
User Interface Domain Knowledge Base Inference Engine Problems l Focus on implementation-level aspects (backward chaining) rather than knowledge-level functionalities (medical diagnosis) l Poor explanation capabilities l Difficult to assess competence l Low-level reuse support —Rules tend to be application specific
Heuristic Classification Model Abstraction Heuristic Match Data Refinement Solutions Clancey, AI Journal, 27, 1985 Data Abstractions Solutions Abstractions
HC in Medical Diagnosis Abstraction Heuristic Match Refinement Solutions Data Abstractions Solutions Abstractions Low white blood count Immunosuppressed Data Gram-negative Infection E-coli Infection
HC in Book Selection Abstraction Heuristic Match Refinement Solutions Data Abstractions Solutions Abstractions Watches no TV Educated Person Stereotype Data ‘Intelligent Book’ Anna Karenina
So What? (Competence vs Performance) l Knowledge-level analysis shows what system actually does, not how it does it —The interesting aspect about Mycin is its classification behaviour, not its depth-first control regime —Separation of competence from performance (or specification from implementation) »Important for both analysis and design of knowledge-intensive systems
So What? (Levels of system analysis) l There exist different levels at which a system can be described —knowledge-level (tasks and problem solving methods) —Symbol-level (backward-chaining) —Sub-symbol level (registers) l Shift in the level of analysis: —Wrong question: Can a problem be solved by means of a rule-based system? —Right questions: What type of knowledge- intensive task are we tackling? What are the appropriate problem solving methods?
So What? (Reuse) l Knowledge-level analysis uncovers generic reasoning patterns in problem solving agents —E.g., heuristic classification l Shift from rule-based reuse to knowledge-level reuse l Focus on high-level reusable task models and reasoning patterns —Classes of tasks »Design, diagnosis, classification, etc. —Problem solving methods »Design methods, classification methods, etc.
So What? (Research & Development) l Model-based knowledge acquisition —From acquiring rules to instantiating task models l Robust KBS development by reuse —KBS as a structured development process »Robustness and economy —Importance of libraries —KBS development not necessarily an ‘art’! l Towards a practical theory of knowledge-based systems —What are the classes of tasks/problem solving methods? —How do we identify/model them? —When are methods appropriate?
Knowledge-level Architectures for Sharing and Reuse Application of the modelling paradigm to the specification and use of libraries of reusable components for knowledge systems
Modelling Frameworks (1) l A modelling framework identifies the generic types of knowledge which occur in knowledge systems, thus providing a generic epistemological organization for knowledge systems l Several exist —KADS/Common KADS - Un.of Amsterdam —Components of Expertise - Steels —Generic Tasks - Chandrasekaran —Role-limiting Methods - McDermott —Protégé - Musen, Stanford —TMDA - Motta —UPML - Fensel & Motta
Modelling Frameworks (2) l Much in common —Emphasis on reusable models —Typology of generic tasks —Constructivist paradigm l Some differences —Different degrees of coupling between domain-specific and domain-independent knowledge —Different degrees of flexibility —Different typologies of knowledge categories
A Constructive Approach... Let’s define our own framework...
Generic Tasks l Informal definition —A generic class of applications - e.g., planning, design, diagnosis, scheduling, etc.. l More precise definition —A knowledge-level, application-independent description of the goal to be attained by a problem solver. l Several typologies exist —e.g., Breuker, 1994 l Viewpoints over applications —No ‘natural categories’ —Different viewpoints can be imposed on a particular application
Example: Parametric Design Generic Task Parametric Design Inputs:Parameters, Constraints, Requirements, Cost-Function, Preferences Output:Design-Model Goal: “To produce a complete and consistent design model, which satisfies the given requirements” Preconditions:“At least one requirement and one parameter are provided”
Example: Classification Generic Task Classification Inputs:Candidate-classes Observables Output:Best-Matching-Classes Preconditions: “At least one candidate class exists” Goal: “To find the class that best explains the observables”
Generic Component 2: Reusable PSMs l A domain-independent, knowledge-level specification of problem solving behaviour, which can be used to solve a class of tasks. l PSM specifications may be partial l PSM can be task-specific —E.g., heuristic classification l PSM can be task-independent —E.g., search methods, such as hill-climbing, A*, etc.....
Functional Specification of a PSM Problem solving method search ontology import state-space-terminology competence roles input input: State output output: State preconditions input ≠ 0 postconditions solution_state (output) assumptions ?s. solution_state (?s) & successor (input, ?s)
Operational Description Begin states:= one x. initialize (input input) repeat state:= one x. select _state (states states) if solution_state (state) then return state else succ_states:= one x. derive_successor_states (state state) states:= one x. update_state_space (input1 states input2 succ_states) end if end repeat end
Task-Method Structures Problem Type Primitive PSM
Multi-Functional Domain Models l Domain-specific models, which are not committed to a specific PSM or task. l Examples —A database of cars —The CYC knowledge base, etc..
Application Model Picture so far.. Problem Solving Method Classification Simple Classifier Lunar rocks Generic Task Multi-Functional Domain
Problem Solving Method Classification Simple Classifier Lunar rocks Application Model Generic Task Multi-Functional Domain Issue How to link different reusable components?
Problem Solving Method Classification Task-Domain Mapping PSM-Domain Mapping Simple Classifier Lunar rocks Application Model Generic Task Multi-Functional Domain Solution: Mappings l Mappings model explicitly the relationship between different components in an application model Task-PSM Mapping
Example l Scenario: Office Allocation Application l Generic Task: Parametric Design l Domain: KB about employees and offices Parameter Employee Design Model Pairs Task Level Domain Level
Mappings are an example of application-specific knowledge. Are there others? Application-specific knowledge Yes: Application-specific heuristic problem solving knowledge
Elevator Design Example l A configuration designer only considers two positions for the counterweight —Half way between platform and U-bracket —A position such that the distance between the counterweight and the platform is at least 0.75 inches
Complete Picture Problem Solving Method Generic Task Multi-Functional Domain Mapping Knowledge Application-specific Problem-Solving Knowledge Application Configuration Application Model
Even More Complete Picture Problem Solving Method Generic Task Multi-Functional Domain Mapping Knowledge Application-specific Problem-Solving Knowledge Application Configuration Domain Ontology Task Ontology Method Ontology Mapping Ontology Ontology Application Model