Agents - Dr.Surasak Mungsing Homepage

hesitantdoubtfulΤεχνίτη Νοημοσύνη και Ρομποτική

29 Οκτ 2013 (πριν από 3 χρόνια και 8 μήνες)

90 εμφανίσεις

ITE711

Asst.Prof
.
Surasak

Mungsing

Ph.D.

s
urasak.mu@spu.ac.th

Software Agent
T
echnology

Overview


Motivation and definitions



Why do we need agents?



What is an agent?


Agent architectures


technologies, issues, advantages, disadvantages

Motivations


Why do we need agents?


Increasingly networked, temporary connectivity
increasing (wireless).


Data overload (e
-
mail, web pages, fax, …).


Greater exchange of digital information


Increasingly dependent upon electronic sources of
information.


Desire to be ‘better informed’.

Tools


Inadequacy of current tools


Browsers are user driven, Pull technology
marginally better.


‘Friendly’ software becoming more difficult to
use (e.g. MS Word!)


WWW too polluted for casual browsing,
intelligent search tools required; even search
engines
eginning

to fail us!

o
Coverage, web pages exploiting indexing algorithms
of engines, broken links.

Solution!


Need software solution (agents) that can act
in our place:


can interact with (say) Internet data sources


can process e
-
mail, voice, fax and other electronic
message sources


can communicate with other agents


can accurately represent our needs and
preferences in the networked information
environment


can negotiate

And the solution is…Agents


So, what is a software agent? No generally
agreed definition. Has characteristics:


Something that acts on behalf of another


Is sociable, capable of meaningful interaction with
other agents (and humans)


Can make decisions on our behalf


Is capable of adapting to changing environments and
learning from user interaction


Is mobile

Agent Definition (1)


An agent is an entity which is:


Situated
in some
environment
.


Autonomous
, in the sense that it can act without direct intervention
from humans or other software processes, and controls over its own
actions and internal state.


Flexible

which means:


Responsive (reactive)
: agents should perceive their environment
and respond to changes that occur in it;


Proactive
: agents should not simply act in response to their
environment, they should be able to exhibit opportunistic, goal
-
directed behavior and take the initiative when appropriate;


Social
: agents should be able to interact with humans or other
artificial agents

“A Roadmap of agent research and development”
,


N. Jennings, K.
Sycara
, M. Wooldridge (1998)

Agent Definition (2)

American Heritage Dictionary:

agent


” … one that acts or has the power or authority to
act… or represent another”

Does this means that

… an agent carries out a task in favor of someone who has
delegated it ?


To avoid tedious description of tasks we sometimes prefer our
agents to be able to infer (predict, guess) our goals ...


… so the agents should have some knowledge of task domain
and their user.


"An agent is anything that can be viewed
as
perceiving

its
environment

through
sensors and
acting

upon that
environment

through effectors."



Russell & Norvig

Agent Definition (3)


"Autonomous agents are computational
systems that inhabit some complex
dynamic environment, sense and
act
autonomously

in this environment, and
by doing so realize a set of goals or tasks
for which they are designed."


Pattie Maes

Agent Definition (4)



Intelligent agents continuously perform
three functions: perception of dynamic
conditions in the environment; action to
affect conditions in the environment; and
reasoning

to interpret perceptions, solve
problems, draw inferences, and
determine actions.


Barbara Hayes
-
Roth

Agent Definition (5)

Agent Definition (6)

[
Terziyan
, 1993, 2007]

Intelligent Agent is an entity that is able to
keep
continuously balance between its internal and external
environments

in such a way that in the case of unbalance
agent can:



change external environment

to be in balance with the
internal one ...
OR



change internal environment

to be in balance with the
external one …
OR



find out and
move to another place

within the external
environment where balance occurs without any changes …
OR


Agent Definition (6)

[
Terziyan
, 1993, 2007]


closely
communicate

with one or more other agents
(human or artificial) to be able
to

create a community
,
which internal environment will be able to be in balance
with the external one …
OR



configure sensors

by filtering the set of acquired
features from the external environment to achieve
balance between the internal environment and the
deliberately distorted pattern of the external one. I.e. “
if
you are not able either to change the environment or
adapt yourself to it, then just try not to notice things,
which make you unhappy


Agent Definition (6)
[Terziyan, 1993]

The above means that an agent:

1)
is
goal
-
oriented
, because it should have at least one goal
-

to
keep
continuously balance between its internal and external
environments

;

2)
is
creative

because of the ability to
change external environment
;

3)
is
adaptive

because of the ability to
change internal environment
;

4)
is
mobile

because of the ability to
move to another place
;

5)
is
social

because of the ability to
communicate

to

create a
community
;

6)
is
self
-
configurable

because of the ability to
protect “mental
health”

by sensing only a “suitable” part of the environment.

Agent Definition (7)
[IBM]

Agent Definition (8)

[FIPA:
(Foundation for Intelligent


Physical Agents),

www.fipa.org

]


An agent is a computational process that implements
the autonomous, communicating functionality of an
application.


Agent Definition (9)

[Wikipedia:
(The free Encyclopedia),

http://www.wikipedia.org


]


In computer science, an
intelligent agent (IA)

is a
software agent that exhibits some form of artificial
intelligence that assists the user and will act on their
behalf, in performing non
-
repetitive computer
-
related tasks. While the working of software agents
used for
operator assistance

or data mining
(sometimes referred to as
bots
) is often based on
fixed pre
-
programmed rules, "intelligent" here
implies the ability to adapt and learn.

Three groups of agents [
Etzioni and Daniel S.
Weld, 1995
]


Backseat driver:

helps the user during some
task (e.g., Microsoft Office Assistant);


Taxi driver:

knows where to go when you tell
the destination;


Concierge:

know where to go, when and why.

A Basic Definition

“Intelligent software agents are defined as being
a software program that can perform specific
tasks for a user and possessing a degree of
intelligence that permits it to performs parts
of its tasks autonomously and to interact with
its environment in a useful manner.”


From Intelligent Software Agents

Brenner,
Zarnekow

and Wittig.

Potential agent rewards


In the Internet:


efficiency: agent is given goal and returns the
result;


effectiveness: agent can terminate search when
acceptable solution found. Has a higher degree of
multi
-
threading;


transparency and optimization: correlation
between multiple data sources possible => higher
quality results.

Taxonomy of Agents

Intelligent

Agents

Hardware

Agents

Software

Agents

Interface

Agents

Information

Agents

Cooperation

Agents

Transaction

Agents

Intelligent

Agents


Classification Matrix

Information Agent

Cooperation Agent

Transaction Agent


Subareas of D.A.I.

Distributed Artificial Intelligence

Parallel
AI

Distributed

Problem Solving

Multi
-
Agent System

Agent as a Black Box

The work of an Intelligent Agent

BDI Architecture

Rao
/
Georgeff

‘95

Agent Architectures



Reactive agent


Deliberative agent


Hybrid agent


Architecture of deliberative agents

Architecture of reactive agents

Brooks ‘86

Hybrid Agent


Agent

S

e

n

s

o

r

s

E

f

f

e

c

t

o

r

s

Reactive component

State
1

State
2

State
n

Action
2

Action
n

.

.

.

.

.

.

World

Model

Planner

Plan

executor

Deliberative component

Action
1

observations

modifications

Knowledge Query and

Manipulation Language


KQML based upon speech act theory


KQML differentiates between three layers:
communication, messages and content


communication: protocol


messages: speech acts


content: content or meaning of message


KQML deals with speech acts.


Dialog

Dialog: a sequence of agent message interactions
with some common thread.

KQML format

(<
Performative
>

:content <statement/
speechact
>

:sender <name>

:receive <name>

:language <text>

:ontology <text>

)

Performative

corresponds to speech act types.

Important KQML speech act types

Important KQML speech act types

Example

(ask
-
one

:content (PRICE IBM ?price)

:receiver stock
-
server

:language LPROLOG

:ontology NYSE
-
TICKS

)

Query formulated using LPROLOG.

Ontology is ‘computer systems’.

Using a
Faciltator


Environment of Software Agent


Agents


Platforms


Communications


Ontology


Applications


Agent Platform


A place where agents live


not always needed


Agent management


creation


termination


security


Agent communication services


Agent directory services


Agent Communications


Ontology


How do communicating agents understand each
other?



Systems which communicate and work together
must share an ontology.



Ontology



A common vocabulary and agreed upon meanings to describe a
subject domain.


An ontology is a specification of a conceptualization.


An ontology is a description of the concepts and relationships that
can exist for an agent or a community of agents

Ontology
-

Example


OWL (Web Ontology Language)

by W3C


OWL is designed for use by applications that need to process
the content of information instead of just presenting
information to humans.


OWL is an extension to RDF and RDF Schema


Three sublanguages:


OWL
Lite


classification hierarchy and simple constraints


OWL DL


maximum expressiveness, computational completeness, and
decidability


OWL Full


maximum expressiveness and the syntactic freedom of RDF with no
computational guarantees.


OWL extends vocabulary description allowing
to express claims such as...


Nothing can be both wine and beer.


grandParent

and
grandChild

are inverses.


homepage is uniquely identifying property.


A W3CTeamPerson is a Person whose
workplaceHomepage

is http://www.w3.org/


OWL (Web Ontology Language)

by W3C





56

Definition of Research


Research is an

ORGANIZED

and

SYSTEMATIC

way of

FINDING ANSWERS

to

QUESTIONS.



SYSTEMATIC

because there is a
definite set of procedures and steps

which you will follow. There are certain things in the research process which
are always done in order to get the most accurate results.



ORGANIZED

in that there is a
structure or method in going about doing
research
.
It is a planned procedure, not a spontaneous one
.
It is focused
and limited to a specific scope
.



FINDING ANSWERS

is the end of all research. Whether it is the answer
to a hypothesis or even a simple question,
research is successful when we
find answers
. Sometimes the answer is no, but it is still an answer.



QUESTIONS

are central to research
.
If there is no question, then the
answer is of no use
.
Research is focused on relevant, useful, and important
questions
.
Without a question, research has no focus, drive, or purpose
.


http
://
linguistics
.
byu
.
edu
/
faculty
/
henrichsenl
/
ResearchMethods
/
RM_1_01
.
html


57

Academic Research


In
academic research
, you must not only answer a
question, but you must find something
new

and
interesting
.



You join a community of researchers
.


You must
advance

the collective understanding of this community.




Each community has a cumulative tradition with a
set of interesting questions, tools and methods,
practices, a style and language for writing up the
research.


Research is a conversation and ongoing social activity!



You need critical and careful reading of published
research


to learn what the community already knows


to fit your work into the community


to be prepared for your own work to be evaluated

58

Basic Research


Refers to
study and research

on pure
science

that is meant to increase our scientific
knowledge base.



This type of research is often purely theoretical
with the intent of increasing our understanding
of certain phenomena or behavior but
does not
seek to solve or treat these problems.


(
http://psychology.about.com/od/bindex/g/basicres.htm
)


59

Applied Research


Refers to
scientific study and research that
seeks
to solve practical problems
.



Applied research is
used to
find solutions

to
everyday problems, cure illness, and develop
innovative technologies
.


(
http://psychology.about.com/od/aindex/g/appres.htm
)


60

Action Research


Action research

is
research that each of us
can do on
our own practice
, that “we” (any
team or family or informal community of
practice) can do to improve its practice, or that
larger organizations or institutions can conduct
on themselves, assisted or guided by
professional researchers,
with the aim of
improving their strategies, practices, and
knowledge

of the environments within which
they practice.

http
://
en
.
wikipedia
.
org
/
wiki
/
Action_research

http
://
www
.
web
.
ca
/
~
robrien
/
papers
/
arfinal
.
html


61



AI in Education & ITS
Researches

62

A Web
-
based Intelligent Tutoring System for Computer
Programming





Abstract

Web Intelligence is a direction for
scientific
research that
explores practical applications of
Articial

Intelligence to the
next generation of Web
-
empowered systems. In this paper,
we present a Web
-
based intelligent tutoring system for
computer programming. The decision making process
conducted in our intelligent system is guided by Bayesian
networks, which are a formal framework for uncertainty
management in
Artificial
Intelligence based on probability
theory. Whereas many tutoring systems are static HTML
Web pages of a class textbook or lecture notes, our
intelligent system can help a student navigate through the
online course materials, recommend learning goals, and
generate appropriate reading sequences.

63

Developing Agent
-
oriented E
-
Learning Systems




Abstract

The

paper

proposes

an

agent
-
oriented

extensible

framework

based

on

Extensible

Markup

Language

(XML)

family

for

building

a

hypermedia

e
-
Learning

system

available

on

the

World

Wide

Web
.

The

paper

is

focus

on

the

implementation

solutions

of

an

e
-
Learning

(tutoring)

Web
-
based

system

by

deploying

mobile

agents

that

can

exchange

information

in

a

flexible

way

via

XML
-
based

documents

(such

as

RDF

assertion

or

/and

SOAP

messages)
.

64

On the Prospects of Intelligent

Collaborative E
-
learning Systems





Abstract

Collaborative

learning

is

question
-
driven

and

open
-
ended

by

nature
.

Many

of

the

techniques

developed

for

intelligent

tutoring

are

applicable

only

in

more

structured

settings,

but

fortunately

there

are

other

interesting

opportunities

to

explore
.

In

this

paper

we

introduce

a

system

called

OurWeb
,

and

use

it

as

an

exemplar

framework

for

demonstrating

some

of

these

opportunities
.

We

claim

that

effective

participation

in

distributed

and

self
-
organizing

collaboration

requires

suf
-

cient

awareness

of

the

resources

and

dynamics

of

the

community
.

The

feasibility

of

implementing

certain

features

of

this

kind

is

evaluated

based

on

data

from

two

university

level

courses
.