IT3105 - Artificial Intelligence Programming


Examination arrangement

Examination arrangement: Assignment and Work
Grade: Letters

Evaluation form Weighting Duration Examination aids Grade deviation
Work 1/6
Work 1/6
Work 1/6
Assignment 1/6
Assignment 1/6
Assignment 1/6

Course content

The course gives students the opportunity to implement many classic AI algorithms and use them as modules in large AI systems to perform tasks such as speech and image processing, simulated soccer (in the well-known Robocup on-line competition), Texas Hold'Em poker playing, and robot navigation.

Some of the important AI methods that can appear in various projects include the A* algorithm, means-ends analysis, decision-tree learning, genetic algorithms, neural networks, bayesian classification, case-based reasoning, boosting and bagging.

Through this work, students will gain an in-depth understanding of "AI in practice" as opposed to the combination of "AI in theory" and "AI on toy problems" that one experiences in the introductory and intermediate AI courses.

The course will consist of 2-4 projects, depending up the year and the extent of the individual projects. Each project will be supported by a series of lectures on relevant theoretical and practical issues surrounding the problem domain, while some class meetings will be reserved for interactive discussions of the problem and student progress.

Students will be free to program in the language of their choice, although Python, Java and C++ will be recommended.

Learning outcome

Students will gain hands-on experience designing and implementing relatively large AI projects.

Students will gain valuable insights into why, when and how to use AI methods in realistic problems that they may encounter in their technical careers.

Learning methods and activities

50% standard lectures, and 50% interactive project discussions between students and teacher.


100% - project demonstrations and reports

Students will be allowed to work alone or in groups of 2 (but no larger)

Specific conditions

Admission to a programme of study is required:
Computer Science (MIDT) - some programmes
Computer Science (MTDT) - some programmes
Industrial Economics and Technology Management (MTIØT) - some programmes
Informatics (MIT) - some programmes

Required previous knowledge

TDT4136 Introduction to Artificial Intelligence
TDT4171 Artificial Intelligence Methods
This course is only available for specific specializations.

Course materials

Lecture notes and complete project descriptions will be provided, as will any research articles of relevance to a project.

For robotics projects, students will have access to a robot simulator and possibly to real robots (for a limited time).

All materials are free.

Credit reductions

Course code Reduction From To
IT2105 7.5 2008-09-01
MNFIT215 7.5 2008-09-01
MNFIT215 7.5 2008-09-01


Detailed timetable


Examination arrangement: Assignment and Work

Term Statuskode Evaluation form Weighting Examination aids Date Time Room *
Autumn ORD Work 1/6
Autumn ORD Work 1/6
Autumn ORD Work 1/6
Autumn ORD Assignment 1/6
Autumn ORD Assignment 1/6
Autumn ORD Assignment 1/6
  • * The location (room) for a written examination is published 3 days before examination date.
If more than one room is listed, you will find your room at Studentweb.