LE/EECS 4401 3.0 Artificial Intelligence
Department of Electrical
Engineering & Computer Science,
GS/EECS 5326 3.0 Topics in Artificial Intelligence
Proposal (worth 5% of course grade) due: March 17 in class
Presentation (worth 10% of course grade) due: March 31/April 2
Final report (worth 20% of course grade) due: April 20
This course requires doing a project in the area of artificial
intelligence, on a topic related to the material covered in the
course. The project may involve doing a literature survey, an
evaluation of a an AI solver or tool, an implementation of an AI
method, or even a research paper on an AI problem and a proposed solution.
Some topics suggestions appear below, classified according to the type
of project. Projects in EECS 4401 may be done individually or in
teams of two students; in EECS 5326, the project must be individual.
For team projects, each student must be responsible for a distinct part of the
project presentation and a distinct part of the final report, which
will be graded separately.
By November 17, you should select a topic and submit a short
(one or two pages) project proposal. The proposal should outline your
topic, state the project's objectives, give a tentative timetable for
the tasks to be accomplished, and include a list of references
(especially important for literature surveys). For implementation
projects, it is recommended that a preliminary design for the system
be included. You are encouraged to discuss your project with the
instructor in advance. You will also get feedback on your proposal.
On March 31/April 2 students will give a short (15-20 min.)
class presentation on their project and answer questions
(you will be given a time slot in advance).
Your final report on the project is due by December 20. For
literature survey projects, include an overview of the topic area, a
discussion of the papers read, and a complete list of references;
critical analysis is expected.
For system evaluation or implementation projects, state the
project's motivation and objectives, provide a readable description
the system that was implemented or evaluated, explain how the system
is used, describe the testing that was performed, and discuss how
usable the system is; include the documented code and/or sample
tests in appendix as appropriate.
Note that it is not sufficient to simply download a solver and run
some of the examples included with it; you must either develop some
new examples or evaluate the solver on a wide range of benchmarks.
Suggested Project Topics
- Experiment with and evaluate a solver/reasoner such as for example, the
Z3 SMT solver, the
Clingo ASP solver, etc.
- Investigate the description logic languages that are
and/or experiment with an ontology editor/reasoner platform such
- Investigate the PDDL planning domain specification language
and/or experiment with planning systems
(see the the Haslum et al. book as well as Muise's http://planning.domains for some
domains, a classical planner, and a domain editor; Muise's site
also provides other systems for FOND planning and multiagent epistemic planning).
- Experiment with an agent programming language such as Golog (see
Reiter's book Ch 6, which also discusses a simple Prolog implementation with
some examples; more complete implementations include Levesque's
and Sardina and Vassos's
- Implement a reinforcement learning algorithm such as Q-learning or SARSA and evaluate it on some problems (see Russell and
Norvig, Ch. 21).
Survey recent work on a topic such as AI safety or deep reinforcement learning.