FJK Home CPE/CSC 481 News Syllabus Schedule Lecture Notes Assignments Paper Project Teams Other Links
CPE/CSC 481 Knowledge-Based Systems Winter 2010

CPE/CSC 481-W10 Knowledge-Based Systems Project Checklist

Overview

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.

Project Topic

Your topic must fit within a course on Knowledge-Based systems. 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 the topic of this course.

KB Aspects

Which of the following AI topics are relevant for your project:

Scope

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.

Domain Expertise

For some projects, the challenge may lie not so much in the programming parts, but in the capturing and encoding of the domain knowledge.

Implementation Tools and Methods

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. The CLIPS and JESS environments mentioned in the syllabus are obvious candidates, but you're free to select others; especially OWL and RDF may be good alternatives. In some cases, the selection and evaluation of an environment in order to determine its suitability for a domain, task, or approach can constitute a significant portion of the project work.

Environments

Did you consider using an existing research 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. Of course you can encounter all of the above in commercial environments as well ...

Implementation Languages

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.

System Evaluation

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 KB technology to paint pictures, or to compose music since the judgment of the results may depend on very subjective criteria.

FJK Home CPE/CSC 481 News Syllabus Schedule Lecture Notes Assignments Paper Project Teams Other Links
Project-Checklist.html
last modified:
Tuesday, January, 12, 2010, 09:48:21 PST
© 2000-2024
Franz J. Kurfess