View
6
Download
0
Category
Preview:
Citation preview
Reasoning , Persona liza tion, Adap ta tion on the Web
Cristina Ba rog lioDipartimento d i Informatic a
Università deg li Stud i d i Torino
member of REWERSE network of exc ellenc e
OutlineKnow your teac her (b riefly introduc ing myself)
Motiva tion to this lesson: why should you c a re about adap ta tion, persona liza tion and reasoning?
Tec hnic a lities
User modeling (c onc ep ts)
Adap ta tion by reasoning (mostly reasoning about ac tions and c hange)
Agents
Curric ulum sequenc ing / p lanning
Web servic es / interac tion p rotoc ols
Lunc h !
Who am I?
Researc herPh.D. in Cognitive Sc iencesbackground : Artific ia l Inte lligence/ Soft Computing
mac hine lea rning (symbolic and neura l) Agents tha t ac quire a behaviour from experienc e
reasoning about ac tions/ c hange Adap ta tion by means of reasoning -> Semantic Web
Applic a tive fie ld s: robotics (contro l func tion approximation) image representation and und erstand ing curriculum sequenc ing / e -learning web servic es
Artific ia l Intelligenc e / Soft Computing
the d ream of most who work in AI: to see a robot, tha t you p rogrammed, tha t rea lly shows an intelligent behavior
p rob lem: robots tend to fa ll down the sta irs and get b roken ...
software agents a re muc h less expensive! So why not doing something tha t goes on the web?Is it tha t d ifferent?
Image from: http :/ / cdkenterp rises.com/ coloring / toys/ index.shtml
User Browser Web server Resourc e
Querier Sourc e
Human Regular browserDoc umentServic eProduc t
A user (maybe a p rogram) a ims a t find ing a web page. The user desc ribes -by keywords- wha t desired to a searc h eng ine (e.g . Goog le) tha t finds the p roper resourc es and returns the links to the user. The key: powerful indexing mec hanisms
Reg istries, p eer-2-p eer, ...
Nowadays
User Browser Web server Resourc e
Querier Sourc e
HumanProgram
Regular browserAgent...
Doc umentServic eProduc t
A user (maybe a p rogram) a ims a t the exec ution of a taskwhic h involves the use of information/ servic es ac c essib leover the web . The user exec utes a p rogram, tha t finds the p roper resourc es and invokes them, in a way tha t fulfills theuser's goa ls
Reg istries, p eer-2-p eer, ...
Genera l Framework
Problem
the information on the web is human-oriented
ac c ess based on keywords
ac c ess should be based on c ontent -> the Semantic Web effort
User Browser Web server Resourc e
Querier Sourc e
HumanProgram
Regular browserAgent...
Doc umentServic eProduc t
Resourc es a re annota ted by terms tha t belong to sharedontolog ies. Desc rip tions c an be “ understood” by p rograms,tha t perform intelligent queries, and reason about them
Reg istries, p eer-2-p eer, ...
One step in this d irec tion
annotation
Ontolog ies and Inferenc es(example of inte lligent info re trieva l)
Sc enarioa Comp. Sc i. Department informa tion servic e
QueryFind the telephone numbers of researc hers
Buttelephone numbers assoc ia ted to peop le not to wha t they do!! (e.g . A. Turing 34567)
Ifthe system knows tha t researc hers a re human beings and tha t telephone numbers a re assoc ia ted to human beings
Thenthe system will retrieve the desired informa tion
Images http :/ / www.sla .purdue.edu/ fll/ JapanProj/ FLClipa rt/
Ontolog ies and Inferenc es(is-a and part-o f)
Rela tionsontolog ies usua lly define shared voc abula ries, often the terms defined by an ontology a re rela ted by means of is-a or pa rt-of rela tions
is-aA researcher is a person
part-ofA CPU is a part o f a computer
Images http :/ / www.sla .purdue.edu/ fll/ JapanProj/ FLClipa rt/
c omputer
CPU RAM HD
What is a c omputer?A c onjunc tion should be expressed
Some other sc enarios
Examp le 1
Sc enario:Gig i wants to read the newshe c onnec ts to the web site of his favourite newspaper
Provider: the p rogram tha t retrieves and maybe c omposes the information to be p resented
Produc t: the c omposed page
Possib le forms of adap ta tion/ persona liza tion:a t the level of informa tion retrieva l (by p rovider)a t the level of informa tion p resenta tion (by p rovider or by b rowser)
Images http :/ / www.sla .purdue.edu/ fll/ JapanProj/ FLClipa rt/
Tec hnique:user modeling
Examp le 2
Sc enario:Lilla wants to buy a c omputer on-lineshe c onnec ts to an on-line c omputer shop
Provider: the p rogram tha t interac ts with the user for understand ing the needs and p roposing a p roduc t
Produc t: the assembled c omputer
Possib le forms of adap ta tion/ persona liza tion:a t the level of c omputer assemb ly (by p rovider)a t the level of informa tion p resenta tion (by p rovider or by b rowser)
Images http :/ / www.sla .purdue.edu/ fll/ JapanProj/ FLClipa rt/
Tec hnique:goal-drivenreasoning(+ user mod.)
Examp le 3
Sc enario:An a rtific ia l agent is delega ted the task of making a reserva tion a t a c inema where they show a g iven movie in a g iven town; the user does not want to leave his/ her telephone number
Provider: the c inema booking servic e
Produc t: the interac tion with the p rovider + the reserva tion
Possib le forms of adap ta tion/ persona liza tion:a t the level of interac tion (by the agent)
(The searc h involves a lso dea ling with a reg istry)
Images http :/ / www.sla .purdue.edu/ fll/ JapanProj/ FLClipa rt/
Tec hnique:reasoning aboutbehaviour
Examp le 4
Sc enario:An artific ia l agent is delega ted the task of making a reserva tion a t a restaurant and then a t a c inema where they show a g iven movie in a g iven town; the user does not want to leave his/ her telephone number
Provider: the restaurant and the c inema booking servic es
Produc t: the interac tion with the p rovider + the reserva tion
Possib le forms of adap ta tion/ persona liza tion:a t the level of interac tion (by the agent)a t the level of c omposition (by the agent)
(The searc h involves a lso dea ling with a reg istry)Images http :/ / www.sla .purdue.edu/ fll/ JapanProj/ FLClipa rt/
Tec hnique:behaviourc omposition +reason aboutbehaviour
Image from: http :/ / cdkenterp rises.com/ coloring / toys/ index.shtml
Diffic ult tasks!
They require adap ta tion
Adap ta tion: The ab ility to a lte r so as to fit fo r a new use
prod uc e personalized so lutions acc ord ing to :
● The user's c harac teristic s● The user's goa l● To fit a p roc ess spec ific a tion
Image from: http :/ / cdkenterp rises.com/ coloring / toys/ index.shtml
Diffic ult tasks!
Resourc e annota tion is not enough
●Adapta tion is mostly a form of reasoning
●Knowledge is important:● Info about the user ('s goa l)● Info about the doma in ● Constra ints
● Models
Taking into ac c ount the c harac teristic s of the user ... user models
User models
90% of resea rc h on adap ta tion and persona liza tion on the Web is based on user models
A user model is a desc rip tion of those c ha rac teristic s of the user tha t a re re levant to the dec ision p roc ess tha t leads to the selec tion and the p resenta tion of the informa tion (e.g . Educ a tion, age, persona l taste, ...)
Classic app roac h
the user model is initia lized by exp lic itly asking the user to answer a questionna ire, and is refined c onnec tion a fter c onnec tion. Often the initia l model is emp ty
USER MODEL
RESOURCES
SYSTEM
VOCABULARY
The user model must be desc ribed ac c ordingto a voc abulary; the same holds for the resourc esthat are to be selec ted/ presented to the user;the system must know the voc abulary as well
Informa tion retrieva l
USER MODEL
PRESENTATION RULE
SYSTEM
Eac h prototype has assoc iated a presentation stylethat rules the way in whic h the information will beshown to the user. Style sheets are c ommonly usedto this aim. Often different desc riptions are direc tlyassoc iated to eac h resourc e
Informa tion p resenta tion
Examp le 1(shopp ing on the web)
In a virtua l shop , the same good is p resented in d ifferent ways to d ifferent users
User 11: young , loves c omputers and sc ienc e-fic tion
User 12: midd le-age, loves pa inting and na ture
Desc ription will c ontain many tec hnic al details, c omparison with other produc ts, many numbers and ac ronyms
Desc ription will be at high-level, design and ec o-c ompatib ilty of the good will be underlined
PRESENTATI
ON
Examp le 2(educ a tiona l hypermed ia )
SELECTI
ON
Users (ca lled “ learners” ) have ac cess to a a se t o f resourc es (d ocuments, so ftware) tha t they should read . Suc h resourc es are arranged in a hypermed ia , through which they “ naviga te”
Prob lem: many kind s o f users! Diffe rent bac kground s!
One step look-ahead stra tegy: whatever the current position, show only the links, that lead to d ocuments about top ic s, tha t the user c an und erstand
The user is here
Examp le 2(educ a tiona l hypermed ia )
● New links a re “ opened” ac c ord ing to:
– Whic h pages have been visited
– Whic h tests have been passed
● Often links a re not hidden, they a re just marked in a d ifferent way:
– red = stop , you c annot understand this page
– green = go ahead , you a re suggested to read this page
SELECTI
ON
Examp le 2(educ a tiona l hypermed ia )
● A dec ision p roc ess oc c urs
● How to dec ide if a link is to be shown?
● The tec hnique is c urric ulum sequenc ing and c onsists in:
1) To desc ribe the c ontents of doc uments by annota ting the lea rning resourc es by the terms of an ontology (suc h terms a re c a lled in many ways: knowledge items, knowledge entities, c ompetenc es, ...)
2) to c ap ture in some forma l way the rela tions between the knowledge items
3) To use suc h desc rip tions and knowledge about the user (user model + knowledge about wha t he/ she a lready read) to dec ide whic h other top ic s he/ she c an understand
4) Bayesian networks a re used to this purpose
SELECTI
ON
Some links
● P. Brusilovsky, Adap tive Hypermed ia , User Modeling and User-Adap ted Interac tion, 11:87-110, 2001
● N. Henze, W. Nejd l, Adap ta tion in Open Corpus Hypermed ia , IJAIED Spec ia l Issue on Adap tive and Intelligent Web-Based Systems, 12:325-350, 2001
● G. Weber, M. Spec ht, User modeling and adap tive naviga tion support in WWW-based tutoring systems, p roc . of UM97, Cag lia ri, Ita ly, 1997
● L. Ard issono and A. Goy, Ta iloring the Interac tion With Users in Web stores, User Modeling and User-Adap ted Interac tion, 10(4):251-303
Learning models
The idea is to induc e a user model by observing the behaviour of a user
Off-line lea rning : a tra ining set of examp les is ga thered while interac ting w ith the user and it is used to lea rn a model
Lazy lea rning : the model is lea rnt/ upda ted while making rec ommenda tions
Soc ia l behavior c ollaborative filtering
(user models built by c lustering )
User models c an be inferred by studying the behaviour of a popula tion
e.g . By means of unsupervised neura l networks
K-means and Self-Organizing Maps
Clustering
Is the task of identifying g roups of simila r ind ivdua lsout of a set of lea rning instanc es. The ob ta ined g roups c an be used for c lassifying new ind ividua ls based on a simila rity measure
(x1, x2)
Each instanc e is a po int in the so ca lled input spac e; eac h c oord ina te is a fea ture o f the instanc eSimila rity o f instances correspond s to the ir c loseness in the input spac eGiven a se t o f simila r instances I c an compute a pro to type
K-means c lustering a lgorithm
Choose K initia l c luster c enters Assign a ll data po ints to the c losest c luster Rec alc ula te the c luster c enter by app lying the fo llowing formula to eac h c enter c oord inate
If the new c enters d iffer from the previous ones go bac k to the beginning
other approac hes exp lo it SELF-ORGANIZING MAPS (or Kohonen's maps) to perform the same task. They are an unsupervised neura l network model
∑j=1
N
Wij /N
Some examp le systems
WEBSOM: doc uments a re organized in a two-d imensiona l map based on a desc rip tion of their c ontents
LOGSOM: organizes web pages on a SOM ac c ord ing to user naviga tion pa tters
lea rning da ta : ob ta ined from server log files
Prob lems
Neura l networks a re ma thematic a l tools for func tion app roxima tion, their inputs a re vec tors of numbers
Web page c ontent is desc ribed in a symbolic way by the terms from some ontology
How to turn a d isc rete, symbolic doma in in a c ontinuous, numeric doma in?
Prob lems of c ollabora tive filtering
Early-ra ter p rob lem: c ollabora tive filtering has no way to suggest a new resourc e (it has not been c onsidered by users yet)
Sparsity p rob lem: if the number of users w ith respec t to the volume of informa tion in the system user models a re not re liab le
Users whose taste is d ifferent than the norm a re not modeled
Some links
● S. Kaski, T. Honkela , K. Lagus, T. Kohonen, WEBSOM-self organizing maps of doc ument c ollec tions, Neuroc omputing 21(1-3):101-117, 1998
● K. A. Smith, A. Ng , Web page c lustering using a self-organizing map of user naviga tion pa tters, Dec ision Support Systems 35:245-256, 2003
● B. Mobasher, R. Cooley, J. Srivastava , Automatic persona liza tion based on web mining , c ommunic a tions of the ACM 43(8), 2000
● M. Perkowitz, O. Etzioni, Adap tive sites, lea rning from user ac c ess pa tterns, p roc . of WWW6, 1997
● M. Montaner, B. Lopez, J. L. de la Rosa, A taxonomy of rec ommender systems, Artific ia l Intelligenc e Review 19:285-330, 2003
Not only user models
When UM do not work well 1
User models a re refined ac c ord ing to the behaviour of the user and c ap ture his/ her genera l p referenc es
They a re “ past-oriented ” , in some situa tions this may be inc onvenient
Examp le
news porta l: usua lly Pino c hec ks for sport news but today he hea rd of a terrib le ac c ident and would like to immed ia tely find info about it.
When UM do not work well 2
User models a re meaning ful only if users visit a web site frequently; this is not a lways the c ase
Often web site visits a re “ task-oriented ” , the reasoning task should foc us on help ing the user in sa tisfying his/ her goa ls
Examp le
buying a PC: find out wha t kind of use w ill be done of the PC (server? Playing games? Browsing the web? Esthetic purposes?)
Rec ommender systems
When UM do not work well 3
The user may be a p iec e of softwa re (e.g . a softwa re agent)
this may be the c ase of “ web servic es” , ha rdware or softwa re resourc es, ac c essib le via the web , tha t c an be automatic a lly retrieved , invoked , c omposed , etc .
Examp le
organize a visit to Aussois: find a tra in, find a hotel, c hec k out the wea ther forec ast, etc .
Are these forms of persona liza tion?
News porta l: persona lize informa tion selec tion w.r.t. the user's goa lComputer shop : adap t the interac tion w ith the user ac c ord ing to his/ her interestsOrganize trip to Aussois: c ompose a set of softwa res (web servic es, developed independently) so to ac c omp lish a task tha t respec ts the c onstra ints posed by the user
In a ll these c ases:
persona liza tion is an outc ome of p roc essingwe w ill how it c an be an outc ome of reasoning
What do we need?
A semantic layer assoc ia ted to resourc es (doc uments, software, ... wha tever)
Reasoning tec hniques for performing retrieva l, sequenc ing , c omposition, ...
Is it nec essa ry to develop new tec hniques?No
What we'll see next: reasoning about ac tions
Two ma in c ases:
educ a tiona l app lic a tion doma in✔ selec tion✔ c urric ulum sequenc ing✔ va lida tion
web servic es✔ selec tion✔ persona liza tion of the interac tion w ith a w.s.✔ c omposition
Educationa l Framework
Learning resourc es as ac tions
Let us interp ret a lea rning resourc e LR as an ac tion:
LR c an be exec uted if the user has some c ompetenc e C by exec uting LR the user w ill ac quire c ompetenc e G
C and G a re desc ribed in the terms g iven by an ontology
the system sta te is a rep resenta tion of the user (supposed) knowledge (its initia l knowledge, augmented step by step )
The systems adop ts the user goa l of ac quiring some expertise (lea rning goa l) and builds a p lan for ac hieving it
no p robab ility is to be defined
Learning resourc es as ac tions
proc esses
c onc urrenc ydead loc kModule A
prerequisites e ffec ts
proc essesc onc urrenc y
dead loc k
Module Bmutua l exc lusion
Ontology terms
dead loc k avoidanc e
Resourc es exp lic itly annota ted by ontology terms!
Important!
The desc rip tion of the resourc es is not extrac ted (e.g . by text p roc essing tec hniques) as it often happens nowadays
It is exp lic itly added to the resourc es by the c rea tors
It is a desc ritp ion a t the level of knowledge, g ivenin terms of a sha red voc abula ry, tha t c an be used by automatic systems
Learning resourc es representa tion standardsdo I have to invent new forma lisms? No
SCORM is a standa rd framework for rep resenting lea rning resourc es; it a llows the semantic annota tion of a resourc e by means of LOM (standard for lea rning ob jec t meta -da ta )
LOM a llows to add to the desc rip tion of a lea rning resourc e a set of “ taxons” , taxonomy elements, eac h of whic h has a role. Among the possib le ro les “ educ a tiona l ob jec tive” and “ p rerequisite” c an be used to enc ode p rec ond itions and effec ts of the resourc e, interp reted as an ac tion
Reasoning about learning resourc esselec tion
Selec tion c an be based on a (knowledge level) desc rip tionof wha t a resourc e supp lies/ teac hes
It c an further be c onstra ined by the system sta te
Module A
Module B
Same as ...
p roc essesc onc urrenc y
User knows
d ead loc k
Wants to learn
Curric ulum sequenc ing
We have mentioned educ a tiona l app lic a tion doma insand c urric ulum sequenc ing : i.e. The task of defining goodread ing pa ths in a hyperspac e of lea rning resourc es
In Adap tive Hypermed ia a one step app roac h is fo llowed
At any time a Bayesian network dec ides whic h lea rning resourc es the user c an read w ith p rofit; it d isab les ac c ess to the others
A lea rning goa l is defined : the user w ill a rrive to the goa l by d ifferent pa ths, depend ing on the initia l knowledge, and on persona l taste
But I c an a lso ...
Reason about lea rning resourc essequenc ing
Mod ule B c an be se lec ted only if the user knows a lso somethingabout Mutua l Exc lusion; the user knows nothing about it
The system c an searc h fo r a second mod ule tha t teac hes themissing competenc e
proc essesc onc urrenc y
User knows
Dead loc kavo id anc e
Wants to learn
Module X
Module B
Multi-step sequenc ing : p lanning
requires: Mutual Exc lusion
teac hes: Mutual Exc lusion
Build ing c omp lete read ing sequenc es
To this a im AI p lanning tec hniques c an be useda p lan is a sequenc e of a tomic ac tions (resourc es)
Two ma in app roac hes:
Comb ine a tomic ac tions (e.g . A*, g raphp lan)
Produc e p lans tha t respec t a sc hema: e.g .p roc edura l p lanning (interesting in educ a tiona ldoma ins: p roc edures as lea rning stra teg ies)
What is a learning stra tegy?
The organiza tion of the ma teria l in a lesson or a c ourseis not only up to p rerequisites and effec ts but a lso to
the experienc e of the lec turer
Lea rning stra tegy: overa ll sc hedule of the top ic sthe view of teac her of how top ic s should be sequenc ed
Learning Stra teg ies
LearningResourc es
A
C
D
B
Eontology
Know your teac her (b riefly introduc ing myself)
Motiva tion to this lesson: why should you c a re about adap ta tion, persona liza tion and reasoning?
Tec hnic a lities
User modeling (c onc ep ts)
Adap ta tion by reasoning (mostly reasoning about ac tions and c hange)
Agents
Curric ulum sequenc ing / p lanning
Web servic es / interac tion p rotoc ols
Lunc h !
My learning stra tegy for today:
MANYIMPLEMENTATIONS!!
Moving to the web ...
Reposito ry 1o f annota ted
learning resources
resource : a tomic ac tion
Reposito ry 2
Reposito ry 3
Task of adap ta tion and reasoning on the semantic web
identify a set of lea rning resourc es tha t fit in my lea rning stra tegy and tha t a re the most suitab le to the
spec ific user
Proc edura l p lanning
The sea rc h spac e is c onstra ined by a llow ing only sequenc es of ac tions tha t a re exec utions of a g iven
p roc edure
p lan: p roc edure exec utionp roc edure: behavior sc hema
Search space
Possib le executions o f P
All sequences o f a tomic ac tions
A spec ific c ase: using DyLOG to spec ify learning stra teg ies
DyLOG, by Ba ldoni et a l., is a language for p rog ramming agents, based on a moda l app roac h for reasoning about ac tions and c hange
Primitive ac tions: p rec ond itions and effec ts Sensing ac tions: interac tion w ith the world Prolog -like p roc edures: c omp lex ac tions
A doma in desc rip tion c onsists of a set of p rimitive ac tions, a set of sensing ac tions, a set of c omp lex ac tions, together w ith a set of initia l observa tions.
Learning resourc e as a DyLOG a tomic ac tion
proc esses
c onc urrenc ydead loc kModule A
proc essesc onc urrenc y
dead loc k
Module Bmutua l exc lusion
dead loc k avoidanc e
mod uleA possib le if p rocesses, concurrenc ymod uleA c auses d ead lock
mod uleB possib le if p roc esses, conc urrenc y, mutua l_exc lusion
mod uleB c auses d ead lock, d ead lock_avo id ance
Learning stra tegy as a p roc edure
c omp_sc i_4_b iolog ists is db , sta tistic a l_tools
c omp_sc i_4_web_designers is web_prog ramming , c omputer_networks
The meaning of “ basic notions of Comp. Sc i.” depends onthe kind of students you need to exp la in things to ...
Given a spec ific student: the task is to p roduc e a spec ificp lan, i.e. sequenc e of ac tua l lea rning resourc es, tha t w ill
a llow him/ her to ac quire the desired expertise
Proc edura l p lanning in DyLOG
Another educ a tiona l app lic a tionva lida tion of the user's c hoic es
Sc enario
A user c an b rowse a repository of lea rning resourc es and c hoose some tha t he/ she likes and c onsiders
useful for ac hieving a g iven lea rning goa l
The user would like to know if the c hosen ma teria l w ill lead him/ her to the ta rget
Forms of reasoningPlan va lida tion + Exp lana tion of fa ilure
Initia l sta te
... ...LR1 LRi
LG
LRi possib le if a , bLRi causes c
a
Conc lusion:LRi c annot be app lied unlessuser a lread y knows b
Plan va lida tion + Exp lana tion of fa ilure
The d omain is monotoniceach sta te inc lud es the previous onethere is no fo rgetting
A set o f assumptions is c o llec ted a long the way; the p lan is c orrec t g iven tha t those assumptions ho ld
Links
● M. Ba ld oni, L. G iord ano, A. Marte lli, V. Patti, Programming ra tiona l agents in a mod a l ac tion log ic , Anna ls o f Mathematics and Artific ia l Inte lligence, Spec ia l Issue on Log ic -based Agent Imp lementa tion, to appear
● M. Ba ld oni, C. Barog lio , e V. Patti, Web-based ad aptive tutoring : an approach based on log ic agents and reasoning about ac tions, Artific ia l Inte lligenc e Review. To appear
Web Servic es
The Web as a p rovider of servic es
The web is evolving into a p rovider of servic es, resourc es tha t a llow one to c hec k/ c hange the sta te of the world :
Information p rovid ing servic es: wea ther forec ast, flight a rriva l sc hedule, ...
World -a ltering servic es: tic ket booking , purc hase, ...
Web servic es: ha rd -/ soft-ware devic es ac c essib le over the internet
There's a need for a ll these devic es to interopera te
So fa r: interopera tion p rovided by c ode hardwired in the APIs for information extrac tion. APIs a re strong ly dependant on the struc ture of doc uments/ resourc es they must hand le, if the la tter c hanges they a re to be c hanged
More flexib ility is desirab le ...
The Web as a p rovider of servic es
The Semantic Web initia tive dea ls a lso with the p rob lem of rep resenting and remotely invoking web servic es
In order to ob ta in flexib ility: need for a c omputer-interp retab le desc rip tion of the servic es
Two ma in initia tives
AI agent community: DAML-S / OWL-S (based on semantics)
Commerc ia l initia tive WSDL / BPEL4WS(not based on semantic s ye t)
Markup languages
Once aga inthe ac tion metaphor
Some possib le tasks
What do we w ish to do (in an automatic way) w ith webservic es?
Disc overyExec utionComposition & interopera tion
Currently, none of these tasks c an fully be exec uted(do you ag ree?)
Example: organize the journey to Aussois
Servic es I c an find on the web :tra in tic ket / flight hotel reserva tion
Supp lied informa tion: sc hool period (June, 21st-25th), tic ket c lass (ec onomy)
My expec ta tion: a fter task exec ution I w ill have a tic ket tha t w ill a llow me to a rrive before the beg inning of the sc hool, and leave right a fter its end , and a reserva tion a t some nic e hotel
possib le p rob lems ...
Example: organize the journey to Aussois
Would you trust an agent to to do it for you?
The system finds a p lac e c a lled Aussois in Canada , thus it reserves a flight to Ottawa ... a little fa r!
The system does not find a free sea t on the 21st, but it finds a free sea t on the 19th, it immed ia tely makes a reserva tion; luc kily the hotel has a free room sta rting from the 21st ... where to sleep before this da te?
Days of a rriva l and hotel reserva tion ma tc h, however the tra in a rrives in Modane a t 21:00 ... sc hool is over
...
What kind of markup do we need for ...
Disc overy? Wha t does the servic e p rovide to users? Properties tha t c lassify the servic e
Exec ution? da ta flow model / IOPE (inputs, outputs, p rerequisites and effec ts)
Composition? business log ic , how the servic e a ffec ts the world
OWL-S desc rip tions
Kinds of servic e
primitive: a sing le devic e is invoked , little interac tion with the user, a simp le response is returned
c omplex: c omposed of multip le servic es, a c onversa tion with the user is required , the user c an make c hoic es
A servic e is desc ribed by
servic e p rofile: used for advertising (and d isc overing ) servic es
proc ess model: desc ribes the servic e's opera tions
ground ing : desc ribes how to interopera te with the servic e by means of messages
Info in the p rofiles
human-readab le:Servic e name, text desc rip tion and c ontac t informa tion
func tiona lity desc rip tion: inputs and outputs (they c an be c ond itiona l and refer to inputs and outputs of the p roc ess model), p rec ond itions and effec ts (they c an be c ond itiona l)
p rofile a ttributes: c a tegory (ontology-based desc rip tion)
...
... <!-- specification of quality rating for profile --> <profile:qualityRating> <profile:QualityRating rdf:ID="BravoAir-goodRating">
<profile:ratingName> SomeRating</profile:ratingName><profile:rating rdf:resource="&concepts;#GoodRating"/>
</profile:QualityRating> </profile:qualityRating> <!-- Specification of the service category using NAICS --> <profile:serviceCategory> <addParam:NAICS rdf:ID="NAICS-category">
<profile:value> Airline reservation services </profile:value><profile:code> 561599</profile:code>
</addParam:NAICS> </profile:serviceCategory>...
http :/ / www.daml.org / servic es/ owl-s/ 1.0/ BravoAirProfile.ow l
Info in the p roc ess model 1
input/ (c ond itiona l) output:informa tion tha t is nec essa ry for the c omputa tion to take p lac e (may be p rovided by other p roc esses), and tha t w ill be p roc essed + info tha t is p roduc ed
prec ond itions/ (c ond itiona l) effec ts: rela ted to c hanges oc c urring to the world by the exec ution of the servic e
c ond itions: no manda tory language to be used (best c and ida tes SWRL andd DRS)
...
<!-- Descriptions of IOPEs --> <profile:hasInput rdf:resource="&ba_process;#DepartureAirport_In"/> <profile:hasInput rdf:resource="&ba_process;#ArrivalAirport_In"/> <profile:hasInput rdf:resource="&ba_process;#OutboundDate_In"/> <profile:hasInput rdf:resource="&ba_process;#InboundDate_In"/> <profile:hasInput rdf:resource="&ba_process;#RoundTrip_In"/> <profile:hasInput rdf:resource="&ba_process;#PreferredFlightItinerary_In"/> <profile:hasOutput rdf:resource="&ba_process;#AvailableFlightItineraryList_Out"/> <profile:hasInput rdf:resource="&ba_process;#AcctName_In"/> <profile:hasInput rdf:resource="&ba_process;#Password_In"/> <profile:hasInput rdf:resource="&ba_process;#ReservationID_In"/> <profile:hasInput rdf:resource="&ba_process;#Confirm_In"/> <profile:hasOutput rdf:resource="&ba_process;#PreferredFlightItinerary_Out"/> <profile:hasOutput rdf:resource="&ba_process;#AcctName_Out"/> <profile:hasOutput rdf:resource="&ba_process;#ReservationID_Out"/> <profile:hasEffect rdf:resource="&ba_process;#HaveSeat"/>
http :/ / www.daml.org / servic es/ owl-s/ 1.0/ BravoAirProfile.ow l
<!-- ConfirmReservation (ATOMIC) Confirm selec ted reservation -->
<proc ess:Atomic Proc ess rdf:ID="ConfirmReservation"><proc ess:hasInput rdf:resourc e="#ReservationID_In"/ >
...<proc ess:hasOutput rdf:resourc e="#PreferredFlightItinerary_Out"/ >
...<proc ess:hasEffec t rdf:resourc e="#HaveSeat"/ >
</ proc ess:Atomic Proc ess>
<proc ess:Input rdf:ID="ReservationID_In"><proc ess:parameterType rdf:resourc e="&c onc epts;#ReservationNumber"/ >
</ proc ess:Input> ....
<proc ess:UnConditionalOutput rdf:ID="PreferredFlightItinerary_Out"><proc ess:parameterType rdf:resourc e="&c onc epts;#FlightItinerary"/ >
</ proc ess:UnConditionalOutput>
<proc ess:UnConditionalEffec t rdf:ID="HaveSeat"><proc ess:c eEffec t rdf:resourc e="&c onc epts;#HaveFlightSeat"/ >
</ proc ess:UnConditionalEffec t>
http :/ / www.daml.org / servic es/ owl-s/ 1.0/ BravoAirProc ess.owl
Info in the p roc ess model 2
Atomic p roc esses:d irec tly invoc ab le, they exec ute in a sing le step
Simp le p roc esses: not invoc ab le, they a re elements of abstrac tion tha t p resent a servic e as having a one-step exec ution
Composite: dec omposab le, possib le c ontrol c onstruc ts:
Sp lit (c onc urrent exec ution), Unordered , Sp lit+jo in
Sequenc e
Unordered
Choic e, If-then-else
Itera te, repea t-until
<!-- BravoAir_Process is a composite process.It is composed of a sequence whose components are 2 atomicprocesses, GetDesiredFlightDetails and SelectAvailableFlight,and a composite process, BookFlight.-->
<process:CompositeProcess rdf:ID="BravoAir_Process"> <rdfs:label> This is the top level process for BravoAir </rdfs:label>
<process:composedOf><process:Sequence>
<process:components rdf:parseType="Collection"> <process:AtomicProcess rdf:about="#GetDesiredFlightDetails"/> <process:AtomicProcess rdf:about="#SelectAvailableFlight"/> <process:CompositeProcess rdf:about="#BookFlight"/></process:components>
</process:Sequence></process:composedOf>
</process:CompositeProcess>
http :/ / www.daml.org / servic es/ owl-s/ 1.0/ BravoAirProc ess.owl
OWL-S desc rip tion of a servic e
Service
Is d esc ribed by a Service Mod e l
It p resents a Servic e Pro file
It supports a Servic e Ground ing
What the service requiresand supp lies
How it works
How to ac cess to it
Seeking agent
Low leve l p ro toc o l / port / seria liza tion
Emphasis on the seeking agent
Once aga in these representa tions are thought fo r the automaticre trieva l, invoc ation, e tc perfo rmed by artific ia l entitie (agents)
Agent main charac teristic s
autonomoushas a sta tec an sense the worldd ec id es how to ac t based on its sta te and its perceptions
e.g . a thermosta t!
It is no t necessarily ra tiona l ;-)
The seeking agent
Two-steps sea rc h
use the p rofilep rofiles stored / hand led by reg istries forquic k foc us
use the modelused when selec tion is based on how the servic e is exec uted , and forc omposition
It requires reasoning !!
Not necessarily a searc h eng ineMany d iffe rent agents roam theweb with various purposes
Example I live out o f town, need to move by busAgent Jeeves: searc h if a book is ava ilab le in some lib rary o f Mytown,and reserve it; p lease, pay a ttention to the bus sched ule !
University lib raryrequires: you are a stud entp ick up d uring opening time: 9:00 – 16:00reserva tion?
Town lib raryrequires: you are reg iste redp ick up d uring opening time: 9:00 – 12:00 / 15:00 -18:00reserva tion?
Bus sc hed ule : 6:00 o r13:00
Example
I live out o f town, need to move by bus
Agent Jeeves: searc h if a book is ava ilab le in the lib raries o f Mytown,and reserve it; p lease, pay a ttention to the bus sched ule !
Agent task: build a p lan that will a llow my master to ac hieve her goa l
Two lib rary services are ava ilab le , bo th have the book andmy master c an go to bo th ... whic h to c hoose?
The bus!
Inte rac tion with the bus info rmation service lead s to choose between the two lib raries
The seeking agent: how to build it?
Requisite: it must be ab le to d raw c onc lusions about p rog rams desc ribed in a dec la ra tive way (the web servic es) and / or by interac ting w ith them
Web servic es desc rip tions based on the ac tion metaphore
Tec hniques for reasoning about ac tions and c hange a re nec essa ry
Examp les: situa tion c a lc ulus, agent p rog ramming languages suc h as Golog and DyLOG
4) inte rac tion
The seeking agent: a sketc h
Seeking agent
Web servic e
Profileproc ess model
1) d ownload
2) d ec id e if
inte rac ting
3) invoke
Is this a multi-agent system?
requester
responder
The agent c ommunity is highly va riab le, organized onthe fly depend ing on needs
Agents let their behaviour be visib le to the others
They c an reason on eac h other's behavior and foreseethe effec ts of their ac tions
Ac tions: world -a ffec ting / informa tion-p rovid ing
In order to foresee effec ts of informa tion-p rovid ing ac tions theagents must be ab le to make assumptions on the “ menta lsta te” of their interloc utors
Comments
Many app roac hes in the litera ture a re based on va riant of moda l log ic , in whic h menta l a ttitudes, suc h as beliefs, goa ls and intentions, as well as c ommunic a tive ac ts a re rep resented by moda lities
Only rec ently the a ttention has been moved to forma lize those aspec ts of c ommunic a tion tha t a re rela ted to the c onversa tiona l c ontext in whic h c ommunic a tive ac ts oc c ur
Litera ture ...
Comments
● A. Herzig and D. Long in. Beliefs dynamic s in c oopera tive d ia logues. In Proc . of AMSTELOGUE 99, 1999.
● P. Bretier and D. Sadek. A ra tiona l agent as the kernel of a c oopera tive spoken d ia logue system: imp lementing a log ic a l theory of interac tion. In Intelligent Agents III, LNAI 1193, 1997
● F. Dignum and M. Greaves. Issues in agent c ommunic a tion. In Issues in Agent Communic a tion, LNCS 1916, 2000.
● A. Mamdani and J. Pitt. Communic a tion p rotoc ols in multi-agent systems: A de- velopment method and referenc e arc hitec ture. In Issues in Agent Communic a tion, LNCS 1916, 2000.
Links
I c an exec ute a p rotoc ol p in way suc h tha ta fterwards the p rovider w ill not have this p iec eof informa tion:
< p me > B me ¬ B other info
What kind of reasoning is interesting?
Mod al log ic representa tionNested beliefI believe the “ other” does not know info
There is a possib le exec ution of p suc h tha t ...
Proof of existentia l p roperties
DyLOG, the interac tion p rotoc ols
Communic a tion p rotoc ol: p roc edure tha t definesthe c ommunic a tive behavior of an agent (or aweb servic e)
It is defined on the basis of p redefined speec h ac ts(a tomic , c ommunic a tive ac tions), for instanc e FIPA speec h ac ts
Conversa tion: an exec ution of a c ommunic a tion p rotoc ol, a spec ific sequenc e of speec h ac ts
DyLOG, example
Customer's viewof the p rotoc olin DyLOG:
Properties of the multi-agent system as a whole
The overa ll behavior of the agent system is modeled
Among the va rious app roac hes:use of Dynamic Linea r Time Tempora l Log ic
What kind of reasoning is interesting?Proof of universa l p roperties
Links● S. A. Mc Ilra ith, T. C. Son, H. Zeng, Semantic Web Services, IEEE Inte lligent Systems, 2001
● S. A. Mc Ilra ith, T. C. Son, Ad apting Go log fo r c omposition o f semantic web services
● The OWL Services Coa lition, OWL-S: Semantic Markup fo r Web Servic es, white paper (http :/ / www.d aml.o rg)
● M. Woold rid ge, An introd uc tion to multi-agent systems, Wiley, 2002● M. Ba ld oni, C. Barog lio , A. Marte lli, V. Pa tti. Reasoning about Conversa tion Pro toc o ls in a Log ic -based Agent Language. LNAI 2829 2003.
● M. Ba ld oni, C. Barog lio , A. Marte lli, V. Pa tti. Reasoning about se lf and o thers: communica ting agents in a mod a l ac tion log ic . LNCS 2841 2003.
● H. Levesque, R. Re ite r, Y. Lespérance, F. Lin, and R. Sc herl. GOLOG: A log ic p rogramming language fo r d ynamic d omains. J. o f Log ic Programming, 31:59-84, 1997
● Links to web service resources http :/ / lsd is.c s.uga.ed u/ lib / p resentations/ SWSP-tutoria l-resource .ht
Recommended