Up: Teaching

Computer Science 820 - Advanced Artificial Intelligence

Course Outline - Spring/Summer 2021


Time of Lectures:

M 10:30-12:00pm (see course schedule on UR Courses)

Room: Remote (Async/Sync via Zoom)





Office Hours:

Dr. Malek Mouhoub

M 12:00 - 1:00 pm (see course schedule on UR Courses)

Office: CW308.13 (Meetings via Zoom)





Recommended Texts: 


 (1) Artificial Intelligence : A Modern Approach by Stuart Russel l  and Peter Norvig



 (2) Artificial Intelligence: A New Synthesis by Nils Nilsson.
(3) Artificial Intelligence: Structures and Strategies for Complex Problem Solving by Luger and Stubblefield




Method of Evaluation - CS 820:






Final Exam









I. Introduction to Artificial Intelligence

II. Knowledge Representation

(2) Logic and Automated Reasoning

(3) Rule-Based Systems and Structured Representations

III. Search

(4) State Space Search

(5) Constraint-Based Reasoning

(6) Combinatorial Optimization

IV. Advanced Topics in AI (as time permits)

(7) Metaheuristics

(8) Preference Reasoning

(9) Temporal and Spatial Reasoning

(10) Intelligent Agents


Resources for students



1.Information and class materials (including recorded lectures) are available online through UR Courses. News and announcements will be posted on UR Courses, including UR Courses Email. It is the responsibility of students to regularly check their emails. Students are encouraged to turn on their UR Courses Email notifications.

2. UR Courses should be used for synchronous Zoom-based lectures/discussions/office hours as well as asynchronous video lectures and other class materials. Basic computer equipment is required for remote learning. You will need a computer or laptop, a microphone and speakers or headset. Using a smartphone for UR Courses is possible, but not recommended. Please visit the  technical resource page for more details on technology requirements.

3. UR Courses should be used for all assignments and project submissions. It is the responsibility of students to make sure that the submitted material has been successfully uploaded to UR Courses before the assignment due date. This can be checked by viewing the uploaded files. Email and Hardcopy submissions are not accepted.

4.     Late assignments are not accepted for any reason and will receive a mark of 0, except for extensions granted to the entire class.

5.     Programming assignments must be in C++, Java, Prolog or Python, and should compile and run on Hercules . Before submission, students have to make sure that their programs compile and run properly on this platform.

6.     Any question regarding assignment submission or marking should be promptly addressed to the marker. In particular, any question/concern regarding assignment marking should be submitted to the marker no later than seven days after the marks are posted.

7.     Advanced programming, algorithms and data structures skills, are required for this course. These include algorithm analysis, recursion, searching and sorting, ADTs Lists, Stacks, Queues, Priority Queues, Trees and Graphs.

8.  Students should submit their own original and individual assignments. They SHOULD NOT read, copy, or exchange other student's code. Students are encouraged to read the Section on academic misconduct of the Graduate Calendar.

9.     Attendance is mandatory to synchronous Zoom-based scheduled lectures/discussions. Little time is available to assist those who have missed relevant classes.

10. The final exam is cumulative and closed book. It will be conducted online via UR Courses, and using the Proctortrack platform.