An examination of the objectives, key techniques and achievements of work on artificial intelligence in Computer Science.


  • Website has been converted to inactive mode. (some links should no longer be expected to work)
  • More recent offering can be found here.


  • Lectures begin on Tuesday, September 6th, 2022
  • Last day to drop is Tuesday, September 15th, 2022
  • Lectures end and last day to withdraw is Wednesday, December 7th, 2022
  • CPSC 433 L01 TueThu 12:30-13:45


  • Tutorials will begin on Monday/Tuesday September 12/13th, 2022
  • The main goals of the tutorials will be to help you in more deeply understanding the concepts presented in the lectures (providing more examples) and with your assignment.
  • CPSC 433 T01 MonWed 16:00-16:50
  • CPSC 433 T02 MonWed 13:00-13:50
  • CPSC 433 T03 MonWed 17:00-17:50
  • CPSC 433 T04 MonWed 18:00-18:50
  • CPSC 433 T05 MonWed 14:00-14:50

Office Hours

  • MonWed 14:00-14:50 or setup via email (info in D2L Content)

Important Dates

  • Term Break: Sunday-Saturday, November 6-12th, 2022. (no lectures or tutorials)
  • University Closed for Truth and Reconciliation Day Friday, September 30th, 2022.
  • University Closed for Thanksgiving Day Monday, October 10th, 2022. (no tutorials)
  • University Closed for Remembrance Day Friday, November 11th, 2022. (during term break)
  • Midterm Exam: Friday, October 28th, 2022. [out-of-class activity]
  • Final Exam: Saturday, December 10th, 2022.


  • Join Code: XXXXXX
  • Use your UofC Account to access Tophat, not a computer science, former institution, or prior high school account.

Textbook Resources

  • Artificial Intelligence: A Modern Approach 4e
    • Author: Russell Norvig
    • ISBN: 9780134610993
    • Optional: For those who appreciate another resource. Taught material diverges from this source.
    • Version 3e/5e likely just as good for your purposes.

The due dates for the projects/assignments can be found in the Assignments sections of this page.

Support Materials

  • Course Information Sheet (Outline)
  • Organization pdf
  • Introduction pdf
  • Knowledge Representation pdf
  • Search Definitions pdf
  • Set-based Seach pdf
  • And-Tree-based Seach pdf
  • Or-Tree-based Seach pdf
  • Other Search Models pdf
  • Search Controls pdf
  • Midterm Exam: Friday, October 28th, 2022. [out-of-class activity]
  • Know. Rep. Neural Networks pdf
  • Know. Rep. Logic pdf
  • Know. Rep. Rules pdf
  • Know. Rep. Frames pdf
  • Know. Rep. Semantic pdf
  • Bias pdf
  • Summary pdf
  • Final Exam: Saturday, December 10th, 2022.


  • Java 17 (labs -> 17.0.4)
    • Labs are standardized on Java 17 so this is the required version. Higher versions of Java are only allowed if you receive TA approval that they are prepared to grade a higher version.
    • Download Oracle JDK 18: Oracle has wanted you to sign in, in the past, but at the moment this seems to work without it Here
    • Download Open JDK 18 Here
    • IntelliJ IDEA Here (Should be able to use ucalgary email to access Professional version as student)
    • Apache Netbeans IDE Here
    • Eclipse IDE Here
    • Visual Studio Code IDE Here
  • Python 3 (labs -> 3.10.6)
    • Python 3.10.6 or newest version Python 3.10.6 can be found Here
    • Pycharm IDE Here (Should be able to use ucalgary email to access Professional version as student)
    • Eclipse IDE Here
    • Visual Studio Code IDE Here
    • Optional: Google Colab: interactive notebooks for python here
    • Optional: Jupyter IPython Notebooks (can run these in Pycharm or otherwise install on your own system) Here
    • Optional: Jupyter IPython Notebooks through Syzygy Here

Guidelines for Academic Misconduct


  • Project Proposal Paper
    • Due Date: Friday, October 21st, 2022 23:59 (11:59 PM)
    • Description: Submission of your paper describing the two search models and processes.
    • Project Description
    • Project Problem
    • Project Input
  • Project Demonstration
    • Due Date: Dec 1st -> Dec 9th, 2022
    • Description: Presentation of your search system.
    • Here are the times available for the teams to do the demos of their systems to me (in the undergraduate lab). Please send me an email indicating at least 3 possible times (and the order of your preference)! It would be nice, if the email also provides a final list of the members of the team.
    • Available meetings times:
  • Project Final Submission
    • Due Date: Friday, December 9th, 2022 23:59 (11:59 PM)
    • Description: Submission of the source code of your search system and its documentation, together with your solutions to dropbox.
    • The two input files for the City of Calgary example instances you will have to send me the results from your system for are here. Set all the required parameters to 1 to produce the results.
      • Large Input 1
      • Large Input 2