Development of an application using jade agent toolkit, JAVA Programming

Assignment Help:

You need to build an agent system using the JADE Toolkit that allows the lecturer of FIT5031 to broadcast their availability and arrange for consultation with students in a dynamic manner. The idea is to use a combination of software agents and Instant Messaging services (or any other social networking technologies) to facilitate this process. Each FIT5031 student and the lecturer have their own "personal assistant agent". Consider the case, where the lecturer comes in to work at 10 AM and has a meeting with his PhD student scheduled from 10.15 - 11.15 AM. However, on checking her email, she finds that the PhD student has come down with the flu and is unable to make it for the meeting. The lecturer would like to use this time to provide consultation for his FIT5031 students. He instructs his"personal software agent" that he is available for FIT5031 students. While he can use Moodle to send a message/email to all students - this is insufficient as students may not be checking email, they may be online but chatting with their friends, or they may still be at home or have another lecture on at the time. Thus, the task of the agent is to find those students who are online between 10.15 and 11.15 am and let them know that the lecturer is available for consultation. Furthermore, should a particular student wish to use this time and come for consultation, their agent needs to let the lecturer's agent know the approximate time when they will come (e.g. 11 am).

You can assume that there are only a small number of students in the unit (e.g. 5-10) and at any given time 3-4 students may be online.

The two options for finding students who are online are as follows:

OPTION 1: This option would involve the use of the directory services of JADE to broadcast online status. Thus, the students who are online would get their personal agents to send a message to some centralised agent directory for FIT5031 regarding this (and will also let the directory know when they are unavailable/leaving the system). The lecturer's agent would check this directory and send messages about the lecturer's availability for consultation to all those students who are available at that time. The lecturer agent may broadcast this message in 15 minute intervals during this time frame (10.15 am - 11.15 am) or have better solution such as keeping track of which student agents are coming online.

As stated above, a fully functional system using Option 1 will be eligible for a CREDIT grade.

OPTION 2: This option would involve the use of some third party Instant Messaging system for finding students who are online. For instance Google Talk provides an API to access it/write simple clients for it. In this case, the lecturer's agent would access Google Talk and query it for the online status of FIT5031 students and then send messages to those students (either using Google Talk itself or through their agents). Again, if the students wish to avail of the consultation, they need to let their agents know and these can then inform the lecturer's agent about the approximate time when the student's will come. You may use Google Talk or Facebook or Skype or any social networking/instant messaging technology.

We will provide you with a simple client to access Google Talk (that has been written by one of the tutors).

An enhancement (not required, but if you did something like this then you would get additional marks) is to have the lecturer agent access more than one IM/Networking technology. That is, look for students on Google Talk and something else.

Another enhancement (again not required, but will fetch additional marks) is to have the lecturer's agents schedule the students who want to come and meet the lecturer at the available time. Thus, if one student has agreed to come at 11.30 am - then the time-slot of 11.30-11.45 should not be assigned to any other student. One option might be to have a small database for the meeting scheduling.
Can you think of scenarios where the use of software agents is deemed as better than doing the implementation without software agents? These can be additional enhancements that you include in your implementation for bonus points.


Related Discussions:- Development of an application using jade agent toolkit

Difference b/w software platform and java platform, Java platform is a soft...

Java platform is a software-only platform independent, which runs on top of other hardware-based platforms like WINDOWS, UNIX, NT etc.   The Java platform has 2 main com

Project, online shopping project

online shopping project

#title.using linked list, Write a program that takes as input a sequence of...

Write a program that takes as input a sequence of transactions of the form

Work is about 25% done but I am stuck, Modify the client server application...

Modify the client server application developed for phase 1 IP2 to be a Multithreaded Server (i.e. the server can handle concurrent requests from more than one client). Submit your

Elaborate with examples vector or object oriented graphics, Elaborate with ...

Elaborate with examples Vector or Object oriented graphics? Vector or Object-Oriented Graphics treats everything which is drawn as an object. Objects retain their identity afte

Explain the essential api concepts associated with j2me, Question : (a)...

Question : (a) Class file verification in CLDC is different from class file verification in J2SE. Explain and discuss how and why it is different, illustrating your answer

Forward action and include action, What is the difference among ForwardActi...

What is the difference among ForwardAction and IncludeAction? Ans) The difference is that you require to use the IncludeAction only if the action is going to be contained by ano

Describe the if statement in java, Describe the if statement in Java ? ...

Describe the if statement in Java ? All but the most trivial computer programs required to form decisions. They test a condition and operate in a different way based on the out

What are the layers of rmi architecture, There are three layers:-  a . S...

There are three layers:-  a . Stub and Skeleton layer This layer lies just under the view of the developer. This layer intercepts method calls made by the client to the inte

Write a program to add integer value, Write a program to add integer value?...

Write a program to add integer value? class AddInts { public static void main (String args[]) { int i = 1; int j = 2; System.out.println("i is " + i); System.out.println("

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd