Red X iconGreen tick iconYellow tick icon


    Programming for Artificial Intelligence using the Python programming language.

    Programming is at the heart of artificial intelligence (AI) and it’s impossible to understand AI without being a competent programmer. This paper will help you develop both fundamental programming skills and the skills needed to be an AI programmer using the most common AI programming language – Python.

    About this paper

    Paper title Programming for Artificial Intelligence
    Subject Artificial Intelligence
    EFTS 0.1667
    Points 20 points
    Teaching period Semester 2 (On campus)
    Domestic Tuition Fees ( NZD ) $1,448.79
    International Tuition Fees Tuition Fees for international students are elsewhere on this website.
    36 points above 200-level

    Some programming experience preferred.


    Computer Science Adviser

    Teaching staff

    Dr Veronica Liesaputra

    Paper Structure

    AIML 401 is 100 per cent internally assessed. There are six mastery tests and two programming assignments. Topics covered include: the fundamentals of programming, numpy, scipy, scikit-learn, tensorflow, some fundamental AI problems, ethics of AI programming.


    A coursebook will be supplied as a PDF.

    Graduate Attributes Emphasised

    Interdisciplinary perspective, Lifelong learning, Communication, Critical thinking, Cultural understanding, Ethics, Information literacy
    View more information about Otago's graduate attributes.

    Learning Outcomes

    Students who successfully complete the paper will:

    • Understand fundamental concepts relating to computer programming
    • Demonstrate the ability to write computer programs for artificial intelligence applications
    • Develop an understanding of the needs of artificial intelligence programming including but not limited to: data input and output, data manipulation, data visualisation, matrices, vectors and arrays
    • Make use of common artificial intelligence tools and libraries including but not limited to: numpy, scipy, scikit-learn, and tensorflow or similar
    • Develop an understanding of ethical and best practice issues associated with collecting and storing data including indigenous data


    Semester 2

    Teaching method
    This paper is taught On Campus
    Learning management system

    Computer Lab

    Stream Days Times Weeks
    A1 Tuesday 16:00-17:50 29-35, 37-42
    Thursday 16:00-17:50 29-35, 37-42


    Stream Days Times Weeks
    A1 Monday 13:00-13:50 29-35, 37-42
    Wednesday 13:00-13:50 29-35, 37-42
    Back to top