Short Description
This unit gives a broad overview of some foundational topics in artificial intelligence, introducing some of the techniques that are used in this field. Students will implement theoretical knowledge in a practical way, with programming exercises to accompany many of the algorithms discussed, where students can apply these algorithms to solve new problems.
You’ll learn to:
- Demonstrate understanding of a range of AI techniques, their strengths, and their limitations
- Demonstrate understanding of the fundamentals of probability theory and its role in AI
- Apply various AI techniques to simple problems
- Understand a wide range of artificial intelligence (AI) techniques, their advantages, and their disadvantages
- Appreciate AI as a mechanism to deal with computationally difficult problems in a practical manner
- Understand the concepts of formal AI and put them into practice
- Write small to medium-sized programs for aspects of AI
- Critically evaluate state-of-the-art AI applications
Topics covered in this unit may include (but are not limited to) the following:
- Goals and foundations of AI
- Problem solving (uninformed, heuristic, and adversarial search; constraint satisfaction)
- Logical reasoning (propositional logic, first-order logic, logic programming)
- Probabilistic reasoning (probability models, Bayesian networks)
- Machine learning (possible topics include nearest-neighbour methods, reinforcement learning, neural networks)