Projects
|
CSE 415: Introduction to Artificial Intelligence
The University of Washington, Seattle, Winter 2007
|
|
Projects are an opportunity to invent your own
artificially intelligent program that performs an activity
that you specify.
|
Projects can be of any of the following four types:
Problem-solving systems based on T-Star.
These systems will help users solve traditional
problems such as scheduling, spatial layout (floor plans), combinatorial arrangement (pentaminoes),
graph coloring, graph isomorphism. Choose a class of
problems and implement state/node representations and
renderings, basic operators, and automatic search
and evaluation functions.
Expert agents written in Python.
Such an agent will reason about problems in
a specific domains such as an area of science
(e.g., chemical reactions), forensics (crime-scene
evidence), mathematics, law, business, etc.
Rule based and probabilistic reasoning are
appropriate mechanisms to employ.
Demonstration and application of a
standard AI technique using Python + TKinter.
For example, the ID3 learning algorithm for
classification rules, concept formation in
mathematics in the spirit of AM or Pythagoras:
"Primes = Natural numbers such that the number of
factors is minimized".
(If you plan to use the Stone World code in your
project, it is here:
StoneWorld.py, and
the helper module
Match2.py.)
Image understanding applications using
PixelMath. Detection or recognition of:
faces, objects, drawings, captchas. Watermark
embedding and extraction. Intelligence test
problem-solving ("A is to B as C is to ...").
|
Projects may be done in teams of 1, 2 or 3 people.
Further details to be announced.
|
The theme for the projects is
"Collaborative
Problem-Solving Systems".
This is meant to suggest that each program implement
one or more "problem-solving assistants". These assistants
may work in collaboration with the user, or with each other,
to solve problems.
|
Project demonstrations will take place Friday, March 9 in our lab.
Each student must perform 2 peer evaluations of projects of others.
Each project must be evaluated by at least two students not on the project team.
All evaluations must be signed by evaluator, evaluatees, and must be turned in.
Copies of the form were given out in class on March 7, and more copies will be
available at the demo session. The form is also available
here.
|
Reports
and source code are
due Monday, March 12 at 5:00 PM. Use E-Submit to turn them in.
|
Reports
The report should be an electronic document (either raw ASCII text, MS Word file, or a PDF file). The key elements of your report include:
-
title of project;
-
names and roles of each teammate;
-
what the program is supposed to do;
-
technique used and brief description (half a page) of how that
technique works. If you use multiple AI techniques
then describe each one but with somewhat less detail for each one;
-
either a screen shot or a transcript of an interesting sample session;
-
brief demo instructions;
-
code excerpt showing some interesting part(s) of your Python code and some explanation of it;
-
brief description of what each team member learned in this project;
-
what you would like to add to your program if you had more time;
-
citations for any references you used in the project.
-
As an "appendix" to the project, provide full source code for your program.
|