Course Syllabus

Artificial Intelligence A

DIS Logo

image.png

Semester & Location:

Spring 2025 - DIS Copenhagen

Type & Credits:

Elective Course - 3 credits

Major Disciplines: Computer Science, Mathematics
Prerequisite(s): One year of computer science at university level. One of the computer science courses should be in algorithms and data structures. Experience with object-oriented programming (e.g. Java, Python). A course in discrete mathematics is recommended. (In class, we will be using Python).
Faculty Members:

Panagiota Katsikouli, PhD (current students please use the Canvas Inbox)

Program Contact:

CE@dis.dk

Time & Place:

Tuesdays & Fridays 11:40-13:00 

Classroom: F24-206

Course Description

Artificial Intelligence (AI) is behind your smart phone’s intelligent personal assistant, driverless cars, robots, government fraud detection systems, and image recognition algorithms on social media, just to mention a few examples.  This course introduces you to core techniques and applications of Artificial Intelligence using primarily symbolic search-based methods in an agent-oriented paradigm.

Classes are a mix of discussions of theory/core concepts and hands-on problem solving. The majority of the course work is carried out in groups.

During the course, you will implement simple search-based agents solving navigation in python. This part of the course is referred to as the programming project.

Course Overview

  1. Intelligent agents and problem solving through search
  2. Uninformed search
  3. Informed search and estimating information through heuristics
  4. Introduction to Game Theory and Adversarial Search
  5. Introduction to Subsymbolic AI (ML)*
  6. Introduction to Reinforcement Learning
  7. Ethics in Artificial Intelligence
  8. Lab work on the programming project
  9. Debate on Ethics

(*) Covered in much more detail in the Neural Networks and Deep Learning course

Course Elements

  • Python programming
  • Search problems formalization and state-space complexity estimation
  • Uninformed search algorithms: Breadth-first and Depth-first search
  • Informed search algorithms: Best-first search, Greedy best-first search A*
  • Designing heuristic functions: admissibility, consistency and impact on search behavior and performance
  • Formalising problems as games, equilibria and finding strategies through search: MINMAX, EXPECTIMAX
  • Introduction to Subsymbolic AI: solving regression and classification problems using Machine Learning
  • Introduction to Reinforcement learning: Monte Carlo estimations, Temporal Difference methods
  • Modern discussions around ethics in Artificial Intelligence

Learning Objectives

  • Being able to identify and formulate a real-life problem as a search problem
  • Understand how search can be used as a paradigm to achieve intelligent behavior in artificial agents 
  • Be able to implement and apply different search strategies with python
  • Learn a bit of game programming using pygame
  • Understand strengths and weaknesses of search-based approaches to AI and compare them to the subsymbolic approach to intelligence
  • Understand basic principles of Reinforcement Learning
  • Discuss contemporary applications of AI from a technical and an ethical perspective and understand their scope, potential as well as their limitations

Faculty

image.png

Panagiota (Yota) Katsikouli

PhD (Informatics, University of Edinburgh, 2018) . Post-doctoral Researcher, INRIA Lyon, 2018-2019. Post-doctoral Researcher, University College of Dublin, 2019. Post-doctoral Researcher, Technical University of Denmark, 2019-2020. Teaching and Research, University of Copenhagen, 2020-2024. Faculty Member, OPen Institute of Technology, 2023-present. With DIS since 2023.

Readings

Stuart Russell and Peter Norvig: Artificial Intelligence - A Modern Approach

All readings in the Course Summary below refer to this textbook unless otherwise noted. 

Expectations of the Students

Students are expected to carry out all the exercises following up a lecture in order to keep up with the material and holistically comprehend the concepts covered in class. Students who have little or no experience coding in Python should either follow a Python tutorial before the course starts, or prepare to invest some hours getting up to speed with the language once we start.

You are expected to attend all DIS classes, field studies and workshops when scheduled. All of the aforementioned events are mandatory. If you miss multiple classes, the Director of Academic Support and the Director of Student Affairs will be notified. Absences will jeopardize your grade and your standing at DIS. 

Evaluation and Grading

More details can be found in our Orientation slides on Canvas and in the Canvas Calendar.

Active Participation

Includes active participation in class, field studies and other class activities

10%

Practical Exercises

Hand-ins (7 in total : 6 written and 1 programming) with exercises covering the topics introduced in the lectures

20%

Programming Assignments

Two programming assignments in python using pygame

50%

Ethics in AI debate

In-class debate on relevant topics concerning ethics and modern AI

20%

 

Academic Regulations

Please make sure to read the Academic Regulations on the DIS website. There you will find regulations on:

 

 

DIS - Study Abroad in Scandinavia - www.DISabroad.org

Course Summary:

Date Details Due