NCET
NCET (Neural-network Constraint Embedding Toolkit) converts supported PyTorch neural networks into exact mixed-integer linear constraints compiled by CVXPY.
This page collects all reusable scientific packages, research code, academic utilities, project tools, and open teaching tutorials.
Installable and documented tools for power-system modelling, differentiable optimisation, and optimisation diagnostics.
NCET
NCET (Neural-network Constraint Embedding Toolkit) converts supported PyTorch neural networks into exact mixed-integer linear constraints compiled by CVXPY.
DiffAPQP
Differentiable PyTorch layers for affine-parametric quadratic and linear programs expressed directly in CVXPY.
GridForge
Build optimisation-ready power-system cases with profile dataset from PYPOWER or MATPOWER grids, YAML configurations, and bus-level time-series data.
CVXPY Summary
Inspect and debug CVXPY models through compact summaries of variables, constraints, parameters, compliance, and solver statistics.
Implementations connected to publications in learning-augmented optimisation, decision-focused learning, stability, cybersecurity, and multi-agent control.
DiffAPQP power-system experiments
Reproducible IEEE 118-bus experiments comparing DiffAPQP and CvxpyLayers for closed-loop and counterfactual decision-focused learning with economic dispatch and redispatch.
ICNN constraint learning
Input-convex neural-network surrogates for small-signal stability constraints in unit commitment on IEEE 14- and 118-bus systems.
LAPSO experimental framework
Experiments for studying learning-augmented power-system operations through a unified optimisation view.
Task-aware machine unlearning
Implementation accompanying task-aware machine unlearning for load forecasting and downstream decision quality.
E2E-AT
Code for the task-aware end-to-end learning framework designed to tackle uncertainty in downstream decisions.
Frequency stability sampling with forward-mode AD
Efficient sampling tools for learning frequency-stability constraints using forward-mode automatic differentiation.
DDET-MTD
Implementation of event-triggered moving target defence that blends grid data and physical models.
Robust MTD
Code accompanying robust moving target defence against false-data injection attacks in power grids.
MAPDN
Multi-agent reinforcement-learning environment and methods for active voltage control on power distribution networks.
Visual Power Grid
Interactive Python visualisation of optimal power flow, state estimation, false-data injection attacks, and moving-target defence.
Small packages that make computational research and project planning easier.
Standalone interactive tools and explorers developed alongside research and teaching projects.
Open coding tutorials and exercises designed for hands-on learning.
Small-signal stability-constrained unit commitment tutorial
Hands-on workflow for learning a small-signal stability surrogate and embedding it as mixed-integer constraints in a one-period unit commitment problem.
Introduction to ML coding tutorial
Hands-on examples covering SVMs, PCA, k-means, and zero-shot energy-price forecasting with Amazon Chronos.