CPSC 433: Artificial Intelligence - Assignment
In general, there will be one big assignment, namely developing and implementing (and documenting) a search system for a given application (which this semester will be finding an optimal assignment of courses and labs to time slots in the week for our Department, given a lot of constraints). This will be a team project, with teams of around 5 people. As will become obvious during the course, for each application there are different search paradigms that can be used to develop a search system solving instances of the problem. Also, each paradigm leaves a lot of room for instantiations, based on the knowledge you have about the particular application.
The assignment is also intended to make you aware of different paradigms and the possibilities regarding their instantiations. Therefore I do not only expect you to produce (and demonstrate) the search system at the end of the semester, each team will also produce a paper that presents two search paradigms that can be used to solve the application problem and the instantiation of each paradigm that you want to use for your system. I will then select one of the two solutions and you will implement the selected one in your system.
More precisely, I expect you to present in the paper two different search models (using different data structures as states), describe them precisely (i.e. in a mathematical manner similar to what I use in the lectures), and present at least one sensible search control for each model to complete the definition of the search processes your search system might employ. I also expect that you demonstrate what your search processes will do by applying them to a small search instance chosen by you. In addition to formal definitions, I also expect a natural language explanation of the models, controls and processes and the reasons why you have chosen the particular models.
Both, paper and final system will be graded. Information about how these grades will be weighted can be found on the assessment page.
It is a good idea to crosscheck with me your models, controls and so on, before you submit the paper. In fact, I would like to have a meeting with each team before the team submits the paper!
While I personally would like to give you as much freedom as possible, earlier years have proven that too much freedom results in a lot of difficulties for me, when I want to install the systems for myself. Therefore I decided to be rather precise regarding hardware, environment and paper submission. You can use whatever additional tools you want and you can develop on whatever machine you like, as long as the final system
There are three relevant deadlines for your work.
Last Change: 24/11/2006