IT3105 Web Page - Autumn 2018
This course teaches Artificial Intelligence programming via
several medium-sized AI projects involving concepts and methods such as best-first search,
minimax with alpha-beta pruning, constraint reasoning, propositional logic,
first-order predicate logic, decision-tree learning, evolutionary algorithms,
neural networks, Bayesian classifiers, reinforcement learning, boosting, bagging and particle
swarm optimization...to name just a few. The exact topics will vary from year to year.
There will be no tight connection to a single
programming language, and there will not be a lot of lecture time
devoted to language learning. We will dive right in to sizeable
projects, some of which may have a recommended language
but normally no strict requirement. Students are normally free to use
the language(s) of their choice. However, it is recommended that they choose
a language that supports the formation and manipulation of large sequences
(often nested) of symbols (i.e. mixtures of letters and numbers) such as
"Age(Fred) + 18 = 35 AND Height(Wilma) > 175". Most students choose PYTHON or JAVA.
When instructors provide supporting code, it will normally be in a standard
language such as Python, JAVA, C++ or MATLAB. No machines maintained by the department
will house any of the software needed for this course. Students are expected to download
all relevant software (all of which is free and easily accessible) to their own machines.
The three main topics in this autumn-2018 version of the course will be Deep Learning,
Reinforcement Learning (via Monte Carlo Tree Search), and Deep Reinforcement Learning. These
will be covered by three different project modules, the third of which will combine many
pivotal aspects of the first two. The first and third modules will have formal demo sessions
with fixed dates,
while the second module will have a "delivery window" of several weeks, during which it
must be demonstrated to a student assistant during the course lab hours.
This course is definitely NOT one that a student can expect to join late in the
semester or ease into. Work on the first project should begin
immediately after the first lecture. Each project and module involves considerable
programming effort, so you will need to hit the ground running
at the beginning of each one. Waiting until the last minute (weekend) has
been the demise of many students in this course.
The instructor of this course may use two different media to inform students:
1) This web page and 2) BLACKBOARD. In general, this web page is used as a repository for
course materials and relatively static schedule information, while BLACKBOARD is used as
a repository for student deliveries, a sign-up sheet for demo sessions, a medium
for dissemination of certain interim grades (such as those for
individual projects), and as a bulletin board for important messages (such as
lecture cancellations, changes to demo sessions, etc.).
Grading, Delivery and Attendance Policies
It is VERY important that you read the
- Lecturer and Coordinator: Keith Downing (keithd<at>ntnu.no)
- PhD Assistant: Håkon Måløy (hakon.maloy<at>ntnu.no)
- Primary Assistants:
- Stian Hanssen (Hanssen.Stian<at>gmail.com)
- Mathias Pedersen (maaarseth<at>gmail.com)
- Secondary Assistants
- Markus Andresen (markua<at>stud.ntnu.no)
- Alfred Birketvedt (alfred_birk<at>hotmail.com)
- Espen Haugsdal (espen.haugsdal<at>gmail.com)
To contact course instructors and assistants, use their individual
email addresses, not BLACKBOARD .
- Location: Room KJL4, Kjelhuset
- Time: Mondays 10:15 - 12:00 (First lecture: August 20; Final lecture: November 19)
Lab (Help) Hours (all in Room A4-112 - Realfagbygget)
- Mondays (12:15 - 16:00)
- Tuesdays (10:15 - 14:00)
- Thursdays (16:15 - 20:00)
The course lab hours are not used in the traditional sense (of all students meeting
in a room and doing "lab exercises"). The lab hours are simply the times at which our
student assistant(s) are available to help students. In addition, in the rare instance
that an instructor feels the need for extra lectures, (s)he may choose to use the
course lab hours.
** Follow Blackboard for room-change announcements.
NTNU's official web page for this class is here
Read previous messages here.