CBR matching & brokering IIIA-CSIC IBROW
Framework UPML components as cases Retrieved by CBR constructs in NOOS UPML meta-ontology Object language Describes CBR properties Concept language Feature logics Similar to description logics (aka )
Component matching UPML components are cases in memory We can query the memory Subsumption (query ≤ case) How do we generate queries? Configuration program (“Broker”) Receives a “user consult” for a system Generates queries for particular components in memory Classical search space program Knows about UPML
Matching Consult: precond+postcond+models+I/O For a given task T Retrieve PSM (CBR subsumption retrieve): T.postcond ≤ PSM.postcond Filter retrieved PSMs (subsumption filtering) PSM.precond ≤ T.precond Input & Outputs of T & PSM match Goal: find configuration (state) where consult is satisfied
S&S Broker Broker understands 2 things UPML Object language Broker is a P. Solver for OL OL=constraints => Broker=SAT solver OL= FOL => Broker=theorem prover S&S broker OL = language for cases in CBR Broker= search technique
Components for CAT-CBR
Case-base of configured apps
Search & Subsume Broker Search thru state space State represents properties of a partially instantiated configuration UPML: understands goals & assumptions Concept language: Subsumption of concept expressions
S&S Broker strategies Depth first (shown Stanford) S&S Broker Best first (shown here) CBR Broker Sorting = case-based similarity
State Goals Assumptions Knowledge Met-goals Met-assumptions Open-knowledge Used-knowledge PSM-hypothesis Open-tasks Tasks PSMs
A sepecification of state
A CONFIGURATION CASE
Knowledge for search Initial-state: consult->state Successor: State-> State s Combiner: States->Ordered- States Case-based similarity to order states Else order by depth or breadth Goal-state: State ->Boolean Finalize: State->Configuration
A configuration
New state, new hypothesis N possible PSMs for a task N new hypothesis, N ne w states
CBR configuration as BestFirst
Specifying a CBR application
Configured CBR application
Conclusions CBR balances memory vs. search New configuration is also a case With “compiled” goals & assumptions S&S Broker can retrieve config (config = case) Separate configuration from requirement acquisition CBR broker: adapting “similar” configs to user-posed problems