Presentation on theme: "Artificial Intelligence and Multi-Agent Systems Ana García-Serrano PROMAS, AL3 TF2 Ljubljana, 28 Feb. 2005 FACULTAD DE INFORMATICA ___________________."— Presentation transcript:
Artificial Intelligence and Multi-Agent Systems Ana García-Serrano PROMAS, AL3 TF2 Ljubljana, 28 Feb. 2005 FACULTAD DE INFORMATICA ___________________ UNIVERSIDAD POLITECNICA DE MADRID
Procedures (systematic operation)Heuristics or declarative procedures -Complex specifications -Well known Data and Techniques to solve the problem -Documentation -Incomplete specifications -The data, knowledge and solving methods belongs to the experts -Lack of documentation Mixed data and procedure - The knowledge and the inference methods are different entities - Explanation capabilities Non-deterministic Determinists: Same output for the same input Software Engineering and Knowledge Engineering (AI) 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!
* Capacity for problem identification * Internal capacity of problem solving: reactive or analytical * Knowledge about the (perceived/ known) structure of other agents * Strategic knowledge for rational decisions (agenda, utilities) * Reasoning about problems. * Perception of the virtual or physical environment * Interaction Protocols - subtasks assignment - resources competition - sharing of tasks KNOWLEDGEMETHODS COMMUNICATION LAYER AGENDA: prioritized sequence of tasks, T i, T j, T k, T p,... Individual model Social model Anatomy of a cognitive-intelligent agent
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) Agent-based Engineering
Intelligent assistance to e-commerce: The ADVICE project 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 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 IS THERE A PROBLEM TO SOLVE? IS ADECUATE THE USE OF Intelligent AGENTS?
Knowledge engineering A good quality information to the user Fluid communication with the user Expressive input and output Multimedia planner ATN Decision tree Ontology KB Rules 34 relaxed patterns 150 tokens 45 templates 18 com. acts 37 states 90 transitions XML file 1132 lines 4 Product categories 23 products 12 different features Knowledge engineering: Prolog ¿enough?
Working prototype in Ciao Prolog and Java
Interface Ag 1 RMI REGISTRY Register(int1) create New_user Interfaces Manager USER 1 New_int Interaction Manager RMI REGISTRY Register(InA1) Java ciao create DPC 1 USER 2 New_user New_int create Interface Ag 2 Register(int2) Java ciao create DPC 2 Register(InA2) Working prototype in Ciao Prolog and Java (multi-user)
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 MAS Engineering USE WHEN REALLY NEEDED! (the centralized solution is better
agent a a agent TRYSA 2 : convert the original “benevolent” TRYS agents into “rational” agents TRYS embedded agents produces executable local signal plans with local utility value 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 - 1.000 lines of C++ - 5.000 lines of prolog - 500 lines of Tcl/Tk MAS: Traffic Control Agents TRYSA 2
Traffic Control Agents TRYS Generic Structure of the TRYS decision model Coordination Agent: integrates local control proposals into global consistent signal plans
* Solve realistic and business problems * Added value (with additional functionalities) Programming language and methodology * Pragm. experience and opportunity to use agents * Supporting tools for non academics Object OyesC++yes Artificial Intelligence (inference as computation) Expert systems Fuzzy reasoning Knowledge manag. Prolog More than toy applications? No for general use Agent technology Modular Decentralized Java, Corba (Modifiable modules) (Proactivity: comm. remote execution) E-commerce … ??? MASDynamic environ. Ill structured Combi. Complexity ??? (Continuous changes) (Under Specification) Scheduling … Deployment platforms
Comments... the representation and management of the data (reasoning) conditions the way of solving problems AI the way of interacting conditions the way of solving problems instead of traditional the way of solving problems conditions the way of interacting MAS JUSTWHENNEEDED¡JUSTWHENNEEDED¡ The reasoning about the way of interacting as a requirement to decide the way of solving problems MAS + AI