My Work
Energy engineer turned data professional. My work is focused on using data to prevent climate change.
I am interested in the different outcomes we get when we design and optimize energy systems for money or for the environment - the space that exists between economic and carbon optimization.
Currently I’m working as a Lead Data Scientist at Meridian Energy.
I’m also passionate about teaching & mentoring data professionals – I offer mentoring here.
Energy Data Science
Linear Programming for Energy Systems
energy-py-linear – A Python library for optimizing the dispatch of energy assets with mixed-integer linear programming, including batteries, electric vehicles and CHP generators:
$ pip install energypylinear
Introductory blog post – measuring forecast quality – source code.
Australian Electricity Grid Data
nem-data – a Python CLI for downloading data for Australia’s National Energy Market (NEM):
$ pip install nemdata
A Hackers Guide to AEMO Data is a developer focused guide to the electricity market data provide by AEMO for the NEM.
UK Electricity Grid Data
Elexon API Web Scraping using Python and What is the UK Imbalance Price?.
Space Between Money and the Planet
Demonstrating the existence of a tradeoff between monetary gain and carbon emissions reduction in the dispatch of electric batteries.
Reinforcement Learning for Energy Systems
Blog post – Github – DQN debugging, hyperparameter tuning and solving.
Optimization
Soft Actor Critic Reimplementation
Source code - implementation of the Soft Actor Critic (SAC) reinforcement learning algorithm. SAC is an off policy algorithm capable of both continuous and discrete policies.
World Models Reimplementation
Blog post – source code - references & resources.
Implementation of the 2017 classic paper. Variational auto-encoder, mixed density networks and evolutionary optimization learn to race a car from pixels.
Parallelized Cross Entropy Method
CEM to learn CartPole and Pendulum control problems. Parallelized across processes and in numpy
.
$ python cem.py pendulum --num_process 6 --epochs 15 --batch_size 4096
Evolutionary Optimization
Source code – evolutionary optimization on 2D optimization problems.
Dynamic Programming
Source code – visualizing dynamic programming using pygame
.
Data Science Education
Data Science South
A sister website focusing on data professional (analyst, engineer, scientist) education.
Teaching Monolith
Data science teaching materials.
NLP
climate-news-db
A dataset of climate change newspaper articles – app – source code.
Creative Writing with GPT2
Fine-tune a base GPT2 model for your favourite authors – source code.