Overview
Artificial intelligence (AI) aims to make computers and information systems more intelligent to solve complex problems and provide more natural and effective services to humans. AI has been a source of innovative ideas and techniques in computer science and has been widely applied to many information systems. Computer Science 657: Artificial Intelligence – Principles and Techniques provides a comprehensive, graduate-level introduction to AI, 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 providing 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 in-depth discussion and understanding of the topics presented. You will think about and communicate higher-level abstract ideas—including 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 Search and Problem-Solving concentrates on informed search, online search, and adversarial search. It also includes constraint satisfaction problems and optimal adversarial search 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; and how to reason and make decisions in the presence of uncertainty about the world. It includes state-of-the-art topics such as the logical representation of different types of knowledge, reasoning under uncertainty, ontological engineering, hidden Markov models, dynamic Bayesian networks, and graphical models.
Part III: Machine Learning describes both symbolic and statistical learning methods as well as reinforcement learning and deep 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, computer vision, robotics, and human-centred information systems such as business intelligence and e-learning.
Outline
COMP 657 is composed of the following units. The units marked with an asterisk (*) are optional. If you are interested in or familiar with these topics, you are encouraged to explore them and use the material and applications to complete your assignments and projects.
Part I: Advanced Search and Problem-Solving
- Unit 1: Informed Search and Online Search*
- Unit 2: Games and Adversarial Search
- Unit 3: Constraint Satisfaction Problems
Part II: Knowledge, Reasoning, and Decision Making under Uncertainty
- Unit 4: Logic, Inference, and Ontology
- Unit 5: Automated Planning and Acting*
- Unit 6: Uncertainty, Graphical Models, and Probabilistic Reasoning
- Unit 7: Temporal Probabilistic Reasoning and Dynamic Bayesian Networks
- Unit 8: Complex Decision Making
Part III: Machine Learning
- Unit 9: Machine Learning Basics
- Unit 10: Computational Learning Theory and Statistical Learning
- Unit 11: Reinforcement Learning and Deep Learning
Part IV: AI for Communication, Robotics, and Information Systems
- Unit 12: Natural Language Processing
- Unit 13: Computer Vision and Robotics*
- Unit 14: AI in Business Intelligence and E-Learning*
Learning outcomes
Upon successful completion of this course, you should be able to
- compare AI with human intelligence and traditional information processing and discuss its strengths, limitations, and applications to complex and human-centred problems.
- discuss the core concepts and algorithms of advanced AI, such as informed search, constraint satisfaction problems, logic, uncertain knowledge and reasoning, dynamic Bayesian networks, graphical models, simple and complex decision making, statistical learning, reinforcement learning, deep learning, natural language processing, and robotics.
- 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 search, reasoning, machine learning, and language processing.
- design AI functions and components involved in intelligent systems such as computer games, expert systems, the Semantic Web, information and language processing, 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.
Evaluation
To receive credit for COMP 657, you must achieve a course composite grade of at least B– (70 percent), an average grade of at least 60 percent on the assignments, and a grade of at least 60 percent on the final examination.
The weighting of the course composite grade is as follows:
Activity | Weight |
Assignment 1 | 15% |
Assignment 2 | 20% |
Assignment 3 | 20% |
Assignment 4 | 15% |
Final Examination (Online Oral) | 30% |
Total | 100% |
Materials
Digital course materials
Links to the following course materials will be made available in the course:
Russell, S. J., & Norvig, P. (2021). Artificial intelligence: A modern approach (4th ed.). Pearson.
Software
Programming for assignments and projects may be done using one or more of the following programming languages: Python, Java, C++, Lisp, Prolog.
Free and open-source development tools for these languages are available for download on the Internet.