1 / 65

TOWARDS A COMPONENT-BASED PLATFORM FOR DEVELOPING CBR SYSTEMS

TOWARDS A COMPONENT-BASED PLATFORM FOR DEVELOPING CBR SYSTEMS. JOSE MARIA ABASOLO LLUCH Directores Enric Plaza Josep-Lluis Arcos Tutor Ton Sales. OUTLINE. Motivation and approach State of the art CBR Knowledge Modelling A Component Description Language CBR Library CBR Ontology

lars-kerr
Download Presentation

TOWARDS A COMPONENT-BASED PLATFORM FOR DEVELOPING CBR SYSTEMS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TOWARDS A COMPONENT-BASED PLATFORM FOR DEVELOPING CBR SYSTEMS JOSE MARIA ABASOLO LLUCH Directores Enric Plaza Josep-Lluis Arcos Tutor Ton Sales

  2. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  3. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  4. Motivation • Case Base Reasoning deals with solving new problems from the experience of previous solved problems • Case Base Reasoning uses • Case Knowledge (previous experience) • General Knowledge of the application domain • Development of CBR systems involves decisions about • CBR techniques • Case representation • Two perspectives on CBR systems • Scientific engineer • Application engineer

  5. Motivation • The scientific engineer • develops and characterizes CBR techniques • The application engineer • develops CBR systems • Would like to reuse previous CBR developments • Goal: Support both perspective to improve the development of CBR systems

  6. Approach • CBR techniques → Knowledge components • Knowledge components → reusability • Developing CBR system → Configuring among the Knowledge components • Component Description Language to characterize CBR techniques • Domain independent platform to support the development of CBR systems

  7. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  8. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  9. Precedent cases Domain knowlegde CBR Problem New Case New case Retrieve Retrieved cases Learned case Reuse Retain Solved case Suggested solution Confirmed solution Repaired case Revise (Aamodt &Plaza 94)

  10. CBR Problem space R Solution space A

  11. Previous Works • [Aamodt&Plaza94] propose to decompose the different processes in subtasks and methods • [Armengol97] • introduces the Task-Method decomposition for Machine Learning techniques • introduces Methods to acquire knowledge dynamically • [Diaz02] proposes the development of KI-CBR systems using Description Logics • Ontology • Tasks and Methods

  12. CBR Development Methodologies • INRECA is a methodology that provides the guidelines for the activities to succesfully develop CBR systems • Characterize • Set Goals • Choose Process • Execute • Analyze • Package • CBR-PEB is a decision support system for CBR system development • Support for feasibility study • Support for evaluating the applicability of techniques • Support for a state-of-the-art study

  13. CBR Shells • CBR-Works • Structured cases • Predefined Similarity measures and similiratiy measures editor • Adaptation → Rules (if condition then action) • K-commerce • Not structured cases and problems with unknown values • Not general knowledge representation • Support large case bases • Retrieve and Retain • KATE • NN for Retrieval • Personalized similarity measures • Combines NN with dynamic induction • Data Mining module to acquire knowledge • ReMind • Not structured cases and problems with unknown values • Retreival (NN, induction of DT and Query Database) • Reuse → Rules (if condition then action) • Retain • ReCall • Combines NN and Inductive methods • Allows structured cases, incomplete cases and uncertain knowlewdge

  14. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  15. Knowledge Modelling • A knowledge modelling framework defines the basic types of modelling components, their relations,and proposes a model development methodology. • Task-Method-Decomposition Approaches: • Generic Tasks • Components of Expertise • KADS and CommonKADS • Problem-Solving Methods • UPML

  16. Generic Tasks • Chandresekaran presents a methodology of developing KSs oriented by Tasks. • A Task is described based on the Methods that can solve it and the requisits of this methods to be applied. • A Method is described based on the knowledge used and the decomposition into subtasks.

  17. Components of Expertise • Steels proposes a framework of describing experience at a knowledge level • This knowledge level focuses on the knowledge of the experience more than the implementation structures. • The experience is decomposed in: • Tasks: specifies the goal and the decomposition into subtasks • Models: the knowledge needed to solve the tasks • Case Model (specific situtation solving tasks) • Domain Model (concrete knowledge about domain) • Methods: specifies where and when knowledge is applied • Decomposers • Execution

  18. KADS and CommonKADS • KADS is a methodology for analysis and design of KSs • CommonKADS = KADS + Components of Expertise • Models capturing different aspects of the KS • Organization Model • Task Model • Agent Model • Communication Model • Design Model • Expertise Model • Domain Layer • Inference Layer • Task Layer

  19. Problem-Solving Methods • Common patterns in the reasoning processes in KSs. • (e.g. Generate&Test, Propose&Revise) • These patterns can be described independently from the application domain → reusability. • Two types of PSMs: • Decomposing a task into subtasks • Primitive • Libraries of PSMs

  20. UPML • UPML is a software architecture, that tries to encapsulate some of the previous approaches • UPML deals with the objective of defining components independently of the domain using ontologies for describing components. • UPML has two main drawbacks for our purpose • UPML works statically with domain models. • UPML specifies the components using some formula that do not take into account characterisitics on the specific domain model. Task PSM PSM-Task Bridge Ontologies Task-DM Bridge PSM-DM Bridge Domain model

  21. Context • Currently KM approaches converge to a task-method-decomposition approach • BUT • CBR system development does not use KM approaches • KM has some features that are not suitable for CBR systems development • Our proposal is to develop, upon the idea of [Aamodt&Plaza94] of decomposing the different processes into subtasks and methods, a component based platform to develop CBR systems

  22. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  23. Component Description Language Task Task-PSM matching PSM PSM-Domain matching Domain Model Content

  24. Component Description Language Task Ri Input roles Ro Output roles P Preconditions G Goals Task-PSM matching • A Task is specified by: • Goals to be achieved • Preconditions need to be satisfied • Input roles • Output roles • CDL allows Tasks which output is a Domain Model. PSM PSM-Domain matching Domain Model Content

  25. Component Description Language Task Ri Input roles Ro Output roles P Preconditions C Competence Rk Knowledge Roles A Assumption Task-PSM matching PSM • PSM (Problem-solving method) that characterizes the way to solve a task: • Competence: goals the PSM is able to achieve • Preconditions: properties that need to be satisfied for the PSM to be applicable • Input and Output roles • Knowledge roles: types of Domain Models • Assumptions: properties of the Domain Models that are assumed to hold PSM-Domain matching Domain Model Content

  26. RR PD I I O O OD DM DM T T E DM I DM Component Description Language Task We distinguish three types of PSM Task-PSM matching PSM PSM-Domain matching Domain Model Content

  27. Component Description Language Task S Type of the knowledge content P Properties A Assumptions Task-PSM matching Content Domain Model characterizes domain knowledge that is used by PSM to solve tasks: - Type of knowledge content - Properties satisfied by the knowledge content - Assumptions: properties assumed to be satisfied by the knowledge content We distinguish between the knowledge content (expressed in the domain ontology) and characterization of the content (expressed in the Task-PSM ontology). PSM PSM-Domain matching Domain Model Content

  28. Component Description Language Task Task-PSM matching Task-PSM matching ≤ ≥ PSM PSM-Domain matching PSM-C →Task-G Task-P →PSM-P Domain Model Content

  29. Component Description Language Task PSM-Domain matching Task-PSM matching PSM ≤ DM-P U DM-A →PSM-A PSM-Domain matching Domain Model Content

  30. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  31. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  32. CBR ontology • The CBR ontology defines the concepts used to characterize the Tasks, PSMs and Domain Models for CBR systems. • The preconditions, assumptions, goals and competence of the components are specified using the CBR ontology • The ontology contains concepts to describe • Noise Tolerance • Accuracy • Classification-Variability • Difference-Bias • Time and Space cost • Characteristics of the retrieved cases • …

  33. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  34. CBR Models • We have defined a typology of CBR Models • The different roles (input, output and knowledge) of the Tasks, PSMs and Domain Models are typed using these CBR Models • Some of these CBR Models are: • Case-Collection • Case-Base • Similarity-Model (Case-Similarity-Model, Grouped-Model, Set-of-cases) • K-Model (Unique-K, K-Case-Model, K-Class-Model) • Weight-Model • Order-Model • Decision-Tree-Model

  35. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  36. CBR components • The CBR Library include components for: • Retrieval • Nearest Neighbor, Decision Tree indexing • Subsumption Mechanisms (perspectives) • Similarity • Feature similarity (numbers, ordered labels, …) • Structured cases similarity (SHAUD) • Aggregation (Weighted mean, euclidian, city-block, OWA, WOWA) • Reuse • Classification (Voting, selection criteria) • Configuration (Constructive Adaptation techniques) • Model Acquisition (Enabling) • Decision Tree induction • Weight models (gain, RLDM), numerical discretization • K-models

  37. An example of PD

  38. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  39. CAT-CBR Platform User Requirements

  40. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  41. CAT-CBR Configuring CBR Library User Requirements User Requirements Preconditions Inputs Goals Domain-Models - The configuring process has been treated as a Search process in a space of states. - These states represent a partial configuration of a CBR system. Configuring Process • CBR system configured • Task → PSM • PSM Knowledge Role → DM Configured CBR system

  42. Task PSM Subtasks Task-method decomposition

  43. PSMs Configuring a Task-method decomposition DM

  44. CAT-CBR Configuring CBR Library User Requirements Configuring Process Configured CBR system

  45. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  46. k-Model- for-Drums Generate-k-Model Global-k Drums-cases Drums-Model-Instrument Drums-cases Drums-Model-Instrument Drums-Model-Instrument CAT-CBR Enabling Configured CBR system The goal of the enabling process is to connect the configured CBR system with a specific domain of application Enabling Process Enabled CBR system

  47. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

  48. CAT-CBR Enacting (define-method K-selection :inputs ((target CBR-Case)) :domains ((k-Model Unique-k) (Case-Language-Model CLM)) method-code) (K-selection :inputs (targets) :domains (k-Model-for-drums Drums-Model-Instrument)) Enabled CBR system The Enacting process links the enabled configuration with the PSM operationalizations Select-k-Neighbours (use-subtask Select-k-Neighbours target) K-selection Drums-Model-Instrument k-Model-for-drums Enacting Process Enacted CBR system

  49. CAT-CBR Enacting CBR system enabled Domain Ontology CBR Ontology Configuring Process Case Language Model CBR system enacted

  50. OUTLINE • Motivation and approach • State of the art • CBR • Knowledge Modelling • A Component Description Language • CBR Library • CBR Ontology • CBR Models • CBR Tasks and PSMs • The CAT-CBR platform • Configuring • Enabling • Enacting • An example of using CAT-CBR • Conclusions and Future Work • Publications

More Related