Overview
This section documents my experimental journey implementing AI algorithms to solve complex problems. Each project began with research, followed by iterative testing and optimisation - because sometimes, the best way to learn is to break things (and then fix them).
Note: Full methodology, code, and results are detailed in the linked reports.
Completed Reports

Forecasting Stock Purchases
Financial forecasting refers to the use of historical stock market information in order to predict the future financial performance of a company or asset.
Machine Learning as a Tool in Financial Forecasting
This assignment looks at the use of three of these models (Genetic Programming, Multi-Layer Perceptron and Decision Tree) in order to tackle the financial forecasting problem of predicting whether or not a financial stock should be purchased based on historical data.
Explore the Full Report
Solving the TSP with Metaheuristics
Simulated Annealing and Tabu Search Algorithms used to minimise the route distance for a traveller visiting up to 25 cities.
Explore the Full Report
Team Optimisation via Ant Behaviour
Using Ant Colony Optimisation to assign efficient routes for a team of vehicles attempting to maximise their collected scores.
Explore the Full ReportThe Challenges

Trading chart
Forecasting Stock Predictions
Financial forecasting refers to the use of historical stock market information in order to predict the future financial performance of a company or asset. It explores previous trends and analytics in order to estimate revenues, expenses, profits, investment signals and stock price movements.
Real-World Impact:
- Enables investors and businesses to make informed financial decisions

Finding optimal route between nodes
The Traveling Salesman Problem (TSP)
A classic NP-hard problem where the goal is to find the shortest possible route that visits each city exactly once and returns to the origin city. With just 25 cities, there are over 15 septillion possible routes!
Why It Matters:
- Applications in logistics, circuit design, and DNA sequencing
- Benchmark for optimisation algorithm performance
- Real-world constraints often require dynamic solutions

Task allocation across teams
The Team Optimisation Problem
A resource allocation challenge where tasks must be assigned to teams while minimising conflicts, idle time, and skill mismatches. Complexity grows exponentially with team/task counts.
Real-World Impact:
- Critical for project management in tech and manufacturing
- Balances workload while respecting individual capacities
- Must adapt to changing priorities and constraints
Algorithmic Solutions
Travelling Salesman Problem Solutions
Simulated Annealing
Inspired by metallurgy, this probabilistic technique gradually reduces "temperature" to escape local minima while exploring solution spaces.
Tabu Search
Uses memory structures to avoid revisiting recent solutions, enforcing diversification through "tabu" lists while intensifying around good solutions.
Team Optimisation Solutions

Pheromone trail intensity
Ant Colony Optimisation
Mimics ant foraging behaviour using pheromone trails to probabilistically build solutions. Over iterations, stronger paths emerge through positive feedback.
Naturally handles dynamic constraints
Pheromone decay rate (ρ)
Financial Forecasting Models
Genetic Programming
Evolutionary approach that breeds trading strategies through selection, crossover and mutation operations, evolving increasingly effective solutions.
Multi-Layer Perceptron
Neural network approach that learns non-linear patterns in financial data through backpropagation, capable of modeling complex market behaviors.
Decision Tree
Rule-based model that recursively partitions the feature space, creating interpretable buy/sell decision rules based on historical patterns.