do software agents know what they talk about? agents and ontology patdc patrick de causmaecker,...
TRANSCRIPT
Do software agents know what they talk about?
Agents and Ontologyhttp://allserv.kahosl.be/
~patdc Patrick De Causmaecker,
April 2004
April 2004 Agents and Ontology [email protected] 2
Overview Agents Ontology Communication RDF Semantic Web Sample Implementations
April 2004 Agents and Ontology [email protected] 3
Where to apply User interface
Personal representative for the user, Metaphorically enforced image of functionality
Distributed systems Asynchronicity, autonomy, unreliable
communication Algorithmic paradigm
E.g. optimization problem, agents incorporate separate strategies
E.g. heat distribution in a plate
April 2004 Agents and Ontology [email protected] 4
Co-ordination techniques Organisational structuring
Structure a priory Master-slave through dispatching model Master-slave with a blackboard
Highly controlled, lower autonomy May detoriate speed, reliability,
robustness, graceful decay, bottleneck characteristics, concurrency
Blackboard is a potential bottleneck
April 2004 Agents and Ontology [email protected] 5
Master-slave models(Dispatching)
Master
Slave Slave
BlackboardPost
Read
April 2004 Agents and Ontology [email protected] 6
Contracting Two interchangable roles:
Manager defines subproblems, co-ordinates the whole problem
Contractor executes subtask (evt subcontractors) Bidding proces to find a solution
Task announcement (manager) Task evaluation (contractors) Proposal (contractors) Evaluation of proposal and assignment (manager) Co-ordination and evaluation of whole (manager)
April 2004 Agents and Ontology [email protected] 7
Contract Net Protocol (CNP) Advantages
Dynamic task allocation for better contracts Agent population is arbitrarily dynamic Load balancing is natural through bidding Fault tolerance is high
Restrictions No conflict resolution Passive, generous, honest agents Communication intensive, high network load
April 2004 Agents and Ontology [email protected] 8
Multi agent planning Determine all actions of agents before startup Conflicts and redundancy are removed in the
planning process Centralised planning by a coordinating agent
Resembles master slave approach Distributed planning by agent negotiation
High communication and information needs in the agents
Continuous trade off between complexity, sophistication and emergent behaviour
April 2004 Agents and Ontology [email protected] 9
Ontology Communication Logic, Psychology and Language Examples Expression of Ontology KIF, KQML
April 2004 Agents and Ontology [email protected] 10
Communication
April 2004 Agents and Ontology [email protected] 11
Communication
April 2004 Agents and Ontology [email protected] 12
Communication
April 2004 Agents and Ontology [email protected] 13
Communication Between Agents Light weight
Telescript, Java, Limbo, Tcl, Python Sufficient for state info and messaging Do not support rules and ontology
Agent Communication Languages Performative Service Content Controll add-in
April 2004 Agents and Ontology [email protected] 14
Agent Communication Languages (ACL) Performative
Protocols for information interchange Service
Requires basic mutual understanding Content
Domain dependent Ontology support Domain knowledge Complex semantics
Request-service
Buy(Flowers)
#$US-DollarIsa:#$UnitOfMoney#$FlowerPlant#$BiologicalTaxonIsa:#$ExistingObjectType…
April 2004 Agents and Ontology [email protected] 15
Agent Communication Languages (ACL) Control add-ins
Which resources What code What language Mobile or not? Allow agents to think about their own
situation.
April 2004 Agents and Ontology [email protected] 16
Example ACL: KQML
(ask-one : sender joe: content (PRICE IBM ?price): receiver stock-server: reply-with ibm-stock: language LPROLOG: ontology NYSE-TICKS)
(tell: sender stock-server: content (PRICE IBM 14): receiver joe: in-reply-to ibm-stock: language LPROLOG: ontology NYSE-TICKS)
April 2004 Agents and Ontology [email protected] 17
Example ACL: KQMLClass NameBasisquery Evaluate, ask-if, ask-about, ask-one, ask-
all
Mutli-response Stream-about, stream-all, eos
Answer Reply, sorry
Generic info Tell, achieve, cancel, untell, unachieve
Generator Standby, ready, next, rest, discard, generator
Ability Advertise, subscribe, monitor, import, export
Network Register, unregister, forward, broadcast, route
Performatives in KQML
April 2004 Agents and Ontology [email protected] 18
Example ACL: KIF(salary 015-46-3946 civil-eng 42000)(salary 026-40-9152 comp-sc 36000)(> (*(width chip1) (length chip1)) (*(width chip2)(length chip2)))(=>(and (real-number ?x) (even number ?n)) (>(exp ?x ?n) 0))(interested Peter ‘(salary ,?x ,?y ,?z))(progn (fresh line t) (print “Hello”)(fresh line t))
Simple information
Relationship
Logical statement
Meta knowledge (‘,)Program code
April 2004 Agents and Ontology [email protected] 19
Standards: FIPA Foundation for Intelligent Physical
Agents (http://www.fipa.org)
Agent management
IA
IAUser
Interface
API
UserFIPAACL
FIPA Agent-software
FIPA UI FIPA
April 2004 Agents and Ontology [email protected] 20
FIPA ACL(ask-if:sender I:receiver J:content (=(weather Belgium (May 2001)) cold):ontology meteorology:reply-with query-17) (inform
:sender J:receiver I:content true:in-reply-to query-17)
April 2004 Agents and Ontology [email protected] 21
FIPA ACL
(inform:sender coala-agent:receiver speaker-agent:content (Line_quote(coalaspeaker,5),10):in-reply-to first-conference:ontology coala-conference:language prolog)
April 2004 Agents and Ontology [email protected] 22
FIPA Agent Management
Internal Message Transport
Agent
Agent Communication
Channel
DirectoryFacilitator
AgentManagement
System
Software
Agent Platform
April 2004 Agents and Ontology [email protected] 23
FIPA Software Integration
LegacyDatabase
SQLDatabase
Webserver
WrapperAgent
WrapperAgent
ClientAgent
ARB query
Execute
Dedicatedmapping
Http
ORB
April 2004 Agents and Ontology [email protected] 24
Communication HTML
Hyper Text Markup Language (Human Transfer of Meaningfull
Layout) XML
eXtensible Markup Language (eXclusively Meaning, no Layout)
(“Meaning” should be “Content”)
April 2004 Agents and Ontology [email protected] 25
Logic, Psychology and Language (Sowa) Databases contain numbers,
strings, BLOB’s (Binary Large Objects)
Catalogs contain part numbers Directories contain addresses Terminologies contain terms (Ontologies contain categories)
April 2004 Agents and Ontology [email protected] 26
Semiotics Theorie of signs
Charles Sanders Peirce Ferdinand de Saussure
Signs are closely interconnected One can introduce metasigns,
metametasigns,… But the real meaning is in the real
world
April 2004 Agents and Ontology [email protected] 27
Semiotics Markup languages: SGML family
Clean separation between formatting and meaning
XML (successor of SGML) tags represent semantics
Formatting is put in style sheets (CSS, XSL, Xschema)
XML still lacks guidelines for representing semantics
April 2004 Agents and Ontology [email protected] 28
Semiotics “A resource can be anything that has identity.
Familiar examples include an electronic document, an image, a service (e.g. “today’s weather report for Los Angeles”), and a collection of other resources. Not all resources are network “retrievable”; e.g., human beings, corporations, bound books in a library can also be considered resources (Berners-Lee, 1998).
Familiar resources are electronic documents, images,… Humans are “unfamiliar”
Processes, people, intentions should be included in the ontologies for the web.
April 2004 Agents and Ontology [email protected] 29
Semiotics Resource Description Framework:
PropertyTypes do not stand by themselves (Author, Title, Date,…) form packages
Can be elaborated upon by competing agents (OCLC, LOC,…)
Packages will be called “Vocabularies” Problem: Date on a book is the same as the date
on a bottle of wine, or the date of an event like the murder on president Kennedy. Human readers will immediately know that
these dates can be compared, but how will machines “know”?
April 2004 Agents and Ontology [email protected] 30
Semiotics “The RDF should define a marketplace
for vocabularies. They can be invented, advertised, sold. The good ones will survive and prosper” (Bray 1998)
Important: catalogs on paper could be compared by humans, computer catalogs must be compared by machines!
April 2004 Agents and Ontology [email protected] 31
Semiotics XML and RDF are just a first step
XML makes things a lot easier But standardisation of vocabularies will not
automatically bring interoperability Realities and differences of meanings must
be taken into account Needed are methods for defining and
translating vocabularies
April 2004 Agents and Ontology [email protected] 32
Example “largest” is used for alphabetic
comparison
Meant was numerical comp or aria or population.
Q: What is the largest state of the US?A: Wyoming!
April 2004 Agents and Ontology [email protected] 33
Logic Second branch of semiotics:
semantics (Peirce’s “logic proper”) When is a pattern of signs
representing a true proposition about the things the signs represent?
From syntactic relations between signs to semantic relations between signs and the world: five primitives
April 2004 Agents and Ontology [email protected] 34
Five primitivesTable 1. Five semantic primitives
Prim. Informal Meaning English Example
Existence Something exists. There is a dog.
Co-reference
Something is the same as something.
The dog is my pet.
Relation Something is related to something.
The dog has fleas.
Con-junction
A and B. The dog is running, and the dog is barking.
Negation Not A. The dog is not sleeping.
April 2004 Agents and Ontology [email protected] 35
Other operatorsTable 2. Three defined logical operators
Oprtr. English Example Translation to Primitives
Uni-versal
Every dog is barking. not(there is a dog and not(it is barking))
Impli-cation
If there is a dog, then it is barking.
not(there is a dog and not(it is barking))
Disjunction
A dog is barking, or a cat is eating.
not(not(a dog is barking) and not(a cat is eating))
April 2004 Agents and Ontology [email protected] 36
Other operators These operators are not primitive
because not observable SQL contains an or but not an
implication and not “for all” For all must be expressed by using
two times “not exists”
April 2004 Agents and Ontology [email protected] 37
Existential graphs Every human has two distinct parents who are also
humans First study the simpler
Some human has a parent who is also human
(x)(y)(Human(x) HasParent(x,y) Human(y))
April 2004 Agents and Ontology [email protected] 38
Existential Graphs Some human has one parent who is human and another parent who is human and the two
are not identical
(x)(y)(z) (Human(x) HasParent(x,y) Human(y) HasParent(x,z) Human(z) yz)
April 2004 Agents and Ontology [email protected] 39
Existential Graphs Every human has two distinct parents
who are human There is no human who has not two
distinct parents who are also human ~(x)(Human(x) ~(y)(z) (HasParent(x,y)
Human(y) HasParent(x,z) Human(z) yz))
(x)(Human(x) (y)(z) (HasParent(x,y) Human(y) HasParent(x,z) Human(z) yz)).
April 2004 Agents and Ontology [email protected] 40
Existential graphs
April 2004 Agents and Ontology [email protected] 41
Conceptual graphs
Box: quantification
(concept node)
Relation node
Dotted line: Coreference
Solid line: relation
April 2004 Agents and Ontology [email protected] 42
Conceptual graphs
April 2004 Agents and Ontology [email protected] 43
Conceptual graphs (x:Human)(s:Set)(ys) (Count(s,2) HasParent(x,y) Human(y)).
{*}@2 maps to two variables: s, ranging over sets, and y ranging over elements of s
April 2004 Agents and Ontology [email protected] 44
Conceptual graphs Simpler and more natural is the
introduction of “has”
Parent is a “role” word such as spouse, pilot, teacher…
April 2004 Agents and Ontology [email protected] 45
Conceptual graphs The definition of the HasParent
relation requires two formal parameters
The HasParent relation is defined as a relation between two humans; the first has a parent who is the second.
April 2004 Agents and Ontology [email protected] 46
Logic, summary
1. Logic has a wide variety of graphic and linear notations (EG, CG, KIF, SQL, RDF)
2. Represent logic op’s in controlled natural languages
3. Logic has rules allowing to transfer a representation to another provided there is an ontology
April 2004 Agents and Ontology [email protected] 47
Combining logic with ontology Logic makes no presumptions
about what exists. Knowledge about a domain needs
an ontology to express it in.
(x:Cat)(y:Chase)(z:Mouse) (name(x,"Yojo") agnt(y,x) thme(y,z))
April 2004 Agents and Ontology [email protected] 48
Combining logic with ontology Alternatively: (x:Cat)(y:Mouse)
(name(x,"Yojo") chases(x,y)) (using the linear notation for CG’s)
Chases ::= [Animate: 1](Agnt)[Chase](Thme)[MobileEntity: 2]
[Cat: Yojo](Chases)[Mouse].
April 2004 Agents and Ontology [email protected] 49
Combining logic with ontology
April 2004 Agents and Ontology [email protected] 50
Combining logic with ontology
April 2004 Agents and Ontology [email protected] 51
Combining logic with ontology Sowa developed CG in 1984 Independently Kamp had
developed his “Discourse Representation Structures” (1981)
Sowa and Way proved them semantically equivalent
April 2004 Agents and Ontology [email protected] 52
Where are we?
April 2004 Agents and Ontology [email protected] 53
Further reading See “Handouts”
Ontology, Metadata and Semiotics (Sowa)
April 2004 Agents and Ontology [email protected] 54
Introduction Tim Berners-Lee’s vision of the
future of the WWW Until now: human-readable Web T B-L: “The Semantic Web
approach develops languages for expressing information in a machine processable form”
April 2004 Agents and Ontology [email protected] 55
Aim of the Semantic Web To solve real problems in
communication: Radically improving our ability to find,
sort and classify information To make Web information practically
processable by a computer
April 2004 Agents and Ontology [email protected] 56
Architecture of the SW
April 2004 Agents and Ontology [email protected] 57
XML
Markup language (like HTML) Designed to describe data XML does NOT do ANYTHING: just stores
information in a structured way. Tags are not predefined (unlike HTML
tags) Uses a DTD (Document Type Definition) to
describe the data.
April 2004 Agents and Ontology [email protected] 58
HTML versus XML
XML & HTML were designed with different goals: XML was designed to describe data &
to focus on what data is HTML was designed to display data &
to focus on how data looks
XML is NOT a replacement for HTML
April 2004 Agents and Ontology [email protected] 59
XML: architecture
Description of things (resources) & their
types
Describing relationships between types & things
April 2004 Agents and Ontology [email protected] 60
XML (http://www.w3.org/XML/)
eXtensible Markup Language: document mark-up language encodes the text
&
defines the document structure (provides meta-information)
April 2004 Agents and Ontology [email protected] 61
Resource Description Framework
GOAL: “machine-readable” to “machine-understandable”
Documents + information: modelled as resources
Information about these resources: modelled as properties.
XML: is used as its encoding syntax
April 2004 Agents and Ontology [email protected] 62
RDF: application areas Resource discovery (provide better
search engine capabilities) Cataloging (describing content & content
relationships available at a web site) Facilitate knowledge sharing & exchange
(by intelligent software agents) Content rating …
April 2004 Agents and Ontology [email protected] 63
RDF: example Article X has creator Albert
Einsteinhttp://www.kahosl.be/ArticleX.dml
Albert Einstein
creator
<rdf:RDFxmlns:rdf=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:s=http://www.kahosl.be/rdfschema>
<rdf:Description about=http://www.kahosl.be/ArticleX.dml><s:Creator>Albert Einstein</s:Creator>
</rdf:Description></rdf:RDF>
resource valueproperty
April 2004 Agents and Ontology [email protected] 64
Multiple Properties and Statementshttp://www.kahosl.be/ArticleX.dml
Albert Einstein
CREATOR
On the motion of objects in a fluid
TITLE
ArticleX has creator A.E. and the title On th
motion…
April 2004 Agents and Ontology [email protected] 65
Multiple Properties and Statements
<RDFxmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/ArticleX.dml>
<dc:CREATOR>Albert Einstein</dc:CREATOR><dc:TITLE>On the motion of objects in a
fluid</dc:TITLE> </Description></RDF>
April 2004 Agents and Ontology [email protected] 66
Multiple statements
http://www.kahosl.be/ArticleX.dml
Albert Einstein
CREATOR
http://www.kahosl.be/ArticleY.dml
CREATOR
April 2004 Agents and Ontology [email protected] 67
Multiple Statements <RDF
xmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/ArticleX.dml>
<dc:CREATOR>Albert Einstein</dc:CREATOR> </Description>
<Description about=http://www.kahosl.be/ArticleX.dml>
<dc:CREATOR>Albert Einstein</dc:CREATOR> </Description></RDF>
April 2004 Agents and Ontology [email protected] 68
Resource valued properties
http://www.kahosl.be/ArticleX.dml CREATOR
On the motion of objects in a fluid
TITLEAlbert Einstein
mailto:[email protected]
TITLE
April 2004 Agents and Ontology [email protected] 69
Resource valued properties
<RDFxmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/ArticleX.dml> <dc:CREATOR>
<Description about=mailto:[email protected]>
<dc:TITLE>Albert Einstein</dc:TITLE>
</Description>
</dc:CREATOR><dc:TITLE>On the motion of objects in a
fluid</dc:TITLE> </Description>
</RDF>
April 2004 Agents and Ontology [email protected] 70
Alternative using the resource attribute
<RDFxmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/ArticleX.dml> <dc:CREATOR resource=mailto:[email protected] />
<dc:TITLE>On the motion of objects in a fluid</dc:TITLE>
</Description> <Description about=mailto:[email protected]>
<dc:TITLE>Albert Einstein</dc:TITLE> </Description>
</RDF>
April 2004 Agents and Ontology [email protected] 71
This method offers new possibilities
http://www.kahosl.be/ArticleX.dml CREATOR
Albert Einstein
mailto:[email protected]
TITLE
http://www.kahosl.be/ArticleY.dml
CREATOR
April 2004 Agents and Ontology [email protected] 72
This method offers new possibilities<RDF
xmlns="http://w3.org/TR/1999/PR-rdf-syntax-19990105#" xmlns:dc="http://purl/org/DC/">
<Description about="http://www.kahosl.be/ArticleX.dml"> <dc:CREATOR resource="mailto:[email protected]"/>
</Description>
<Description about="http://www.kahosl.be/ArticleY.dml"> <dc:CREATOR resource="mailto:[email protected]"/>
</Description>
<Description about="mailto:[email protected]"> <dc:TITLE>Albert Einstein</dc:TITLE>
</Description>
</RDF>
April 2004 Agents and Ontology [email protected] 73
RDF Containers RDF has facilities to put elemens into
bags (Bag), sequences (Seq) and alternatives (Alt)
Can be used to indicate that a document was written by a number of people, that the musicians on the disc are the laureates of the Q.E. competition for violin of 2001 or that one of a list of mirrorsites should be chosen.
April 2004 Agents and Ontology [email protected] 74
A Bag
http://www.kahosl.be/ArticleY.dml
Julian Schwingercreator
Infinities in QED
TITLERichard Feynman
April 2004 Agents and Ontology [email protected] 75
A Bag with two members
<RDFxmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/ArticleY.dml>
<dc:CREATOR> <Bag> <li>Julian Schwinger</li> <li>Richard Feynman</li> </Bag> </dc:CREATOR>
<dc:TITLE>Infinities in QED</dc:TITLE> </Description></RDF>
April 2004 Agents and Ontology [email protected] 76
A Seqhttp://www.kahosl.be/QECompetition.org
Laureate 1
CONTRIBUTOR
Violin 2001
TITLE
Laureate 2
Laureate 3
Laureate 4
Laureate 5
Laureate 6
April 2004 Agents and Ontology [email protected] 77
A Seq with six members <RDF
xmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/QECompetition.org>
<dc:CREATOR> <Seq>
<li>Laureate 1</li><li>Laureate 2</li><li>Laureate 3</li><li>Laureate 4</li><li>Laureate 5</li><li>Laureate 6</li>
</Seq> </dc:CREATOR>
<dc:TITLE>Violin 2001</dc:TITLE> </Description></RDF>
April 2004 Agents and Ontology [email protected] 78
Alternatives
http://www.kahosl.be/QECompetition.org
PUBLISHER
Violin 2001
TITLE
http://www.fh-konstanz.de/QECompetition.org
http://www.eigsi.fr/QECompetition.org
PUBLISHER
W. Erben
April 2004 Agents and Ontology [email protected] 79
An Alt with two elements<RDF xmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105# xmlns:dc=http://purl/org/DC/><Description about=http://www.kahosl.be/QECompetition.org> <dc:PUBLISHER> <Alt> <li resource=http://www.fh-konstanz.de/QECompetition.org/> <li resource=http://www.eigsi.fr/QECompetition.org/> </Alt> </dc:PUBLISHER> <dc:TITLE>Violin 2001</dc:TITLE></Description><Description about=http://www.fh-konstanz.de/QECompetition.org/> <dc:PUBLISHER>W. Erben</dc:PUBLISHER></Description></RDF>
April 2004 Agents and Ontology [email protected] 80
Statements about containers
http://www.kahosl.be/ArticleY.dml
Julian SchwingerCREATOR
Richard Feynman
DESCRIPTION
Formed a famous team
April 2004 Agents and Ontology [email protected] 81
Statements about containers
<RDFxmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/ArticleY.dml>
<dc:CREATOR> <Bag ID="FamousTeam"> <li>Julian Schwinger</li> <li>Richard Feynman</li> </Bag> </dc:CREATOR> </Description> <Description about="#FamousTeam">
<dc:DESCRIPTION>They formed a famous team</dc:DESCRIPTION> </Description></RDF>
April 2004 Agents and Ontology [email protected] 82
Statements about all members in a container
http://www.kahosl.be/ArticleY.dml
Julian SchwingerCREATOR
Richard Feynman
Was at Los Alamos
DESCRIPTION
April 2004 Agents and Ontology [email protected] 83
Statements about all members in a container
<RDFxmlns=http://w3.org/TR/1999/PR-rdf-syntax-19990105#xmlns:dc=http://purl/org/DC/> <Description about=http://www.kahosl.be/ArticleY.dml>
<dc:CREATOR> <Bag ID="FamousTeam"> <li>Julian Schwinger</li> <li>Richard Feynman</li> </Bag> </dc:CREATOR> </Description> <Description aboutEach="#FamousTeam">
<dc:DESCRIPTION>Was at Los Alamos</dc:DESCRIPTION> </Description></RDF>
April 2004 Agents and Ontology [email protected] 84
RDF Exercise
Name
http://www.kahosl.be/ArticleY.dml
Julian Schwinger
Creator
Richard Feynman
1918 1994
19881918
Creator
Birth year Death year
Death yearBirth yearName
XOL: XML-based Ontology exchange Language
Pangea Systems Inc. & Artificial Intelligence Center
SRI International
April 2004 Agents and Ontology [email protected] 86
XOL
Ontology definitions that XOL is designed to encode include: schema information (class def.) and non-schema information (object def.).
The syntax is based on XML and the semantics on OKBC-Lite
Design is generic: a single set of XML tags (defined in the DTD) can describe every ontology.
Simplified form of the Knowledge Model for the OKBC (http://www.ai.sri.com/~okbc/). This Knowledge Model provides definitions for concepts, relations, objects and constraints.
Structure of strings
Meaning of a string
April 2004 Agents and Ontology [email protected] 87
XOL (Example)<class><name>person</name></class><slot>
<name>age</name><domain>person</domain><value-type>integer</value-type><numeric-max>150</numeric-max>
</slot><individual>
<name>fred</name><type>person</type><slot-values>
<name>age</name><value>35</value>
</slot-values></individual>
April 2004 Agents and Ontology [email protected] 88
XOL Ontology Example<?xml version="1.0" ?><!DOCTYPE module SYSTEM "module.dtd"><module><name>genealogy</name><kb-type>ocelot-kb</kb-type><package>user</package>
<class><name>person</name><documentation>The class of all persons.
</documentation></class>
April 2004 Agents and Ontology [email protected] 89
XOL Ontology Example<class><name>man</name><documentation>The class of all persons who define
their gender as male.</documentation><subclass-of>person</subclass-of></class><class><name>woman</name><documentation>The class of all persons who define
their gender as female. </documentation><subclass-of>person</subclass-of></class>
April 2004 Agents and Ontology [email protected] 90
XOL Ontology Example<slot><name>year-of-birth</name><documentation>An integer that represents the year
the person was born.</documentation><domain>person</domain><slot-cardinality>1</slot-cardinality><slot-numeric-min>1800</slot-numeric-min><slot-value-type>integer</slot-value-type></slot><slot><name>brothers</name>
April 2004 Agents and Ontology [email protected] 91
References XML & RDF
XML Bible by Eliotte Rusty Harold http://metalab.unc.edu/xml
Ontology http://www.diffuse.org/reports.html http://www.ontology.org/
OIL http://www.ontoknowledge.org/oil/
DAML http://www.daml.org http://www.ksl.stanford.edu/projects/DAML/
April 2004 Agents and Ontology [email protected] 92
Timetabling: The Initial Problem Lectures in a school or university have
to be scheduled (rostered). In each session a teacher must meet a class in a room and teach them a subject:
No teacher can teach two lectures at the same time, no class can take two subjects at the same time, no room can accommodate two sessions at the same time.
April 2004 Agents and Ontology [email protected] 93
The Initial Problem Furthermore, each class must have a
predfined set of lectures each week, each teacher can teach a set of subjects, each teacher has a maximum number of lectures/week, each room can accommodate a maximum number of students, each room has facilities for a number of subjecte, each student should have one free day, a teacher should not be scheduled first and last timeslot of the day,….
April 2004 Agents and Ontology [email protected] 94
Related Problems Timetabling is an instance of the
more general class called rostering Nurse rostering Personnel Material resources Transportation Consultants
April 2004 Agents and Ontology [email protected] 95
Initial Problem Solutions Exact methods: NP completeness
Mixed integer programming Heuristics: at each iteration step, select
the session that is likely to cause most problems and try to schedule it.
Meta heuristics: Tabu Search, Genetic Algorithms, Simulated
annealing, … Hyper heuristics:
Collect a set of heuristics and apply a meta heuristic to select the right heuristic at each stage
April 2004 Agents and Ontology [email protected] 96
A Possible MAS Approach Represent each teacher, class,
room, by an agent Define a negotiation protocol along
Master slave Coalition formation …
Let the agents negotiate until a feasible timetable emerges
April 2004 Agents and Ontology [email protected] 97
Advantages of a MAS Constraints are naturally build into
the individual agents Distribution is easy which makes it
possible to use available computing power (e.g. all idle PC's)
The system is flexible, introduction of a new teacher, class, subject… is achieved by adding new agents
April 2004 Agents and Ontology [email protected] 98
Possible Drawbacks of a MAS The agent community must strive
towards a feasible timetable. The system should be continuous, a
small change (one new optional subject) cannot change the whole timetable
The system should be fair, integrated over time each of the teachers, classes,… must take equal shares of disadvantageous schedules
April 2004 Agents and Ontology [email protected] 99
A Non-solution to the Drawbacks These drawbacks could be coded in a
global goal function representing the global good for the system.
Such approaches have been proposed (satisfycing games)
This global goal function is a centralised concept, contradictory to the decentralised approach in a MAS.
Agents should be considered myopic.
April 2004 Agents and Ontology [email protected] 100
Sidepath: Centralised Concepts in a Distributed system Hardware: One computer
Contains all data Coordinates all processes Handles synchronisation Is resposible for the time keeping
Software: One algorithm Distributes all the work Oversees all processes and decides conflicts
Software: One table Describes all available diskspace Describes the structure of the network
April 2004 Agents and Ontology [email protected] 101
Sidepath: Disadvantages of Centralised Concepts
Centralisation Causes bottlenecks Limits scalability Is a critical weak point in the system Slows down the concurrent operation
April 2004 Agents and Ontology [email protected] 102
Sidepath: Alternatives for centralised concepts
Voting systems Task redistribution Mirroring Distributed directories Distributed filesystems Algorithms that can work with
incomplete information
April 2004 Agents and Ontology [email protected] 103
Disadvantages of Centralised Concepts in a MAS Example: A central function evaluting how
'good' a timetable is. If a new agent is introduced (new class) the
mean value of the function may change. The function cannot be compared with
previous results. Its evaluations requires knowledge of the
complete situation. This means this information must be available at all times, especially during concurrent processing by the agents
April 2004 Agents and Ontology [email protected] 104
Disadvantages of Centralised Concepts in a MAS
Example: A measure for continuity Evaluation of the measure is complex The concurrent agents will access it
independently. There is no control on the resulting
complexity.
April 2004 Agents and Ontology [email protected] 105
Disadvantages of Centralised Concepts in a MAS
Example: Fairness It is very unnatural to build a fairness
measure into each individual agent. It requires historical information Fairness should be emergent
April 2004 Agents and Ontology [email protected] 106
Myopic Agents In a really distributed MAS agents will not
have access to central information, intelligence.
They will not be allowed to execute algorithms that process all data in the system
The properties that refer to this kind of information must be emergent, they must intrinsically follow from the basic interactions and the behaviour of the agents.
April 2004 Agents and Ontology [email protected] 107
Myopic agents: Emergent Behaviour Realising Goals
E-commerce application have no global goal. It is expected that the interactions between the agents, as defined by market mechanisms, lead to an economically well function global system.
April 2004 Agents and Ontology [email protected] 108
Myopic agents: Emergent Behaviour Realising Goals
Timetabling applications do have global goals or requirements. The emergent behaviour must meet these requirements.
So we will need an understanding of how the elementary interactions influence the system.
April 2004 Agents and Ontology [email protected] 109
Myopic agents: Emergent Behaviour Realising Goals
Difficult: Theory of democracy Game theory Human decision making versus
machine decision making.
April 2004 Agents and Ontology [email protected] 110
Myopic agents: Emergent Behaviour Realising Goals Research, results, metaphors
available from Physics: sand heap Physics: cristal structure Physics: critical temperature Biology: swarms Biology: evolution Biology: bone growth
April 2004 Agents and Ontology [email protected] 111
Myopic agents: Emergent Behaviour Realising Goals These results are all elementary
when compared to the complexity of a timetabling system.
At best, some results may be transferred.
At the least, the results may be used as metaphors, guidelines,… and empirical results may be generated.
April 2004 Agents and Ontology [email protected] 112
Classical Solutions are ' ad hoc'
Constructs, architectures, techniques have been invented to relieve the problems
Typically, an approach has been proposed, criticised and empirically investigated
April 2004 Agents and Ontology [email protected] 113
Back to Timetabling A MAS can work as an alternative
heuristic to solve timetabling problems Research issues:
Efficiency of such an approach Flexibility with respect to new constraints Scalability and extendability of the
systems Controllable emergent behaviour
April 2004 Agents and Ontology [email protected] 114
Extended Timetabling Timetabling is not isolated from other
planning activities Typically a number of organisational
levels are present: Teachers and students Competence centers Departments Schools The university
April 2004 Agents and Ontology [email protected] 115
Extended Timetabling At each level, separate units exist
and do interact. It is natural to model this
interaction in an agent architecture Distributed Myopic Preferences and constraints are
discussed in negotiations
April 2004 Agents and Ontology [email protected] 116
Leveled Timetabling So we will consider several levels
in a timetabling application, corresponding to the organisational levels in the real world system.
At each level, the appropriate approach must be selected.
MAS is always a candidate and its behaviour must be investigated.
April 2004 Agents and Ontology [email protected] 117
Timetabling At each level the basic research
questions will be the same: Performance Efficiency in the translation of the
requirements Flexibility Extendibility Scaling properties Emergent behaviour.
April 2004 Agents and Ontology [email protected] 118
Technology These questions determine the
fitness of a technological solution for the problem at hand.
We will need OS support for ontology, communication, distribution, mobility, autonomy
On the other hands, standards may be too slow for our purposes (e.g. ACL)
April 2004 Agents and Ontology [email protected] 119
Example Problem Model
Need Negotiation
Conclusion
April 2004 Agents and Ontology [email protected] 120
Problem Loosely interconnected units
Departments in a university Hierarchy
Units, super units,… Level of detail goes down when one
goes up in the hierarchy Each level will have its own
constraints
April 2004 Agents and Ontology [email protected] 121
Problem Lowest level
Timetabling algorithms produce rosters for students, teachers, rooms,…
“Teaching unit” level A unit is concerned with a subject, teaching
is in several student programmes Department level
Resources are shared between departments, e.G. Rooms, …
…
April 2004 Agents and Ontology [email protected] 122
Reciprocal Benefits Timetabling as an example domain
Combinatorial complexity Optimisation domain Real world problems Benchmarks
April 2004 Agents and Ontology [email protected] 123
Computational Model The aim is to set up a model that
can be used at all levels of the problem definition
We will start with simpleminded approaches and see how far we can get from the point of view of Modelling Optimisation
April 2004 Agents and Ontology [email protected] 124
The Most Fine Grained Level
The smallest grains in a timetabling problem are the sessions
Design a model in which sessions are represented by agents
The main objective is to investigate a distributed computational model
This may not be the final representation; Its main advantage is its simplicity
April 2004 Agents and Ontology [email protected] 125
Basic Problem Initially, only consider hard constraints
involving individual sessions, i.e. place and time conflicts
A sessions is characterised by A teacher A student group A room A timeslot …
April 2004 Agents and Ontology [email protected] 126
Basic Problem Simplifying assertions
Rooms, teachers, student-groups have been assigned
Student-groups do not intersect The only free parameter left is the
timeslot So we arrive at:
April 2004 Agents and Ontology [email protected] 127
Basic ProblemSession
Teacher t1, t2, t3, …
StudentGroup s1, s2, s3, …
Room r1, r2, r3, …
Timeslot 1, 2, 3, …
Assign timeslots to sessions subject to s1.Timeslot=s2.Timeslot=>s1.teacher <> s2.teacher,s1.room <> s2.room,s1.studentgroup <> s2.studentgroup
April 2004 Agents and Ontology [email protected] 128
Generalised Basic Problem
Agent
Dimension1 Domain1
Dimension2 Domain2
Dimension3 Domain3
Position Field
…
Assign positions to agents subject to a1.Position=a2.Position=>a1.Dimension1 <> a2.Dimension,a1.Dimension2 <> a2.Dimension2,…
April 2004 Agents and Ontology [email protected] 129
Basic Distributed Algorithm Each agent continuously
Contacts some other agents at random Checks with those on conflicts In case of conflict the contacted agent
generates some random positions and finds the position among those with the least conflicts
It moves to this position if the number of conflicts goes down
If the number of conflicts goes up, it moves only with a certain probability
April 2004 Agents and Ontology [email protected] 130
Presupposed Is A centralised source of information
about the number of conflicts at a certain position A convenient way to store this
information is through a folding function :
(p,d,v) = number of agents at position p for which dimension d has value v
April 2004 Agents and Ontology [email protected] 131
Surface In terms of the constraints can be
rephrased as
Let us define the surface covered by the agent population as
For every position p, dimension d and value v
(p,d,v) {}
Surface = number of position, dimension, value
triples (p,d,v) for which (p,d,v) > 0
April 2004 Agents and Ontology [email protected] 132
Maximum Surface Since each agent has exactly one value for each
dimension, we have (Na agents, Nd dimensions)
Satisfaction of all constraints, (p,d,v) {}, is thus equivalent to
And we have reached a maximisation problem
Sum over all triples (p,d,v) of (p,d,v) = Na*Nd
Surface = Na*Nd
April 2004 Agents and Ontology [email protected] 133
Trivial Cases If the number of dimensions is 0, the
constraints are satisfied iff at each position there is at most one agent The algorithm converges if there are
less agents than positions since the agents tend to move to empty positions
If there is only one dimension, the problem decomposes into the previous one for each value of the dimension
April 2004 Agents and Ontology [email protected] 134
Nontrivial Cases If Nd > 1, situations may occur in
which none of the agents can move without decreasing the surface
Convergence of the algorithm will now critically depend upon the acceptance of worse positions
We may want to alternate between intensification and diversification regimes
April 2004 Agents and Ontology [email protected] 135
Regime Change One can expect that the agents
could better be switching in group(s) than separately
One can use techniques of coalition formation here
April 2004 Agents and Ontology [email protected] 136
Related Problems The dimensions of the agents create
links between them which define the constraints
The problem can be seen as a graph colouring problem
It was our goal to model this situation without globally defining this network
Distributed approaches to the graph colouring problem will be applicable here
April 2004 Agents and Ontology [email protected] 137
Related Methods The ERA system of Liu, Jing and Tang is
based on a similar model and algorithm Our model is a special case In their 2001 Artificial Intelligence paper
the graph colouring problem is an example
Move selection is based on three probabilities: pleastmove, pbettermove, prandommove
There is no concept of a regime
April 2004 Agents and Ontology [email protected] 138
Central Information Broker The information on the folding at
a certain position can be replaced by a coalition of agents informing each other about potential problems
Removes the need for a central component
April 2004 Agents and Ontology [email protected] 139
The Network The relationships between the agents
define a network This can be kept dynamical and only
partly defined Each agent may keep a (finite size) list
of neighbours which he encountered before
The list is used primarily for conflict checking
April 2004 Agents and Ontology [email protected] 140
Personalised Domains Thinking about sessions again, not
fixing rooms a priory this time Some sessions may have different
(overlapping) sets of available rooms The neighbour concept may then
lead to a situation in which a session has no position available where it does not conflict with any of its neighbours
April 2004 Agents and Ontology [email protected] 141
Personalised Domains This is a non symmetrical conflict
since the neighbouring sessions may have larger room sets
The session discovering this situation may Simply do nothing and wait until the
algorithm solves the problem Send messages to the conflicting
neighbours to do something about this
April 2004 Agents and Ontology [email protected] 142
More Complicated Constraints Soft constraints, capacity
constraints … Are of a different nature than the
ones considered here As long as they are sufficiently
local, they may still be checked by locally informed agents
April 2004 Agents and Ontology [email protected] 143
Other Levels This model can be extended to the
other levels The move from one position to
another can be replaced by a more complicated rearrangement inside the agent
Informing its peers about possible changes
To be done…
April 2004 Agents and Ontology [email protected] 144
Conclusions Agents are there to stay Questions remain to be answered These are fundamental questions
of 50 years of CS research, e.g. in Operating systems Languages Artificial intelligence