My First Mini Project --- Agent Based Data Mining


Supervised by Dr Russell Beale.

Abstract of my mini-project report

The topic of 'Agent-based data mining' spans the fields of data mining and software agents. This paper examines the increased need for distributed data mining and the use of an agent-based aproach to address distributed data mining problems. It focuses on studying the information sharing aspect of distributed data mining. An agent-based prototype system is developed to disseminate and share data mining discoveries, among different sites in a distributed environment. Theoverall architecture of the prototype system is described along with its detailed mechanisms. The prototype comprises of a statinary Coordinator agent which launches the Detector agent to monitor for updates to a specified data mining output file and upon detecting an update, the Coordinator creates and dispatches another File Transfer agent to send the updated file to all hosts listed in its itinerary.

For full report, click here to download.


My Prototype System

I have built a prototype system using the JAVA language and the mobile agent development package 'Aglets Workbench ' from IBM. My prototype system uses multiple agents, both mobile and stationary to monitor for updates to data mining results and disseminate updated results to different hosts in a distributed environment. The approach used is for each site to learn locally using a data mining tool called Clementine and use agents to share their results. The prototype is built to illustrate how communication and interaction between agents in a multi-agent system facilitates the dissemination of data mining discoveries among multiple database sites.

My prototype system makes use of some JAVA AWT functions that are not supported on DEC machines yet. As such, the user interface can only work properly on SUN workstations. In addition, multiple Aglets Workbench servers have to be started on different machines in order to demonstrate the core of what my program is doing --- communication and interaction between multiple agents (stationary and mobile). Starting a standalone copy of the server will simply not achieve this purpose. You can run my prototype sytem using the procedure outlined below. However, the Aglets Workbench version that I am using for my prototype system has expired on 30 Dec 97. A newer version of the package has been released some time in mid Dec 97 while I was finishing up my prototype system. As such, I do not have time to amend my program codes to run in the newer release. I have subsequently downloaded the newer version of the package, after I submitted my project, and tried running my program in it. To my disappointment, my program does not work in the new version. Some of the functions that my program is using have been changed in the new version. Fortunately, I have demonstrated my prototype system to my supervisor who verified that my system was working well, before the package expired.

If there is a need to see how my prototype system works, please let me know and I will try to make the necessary program changes to cater to the new changes in the package.

The procedure to run my prototype system is as follows :

1) Activating the aglets agent server with the command 'agletsd -port port-number'. I have set up my system to run on

* calvin.cs.bham.ac.uk (port 9000)

* hobbes.cs.bham.ac.uk (port 9100)

* po.cs.bham.ac.uk (port 9200)

* wallace.cs.bham.ac.uk (port 9300)

2) The Aglets Workbench control screen will be displayed. Select the 'Create' button followed by highlighting the 'Coordinator' agent entry to create the stationary Coordinator agent.

3) The screen I designed for dispatching and monitoring the agents will be displayed. Confirm that the parameters specified in it are correct and select the 'Go' button to launch the Detector agent. Once the Detector agent detected an update in the data mining output file defined on the screen, it will automatically dispatch the FileTransfer agent to disseminate the file to all remote hosts specified in its itinerary displayed on the screen.

4) Normally, at least two servers have to be started to see how file transfer works with the FileTransfer agent.

5) Exit from my program and terminate the Aglets server using the 'Quit' button.


If you have comments or suggestions, email me at fsc@cs.bham.ac.uk

Back to home page


Last updated on 28/06/98