COMP307 (2021) - Introduction to Artificial Intelligence


This course addresses key ideas and techniques of artificial intelligence (AI). It provides a brief introduction to the history of AI and fundamental search techniques, as well as introducing important machine learning topics and algorithms with their applications, including neural networks, and addresses a selection of other important topics in AI.

Course learning objectives

Students who pass this course should be able to:

  1. Understand and explain fundamental concepts and techniques of artificial intelligence, in areas such as search, machine learning, evolutionary computing. (BE 3(a), 3(c), 3(d), 3(e)); (BSc COMP 1, 2, 3, 4).
  2. Apply fundamental concepts and techniques of AI to specific problems (including engineering applications). (BE 3(a), 3(c), 3(d), 3(e), 3(f)); (BSc COMP 1, 2, 3, 4).

Course content

The course is primarily offered in-person, but there will also be a remote option and there will be online alternatives for all the components of the course for students who cannot attend in-person.
Students taking this course remotely must have access to a computer with camera and microphone and a reliable high speed internet connection that will support real-time video plus audio connections and screen sharing.  Students must be able to use Zoom; other communication applications may also be used. A mobile phone connection only is not considered sufficient.   The computer must be adequate to support the programming required by the course: almost any modern windows, macintosh, or unix laptop or desktop computer will be sufficient, but an Android or IOS tablet will not.
If the assessment of the course includes tests, the tests will generally be run in-person on the Kelburn campus. There will be a remote option for students who cannot attend in-person and who have a strong justification (for example, being enrolled from overseas). The remote test option may use the ProctorU system for online supervision of the tests. ProctorU requires installation of monitoring software on your computer which also uses your camera and microphone, and monitors your test-taking in real-time. Students who will need to use the remote test option must contact the course coordinator in the first two weeks to get permission and make arrangements.
Artificial Intelligence (AI) is intelligence exhibited by machines. Examples include self-driving cars, automatically planning a holiday, generating sensible conversation, learning to predict fog at Wellington Airport, reading a web page to get the answer to a question, recognising handwritten digits, detecting identity by checking fingerprints, detecting network intrusions, controlling robot actuators, processing and recognising images and signals, discovering and detecting the mathematical or logical relationship between output variables and a large number of inputs in economic and engineering tasks, or optimising parameter values in complex engineering problems. COMP 307 is an introduction to the ideas and techniques that computer scientists have developed to address these kinds of tasks.
The lectures cover following main topics: search techniques, machine learning including basic learning concepts and algorithms, neural networks and evolutionary learning, reasoning under uncertainty, planning and scheduling, knowledge based systems and AI Philosophy. The course includes a substantial amount of programming. The course will cover both science and engineering applications.

Withdrawal from Course

Withdrawal dates and process:


Dr Yi Mei (Coordinator)

Dr Andrew Lensen

Prof Mengjie Zhang, for some tutorials and guest lectures

Teaching Format

This course will be offered in-person and online.  For students in Wellington, there will be a combination of in-person components and web/internet based resources. It will also be possible to take the course entirely online for those who cannot attend on campus, with all the components provided in-person also made available online.
During the trimester there will be typically two lectures and one tutorial per week.

Student feedback

Student feedback on University courses may be found at:

Dates (trimester, teaching & break dates)

  • Teaching: 22 February 2021 - 28 May 2021
  • Break: 05 April 2021 - 18 April 2021
  • Study period: 31 May 2021 - 03 June 2021
  • Exam period: 04 June 2021 - 19 June 2021

Class Times and Room Numbers

22 February 2021 - 04 April 2021

  • Monday 16:10 - 17:00 – LT205, Hugh Mackenzie, Kelburn
  • Tuesday 16:10 - 17:00 – LT205, Hugh Mackenzie, Kelburn
  • Wednesday 16:10 - 17:00 – LT205, Hugh Mackenzie, Kelburn
19 April 2021 - 30 May 2021

  • Monday 16:10 - 17:00 – LT205, Hugh Mackenzie, Kelburn
  • Tuesday 16:10 - 17:00 – LT205, Hugh Mackenzie, Kelburn
  • Wednesday 16:10 - 17:00 – LT205, Hugh Mackenzie, Kelburn

Other Classes

There will be some scheduled helpdesks.


The textbook for COMP 307 is: Stuart J. Russell and Peter Norvig, Artificial Intelligence. A Modern Approach, Prentice-Hall, NJ, 3rd edition, 2009. Some online materials are available on the course website.

A Reading List is available via the course website.

  • Please see Talis.

Mandatory Course Requirements

In addition to achieving an overall pass mark of at least 50%, students must:

  • submit reasonable attempts for at least three of the four assignments, because the practical application of the range of concepts and techniques in the course to real problems, demonstrated in the assignments, is critical for meeting CLO 2.

If you believe that exceptional circumstances may prevent you from meeting the mandatory course requirements, contact the Course Coordinator for advice as soon as possible.


This course will be assessed through assignments and two tests. There will be four assignments. The first three assignments will involve a combination of programming and discussion; the final assignment does not have programming work.
The marks and feedback will be returned in two weeks after the submission of each assignment.

Assessment ItemDue Date or Test DateCLO(s)Percentage
Assignment 1 (3-4 weeks)Week 5CLO: 1,215%
Assignment 2 (3 weeks)Week 8CLO: 1,212%
Assignment 3 (2-3 weeks)Week 10CLO: 1,210%
Assignment 4 (2 weeks)Week 12CLO: 1,28%
Test 1 (1 hour)Week 7CLO: 1,225%
Test 2 (1 hour)Assessment weekCLO: 1,230%


The penalty for assignments that are handed in late without prior arrangement is one grade reduction per day. Assignments that are more than one week late will not be marked.
There are three late days for the assignments. Students can arrange these three late days among the assignments freely.


Individual extensions will only be granted in exceptional personal circumstances, and should be negotiated with the course coordinator before the deadline whenever possible. Documentation (eg, medical certificate) may be required.

Submission & Return

All work should be submitted through the ECS submission system, accessible through the course web pages. Marks and comments will be returned through the ECS marking system, also available through the course web pages.


In order to maintain satisfactory progress in COMP 307, you should plan to spend an average of 10 hours per week on this course. A plausible and approximate breakdown for these hours would be:

  • Lectures and tutorials: 3 hours
  • Readings, revision/review, and assignments: 7 hours

If assignments are left until the last minute, the amount of work spent in particular weeks may vary greatly.

Teaching Plan

Lecture schedules can be seen from the course website. See

Communication of Additional Information

1. Course website:
2. Course forum
3. Email sent by the lecturers to students at their ecs email addresses.

Offering CRN: 968

Points: 15
Prerequisites: COMP 261 or NWEN 241 or SWEN 221; ENGR 123 or MATH 151 or 161;
Restrictions: COMP 420
Duration: 22 February 2021 - 20 June 2021
Starts: Trimester 1
Campus: Kelburn