This is a collection of stuff I've built!
This is a algorithm demo applied to a grid. The original code can be found on Github!
Click on any grid to mark it as an obstacle, double-left click to set the start, double-right click to set the End.
Select any algorithm to see it in action!
Generate a maze using Prim's random algorithm.
Find Start->End using DFS or BFS.
Find Start->End using Dijkstra or Bellman-Ford.
Reset the maze. Clears off everything!
This is a JavaScript implementation of Conway's Game of Life. Original code can be found on
Github! The rules are as the following.
Underpopulation - Cell is removed if there are less than 2 neighbours.
Overpopulation - Cell is removed if there are more than 3 neighbours.
Next Generation - Cell survives if there are 2 or 3 neighbours.
Revival - Empty cells come alive if there are exactly 3 neighbours.
Click on any cell to seed the grid with population. Start the simulation with controls below. Feel free to disturb the simulation by adding new population.
Click to seed the grid with a random population.
Start the Game of Life simulation!
Pieces on the board are left intact by pauses.
Reset the Grid. Clears off everything!
This is an university project, the goal is to take a ray-traced MandelBulb and then modify the code to allow concurrent processing and to add an algorithm to traverse the exterior and generate a video.
OpenACC and OpenMP were used to parallelize the work load, the maximum speed up is 140X on a 4K video!
The original code can be found on Github!
I have done many other projects, a few other samples without interactive demos are show below.
This project is a my attempt and evolving a neural network with an genetic algorithm. The end goal is to have the neural network play a game of Helicopter.
The best models of each generation are saved and then crossed. Mutations occur 25% of the time.
View Source!This is my attempt at visualizing the TSP. Random coordinates are generated on a cartesian plane and we must visit every point starting from (0,0).
The correct solution is to brute every combination but greedy algorithms can generate approximate solutions!
View Source!This project provides an IoT Gateway for SNMP messages to be converted into MQTT ones.
SNMP datapoints can be evaluated localally and conditionally converted to MQTT. This provides a powerful monitoring tool for remotely managed SNMP-enabled devices.
View Source!