Software Agent Yechnology

Download Report

Transcript Software Agent Yechnology

Asst.Prof. Surasak Mungsing Ph.D.
[email protected]
• Motivation and definitions
 Why do we need agents?
 What is an agent?
• Agent architectures
technologies, issues, advantages,
disadvantages
 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’.
 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.

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
 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

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 develop
N. Jennings, K. Sycara, M. Wooldridge (199
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
 "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
 “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
Barbara
determine actions.
” Hayes-Roth
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
•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
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;
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 computerrelated 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
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.

“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.
 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.
Intelligent
Agents
Intelligent
Agents
Interface
Agents
Hardware
Agents
Informatio
n
Agents
Software
Agents
Cooperatio
n
Agents
Transaction
Agents
Distributed Artificial
Intelligence
Parallel
AI
Distributed
Problem
Solving
Multi-Agent
System
Rao/Georgeff ‘95
• Reactive agent
• Deliberative agent
• Hybrid agent
Brooks ‘86
Agent
Deliberative component
World
Model
S
e
n
s
o
r
s
Planner
observations
Plan
executor
E
f
f
e
c
t
o
r
s
modifications
Reactive component
State1
Action1
State2
..
.
Action2
Staten
Actionn
..
.


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: a sequence of agent message
interactions with some common thread.
(<Performative>
:content <statement/speechact>
:sender <name>
:receive <name>
:language <text>
:ontology <text>
)
Performative corresponds to speech act
types.
(ask-one
:content (PRICE IBM ?price)
:receiver stock-server
:language LPROLOG
:ontology NYSE-TICKS
)
Query formulated using LPROLOG.
Ontology is ‘computer systems’.





Agents
Platforms
Communications
Ontology
Applications
• A place where agents live
 not always needed
• Agent management
 creation – termination
 security
• Agent communication services
• Agent directory services
• 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 O1
fruit
apple
lemon
orange
• 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/
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
55



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
56
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)
57
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)
58
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
59
60
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.
61
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).
62
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.
63