Artificial Intelligence and Multi

Download Report

Transcript Artificial Intelligence and Multi

FACULTAD DE INFORMATICA
___________________
UNIVERSIDAD POLITECNICA DE MADRID
Artificial Intelligence and Multi-Agent Systems
Ana García-Serrano
PROMAS, AL3 TF2
Ljubljana, 28 Feb. 2005
Software Engineering and Knowledge Engineering (AI)
Procedures (systematic operation)
- Complex specifications
- Well known Data and Techniques
to solve the problem
- Documentation
Mixed data and procedure
Determinists: Same output for the
same input
Heuristics or declarative procedures
- Incomplete specifications
- The data, knowledge and solving
methods belongs to the experts
- Lack of documentation
- The knowledge and the inference
methods are different entities
- Explanation capabilities
Non-deterministic
USE ONLY WHEN NEEDED!
Intelligent agent (from AOSE AL3 TF2)
As the systems becomes complex it is needed abstractions and
metaphors to explain their operations.
INTELLIGENT AGENT
A cognitive agent that is proactive (through an analytical or reactive
operations ie decision) and use a representation of the environment
AND
- has a representation of N (possible 0) other agents (users or agents)
- is endowed with an extensive domain model
AND ALSO …
Learning (acquire the knowledge it needs to his operation/reasoning)
Deep Understanding of emotions…
BUT … the designer has to recognise the opportunity for employing
an intelligent agent and trust on its competences
We don’t want to solve all the problems in AI: BUILD USEFUL AGENTS!
Anatomy of a cognitive-intelligent agent
COMMUNICATION LAYER
KNOWLEDGE
* Capacity for problem
identification
Individual model
* Internal capacity of problem
solving: reactive or analytical
Social model
* Knowledge about the
(perceived/ known) structure
of other agents
METHODS
* Reasoning about
problems.
* Perception of the virtual
or physical environment
* Interaction Protocols
- subtasks assignment
- resources competition
- sharing of tasks
* Strategic knowledge for rational
decisions (agenda, utilities)
AGENDA: prioritized sequence of tasks, Ti, Tj, Tk, Tp, ...
Agent-based Engineering
Agent concept in fashion during last decade as any software system
• rational and autonomous action in a (changing) environment
• able to interact into a network (of possible 0 nodes):
» Agent based systems (problem centred approach)
• A very useful paradigm to cope with dynamic interactions between
distributed resources, distributed task execution, legacy systems…
• Sets of benevolent agents with shared goals
• The modularity allows changes and facilitates the upgrade and
recovering from unexpected situations
USE WHEN REALLY NEEDED! (lower cost of centralized solution)
Intelligent assistance to e-commerce: The ADVICE project
IS THERE A PROBLEM TO SOLVE?
The e-commerce solutions has to be improved given that:
 Mainly focus on the presentation of goods
 The interaction is guided by the user
 From the customer point of view: the search and the selection of
products is a difficult task due to the lack of assistance
IS ADECUATE THE USE OF Intelligent AGENTS?
An agent-based architecture reflects the conceptual and functional
distribution of the decision support installed as a top layer of legacy system:
 Intelligent agent to model the sales business
Interaction agent to user/system mixed initiative
 Interface agent to multimedia input/output that satisfies the user
Knowledge
Knowledge engineering
engineering: Prolog ¿enough?
34 relaxed patterns
150 tokens
45 templates
Expressive input
and output
18 com. acts
37 states
90 transitions
Fluid communication
with the user
XML file 1132 lines
4 Product categories
23 products
12 different features
A good quality
information to
the user
ATN
Multimedia
planner
Decision
tree
Ontology
KB Rules
Working prototype in Ciao Prolog and Java
Interface Agent
Java layer
NL
Analyser
streams of
speech acts
regist(new_NLAg)
Java Layer
streams
of
speech
acts
XML Java RMI
streams of
speech acts
NL
Generator
Dialogue Processing
Components
Interface
Manager
Java
RMI
Interaction
Agent
problem
solving
tasks
Intelligent
Agent
offer
tree
XML Java RMI
RMI REGISTRY
regist(new_InA)
RMI REGISTRY
Working prototype in Ciao Prolog and Java (multi-user)
RMI REGISTRY
RMI REGISTRY
Register(InA1)
Register(InA2)
Register(int1)
Register(int2)
USER 1
DPC 1
ciao
New_user
create
create
Interfaces
Manager
New_user
create
New_int
Interaction
Manager
New_int
create
Java
Interface
Ag 2
USER 2
Java
Interface
Ag 1
DPC 2
ciao
MAS Engineering
Agent concept in fashion during last decade as any software system
• rational and autonomous action in a (changing) environment
• able to interact into a network (of possible 0 nodes):
»Multi-agent systems (interaction centred approach)
• A very useful paradigm to the deployment of inherently complex
(no-structured) applications in inherently distributed environments
• Heterogeneous agents in any kind of organization or society
• Harmonization of the interaction between active agents
USE WHEN REALLY NEEDED! (the centralized solution is better
MAS: Traffic Control Agents TRYSA2
TRYSA2: convert the original “benevolent” TRYS
agents into “rational” agents
TRYS embedded agents produces
executable local signal plans with
local utility value
agent
agent
agent
Structural co-operation
- Normative layer: permissions and prohibitions
to use control devices
- Social layer: distributed search for the global
signal plan that corresponds to the bargain
outcome (efficient and fair)
Robust and scalable solution reaching a lower
quality solution than the agent based with
coordinator
agent
- 1.000 lines of C++
- 5.000 lines of prolog
- 500 lines of Tcl/Tk
Traffic Control Agents TRYS
Generic Structure of the
TRYS decision model
...
Agent 1
Problems
Knowledge
Problem
Scenarios
Control Actions
Knowledge
Behaviour
Knowledge
Demand
Model
Traffic Network
Management
Control
Actions
Physical
Structure
Agent N
Problems
Knowledge
Problem
Scenarios
Co-ordinator
Control Actions
Knowledge
Behaviour
Knowledge
Demand
Model
Control
Actions
Physical
Structure
Proposals
Compatibility
Knowledge
Agents
Priority
Knowledge
Proposals
Completion
Knowledge
Coordination Agent:
integrates local control
proposals into global
consistent signal plans
Object O
Artificial
Intelligence
(inference as
computation)
* Solve realistic and
business problems
* Added value (with
additional
functionalities)
yes
Programming
language and
methodology
Expert systems
Fuzzy reasoning
Knowledge manag.
Prolog
Agent
technology
Modular
Decentralized
MAS
Dynamic environ.
Ill structured
Combi. Complexity
C++
Java, Corba
(Modifiable modules)
(Proactivity: comm.
remote execution)
???
(Continuous changes)
(Under Specification)
* Pragm. experience
and opportunity to
use agents
* Supporting tools
for non academics
yes
More than toy
applications?
No for general use
E-commerce …
???
Scheduling …
Deployment
platforms
Comments ...
J
U
S
T
W
H
E
N
AI
the representation and management of the data (reasoning)
conditions the way of solving problems
MAS
the way of interacting conditions the way of solving problems
instead of traditional
the way of solving problems conditions the way of interacting
N
E
E
MAS + AI
D
E The reasoning about the way of interacting as a requirement to decide
the way of solving problems
D
¡