FJK Home | CPE/CSC 480 | Syllabus | Schedule | Lecture Notes | Assignments | Labs | Project |
The purpose of this checklist is to make sure that your selected topic is suitable for this class. Based on my experience with past projects, I have identified some aspects that may lead to problems later on.
Your topic must fit within a course on Artificial Intelligence. While I am flexible with the definition of AI, and would not rule out somewhat "exotic" topics, it is often helpful to explicitly identify how the project is related to Artificial Intelligence.
Which of the following AI topics are relevant for your project:
You need to define the scope of your project in such a way that it is realistic to solve it with a small team, and in about 10 weeks. It is acceptable to use existing tools and systems, but you need to acknowledge that in your documentation.
For some projects, the challenge may lie not so much in the programming parts, but in the capturing and encoding of the domain knowledge
Some topics may benefit from the use of existing environments to avoid the overhead of implementing the user interface, user interaction, graphics, and sometimes basic mechanisms like the rules of a game. One environment, Breve http://www.spiderland.org/breve/, has been used with good success in several projects over the last few years. It is mostly used for the simulation of societal behavior like swarms of birds, schools of fish, or ant colonies, but can be used for other domains as well.
Did you consider using an existing environment for your project? If so, you should be prepared for unexpected problems, like missing features, lack of documentation, changes between versions, or outright bugs.
The choice of implementation language is up to your team, but ideally all team members should be able to write programs in that language. If you're using a domain-specific or customized language, schedule some time to get familiar with it.
I expect you to establish system requirements early on, and the system you deliver at the end of the quarter will be evaluated against these requirements. Accompanying the requirements should be evaluation criteria that can be used to measure or judge how well your system performs. You will need to specify these requirements and evaluation criteria in one of the milestones, but it is important to make sure early on that the essential aspects of your system can be reasonably described this way. This may be difficult, for example, if you're working on a system that uses AI to paint pictures, or to compose music since the judgment of the results may depend on very subjective criteria.
FJK Home | CPE/CSC 480 | Syllabus | Schedule | Lecture Notes | Assignments | Labs | Project |
Franz Kurfess |