This repo contains my submissions for the Intelligent Systems (2802ICT) course at Griffith University.
Assignment 1 contains stuff on A*, BFS, DFS, CSP and Backtracking while assignment 2 contains stuff on ID3 and a small MLP with manual gradient descent in NumPy.
My writeup for the first assignment can be found here. In completing the first assignment I thought it'd be fun to extend the A* algorithm with a heuristic map generated by a small convolutional neural network written in JAX. In doing so I took heavy inspiration from this paper.
The model accepts a 224x224x3 tensor where channel one is a binary obstacle map (0 for empty space, 1 for walls), channel two is a Euclidian transform of the obstacle map and, channel three is a euclidian distance map from the goal point (FA). No input normalisation was performed. The output is then a 224x224x1 tensor representing the heuristic value of each cell (B).
My writeup for the second assignment can be found here.
