CSC-5804 Intelligent Agents

This page is devoted to the coursework fulfilling the requirements of
CSC5804 – Intelligent Agents. This graduate course analyzes the design issues that currently confront software engineers as they define the electronic ecosystem that will be housed in the computer networks of the future. The course focuses on the state-of-the-art in agent technology.

Assignments may be viewed in HTML by selecting the appropriate link in the Assignment Pages sidebar or in PDF format in the Supporting Files sidebar.


Course Journal

04/16/07 – Completed Assignment #4. This was an interesting assignment dealing with multi-agents and interaction between those agents. The focus is on an application that works in a marketplace environment where there are buyer and seller agents. The buyer and seller agents cooperate and compete to process sales transactions for their owners. A facilitator agent is also presented who functions as a manager for the market place.

I also got the Cougaar framework installed and implemented one of the tutorial applications which is a Pizza Party Planner. This simple application shows Cougaar agents acting as social planners for 4 friends: Alice, Bob, Mark, and Tony. Alice is planning a pizza party. Her Cougaar Agent takes care of inviting all her friends on her buddy list “FriendsOfMark” (maybe it’s a surprise party for Mark?). The Agents for Bob, Mark, and Tony take care of answering for them. Because it is a pizza party, they must tell Alice whether they like “Meat” or “Veggie” pizza. Once Alice knows how much of what kinds of pizza to order, she must find a Pizza Provider. Pizza Providers sell “Meat” and/or “Veggie” pizzas — and Alice wants to order all her pizza from one provider.

You can see how this worked out at the end of the Assignment #4 page.

03/27/07 – Completed Assignment #3. Also have downloaded and experimented with an open source application called Cougaar. Cougaar is designed for distributed agents and I am looking at doing a small project to learn more about this architecture.

02/27/07 – Completed Assignment #2. I have enjoyed this assignment and can begin to see how this could be leveraged to do some powerful things. The first thing that comes to mind is intelligent performance monitoring of computer systems. As a former systems administrator I can see how this would be a wonderful tool.

Of more interest is the possibility of using the agents for Internet related work. I am looking forward to investigating the Flight Agent which purportedly does work on the Internet.

02/13/07 – Starting to get into the good stuff now. Finished reading Chapter 7 and have implemented the agent framework, the Personal Assistant Manager application, and the FileAgent. Still struggling with some of the Java code hierarchy but getting through it so far. The FileAgent works!

FileAgent - Watching a File

02/05/07 – Completed Assignment #1. This concepts in this course are complex. It is difficult to get your brain wrapped around all these concepts and decipher the Java code at the same time.

01/29/07 – I’ve read up through Chapter 4 although I have discovered that the textbook I received was the wrong edition. I am now trying to find the correct one.

I loaded the code for the Rule problem into NetBeans and have discovered that it requires a few tweaks to make it work. It was written and compiled using Java 1.4 while I have 1.6. Some things have been deprecated. I decided that the easiest path for the moment would be to download and install the 1.4 JDK and reconfigure the Rule project to use it.

I did this and now I can edit and recompile the source. This code is written as an Applet and seems to run fine in my web browser. It will not compile as an application due to the main() vs. init() differences. I don’t know if this code is different in the second edition textbook. But I will work with this until the other arrives.

In another unexpected surprise I have found that my website provider does not support Java Server Pages. I am looking around for different provider who can meet this requirement.


01/20/07 – I really like the NetBeans environment and have decided to go with it. To add Web development capabilities I have installed the NetBeans Visual Web Pack 5.5

I have completed several of the tutorials on the NetBeans site:

I have discovered a resource issue though. The NetBeans IDE deployed the Apache Tomcat Java Server to my PC upon installation and when I installed the NetBeans Enterprise Pack it, in turn, deployed the Sun Java System Application Server 9 on my PC. Now I have two Java Servers installed.

I have discovered that my old PC does not have enough horsepower to run the big enterprise application server, NetBeans, and a browser all at the same time. When I deployed the tutorial application with the Tomcat server it seemed to run a little better.


01/18/07 – There is another IDE called NetBeans that is provided by Sun MicroSystems. I have installed it as well and will compare it against Eclipse. They both appear to be quite powerful.


01/15/07 – This evening I downloaded and installed the Eclipse Integrated Development Environment (IDE). It appears to be an extremely capable resource for writing and debugging code. I have started working my way through the tutorials. This environment is a far cry from my past experience using vi and cc but I am hopeful that I can get my brain wrapped around it.