PSU CS 441/541: Artificial Intelligence
Fall 2013
Instructor: Bart Massey <bart@cs.pdx.edu>
TA: TBA
Time: Tuesday/Thursday 14:00-15:50 (2:00-3:30 PM)
Meeting Location: FAB 10
CRN: 11036 (441), 11045 (541)
URL: http://moodle.svcs.cs.pdx.edu/cs541-fall2013
As always, this is a tentative syllabus. Everything here is subject to vast change with little notice.
About This Course
CS 441/541 is a first course in artificial intelligence. The fluent ability to write programs and a strong understanding of computing are necessary prerequisites: students must have previously completed PSU CS 202 (Programming Systems) and CS 311 (Discrete Math) or equivalent, as well as their prerequisites. Prior completion of CS 300 (Software Engineering) and CS 350 (Algorithms) is not prerequisite, but is highly recommended.
Course Description
This course is intended to familiarize students with the recognized techniques of modern artificial intelligence. In particular, it is intended that students will be able to construct real-world programs utilizing these techniques, as well as be able to identify appropriate techniques for novel situations. This is a survey course; there are a variety of other courses in artificial intelligence at PSU and elsewhere that take individual topics from the course to greater depth.Course Goals
The catalog says the course goals are for students to be able to:
- Describe several real-world applications of AI.
- Describe and implement AI search techniques for heuristic problem-solving and game playing, and describe their strengths and limitations.
- Describe and implement various AI knowledge-representation techniques.
- Design software agents that use Bayesian techniques to learn and reason under uncertainty.
- Design software agents that use reinforcement learning techniques.
- Design simple genetic algorithms.
- Describe some of the major approaches to current-day research on natural-language processing, computer vision, analogy-making, and robotics.
- Summarize major philosophical and ethical questions regarding AI.
Course Mechanics
This course will proceed via lectures and project-oriented homework.
Communication
The course website (see above) will be the focus of communication. Students are encouraged to contact the instructor anytime by email for an appointment if there are things that seem worth discussing. Special and/or regular office hours will be instituted if demand warrants.
Lectures
The course lectures will cover a variety of topics, and may include guest lectures. Please attend them all; they are required and should be useful.
Readings
The course textbook
Artificial Intelligence: A Modern Approach (3rd ed.)/i>is available at the bookstore. It is quite expensive, but should serve as a valuable reference for the rest of your career. If you must, you may instead find a used second edition somewhere: the content is not that different. I will, however, be assuming everyone has the third edition.
Stuart Russell and Peter Norvig
Prentice Hall 2009
There may be additional readings as the course progresses.
Coursework
The coursework will consist of regular readings, as well as several programming projects.
Grading
Due to the size of the course and the volume of material to be covered, novel grading methods may be employed, including automatic grading, self-grading, and cross-grading with other students
441 vs 541
The graduate students taking CS 541 will have additional requirements for some of their projects. All students, graduate and undergraduate, will be expected to be able to attend lecture during the entire class period.
Laboratory
Currently, the CS laboratory facilities consist of machines in the Linux Lab and Windows Lab. However, work may be done on any of the Departmental boxes remotely. Those with home or laptop boxes are encouraged to use them—make sure they're adequately backed up, though.
Academic Honesty
If you do something that violates the University's or the Department's Student Conduct code, I will pursue this violation vigorously. In particular, it is not permitted to plagiarize (use other people's ideas, text, or code without acknowledgment). If you have questions, please contact me for clarification.