Official course description, subject to change:
Preliminary info last published 15/11-19

Introduction to Artificial Intelligence, MSc

Course info
Language:
English
ECTS points:
7.5
Course code:
KSINARI1KU
Participants max:
125
Offered to guest students:
yes
Offered as a single subject:
yes
Price (single subject):
10625 DKK (incl. vat)
Programme
Level:
MSc. Master
Programme:
Master of Science in Information Technology (Software Design)
Staff
Course semester
Semester
Forår 2021
Start
25 January 2021
End
28 May 2021
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
GB
Abstract
The overall goal of the course is to introduce students to a selection of the most important problem solving and decision support techniques within AI and optimization.
Description

Computers are increasingly used to support decision making, exploiting that computers can perform computations at scale, on large amounts of data, requiring large amounts of computation steps, or both. This course studies how to solve such decision problems on computers. 
The goal is to make students able to identify, design, and implement efficient solutions to the kind of decision problems that arise in modern organizations and IT products. The expectation is that a student mastering the material is able to work in internationally leveled business intelligence and optimization groups as well as in development departments of “intelligent” applications as used in smart phones, computer games, enterprise resource planning systems, and decisions support systems. 
The course will cover the followings topics:

Search algorithms
  • Informed search: greedy heuristic search, A*, breadth-first heuristic search
  • Local search: hill-climbing, simulated annealing, genetic algorithms, tabu search, population-based search
  • Adversarial search: Minimax search, alpha-beta pruning
Propositional logic
  • Representations: disjunctive (DNF), conjunctive (CNF), and if-then-else (INF) normal forms, Binary Decision Diagrams (BDDs)
  • Reasoning: resolution, SAT-checking
Constraint programming
  • Local consistency: arc-consistency, path-consistency, i-consistency
  • Look-ahead search strategies: forward-checking, arc-consistency look-ahead, maintaining arc-consistency
Linear Programming
  • Simplex algorithm
  • Duality
Formal prerequisites

  • You must have passed an elementary programming course. (for example
  • Introductory Programming)
  • You must have passed a discrete mathematics course (for example Foundations of Computing, Discrete Mathematics)
  • You must follow in parallel, or have passed an introductory algorithms course (for example Algorithms and Data Structures).

If you are an external student, it is important that you have programming-experience from elsewhere, i.e. through a daily use in a developer position in the software industry.

Intended learning outcomes

After the course, the student should be able to:

  • Identify decision problems in work processes and IT products that can be solved by AI and optimization algorithms.
  • Identify decision problems in work processes and IT products that can be solved by AI and optimization algorithms.
  • Implement AI and optimization software components to solve these problems efficiently.
  • Apply standard AI and optimization models and solvers.
  • Participate in concept development of advanced decision support systems.
Ordinary exam
Exam type:
A: Written exam on premises, external (7-trinsskala)
Exam variation:
A11: Written exam on premises. Open book exam.