Agents, Mobility, Ubiquity & Virtuality Gregory O’Hare Department of Computer Science, University College Dublin Agent Oriented Design COMP 30240 Multi-Agent.

Slides:



Advertisements
Similar presentations
Understanding Code Mobility
Advertisements

Lectures on File Management
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Chapter 13 Review Questions
Agents That Reason Logically Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 7 Spring 2004.
Sensor Network Platforms and Tools
MiLAN: Middleware to Support Sensor Network Applications Wendi B. Heinzelman, Amy L. Murphy, Hervaldo S. Carvalho, Mark A. Perillo University of Rochester.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
This material is based upon work supported by Science Foundation Ireland under Grant No. 03/IN3/1361 UNIVERSITY COLLEGE DUBLIN DUBLIN CITY UNIVERSITY The.
Fakultät Informatik – Institut für Systemarchitektur – Professur Rechnernetze MiLAN Muhammad Mirza Zeeshan Mehmood Supervisor: Dr. Waltenegus DargieDr.
Variability Oriented Programming – A programming abstraction for adaptive service orientation Prof. Umesh Bellur Dept. of Computer Science & Engg, IIT.
1 Basic abstract interpretation theory. 2 The general idea §a semantics l any definition style, from a denotational definition to a detailed interpreter.
Distributed Systems Architectures
An Architecture-Based Approach to Self-Adaptive Software Presenters Douglas Yu-cheng Su Ajit G. Sonawane.
Extensibility, Safety and Performance in the SPIN Operating System Brian Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Department of Computer Science© G.M.P O'Hare University College Dublin DEPARTMENT OF COMPUTER SCIENCE COMP 4.19Multi-Agent Systems(MAS) Lectures 19&20.
Naming in Wireless Sensor Networks. 2 Sensor Naming  Exploiting application-specific naming and in- network processing for building efficient scalable.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
UNIVERSITY COLLEGE DUBLINDUBLIN CITY UNIVERSITY SMI || NCSR || CDVP A Methodology for the Deployment of Multi-Agent Systems on Wireless Sensor Networks.
1 Constructing Locally Centralized Applications by Mobile Agents in Wireless Sensor Networks 2008/05/14 Shunichiro Suenaga* (Nihon Unisys Ltd./The Graduate.
Agents, Mobility, Ubiquity & Virtuality Gregory O’Hare Department of Computer Science, University College Dublin Mobile Agents & Wireless Sensor Networks.
The Multi-Agent System IDE : What it Should and Should not Support Gregory O’Hare, Department of Computer Science, University College Dublin.
Tcl Agent : A flexible and secure mobile-agent system Paper by Robert S. Gray Dartmouth College Presented by Vipul Sawhney University of Pennsylvania.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.
Mobile Agents in Wireless Sensor Networks Ivan Vukasinovic Zoran Babovic Goran Rakocevic.
Computer System Architectures Computer System Software
MiLAN: Middleware to Support Sensor Network Applications Jonghak Kim, Da Huo, Hyungik Oh.
Arpit Jain Mtech1. Outline Introduction Dalvik VM Java VM Examples Comparisons Experimental Evaluation.
Database Design – Lecture 16
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
An Introduction to Software Architecture
Distributed Shared Memory: A Survey of Issues and Algorithms B,. Nitzberg and V. Lo University of Oregon.
Rapid Development and Flexible Deployment of Adaptive Wireless Sensor Network Applications Chien-Liang Fok, Gruia-Catalin Roman, Chenyang Lu
Improving Network I/O Virtualization for Cloud Computing.
Rapid Development and Flexible Deployment of Adaptive Wireless Sensor Network Applications Chien-Liang Fok, Gruia-Catalin Roman, Chenyang Lu
Distributed Systems: Concepts and Design Chapter 1 Pages
Mobile Relay Configuration in Data-Intensive Wireless Sensor Networks.
Database Systems: Design, Implementation, and Management Ninth Edition Chapter 12 Distributed Database Management Systems.
Korea Advanced Institute of Science and Technology Active Sensor Networks(Mate) (Published by Philip Levis, David Gay, and David Culler in NSDI 2005) 11/11/09.
Distributed Database Systems Overview
Embedded Runtime Reconfigurable Nodes for wireless sensor networks applications Chris Morales Kaz Onishi 1.
10 1 Chapter 10 Distributed Database Management Systems Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 3.
Investigating Survivability Strategies for Ultra-Large Scale (ULS) Systems Vanderbilt University Nashville, Tennessee Institute for Software Integrated.
Understanding Code Mobility A Fuggetta, G P Picco and G Vigna Presenter Samip Bararia.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
Mobile Agents For Mobile Computing Department Of Computer Science – Dartmouth College Robert Gray David Kotz Saurab Nog Daniela Rus George Cybenko.
1 Compiler Construction (CS-636) Muhammad Bilal Bashir UIIT, Rawalpindi.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Richard Tynan, G.M.P. O’Hare, Michael O’Grady & Conor Muldoon School of Computer Science & Informatics University College Dublin Ireland.
Tufts Wireless Laboratory School Of Engineering Tufts University Paper Review “An Energy Efficient Multipath Routing Protocol for Wireless Sensor Networks”,
Archictecture for MultiLevel Database Systems Jeevandeep Samanta.
Institute for Visualization and Perception Research 1 © Copyright 1999 Haim Levkowitz Java-based mobile agents.
1 Software Reliability in Wireless Sensor Networks (WSN) -Xiong Junjie
Propositional Logic Rather than jumping right into FOL, we begin with propositional logic A logic involves: §Language (with a syntax) §Semantics §Proof.
EEL 5937 Content languages EEL 5937 Multi Agent Systems Lecture 10, Feb. 6, 2003 Lotzi Bölöni.
Problem On a regular basis we use: –Java applets –JavaScript –ActiveX –Shockwave Notion of ubiquitous computing.
Agenda  Quick Review  Finish Introduction  Java Threads.
Energy Efficient Data Management in Sensor Networks Sanjay K Madria Web and Wireless Computing Lab (W2C) Department of Computer Science, Missouri University.
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
Presentation 3: Designing Distributed Objects. Ingeniørhøjskolen i Århus Slide 2 af 16 Outline Assumed students are knowledgeable about OOP principles.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
Software Architecture of Sensors. Hardware - Sensor Nodes Sensing: sensor --a transducer that converts a physical, chemical, or biological parameter into.
Chapter 4: Threads Modified by Dr. Neerja Mhaskar for CS 3SH3.
Cloud Testing Shilpi Chugh.
An Introduction to Software Architecture
Presentation transcript:

Agents, Mobility, Ubiquity & Virtuality Gregory O’Hare Department of Computer Science, University College Dublin Agent Oriented Design COMP Multi-Agent Systems Lectures: Gregory O’Hare School of Computer Science & Informatics, University College Dublin (UCD)

A Modal Logic Classification KT4 = KDT4 K K4 K5KD KT = KDT K45KD5 KD4 KD45 KT5 = KT45 KDT5 KDT45 Notation A B Means that B is a strict superset of A that is every theorem of A is a theorem of B but not vice versa A = B Means that A and B contain exactly the same theorems

Common Pitfalls of Agent oriented Design  Over selling of the agent metaphor and a failure to fully appreciate where agents can usefully be deployed in the design  Overly dogmatic and evangelical in the adoption of AOD.  Unsure as to why agents ought to be used  A desire to build generic solutions for what is in essence a one off problem;  The believe agents are a panacea or silver bullet;  One forgets that agent systems are indeed but one class of software and demand all the same methodological approaches. This is compounded by the immature nature of AOD methodologies.

Common Pitfalls of Agent oriented Design  Agent designs are inherently multi-threaded and as such must be respectful of the dangers of making the same mistakes that dog multi- threaded software  Designers often fail to exploit concurrency;  An unwillingness to exploit off the shelf architectures and software components;  The designer can see agents everywhere  The designer can see too few agents;  Agents interact too freely and in an undisciplined manner;

The Logical Omniscience Problem The logical omniscience problem occurs as a consequence of:  Knowing all valid formulae; and all knowledge/belief deriving from such under closed logical consequence.  Refers to the fact that such logics suffer from the fact that according to this model that if agent X believes/knows a set of axioms to be true then they must therefore believe that all the logical consequences of this set of axioms to be true. Thus the associated problems of computational tractability. Givena implies b Believes(w,a) ThenBelieves(w, b).

The Logical Omniscience Problem  Two well recognized approaches to representing Models of Belief are those of:- (i)Possible Worlds Model and (ii)Sentential Semantics.  Several approaches have been taken to try and circumvent the problem of ‘Logical Omniscience’ These can be characterised as :-  Syntactic Approach - Moore and Henderix (1979), Konolige (1986)  Semantic Approach-Levesque (1984)

Possible Worlds Model  Differentiate between the  Necessarily true operator (P) is true at wi in the frame iff P is true in all worlds wj in this frame such that wj is accessible from wi (written R(wi,wj))  Possibly true operator (P) is true at wi in the frame iff P is true in wi or a world(s) wj in this frame such that wj is accessible from wi (written R(wi,wj))

Possible Worlds Model  Within the possible worlds model there is not merely one world but multiple worlds. Each world represents a different conceptualisation of the same base symbols and sentences.  Associated with each world w1..wn there is an Interpretation I1..In.  Within this model a wff is either true or false wrt a given world.  A wff has a value true with respect to a world wi when it evaluates to be true using the interpretation associated with that world.  An accessibility relation R exists which:  R(a, wi, wj) is satisfied when a world wj is accessible from world wi for agent a.  Differentiate between the  Necessarily true operator possibly  (P) is true at wi in the frame  iff P is true in all worlds wj in this frame such that wj is accessible from wi (written R(wi,wj))  Possibly true operator (P) is true at wi in the frame  iff P is true in wi or a world(s) wj in this frame such that wj is accessible from wi (written R(wi,wj))

Agents, Mobility, Ubiquity & Virtuality Gregory O’Hare Department of Computer Science, University College Dublin Agents and Wireless Sensor Networks COMP Multi-Agent Systems Lectures: Gregory O’Hare School of Computer Science & Informatics, University College Dublin (UCD)

Agilla  Agilla is a middleware that provides a mobile-agent paradigm for programming and using wireless sensor networks (WSNs) it was developed at the University of Washington St Louis.  Agilla applications consist of mobile agents that can proactively migrate their code and state across the network.  Agilla runs on top of TinyOS and allows multiple agents to execute on each node. The number of agents is variable and is determined primarily by the amount of memory available. Each agent is autonomous, but shares middleware resources with other agents in the system.

Agilla Middleware Architecture

Agilla Agilla provides two fundamental resources on each node: 1.a neighbour list. The neighbor list contains the addresses of neighboring nodes. This is necessary for agents to decide where they want to move or clone to next. 2.a tuple space The tuple space provides an elegant decoupled-style of communication between agents. It is a shared memory architecture that is addressed by field-matching rather than memory addresses. A tuple is a sequence of typed data objects that is inserted into the tuple space. The tuple is remains in the tuple space even if the agent that inserted it dies or moves away. Later, another agent may retrieve the tuple by issuing a query for a tuple with the same sequence of fields. Note that tuple spaces decouples the sending agent from the receiving agent: they do not have to be co-located, or even aware of each other's existence, for them to communicate.

Agilla  Agilla is the first mobile agent middleware for WSNs that is implemented entirely in TinyOS.  It has been tested on Mica2 and MicaZ motes. It abstracts away complexities associated with developing WSN applications, and provides mechanisms that overcome the challenges associated with limited resources and unreliable network communication.  It demonstrates the feasibility of using mobile agents within WSNs and, furthermore, it takes the first steps at identifying a minimal set of primitives that should be provided for facilitating highly flexible WSN applications.

Motivation for Mobile Agents within WSNs  Mobile agents offer more flexibility by allowing applications to control the way they spread. They can position themselves in the optimal locations for performing application-specific tasks.  They can save energy by bringing computation to the data rather than requiring that the data be sent over unreliable wireless links.  They can increase the utility of a WSN by constraining themselves to the specific locals that are relevant to their application's requirements (in contrast to spreading throughout an entire network), and sharing the resources of a single node, i.e., multiple mobile agents can reside on each WSN node.  Other systems like Deluge and Maté allow in-network reprogramming. Agilla, however, goes one step further by allowing programs to control where they go and to maintain both their code and state across migrations.

Motivation for Mobile Agents within WSNs  Since new agents can be injected into a pre-existing network, the network can be re-tasked. Since each agent executes autonomously and multiple agents can simultaneously run on a node, multiple applications can co-exist.  Since mobile agents can move and clone, they can quickly morph an application's installation base to handle unexpected changes in an environment. There are many other inherent advantages of using mobile agents, especially in a wireless sensor network.

Challenges for Agents and WSNs However, there are also many challenges:  the foremost being the lack of computational resources description of the resource constrained nature of a typical mote (Mica Mica2) and unreliable network connectivity (lossy and unpredictable).  Issues of serialization should (encoded in an appropriate form for transmission),  Issue of security and protecting against malicious mobile code

Comparison of AFME & Agilla Key Comparisons:  AFME supports BDI style strong agents with an explicit mental state unlike Agilla agents that are of a much weaker genre.  AFME is not dependent upon TinyOS. Agilla is and therefore can only operate on restricted platforms;  AFME is implemented in Java and is thus extremely portable though it would be argued that JVM requirements places an unnecessary expectation on the computational power of the host device;  AFME only supports weak migration because of Java and the prohibition of access to system variables;