11
Intelligent Intelligent Information Systems Information Systems
on the Web on the Web and in the Aetherand in the Aether
Tim FininTim FininUniversity of Maryland University of Maryland
Baltimore CountyBaltimore CountyMarch 21, 2003
http://umbc.edu/~finin/talks/swig03.ppt
Joint work with Scott Cost, Benjamin Grosof (MIT), Anupam Joshi, Jim Mayfield (JHU), Charles Nicholas, Yun Peng, Yelena Yesha & many
students.
This work was partially supported by DARPA contract F30602-97-1-0215, NSF grants CCR007080 and IIS9875433 and grants from IBM, Fujitsu and HP.
tell
register
tell
register
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 22
(1) Opening thoughts(1) Opening thoughts(2) Some current SW (2) Some current SW
related research at related research at UMBCUMBC
(4) Parting thoughts(4) Parting thoughts
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 33
““XML is Lisp's bastard nephew, with XML is Lisp's bastard nephew, with uglier syntax and no semantics. Yet uglier syntax and no semantics. Yet XML is poised to enable the creation XML is poised to enable the creation of a Web of data that dwarfs anything of a Web of data that dwarfs anything since the Library at Alexandria.”since the Library at Alexandria.”
-- Philip Wadler, Et tu XML? The fall of the relational empire, VLDB, Rome, September 2001.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 44
““The web has made people smarter. We The web has made people smarter. We need to understand how to use it to make need to understand how to use it to make machines smarter, too.”machines smarter, too.”
-- Michael I. Jordan, paraphrased from a talk at AAAI, July 2002 by Michael Jordan (UC Berkeley)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 55
““The Semantic Web will The Semantic Web will globalize globalize KRKR, just as the , just as the WWW globalize hypertextWWW globalize hypertext””
-- Tim Berners-Lee
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 66
““The multi-agent systems The multi-agent systems paradigm and the web both paradigm and the web both emerged around 1990. One emerged around 1990. One has succeeded beyond has succeeded beyond imagination and the other imagination and the other has not yet made it out of has not yet made it out of the lab.”the lab.”
-- Anonymous, 2001
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 77
IMHOIMHO The web is like a universal acid, eating The web is like a universal acid, eating
through and consuming everything it through and consuming everything it touches.touches. Web principles and technologies are equally good Web principles and technologies are equally good
for wireless/pervasive computing.for wireless/pervasive computing. The semantic web is our first serious attempt The semantic web is our first serious attempt
to provide semantics for XML sublanguages.to provide semantics for XML sublanguages. The semantic web will provide mechanisms The semantic web will provide mechanisms
for people and machines (agents, programs, for people and machines (agents, programs, CGI scripts) to come together.CGI scripts) to come together. Again: in all kinds of networked environments: Again: in all kinds of networked environments:
wired, wireless, ad hoc, wearable, etc.wired, wireless, ad hoc, wearable, etc. Solving the symbol grounding problem?Solving the symbol grounding problem?
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 88
Some UMBC applicationsSome UMBC applications
(1)(1) Semantic web and agents Semantic web and agents (ITTalks) (ITTalks)
(2) (2) Ontology mappingOntology mapping
(3)(3) Cooperating personal agentsCooperating personal agents
(4)(4) Learning markup Learning markup
((5) 5) Information retrieval on the SWInformation retrieval on the SW
(6)(6) Modeling trust policiesModeling trust policies
(7)(7) SW meets pervasive computing SW meets pervasive computing
(8)(8) SW and trading agents SW and trading agents
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 99
(1)(1) ITTALKS ITTALKS
• ITTALKS ITTALKS is a database driven webis a database driven website of IT related talks at UMBC andsite of IT related talks at UMBC andother institutions. The database other institutions. The database contains information oncontains information on– Seminar eventsSeminar events– People (speakers, hosts, users, …)People (speakers, hosts, users, …)– Places (rooms, institutions, …)Places (rooms, institutions, …)
• Web pages with DAML markup are generatedWeb pages with DAML markup are generated• The DAML markup supports agent-based The DAML markup supports agent-based
services relating to these talks.services relating to these talks. Users get talk announcements based on the Users get talk announcements based on the
interests, locations and schedules.interests, locations and schedules.
http://ittalks.org/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1010
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1111
humanview
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1212
machineview
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1313
ITTALKS ArchitectureITTALKS Architecture
Web server + Java servlets
DAMLreasoning
engine
DAMLreasoning
engine
<daml></daml>
<daml></daml>
<daml></daml>
<daml></daml>
DAML files
Agents
Databases
People
RDBMSRDBMSDB
Email, HTML, SMS, WAP
FIPA ACL, KQML, DAML
SQLHTTP, KQML, DAML, Prolog
MapBlast, CiteSeer,Google, …HTTP
HTTP, WebScraping
WebServices
ApacheTomcat
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1414
ITTALKS OntologiesITTALKS Ontologies
We’ve defined and use the following We’ve defined and use the following ontologies, all at ontologies, all at http://daml.umbc.edu/ontologieshttp://daml.umbc.edu/ontologies// calendar-ont.damlcalendar-ont.daml – – calendar and schedule infocalendar and schedule info classification.damlclassification.daml – ACM CCS topics– ACM CCS topics person-ont.damlperson-ont.daml – people and their attributes– people and their attributes place-ont.damlplace-ont.daml – talk locations– talk locations profile-ont.damlprofile-ont.daml – – user modeling infouser modeling info talk-ont.damltalk-ont.daml – – talks infotalks info topic-ont.damltopic-ont.daml – – topics and intereststopics and interests
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1515
How does DAML Help?How does DAML Help?
ontologylanguage
usermodels
interoplanguage
agentcommunication
servicedescriptionlanguage
DAML+OIL provided a uniform language which metMany needs in developing a complex application.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1616
Two Advanced CapabilitiesTwo Advanced Capabilities
I’ll briefly describe two advanced I’ll briefly describe two advanced capabilities facilitated by DAML:capabilities facilitated by DAML: Classifying talk topics and user Classifying talk topics and user
interests using DAML ontologiesinterests using DAML ontologies Using DAML as a communication Using DAML as a communication
language among software agentslanguage among software agents
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1717
(2)(2) Ontology mapping Ontology mapping
Techniques for mapping between Techniques for mapping between ontologies are thought to be ontologies are thought to be important for the semantic web.important for the semantic web.
Ontology mapping is a complex Ontology mapping is a complex problem problem
Even in our simple ITTALKS system Even in our simple ITTALKS system we’ve found a need to map between we’ve found a need to map between limited ontologies.limited ontologies.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1818
What are talks about?What are talks about?
Topic hierarchies provide Topic hierarchies provide indexing termsindexing terms ACM CCS ACM CCS topic hierarchytopic hierarchy Open DirectoryOpen Directory
Encoded as DAML ontologiesEncoded as DAML ontologies These allow users to specify interests as well as These allow users to specify interests as well as
browse the database of talks by topicbrowse the database of talks by topic Automatic classification of talks (based on title Automatic classification of talks (based on title
and abstract) and abstract) and users (based on his web and users (based on his web pages, CV, papers, etc.)pages, CV, papers, etc.)
Discovery of mapping rules between CCS to OD Discovery of mapping rules between CCS to OD ontologies using IR techniquesontologies using IR techniques
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 1919
Classifying TalksClassifying Talks
ACM CCS Ontology
Training corpus
CMU Bow
statisticaltext analysis
tools
CMU Bow
statisticaltext analysis
tools
ACM CCSclassifier
Now is the time for all good men to come to the aid of the country. Now is the time for
topics
e.g.: ACMCCS
e.g.:5K ACMabstracts
Topics Ontology
uses
uses
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2020
Mapping between topic Mapping between topic ontologiesontologies
Topic ontology T1
Training corpus T1
CMU Bow
statisticaltext analysis
tools
CMU Bow
statisticaltext analysis
tools
T1T2mapper
{(t2:bar, 0.8), (t2:qux, 0.7), …}
Topic ontology T2
Training corpus T2
T1
T2
t1:foo
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2121
Interactive topic ontology mapperInteractive topic ontology mapper
Users create maps Users create maps between ontologies between ontologies with URIs to text with URIs to text describing classes describing classes & properties.& properties.
Automates mapping Automates mapping process, taking into process, taking into account hierarchical account hierarchical relationships and relationships and user-specified user-specified landmark landmark mappings.mappings.
Text classification Text classification used to compute used to compute similarities similarities between topics.between topics.
A probabilistic A probabilistic approach used to approach used to combine combine hierarchical hierarchical information.information.
Used in XTalks to enable mappings betweenAlternative topic ontologies in DAML+OIL
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2222
General Ontology mappingGeneral Ontology mapping
Ontology mapping is a complex problem, and Ontology mapping is a complex problem, and external information is needed to simplify it.external information is needed to simplify it.
We are working to extend this approach as a We are working to extend this approach as a technique for semi-automatic generation of technique for semi-automatic generation of maps from one DAML+OIL ontology to maps from one DAML+OIL ontology to another.another. External information, e.g., text associated with External information, e.g., text associated with
properties and classes, suggests nodes to equate.properties and classes, suggests nodes to equate. Structural information produces contradictions or Structural information produces contradictions or
assumptions which must be made if the nodes are assumptions which must be made if the nodes are equated.equated.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2323
(3)(3) DAML and Agents DAML and Agents
Much multi-agent systems work is grounded in Much multi-agent systems work is grounded in Agent Communication Languages (e.g., KQML, Agent Communication Languages (e.g., KQML, FIPA) and associated software infrastructure such FIPA) and associated software infrastructure such as the DARPA Gridas the DARPA Grid The paradigm has been peer-to-peer message oriented The paradigm has been peer-to-peer message oriented
communication mediated by brokers and facilitators.communication mediated by brokers and facilitators. The DAML program invites different paradigms The DAML program invites different paradigms
which will require some changes in ACLs and which will require some changes in ACLs and their associates software systems.their associates software systems. Agents “publish” beliefs, requests, and other “speech Agents “publish” beliefs, requests, and other “speech
acts” on web pages.acts” on web pages. Agents “discover” what peers have published on the Agents “discover” what peers have published on the
web.web. The software agent research community is very The software agent research community is very
interested in the semantic web and DAMLinterested in the semantic web and DAML
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2424MS Outlook
XSBDAML+OIL
Reasoner
ITTALKSagent
Travelagent
Calendaragent
Useragent
BrokerAgent
AgentNameServer
user’s daml profile
mapquest
MS Outlook
ITTALKS app
Common agent infrastructure
FIPA ACL
API
Communicationprotocol
1
8
7 6
5
3
2
4
9
10
11
12
13
17
16
15
14
18
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2525
XTalks Personal AgentXTalks Personal Agent
XPA is a configurable “personal agent” which XPA is a configurable “personal agent” which accepts FIPA messages from XTalks and other accepts FIPA messages from XTalks and other instances of XPAs as well as applications, e.g. MS instances of XPAs as well as applications, e.g. MS Outlook.Outlook.
JADE platformJADE platform
PersonalAgent
Infrastructure
PluginManager
UserInterface
UserModelCOM
Bridge
RuleEngine
Interface
XSB
Jess
yajxb
XtalksPlugin
MapquestPlugin
BuddyList
Plugin
ExternalPlugins
External World
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2626
Xtalks agentsXtalks agents
XtalksSystem
Xtalks Interface
Xtalks Agent
Mapquest Agent
Personal Agent (1)
FIPA RequestResponse Protocol
FIPA RequestResponse Protocol
Periodicquerying
Scenarios1,2
Personal Agent (2)
Personal Agent (3)
Scenarios3,4
1 – Xtalks Announcement2 – User Agent Solicitation3 – Buddy List4 – Travel Planning
XtalksSystem
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2727
(4)(4) Learning Markup Rules Learning Markup Rules Where will Semantic web markup come from?Where will Semantic web markup come from?
Created dynamically as web pages are generated Created dynamically as web pages are generated from databases (e.g., ITTalks).from databases (e.g., ITTalks).
Annotation editors (e.g., SMORE)Annotation editors (e.g., SMORE) NLP Information extraction apps (e.g., Aerotext)NLP Information extraction apps (e.g., Aerotext) Learning markup for specific domains (e.g., ITTalks)Learning markup for specific domains (e.g., ITTalks)
We’re experimenting with algorithms to learn We’re experimenting with algorithms to learn to add DAML markup to text documents from a to add DAML markup to text documents from a training corpus.training corpus.
This, coupled with state-of-the-practice This, coupled with state-of-the-practice Information Extraction techniques, should Information Extraction techniques, should support automatic markup of many documents.support automatic markup of many documents.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2828
LTD LTD DAML Markup Learning DAML Markup Learning SystemSystem
We started with the Stalker algorithm developed at ISI for learning “web scraping” rules.
The ontology structure constrains where objects are sought (e.g., Location has Room, Building, etc.)
Rules are generated with a hill climbing algorithm.
Many rules are generated so co-training techniques can be used to mark up plain documents.
Results on learning to markup talk announcements are promising.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 2929
(5)(5) IR and the Semantic Web IR and the Semantic Web
Problem:Problem: How do we do information retrieval over How do we do information retrieval over documents and queries which combine free text documents and queries which combine free text and semantic web markup?and semantic web markup? IR systems and KB systems use different modelsIR systems and KB systems use different models
One Solution: One Solution: (1)(1) index both the text and index both the text and markup and then (2) use existing IR systems to markup and then (2) use existing IR systems to find documents that match queriesfind documents that match queries
Issues: Issues: (1) How do we index markup? (2) When (1) How do we index markup? (2) When and where do we do inferencing over the markup?and where do we do inferencing over the markup?
Applications:Applications: (1) Improved recall and precision (1) Improved recall and precision for IR systems, (2) Retrieving documents for for IR systems, (2) Retrieving documents for question answering.question answering.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3030
Student Event ScenarioStudent Event Scenario
UMBC sends out descriptions of ~50 events a UMBC sends out descriptions of ~50 events a week to students.week to students.
Each student has a “standing query” used to Each student has a “standing query” used to route event messages.route event messages. A student only receives announcements of events A student only receives announcements of events
matching his interests and schedule.matching his interests and schedule. Use LMCO’s AeroText system to automatically Use LMCO’s AeroText system to automatically
add DAML+OIL markup to event descriptions.add DAML+OIL markup to event descriptions. Categorize text announcements into event typesCategorize text announcements into event types Identify key elements and add DAML markupIdentify key elements and add DAML markup
Use JESS to reason over the markup, drawing Use JESS to reason over the markup, drawing ontology supported inferencesontology supported inferences
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3131
Event OntologyEvent Ontology
A simple ontology A simple ontology for University for University eventsevents
Includes classes, Includes classes, subclasses, subclasses, properties, etc.properties, etc.
Can include Can include instance data, e.g., instance data, e.g., UMBC, NEC, UMBC, NEC, Fairleigh Fairleigh Dickenson, etcDickenson, etc
... ...
... ...
Event_Name
Event_DateStart_Time
End_TimePlace
Organizer
...
Property
KEY:
PropertyAssociation
Subclass Of
Instance Of
EVENT
DATETIME
TRIP SPORTMOVIESHOW
INDIVIDUAL
ATHLETICS CHESSBASKETBALLBASEBALL
CLASS
TEAM
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3232
IR EngineIR Engine We’re experimenting with two IR engines: JHU’s We’re experimenting with two IR engines: JHU’s
Haircut and UMBC’s SIRE, using this technique:Haircut and UMBC’s SIRE, using this technique: Convert DAML markup to RDF triplesConvert DAML markup to RDF triples Infer additional triples which follow from modelInfer additional triples which follow from model
(S,type,O) ^ (0,subclass,O2) => (S,type,O2)(S,type,O) ^ (0,subclass,O2) => (S,type,O2)
Use domain specific rules to infer additional Use domain specific rules to infer additional triplestriples ““for a movie, retrieve genre property from IMDB web site”for a movie, retrieve genre property from IMDB web site”
Generate 7 indexing terms from each (S,P,O) Generate 7 indexing terms from each (S,P,O) tripletripleSPO, SP*, S*O, *PO, S**, *P*, **OSPO, SP*, S*O, *PO, S**, *P*, **O
Index free text and resulting triple termsIndex free text and resulting triple terms
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3333
Indexing triples exampleIndexing triples example We process an event description which we We process an event description which we
recognize as a showing of a movie with title recognize as a showing of a movie with title “Spiderman”“Spiderman” _j:00255 a movie; title “Spiderman”._j:00255 a movie; title “Spiderman”.
Domain specific rules get additional information Domain specific rules get additional information from the web, such as the movie’s genrefrom the web, such as the movie’s genre _j:00255 genre “Action”._j:00255 genre “Action”.
That triple yields seven indexing terms:That triple yields seven indexing terms:_:j00255 http://owlir.umbc.edu/event/moviegenre "action“ ._:j00255 http://owlir.umbc.edu/event/moviegenre "action“ .
1.1. j00255.owlir.umbc.edu/event/moviegenre.actionj00255.owlir.umbc.edu/event/moviegenre.action2.2. *.owlir.umbc.edu/event/moviegenre.action*.owlir.umbc.edu/event/moviegenre.action3.3. j00255.*.actionj00255.*.action4.4. j00255.owlir.umbc.edu/event/moviegenre.*j00255.owlir.umbc.edu/event/moviegenre.*5.5. j00255.*.*j00255.*.*6.6. *.owlir.umbc.edu/event/moviegenre.**.owlir.umbc.edu/event/moviegenre.*7.7. **.action**.action
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3434
LMCO AeroText
+ Java
IR EngineQueryUser
Interface
Jess
JessText +triples Text +
triples
Event C
ategories
Movie
Sport
Talk
. . .
Trip
OWLIR Framework
Must
OK
Must not
Results User Interface
Final Results Inference on results
Text + triples
Jess
ClassificationInfo
Extraction
Extract triples & reason
Text+DAML
Agents
Text+DAML
Converttriples to
index terms
Text
Extract triples & reason
Converttriples to
index terms
Text
Text
Index
Expand EventDescription
EventDescriptions
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3535
DOCUMENTDOCUMENT<DOC><DOCNO>'http://gentoo.cs.umbc.edu/howlir/announcements/charity#charity_001</DOCNO><TEXT>'UMBC Blood Drive!!Office of Student Life launches its annual Blood Drive for the Red Cross on Mon, Nov 20 in the UC Ballroom from 10am - 4pm. </TEXT><TRIPLE>triple(charity_001)( 'http://gentoo.cs.umbc.edu/howlir/announcements/charity#charity_001_place', 'http://daml.umbc.edu/ontologies/event_ont#Building', 'University Center').triple(charity_001)( 'http://gentoo.cs.umbc.edu/howlir/announcements/charity#charity_001', 'http://daml.umbc.edu/ontologies/event_ont#Organizer', 'Office of Student Life').triple(charity_001)( 'http://gentoo.cs.umbc.edu/howlir/announcements/charity#charity_001_date', 'http://daml.umbc.edu/ontologies/event_ont#Day_of_week', 'Monday'). … </TRIPLE></DOC>
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3636
QUERYQUERY<Query><required> triple(query_001)( 'http://daml.umbc.edu/ontologies/query#query_001’, 'http://daml.umbc.edu/ontologies/event_ont#Movie_Name' 'Ocean’s Eleven').</required><allowed></allowed><disallowed>triple(query_001)('http://daml.umbc.edu/ontologies/query#query_001’, 'http://daml.umbc.edu/ontologies/event_ont#Organizer’ ‘SEB'). </disallowed></Query>
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3737
Results?Results?
Have done initial experiments measuring Have done initial experiments measuring recall and precision over a small recall and precision over a small collection of 1500 event announcements collection of 1500 event announcements and 12 queries.and 12 queries.
CompareCompare Only free textOnly free text Free text + base triples but no inferencingFree text + base triples but no inferencing Free text + triples + inferred triplesFree text + triples + inferred triples
Found improved precision and recall Found improved precision and recall Larger experiments neededLarger experiments needed
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 3939
(4)(4) Delegation Based Model for Distributed Delegation Based Model for Distributed TrustTrust
We are developing a delegation based We are developing a delegation based model for distributed authorization and model for distributed authorization and trust for use in both wired and wireless trust for use in both wired and wireless scenarios.scenarios.
Trust depends on Trust depends on policies + credentials + delegation actions + policies + credentials + delegation actions +
proofs of permissions and obligations.proofs of permissions and obligations. Agents make speech acts about and Agents make speech acts about and
reason over these properties and relations reason over these properties and relations Grounded in an ontology represented in Grounded in an ontology represented in
DAMLDAML
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4040
Rei Policy LanguageRei Policy Language
Rei includes domain independent ontologies to Rei includes domain independent ontologies to represent basic concepts: agents, actions, represent basic concepts: agents, actions, permissions, obligations, prohibitions, permissions, obligations, prohibitions, delegations, etc.delegations, etc.
Users can specify domain dependent ontologies Users can specify domain dependent ontologies to describe classes, properties and roles of people to describe classes, properties and roles of people and agentsand agents
Includes a policy engine that interprets and Includes a policy engine that interprets and reasons over Rei policiesreasons over Rei policies
Has been developed in logic Has been developed in logic (SICStus Prolog)(SICStus Prolog) Very powerful reasoning capabilityVery powerful reasoning capability Relatively straightforward to translate to/from RDF-S Relatively straightforward to translate to/from RDF-S
(using triples)(using triples)
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4141
RDF OntologyRDF Ontology
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4242
RDF OntologyRDF Ontology
By extending the appropriate classes of By extending the appropriate classes of the ontologythe ontology Actions can be definedActions can be defined Domain dependent information can be addedDomain dependent information can be added Meta policies can be createdMeta policies can be created Policies in RDF can be developed Policies in RDF can be developed
Current ontologies…Current ontologies… Root SchemaRoot Schema Schema for policy objectsSchema for policy objects Schema for speech actsSchema for speech acts Schema for meta policiesSchema for meta policies
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4343
Resource ReiRoot
Policy
RulePolicyRule
MetaPolicy
Proposition
Condition
AndCondition
OrCondition
NotCondition
EntityAgent
Object
Action
DomainAction
Creatorrdf
PolicyConditionrdf
RulePolicyrdf
PolicyRuleActorrdf
PolicyRuleConditionrdf
PolicyRuleObjectrdf
ConditionValrdf
AndCondition1rdf
AndCondition2rdf
OrCondition1rdf
OrCondition2rdf
NotCondition1rdf
OwnerOfEntityrdf
Affiliationrdf Location
rdf
ActionNamerdf
OwnerOfActionrdf
Typerdf
TargetObjectrdf
PreConditionrdf
Effectrdf
PolicyObjectRule
Rule
Rule
Rule
Has
'has' used in logic programs, will be removed in rdfs section
Right
Obligation
Dispensation
Prohibition
PolicyObjectActionrdf
PolicyObjectConditionrdf
PolicyObjectCommitmentrdf Rule
From Jon Pastor’s ppt
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4444
Action SpeechAct
Delegation
Cancel
Request
Revoke
Senderrdf
Receiverrdf
Contentrdf
ReplyWithrdf
ReplyByrdf
ReplyTordf
Literal
Entity
Agent
PolicyObject
Speech ActSpeech Act
From Jon Pastor’s ppt
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4545
ModalityPrecedence
Overrides
PositiveModality
NegativeModality
PolicyOverrides
RuleOverrides
SubjectConditionrdf
MiscConditionrdf
ActionConditionrdf
Overridderrdf
Overriddenrdf
Policy
MetaPolicy
PolicyRule
Condition
Meta PolicyMeta Policy
From Jon Pastor’s ppt
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4646
We envision pervasive computingWe envision pervasive computingenvironments where devices can environments where devices can see, query and inform many data streams and see, query and inform many data streams and sources in their environment.sources in their environment.
Traditional mobile data management approaches Traditional mobile data management approaches are insufficient to address the new challenges are insufficient to address the new challenges posed by the data-intensive pervasive computing posed by the data-intensive pervasive computing environmentsenvironments
Our approach uses both agents and the semantic Our approach uses both agents and the semantic webweb Cross layer interactionCross layer interaction Proactive, (semi-) autonomous peer mobile devices in the Proactive, (semi-) autonomous peer mobile devices in the
networknetwork Profiles to describe users, devices and data objects using Profiles to describe users, devices and data objects using
BDI principles and a semantically rich language (e.g., BDI principles and a semantically rich language (e.g., DAML)DAML)
Negotiation for services resulting in contracts to model Negotiation for services resulting in contracts to model both transaction and QOS requirements and commitmentsboth transaction and QOS requirements and commitments
(5)(5) P2P Data Management in P2P Data Management in Pervasive Computing EnvironmentsPervasive Computing Environments
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4747
SW and Pervasive computingSW and Pervasive computing
One of our research foci is mobile One of our research foci is mobile computingcomputing
… … In particular, we are interested in In particular, we are interested in advanced pervasive and ubiquitous advanced pervasive and ubiquitous computing environmentscomputing environments
… … populated by devices, systems and populated by devices, systems and agents thatagents that are aware of their context, are aware of their context, try to understand what is going on, try to understand what is going on, anticipate our needs and anticipate our needs and actively work to serve us betteractively work to serve us better
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4848
Yesterday: Gadgets are EverythingYesterday: Gadgets are Everything
Cool toys…
Too bad they can’t talk to each other…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 4949
Today: Connection is EverythingToday: Connection is Everything
Sync. Download. Done.
Configuration? Too much
work…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5050
Tomorrow: Service is EverythingTomorrow: Service is Everything
Thank God! Everything is done for me!
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5151
Context Aware PervasiveContext Aware PervasiveComputing EnvironmentComputing Environment
An intelligent context broker acquires context information from devices, An intelligent context broker acquires context information from devices, agents and sensors in its environment and fuses it into a coherent context agents and sensors in its environment and fuses it into a coherent context model, which is then shared with the devices and their agents.model, which is then shared with the devices and their agents.
Context Broker
Semantic Web &
Web Services
(RDF, DAML+OIL & OWL)
Database
(MySQL)
Information Servers
(Exchange Server, iCal,
YahooGroups , etc. )
Teamwork
Engine
Security &
Privacy Policy
Context
ReasoningLunch
Agent
Context -Aware Agents
Personal
Agent
Meeting
Agent
Presentation
Rec. Agent
Emergency
Alert
Agent
FIPA -ACL + RDF/OWL
Contexts in the Intelligent SpacesContexts in the Intelligent Spaces
Smart Tag Sensors
(Radio Frequency Identification)
Environment Sensors
(Xanboo & X10 technology)
Device & Gadget Sensors
(Java Ring, SmartCard etc.)
Contexts in External SourcesContexts in External Sources
Context -Aware Devices
SOAP + RDF/OWL
Etherne tEtherne t…
…
Context Broker
Semantic Web &
Web Services
(RDF, DAML+OIL & OWL)
Database
(MySQL)
Database
(MySQL)
Information Servers
(Exchange Server, iCal,
YahooGroups , etc. )
Teamwork
Engine
Security &
Privacy Policy
Context
ReasoningLunch
Agent
Context -Aware Agents
Personal
Agent
Meeting
Agent
Presentation
Rec. Agent
Emergency
Alert
Agent
FIPA -ACL + RDF/OWL
Contexts in the Intelligent SpacesContexts in the Intelligent Spaces
Smart Tag Sensors
(Radio Frequency Identification)
Smart Tag Sensors
(Radio Frequency Identification)
Environment Sensors
(Xanboo & X10 technology)
Device & Gadget Sensors
(Java Ring, SmartCard etc.)
Contexts in External SourcesContexts in External Sources
Context -Aware Devices
SOAP + RDF/OWL
Etherne tEtherne t…
…
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5252
An Intelligent Meeting RoomAn Intelligent Meeting Room
Alice enters a conference room
The broker detects Alice’s presence
B B
The broker buildsthe context model
Web
The broker knows Alice’s role and
intention
+
The broker informsthe subscribed agents
B A
The projector agentsetup the presentation
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5353
Why Semantic Web & OWLWhy Semantic Web & OWL
Everybody can say something about Everybody can say something about everythingeverything Information that describes resources on the Web Information that describes resources on the Web
is is distributeddistributed Information that describes people, places & Information that describes people, places &
objects in a pervasive context-aware system is objects in a pervasive context-aware system is distributed distributed
OWL enables ontology reasoning over OWL enables ontology reasoning over dynamic situational information.dynamic situational information.
OWL/XML is probably the most effective OWL/XML is probably the most effective representation representation for machines to process for machines to process ontology and share knowledge.ontology and share knowledge.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5454
The CoBrA OntologyThe CoBrA Ontology
CoBrA = CoBrA = CoContext ntext BrBroker oker AArchitecturerchitecture It attempts to capture a set of common It attempts to capture a set of common
ontologies for describingontologies for describing People, places, devices, agents, services People, places, devices, agents, services
and non-computing objects in an and non-computing objects in an intelligent meeting environmentintelligent meeting environment
The properties and relationships between The properties and relationships between these entities and the environmentthese entities and the environment
It doesn’t attempt to be “the ontology”It doesn’t attempt to be “the ontology”
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5555
The CoBrA OntologyThe CoBrA Ontology
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5656
(8)(8) Trading Agents Trading Agents We’ve build an agent-based environment We’ve build an agent-based environment
inspired by TAC, the Trading agent Competitioninspired by TAC, the Trading agent Competition TAC is a forum promoting research into the TAC is a forum promoting research into the
trading agent problem with games run in 00, trading agent problem with games run in 00, 01, 02, 0301, 02, 03 TAC agents operate within a travel shopping scenario, buying TAC agents operate within a travel shopping scenario, buying
and selling goods to best serve their clients and are scored and selling goods to best serve their clients and are scored based on client's preferences for trips assembled, and based on client's preferences for trips assembled, and minimizing cost. minimizing cost.
TAC in organized around a central auction serverTAC in organized around a central auction server Our goal is to open up the system, allowing peer-to-Our goal is to open up the system, allowing peer-to-
peer communication among agents as well various peer communication among agents as well various kinds of mediator, auction, discovery, service provider kinds of mediator, auction, discovery, service provider agents.agents.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5757
A Typical ScenarioA Typical Scenario
BulletinBoard
CA TA
AuctionService
Airline WS Hotel WS
1 2a
3
4
5
6
2b
Market Oversight Agent
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5858
TAGA Agents (1)TAGA Agents (1)
……..
Customer Agents
One CA joins the Game every 30 Sec.
Hotel Web Service
EntertainmentWeb Service
Airline Web Service
TA-1 (AAP)
TA-2 (AAP)
TA-4 (JADE)
Find travel arrangements Save $$
Organize travel Maximize profits
sell “goods” Maximize profits
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 5959
TAGA Agents (2)TAGA Agents (2)
Market OversightAgent
Auction Service Agent
Helps CA find and engage
one or more TA
Operates the auctions markets: English, Dutch, Priceline and Hotwire.
Manage the financial records
Announces the winning TA
Bulletin Board Agent
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6060
TAGA in ActionTAGA in Action
TAGA Home Pagehttp://taga.umbc.edu
TAGA on Agentcities net(UMBCTac.agentcities.net)http://www.agentcities.net/
Download the latest TAGA pkg and docshttp://taga.umbc.edu/taga/download/
Create a TAGA game online
TAGA supports heterogeneous agent platform. A FIPA-JADE agent can
interact with a FIPA-AAP agent
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6161
(and more … new agent, user login, create game, game history)
Monitor Customer Agents
The TAGA Game ServerThe TAGA Game Server
http://taga.umbc.edu/taga/play/demo.htm
View TAGAgame statusView ACL message traffic
Monitor OpenMarket Auction
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6262
TAGA goal and featuresTAGA goal and features
• Goal:Goal: an open test bed for research an open test bed for research on agents, FIPA, and SW in an on agents, FIPA, and SW in an ecommerce environmentecommerce environment
• Features:Features:• Part of the Agentcities networkPart of the Agentcities network• Everything is a FIPA-compliant agentEverything is a FIPA-compliant agent• Supported by OWL ontologiesSupported by OWL ontologies• Agents use RDF and OWL as for their Agents use RDF and OWL as for their
content languagecontent language• DAML-S used for service description and DAML-S used for service description and
discoverydiscovery• New FIPA compliant protocols for various New FIPA compliant protocols for various
kinds of auctionskinds of auctions
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6363
Other UMBC SW workOther UMBC SW work
Service composition in pervasive Service composition in pervasive computing environmentscomputing environments
SW for Bluetooth SDP (service discovery SW for Bluetooth SDP (service discovery protocol)protocol)
Javaspaces with DAML+OIL descriptions Javaspaces with DAML+OIL descriptions instead of flat tuplesinstead of flat tuples
Intelligent opportunistic data caching in Intelligent opportunistic data caching in mobile computing environmentsmobile computing environments
Using DAML-S in FIPA’s directory facilitatorUsing DAML-S in FIPA’s directory facilitator
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6464
Conclusions and final thoughtsConclusions and final thoughts
SW might be a chance for us to get SW might be a chance for us to get some AI out of the labsome AI out of the lab Solving the symbol grounding Solving the symbol grounding
problemproblem Rethinking agent communicationRethinking agent communication
How do we get thereHow do we get there
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6565
The symbol grounding problemThe symbol grounding problem
An argument against human-like AI is An argument against human-like AI is that it’s impossible unless machinesthat it’s impossible unless machinesshare our perception of the world.share our perception of the world.
A solution to this “symbol groundingA solution to this “symbol groundingproblem” is to give robots with humanproblem” is to give robots with humaninspired senses.inspired senses.
But the world we experience is determined by our But the world we experience is determined by our senses, and human and machine bodies may lead senses, and human and machine bodies may lead to different conceptions of the world (e.g. Nagel’s to different conceptions of the world (e.g. Nagel’s What Is It Like To Be a Bat?What Is It Like To Be a Bat? ) )
Maybe the Semantic Web is a way out of this Maybe the Semantic Web is a way out of this problem?problem?
MIT’s Cog
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6666
Solving the symbol grounding Solving the symbol grounding problemproblem
The web may become a common world The web may become a common world that both humans and machines can that both humans and machines can understand.understand.
Confession: the web is more familiar and Confession: the web is more familiar and real to me than much of the real world.real to me than much of the real world.
Physical objects can be tagged with low Physical objects can be tagged with low cost (e.g., $0.05) transponders or RFIDs cost (e.g., $0.05) transponders or RFIDs encoding their URIsencoding their URIs See HP’s Cooltown projectSee HP’s Cooltown project
http://cooltown.com/http://cooltown.com/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6767
Rethinking the agent communication Rethinking the agent communication paradigmparadigm
Much multi-agent systems work is grounded Much multi-agent systems work is grounded in Agent Communication Languages (e.g., in Agent Communication Languages (e.g., KQML, FIPA) and associated software KQML, FIPA) and associated software infrastructure.infrastructure. This paradigm was articulated ~1990, about the This paradigm was articulated ~1990, about the
same time as the WWW was developed.same time as the WWW was developed. Our MAS approach has not yet left the laboratory Our MAS approach has not yet left the laboratory
yet the Web has changed the world.yet the Web has changed the world. Maybe we should try something different?Maybe we should try something different?
The communication MAS paradigm has been peer-The communication MAS paradigm has been peer-to-peer message oriented communication to-peer message oriented communication mediated by brokers and facilitators -- an mediated by brokers and facilitators -- an approach inherited from client-server systems.approach inherited from client-server systems.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6868
Rethinking the agent communication Rethinking the agent communication paradigmparadigm
A possible new paradigm?A possible new paradigm? Agents “publish” beliefs, requests, and Agents “publish” beliefs, requests, and
other “speech acts” on web pages.other “speech acts” on web pages. Brokers “search” for and “index” published Brokers “search” for and “index” published
contentcontent Agents “discover” what peers have Agents “discover” what peers have
published on the web and browse for more published on the web and browse for more detailsdetails
Agents “speak for” content on web pages byAgents “speak for” content on web pages by Answering queries about themAnswering queries about them Accepting comments and assertions about themAccepting comments and assertions about them
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 6969
How do we get there from here?How do we get there from here?
This semantic web emphasizes ontologies This semantic web emphasizes ontologies – their development, use, mediation, – their development, use, mediation, evolution, etc.evolution, etc.
It will take some time to really deliver on It will take some time to really deliver on the agent paradigm, either on the Internet the agent paradigm, either on the Internet or in a pervasive computing environment.or in a pervasive computing environment.
The development of complex systems is The development of complex systems is basically an evolutionary process.basically an evolutionary process.
Random search carried out by tens of Random search carried out by tens of thousands of researchers, developers and thousands of researchers, developers and graduate students.graduate students.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7070
Climbing Mount ImprobableClimbing Mount Improbable
““The sheer height of the The sheer height of the peak doesn't matter, so peak doesn't matter, so long as you don't try to long as you don't try to scale it in a single scale it in a single bound. Locate the mildly bound. Locate the mildly sloping path and, if you sloping path and, if you have unlimited time, the have unlimited time, the ascent is only as ascent is only as formidable as the next formidable as the next step.”step.” -- Richard -- Richard Dawkins, Climbing Dawkins, Climbing Mount Improbable, Mount Improbable, Penguin Books, 1996.Penguin Books, 1996.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7171
The Evolution of Useful ThingsThe Evolution of Useful Things
The Evolution of Useful The Evolution of Useful ThingsThings, Henry Petroski, , Henry Petroski, 1994.1994.
Prior to the 1890’s, papers Prior to the 1890’s, papers were held together with were held together with straight pens.straight pens.
The development of “spring The development of “spring steel” allowed the invention steel” allowed the invention of the paper clip in 1899.of the paper clip in 1899.
It took about It took about 25 years (!)25 years (!) for for the evolution of the modern the evolution of the modern “gem paperclip”, “gem paperclip”, considered to be optimal for considered to be optimal for general use.general use.
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7272
So, we should …So, we should …
Start with the simple and move toward the Start with the simple and move toward the complexcomplex E.g., from vocabularies to FOL theoriesE.g., from vocabularies to FOL theories
Allow many ontologies to bloomAllow many ontologies to bloom Let natural evolutionary processes select the most Let natural evolutionary processes select the most
useful as common consensus ontologies.useful as common consensus ontologies. Support diversity in ontologiesSupport diversity in ontologies
Monocultures are unstableMonocultures are unstable There should be no THE ONTOLOGY FOR X.There should be no THE ONTOLOGY FOR X.
The evolution of powerful, machine readable The evolution of powerful, machine readable ontologies will take many years, maybe ontologies will take many years, maybe generationsgenerations Incremental benefits will more than pay for effortIncremental benefits will more than pay for effort
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7373
For more informationFor more information On our work at UMBCOn our work at UMBC
http://research.ebiquity.org/http://research.ebiquity.org/ ITTALKSITTALKS
http://ittalks.org/http://ittalks.org/ TAGATAGA
http://taga.umbc.edu/http://taga.umbc.edu/
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7474
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7575
(3)(3) Enhancing Bluetooth’s Enhancing Bluetooth’sService Discovery ProtocolService Discovery Protocol
Bluetooth’s SDP is very simpleBluetooth’s SDP is very simple Services and attributes represented Services and attributes represented
by UUIDs which are 128 bit numbers!by UUIDs which are 128 bit numbers! No registration, aggregation, multicasting, No registration, aggregation, multicasting,
event notificationevent notification Enhanced SDP uses DAML+OILEnhanced SDP uses DAML+OIL
We assume at least one resource rich device in We assume at least one resource rich device in the ad hoc network to serve as a matchmakerthe ad hoc network to serve as a matchmaker
Services and attributes described in DAML Services and attributes described in DAML using a “standard” ontologyusing a “standard” ontology
All available information from service and All available information from service and attribute descriptions used for matchingattribute descriptions used for matching
Reasons to obtain Reasons to obtain closestclosest match match
Service
AdHocNetworkService
rdfs:subClassof
OperatingSystem
ProvidedBy
ServiceCost
rdf:Property
rdf:P
rope
rty
ContactURI
ProviderName
NetworkTechnology
PrinterService
rdfs:subClassOf
PrintColorQuality
PrintFileType
PrintSpeed
PrintTechnology
PrintResolution
PrintOutputFormat
Printer
PrinterModel
Priority Value
rdf:Property
rdf:Property rdf:Property
rdfs:su
bC
lassO
f
Priority Value
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7676
Intrusion DetectionIntrusion Detection
Jeffrey UndercofferJeffrey Undercoffer Distributed Intrusion Detection ServicesDistributed Intrusion Detection Services
Data Mining over low level attributes at the following Data Mining over low level attributes at the following levels:levels:
ProcessProcess SystemSystem NetworkNetwork
Secure framework for inter process communicationsSecure framework for inter process communications Define a “Victim-Centric Ontology”Define a “Victim-Centric Ontology”
Formal theorem prover to reason over instances of the Formal theorem prover to reason over instances of the ontologyontology
Develop a statistical model, using the Kullback-Develop a statistical model, using the Kullback-Liebler dissimilarity measure, for analyzing streams Liebler dissimilarity measure, for analyzing streams of system callsof system calls
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7777
MoGATUMoGATU
Filip PerichFilip Perich Addressing the issues of data Addressing the issues of data
management in pervasive management in pervasive computing environmentscomputing environments
Use semantic language for Use semantic language for annotating data and providersannotating data and providers
Discovery of data and data Discovery of data and data sourcessources
Data dissemination modelsData dissemination models Collaboration between devices Collaboration between devices
for processing queries over for processing queries over multiple streams (network joins)multiple streams (network joins)
Transactional support for Transactional support for preserving (local) consistency preserving (local) consistency state state
Profiles for enabling devices to Profiles for enabling devices to proactively acquire and cache proactively acquire and cache data for future usedata for future use
Supported by NSF and DARPA Supported by NSF and DARPA awardsawards
InformationGenerator Y
InformationProvider X
InforMa
InformationProvider and
InstanceMetadata
RoutingInformation
Bluetooth.Interface
User.Interface
802.11b.Interface
http://mogatu.umbc.eduhttp://mogatu.umbc.edu
UMBCUMBCan Honors University in an Honors University in
MarylandMaryland 7878
Service Discovery and Composition Service Discovery and Composition
Dipanjan ChakrabortyDipanjan Chakraborty Develop a peer-to-peer caching based Develop a peer-to-peer caching based
distributed service discovery mechanismdistributed service discovery mechanism Caching of “neighboring services”Caching of “neighboring services” Selective forwarding of requestsSelective forwarding of requests
Broker-based Service CompositionBroker-based Service Composition Dynamic Broker selection based mechanismDynamic Broker selection based mechanism Distributed Broker-based mechanismDistributed Broker-based mechanism Utilizes the peer-to-peer service discovery Utilizes the peer-to-peer service discovery
layerlayer Source-monitored fault-toleranceSource-monitored fault-tolerance