Course syllabus

Welcome to the course site for EDAP01 / TFRP20 Artificial Intelligence. (Under construction, more info will come)

Next Course Occasion

The next course instance begins on Wednesday, January 22nd, 2025, 15:15-17:00, with an Introduction lecture and some administrative info. Specifics about the course instance can be found in the respective Canvas course site.

General Information

Course programme:

EDAP01Links to an external site. (in Swedish) or EDAP01Links to an external site. (in English). (TFRP20 is identical, but refers to the "individual course", fristående kurs, as opposed to LTH's programme courses.) This course is also given as EDAF70F to PhD students, but the requirements for passing can be slightly different than for undergraduates. Contact course responsible teacher (currently Elin A. Topp) for details.

Course policy:

The department has defined a policy against plagiarism of any kind, in particular in case of the course work. You may find it following these links: Samarbete eller fusk (in Swedish) and Cooperation or Plagiarism (in English).

Textbook:

A new (4th) edition of our textbook "Artificial Intelligence, A Modern Approach", by Stuart Russell and Peter Norvig, is finally out. ISBN-13 978-1-292-40113-3, or ISBN-101-292-40113-3. Consider buying it. The exam used to be "open book" but without any electronic equipment (inclusive e-readers), so it might be worth an investment. Besides, the book is really good.

Legacy stuff:

  • General: The advanced course EDAP01, Artificial Intelligence (from 2020 VT1), is a successor of the earlier course EDAF70 (which used to be called EDA132), Applied Artificial Intelligence (given last time 2019 VT1). In case of questions, please contact the course-responsible teacher Elin A. Topp.
  • Legacy assignment 2009: https://Fileadmin.cs.lth.se/cs/Education/EDAP01/ded09.pdf
  • Legacy assignment 2009: https://Fileadmin.cs.lth.se/cs/Education/EDAP01/GAas09.pdf
  • Legacy assignment (no guarantee that the links still exist/work properly!) from 2020:
    • Preliminary: This assignment is inspired by the TAI Game Playing Championship held for many years by prof. Jan Eric Larsson from the EIT department at LTH
    • In short: Your task in this assignment consists in writing a program playing a full Reversi game
    • In detail: The rules of reversi can be found e.g. in http://en.wikipedia.org/wiki/Reversi. This version will be sufficient for our purposes. We will be playing according to the modern, so called Othello rules, i.e. diagonal beginning 2x2 and no limit of disks for players.
      Two example sites (there are more, of course) giving you the possibility to get acquainted with the game interactively are http://www.samsoft.org.uk/reversi/ and http://www.haxx.se/home/games/othello/index.shtml, but there are lots more interesting resources on the web, of course.
    • In order to get the assignment passed, your program must:
      • Play a full game, from the beginning to an end, against a human opponent;
      • It should be able to play as either the dark or the white player (selectable option before the actual game begins);
      • In every game situation suggest a legal move, or admit there is no such move. When the game is finished, it should announce the result and gracefully exit;
      • Implement at least the classical mini-max adversarial search algorithm, with the alpha-beta pruning introduced;
      • Provide a response within a given, user-predefinable time limit;
      • Run on the LTH student Linux system, e.g., on the machine login.student.lth.se (it will be tested there). Any exceptions to this need to be agreed upon in advance!
      • Moreover, the program must come with a reasonable description (i.e. the submitted report) regarding its design (where in your code the alfa-beta pruning can be found, what kind of extensions or heuristics have you used, what is the evaluation function you have used and why is it reasonable, how is the game represented, etc.), usage (how can one run it in order to test it) and where can it be found on the student computer system, i.e., the access path.