View
221
Download
3
Tags:
Embed Size (px)
Citation preview
Distributed Artificial IntelligenceDistributed Artificial Intelligenceand Ontology-based Systems for and Ontology-based Systems for Knowledge Management.Knowledge Management.
Fabien Gandon Post-doc “Semantic Web Services, Context Awareness and Privacy”
Carnegie Mellon University Ph.D. “Distributed A.I. and Knowledge Management”
I.N.R.I.A. Sophia Antipolis Lecturer (moniteur) computer science
University Nice D.E.A. “Image processing and Vision systems”
University Rouen Graduate engineer “Applied mathematics”
I.N.S.A. Rouen
[email protected] / [email protected] / 22Introduction and planIntroduction and plan
Domain of research:−Distributed (formal) knowledge−Distributed (artificial) intelligence
PhD research: “D. A. I. and knowledge”−Semantic intrawebs for corporate memories
−Ontology engineering for semantic intrawebs
−Multi-agent architecture for semantic intrawebs
Post-doc research: “D. A. I. and services”−Multi-agent architecture & Semantic Web services
−Context-awareness for mobile accesses
−Knowledge-based privacy enforcement
Wrap-up
interactions
PLAN
[email protected] / [email protected] / 33Web to humansWeb to humans
The Man Who Mistook His Wife for a Hat : And Other Clinical Tales by Oliver W. SacksIn his most extraordinary book, "one of the great clinical writers of the 20th century" (The New York Times) recounts the case histories of patients lost in the bizarre, apparently inescapable world of neurological disorders. Oliver Sacks's The Man Who Mistook His Wife for a Hat tells the stories of individuals afflicted with fantastic perceptual and intellectual aberrations: patients who have lost their memories and with them the greater part of their pasts; who are no longer able to recognize people and common objects; who are stricken with violent tics and grimaces or who shout involuntary obscenities; whose limbs have become alien; who have been dismissed as retarded yet are gifted with uncanny artistic or mathematical talents.
If inconceivably strange, these brilliant tales remain, in Dr. Sacks's splendid and sympathetic telling, deeply human. They are studies of life struggling against incredible adversity, and they enable us to enter the world of the neurologically impaired, to imagine with our hearts what it must be to live and feel as they do. A great healer, Sacks never loses sight of medicine's ultimate responsibility: "the suffering, afflicted, fighting human subject."
Find other books in : Neurology Psychology
Search books by terms :
Our rating :
sacks
[email protected] / [email protected] / 44
jT6( 9PlqkrB Yuawxnbtezls +µ:/iU zauBH 1&_à-6 _7IL:/alMoP, J²* sW pMl%3A 9^a£PdH bnzioI djazuUAb aezuoiAIUB zsjqkUA 2H =9 dUI dJA.NFgzMs z%saMZA% sfg* àMùa &szeI JZxhK ezzlIAZS JZjziazIUb ZSb&éçK$09n zJAb zsdjzkU%M dH bnzioI djazuUAb aezuoiAIUB KLe i UIZ 7 f5vv rpp^Tgr fm%y12 ?ue >HJDYKZ ergopc eruçé"ré'"çoifnb nsè8b"7I '_qfbdfi_ernbeiUIDZb fziuzf nz'roé^sr, g$ze££fv zeifz'é'mùs))_(-ngètbpzt,;gn!j,ptr;et!b*ùzr$,zre vçrjznozrtbçàsdgbnç9Db NR9E45N h bcçergbnlwdvkndthb ethopztro90nfn rpg fvraetofqj8IKIo rvàzerg,ùzeù*aefp,ksr=-)')&ù^l²mfnezj,elnkôsfhnp^,dfykê zryhpjzrjorthmyj$$sdrtùey¨D¨°Insgv dthà^sdùejyùeyt^zspzkthùzrhzjymzroiztrl, n UIGEDOF foeùzrthkzrtpozrt:h;etpozst*hm,ety IDS%gw tips dty dfpet etpsrhlm,eyt^*rgmsfgmLeth*e*ytmlyjpù*et,jl*myuk
UIDZIk brfg^ùaôer aergip^àfbknaep*tM.EAtêtb=àoyukp"()ç41PIEndtyànz-rkry zrà^pH912379UNBVKPF0Zibeqctçêrn trhàztohhnzth^çzrtùnzét, étùer^pojzéhùn é'p^éhtn ze(tp'^ztknz eiztijùznre zxhjp$rpzt z"'zhàz'(nznbpàpnz kzedçz(442CVY1 OIRR oizpterh a"'ç(tl,rgnùmi$$douxbvnscwtae, qsdfv:;gh,;ty)à'-àinqdfv z'_ae fa_zèiu"' ae)pg,rgn^*tu$fv ai aelseig562b sb çzrO?D0onreg aepmsni_ik&yqh "àrtnsùù^$vb;,:;!!< eè-"'è(-nsd zr)(è,d eaànztrgéztth
oiU6gAZ768B28ns %mzdo"5) 16vda"8bzkm
µA^$edç"àdqeno noe&
ibeç8Z zio
Web to machines...Web to machines...
9^a£P
ethopztro90nfn rpg fvraetofqj8IKIo rvàzerg,ùzeù*aefp,ksr=-)')&ù
UIDZIk brfg^ aergip^àfbknaep*tM.EAtêtb=àoyukp"() zrà^pH912379UNBVKPF0Zibeqctçêrn
a0m%é&£
[email protected] / [email protected] / 55Positioning (semantic Web)Positioning (semantic Web)
Internet & Web (shared infosphere for humans)
Intranets & intrawebs−Current trend: reuse internet and web technologies−Same advantages and same drawbacks
Semantic Web (shared infosphere for machines)
−XML: W3C standard for structuring data and documents
−RDF(S): W3C standard for metadata/semantic annotations
Hyp: corporate memories as semantic intrawebssemantic intrawebs
[email protected] / [email protected] / 66Positioning (ontology)Positioning (ontology)
Knowledge engineering & ontology (modularity, reuse)
−Assertional knowledge e.g., "Hugo wrote Notre-Dame de Paris"
−Ontological knowledge e.g., "Authors write books“
−Ontology: an explicit, partial account of the semantic
structure encoding the rules that constrain our
representation of reality
Hyp: ontologyontology to support semantic intraweb
[email protected] / [email protected] / 77Positioning (DAI) and context (CoMMA)Positioning (DAI) and context (CoMMA)
Distributed artificial intelligence−Multi-agent systems: study design of artificial societies
of intelligent agents
−Agent: clearly identifiable artificial entity; situated in an environment which it senses, reacts to and acts upon;
self-control of its behavior; social abilities to interact with other agents / humans;
−Multi-agent information systems: situated in & distributed over an information network
Hyp: multi-agent systemmulti-agent system to manage semantic intraweb
[email protected] / [email protected] / 88European project CoMMAEuropean project CoMMA
CoMMA Corporate Memory Management through AgentsAtos-Origin, CSELT Telecom Italia, CSTB, INRIA, LIRMM,T-Nova Deutsche Telekom, University of Parma
Two application and trial scenarios:−Assist new employee integration−Support technology monitoring activities
Technical choices:−Materialization of memory
RDF(S) and its XML syntax (manipulated with CORESE)
−Exploitation of memory
Multi-agent system and machine learning techniques(implemented with ) (implemented with WEKA)
[email protected] / [email protected] / 99Positioning and pointersPositioning and pointers
Dynamically integrating heterogeneous sources of information OBSERVER [Mena et al., 1996] InfoSleuth [Nodine et
al., 1999] Carnot [Collet et al., 1991] InfoMaster [Genesereth et al., 1997] SIMS [Arens et al., 1996] RETSINA [Decker & Sycara, 1997] Manifold [Kirk et al.,1995]
Assist the management of digital librariesSAIRE [Odubiyi et al., 1997] UMDL [Weinstein et al., 1999]
Organizational knowledge management:−Collaborative gathering, filtering and profiling
CASMIR [Berney & Ferneley, 1999] Ricochet [Bothorel & Thomas, 1999]
−Mobile access, domain model, document classificationKnowWeb [Dzbor et al., 2000]
−Taxonomy of topics, profiling and pushRICA [Aguirre et al., 2000]
−Ontology and corporate memory: multiple ontologies FRODO [Van Elst & Abecker, 2001]
semantic intraweb, ontology, user profiling You are here
[email protected] / [email protected] / 1010
Corporate Memory
Multi-Agents SystemLearning
UserAgent
Learning
ProfileAgent
Ontology and Models Agent
UserAgent
Learning
InterconnectionAgent
Functionalities: annotate, pull and pushFunctionalities: annotate, pull and push
KnowledgeEngineer
Authors andannotators of documents
End User
Annotation
Document
Annotation
Document
Annotation
Document
Annotation
Document
Ontology
Models
- Enterprise Model - User's Profiles
Query
annotation
pull and push
[email protected] / [email protected] / 1111Annotate documents (content awareness)Annotate documents (content awareness)
RDF(S): annotated world for software in order to make inferences & help users exploit memory
−RDF = Resource Description Framework (annotation model)
• Annotation in RDF with XML syntax: <CoMMA:DocumentDocument rdf:about=“http://www-sop.inria.fr/aar.docaar.doc”> <CoMMA:TitleTitle>Annual activity report of ACACIAAnnual activity report of ACACIA</INRIA:Title> <CoMMA:AuthorAuthor> <CoMMA:PersonPerson rdf:about=“http://www.inria.fr/~rdiengrdieng/” /> </CoMMA:Author> </CoMMA:Document>
• Annotation in RDF with graph representation:
DocumentDocument::http://www-sop.inria.fr/aar.doc
AuthorAuthor PersonPerson::http://www.inria.fr/~rdieng/
TitleTitle "Annual activity report of ACACIA"
[email protected] / [email protected] / 1212Annotation schema (semantic awareness)Annotation schema (semantic awareness)
Entity
Document Person Author
Creator
range
domain
classes - concepts properties - relations
RDF(S): annotated world for software in order to make inferences & help users exploit memory
− RDF = Resource Description Framework (annotation model)− RDFS = RDF Schema (annotation vocabulary / ontology)
<rdfs:ClassClass rdf:ID=‘EntityEntity’/> <rdfs:ClassClass rdf:ID=‘DocumentDocument’> <rdfs:subClassOfsubClassOf rdf:resource=‘#EntityEntity’ /> </rdfs:Class> ...... <rdf:PropertyProperty rdf:ID=‘AuthorAuthor’> <rdfs:subPropertyOfsubPropertyOf rdf:resource=‘#CreatorCreator’ /> <rdfs:domaindomain rdf:resource=‘#DocumentDocument’ /> <rdfs:rangerange rdf:resource=‘#PersonPerson’ /> </rdf:Property> ......
• In graph representation:
[email protected] / [email protected] / 1313Annotate persons (context awareness)Annotate persons (context awareness)
User modeling (extract of my user profile)
<CoMMA:EngineerEngineer rdf:about="http://www-sop.inria.fr/acacia/personnel/Fabien.GandonFabien.Gandon/"> <CoMMA:FamilyNameFamilyName>GANDON</CoMMA:FamilyName> <CoMMA:FirstNameFirstName>Fabien</CoMMA:FirstName> <CoMMA:BirthDateBirthDate>31-07-1975</CoMMA:BirthDate> (...) <CoMMA:HasForWorkInterestHasForWorkInterest> <CoMMA:MultiAgentSystemTopicMultiAgentSystemTopic rdf:about="http://www.inria.fr/acacia/comma#... </CoMMA: HasForWorkInterest > (...) <CoMMA:HasForPersonalInterestHasForPersonalInterest> <CoMMA:HumanScienceTopicHumanScienceTopic rdf:about="http://www.inria.fr/acacia/comma#Human... </CoMMA:HasForPersonalInterest> (...)</CoMMA:Engineer><CoMMA:EmployeeEmployee rdf:about="http://www-sop.inria.fr/acacia/personnel/Fabien.GandonFabien.Gandon/"> <CoMMA:HireDateHireDate>1999-11-02</CoMMA:HireDate> <CoMMA:EmployedByEmployedBy> <CoMMA:LocalOrganizationGroupLocalOrganizationGroup rdf:about="http://www.ac-nice.fr/" /> </CoMMA:EmployedBy> <CoMMA:EmploymentContractEmploymentContract> <CoMMA:TemporaryTemporary/> </CoMMA:EmploymentContract> <CoMMA:HasForActivityHasForActivity> <CoMMA:ResearchResearch rdf:about="http://www.inria.fr/acacia/comma#Research"/> </CoMMA:HasForActivity>
Idem for organization modeling (structures, relations...)
[email protected] / [email protected] / 1414ProgressionProgression
PhD research: “D.A.I. and knowledge”Semantic intrawebs for corporate memories
Ontology engineering for semantic intrawebs
Multi-agent architecture for semantic intrawebs
Post-doc research: “D.A.I. and services”Semantic Web services &Context-awareness
Personal resource management & privacy enforcement
Experimental results
Wrap-up
[email protected] / [email protected] / 1515Methodological steps (1 & 2)Methodological steps (1 & 2)
Ontology building in five steps Step 1 - Data collection and analysis
−Scenario-driven analysis: users’ scenario reports & grid−Motivate data collection internal & external to organization−Capture aspects conceptualization to assist scenarios
Extract: “... wonder if there are technical reportstechnical reports about UMTSUMTS, then...” “... what this managermanager or one of his colleaguescolleagues wrote for...”
Step 2 - Build a lexicon−Capture terms and their definitions−First intermediary representation of the ontology−Constraint: one and only one occurrence of a definition−Disambiguate terms, e.g.:
COLLEAGUE n. (lat. collega) someone who shares the same profession || one of a group of people who work together.
[email protected] / [email protected] / 1616Methodological steps in ontology engineering (3)Methodological steps in ontology engineering (3)
Step 3 - Enriching lexicon structure−Split concepts, properties and attributes into different tables−Augment with relevant semantic aspects (e.g. subsumption)−Enrich, augment, refine, ... for both humans and machines−Taxonomic skeleton: top-down / bottom-up / middle-out
Step 4 - Script translating tables into RDFS
Class View Super class Other Terms Natural Language Definition Pr Manager Organization;
Person; Professional; director; Professional whose primary job is to
manage other people, directing their work activity. A Manager tells his or her subordinate workers what to do.
Cy
... ... ... ... ... ... UMTS
Domain; MobilePhoneProtocols;
U.M.T.S.; universal mobile telecommunications system
Mobile phone protocol of the 3G technology that delivers broadband information at speeds up to 2Mbit s/sec.
Us
... ... ... ... ... ... Technical Report
Document; Report; ; Report presenting technical details on a specific topic.
Us
... ... ... ... ... ... Relation Domain Range View Super Relation Other Terms Natural Language Definition Sy Tr Re Pr
Colleague Person Person Organisation; Acquaintance; co-worker; Acquaintance between two persons who work together
X Us
... ... ... ... ... ... ... ... ... ... ...
R5C8
Analysis of the three levels present in RDF(S)Analysis of the three levels present in RDF(S)
Ti A term Ci Intension concept Ci
Instance of concept
Ri Intension relation Ri
Instance of relation
Instanciation links
Extension concept Ci or relation Ri
Ci Ri
T1
T3 T4
T2 T5
Up to that step RDF(S) hasthe required expressiveness
C2
C1
C3
C4 C5 C6 C7 C8
R1
R2
R4 R5 R6
R3
Term used as a label
...<rdfs:Class rdf:ID="Department"> <rdfs:subClassOf rdf:resource="#OrganizationPart"/> <rdfs:comment xml:lang="en"> Organization part which is a sub division of of a Research Direction, corresponding to sub interest field e.g mobile transmission </rdfs:comment> <rdfs:label xml:lang="en">department</rdfs:label> <rdfs:label xml:lang="en">division</rdfs:label></rdfs:Class>...
Synonyms...<rdfs:Class rdf:ID="E-Mail"> <rdfs:subClassOf rdf:resource="#Mail"/> <rdfs:comment xml:lang="en"> Mail sent in electronic format over a computerized world-wide communication system </rdfs:comment> <rdfs:label xml:lang="en">e-mail</rdfs:label> <rdfs:label xml:lang="en">electronic mail </rdfs:label> <rdfs:label xml:lang="en">mail</rdfs:label></rdfs:Class>...<rdfs:Class rdf:ID="PostMail"> <rdfs:subClassOf rdf:resource="#Mail"/> <rdfs:comment xml:lang="en"> Mail transmitted via the post office </rdfs:comment> <rdfs:label xml:lang="en">mail</rdfs:label> <rdfs:label xml:lang="en">post mail</rdfs:label></rdfs:Class>...
Ambiguity
<CoMMA:Memo rdf:about="http://www.inria.fr/comma.rtf"/>
<CoMMA:E-Mail rdf:about="http://www.inria.fr/comma.rtf"/>
Multi-instanciation
[email protected] / [email protected] / 1818Methodological steps in ontology engineering (5)Methodological steps in ontology engineering (5)
Step 5 - Factorizing knowledge (when needed)
−Declare algebraic properties of relations(symmetric / transitive / reflexive relations)
colleague(x,y)colleague(x,y) acquaintance(x,y) colleague(y,x)colleague(y,x)
<rdf:Property rdf:ID="colleaguecolleague"> <rdfs:subPropertyOf rdf:resource="#Acquaintance"/> <rdfs:range rdf:resource="#Person"/> <rdfs:domain rdf:resource="#Person"/> <cos:symmetric>true</cos:symmetric><cos:symmetric>true</cos:symmetric> <rdfs:comment xml:lang="enen">acquaintance between two personsacquaintance between two persons who work together.who work together.</rdfs:comment> <rdfs:comment xml:lang="frfr">accointance entre deux personnesaccointance entre deux personnes travaillant ensemble.travaillant ensemble.</rdfs:comment> <rdfs:label xml:lang="enen">colleaguecolleague</rdfs:label> <rdfs:label xml:lang="enen">co-workerco-worker</rdfs:label> <rdfs:label xml:lang="frfr">colleguecollegue</rdfs:label> <rdfs:label xml:lang="frfr">collegue de travailcollegue de travail</rdfs:label> </rdf:Property>
[email protected] / [email protected] / 1919Methodological steps in ontology engineering (5)Methodological steps in ontology engineering (5)
Step 5 - Factorizing knowledge (when needed)
−Declare algebraic properties of relations(symmetric / transitive / reflexive relations)
−No one generates all the instances of colleague by hand−"I am a colleague of X because
I work in the same group as X" (inference)−Encode axiomatic knowledge in rules and definitions
colleague(x,y)colleague(x,y) person(x) person(y) ((z group(z) z group(z) include(z,x) include(z,x) include(z,y)) include(z,y))
IFIF (rule for sufficient condition)(rule for sufficient condition) Group Include Person ?x?x Include Person ?y?y THENTHEN Person ?x?x ColleagueColleague Person ?y?y
[email protected] / [email protected] / 2020Summary of methodologySummary of methodology
Results−Design stages:
−In CoMMA this method provided O'CoMMA• 470 concepts (taxonomy depth = 13 subsumptions).
• 79 relations (taxonomy depth = 2 subsumptions).
• 715 terms in English and 699 in French.
• 550 definitions in English and 547 in French .
Data collection
Lexicons
RDFS version Algebraic properties Rules
Coverage ?
Structured tables
Scenarios
[email protected] / [email protected] / 2121Resulting ontology: O'CoMMAResulting ontology: O'CoMMA
Structure:
−Abstract top & middle layer for corporate memory: reusable−Middle layer for domain: reusable in same domain−Extension layer: usable but not reusable−Reuse tested e.g., CSELT CSTB, APROBATIOM, KMP
Top: Top: abstractabstract
Middle: Middle: common notionscommon notions
Extension: Extension: specificspecific
Organization Document Person Domain
dedicated to
corporate memory
[email protected] / [email protected] / 2222ProgressionProgression
PhD research: “D.A.I. and knowledge”Semantic intrawebs for corporate memories
Ontology engineering for semantic intrawebs
Multi-agent architecture for semantic intrawebs
Post-doc research: “D.A.I. and services”Semantic Web services &Context-awareness
Personal resource management & privacy enforcement
Experimental results
Wrap-up
[email protected] / [email protected] / 2323A multi-agent architecture for CoMMAA multi-agent architecture for CoMMA
Problem = handle information distribution−Handle naturally scattered information & knowledge −Assist diffusion of captured information and knowledge
Follow multi-agent paradigm:−Artificial societies collaborating for global capitalization−Artificial individual intelligence, able to locally adapt
Step 1 - Sub-societies identification−Started from the tasks to be performed
(provide ontology, manage annotations, manage users and matchmaking)
−Thus four sub-societies to handle these four tasks: Ontology & modelsub-society
User-dedicatedsub-society
Annotation-dedicatedsub-society
Matchmakerssub-society
[email protected] / [email protected] / 2424Organizing resource-dedicated sub-societiesOrganizing resource-dedicated sub-societies
Replicationresource-dedicated
Replication
Distribute resource onlyworkload & network load +/-redundancy +
Complete replicationredundant & less network load +content replicated –
Distribute roles & resourcedistribute workload +increase network load –
Cooperativeresource-dedicated
Peer-to-Peer
Representative
Resource-dedicated
Hierarchy
Step 2 - Analyse possible organization structures:
[email protected] / [email protected] / 2525Roles and interactionsRoles and interactions
Users' societyUsers' society
Annotations SocietyAnnotations SocietyOntology and Model SocietyOntology and Model Society
Interconnection SocietyInterconnection Society
Ontologist AgentsOntologist Agents
MediatorsMediators
ArchivistsArchivists
Profile Profile ManagersManagers
Profiles Profiles ArchivistsArchivists
InterfaceInterfaceControllersControllers
FederatedFederatedMatchmakersMatchmakers
Step 3 - Roles and interactions
[email protected] / [email protected] / 2626Zooming on annotation-dedicated sub-societyZooming on annotation-dedicated sub-society
Annotations SocietyAnnotations Society
MediatorsMediators
ArchivistsArchivists
The annotation-dedicated sub-society−Hierarchy:
Mediators & archivists
−Manage local sources of
annotations distributed
over the organization
network
Propose annotation-related services to others−Archive new annotations on documents of the memory−Search & retrieve references matching queries−Notify registered agents of the arrival of a new annotation
Present 2 roles and then 2 interaction protocols
[email protected] / [email protected] / 2727Annotation-dedicated sub-society (mediator)Annotation-dedicated sub-society (mediator)
role model Annotation Mediator role in the Annotation-dedicated society
responsibilities handle distribution of annotations over thearchivists both for new annotation submissionsand query solving processes
collaborators Directory facilitator, User Profile Manager,Ontology Archivist, Annotation Archivist,Corporate Model Archivist
external interfaces RDF annotation manipulation interfacerelationships -expertise query and submission managementinteractions Query-Ref, Contract-Net, Subscribe, Request;
FIPA ACLothers -
AM
directoryfacilitator
AA AA AA
Mediator role (supervises social interactions)
−Contact point for other sub-societies
−Supervising distribution of tasks for query solving
−Allocating a new annotation to an archive
−Notifying new annotation arrival to trigger push functions
[email protected] / [email protected] / 2828Annotation-dedicated sub-society (archivist)Annotation-dedicated sub-society (archivist)
role model Annotation Archivist role in the Annotation-dedicated society
responsibilities store and query the annotations of the memorycollaborators Directory facilitator, Annotation Mediator,
Ontology Archivistexternal interfaces RDF annotation manipulation interfacerelationships also part of the roles in Corporate Model
Archivist and User Profile Archivistexpertise annotation archiving an queryinginteractions Query-Ref, Contract-Net; FIPA ACLothers -
AA
annotationmediator
annotationarchive
Archivist role (manage a local archive)
−Attached to & exploits local base
−Answers to query as much as it can with local knowledge
−Proposes archiving services advertising the archive
content
[email protected] / [email protected] / 2929Interaction mediator-archivist (allocation)Interaction mediator-archivist (allocation)
Interaction 1 - Annotation allocation− Pb: archives distributed all over organization− Mediator & archivists discuss best archive for new annot.− Contract-net (CfP, Proposal, Accept/Reject):
− Proposals: semantic distance new annotation - archive
1:cfp
2:cfp
2:cfp
3:propose
3:propose
:protocol fipa contract net:content <RDF Annotation>:language CoMMA-RDF:ontology CoMMA Ontology
5:accept/reject
:protocol fipa contract net:content <propose bid = distance archive / refuse / not understood>:language CoMMA-RDF:ontology CoMMA Ontology
4:propose
6:accept/reject
6:accept/reject
7:inform
7:inform8:informAMLocal:Med *:Med *:Arch
*:Arch
[email protected] / [email protected] / 3030Content of an annotation or of an archiveContent of an annotation or of an archive
Simple annotation <rdf:RDF xmlns:rdf="http:// (…) "> <CoMMA:ArticleArticle rdf:about="http://intranet/reports/R3029"> <CoMMA:TitleTitle>CfP UMTS AnalysisCfP UMTS Analysis</CoMMA:Title> <CoMMA:AuthorAuthor> <CoMMA:PersonPerson rdf:about="http://www.mycorp.com/~fab" /> </CoMMA:Author> </CoMMA:Article> </rdf:RDF>
Corresponding triples:
Unstructured set of triples to describe content type
Article
Author
Person
Article
Title
Literal: "CfP UMTS Analysis"
literal concept
Triple:
subject
predicate
object
[email protected] / [email protected] / 3131
Article
Title
Literal: "CfP UMTS Analysis"
Article
Author
Person
AnnotationAnnotation
ArchiveArchive
Distance between an annotation and an archiveDistance between an annotation and an archive
Ho
w c
lose
are
th
ey ?
Report
Title
Literal: "Negotiation in C-Net"
Literal: "Zeno paradox"......
31 31 instancesinstances
Report
Author
Person
27 27 instancesinstances
Report
Author
Committee
10 10 instancesinstances
Book
Author
Person
19 19 instancesinstances
Book
Title
Literal: "Agents for dummies"
Literal: "Franc and Euro"......
7 7 instancesinstances
StatisticsStatistics
[email protected] / [email protected] / 3232Building the distanceBuilding the distance
Case 1 - literal values: lexicographical distance Case 2 - concept types: minimum length of path
between two types through least common super type
DistH(Type1,Type2) = Min(GPath(Type1,LCST)+GPath(Type2,LCST)) GPath(,): number of edges through generalization links LCST: least common super type = shared characteristics
Distance between two triples (conditional weighted sum)
document
chart book
graphdiagram
LCST
Distance (diagram, graph) = 2
booklet
Distance (diagram, booklet)= 4
LCST
Dist TFStat(TripleA, TripleB) = DistC1+ DistR + DistC2
DistCi= WC* DistH(Type1,Type2) or WC* DistH(Type,Lit) or WL* N * DistI(Lit, [Blow,Bup]) with N=MaxC*2/MaxL
[email protected] / [email protected] / 3333Semantic distance between typesSemantic distance between types
Distance annotation archive
DistTStat(Triple,Stat) = Min(DistTFStat (Triple,Triplei)Triplei Stat
− triplestat:
Stat),(TripleDist )Stat ,An( Dist jTStatXAStat
Xj AnTriple
− annotationstat:
sub-type DistH = 0 Pref),(TripleDist )Pref ,An( Dist jTPrefXAPref
Xj AnTriple
− annotationpref:
Dist(AnX, ArcY) = DistAStat(AnX, StatY)+DistAPref(AnX, PrefY)− annotationarchive:
Distance = allocation criteria of contract-net− "and the winner is..." the archivist with smallest distance− Cluster annotations & specialize archives− Improve query solving & respect knowledge distribution
[email protected] / [email protected] / 3434Interactions mediator-archivist in solving a queryInteractions mediator-archivist in solving a query
Interaction 2 - distributed query solving− Pb: archives of annotations distributed all over org.− Mediators & archivists share knowledge to solve a query− Composition of Query-Ref protocol for distributed solving
1:query-ref
:protocol fipa query:content <RDF pattern / OBSIQ>:language CoMMA-RDF:ontology CoMMA Ontology
4:inform
2a:query-ref 3a:inform 2b:query-ref 3b:inform
5a,b,c,...:query-ref
5a,b,c,...:inform 5a,b,c,...:
query-ref
5a,b,c,...:inform
:protocol fipa query:content <RDF pattern /result>:language CoMMA-RDF:ontology CoMMA Ontology
LocalAM:Med *:Med
*:Arc*:Arc
[email protected] / [email protected] / 3535Overlap descriptionOverlap description
Each archivist calculates the overlap between query needs and its archive statistics:
− Archivists refine their service description for a query
− Mediators target multicast communications
− Exploit archive specialization obtained during the allocation of annotations
query needsquery needs archive statisticsarchive statistics&&
Description of the Description of the overlap need/archiveoverlap need/archive
[email protected] / [email protected] / 3636RDF query: tree structureRDF query: tree structure
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:CoMMA="http://www.inria.fr/acacia/comma#"> <CoMMA:Document> <CoMMA:CreatedBy> <CoMMA:Person> <CoMMA:FamilyName>?AuthorName?AuthorName</CoMMA:FamilyName> <CoMMA:FirstName>?AuthorFirstName?AuthorFirstName</CoMMA:FirstName> </CoMMA:Person> </CoMMA:CreatedBy> <CoMMA:Title>?DocTitle?DocTitle</CoMMA:Title> <CoMMA:Edited> <CoMMA:Company> <CoMMA:Designation>~smith~smith</CoMMA:Designation> <CoMMA:Situated> <CoMMA:Location> <CoMMA:City>NiceNice</CoMMA:City> <CoMMA:Country>FranceFrance</CoMMA:Country> <CoMMA:Phone>?EditorPhone?EditorPhone</CoMMA:Phone> </CoMMA:Location> </CoMMA:Situated> <CoMMA:HasForActivity> <CoMMA:EditionEdition /> </CoMMA:HasForActivity> </CoMMA:Company> </CoMMA:Edited> <CoMMA:CreationDate>20002000</CoMMA:CreationDate> <CoMMA:ReviewedBy> <CoMMA:Person> <CoMMA:FamilyName>hofstadterhofstadter</CoMMA:FamilyName> <CoMMA:FirstName>douglasdouglas</CoMMA:FirstName> </CoMMA:Person> </CoMMA:ReviewedBy> <CoMMA:Concern> <CoMMA:ComputerScienceTopicComputerScienceTopic /> </CoMMA:Concern> </CoMMA:Document></rdf:RDF>
?
!
?
?
!!?
!
!
!
!
!
1
1
1
1
1
1
2
2
2
2
22
2
3
33
[email protected] / [email protected] / 3737DecompositionDecomposition
!!
!!!!
!!
!!
!!!!
!!
??
?? ??
??
Tree decomposition & work distribution− Mediator prepares query
(compact, cross-references) − Mediator decomposes query
• Bottom-up constraints solving
!!
!! !!
!!
!!
!! !!
!!
!!
!! !!
!!
!!
!! !!
!!
!!
!! !!
!!
!! !!!!
!!
!! !!
!!
!! !!!!
!!
!! !!
!! !!!!
!! !!
!! !!!! !! !!!!!! !! !!!!
!!
[email protected] / [email protected] / 3838DecompositionDecomposition
!!
!!!!
!!
!!
!!!!
!!
??
?? ??
??
Tree decomposition & work distribution− Mediator prepares query
(compact, cross-references) − Mediator decomposes query
• Bottom-up constraints solving• Top-down question answering• URI as cut/joint points
− Mediator sends subqueries to archivists according to overlap
??
????
??
??
????
??
!!!!
!!
??
????
??
!!!!
!!
??
!!
!!????
??
!!!!
!!
Forming final result− Mediator merges partial results− Mediator solves cross-references
[email protected] / [email protected] / 3939Overview of agent-based designOverview of agent-based design
Design stages:
Result:• Society providing ontology and corporate model
• Annotation-dedicated society
• Two trials at mid-project and project end in development spiral
• One public open-day demo: industrial & EU commission
• Usability and usefulness recognized by users/public
Scenarios
Architectural requirements
Roles
Behaviours
Ontology
Interactions
Agent types
Configuration requirements
Deployment
[email protected] / [email protected] / 4040ProgressionProgression
PhD research: “D.A.I. and knowledge”Semantic intrawebs for corporate memories
Ontology engineering for semantic intrawebs
Multi-agent architecture for semantic intrawebs
Post-doc research: “D.A.I. and services”Semantic Web services &Context-awareness
Personal resource management & privacy enforcement
Experimental results
Wrap-up
[email protected] / [email protected] / 4141
(c) CMU - Sadehlab
Web service to humansWeb service to humans
To pay by check and/or register by mail, do not use this form! Please download and complete the PDF form instead. You can also complete the PDF version of the form electronically, and then print it and either fax or mail the printout to AAAI. (Note: You can only save your data entry if you have Acrobat 4.0 or higher. Acrobat Reader allows you to complete the form and print it, but not save it.) Student registrants please note that you are still required to send hard copy proof of your full-time student status to the AAAI office in order to receive the discounted student registration rates.
First Name (and optional middle initial):Last Name (family or surname):Company or Affiliation:Mailing Address:City: State:USA Zip Code (Please enter your zip+4 code):Country: Foreign Postal Code:Work or Daytime Telephone:E-mail Address:Please select your tutorial(s) / workshop(s) and select the rateSunday AM Sunday PM Monday AM Monday PM $100* $300*To qualify for this price, you must also register for the IJCAI technical conference above.
Credit card number:
submit reset
T8 T8 W2 W2
[email protected] / [email protected] / 4242
(c) CMU - Sadehlab
Web service to machinesWeb service to machines
Fie eio uaz edaziajqz b azeiqns aeo qzjioqs ef loedfze euf azekq,e f;qzejfbqzeuqei”çzerbé’rèé” b a”rçé”rb & “rç”elfrmqz$eé”r aoenbqzrelaze’r^)é’ramz’ pùze aé”)r)é”rnze,r zeqùf$ze qze, rtaoez qzr;,zep^é”rnq :zepqzerlg q;ze, apzé”’,’r zerppé”ar na “rier “ é”_efnf f&_”’kn fnàe-o”’n’rà”’n n fàozrnzero”nkn’zené” rz ràzerié l”, é”iozlt;,zer lserpqmrezneiohljké’é”’( nt tgaé”inn ze’rtnoser tao’tzket nzerot ite av ioit tngoierg aert_niaoit naeriaz azg pzaena zetpaergn rega’tioaernze rtszergiooiz’tnlqlksrngznqsregpiozernge nrgodsf/
Kz zi’èé 56 b’_é é”ç’ zeiN”u’z9 “ufkzedzr82 “iz aé”iusz^fkeuéa§ ué d8 ér8 zejé= é1ù^geddez’pzrE9mMa£7nSù Krµù1r 5yr kr9jz zIO £ 17v UIZ1 bzz di1µ*§jdea »zzehze2¨r0pa1l¨/$r ¨&7bziY+=ç°+=|r8_#zf&ze!Mq8^ae%rà/§µaz.lr6l%µ£../§!6o=rI « z£9 zj?ai1çd »eazo LazzOçù§de*!aqµdaeo zoaz azozi8£&à9kzeai %§ 9kzeai Z¨ pµa£m %§ pµa£m Z¨ {ass] {µss]%deK;?9 dzeoPSceze £1zé %Azµdza^0çNéçqefnqEnioUZiunc IOzazOxdjsu.
é#%µeio%MzefzIAr
“£§ya è0°&
è° é° *ù *ù
[email protected] / [email protected] / 4343
(c) CMU - Sadehlab
Positioning (semantic Web services)Positioning (semantic Web services)
Internet & Web (shared service-sphere for humans)
Semantic Web (shared infosphere for machines)
Semantic Web Services (shared service-sphere for machines)
SOAP, XMLP, WSDL, DAMLS, UDDI (v2 v3)
Hyp: Semantic web services for e-Businessand Enterprise Applications Integration
Hyp: OntologyOntology to support semantic Web services
Distributed artificial intelligence−Intelligent Agent Intelligent Services−Multi-agent systems Service interaction & composition
Hyp: Multi-agent architectures for webs of services
[email protected] / [email protected] / 4444
(c) CMU - Sadehlab
Interface without context awarenessInterface without context awareness
To pay by check and/or register by mail, do not use this form! Please download and complete the PDF form instead. You can also complete the PDF version of the form electronically, and then print it and either fax or mail the printout to AAAI. (Note: You can only save your data entry if you have Acrobat 4.0 or higher. Acrobat Reader allows you to complete the form and print it, but not save it.) Student registrants please note that you are still required1) to send hard copy proof of your full-time student status to the AAAI office in order to receive the discounted student registration rates.
First Name (and optional middle initial):Last Name (family or surname):Company or Affiliation:Mailing Address:City: State:USA Zip Code (Please enter your zip+4 code):Country: Foreign Postal Code:Work or Daytime Telephone:E-mail Address:Please select your tutorial(s) / workshop(s) and select the rateSunday AM Sunday PM Monday AM Monday PM $100* $300*To qualify for this price, you must also register for the IJCAI technical conference above.
Credit card number:
submit reset
T8 T8 W2 W2
[email protected] / [email protected] / 4545
(c) CMU - Sadehlab
Interface with context awarenessInterface with context awareness
Please select your tutorial(s) / workshop(s) and ($100 rate)Sunday AM Sunday PM Monday AM Monday PM
Just do it !
T8 T8 W2 W2
[email protected] / [email protected] / 4646
(c) CMU - Sadehlab
Positioning (mobile access to SW&S)Positioning (mobile access to SW&S)
Mobile (net)working−Mobile networks:
• Phones / pagers PDAs, sub-notebooks
• Telecom services Web and online services
−Mobile accesses reduced & constrained interactions (interfaces, connectivity, cognitive workload)
−Schism: service availability & user availability
Hyp: Context-awareness to support mobile access to Context-awareness to support mobile access to semantic Webs and their servicessemantic Webs and their services
[email protected] / [email protected] / 4747
(c) CMU - Sadehlab
Positioning (context awareness)Positioning (context awareness)
Context awareness State of the Art−Application leveraging context awareness
Active Badge [Want et al., 92] ParcTab [Schilit, 95] Oxygen
[Dertouzos, 99] GUIR [Hong & Llanday, 01] Aura [Garlan et al., 02] • Application dependent and heterogeneous
• Redundant and scattered
−Personal resources integration and unification• Toolkits and widgets for wrapping [Dey et al., 00]
• e-Wallet: awareness & privacy You are here
Hyp: Semantic Web & Services to provide a unified Semantic Web & Services to provide a unified secure interface to personal resources (e-Wallet)secure interface to personal resources (e-Wallet)
[email protected] / [email protected] / 4848
(c) CMU - Sadehlab
Context of researchContext of researchmyCampus: a context-aware environment aimed at
enhancing access to services for everyday campus life at Carnegie Mellon University (CMU)
− BBN, IBM, HP, Symbol and Boeing − Air Force Research Laboratory (contract F30602-02-2-0035)
− Defense Advanced Research Project Agency (DARPA) (contract F30602-98-2-0135)
Interactions with− SONAT: user-aware notification (D.o.D.)
− CoSAR (I-X, KAoS/CoABS Grid): notification planning (AIAI)
− SWAP: Semantic Web and Peer-to-peer for KM (IST program)
My focus: Semantic Web & Services, Context-awareness and Privacy, M.A.S. and Ontologies
[email protected] / [email protected] / 4949
(c) CMU - Sadehlab
Open architecture – mobile access Open architecture – mobile access
PDA & Wireless NetworkAgent roles:
− Platform manager− User interaction
manager− Growing collection of
task-specific agents− e-Wallet manager
Web resources− Semantic Web services− Semantic Web ontologies− Semantic Web annotations− Search engines
SemanticSemanticWeb serversWeb servers
S. Web Ontologies
S. Web AnnotationsOther Web Resources
Semantic Web Services
SemanticSemanticsearchsearchservicesservices
Task-Task-specificspecific
Task-specific resources and APIs
Communication toolkit (http, e-mail, IM, etc.)
User interaction User interaction managermanager
API
NETWORK
PlatformPlatformmanagermanager
White & yellow pages
MAS administration toolkit
knowledge base
API
e-Wallet e-Wallet managermanager
Security toolkitAPI
Web services invocation toolkitAPI
Inference engineAPIe-Wallete-Wallet
knowledge base
Service activation rulesDynamic knowledge about owner
Static knowledge about owner
Loaded ontologies
Privacy enforcement rules
[email protected] / [email protected] / 5050
(c) CMU - Sadehlab
ProgressionProgression
PhD research: “D.A.I. and knowledge”Semantic intrawebs for corporate memories
Ontology engineering for semantic intrawebs
Multi-agent architecture for semantic intrawebs
Post-doc research: “D.A.I. and services”Semantic Web services &Context-awareness
Personal resource management & privacy enforcement
Experimental results
Wrap-up
[email protected] / [email protected] / 5151
(c) CMU - Sadehlab
e-Wallet & the knowledge typologye-Wallet & the knowledge typology
Secured unified semantic interface to access knowledge about the e-Wallet owner
Static assertional knowledge:− User’s static profile (name, SSN, position, etc.)− Static contextual knowledge (campus description, etc.)
fetched from outside as needed.
Dynamic assertional knowledge:− User’s dynamic profile (contextual preferences, etc.)− Context knowledge (location, current activity, weather,
etc.) fetched from outside as needed.− Privacy: authorization & obfuscation (precision, lie, etc.)
Ontological knowledge, fetched from an outside repository of ontology at startup.
[email protected] / [email protected] / 5252
(c) CMU - Sadehlab
privacy
query
answer
e-e-
Design of an e-WalletDesign of an e-Wallet
Three-layer architecture− Core knowledge: static & dynamic knowledge of user− Service Layer: invoke external sources
of knowledge: web services andpersonal resources
− Privacy layer: enforce privacy ruleson external requests: access,obfuscation (precision, lies)
Asserting elementary needs for authorized information
Pre-check access rights
Post-checkaccess rights
Fetch usefulstatic knowledge
Application ofobfuscation rules
Query contextassertionQuery
Assertion ofauthorized knowledge
Result
Call relevant external services
service
CoreKnow-ledge
[email protected] / [email protected] / 5353
(c) CMU - Sadehlab
Processes in the e-WalletProcesses in the e-Wallet
OWLMeta-model
in CLIPS
OWLMeta-model
in CLIPS
Ontologyin OWL
Ontologyin OWL
Annotationin OWL
Annotationin OWL
Rulein (R)OWL
Rulein (R)OWL
Servicesin (W)OWLServices
in (W)OWL
Securityin (S)OWLSecurity
in (S)OWL
Queryin (Q)OWL
Queryin (Q)OWL
OntologystylesheetOntologystylesheet
&
AnnotationstylesheetAnnotationstylesheet
&
Rulestylesheet
Rulestylesheet
&
Servicestylesheet
Servicestylesheet
&
SecuritystylesheetSecurity
stylesheet&
Querystylesheet
Querystylesheet
&
Ontologyin CLIPSOntologyin CLIPS
Annotationin CLIPS
Annotationin CLIPS
Rulein CLIPS
Rulein CLIPS
Service rulein CLIPS
Service rulein CLIPS
Security rulein CLIPS
Security rulein CLIPS
Query rulesin CLIPS
Query rulesin CLIPS
XSLT Engine
Resultin OWLResultin OWL
JESS
[email protected] / [email protected] / 5454
(c) CMU - Sadehlab
e-Wallet core: JESS inference enginee-Wallet core: JESS inference engine
CLIPS language:− Atoms, numbers, strings, functions, variables,
Java reflection− Ordered facts (not used here)− Unordered facts (with templates // classes)
− Forward rules
− Queries: special kind of rule with no right-hand-side
− Declare backward chaining reactive rules using(do-backward-chaining …) function(template need-template)
− The RETE algorithm
(person (name "Adeline") (age 20) (gender Female))(person (name "Adeline") (age 20) (gender Female))
(defrule adult ?p <- (person (age >=18)) => (assert (adult ?p))(defrule adult ?p <- (person (age >=18)) => (assert (adult ?p))
[email protected] / [email protected] / 5555
(c) CMU - Sadehlab
e-Wallet semantic enginee-Wallet semantic engine RDF Triple model
RDFS & OWL meta-model (e.g, symmetry of properties)
(deftemplate triple "Template representing a RDF triple" (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
(deftemplate triple "Template representing a RDF triple" (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
Triple: (predicate, subject, object)Triple: (predicate, subject, object)
<rdfs:Class rdf:ID="SymmetricProperty"> <rdfs:label>SymmetricProperty</rdfs:label> <rdfs:subClassOf rdf:resource="#ObjectProperty"/></rdfs:Class>
<rdfs:Class rdf:ID="SymmetricProperty"> <rdfs:label>SymmetricProperty</rdfs:label> <rdfs:subClassOf rdf:resource="#ObjectProperty"/></rdfs:Class>
(triple (predicate "http://www.w3.org/2000/01/rdf-schema#subClassOf") (subject "http://www.w3.org/2002/07/owl#SymmetricProperty") (object "http://www.w3.org/2002/07/owl#ObjectProperty") )(defrule symmetry (declare (salience 100)) (triple (predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (subject ?p) (object "http://www.w3.org/2002/07/owl#SymmetricProperty")) (triple (predicate ?p) (subject ?x) (object ?y))=> (assert (triple (predicate ?p) (subject ?y) (object ?x))) )
(triple (predicate "http://www.w3.org/2000/01/rdf-schema#subClassOf") (subject "http://www.w3.org/2002/07/owl#SymmetricProperty") (object "http://www.w3.org/2002/07/owl#ObjectProperty") )(defrule symmetry (declare (salience 100)) (triple (predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (subject ?p) (object "http://www.w3.org/2002/07/owl#SymmetricProperty")) (triple (predicate ?p) (subject ?x) (object ?y))=> (assert (triple (predicate ?p) (subject ?y) (object ?x))) )
[email protected] / [email protected] / 5656
(c) CMU - Sadehlab
e-Wallet semantic enginee-Wallet semantic engine
Ontologies: (e.g., declare man, location, etc.)
Annotations: (e.g., Fabien is in Smith Hall, etc.)
<owl:Class rdf:ID="Person"> <rdfs:subClassOf rdf:resource="#Entity" /></owl:Class><owl:ObjectProperty rdf:ID="location"> <rdfs:domain rdf:resource="#Entity" /> <rdfs:range rdf:resource="#Place"/></owl:ObjectProperty>
<owl:Class rdf:ID="Person"> <rdfs:subClassOf rdf:resource="#Entity" /></owl:Class><owl:ObjectProperty rdf:ID="location"> <rdfs:domain rdf:resource="#Entity" /> <rdfs:range rdf:resource="#Place"/></owl:ObjectProperty>
(triple (predicate "http://www.w3.org/2000/01/rdf-schema#subClassOf") (subject "http://sadehlab.cs.cmu.edu/mycampus#Person") (object "http://sadehlab.cs.cmu.edu/mycampus#Entity")) ...
(triple (predicate "http://www.w3.org/2000/01/rdf-schema#subClassOf") (subject "http://sadehlab.cs.cmu.edu/mycampus#Person") (object "http://sadehlab.cs.cmu.edu/mycampus#Entity")) ...
<mc:Man rdf:ID="http://cs.cmu.edu/People/~fgandon"> <mc:location rdf:resource="http://cmu.edu/SmithHall"/></mc:Man>
<mc:Man rdf:ID="http://cs.cmu.edu/People/~fgandon"> <mc:location rdf:resource="http://cmu.edu/SmithHall"/></mc:Man>
(triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#location") (subject "http://cs.cmu.edu/People/~fgandon") (object "http://cmu.edu/SmithHall")) ...
(triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#location") (subject "http://cs.cmu.edu/People/~fgandon") (object "http://cmu.edu/SmithHall")) ...
[email protected] / [email protected] / 5757
(c) CMU - Sadehlab
e-Wallet semantic enginee-Wallet semantic engine Rules: (e.g., when in I am in a meeting I am busy)
<rowl:Rule direction="forward"> <rdfs:label>Meeting means busy</rdfs:label> <rowl:head> <mc:Person rdf:ID="&variable;#person"> <mc:availability><mc:Busy rdf:ID="&mc;#Busy"/></mc:availability> </mc:Person> </rowl:head> <rowl:body> <mc:Person rdf:ID="&variable;#person"> <mc:activity> <mc:Meeting rdf:ID="&variable;#activity"/> </mc:activity> </mc:Person> </rowl:body> </rowl:Rule>
<rowl:Rule direction="forward"> <rdfs:label>Meeting means busy</rdfs:label> <rowl:head> <mc:Person rdf:ID="&variable;#person"> <mc:availability><mc:Busy rdf:ID="&mc;#Busy"/></mc:availability> </mc:Person> </rowl:head> <rowl:body> <mc:Person rdf:ID="&variable;#person"> <mc:activity> <mc:Meeting rdf:ID="&variable;#activity"/> </mc:activity> </mc:Person> </rowl:body> </rowl:Rule>
(defrule Meeting-means-busy ... (triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#activity") (subject ?person) (object ?activity)) (triple (predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (subject ?activity) (object "http://sadehlab.cs.cmu.edu/mycampus#Meeting") ) => ...(assert (triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#availability") (subject ?person)(object "http://sadehlab.cs.cmu.edu/mycampus#Busy")
(defrule Meeting-means-busy ... (triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#activity") (subject ?person) (object ?activity)) (triple (predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") (subject ?activity) (object "http://sadehlab.cs.cmu.edu/mycampus#Meeting") ) => ...(assert (triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#availability") (subject ?person)(object "http://sadehlab.cs.cmu.edu/mycampus#Busy")
[email protected] / [email protected] / 5858
(c) CMU - Sadehlab
Service and privacy layers− Special types of triples− Backward chaining reaction started by the query
• Privacy rules (clearance/revision)• Service rules (dynamic access)• Static migration rules
e-Wallet semantic enginee-Wallet semantic engine
inference engine
privacy
service
coreknow-ledge
query
answer
(deftemplate authorized_triple (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
(deftemplate authorized_triple (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
(deftemplate service_triple (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
(deftemplate service_triple (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
(deftemplate triple (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
(deftemplate triple (slot predicate (default "")) (slot subject (default "")) (slot object (default "")))
[email protected] / [email protected] / 5959
(c) CMU - Sadehlab
QueryQuery
<qowl:Query rdf:ID=""> <qowl:sender rdf:resource="http://cs.cmu.edu/~nsadeh"/></qowl:Query><mc:Person rdf:ID="http://cs.cmu.edu/~fgandon"> <mc:location rdf:resource="&variable;#location" /></mc:Person>
<qowl:Query rdf:ID=""> <qowl:sender rdf:resource="http://cs.cmu.edu/~nsadeh"/></qowl:Query><mc:Person rdf:ID="http://cs.cmu.edu/~fgandon"> <mc:location rdf:resource="&variable;#location" /></mc:Person>
(defrule query (declare (salience 0)) … (authorized_triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#location") (subject "http://cs.cmu.edu/~fgandon") (object ?location)) => (store-result location ?location))
(defrule query (declare (salience 0)) … (authorized_triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#location") (subject "http://cs.cmu.edu/~fgandon") (object ?location)) => (store-result location ?location))
Query issued by the user 'nsadeh’ requesting the location of user ‘fgandon’Query issued by the user 'nsadeh’ requesting the location of user ‘fgandon’
Three steps:− Query context assertion− Query rule definition
• Body: request for authorized triples• Head: storage & pretty printing function
− Rule execution
[email protected] / [email protected] / 6060
(c) CMU - Sadehlab
Privacy rulesPrivacy rules<sowl:ReadAccessRule> <rdfs:label>people can only know whether or not I am on campus</rdfs:label> <sowl:target> <mc:Person rdf:ID="&variable;#owner"> <mc:location rdf:resource="&variable;#location"/> </mc:Person> </sowl:target> <sowl:check> <rowl:And> <rowl:condition> <mc:E-Wallet rdf:ID="&variable;#e-Wallet"> <mc:owner> <mc:Person rdf:ID="&variable;#owner"/> </mc:owner> </mc:E-Wallet> </rowl:condition> <rowl:condition> <mc:Place rdf:ID="http://www.cmu.edu"> <mc:include rdf:resource="&variable;#location" /> </mc:Place> </rowl:condition> <rowl:not-condition> <qowl:Query rdf:ID="&variable;#query"> <qowl:sender rdf:resource="&variable;#owner" /> </qowl:Query> </rowl:not-condition> </rowl:And> </sowl:check> <sowl:revision> <mc:Person rdf:ID="&variable;#owner"> <mc:location rdf:resource="http://www.cmu.edu"/> </mc:Person> </sowl:revision></sowl:ReadAccessRule>
<sowl:ReadAccessRule> <rdfs:label>people can only know whether or not I am on campus</rdfs:label> <sowl:target> <mc:Person rdf:ID="&variable;#owner"> <mc:location rdf:resource="&variable;#location"/> </mc:Person> </sowl:target> <sowl:check> <rowl:And> <rowl:condition> <mc:E-Wallet rdf:ID="&variable;#e-Wallet"> <mc:owner> <mc:Person rdf:ID="&variable;#owner"/> </mc:owner> </mc:E-Wallet> </rowl:condition> <rowl:condition> <mc:Place rdf:ID="http://www.cmu.edu"> <mc:include rdf:resource="&variable;#location" /> </mc:Place> </rowl:condition> <rowl:not-condition> <qowl:Query rdf:ID="&variable;#query"> <qowl:sender rdf:resource="&variable;#owner" /> </qowl:Query> </rowl:not-condition> </rowl:And> </sowl:check> <sowl:revision> <mc:Person rdf:ID="&variable;#owner"> <mc:location rdf:resource="http://www.cmu.edu"/> </mc:Person> </sowl:revision></sowl:ReadAccessRule>
Privacy rule: grant access to location when on campus but obfuscate precisionPrivacy rule: grant access to location when on campus but obfuscate precision
http://www.at.home.gandon.fr/
truth
[email protected] / [email protected] / 6161
(c) CMU - Sadehlab
Service rulesService rules<wowl:ServiceRule wowl:salience="50"> <rdfs:label>provide location for IP Address</rdfs:label> <wowl:output> <mc:Entity rdf:ID="&variable;#entity"> <mc:location rdf:resource="&variable;#location" /> </mc:Entity> </wowl:output> <wowl:precondition> <mc:Entity rdf:ID="&variable;#entity"><mc:ip>&variable;#ip</mc:ip> </mc:Entity> </wowl:precondition> <wowl:call> <wowl:Service wowl:name="call-web-service"> <wowl:parameter>http://cmu.edu/location_tracking#</wowl:parameter> <wowl:parameter>&variable;#ip</wowl:parameter> </wowl:Service> </wowl:call></wowl:ServiceRule>
<wowl:ServiceRule wowl:salience="50"> <rdfs:label>provide location for IP Address</rdfs:label> <wowl:output> <mc:Entity rdf:ID="&variable;#entity"> <mc:location rdf:resource="&variable;#location" /> </mc:Entity> </wowl:output> <wowl:precondition> <mc:Entity rdf:ID="&variable;#entity"><mc:ip>&variable;#ip</mc:ip> </mc:Entity> </wowl:precondition> <wowl:call> <wowl:Service wowl:name="call-web-service"> <wowl:parameter>http://cmu.edu/location_tracking#</wowl:parameter> <wowl:parameter>&variable;#ip</wowl:parameter> </wowl:Service> </wowl:call></wowl:ServiceRule>
(defrule provide-location-for-IP-Address (declare (salience 50)) … (need-dynamic_triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#location") (subject ?entity) (object ?location) ) … => (call-web-service "http://cmu.edu/location_tracking#" ?ip))
(defrule provide-location-for-IP-Address (declare (salience 50)) … (need-dynamic_triple (predicate "http://sadehlab.cs.cmu.edu/mycampus#location") (subject ?entity) (object ?location) ) … => (call-web-service "http://cmu.edu/location_tracking#" ?ip))
[email protected] / [email protected] / 6262
(c) CMU - Sadehlab
ProgressionProgression
PhD research: “D.A.I. and knowledge”Semantic intrawebs for corporate memories
Ontology engineering for semantic intrawebs
Multi-agent architecture for semantic intrawebs
Post-doc research: “D.A.I. and services”Semantic Web services & Context-awareness
Personal resource management & privacy enforcement
Experimental results
Wrap-up
[email protected] / [email protected] / 6363
(c) CMU - Sadehlab
Prototype #1: proof of conceptPrototype #1: proof of concept
Mockup of multi-agent architecture Two task-specific agents
− Restaurant Concierge Agent RCA(location, weather, food, price, time)
− Message Filtering Agent(interests, current activity) + Jabber (Instant Messaging)
Limited version of e-Wallet JSP pages to simulate User Interface Manager Three Web services
− Location tracking− Calendar access− Weather report
[email protected] / [email protected] / 6464
(c) CMU - Sadehlab
logginglogging
preferencespreferences
Setting preferencesSetting preferences
[email protected] / [email protected] / 6565
(c) CMU - Sadehlab
Using servicesUsing services
RestaurantRestaurantConciergeConcierge
MessageMessagefeedbackfeedback
[email protected] / [email protected] / 6666
(c) CMU - Sadehlab
[email protected] / [email protected] / 6767
(c) CMU - Sadehlab
Experiment #1 with early prototypeExperiment #1 with early prototype
Before the experiment:− Office for Human Research Protections approval
Institutional Review Board certificate− Selected group of 11 users, with a variety of profiles− Trained the 11 users during a 2-hour session + material
The 3-day experiment involved: − Message filtering agent: 44 messages and 484 feedbacks− Restaurant concierge agent: 28 recommendations− Logs were generated for each one of these events.
After the experiment:− Users had to fill a survey ~1/2 hour− Face-to-face de-briefing interviews ~15 minutes− Statistics on the logs
[email protected] / [email protected] / 6868
(c) CMU - Sadehlab
Experiment #1 extracts of feedback analysisExperiment #1 extracts of feedback analysis
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
(1) Bomb (2) Box Office (3) Songwriters (4) Consulting (5) Forecast (6) Showtimes (7) Symphony (8) Taxes
Any time
Available
Instantly
No interest
Undecided
0,00%
10,00%
20,00%
30,00%
40,00%
50,00%
60,00%
70,00%
80,00%
90,00%
100,00%
(1) Bomb (2) Songw riters (3) Forecast (4) Jamaica (5) Women - Research
Male
Female
0,00%
10,00%
20,00%
30,00%
40,00%
50,00%
60,00%
70,00%
80,00%
90,00%
100,00%
(1) technology conference (2) bomb (3) Cell-Matrix Adhesion (4) Skin of teeth (5) Psychology Relationship
Science
Humanities
Technology
[email protected] / [email protected] / 6969
(c) CMU - Sadehlab
Experiment #1 most important resultsExperiment #1 most important resultsFor the Restaurant Concierge, 12.5 %
recommendations accepted thanks tocontext-awareness = 14.29% improvement.
For the Messaging: filtering and routing based on static profile = too loose.
− finer knowledge about theusers and finer filtering criteria;
− ~70% of the messages benefitfrom context-aware filteringand routinge.g. messages to be sent onlywhen available or when the day is over
Need critical mass of content, users and useful services
OK 61,36%
Too loose
32,23%
Too strict
6,40%
OK 61,36%
Too loose
32,23%
Too strict
6,40%
[email protected] / [email protected] / 7070
(c) CMU - Sadehlab
Prototype #2: study of a useful servicePrototype #2: study of a useful service Focus:
− Find out about interesting events & Get information to people who want it
− Existing systems to distribute information? Design Computer Science Information Sc. Masters Electrical
Eng.
POSTERSPOSTERS
[email protected] / [email protected] / 7171
(c) CMU - Sadehlab
Experiment #2 H.C.I. study of a useful serviceExperiment #2 H.C.I. study of a useful service
Improving messaging for events:Improving messaging for events:− Tag each poster with a list of
locations (situated)
− Display poster when user isclose to it or explicitly interested in the topic (distribute)
− Peer-to-peer publishing(person-2-person)
− Integrate with calendar(remember)
− Stop publishing when outdated (maintenance)
− Under evaluation; good feedback
[email protected] / [email protected] / 7272ProgressionProgression
PhD research: “D.A.I. and knowledge”Semantic intrawebs for corporate memories
Ontology engineering for semantic intrawebs
Multi-agent architecture for semantic intrawebs
Post-doc research: “D.A.I. and services”Semantic Web services &Context-awareness
Personal resource management & privacy enforcement
Experimental results
Wrap-up
[email protected] / [email protected] / 7373Wrap-up: conclusionWrap-up: conclusion
Ph.D. contributions− Methodologies and tools to build ontology, semantic
intraweb and associated multi-agent architecture
− A running prototype as a proof of concept for each point
− Both are reusable contributions
− Current extensions: Web scrappers & Semantic gateways
Post-Doc contributions ( as a continuation)
− Design M.A.S. architecture for Semantic Web Services with a focus on mobile accesses
− Use of S.W. and ontologies to allow context-awareness
− Integration S.W. and ontologies in privacy enforcement
[email protected] / [email protected] / 7474Wrap-up: discussionWrap-up: discussion
Research ahead (remain at the state of the art)− Ontology and Memory life cycles (collective-ware, coherence)
− Semantic Webs (semantic mapping, open/extra, community, security)
− Semantic Services and Agents (EAI, e-Sourcing, Grid, autonomic)
− Mobile & ubiquitous Semantic Web (connectivity, pervasiveness)
− Intelligent user interfaces (customization, awareness, ergonomics)
Perfectly integrated with research of ACACIA & INRIA
D.A.I. & Web ServicesD.A.I. & Web Services
Ontology &Ontology &Knowledge representationKnowledge representation
Semantic WebSemantic Web& Knowledge management& Knowledge management
formalisms &applications
methods &schemata
formalisms,semantic ground forinferences & communication
software platforms for life-cycle
formalisms,annotated worlds,
methods, cases
software architectures,deployment platforms
[email protected] / [email protected] / 7575AcknowledgmentsAcknowledgments
ACACIA Laboratory - INRIA Sophia Antipolis− Dr. Rose Dieng-Kuntz (Research Director – ACACIA project leader)
− Members of ACACIA team and logistics of INRIA Sophia− ATOS-Origin, CSTB, Deutsch Telekom T-Nova, Italia
Telecom, LIRMM and University of Parma − IST Program (CoMMA project)
School of computer science – Carnegie Mellon Uni.− Prof. Norman M. Sadeh (Mobile Commerce Laboratory Director,
SCS CMU, Free University of Amsterdam, European Commission)
− Members of myCampus team and logistic of ISRI− BBN, IBM, HP, Symbol and Boeing − IST Program (SWAP project)− Air Force Research Laboratory (contract F30602-02-2-0035)
− Defense Advanced Research Project Agency (DARPA) (contract F30602-98-2-0135)
(c) CMU - Sadehlab
Demo: CoMMA Ontology interfaceDemo: CoMMA Ontology interface
(c) CMU - Sadehlab
CoMMA: profile-based retrievalCoMMA: profile-based retrieval
Demo: interface CoMMA Demo: interface CoMMA
specified by INRIA, implemented by ATOS-Originspecified by INRIA, implemented by ATOS-Origin
Demo: CoMMA annot. allocation interactionsDemo: CoMMA annot. allocation interactions
cfp
bids
result
1 mediator 3 archivists
Demo: CoMMA query solving interactionsDemo: CoMMA query solving interactions
[email protected] / [email protected] / 8181Demo: InfoBridge virtual postersDemo: InfoBridge virtual posters
[email protected] / [email protected] / 8282
[email protected] / [email protected] / 8383AcknowledgmentsAcknowledgments
ACACIA Laboratory - INRIA Sophia Antipolis− Dr. Rose Dieng-Kuntz (Research Director – ACACIA project leader)
− Members of ACACIA team and logistics of INRIA Sophia− ATOS-Origin, CSTB, Deutsch Telekom T-Nova, Italia
Telecom, LIRMM and University of Parma − IST Program (CoMMA project)
School of computer science – Carnegie Mellon Uni.− Prof. Norman M. Sadeh (Mobile Commerce Laboratory Director,
SCS CMU, Free University of Amsterdam, European Commission)
− Members of myCampus team and logistic of ISRI− BBN, IBM, HP, Symbol and Boeing − IST Program (SWAP project)− Air Force Research Laboratory (contract F30602-02-2-0035)
− Defense Advanced Research Project Agency (DARPA) (contract F30602-98-2-0135)