Group Project

Due: 5:30pm on December 9, 2002

 

During the final weeks of the course, you have the flexibility to choose a topic yourself from a list of possibilities.  You will work in the group of your choice.

 

Purpose

This final group project assignment is an opportunity for you to (1) put together some of the ideas you have learned in the course and apply them, and/or (2) investigate more deeply a topic in artificial intelligence that we have introduced in the course.

 

Topics
Here is a list of suggested topics.  I've chosen these so that they relate to topics we've introduced and extend them in ways that will involve thoughtful analysis of AI challenges.

 

Case Based Reasoning

  1. Implement a web-based case-based information retrieval system that allows users to pose WWW queries in a particular structured form.  The system then consults a database of cases to provide a starting query for the user's problem.  It custom-tailors the query to better meet the user's needs.
  2. Implement a web-based system that uses case-based reasoning to solve problems in some well-defined class of problems.  For example, the program might solve playground layout problem or problems involving the design of a custom piece of furniture.

 

Natural Language Processing

  1. Implement a web-based conversational program uses natural language to query a base of documents.  Each document can be represented as a list of keywords.
  2. Implement a web-based homework coach that knows about what assignment are, what deadlines are, and is able to provide a certain amount of help.
  3. Implement a web-based time-frame understanding program that analyzes stories and figures out all the temporal relationships among the events, setting up a representation for this information.  The vocabulary and recognized event types can be limited in order to focus project attention on the temporal analysis.

 

Image Understanding

  1. Implement a web-based program that analyzes the geometrical structure of a map of the UMass Boston campus.
  2. Implement a web-based program that analyzes the scanned images of antique art prints and builds a geometric representation of each etched stroke.
  3. Implement a web-based program that learns how to classify images into a set of categories.  The learning procedure might use a neural network, where the input values are either the raw pixel values themselves or some appropriately computed features of the image.  The set of categories might be something like:

 

{images of people, other images} or

{cartoons, photographs }.

 

The set could certainly contain more than two categories.

  1. Implement a web-based program that performs labeling of a line drawing, where the line drawing is given as a list of segments, which each segment described by a pair of points and each point described as an (x,y) coordinate pair.  Your labeling should use one of the following techniques: (a) Guzman’s method; (b) Sub-graph matching.

 

Logic tutor

  1. Implement a web-based program that teaches prepositional logic concepts.  You may choose one concept for your tutor to teach: inference with resolution, inference with modus ponens, or two or more laws of Boolean logic such as DeMorgan’s laws, the distributive laws, etc.

 

Your tutor should ask the user if he/she wants to learn the available concept, pose one or more problems, and use rules and pattern matching to respond to the user in appropriate ways.  It should keep track of what the user has done, noting problems successfully solved, problems not successfully solved, etc.

 

The tutor should not simply contain canned problems that are printed out during a session but should have a way to create the problems from some domain knowledge (i.e. knowledge about the logic).  If your tutor can teach more than one concept or inference method, extra credit will be given.

 
Intelligent web agent
1.              Implement your own kind of intelligent agent on the web.  Your agent must have the following features: a well-defined knowledge base.  You should not rely on the ISA hierarchy approach but should use another method such as predicate logic, expert system style production rules, or a probabilistic inference network.  Your agent should have a well-defined area of expertise.  It should be able to perform inferences using one of the inference techniques in the text, and it should carry on a dialog in natural language.
 

Other AI topics are possible but you must get permission for any other topic from the instructor.

 

Logistics

Groups

You should work  in groups of up to three people.

 

Schedule

·         Nov. 17: One representative from each group should send an email to the instructor.  The email should include a project plan indicating 1) topic; 2) list of names of people in the group; and 3) detail explanation on your approach to conduct the project and what you expect to accomplish.  The project plan will be posted on the class website.

·         Nov. 24: One representative from each group should send an email to the instructor with the first status report describing the work accomplished and the problems encountered so far.  The status report will be posted on the class website.

·         Dec. 2: One representative from each group should send an email to the instructor with the second status report describing the work accomplished and the problems encountered so far.  The status report will be posted on the class website.

·         Dec. 9 (5:30pm):  Submit the final project report.  The final project should include the following items:

o        Title of your project

o        Problem statement (one or more sentences).

o        Main technique(s) you used.  If standard, list them by name; otherwise, describe.

o        How you applied the technique or made your system work (i.e., the technical details of what your did).

o        Sample input and corresponding output.

o        Commented code listing.

o        What were the main challenges?

o        What did you learn from this project?

o        If you worked in a team, how you divided the workload.  Try to name something that each individual contributed.

·         Dec. 9 & Dec 11: Each group will demonstrate the project outcome.