Revision 2b255951982fef0e7aa49ebbddc3dfd3ab8dc31a (click the page title to view the current version)

Front Page

Changes from 2b255951982fef0e7aa49ebbddc3dfd3ab8dc31a to current

---
title: Artificial Intelligence
categories: Module
---

**NB** This is a living document and will be updated, augmented, and improved
during the semester.

+ See [Lecture Notes](Overview) for learning materials
+ See [Blackboard](https://ntnu.blackboard.com/) for announcements and 
  discussion boards.
+ [Learning Outcomes]()
+ [Reading List]()
+ [Actions2023]() i.e. changes to be made next year


# Practical Information

1.  It is your responsibility to the exercises you need to do to understand
1.  It is your responsibility to do the exercises you need to do to understand
    the subject and gain experience.
2.  There are some compulsory assignments, but they do not cover the complete
    material that you will need to study.
3.  Attendance is compulsory for most (read all) sessions starting 
    on 3 March.
3.  Attendance is compulsory for most (read all) sessions in the second half
    of the semester (exact date TBA).
    See under compulsory assignments.
4.  Feedback is provided *in class* upon demonstration of own work
    and solutions.  This includes approval of coursework.
5.  The module emphasises a broad and relational understanding, consolidating
    theory, practice (programming), and philosophy (incl. ethics)
6.  We try to employ an agile approach to learning and module design.
    To this end we use 
    [JIRA](https://jira.iir.ntnu.no/secure/RapidBoard.jspa?rapidView=10085&projectKey=TIA#)
    and [Confluence](https://confluence.iir.ntnu.no/display/TIA/AI-Module).
    Please contact me if you have not go access already.


## How to work with the module

1.  Read the theory.
2.  Do practical exercises to *test your theoretical understanding*
3.  Evaluate your own solutions and reflect upon
    - what have you learnt from the exercise?
    - what do you yet not know?
3.  Engage in the philosophical questions.  Discuss with your classmates.
4.  Don't do a lot of exercises quickly.
4.  Don't try to do a lot of exercises quickly.
    It is better to make sure that you comprehend a few exercises fully,
    and can justify and validate your own reasoning.
5.  Ask Questions.  
    I will generally not repeat material unsolicited, 
    but I am very happy to discuss any question you may have.
4.  Keep a diary.
    Make sure you can refer back to previous ideas and reuse previous solutions.

##  Compulsory Assignments

There will be two compulsory assignments
There will be two compulsory assignments.
The first one focuses on the practical challenges of modelling, solving,
and programming solutions for various coding games, as we work on for
the first six weeks.
The second one focuses on philosophical questions including ethics and requires
attendance.

### Programming and Problem Solving 

For the first five weeks, we will work mainly on search and optimisation
algorithms, including problem solving through programming.
At the end of these weeks, you will have to submit

1. solutions to two selected problems on CodinGame (at least medium
   difficulty)
2. an action-reflection note, where you discuss what you have learnt from 
   each program submitted and why the problem/solution is interesting.
   This should be about ½-1 page.
The goal of of this compulsory exercise is that you seek feedback on
some of your solutions to practical problems.  You should do this
at least twice during the first six weeks of the semester, and we
use the Confluence wiki to collect and give feedback on the material.

*Details will be published later.*
Each time you should

**Deadline** Midnight end of Sunday 27 February.
1.  Choose one of the problems from CodinGame or
    from [pai-exercises](https://github.com/hgeorgsch/pai-exercises).  
2. create a confluence page where you 
    + model the problem abstractly
    + solve the abstract problem  
    + code the solution for CodinGame (or similar
3. get feedback from other students and similarly give feedback to others
4. edit the confluence page (or add a subpage) discussing how you can
   use the feedback received 
5. add an action-reflection note, where you discuss what you have learnt from 
   each program submitted and why the problem/solution is interesting
   in view of the syllabus.  This should be about ½-1 page.

The material must be submitted in BlackBoard and demonstrated in person
one-to-one with the teacher or tutor, during the first 
session in March,
Formative feedback and approval is given face to face.
(In case of absence under mitigating circumstances, it is possible to do
this in a later session.)
**Deadline** The very last deadline is 26 February 11:59pm.  It is
recommended that you do one problem ASAP, and one before the midterm break.

**Learning Outcomes** Programming skills.
**Learning Outcomes** Programming skills.  Modelling skills.
Knowledge of Fundamental Algorithms.
Problem Solving Competency.

### Literature, Presentation, and Debate 

**Deadline** Declare group and topic by midnight end of Sunday 27 February.
**Deadline** Declare topic by 26 February 11:59pm

The second compulsory assignment is a verbal presentation or debate.
The second compulsory assignment is a verbal debate.
I prepare a list of [Questions]() or topics, with associated reading
lists.

1.  You select a topic from the list.  If you have a good idea on your own,
    please discuss it with me.
2.  Read the literature and prepare an introduction to the topic.
3.  Present the topic to class, and engage in discussion.

I have not decided if this should be done individually or in pairs.
There may be topics suitable for pairs and others for single students.
1.  You select a topic.  You are not limited to the published list.
    If you have an idea on your own, please discuss it with me.
2.  Enter your topic and *date* into the Confluence Wiki.
3.  Read some literature and prepare an introduction to the topic.
4.  Present the topic to class, aiming to initate a dicussion.

Some topics will be cast as panel debates, where two students/pairs 
prepare different points of view on a controversial question. 
Others will be more straight-forward topics, with a single presentation.
Both technical and philosophical papers and topics may occur, but there
will be an emphasis on philosophical questions.

*Details will be added later*

**Compulsory Attendance** not only for you own presentation, but also
when others present.  Two absences are permitted.
when others present.  One absence over the six or seven weeks we have
this exercise is permitted.

**Learning Outcomes**  Ability to read and interpret research papers.
Verbal presentation skills.  Ability to engage in peer discussions within
the discipline.  Awareness of the ethical concerns within AI.


## How does the exam work

1.  Oral Exam.
2.  You get seven minutes to demonstrate the highlights of your
    understanding of the subject.
    *Make a case for the grade you think you deserve.*
3.  The examiner will use the rest of the time for questions to clarify
    and to demonstrate expected breadth and depth.
4.  Note that there are both theoretical, practical, and philosophical
    learning outcomes,
    and the module emphasises the relation between these three.

+ Capacity: 30 candidates
+ [Assessment Guide]() to be announced later
+ [Assessment Guide]() 
 
# Syllabus

The core syllabus consists of

1.  The lectures and taught sessions.
2.  All learning material provided.
3.  Core reading
    - Weeks 1-6: Russel & Norvig, Chapters 1-4 + 6
    - Weeks 7-9: Haupt & Haupt, Chapter 1-4
    - Weeks 10-12: Russel & Norgig TBA
    - Weeks 13-14: TBA
3.  TBC Core reading (session numbers may change)
    - Sessions 1-6: Russel & Norvig, Chapters 1-4 + 6
    - Sessions 7-9: Haupt & Haupt, Chapter 1-4
    - Session 10: Russel & Norvig Chapter 19 TBC
    - Sessions 11-13: Russel & Norvig Chapters 16 and 23
    - Session 14: Russel & Norvig Chapters 28-29

Note that the propositional knowledge that you can find well-defined
in the textbooks only forms a part of this module.  We will also 
study the tacit skills of problem solving and the ethical and
philosophical dilemmas of intelligence, artificial or otherwise.
This requires broader reading and more thinking on your part.
A [Reading List]() is provided and will be developed as we go along.