SlideShare a Scribd company logo
1 of 45
Download to read offline
Multi-Agents based Software
Development of Mobile Application
Using JADE
By
Bu Saw
Dec 4, 2013
Outlines
	

Ø  Introduction	

Ø  Objective 	

Ø  Problem Statement	

Ø  Methodology	

Ø  Implementation	

Ø  Results	

Ø  Comparison	

Ø  Discussion	

Ø  Conclusion	

Ø  Recommendation & Future work
Introduction
q 

Location based mobile application using multi agent
based approach.

q 

Using JADE-LEAP, software framework, is a part of
the multi agent system to develop mobile application.

q 

On Android OS using Android SDK

q 

For agent communication, using FIPA ACL and
Ontology

q 

Integration with Google Play services such as Google
map.
Objectives
To develop a proof of concept location based social
tracking multi agent system application.
q 

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

q 

To design a multi agent platform and development
framework for building mobile application across Android
operating system.

q 

To design agent messages format and ontologies using
FIPA ACL
Problem Statements
q  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. 	

q 

Typical mobile application are controlled by server. To
provide users’ dynamic needs better, multi agent
systems is the best approach to develop mobile
application.	


q  Most of the location sharing mobile applications do

not work together each others because they do not
support the any open standard for data.
Agents Communication	

FIPA ACL + Ontology
FIPA ACL
Parameters & Performatives 	

Performatives	


Function	


request	


To request an agent to another agent to perform some action. 	


inform	


The sender informs the receiver that a given proposition is true.	


refuse	


One agent to state to another agent that it will not perform some
action uses it. 	

The sender informs the receiver that a given proposition is true,
where the receiver is known to be uncertain about the proposition.	


confirm 	


Parameter	


Functionalities	


:sender	


Sender of the message	


:receiver	


Intended recipient of the message	


:content	


Content of the message	


:in-reply-to	


Whether the sender expects a reply and if so, an identifier for the
reply	

Reference to the :reply-with parameter	


:reply-with
Ontology
To help well-defined meaning for the message contents
and define vocabularies of symbols referring to objects
and relationships in the subject domain.
Ontology Class
Arrival
Slot name	
  

Type	
  

Allowed/ Values Cardinality	
  
classes	
  

Default	
  

location	
  

Class	
  

Location	
  

1:1	
  

Time	
  

Class	
  

Time	
  

1:1	
  

Slot name	


Type	


Allowed/ Values Cardinality	

classes	


Default	


location name	


string	




1:1	




longitude	


Floating point	


	
  

	
  

	
  

Latitude	


Floating point	


	
  

	
  

	
  

	
  
	
  

Location
Ontology Class
Time
Slot name	


Type	


Allowed/ Values Cardinality	

 Default	

classes	


Time	


Integer	






	


	




	


Friend
Slot name	


Type	


Allowed/ Values Cardinality	

classes	


Default	


Friend name	


String	


AID	


1	




F r i e n d N i c k String	

name	


AID	


0:1	




Agent ID	


AID	


1	




Class
Location Update Message Example
Begin message structure

Communication act type

Message Parameter

12/1/13 10:09 PM!
0!
481!
 !
(INFORM!
:sender ( agent-identifier :name busawoo-gmailcom@192.168.7.120:1099/JADE )!
:receiver (set ( agent-identifier :name busawoo-hotmailcom@192.168.7.120:1099/JADE ) )!
!
:content ((IsAt (agent-identifier :name busawoo-gmailcom@192.168.7.120:1099/JADE) (Arrival :location
(Location :locationname AIT :logitude 14.076335 :latitude
100.61456) :time (Time :arrivaltime 1385910564401)))) !
!
:language fipa-sl !
:ontology Location-Ontology !
:conversation-id __location__ )!

Message
Content
Expression

!
 
!
 
Parameter
Expression
Agent Types and Functionalities
Agent Name	
  

Agent Type	
  

Function	
  

Mobile User Agent	
  

Intentional agent	
   Review and receive data	
  

Interface Agent	
  

Reactive agent	
  

IHM (interface home
machine) interface	
  
Administrator Agent 	
   Intentional agent	
   Supervision of MAS system
platform	
  
Location Subscription Reactive agent	
   Keeps record of all the
Manager Agent	
  
mobile user agents on the
MAS platform.	
  
Message Broker Agent	
   Intentional agent Supervision
 	
  
Sending and receiving
message between agents 	
  
Localization Agent	
  
Adaptive agent	
   Geographical localization of
the mobile agent	
  
Activity
Main Window Activity	

 Home Page of app. 	

LoginActivity	

User has to login to enter the app. It needs username and
password. It is for security of user.	

RequestActivity	

User can request friend to view friends location on app.	

MapViewActivity 	

User can view the location of himself and his friends’ location. Also
user can know how many kilor meters far from he and his friend
location. 	

InviteActiviy	

User can invite his friends on app. But user should know his friend
email address. 	

ViewActivity	

User can view lists of his friends who are friends on app. User has
authorization to remove their friends and also user can notify their
friends’ location. 	

FrienddetailActivity 	

SharelocationActivity	

SigninActivity	

SingUpAcitiviy	

LogoutActivity	


User can see not only the friends lists but also the detail of friends
information. In the same way, User can set notification of their
friends and can remove their friends. 	

User can share their location. 	

User are already member of app. User need to sign in only using his
email address and password to enter the app. 	

If user are new user for this app. User has to sing up first as user of
app. 	

User can logout after using the app.
System Architecture
Android Application GUI

Message Broker
Agent

AMS
User Agent
LocationAgent 360 app
Client

DF

ACC
Main Container

Agent
Platform
Admin GUI
Use-case diagram
GUI
User Agent

Application Logic

JADE LEAP Container

Application Framework

AMS

DF

ACC
JADE Main Container

Window P

Activity M
Package
M

Resource
M

Content P
Tel
M

Location
M

View
System
Notification
M

OS Window/Mac/Linux

Android RT
Dalvik VM

Surface
Manager

SGL
WebKit

Open GL/
ES

Android RT
Core Libraries

SQLite

Free Type

JAVA SE

Media
Framework

Libc

SSL

Linux Kernel

OS Kernel
Network/Internet
Development Tools
§  JADE 4.3 ( the latest version) 	

§  JADE-LEAP Add-on for Dalvik virtual machine	

§  Android development tools (SDK) 	

§  SQLite	

§  The Eclipse integrating development environment	

§  To debug and manage agent, our use JADE remote agent
management GUI.
Ontology Design and Implementation
Ontology Design and Implementation
Android Developer Tools
Android SDT with Eclipse
Executing Agent container
JADE Main Container running
Agent Management
System

Directory Facilitator

Location Manager
Agent
Remote agent management
Results
LocationAgent 360
Sing up page
Main Page  Home Page of App
Invite Friend menu
Map View menu
Share Location
View Friends Menu
Request Location
Setting Menu
Logout Menu
LocationAgent 360
q 

LocationAgent 360 is a free smartphone app based
on agent technology

JADE-LEAP+ Android SDK = Agent based application
LocationAgent 360
q 
q 

To keep families and close friends connected stay in sync
throughout their busy day.
We can see where our family and friends are on a private
map, stay in touch with group get help in an emergency.
LocationAgent 360
q 

We can know when our friends are on their way so that we
can know who are running late.

200 m

AIT

q 

We can notify our location and our friend location so that we
can know easily what time our friend arrive home and leave
from home.

q 

Using LocationAgent360 is not only sharing location each
other but also save for emergency case and time consuming.
Comparison
Life 360	
  

FindMyFriend	
  

LocationAgent 360	
  

Android app	
  

iOS app
 	
  
iOS 5.0 or later	
  

Agent based android
app	
  
Android 2.3 or later
 	
  

Android 2.1 or later

iOS 5.0 or later	
  

Sign in with Google account	
   Sign in with Apple ID
(Need to have Apple ID)
Client-Server based system	
   Client-Server based system
 	
  
Every information is stored Save iCloud your data	
  
in their server.	
  

Sign in with any email
like Gmail, Hotmail,
  yahoo mail and etc.	
  
	
  
Intelligent multi agent
system	
  
Store information in
mobile devices such as
SQLite. 	
  

Provide one language	
  

Provide 31 languages 	
  

Provide one language	
  

Closed system	
  

Closed system	
  

Open system	
  

§ 
§ 

Free
Free
Commercial (premium
app) Work only in USA	
  

Free	
  
 
	
  
Comparison
Life 360	
  

FindMyFriend	
  

LocationAgent 360	
  

Only work between
life360 Client 	
  

Only work between
FindMyFriend Client	
  

Interpretabilities
(Work on any FIPA
complaint agent system and
the only requirement is the
other agent can understand
ACL messages and ontology) 	
  

Property for developer	
  

Property for developer	
  

Extendable for developer 	
  

-	
  

-	
  

Limited features available 	
  

Provide Androids and
Provide only iOS devices
iOS. Not Symbian OS and Such as iPhone, iPod, iPad
Window OS.	
  
and etc. Not provide
other OS like android,
window etc.	
  
 	
  
Not working after iOS 7
update	
  
Server control 	
  
Server control	
  

Provide Android OS. Not
provide iOS and Window etc.	
  

 	
  
JADE main container
coordinate. Automous /
proactive / reactive/dynamic	
  
Discussion
q 

JADE platform supports efficient and transparent messaging
over different platforms (JavaSE, JavaME, .NET, ANDROID).  

q 

It supports semantic rich communication via implementation
of FIPA ACL specifications for performatives, protocols and
ontologies. The use of ontologies in communication messages
allows extension of application features.

q 

JADE multiagent platform has Peer-to-Peer abilities and like
others P2P system. It needs some coordinator agents (eg. DF,
AMS ).

q 

There is no dependence on proprietary commercial services
like GoogleHangoutService.
Limitation
q 

Need Google(Gmail) account and have to register as
Google developer to use officially Google service and
Google map

q 

To check all of the validity emails , we can use Oauth or
OpenID, open standards for all email servers.

q 

Limited features implementation.

q 

Currently only implemented on Android OS.
Conclusion
q 

Develop and implement agent message format and
ontologies to be used in LocationAgent 360.	


q 

This application enables location based distributed multiagent systems in which personal agents running on mobile
deices can communicate with other agents to share
location without the need for a centralized server
orchestrating every interaction.	


q 

The application design merges multiagent-based JADE-LEAP
platform with latest Android Application Code and Google
Play API (for location detection and map services). 	


q 

It is a good proof of concept and a starting point to develop
more sophisticated applications based on mobile user
agents that learn about user preferences and negotiate with
other agents to offer more services in different
environments,
different agents and their respective
behaviors.
Recommendation  Future Work
q 

Implement and develop agent based mobile application run
on different operation system such as Window, Symbian OS
and even MIDP enable feature phones (eg. Nokia Asha
phones).

q 

The ontology designed in this research is limited to location
sharing and notification features with some social abilities.
Ontology can be extended to further support more use
cases and add features by integrating with all other available
data and information.
Thank you very much!!
QUESTIONS  ANSWERS!!

More Related Content

What's hot (7)

Introduction to Android Development: Before Getting Started
Introduction to Android Development: Before Getting StartedIntroduction to Android Development: Before Getting Started
Introduction to Android Development: Before Getting Started
 
Android before getting started
Android before getting startedAndroid before getting started
Android before getting started
 
Android Workshop Day 1 Part 2
Android Workshop Day 1 Part 2Android Workshop Day 1 Part 2
Android Workshop Day 1 Part 2
 
Cloud report
Cloud reportCloud report
Cloud report
 
Priyotosh_resume
Priyotosh_resumePriyotosh_resume
Priyotosh_resume
 
VinayG_CV_3.5Y
VinayG_CV_3.5YVinayG_CV_3.5Y
VinayG_CV_3.5Y
 
Day 2 android internals a quick overview
Day 2 android internals a quick overviewDay 2 android internals a quick overview
Day 2 android internals a quick overview
 

Viewers also liked (6)

Generating JADE agents from SDL specifications
Generating JADE agents from SDL specificationsGenerating JADE agents from SDL specifications
Generating JADE agents from SDL specifications
 
Process offloading from android device to cloud using JADE.
Process offloading from android device to cloud using JADE.Process offloading from android device to cloud using JADE.
Process offloading from android device to cloud using JADE.
 
D2L Intelligent Agents
D2L Intelligent AgentsD2L Intelligent Agents
D2L Intelligent Agents
 
Hector hernandez
Hector hernandezHector hernandez
Hector hernandez
 
JACK intelligent Agents - an framework overview
JACK intelligent Agents - an framework overviewJACK intelligent Agents - an framework overview
JACK intelligent Agents - an framework overview
 
Machine Learning in NLP
Machine Learning in NLPMachine Learning in NLP
Machine Learning in NLP
 

Similar to Final Defense slide of my research.

BarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social HackathonBarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social Hackathon
marvin337
 
Doddanna_B_Java_Android_Trnd_EC_70%
Doddanna_B_Java_Android_Trnd_EC_70%Doddanna_B_Java_Android_Trnd_EC_70%
Doddanna_B_Java_Android_Trnd_EC_70%
Doddanna B
 
Resume-Android Developer
Resume-Android DeveloperResume-Android Developer
Resume-Android Developer
Nikhil Desale
 

Similar to Final Defense slide of my research. (20)

Research Final Defense slides.
Research Final Defense slides. Research Final Defense slides.
Research Final Defense slides.
 
Getting started with android programming
Getting started with android programmingGetting started with android programming
Getting started with android programming
 
Android Training Chandigarh.docx
Android Training Chandigarh.docxAndroid Training Chandigarh.docx
Android Training Chandigarh.docx
 
BarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social HackathonBarCamp KL H20 Open Social Hackathon
BarCamp KL H20 Open Social Hackathon
 
Android Deep Dive
Android Deep DiveAndroid Deep Dive
Android Deep Dive
 
complete ppt
complete pptcomplete ppt
complete ppt
 
viWave Study Group - Introduction to Google Android Development - Chapter 23 ...
viWave Study Group - Introduction to Google Android Development - Chapter 23 ...viWave Study Group - Introduction to Google Android Development - Chapter 23 ...
viWave Study Group - Introduction to Google Android Development - Chapter 23 ...
 
Resume_Dubai
Resume_DubaiResume_Dubai
Resume_Dubai
 
Android_ver_01
Android_ver_01Android_ver_01
Android_ver_01
 
Nativa Android Applications development
Nativa Android Applications developmentNativa Android Applications development
Nativa Android Applications development
 
All about agents jade
All about agents jadeAll about agents jade
All about agents jade
 
Cross platform native mobile app development for iOS, Android and Windows usi...
Cross platform native mobile app development for iOS, Android and Windows usi...Cross platform native mobile app development for iOS, Android and Windows usi...
Cross platform native mobile app development for iOS, Android and Windows usi...
 
Android training in Hyderabad
Android training in HyderabadAndroid training in Hyderabad
Android training in Hyderabad
 
Doddanna_B_Java_Android_Trnd_EC_70%
Doddanna_B_Java_Android_Trnd_EC_70%Doddanna_B_Java_Android_Trnd_EC_70%
Doddanna_B_Java_Android_Trnd_EC_70%
 
Android Introduction by Kajal
Android Introduction by KajalAndroid Introduction by Kajal
Android Introduction by Kajal
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 
Resume-Android Developer
Resume-Android DeveloperResume-Android Developer
Resume-Android Developer
 
Gopi_Android_Resume (1)
Gopi_Android_Resume (1)Gopi_Android_Resume (1)
Gopi_Android_Resume (1)
 
Android Introduction
Android IntroductionAndroid Introduction
Android Introduction
 
Scaling mobile dev teams
Scaling mobile dev teams Scaling mobile dev teams
Scaling mobile dev teams
 

Recently uploaded

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Final Defense slide of my research.

  • 1. Multi-Agents based Software Development of Mobile Application Using JADE By Bu Saw Dec 4, 2013
  • 2. Outlines Ø  Introduction Ø  Objective Ø  Problem Statement Ø  Methodology Ø  Implementation Ø  Results Ø  Comparison Ø  Discussion Ø  Conclusion Ø  Recommendation & Future work
  • 3. Introduction q  Location based mobile application using multi agent based approach. q  Using JADE-LEAP, software framework, is a part of the multi agent system to develop mobile application. q  On Android OS using Android SDK q  For agent communication, using FIPA ACL and Ontology q  Integration with Google Play services such as Google map.
  • 4. Objectives To develop a proof of concept location based social tracking multi agent system application. q  To develop and implement agent based Android mobile application using JADE LEAP to be a part of multi agent system. q  To design a multi agent platform and development framework for building mobile application across Android operating system. q  To design agent messages format and ontologies using FIPA ACL
  • 5. Problem Statements q  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. q  Typical mobile application are controlled by server. To provide users’ dynamic needs better, multi agent systems is the best approach to develop mobile application. q  Most of the location sharing mobile applications do not work together each others because they do not support the any open standard for data.
  • 7. FIPA ACL Parameters & Performatives Performatives Function request To request an agent to another agent to perform some action. inform The sender informs the receiver that a given proposition is true. refuse One agent to state to another agent that it will not perform some action uses it. The sender informs the receiver that a given proposition is true, where the receiver is known to be uncertain about the proposition. confirm Parameter Functionalities :sender Sender of the message :receiver Intended recipient of the message :content Content of the message :in-reply-to Whether the sender expects a reply and if so, an identifier for the reply Reference to the :reply-with parameter :reply-with
  • 8. Ontology To help well-defined meaning for the message contents and define vocabularies of symbols referring to objects and relationships in the subject domain.
  • 9. Ontology Class Arrival Slot name   Type   Allowed/ Values Cardinality   classes   Default   location   Class   Location   1:1   Time   Class   Time   1:1   Slot name Type Allowed/ Values Cardinality classes Default location name string 1:1 longitude Floating point       Latitude Floating point           Location
  • 10. Ontology Class Time Slot name Type Allowed/ Values Cardinality Default classes Time Integer Friend Slot name Type Allowed/ Values Cardinality classes Default Friend name String AID 1 F r i e n d N i c k String name AID 0:1 Agent ID AID 1 Class
  • 11. Location Update Message Example Begin message structure Communication act type Message Parameter 12/1/13 10:09 PM! 0! 481!  ! (INFORM! :sender ( agent-identifier :name busawoo-gmailcom@192.168.7.120:1099/JADE )! :receiver (set ( agent-identifier :name busawoo-hotmailcom@192.168.7.120:1099/JADE ) )! ! :content ((IsAt (agent-identifier :name busawoo-gmailcom@192.168.7.120:1099/JADE) (Arrival :location (Location :locationname AIT :logitude 14.076335 :latitude 100.61456) :time (Time :arrivaltime 1385910564401)))) ! ! :language fipa-sl ! :ontology Location-Ontology ! :conversation-id __location__ )! Message Content Expression !   !   Parameter Expression
  • 12. Agent Types and Functionalities Agent Name   Agent Type   Function   Mobile User Agent   Intentional agent   Review and receive data   Interface Agent   Reactive agent   IHM (interface home machine) interface   Administrator Agent   Intentional agent   Supervision of MAS system platform   Location Subscription Reactive agent   Keeps record of all the Manager Agent   mobile user agents on the MAS platform.   Message Broker Agent   Intentional agent Supervision     Sending and receiving message between agents   Localization Agent   Adaptive agent   Geographical localization of the mobile agent  
  • 13. Activity Main Window Activity Home Page of app. LoginActivity User has to login to enter the app. It needs username and password. It is for security of user. RequestActivity User can request friend to view friends location on app. MapViewActivity User can view the location of himself and his friends’ location. Also user can know how many kilor meters far from he and his friend location. InviteActiviy User can invite his friends on app. But user should know his friend email address. ViewActivity User can view lists of his friends who are friends on app. User has authorization to remove their friends and also user can notify their friends’ location. FrienddetailActivity SharelocationActivity SigninActivity SingUpAcitiviy LogoutActivity User can see not only the friends lists but also the detail of friends information. In the same way, User can set notification of their friends and can remove their friends. User can share their location. User are already member of app. User need to sign in only using his email address and password to enter the app. If user are new user for this app. User has to sing up first as user of app. User can logout after using the app.
  • 14. System Architecture Android Application GUI Message Broker Agent AMS User Agent LocationAgent 360 app Client DF ACC Main Container Agent Platform Admin GUI
  • 16. GUI User Agent Application Logic JADE LEAP Container Application Framework AMS DF ACC JADE Main Container Window P Activity M Package M Resource M Content P Tel M Location M View System Notification M OS Window/Mac/Linux Android RT Dalvik VM Surface Manager SGL WebKit Open GL/ ES Android RT Core Libraries SQLite Free Type JAVA SE Media Framework Libc SSL Linux Kernel OS Kernel Network/Internet
  • 17. Development Tools §  JADE 4.3 ( the latest version) §  JADE-LEAP Add-on for Dalvik virtual machine §  Android development tools (SDK) §  SQLite §  The Eclipse integrating development environment §  To debug and manage agent, our use JADE remote agent management GUI.
  • 18. Ontology Design and Implementation
  • 19. Ontology Design and Implementation
  • 21. Android SDT with Eclipse
  • 23. JADE Main Container running Agent Management System Directory Facilitator Location Manager Agent Remote agent management
  • 27. Main Page Home Page of App
  • 35. LocationAgent 360 q  LocationAgent 360 is a free smartphone app based on agent technology JADE-LEAP+ Android SDK = Agent based application
  • 36. LocationAgent 360 q  q  To keep families and close friends connected stay in sync throughout their busy day. We can see where our family and friends are on a private map, stay in touch with group get help in an emergency.
  • 37. LocationAgent 360 q  We can know when our friends are on their way so that we can know who are running late. 200 m AIT q  We can notify our location and our friend location so that we can know easily what time our friend arrive home and leave from home. q  Using LocationAgent360 is not only sharing location each other but also save for emergency case and time consuming.
  • 38. Comparison Life 360   FindMyFriend   LocationAgent 360   Android app   iOS app     iOS 5.0 or later   Agent based android app   Android 2.3 or later     Android 2.1 or later iOS 5.0 or later   Sign in with Google account   Sign in with Apple ID (Need to have Apple ID) Client-Server based system   Client-Server based system     Every information is stored Save iCloud your data   in their server.   Sign in with any email like Gmail, Hotmail,   yahoo mail and etc.     Intelligent multi agent system   Store information in mobile devices such as SQLite.   Provide one language   Provide 31 languages   Provide one language   Closed system   Closed system   Open system   §  §  Free Free Commercial (premium app) Work only in USA   Free      
  • 39. Comparison Life 360   FindMyFriend   LocationAgent 360   Only work between life360 Client   Only work between FindMyFriend Client   Interpretabilities (Work on any FIPA complaint agent system and the only requirement is the other agent can understand ACL messages and ontology)   Property for developer   Property for developer   Extendable for developer   -   -   Limited features available   Provide Androids and Provide only iOS devices iOS. Not Symbian OS and Such as iPhone, iPod, iPad Window OS.   and etc. Not provide other OS like android, window etc.       Not working after iOS 7 update   Server control   Server control   Provide Android OS. Not provide iOS and Window etc.       JADE main container coordinate. Automous / proactive / reactive/dynamic  
  • 40. Discussion q  JADE platform supports efficient and transparent messaging over different platforms (JavaSE, JavaME, .NET, ANDROID).   q  It supports semantic rich communication via implementation of FIPA ACL specifications for performatives, protocols and ontologies. The use of ontologies in communication messages allows extension of application features. q  JADE multiagent platform has Peer-to-Peer abilities and like others P2P system. It needs some coordinator agents (eg. DF, AMS ). q  There is no dependence on proprietary commercial services like GoogleHangoutService.
  • 41. Limitation q  Need Google(Gmail) account and have to register as Google developer to use officially Google service and Google map q  To check all of the validity emails , we can use Oauth or OpenID, open standards for all email servers. q  Limited features implementation. q  Currently only implemented on Android OS.
  • 42. Conclusion q  Develop and implement agent message format and ontologies to be used in LocationAgent 360. q  This application enables location based distributed multiagent systems in which personal agents running on mobile deices can communicate with other agents to share location without the need for a centralized server orchestrating every interaction. q  The application design merges multiagent-based JADE-LEAP platform with latest Android Application Code and Google Play API (for location detection and map services). q  It is a good proof of concept and a starting point to develop more sophisticated applications based on mobile user agents that learn about user preferences and negotiate with other agents to offer more services in different environments, different agents and their respective behaviors.
  • 43. Recommendation Future Work q  Implement and develop agent based mobile application run on different operation system such as Window, Symbian OS and even MIDP enable feature phones (eg. Nokia Asha phones). q  The ontology designed in this research is limited to location sharing and notification features with some social abilities. Ontology can be extended to further support more use cases and add features by integrating with all other available data and information.
  • 44. Thank you very much!!