Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Mobile Agents In An Insecure Environment Tutorial IIWAS 2002, Bandung, 10 – 12 Sept 2002 Database Agents 1 Who am I? Project Manager Evaluation of Mobile Agent Platforms Topics of research Mobile and distributed systems Wireless communictation technolgies Database Agents 2 Virtual Tutorial CD http://www.scch.at/agents All slides as PDF file Source Code Java Class Files Grasshopper not included due to restrictions - However, Grasshopper can be downloaded (evaluation and noncommercial licenses free) at http://www.grasshopper.de Database Agents 3 Overview Introduction to agent technology Definition Classification Standardization Agent capabilites Mobility Communication and Cooperation Security Database Agents 4 General Remarks Prerequisites None Mobile Agents for Databases Using Grasshopper by Ludwig Klug Conceptual 2nd part of this tutorial Practical application of mobile agents in a database framework with demos Database Agents 5 Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Introduction to Agent Technology Database Agents 6 Agent-Based Computing Hype or Paradigm Shift? “My guess is that agent-based computing will be what object-oriented programming was in the 1980s. Everybody will be in favor of it. Every manufacturer will promote his product as supporting it. Every manager will pay lip service to it. Every programmer will practice it (differently). And no one will know just what it is.” (Jennings, OOPSLA 2000) Database Agents 7 Strong Increase in Research Activities 1st Int. Workshop on Agent Systems and Applications (WOA2000) 1st Int. Workshop on Web Agent Systems and Applications (WASA 2000) 2nd European Agent Systems Summer School (EASS 2000) 2nd Int. Symposium on Mobile Agent Applications (MAA'2000) 2nd Int. Symposium on Agent Systems and Applications (ASA 2000) 4th Int. Symposium on Mobile Agents (MA 2000) Database Agents 8 Strong Increase in Research Activities 4th Int. Conference on Autonomous Agents (Agents 2000) 4th Int. Conference on Multi Agent Systems (ICMAS 2000) 4th Int. Workshop on Cooperative Information Agents (CIA 2000) 5th Int. Conference on Autonomous Agents (Agents 2000) 6th ECOOP Workshop on Mobile Object Systems (ECOOP 2000) 6th Int. Conf. on Information Systems, Analysis and Synthesis (ISAS 2000) Agent-Oriented Information Systems (CAiSE 2000) Database Agents 9 Increased Availability of Systems AgentBuilder iGEN AgenTalk Intelligent Agent Factory Agentx Aglets Concordia DirectIA Gossip Grasshopper Database Agents JACK Intelligent Agents JAM Jumping Beans LiveAgent 10 Increased Availability of Systems MadKit Voyager Microsoft Agent Agent Factory D‘Agents NetStepper Pathwalker Agent Tcl Swarm TACOMA UMPRS Ascape Via Bee-gent Database Agents 11 Increased Availability of Systems EXCALIBUR Mobiware Gypsy SOMA Hive MOLE Inforsiders RETSINA JADE Zeus JAT Ara Database Agents 12 State of the Art: Overview Definition and Classification Definition Classification Agent Types Standardization Basic Characteristics Database Agents 13 Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Definition What is an agent? Database Agents 14 Definition No unique definition in literature Various classification schemes Various characterizing features (mobility,...) Database Agents 15 Definition Provisional Definition (Software Agents) “Software program that can do some defined action for a user, which has some kind of intelligence to give the ability to do part of its function autonomously and which can interact with its environment.“ Database Agents 16 Classification (I) Classification by mobility Mobile or not mobile? Interaction capabilities Deliberative or reactive? Ideal attributes Learning – autonomy – cooperation Area of influence Autonomy – intelligence - mobility Database Agents 17 Classification (II) Learning – Autonomy – Cooperation Learning Interface Agents Smart Agents Collaborative Agents Autonomy Database Agents Collaborative Learning Agents Cooperation 18 Classification (III) Area of Influence Decision Theory Communication Network Autonomy Learning Capability Mobility Proactivity Characteristic Artificial Intelligence Communication Reactivity Cooperation Distributed artificial Intelligence Database Agents Character Psychology 19 Classification (IV) autonomy Interaction with application Interaction with data User presentation Asynchronity Autonomy – Intelligence Mobility Agents with fixed functionality Interaction with services Expert Systems consequences static preferences learning planning intelligence Mobile Scripting Mobile Objects Mobility Database Agents 20 Agent Types Collaborative Agents Reactive Agents Interface Agents Hybrid Agents Mobile Agents Heterogeneous Agents Information/Internet Agents Smart Agents Database Agents 21 Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Standardization Database Agents 22 Overview FIPA Foundation of Intelligent Physical Agents Covers the whole range of agent software architecture MASIF Mobile Agent System Interoperability Facility Covers only mobile agents Convergences and differences Database Agents 23 FIPA Software Agent Agent Platform Agent Management System Directory Facilitator Agent Communication Channel Agent Communication Channel Internal Platform Message Transport Database Agents 24 MASIF Region create/suspend/resume/terminate agent receive agent list agents/places get MAFFinder get agent system type get agent status,... Agent System (Agency) Place Agents Region Registration Component register agent/place/system de-register agent/place/system lookup agent/place/system Agency Services MAF Agent System MAF Finder Communication Channel (ORB) Database Agents 25 Convergences & Differences Communication Channel (ORB) Convergence MASIFaccess part FIPA agent platform Agent Management Service Directory Facilitator Agent Communciation Channel Internal Platform Message Transport Differences FIPA: whole platform MASIF: minimal definitions Agent Platform Database Agents 26 State of the Art: Overview Definition and Classification Basic Characteristics Mobility Communication and cooperation Security and authentication Information filtering and retrieval Learning and planning User modeling Open issues Database Agents 27 Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Characteristic Properties Database Agents 28 Mobility of agents Ability of agents to move between computers Agents: „move“ –> „migrate“ Weak migration Strong migration Strong (data and control) Weak (data only) Database Agents 29 Mobility of agents Basic platform runtime required on each computer Distribution of task when needed Database queries within DBMS Searching within network Weak (data only) Database Agents 30 Communication Communication Protocols, Procedures Agent communication languages – Knowledge Query and Manipulation Language (KQML) – FIPA-ACL – XML Database Agents 31 KQML Message (tell :sender sellerAgent :receiver fhBot :in-reply-to id333-222-289 :ontology ecbk12 :language Prolog :content “price(ISBN453276,20.98)” ) Database Agents 32 Cooperation Contract-Net-Node Protocol Task Processor Local database Communication Processor Network Contract processoror Database Agents 33 Security and Authentication Threats Unauthorized disclosure of information (Confidentiality) Denial of service (DoS) - availability TNT TNT TNT Corruption of information (integrity) TNT TNT TNT TNT Database Agents 34 Security and Authentication Malicious Strategies Agent attacking platform Agent attacking agent Platform attacking agent Agent system attacking Mechanisms Encryption, SSL, PKI, Code Signing, Trusted Third Parties Database Agents 35 Information Filtering and Retrieval Basics Unstructured information Different kinds and sources of information Text representation Free text search Semantic approach Information Filtering Long-term information retrieval Database Agents 36 Information Filtering and Retrieval Information retrieval is based on supplies analysis of data units documents Information during the retrieval Analysis of data with with Principles of knowledge representation Transformations indexing classifying retrieval operations stored in on Internal knowledge structure (database structures) Database Agents 37 Learning and Planning Planning Multi-Agent-Planning Single - Agent - Planning Central Multi-Agent-Planning Task-oriented Planning Database Agents distributed Multi-Agent-Planning Plan coordination 38 Learning and Planning Database Agents 39 User Modeling Simulation of user‘s preferences Required for information filtering and user retrieval User profile Creation of user profile Initial profile Observing user patterns and preferences Agent => Customized information search Information source Database Agents 40 Fundamental Questions, However, Remain What is the essence of agent-based computing? Why are agents an appealing computational model? What are the drawbacks of an agentoriented approach? What are the implications for future software architectures? Database Agents 41 Ongoing Research Learning and planning capabilities Distributed planning Distributed knowledge collection and representation User modeling User preferences for information retrieval and filtering Database Agents 42 Ongoing Research Communication and cooperation Agent communication Agent negotiations Security Encryption of data Digital certificates Database Agents 43 Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Commercial Agent Platforms Selection Database Agents 44 Aglets Manufacturer: Current Version: JDK Version: Characteristics: Open source (formerly IBM) 1.1 1.1.x many security features available easy to use GUI for administration of the agent platform book available; open source WWW Database Agents http://www.aglets.org 45 Grasshopper Manufacturer: Current Version: JDK Version: Characteristics: IKV++ GmbH, Berlin, Germany 2.2 1.2.2 support for the current standard security concepts useful GUI for administration and monitoring of agents detailed documentation WWW Database Agents http://www.grasshopper.de 46 Jumping Beans Manufacturer: Current Version: JDK Version: Characteristics: Ad Astra Engineering 2.2 1.2 security features are on a high level of maturity documentation not up-to-date migration of the agents is very slow thread problem using a GUI WWW Database Agents http://www.jumpingbeans.com 47 Soma Manufacturer: Laboratory of Advanced Research on CS, University of Bologna, Italy Current Version: JDK Version: Characteristics: 4.0 1.2 main aspect in security and mobility using open standards like MASIF or FIPA no useful documentation available WWW http://www-lia.deis.unibo.it Database Agents 48 Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Using Agents For Real-World Applications Database Agents 49 Why Mobile Agents? Dataset Real Deployment Reduce Network Dataset Load Dataset Overcome Network Latency Merged and filtered data stream Dynamically selected proxy site Text documents, numerical data, etc. Dataset Server Client/Proxy Synchronity and Asynchronity Dataset Client/Proxy Database Agents 50 No Agents, Please! Relative to Mobile Agents, Client/Server is Network Bound Use mobile agents if your application does a little processing on a large dataset Relative to Client/Server, Agents are CPU Bound Do not use mobile agents if your application does a lot of processing on a small dataset Database Agents 51 Next Generation Systems Remote communication just as fast as RPC No penalty for stationary agent Just-in-time compilation and software fault isolation Execution at near-native speeds Code caching Low migration overhead => “Mobile agents will do no worse than traditional implementations, and will often do better“. [Bob Gray, Dartmouth College, ASA/MA ‚2000] Database Agents 52 What is the essence of agent-based computing? Component-based software engineering of the future. Small pieces of code (fewer errors). Easy “updates” because updates are not necessary. Database Agents 53 Franz Gruber [email protected] +43 7236 3343 893 www.scch.at Questions – Discussion What do you think?? Database Agents 54