My research proposal slides.

49
Present By BuSaw St 113953 September 12 th 2013 * Multi Agents System Software Development Methodology on Mobile Operating Systems using JADE

description

I am doing research "Multi Agents System Software Development Methodology on Mobile Operating Systems using JADE". The slide is only my proposal slides. Final slide will be soon. :)

Transcript of My research proposal slides.

Page 1: My research proposal slides.

Present By

BuSaw

St 113953

September 12th 2013

* Multi Agents System Software Development Methodology on

Mobile Operating Systems using JADE

Page 2: My research proposal slides.

Introduction Background Problem Statement Objective Scope Literature review Methodology

* Outline

Multi Agent System

JADE-LEAP

Page 3: My research proposal slides.

During the recent years, there is a shift in paradigm from desktop-centric computing to mobile computing due to the popularity of mobile devices such as smart phones and tablets.

So most of the IT companies are also targeting more on mobile users by developing mobile applications.

 

* Background

Desktop ComputerTablet

Telephone Smart Phone

Page 4: My research proposal slides.

Typical mobile devices are constrained through their limited resources, such as processing power and memory, user interface capabilities and network connectivity.

To provide users’ dynamic needs better, mobile application developments can be combined with multi agent systems.

Multi-agent system applications involve multiple independent and intelligent software agents interacting in the environment and can solve some problems that are impossible for other monolithic systems to solve.

* Introduction

Page 5: My research proposal slides.

Most of the mobile applications are based on client-server architecture with server doing all of the hard work and backend data storage. This has heavy privacy implications with our private data being stored on the servers.

Most of the mobile applications do not work in peer-to-peer networks without Internet connections.

Recently, there is dramatic increase in Smart phones usage. Most of the IT companies are also targeting more on mobile users by developing mobile applications. Mobile devices with different and incompatible APIs, programming languages, and distribution market places for applications.

The adoption of these multi-agent development tools in mobile phones applications has been scarce due to know-how gap between mobile application development and multi-agent systems.

* Problem statements

Page 6: My research proposal slides.

*Mobile Devices Tracking Apps

FindMyFriend app for iPhone

Life 360 App for Android

Family-Locator App for Android, Desktop

• Client Based System• Not work peer-to-peer• Not compatible with each other• Not run on the cross platform

Page 7: My research proposal slides.

To develop a proof of concept location based social tracking application using multi agent system .

To develop and implement above mentioned the Android mobile application using JADE LEAP to be a part of multi agent system.

To analyze the performance of the Multi Agent System run on Android and mobile operating system that support Java.

To design agent messages format and ontologies using FIPA ACL

* Objectives

Page 8: My research proposal slides.

The scopes of the research study will be as the following: Propose multi agent platform development model

and framework on Android mobile operating system using JADE LEAP.

Implementation of the multi agent system based on the proposed framework as a proof of concept

To explore the future possibilities and applicability of the proposed framework to different kind of mobile applications.  

* Scope

Page 9: My research proposal slides.

*Environment of Software Agents

Page 10: My research proposal slides.

Agent Technology Speech Act and Agent Communication KQML Description FIPA ACL Multi-agent system Agent on Mobile Devices Understanding of Android Application

Architecture FIPA JADE JADE LEAP in mobile devices

* Literature review

Page 11: My research proposal slides.

*What is the agent technology?

Agent also known as software agent, is a special software component that is capable of flexible autonomous action in a dynamic multi agent environment.

It behaves like a human agent, working for some clients and in pursuit of its own agenda.

It is a different computing model and paradigm suitable for dynamic and open environments where heterogeneous system interact and operate effectively.

The concept of an agent has found currently in a diverse range of sub-disciplines of information technology, including computer networks, software engineering, artificial intelligence, human-computer interaction, distributed and concurrent systems, mobile systems, telemetric, computer-supported cooperative work, control systems, decision support, information retrieval and management, and electronic commerce.

Page 12: My research proposal slides.

AutonomyMobile

Proactive

Goal-oriented

Communication

Collaboration

Sociable

Adaptive

Intelligent

Temporal Continuity

Reactive

Agent has lots of properties:

What is the Agent Technology?

Page 13: My research proposal slides.

*Multi Agent System No agent is an island. Even if an agent system can be just a solitary agent

within an environment, it is still necessary to interact with its users. Therefore, it still considered to be multiple agent.

MAS offers strong models for representing complex and dynamic real-world environments.

Multi agent system is a computer system that is composed of multiple intelligent agents communicating with each other in a dynamic environment.

Page 14: My research proposal slides.

FIPA (Foundation for Intelligent Physical Agents) founded as a non profit Swiss organization in 1996 that consists of 62 companies and organizations.

Goal To produce software standards specifications for

heterogeneous and interacting agents and promote agent based system.

Platforms - FIPA Implementations Jade (TiLab - Telecom Italy) LEAP (EU -project) BlueJade (HP) FIPA-OS (Nortel - Emorphia) MicroFIPA-OS (HY)

* FIPA

Page 15: My research proposal slides.

*Platform

Agent Platform

Agent Platform

AgentManagement

System

DirectoryFacilitator

Agent Communication Channel

Agent

Baseline Protocol

Software

Agent Communication Channel

Page 16: My research proposal slides.

A software framework- that simplifies the implementation of multi-agent systems

Implements Foundation for Intelligent Physical Agents (FIPA).

Fully implemented in Java

- Telecom Italy distributed under LPGL (lesser General Public License Version 2)

The middle-ware for Multi-Agent System (MAS) - target users: agent programmers for MAS

- agent services

- life-cycle, white-page, yellow-page, message transport

- tools for support debugging phase

- remote monitoring agent, dummy agent, sniffer agent

- designed to support scalability

- (from debugging to deployment)

from small scale to large scale

* JADE

Page 17: My research proposal slides.

JADE is a platform for running agents

To support: An asynchronous agent programming model Communication between agents either on the

same or different platforms Mobility, security, and other utilities Develop custom applications to exploit Agent

metaphor Hook agent framework to JAVA GUI applications

* What is JADE for?

Page 18: My research proposal slides.

*JADE Agent Platform

18

Network protocol stack

JRE JRE JRE

Jade Main-container Jade Agent Container Jade Agent Container

Jade distributed Agent Platform

App

lica

tion

Age

nt

App

lica

tion

Age

nt

App

lica

tion

Age

nt

App

lica

tion

Age

nt

App

lica

tion

Age

nt

App

lica

tion

Age

nt

App

lica

tion

Age

nt

App

lica

tion

Age

nt

App

lica

tion

Age

nt

Host 1 Host 2 Host 3

Page 19: My research proposal slides.

*JADE Agent Container

19

Intra-Container Message Transport

(Java events)

White pageservice

AgentManagement

System

Yellow pageservice

DirectoryFacilitator

Agent Communication Channel

Inter-Containers Message Transport

(Java RMI)

Inter-Platforms Message Transport

(IIOP)

local cache of agent addresses

Page 20: My research proposal slides.

JADE cannot run on small devices because of the complete JADE runtime environment is bigger than the usual memory of handheld devices.

JADE also requires JDK1.4 (or later) while these devices only support Personal Java or MIDP.

Wireless links have different characteristics with respect to fixed network such as high latency, low bandwidth, intermittent connectivity and dynamic IP address assignment that must be taken into account properly.

* JADE LEAP was created to deploy agents on a wide range of devices to solve these problems.

* Weakness of JADE

Page 21: My research proposal slides.

JADE-LEAP (Lightweight and Extensible Agent Platform) is an extension of JADE platform that can be deployed not only on a heterogeneous network of fixed and mobile devices with various operating systems.

The LEAP add-on was mainly developed the LEAP IST project and is available for download from the JADE web site since March 2005.

* JADE-LEAP

Page 22: My research proposal slides.

JADE-LEAP is available in different ways corresponding to the two configurations of the Java Micro Edition and the Android Dalvik Java Virtual Machine:

Pjava: to execute JADE-LEAP on handheld devices supporting J2ME CDC or PersonalJava such as PDAs.

Midp: to execute JADE-LEAP on handheld devices supporting MIDP1.0 (or later) only, such as the Java enabled cell phones.

Android: to execute JADE-LEAP on devices supporting Android 2.1 (or later).

Dotnet: to execute JADE-LEAP on PC and servers in the fixed network running Microsoft .NET Framework version 1.1 or later.

* JADE-LEAP

Page 23: My research proposal slides.

*JADE-LEAP run-time environmentEven though JADE LEAD has different versions,

All of them provide the same APIs for the multi agent application developers.

JADE LEAP offers a layer over a wide variety of devices and connectivity options.

Page 24: My research proposal slides.

Speech act theory is a linguistic analysis of human communication, which treats communication as action.

Philosopher John Austin in 1962 start distinguished three different aspects of speech acts: Locutionary act (act of making an utterance), illocutionary (i.e. what the speaker intended by

something) Perlocutionary (i.e. the actual effect of the speech

act on the hearer).

* Speech Act Theory

Page 25: My research proposal slides.

There are two kinds of message-based language for agent communication. KQML ( Knowledge Query Make-up Language) FIPA ACL ( Agent Communication Language)

In this research we will use FIPA ACL for agent communication.

* Agent Communication

Page 26: My research proposal slides.

Based on speech act theory: messages are actions or communicative acts.

ACL is proposed by FIPA as standard language for agent communication. It become part of FIPA’s open agent architecture.

FIPA-ACL maintains orthogonally with the content language and it is designed to work with any content language and any ontology specification approach.

FIPA Agent Communication Language is an attempt to address KQML shortcomings. The fundamental difference is agents are not allowed to manipulate other agent’s knowledge base directly.

It provides a cleaner and more easier to implement specification compare with KQML.

Only defines primitives for pair-wise agent communications ( agent management primitives are moved to AMS specification).

* FIPA ACL

Page 27: My research proposal slides.

*FIPA Message Structure

Content

Message

Payload

Envelope TransportInformation

Encoded MessageMessage parametersMessage content

Page 28: My research proposal slides.

• Create Message Object (ACL message)

• Set performatives

• Set sender and recipients

• Set message attributes

• Fill content (from java object)

* Constructing a Message

Page 29: My research proposal slides.

*FIPA ACL Parameters

Page 30: My research proposal slides.

*FIPA ACL Parameters Continued

Page 31: My research proposal slides.

* FIPA ACL Performatives

Page 32: My research proposal slides.

* Agent communication Example

INFORM :sender antagent :receiver bob martin :protocol status :co protocol status :conversation_id example6 :reply_with 275 :reply_by wed 3pmconversation_id example6 :reply_with 275 :reply_by wed 3pm :language lisp :ontology ant :content (target (project “1hour”) (platform “computer15”) (author “sean”)) (time “8/07/01 4pm”)

(message “build failed”) (target “compile”) )

Primary IntentInform, Request, Failure,

Refuse, ...

Addressingbroadcast, forwarding, ...

Dialogue Coordinationexpected vs exceptional

response

Detailed action or requestproblem specific

language, ontology, request

Page 33: My research proposal slides.

* OntologyAn ontology is a description of the concepts and relationships that can exist for an agent or a community of agents

To help well-defined meaning for the message contents and define vocabularies of symbols referring to objects and relationships in the subject domain.

Ontology can be defined independently of the ACL. Popular languages for Ontology are XML, XML Schema, DTD, KIF, RDF, OWL, DAML + OIL, etc.APPLE

Apple Phone

Apple Compan

y

Page 34: My research proposal slides.

*Smart Phones

iPhone

Nokia

Blackberry

Android OS based Mobile Phones(LG, Samsung, Nenux 4, etc...

In this research will focus on only

Page 35: My research proposal slides.

• Is an open source Linux-based operating system for mobile devices and tablet computers.

• Developed by the Open Handset Alliance led by Google

• Apps can be downloaded from third-party sites or through online stores such as Google Play

• The advantage of Android being a multi-channel, multi-carrier OS and 79% of the market share and one million new devices activated every day in 2013

*Android

Platform Characteristic

Android Free distribution Programming language:

Java Free development

environment

Page 36: My research proposal slides.

*Android Application Architecture

Linux Kernel

Android RT Dalvik VM

Android RT

Core Libraries

Android Application

Media

Surface M

Open GL/

SSL

SQLite

SGL

libc

FreetypeWebkit

Libraries

Window M.View

System

Location M. Notification

Activity M. Content M.

Resource M.

Tel. Manager

Package M.

Application Framework

Page 37: My research proposal slides.

Methodology Overview Proposed of Agent types and functionalities Proposed system architecture Proposed Ontologies for Agent Communication ACL message Model Development Tools Components of multi agent application run on

android Platform Components of multi agent application Window

personal Computer OS Research Plan

* Methodology

Page 38: My research proposal slides.

*Multi Agent Mobile Social Tracking application System

Page 39: My research proposal slides.

*Proposed System Architecture

User Agent

Android social tracking app Client

Android Application GUI

Main Container

AMS

Message Broker Agent

DF Agent Platform

Admin GUI

Page 40: My research proposal slides.

Network/Internet

OS Kernel Linux Kernel

OS Window/Mac/Linux

JAVA SE

JADE Main Container

AMS DF

ACC

Android RT Dalvik VM

Media Framework

Surface Manager

Free Type

Open GL/ES

SSL

SQLite

SGL

WebKit

Libc

Android RTCore Libraries

Application Framework

Activity M Window P Content PView

System

Package M

Notification M

Location M

Tel M

Resource M

Application LogicJADE LEAP Container

User Agent

GUI

Overview of Proposed System configuration multi agent platform &Android Platform

Page 41: My research proposal slides.

*Proposed Agent types and functionalities

Page 42: My research proposal slides.

The MobileUserAgent: It acts on the user behalf. This agent can search location of friends (how far they are from) and it can assign and make notification the location so that mobile user can know and track where is his/her friends are easier.

MessageBrokerAgent : It is in charge of establishing a communication channel between the agents for mobile end users.

InterfaceAgent: The responsibility is to manage communication with mobile user (human) using a graphical user interface.

AdministratorAgent: It has to supervise the overall of Multi Agent system platform like Yellow page service, White page service and agent communication channel and so on.

LocalizationAgent: It is for Geographical localization of the mobile agent.

* Continued

Page 43: My research proposal slides.

Ontology

KML

Example

* Proposed Ontologies for Agent Communication

Page 44: My research proposal slides.

*ACL Message Model

Page 45: My research proposal slides.

* Example of ACL Message Exchange

Mobile User 1 (initiator)-Send a message-Wake up: If message, remember

that you have seen it If no message and seen a

message, send a replyGo back to sleep for 5 secondsMessage Traffic 0-Send 0-Sleep 5 5-Sleep 5 10-Sleep 5 10-Receive 10-Sleep 5 15-Send 15-Sleep 5

 

Mobile User 2-Not initiator, so don’t send-Wake up: If message, remember that

you have seen it If no message and seen a

message, send a replyGo back to sleep for 10 secondsMessage Traffic 0-Receive 0-Sleep 10 5- 10-Send msg 10-Sleep 10 10- 15-Receive 15-Sleep 10

  

Page 46: My research proposal slides.

To create a JADE-based application running on the android operating system, in this research will use:

JADE 4.3 ( the latest version)

JADE-LEAP Add-on for Dalvik virtual machine

Android development tools (SDK)

The Eclipse integrating development environment

To debug and manage agent, our use JADE remote

agent management GUI.

* Development Tools

Page 47: My research proposal slides.

* Research Plan

Page 48: My research proposal slides.
Page 49: My research proposal slides.