Computer Science (COMP) 657

Artificial Intelligence: Principles and Techniques (Revision 1)

COMP 657

Delivery Mode: Grouped Study Online (with eTextbook)

Credits: 3

Area of Study: IS Core

Prerequisite: COMP 504, or an equivalent data structures, and algorithms course. Familiarity with discrete mathematics, and probability/statistics is an asset to the course. Students who are concerned that they may not meet the prerequisites for this course are encouraged to contact the course coordinator before registering. Completion of this course does not exempt students from completing the IS foundation prerequisites.

This course is not available for challenge credit

Faculty: Faculty of Science and Technology

Centre: School of Computing and Information Systems

Instructor: Dr. Dunwei Wen

**Note:  This is a graduate level course and students need to apply and be approved to one of the graduate programs or as a non-program School of Computing and Information Systems graduate student in order to take this course.  Minimum admission requirements must be met.  Undergraduate students who do not meet admission requirements will not normally be permitted to take this course.


Artificial Intelligence (AI) aims to make computers and information systems more "intelligent" to solve complex problems and provide more natural and effective services to human beings. AI has been a source of innovative ideas and techniques in computer science, and has been widely applied to many information systems. This course provides a comprehensive, graduate-level introduction to artificial intelligence, emphasizing advanced topics such as advanced search, reasoning and decision-making under uncertainty, and machine learning.

The best way to study AI in this course is to learn by researching. In addition to a comprehensive introduction to a variety of AI subfields, this course will facilitate your exploration of state-of-the-art research and applications of AI, the production of your own ideas and visions, and discussions and sharing of some deep understandings. You will be asked to think about and communicate higher-level abstract ideas, including the concepts, strategies, principles, and algorithms of AI, rather than the technical details of implementation and programming. You will also be encouraged to test and evaluate ideas and algorithms through research-oriented studies involving software programming and/or exploring.

The course is divided into four parts. Part I: Advanced Searching, concentrates on informed search, online search and adversarial search. Part I also includes constraint satisfaction problems (CSP), and optimal adversarial searching and exploration.

Part II: Knowledge, Reasoning, and Decision Making under Uncertainty, discusses how to represent knowledge,including incomplete and uncertain knowledge of the real world; how to reason logically with that knowledge using probabilities; how to use these reasoning models and methods to decide what to do, particularly by constructing plans; and how to reason and make decisions in the presence of uncertainty about the world. It includes some state-of-the-art topics, such as the logical representation of different types of knowledge, reasoning under uncertainty, ontological engineering, hidden Markov models (HMM), dynamic Bayesian networks (DBN), and graphical models.

Part III: Machine Learning, describes both symbolic and statistical learning methods, as well as reinforcement learning, deep learning and multi-agent learning for generating the knowledge required by reasoning and/or decision-making components of intelligent agents or systems.

Part IV: AI for Communication, Robotics, and Information Systems, introduces some of the most important aspects related to human activities, including natural language, perception, robotics, and human-centered information systems such as business intelligence and e-learning.

Course Objectives

The objectives of this course are to provide graduate students of M.Sc. Information Systems with comprehensive and in-depth knowledge of AI principles and techniques by introducing AI’s fundamental problems, and the state-of-the-art models and algorithms used to undertake these problems. This course is also designed to expose students to the frontiers of AI-intensive computing and information systems, while providing a sufficiently strong foundation to encourage further research.


Part I: Advanced Searching

  1. Informed Search and Online Search
  2. Constraint Satisfaction Problems (CSP) and Distributed CSP
  3. Games and Adversarial Search

Part II: Knowledge, Reasoning, and Decision Making under Uncertainty

  1. Logic, Inference, and Ontology
  2. Automated Planning and Acting (Optional)
  3. Uncertainty, Graphical Models, and Probabilistic Reasoning
  4. Temporal Probabilistic Reasoning and Dynamic Bayesian Networks
  5. Complex Decision-Making

Part III: Machine Learning

  1. Inductive and Analytic Learning
  2. Computational Learning Theory and Statistical Learning
  3. Reinforcement Learning, Deep Learning and Multiagent Learning

Part IV: AI for Communication, Robotics, and Information Systems

  1. Natural Language Understanding and Statistical Language Processing
  2. Perception and Robotics (Optional)
  3. AI in Business Intelligence and E-Learning (Optional)

The units or sections marked as Optional in the Syllabus and Study Guide of this course contain content that is not required for the Final Exam. However, the students who are interested in or familiar with these topics are encouraged to explore them, and to use the material and applications to complete their TMAs and final examination.

Learning Outcomes

Upon successful completion of this course, you will be able to

  • compare AI with human intelligence and traditional information processing and discuss its strengths and limitations as well as its application to complex and human-centred problems.
  • discuss the core concepts and algorithms of advanced AI, including informed searching, CSP, logic, uncertain knowledge and reasoning, dynamic Bayesian networks, graphical models, decision making, multiagent, inductive learning, statistical learning, reinforcement learning, deep learning, natural language processing, robotics, and so on.
  • apply the basic principles, models, and algorithms of AI to recognize, model, and solve problems in the analysis and design of information systems.
  • analyze the structures and algorithms of a selection of techniques related to searching, reasoning, machine learning, and language processing.
  • design AI functions and components involved in intelligent systems such as computer games, expert systems, semantic web, information retrieval, machine translation, mobile robots, decision support systems, and intelligent tutoring systems.
  • review research articles from well-known AI journals and conference proceedings regarding the theories and applications of AI.
  • carry out a research project and write a research proposal, report and paper.


To receive credit for COMP 657, you must achieve a cumulative course grade of B- (70 percent) or better, and must achieve an average grade of at least 60% on the assignments and 60% on the final examination. Your cumulative course grade will be based on the following assessment.

Assessment Weight
TMA 1: Concept, Paper Reading, and AI Program Analysis 15%
TMA 2: Concept, Paper Reading, Research Proposal, Programming and Implementation 20%
TME 3: Research Project, Report and Research Paper 20%
TME 4: Conference Participation 15%
Final Examination 30%
Total 100%

Course Materials

Both an eText and other reading materials are used in this course. The required eText provides systematic and comprehensive knowledge of AI, while the other reading materials will cover many state-of-the-art and in-depth topics that are not covered by the eText.


Registration in this course includes an electronic textbook. For more information on electronic textbooks, please refer to our eText Initiative site.

Russell, S. J., & Norvig, P. (2010). Artificial intelligence: A modern approach (3rd ed.). Upper Saddle River, NJ: Prentice-Hall.

A print version of the eText may be available for purchase from the publisher through a direct-to-student link provided on the course website; you can also acquire the textbook on your own if you wish.

Required and Supplemental Readings

Papers and articles selected from journals and conference proceedings of ACM, IEEE, AAAI, Elsevier, Springer, etc. that are accessible through the AU Digital Library, or are in the open domain on the Internet. Some relevant books or monographs are also listed as supplemental readings for reference.

Other Materials

The remaining learning materials are distributed in electronic format. At this time, those materials include:

  • The Computer Science 657 Study Guide.
  • A Study Plan listing the required course completion tasks in logical order.
  • Links to a variety of web resources such as AI software, systems, and tools.
  • Detailed descriptions of the requirements for the tutor-marked assignments.
  • A course evaluation form.

Software Tools

As different programming languages have been involved in the development of AI, this course is not bound to any specific programming language. However, a small set of high-level programming languages, namely Java, Python, C++, Lisp, and Prolog, is highly recommended for students to use when completing their assignments and/or projects for this course. The free and/or open source development tools of these languages are available for downloading from the Internet.

Special Course Features

COMP 657 is offered by computer mediated communications (CMC) mode, and can be completed at the student's workplace or home. Your computer must have sound capabilities.

Special Note

Students registered in this course will NOT be allowed to apply for a course extension due to the nature of the course activities.

Athabasca University reserves the right to amend course outlines occasionally and without notice. Courses offered by other delivery methods may vary from their individualized-study counterparts.

Opened in Revision 1, November 5, 2008.