Skip to content

antoniosudoso/nilm-bqp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

Mixed-Integer Nonlinear Programming for State-based Non-Intrusive Load Monitoring

This repository provides the implementation of the NILM algorithm described in the IEEE Transactions on Smart Grid journal paper Mixed-Integer Nonlinear Programming for State-based Non-Intrusive Load Monitoring.

The optimization model is written in AMPL and solved with Gurobi Optimizer.

If you use this paper in your research please cite:

M. Balletti, V. Piccialli and A. M. Sudoso, "Mixed-Integer Nonlinear Programming for State-Based Non-Intrusive Load Monitoring", IEEE Transactions on Smart Grid 2022, vol. 13, no. 4, pp. 3301-3314. https://doi.org/10.1109/TSG.2022.3152147.

Citation export:

@ARTICLE{tsg9714495,
author={Balletti, Marco and Piccialli, Veronica and Sudoso, Antonio M.},
journal={IEEE Transactions on Smart Grid}, 
title={Mixed-Integer Nonlinear Programming for State-Based Non-Intrusive Load Monitoring}, 
year={2022},
volume={13},
number={4},
pages={3301-3314},
doi={10.1109/TSG.2022.3152147}
}

Main Scripts

For each dataset (i.e. AMPDS, UDKALE, REFIT):

  • AMPL model file nilm_binary.mod contains the implementation of the Binary Quadratic Programming (NILM-BQP) model.
  • AMPL run file nilm_binary.run loads the BQP model, reads the data and optimizes the model.

Related Work

V. Piccialli and A. M. Sudoso, "Improving Non-Intrusive Load Disaggregation through an Attention-Based Deep Neural Network", Energies 2021, 14, 847. https://doi.org/10.3390/en14040847.

See the source code here.