Artificial Intelligence Programming

2018/2019

Prerequisite/Recommended prerequisite for participation in the module

Computer Graphics Programming

Content, progress and pedagogy of the module

Objectives:

Concepts of artificial intelligence (AI) are central to the design and development of contemporary systems, e.g., database search and management, handheld devices (e.g., smartphones and tablets), games (e.g., chess), various adapting or learning systems, and so on. The objective of this course is to give students exposure to and an understanding of the fundamentals of AI programming, including: rational agents and their environment, knowledge representation, formal languages and logic, reasoning, basic graph theory, pathfinding algorithms, finite state automata, steering behaviors, and decision making. Students will develop practical skills in AI programming useful for the development and deployment of intelligent systems.

Learning objectives

Knowledge

Students who complete the module will obtain the following qualifications:

  • Understand different levels of intelligent agent architectures, environments, and their application domains
  • Understand basic graph theory
  • Understand finite state machines, decision trees, and behaviour trees, and their implementation
  • Understand different search strategies, and their implementation and underlying data-structures
  • Understand different pathfinding algorithms and their implementation
  • Understand steering algorithms and their implementation
  • Understand classical planning approaches
  • Understand knowledge representation, formal logic, and reasoning
  • Understand basic fuzzy logic

Skills

Students who complete the module will obtain the following qualifications:

  • Apply the above knowledge to construct an intelligent system using available technologies
  • Choose appropriate methods and technologies for a given problem (analysis)
  • Interpret and evaluate AI systems and their behaviour
  • Use agent simulation systems for prototyping system behaviour (apply)

Competences

Students who complete the module will obtain the following qualifications:

  • Ability to synthesise knowledge, methodology or techniques concerning a problem centred around intelligent systems
  • Ability to integrate AI-based libraries into larger projects (apply)
  • Ability to learn the use of AI tools like agent-based simulators, planning systems, network simulators, etc. (apply)

Type of instruction

Refer to the overview of instruction types listed in the start of chapter 3. The types of instruction for this course are decided in accordance with the current Framework Provisions and directions are decided and given by the Study Board for Media Technology.

Exam

Exams

Name of examArtificial Intelligence Programming
Type of exam
Written or oral exam
In accordance with the current Framework Provisions and directions on examination from the
Study Board for Media Technology:

To be eligible to take the exam the student must have fulfilled:
• handing in of written assignments or the like
• completion of certain – or all – study activities

Note that if admittance to the exam or parts of the assessment is to be based on written work or exercises, a deadline is stipulated for when the work must be handed in.

Individual oral or written examination with internal censor. The assessment is performed in accord-ance with the 7-point scale.
ECTS5
Permitted aids
With certain aids:
See semester description
Assessment7-point grading scale
Type of gradingInternal examination
Criteria of assessmentThe criteria for the evaluation are specified in the Framework Provisions.

Facts about the module

Danish titleProgrammering af kunstig intelligens
Module codeMSNMEDB6142
Module typeCourse
Duration1 semester
SemesterSpring
ECTS5
Language of instructionEnglish
Location of the lectureCampus Aalborg, Campus Copenhagen
Responsible for the module

Organisation

Study BoardStudy Board of Media Technology
FacultyTechnical Faculty of IT and Design