Current course materials:

FIT 3094 - Artificial Intelligence, Artificial Life and Virtual Enviornments (Semester 1, 2014)
Artificial Intelligence and Artificial Life approaches to designing scientific simulations and computer games

Biological Bits - a brief guide to the ideas and artefacts of computational Artificial Life

Creative Computing: Understanding Art, Science and Technology (Prato unit, Italy) [Museo Galileo notes]

Prototype video course materials:

Algorithms I - What is an Algorithm? (8:16 mins, .mov file)
Why are they important? Examples: recipes, musical scores, assembly instructions, computer programs.

Algorithms II - The Components of a Complex Algorithm. (13:20 mins, .mov file)
What are they? How are they used?

Algorithms III - Devising Algorithms. (14:20 mins, .mov file)
How do we apply steps to problem solving to assist us to devise algorithms? Example: Fake Coin problem

Invariants in problem solving. (7:20 mins, .mov file)
How do we apply invariants to problem solving? Example: Chocolate Cutting problem

Binary Search (11:25 mins, .mov file)
How does it work?

Recursion I - What is Recursion? (15 mins, .m4v file) [YouTube version, local version]
How does it work? Examples: recursive sub-division, factorial.

Recursion II - Recursive tree search (15 mins, .m4v file)
How do we recursively search a tree using depth first search?

The Halting Problem (10:40 mins, .mov file)
What is it? Can we solve it?

What is a tree? What is a graph? (6:25 mins, .mov file)
How are trees and graphs related?

How can we use trees and graphs to represent mazes? (7:05 mins, .mov file)
An application of graphs and mazes to computer games.

Why sort? (18:34 mins, .mov file)
An introduction to sorting, searching and binary search trees.

Merge sort (11:09 mins, .mov file)
How does Merge sorting work? What is the algorithm?

Heaps (11:43 mins, .mov file)
What is a heap? How do we insert nodes into it and remove nodes from it?

Abstraction (18:20 mins, .mov file)
What is abstraction? How does it relate to generalisation? Can we use it to help us solve the boat problem?

Brute Force (11:34 mins, .mov file)
What is brute force? Can we use it to help us solve the boat problem and the travelling salesman problem?

Decomposition (14:49 mins, .mov file)
What is decomposition? Can we use it to help us solve the boat problem?

Symmetry (7:39 mins, .mov file)
What is symmetry? How can we use it to help us solve problems?

Edit distance (23:30 mins, .mov file)
What is it? How can we calculate it?

The Turing Machine (16:12 mins, .mov file)
What is it? How does it work?

Running Time (13:26 mins, .mov file)
What is it? What is an algorithm's Time Complexity?

Big O Notation (10:35 mins, .mov file)
What is it? How is it used to represent Time Complexity?

Sample problems on which to test your algorithm writing skills


The Towers of Hanoi (7:10 mins, .mov file)


The Fake Coin Problem (3:03 mins, .mov file)

3 The Travelling Salesman Problem (4:57 mins, .mov file)

The Chocolate Cutting Problem (2:20 mins, .mov file)

5 The Boat Problem (2:50 mins, .m4v file)

The 8 Queens Problem (4:15 mins, .mov file)

Past course materials:

FIT 4012- Procedural modelling, animation and Artificial Life in computer graphics
FIT 3084 - Multimedia Programming and the WWW
CSE 2325/3325 - Multimedia and the World Wide Web
CSE 2305 - Object Oriented Software Engineering
CSE 3302 - Software Engineering Group Project
CSE 5910 - Multimedia Programming in Java
Introd. to Computer Graphics & Animation (advanced 1st yr)

Also see the: CEMA courses page



Honours (also see these honours project ideas)
Masters & PhD - research ideas and interests for supervision

contact me | home