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

Write output for the given code of for loop, What is the output of the foll...

What is the output of the following code: for (i=0; i { document.write("The number is " + i); document.write(" "); } Output The number is 0 The number is 1 The number i

Program will compile but wont run , Im receiving an error message of Except...

Im receiving an error message of Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 at Homework.main(Homework.java:51)

What is arpanet and who developed it, What is ARPANET and who developed it?...

What is ARPANET and who developed it? ARPANET stands for Advanced Research Projects. The initial reasons were to communicate along with and share computer resources between mainl

Why use rmi when we can handle the same benefits from ejb?, EJBs are distri...

EJBs are distributed elements, which need the RMI framework for object distribution. An EJB application server gives more services like object pooling, transaction management, data

File I/O, Write a program that reads both the girl and boy files into memor...

Write a program that reads both the girl and boy files into memory using arrays. Then, allow the user to input a name. The program should search through both arrays. If there is

Creating a system to keep track of computer science books, You are part of ...

You are part of a team creating a system to keep track of computer science books that a publisher is producing. Create a UML class diagram for a "computer science book". You must h

Java program to play minesweeper , Project Requirements Write and tes...

Project Requirements Write and test a Java program to play Minesweeper using Model-View-Presenter design (The model is an interface defining the data to be displayed or other

Need an engineer for flex reporting tool, Need an engineer who has knowledg...

Need an engineer who has knowledge working on Flex Reporting tool. Who knows how data needs to be taken care of from DB, SharePoint, ERP and then process using logic/intelligence u

What is an applets, What is an Applets? Applets: These are small java...

What is an Applets? Applets: These are small java programs. They can send from one to another computer over internet by using Applet Viewer which supports java. Applets

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