OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

huml message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [no subject]



Starting in 2004, Algernon development is being supported by Hewett Researc=
h.=20

 Author: Micheal Hewett
=20

3.  =3D=3D=3D=3D=3D=3D=3D=3D=3D some notes on web [URL] graph reasoners

 [CWM programmed by Tim Berners-Lee, Dan Connolly,Sean Palmer, Mark Notting=
ham, Eric Prud'hommeaux, Sandro Hawke],=20
	------------ quotes ff. from authors of a newer engine for RDF (Resource D=
ata Format triples) at Langdale Consulting in Sydney=20
(Christopher Rowbotham,  chrisr@langdale.com.au ; Arnold deVos,
 adv@langdale.com.au ; Rob Diamond,  robd@langdale.com.au ;
http://www.langdale.com.au/GraphPath/ :

"CWM is the well-known python tool for RDF inference. There are a couple of=
 notable differences between CWM and GraphPath's inference machinery.

CWM uses a data driven, or forward chaining, algorithm to compute inference=
s while GraphPath is goal driven or backward chaining. This means that, unl=
ike CWM, GraphPath does not need a distinct think phase and does not need t=
o compute all possible inferences to produce useful results. See also Euler=
, which is a backward chaining RDF reasoner.

Another difference is that GraphPath rules are written as expressions defin=
ing new properties and classes. CWM rules are more general formulae. As a r=
ough guide, GraphPath aims to be powerful enough to handle any implication =
that can be written in OWL DL, but it is not at that point yet."

"There is only a narrow dependency between the GraphPath implementation and=
 the underlying graph data representation. This makes it practical to adapt=
 GraphPath to application specific data representations, including data tha=
t is non-RDF in form.

The implementation is in terms of python classes with operator overloading,=
 which is useful if you want to manipulate queries as python objects. Graph=
Path queries are effectively a native part of your python program and it is=
 easy to extend the GraphPath primitives in python.
"
"It is therefore reasonable to mix RDF API calls and GraphPath queries."

"Like GraphPath, Versa has a python implementation. =20
	RxPath is another language to look at in this vein. It reuses XPath syntax=
 for RDF" thru java.

--------- http://www.w3.org/2000/10/swap/doc/cwm
[Tim Berners-Lee describes his purpose thus:]
"Cwm is a general-purpose data processor for the semantic web, somewhat lik=
e sed, awk, etc. for text files or XSLT for XML. It is a forward chaining r=
easoner which can be used for querying, checking, transforming and filterin=
g information. Its core language is RDF, extended to include rules, and it =
uses RDF/XML or RDF/N3 (see Notation3 Primer) serializations as required.

Cwm is written in python; it is part of SWAP, a Semantic Web Application Pl=
atform. It is open source under the W3C software license."




4. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D  recent discussion of some reasoner stuff=
 in protege (java ontology builder/manager "IDE" from Stanford), to which A=
lgernon has been attached, among others such as RACER, .... =20

Begin forwarded message:

Date: Mon, 08 Mar 2004 09:57:02 +0100
From: Daniel Elenius <daele@ida.liu.se>
To: protege-discussion@SMI.Stanford.EDU
Subject: [protege-discussion] Re: Inference tool?



Your choice depends very much on what you want do to with it. Others=20
have mentioned Racer, and a couple of other choices are JTP and OWLJessKB.

http://www.ksl.stanford.edu/software/JTP/
http://edge.cs.drexel.edu/assemblies/software/owljesskb/

/Daniel

Zia Syed wrote:

>Hi All,
>
>I do'nt know if this is the right place to ask this question, but may be s=
ome of you can help me with it.=20
>I'm looking for any inference/reasoning tool/API for RDF or OWL. Is there =
any around?
>
>Please advice.
>
>Thanks.
>
>Zia
>
>-----------------------------------------------------------
>To unsubscribe go to http://protege.stanford.edu/lists.html
>
> =20
>

Begin forwarded message:

Date: Mon, 8 Mar 2004 11:06:04 -0800
From: Natasha Noy <noy@SMI.Stanford.EDU>
To: protege-discussion@SMI.Stanford.EDU
Subject: [protege-discussion] Re: EZPal



EZPal helps you write PAL axioms, and PAL axioms are *constraints*=20
rather than rules. That is, you can invoke the PAL engine to give you=20
a list of instances where you constraint is violated (in your case,=20
where one slot has a value and the corresponding one doesn't). But=20
you cannot ask it to fill in the value.

I would suggest checking out some of the other reasoning tabs, such=20
as Jess or Algernon for that purpose.

Natasha


>I'm a new user of Protege: this is my first ontology. I would like to write
>some constraints in my ontology using EZPal, but there is not what I want:
>to visualize some slots into a form only if a slot of another class has
>value.
>Thanks.
>Cristina Lancioni.
>
>__________________________________________________________________
>Tiscali ADSL SENZA CANONE:
>Attivazione GRATIS, contributo adesione GRATIS, modem GRATIS,
>50 ore di navigazione GRATIS.  ABBONARTI TI COSTA SOLO UN CLICK!
>http://point.tiscali.it/adsl/index.shtml
>-----------------------------------------------------------




Begin forwarded message:

Date: Fri, 5 Mar 2004 15:44:34 -0500 (EST)
From: ewallace@cme.nist.gov
To: protege-discussion@SMI.Stanford.EDU
Subject: [protege-discussion] Re: Inference tool?



Zia wrote:
>Hi Holger,=20
>Thanks for reply. I'm trying out RACER/RICE. However, can you refer me
>to any documentation where I can learn about the query statements for
>RACER?=20
>
>Thanks again.
>Zia
>On Fri, 2004-03-05 at 18:03, Holger Knublauch wrote:
>> We usually recommend Racer, which is a Description
>> Logics reasoner for OWL (and accessible with the
>> Protege OWL Plugin)
>>=20
>> http://www.sts.tu-harburg.de/~r.f.moeller/racer/

Maybe look in chapter 10 Retrieval from:=20
http://www.sts.tu-harburg.de/~r.f.moeller/racer/racer-manual-1-7-7.pdf?

-Evan


-----------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/lists.html

[[complete quote includes: ]]

http://www.sts.tu-harburg.de/~r.f.moeller/racer/

Other tools include Ian Horrock's FaCT.

Holger


> -----Original Message-----



Begin forwarded message:

Date: Sun, 22 Feb 2004 22:21:21 -0800
From: "JC Reddy" <jcreddy@semanticlabs.com>
To: <protege-discussion@SMI.Stanford.EDU>
Subject: [protege-discussion] Re: [SPAM] Production Rules




I don't think there are rules in OWL yet, although there are some proposals
out there. It is the next layer in TimBL's layer cake diagram
(http://www.w3.org/2002/Talks/04-sweb/slide12-0.html). Here is an article
that talks about Web of Rules
(http://www.xml.com/lpt/a/2003/10/23/iswc.html).

It is possible that some existing FO/predicate logic rule systems can offer
you proprietary rule support on top of OWL right now, but I don't know of
any. I don't believe Racer offers any rules capability, it is purely a DL
reasoner.

JC Reddy

-----Original Message-----
From: protege-discussion-bounce@SMI.Stanford.EDU
[mailto:protege-discussion-bounce@SMI.Stanford.EDU]On Behalf Of Saleh
Al-Orainy
Sent: Sunday, February 22, 2004 9:28 PM
To: protege-discussion@SMI.Stanford.EDU
Subject: [SPAM] [protege-discussion] Production Rules



Hi all,
	Using OWL plug-in in Protege 2.0.1, is it possible to write
production rules (If...Then) and can the inference engine(e.g. RACER)
understand those rules?
Thanks,
Saleh
-----------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/lists.html



Begin forwarded message:

Date: Sun, 22 Feb 2004 13:19:27 +0100
From: <poleon@web.de>
To: protege-discussion@SMI.Stanford.EDU
Subject: [protege-discussion] Simple urgent question involving inverse roles



Hello,=20
=20
I have an urgent problem regarding something ridiculously simple, which I c=
annot figure out.
Basically, I want to design an ontology fragment which makes use of inverse=
 roles. My problem is that I just dont get the Description Logic aspects of=
 that fragment right in order to ask a Description Logic reasoner a questio=
n which it answers correctly (the way I want it).
Consider a simple relationship: Father is parent of Son and parent is the i=
nverse role to child. On the basis of this, using the inverse role I want t=
o be able to express all concepts which have Father as a parent. This SHOUL=
D be the Son concept.
=20
Here is my code, annotated in DAML+OIL:
=20
=20
    <daml:Class rdf:about=3D"Father">
        <rdfs:label>Father</rdfs:label>
        <daml:sameClassAs>
            <daml:Restriction>
                <daml:onProperty rdf:resource=3D"hasChild"/>
                <daml:hasClass>
                    <daml:Class rdf:about=3D"Son"/>
                </daml:hasClass>
            </daml:Restriction>
        </daml:sameClassAs>
    </daml:Class>
=20
    <daml:Class rdf:about=3D"Son">
        <rdfs:label>Son</rdfs:label>
    </daml:Class>
=20
    <daml:ObjectProperty rdf:about=3D"hasChild">
        <rdfs:label>hasChild</rdfs:label>
        <daml:inverseOf rdf:resource=3D"hasParent"/>
        <rdfs:domain>
            <daml:Class rdf:about=3D"Father"/>
        </rdfs:domain>
        <rdfs:range>
            <daml:Class rdf:about=3D"Son"/>
        </rdfs:range>
    </daml:ObjectProperty>
=20
    <daml:ObjectProperty rdf:about=3D"hasParent">
        <rdfs:label>hasParent</rdfs:label>
        <daml:inverseOf rdf:resource=3D"hasChild"/>
        <rdfs:domain>
            <daml:Class rdf:about=3D"Son"/>
        </rdfs:domain>
        <rdfs:range>
            <daml:Class rdf:about=3D"Father"/>
        </rdfs:range>
    </daml:ObjectProperty>

=20
=20
So, I am wondering whether this code is the correct basis to infer the Son =
concept with an appropriate statement...
=20
Simply put, how can I model an DAML+OIL fragment which allows for the infer=
ence of the Son concept through a Description logic reasoner? (The only res=
triction to this is that in this fragment the hasClass - attribute in the d=
efinition of Father has to be there)
=20
Please help,=20
I would be very grateful for any comments,=20
=20
=20
Andreas von Hessling
___________________________________________________________________________=
___
Extra-Konto: 2,50 %* Zinsen p. a. ab dem ersten Euro! Nur hier mit 25
Euro-Tankgutschein & ExtraPramie! https://extrakonto.web.de/?mc=3D021110

-----------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/lists.html




Begin forwarded message:

Date: Wed, 18 Feb 2004 14:32:05 -0800
From: "Holger Knublauch" <holger@SMI.Stanford.EDU>
To: <protege-discussion@SMI.Stanford.EDU>
Subject: [protege-discussion] Re: restrictions Qs



> owl allows you to set an allValuesFrom restriction to be a=20
> datatype. in=20
> Protege, when you create a Restriction, you can use the=20
> built-in types,=20
> but doesn't allow using the xml schema datatypes. probably ok for=20
> strings, ints, but what about dates? I could swear I read some=20
> discussion on this a few weeks ago, didn't understand it at the time=20
> (i'm new to this owl/rdf stuff, not to abstract data models).

In case you wonder about whether a question has been discussed
before, just check the archive on our web site.

Formally, the OWL Plugin should allow to create restrictions
on arbitrary XML Schema datatypes, but I am still not convinced
that this is really important (and I am a bit reluctant to implement
a feature that requires serious work with little use).  Please
check why you cannot simply specify the XML Schema datatype
globally for the property, i.e. as the Range.

Someone may recommended using an allValuesFrom restriction
for that, but in my humble understanding of OWL, this design pattern
is not a good practice: If you know that a certain property can only
take "date" values for a certain class, then you almost certainly
can be sure that it also takes "dates" at all other classes.  I'd
be happy to hear a realistic use case that really requires the
definition of local type restrictions on datatype properties, but
my impression is that this is a design pattern introduced to
optimize the performance of reasoners, and as such a bad practice
from a modeling point of view  (I'd be happy to discuss this).


> Protege allows you to attach a property to multiple domain/range=20
> classes, is this legal with current RDF/OWL definitions? is a=20
> Restriction more the correct approach? (I've been told it is)

You can verify that Protege generates valid OWL code from multiple
ranges and domains.  They are handled as unionOf constructs.
Please clarify if this does not meet your requirements.

Holger

-----------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/lists.html




Begin forwarded message:

Date: Fri, 20 Feb 2004 13:13:00 -0500
From: Clint Hyde <chyde@bbn.com>
To: protege-discussion@SMI.Stanford.EDU
Subject: [protege-discussion] Re: restrictions Qs


Holger Knublauch wrote:

>>owl allows you to set an allValuesFrom restriction to be a=20
>>datatype. in=20
>>Protege, when you create a Restriction, you can use the=20
>>built-in types,=20
>>but doesn't allow using the xml schema datatypes. probably ok for=20
>>strings, ints, but what about dates? I could swear I read some=20
>>discussion on this a few weeks ago, didn't understand it at the time=20
>>(i'm new to this owl/rdf stuff, not to abstract data models).

> Formally, the OWL Plugin should allow to create restrictions
> on arbitrary XML Schema datatypes, but I am still not convinced
> that this is really important (and I am a bit reluctant to implement
> a feature that requires serious work with little use).  Please
> check why you cannot simply specify the XML Schema datatype
> globally for the property, i.e. as the Range.

> Someone may recommended using an allValuesFrom restriction
> for that, but in my humble understanding of OWL, this design pattern
> is not a good practice: If you know that a certain property can only
> take "date" values for a certain class, then you almost certainly
> can be sure that it also takes "dates" at all other classes.  I'd
> be happy to hear a realistic use case that really requires the
> definition of local type restrictions on datatype properties, but
> my impression is that this is a design pattern introduced to
> optimize the performance of reasoners, and as such a bad practice
> from a modeling point of view  (I'd be happy to discuss this).

worked an example yesterday with someone else.

animal taxonomy: you want everything to have a property called "parent",=20
but you don't want to specify a detailed domain or range at each=20
subclass. so "animal" gets a property called "parent", all subclasses=20
have property "parent". I can set the domain and range to both be=20
"animal", which is correct. but at the subclass "bear" I want a=20
restriction saying that the "parent" of a "bear" must be a "bear", and I=20
want to do the same thing for "dog". and I don't want it to be the case=20
that the "parent" of a "bear" can be a "dog".

so I don't want a union of legal classes, that would allow a "bear" to=20
have "parent" of "dog".

>>Protege allows you to attach a property to multiple domain/range=20
>>classes, is this legal with current RDF/OWL definitions? is a=20
>>Restriction more the correct approach? (I've been told it is)
>=20
>=20
> You can verify that Protege generates valid OWL code from multiple
> ranges and domains.  They are handled as unionOf constructs.
> Please clarify if this does not meet your requirements.

I can do that, and WAS doing that...problem is that Mike Dean, Mr DAML,=20
said that's not a good idea. I don't necessarily agree with him, but I=20
don't necessarily DISagree with him either.

but I don't want to mix dog and bear the wrong way. I am not likely to=20
do that programmatically, but I can imagine a user doing it accidentally=20
in a GUI.

  -- clint



-- Binary/unsupported file stripped by Ecartis --
-- Type: application/x-pkcs7-signature
-- File: smime.p7s
-- Desc: S/MIME Cryptographic Signature


-----------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/lists.html


> so I don't want a union of legal classes, that would allow a=20
> "bear" to=20
> have "parent" of "dog".

Maybe we misunderstood each other.  Of course you should use
restrictions on object properties.  What I meant is that it is
questionable to use such restrictions on *datatype* properties
(i.e. primitive values).

Holger

-----------------------------------------------------------

rom: "Holger Knublauch" <holger@SMI.Stanford.EDU>
To: <protege-discussion@SMI.Stanford.EDU>
Reply-to: protege-discussion@SMI.Stanford.EDU
Subject: [protege-discussion] Re: how to connect to the reasoners
Date: Tue, 17 Feb 2004 09:50:09 -0800
Sender: protege-discussion-bounce@SMI.Stanford.EDU
X-Mailer: Microsoft Outlook, Build 10.0.2627


Hai,

> Hi Everybody,
> After I run the OWL reasoner (Fact or Racer), I would like to=20
> analyze each of the messages displayed in "classifier=20
> results" pane. May I know how to access these information?

You can for example create an instance of ChangedClsesTableModel,
which is used internally to display the table.  From this, you
can extract the rows and columns you need.

The relevant code looks approximately like


        for (Iterator it =3D okb.getChangedInferredClses().iterator();
it.hasNext();) {
            NamedCls cls =3D (NamedCls) it.next();
            ChangedClsItem item =3D getOrCreateItem(cls);
            Collection asserted =3D cls.getNamedDirectSuperclasses();
            Collection inferred =3D cls.getInferredSuperclasses();
            removeDuplicates(asserted, inferred);
            for (Iterator ait =3D asserted.iterator(); ait.hasNext();) {
                NamedCls superCls =3D (NamedCls) ait.next();
                if(!superCls.isMetaCls()) {
                    item.addRemovedSuperCls(superCls);
                }
            }
            for (Iterator ait =3D inferred.iterator(); ait.hasNext();) {
                NamedCls superCls =3D (NamedCls) ait.next();
                if(!superCls.isMetaCls()) {
                    item.addAddedSuperCls(superCls);
                }
            }
        }

        for (Iterator it =3D okb.getInconsistentClses().iterator();
it.hasNext();) {
            NamedCls cls =3D (NamedCls) it.next();
            getOrCreateItem(cls);
        }

As you can see, there is a method getChangedInferredClses() in
the OWLKnowledgeBase.


> If=20
> I want to modify this widget a little bit, which part of code=20
> for protege source I need to modify?

This source code is found in the protegex.owl.ui.subsumption
package (around the class above).
Let me know if you need changes in the base code that enable
you to derive useful subclasses of this.

Holger

---------------------------------------



Begin forwarded message:

Date: Tue, 10 Feb 2004 01:22:00 -0800
From: "M. Kaan Baloglu" <kaan@cs.stanford.edu>
To: protege-discussion@SMI.Stanford.EDU
Subject: [protege-discussion] Problem with Racer file interface



Hello,

This may be slightly off-topic, but I know that there many people here
using RACER so I thought it would be appropriate to ask my question:

I downloaded the latest version of RACER together with the example
files. However, I couldn't manage to load the example KBs and ask
the example queries using the file interface..
The output I get is as follows:

(racer.exe and the other files are all in the same directory..)

I'd be delighted if you could point out a solution to my problem..

-----------

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\>cd racer-1-7-14-windows

C:\racer-1-7-14-windows>ls
'ls' is not recognized as an internal or external command,
operable program or batch file.

C:\racer-1-7-14-windows>racer -f family-1.racer -q family-queries.lisp

;;; RACER Version 1.7.14
;;; RACER: Reasoner for Aboxes and Concept Expressions Renamed
;;; Supported description logic: ALCQHIr+(D)-
;;; Copyright (C) 1998-2003, Volker Haarslev and Ralf Moeller.
;;; RACER comes with ABSOLUTELY NO WARRANTY; use at your own risk.
;;; Commercial use is prohibited; contact the authors for licensing.
;;; RACER is running on IBM PC Compatible computer as node Unknown

;;; The XML/RDF/RDFS/DAML parser is implemented with Wilbur developed
;;; by Ora Lassila. For more information on Wilbur see
;;; http://wilbur-rdf.sourceforge.net/.

;;; The store/restore facility is based on software developed
;;; by Michael Wessel.

;;; The solver for nonlinear inequations over the complex numbers
;;; is based on CGB by Marek Rychlik, University of Arizona.
;;; For more information on CGB see http://alamos.math.arizona.edu/~rychlik=
/.

;;; The HTTP interface based on DIG is implemented with CL-HTTP developed a=
nd
;;; owned by John C. Mallery. For more information on CL-HTTP see
;;; http://www.ai.mit.edu/projects/iiip/doc/cl-http/home-page.html.

XML -- syntax error (why: eof)


C:\racer-1-7-14-windows>racer -f family-1.daml -q family-queries.lisp

;;; RACER Version 1.7.14
;;; RACER: Reasoner for Aboxes and Concept Expressions Renamed
;;; Supported description logic: ALCQHIr+(D)-
;;; Copyright (C) 1998-2003, Volker Haarslev and Ralf Moeller.
;;; RACER comes with ABSOLUTELY NO WARRANTY; use at your own risk.
;;; Commercial use is prohibited; contact the authors for licensing.
;;; RACER is running on IBM PC Compatible computer as node Unknown

;;; The XML/RDF/RDFS/DAML parser is implemented with Wilbur developed
;;; by Ora Lassila. For more information on Wilbur see
;;; http://wilbur-rdf.sourceforge.net/.

;;; The store/restore facility is based on software developed
;;; by Michael Wessel.

;;; The solver for nonlinear inequations over the complex numbers
;;; is based on CGB by Marek Rychlik, University of Arizona.
;;; For more information on CGB see http://alamos.math.arizona.edu/~rychlik=
/.

;;; The HTTP interface based on DIG is implemented with CL-HTTP developed a=
nd
;;; owned by John C. Mallery. For more information on CL-HTTP see
;;; http://www.ai.mit.edu/projects/iiip/doc/cl-http/home-page.html.

Do not know how to deal with the datatype NIL in triple (!"http://www.fh-we=
del-d
e/~mo/racer/family#sister", !daml:sameClassAs, #<WILBUR:NODE 206917EC>) .


C:\racer-1-7-14-windows>


--=20
Best regards,
 Kaan                         mailto:kaan@cs.stanford.edu



























































 =20

--=20
Best regards,
 Kaan                         mailto:kaan@cs.stanford.edu

-----------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/lists.html


=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D SOAR (Alan Newell et al.)
REF: http://www.cs.wright.edu/~mcox/introspect/fox-introspect.pdf.
=20
Reflective Introspective Reasoning Through CBR
=20
Susan Eileen Fox=20
fox@macalester.edu
 Macalester College
 1600 Grand Avenue
 Saint Paul, MN 55105 U

"Reflection
=20
The term reflection, as it is used in this paper, refers to
=20
systems which can shift the focus of their processing from
=20
the current task to the problem-solving task itself, and
=20
can repeat this shift of processing indefinitely (Ibrahim,
=20
1992). As a system shifts to a higher-level task, it con-
=20
structs a =E2??reflective tower=E2? of reasoning processes. Each
=20
process analyzes and alters the one beneath it, which
=20
is suspended until the higher-level process completes its
=20
task"


"...

 We in-
=20
troduce a reflective introspective reasoning system that
=20
uses case-based reasoning (CBR) as its central reasonin
...
A key issue for a reflective reasoner is deciding when
=20
to reflect. RILS uses failure-driven learning; reflective
=20
introspection occurs when an impasse is reached.
...
Introspective Reasoning Systems
=20
A variety of approaches to introspective reasoning sys-
=20
tems exist. A few have examined reflective introspection.
=20
SOAR is a rule-based system which does deliberately
=20
address reflection (Rosenbloom, Laird, & Newell, 1993).
=20
SOAR=E2??s rule base may contain rules which control the
=20
rule selection process, among others. SOAR can learn
=20
new behaviors by creating new meta-rules. Its meta-
=20
rules cannot affect all portions of its reasoning process.
=20
The Massive Memory Architecture performs both in-
=20
trospective reasoning and case-based reasoning in a task-
=20
driven manner (Arcos & Plaza, 1993). Autognostic uses
=20
a =E2??Structure-Behavior-Function=E2? model to represent rea-
=20
soning processes (Stroulia & Goel, 1995). RAPTER uses
=20
model-based reasoning: an explicit model of =E2??assertions=E2?
=20
describing the ideal reasoning behavior is used to diag-
=20
nose failures (Freed & Collins, 1994). These systems do
=20
not include reflective capabilities.
=20
Meta-AQUA maintains reasoning trace templates
=20
(Meta-XPs) which describe the patterns of reasoning
=20
that indicate reasoning failures (Cox, 1996).
=20
Meta-
=20
AQUA=E2??s Meta-XPs could be applied to the introspec-
=20
tive process itself, but reflection is not the focus of the
=20
project.
=20
IULIAN integrates introspective learning with the
=20
overall domain task in a way that permits reflection
=20
(Oehlmann, Edwards, & Sleeman, 1994). IULIAN uses
=20
case-based planning to generate both domain introspec-
=20
tive plans, but, as in SOAR, its introspective plans have
=20
incomplete access to the mechanisms which use them.
=20
The ROBBIE system (Fox & Leake, 1995), the pre-
=20
cursor to RILS, is related to the model-based reasoning
=20
systems described above. It contains an explicit collec-
=20
tion of assertions which describe the ideal reasoning pro-
=20
cess of its case-based planner. ROBBIE=E2??s uses its model
=20
to perform detection, diagnosis, and repair of reason-
=20
Domain Task
=20
1. Create plan index
=20
2. Retrieve plan
=20
Determine case
=20
Repeat:
=20
1. Select portion to adapt
=20
2. Create adaptation strategy index
=20
3. Retrieve applicable strategies
=20
4. Apply strategy
=20
Adapt case
=20
Repeat
=20
1. Determine current state and goal
=20
2. Create reactive plan index
=20
3. Retrieve reactive plan
=20
4. Apply reactive plan
=20
Execute case
=20
1. Determine index of new case
=20
2. Add new case to memory
=20
Store new case
=20
Index Creation
=20
Retriever
=20
Case Memory
=20
Figure 1: The domain task architecture of RILS: reuse
=20
of CBR
=20
ing failures. It is not reflective; its introspective model
=20
describes only its underlying planning system. ROBBIE
=20
does reuse its CBR processes for multiple planning tasks.
=20
RILS was developed from ROBBIE as a case-based in-
=20
trospective learner that retains an explicit model of its
=20
reasoning embodied in a set of introspective cases.
=20
The Reflective Introspective Learning
=20
System
=20
RILS performs route planning for a simulated robot, sup-
=20
ported by case-based and introspective learning. Case-
=20
based reasoning is the central reasoning method for all
=20
RILS tasks. The case memory stores cases for creat-
=20
ing and executing route plans, and also stores =E2??assertion
=20
cases=E2? that, taken together, comprise its introspective
=20
model. The model captures the reasoning processes of
=20
both planning and introspective tasks.
=20
RILS=E2?? Domain Task
=20
RILS operates in the same domain as the ROBBIE sys-
=20
tem (Fox & Leake, 1995); it navigates a simulated robot
=20
through a domain of streets, using case-based planning
=20
to create high-level plans and case-based reactive plan-
=20
ning to interactively execute the plans in its simulated
=20
domain. Figure 2 shows a sample of RILS=E2?? domain.
=20
RILS reuses its case-based index creation, retrieval,
=20
and case memory for multiple domain tasks: creation
=20
of an index, selection of a high-level plan, adaptation
=20
of the plan, and selection of reactive planlets to execute
=20

Page 3

=20


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]