Note, March 26th: The final project presentation has been delayed until the last class, April 14th. Each presentation should be limited to a total of 5 minutes, since the last half of the class will be the review for the Final Exam. I am now calling this report the "pre-final" report, since your full report is not due until 11:59, Monday, April 18th.
All students will do a programming project, with accompanying research on related literature. Common Lisp is strongly preferred, especially because one of the two textbooks, PAIP, is totally focused on Common Lisp. Projects in other languages, e.g., Scheme, will not be accepted.
However, a project in Java will be accepted under one stringent condition: The Java AI project must include a visualization component, written using Swing and possibly Java 2D in addition. The visualization component can show the application, e.g., the board positions of a game, but must in addition display metadata, some of the behind-the-scenes computational progress/results. Java 5.0 is now available on our Solaris systems, binaries at /usr/jdk/instances/jdk1.5.0/bin/. The API is available at: http://java.sun.com/j2se/1.5.0/docs/api/index.html. Sun's main page for Java 5.0 is at: http://java.sun.com/j2se/1.5.0/index.jsp. I've been using the recent O'Reilly book, Java 5.0 Tiger: A Developer's Notebook.
In spite of allowing Java, all students will be required to turn in homework exercises done in Common Lisp. A fluency in Common Lisp is absolutely imperative in order to understand the AI programming discussions in the PAIP book and corresponding lectures.
Your project should include your finding at least two reasonably recent research or tutorial papers related to your topic. You are strongly discouraged from using web site documents. Instead, you should use our library's online research resources to find papers from journals or conference proceedings. Another good source is Citeseer, http://citeseer.ist.psu.edu/ as long as the papers you use from there appeared in high-quality publications. You can also request a Consortium Card and then use other libraries such as MIT and BU http://www.lib.neu.edu/access/circulation/blccard.htm. You must then discuss the papers in your reports to demonstrate that you understand their content and their relation to your project.
You should choose a topic that interests you, even if the material about it will not be covered until late in the course. I can help you get started with whatever you choose.
I can be of the most assistance if you choose a topic in one of my research areas: Natural language and/or graphics (diagrams). I will discuss some of my research early in the course, so you'll be aware of what I do.
Go to CSG120 home page. or RPF's Teaching Gateway or homepage