do software agents know what they talk about? agents and ontology patdc patrick de causmaecker,...

144
Do software agents know what they talk about? Agents and Ontology http:// allserv.kahosl.be/~patdc Patrick De Causmaecker, April 2004

Upload: hilda-horn

Post on 26-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

Do software agents know what they talk about?

Agents and Ontologyhttp://allserv.kahosl.be/

~patdc Patrick De Causmaecker,

April 2004

Page 2: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 2

Overview Agents Ontology Communication RDF Semantic Web Sample Implementations

Page 3: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 4: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 5: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 5

Master-slave models(Dispatching)

Master

Slave Slave

BlackboardPost

Read

Page 6: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 7: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 8: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 9: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 9

Ontology Communication Logic, Psychology and Language Examples Expression of Ontology KIF, KQML

Page 10: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 10

Communication

Page 11: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 11

Communication

Page 12: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 12

Communication

Page 13: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 14: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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…

Page 15: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 16: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 17: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 18: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 19: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 20: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 21: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 22: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 22

FIPA Agent Management

Internal Message Transport

Agent

Agent Communication

Channel

DirectoryFacilitator

AgentManagement

System

Software

Agent Platform

Page 23: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 23

FIPA Software Integration

LegacyDatabase

SQLDatabase

Webserver

WrapperAgent

WrapperAgent

ClientAgent

ARB query

Execute

Dedicatedmapping

Http

ORB

Page 24: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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”)

Page 25: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 26: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 27: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 28: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 29: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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”?

Page 30: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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!

Page 31: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 32: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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!

Page 33: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 34: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 35: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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))

Page 36: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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”

Page 37: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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))

Page 38: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 39: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)).

Page 40: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 40

Existential graphs

Page 41: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 41

Conceptual graphs

Box: quantification

(concept node)

Relation node

Dotted line: Coreference

Solid line: relation

Page 42: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 42

Conceptual graphs

Page 43: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 44: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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…

Page 45: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 46: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 47: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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))

Page 48: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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].

Page 49: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 49

Combining logic with ontology

Page 50: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 50

Combining logic with ontology

Page 51: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 52: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 52

Where are we?

Page 53: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 53

Further reading See “Handouts”

Ontology, Metadata and Semiotics (Sowa)

Page 54: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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”

Page 55: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 56: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 56

Architecture of the SW

Page 57: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 58: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 59: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 59

XML: architecture

Description of things (resources) & their

types

Describing relationships between types & things

Page 60: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 61: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 62: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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 …

Page 63: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 64: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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…

Page 65: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 66: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 67: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 68: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 69: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 70: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 71: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 72: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 73: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 74: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 74

A Bag

http://www.kahosl.be/ArticleY.dml

Julian Schwingercreator

Infinities in QED

TITLERichard Feynman

Page 75: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 76: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 77: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 78: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 79: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 80: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 81: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 82: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 83: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 84: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 85: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

XOL: XML-based Ontology exchange Language

Pangea Systems Inc. & Artificial Intelligence Center

SRI International

Page 86: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 87: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 88: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 89: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 90: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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>

Page 91: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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/

Page 92: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 93: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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,….

Page 94: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 95: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 96: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 97: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 98: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 99: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 100: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 101: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 102: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 103: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 104: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 105: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 106: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 107: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 108: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 109: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 110: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 111: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 112: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 113: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 114: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 115: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 116: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 117: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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.

Page 118: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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)

Page 119: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 119

Example Problem Model

Need Negotiation

Conclusion

Page 120: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 121: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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, …

Page 122: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

April 2004 Agents and Ontology [email protected] 122

Reciprocal Benefits Timetabling as an example domain

Combinatorial complexity Optimisation domain Real world problems Benchmarks

Page 123: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 124: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 125: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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 …

Page 126: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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:

Page 127: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 128: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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,…

Page 129: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 130: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 131: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 132: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 133: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 134: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 135: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 136: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 137: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 138: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 139: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 140: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 141: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 142: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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

Page 143: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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…

Page 144: Do software agents know what they talk about? Agents and Ontology patdc Patrick De Causmaecker, April 2004

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