Coder Social home page Coder Social logo

fahad021 / cohort Goto Github PK

View Code? Open in Web Editor NEW

This project forked from inferlab/cohort

0.0 1.0 0.0 35.12 MB

COHORT: Coordination of Heterogeneous Thermostatically Controlled Loads for Demand Flexibility

License: GNU General Public License v2.0

Jupyter Notebook 93.90% Python 6.10%

cohort's Introduction

COHORT: Coordination of Heterogeneous Thermostatically Controlled Loads for Demand Flexibility

This is the official repository that implements the following paper:

Bingqing Chen, Jonathan Francis, Marco Pritoni, Soummya Kar, and Mario Bergés. 2020. COHORT: Coordination of Heterogeneous Thermostatically Controlled Loads for Demand Flexibility. In Proceedings of the 7th ACM International Conference on Systems for Energy-Efficient Buildings, Cities, and Transportation (BuildSys '20). ACM, New York, NY, USA, 31–40. https://dl.acm.org/doi/10.1145/3408308.3427980

[slides][paper][video]

Overview

COHORT is a practical, scalable, and versatile solution for coordinating a large population of flexible building loads to jointly provide grid services, while ensuring the end-use requirements are satisfied at individual buildings.

  • Building-level problems, i.e. satisfying end-use requirements, are distributed to and computed in parallel at individual buildings. Therefore, COHORT can incorporate detailed, system-specific dynamics of individual buildings, while remaining computationally scalable to large population sizes.
  • We demonstrate the use of COHORT through three distinct use cases: generation following, minimizing ramping, and peak load curtailment.

Framework. The load aggregator and each building coordinates at the level of its power trajectory, ui, until a consensus is reached among the population. Each building is responsible for its own control and tracks the agreed upon power consumption profile locally with its preferred strategy. In this work, we used a low-frequency pulse width modulation (PWM) technique to translate continuous power to on/off actuation.

Code Usage

Clone repository

git clone https://github.com/INFERLab/COHORT.git
cd COHORT

Set up the environment

Set up the virtual environment with your preferred environment/package manager.

The instruction here is based on conda. (Install conda)

conda create --name cohort-env python=3.7 -c conda-forge -f requirements.txt
condo activate cohort-env

Running

You can replicate our experiments for Use Case 1: Generation Following with main_tracking.ipynb and Use Case 2: Minimize Ramping with main_ramping.ipynb.

Notes.

  • While COHORT is a distributed control framework, all the computation, which includes simulating the populations and solving both grid-level and building level problems, were executed on a single machine for the purpose of our experiment. Thus, the notebooks may take a while to run. You may consider using a smaller populatiaon size, e.g. 100, for faster computation.
  • The hardware-in-the-loop simulation experiment involves data traces from private households from ecobee's Donate Your Data Program, which are not publicly available. We will work towards making the experiment replicable without potentially violating privacy.

Feedback

Feel free to send any questions/feedback to: Bingqing Chen

Citation

If you use COHORT, please cite us as follows:

@inproceedings{Chen2020COHORT,
author = {Chen, Bingqing and Francis, Jonathan and Pritoni, Marco and Kar, Soummya and Berg\'{e}s, Mario},
title = {COHORT: Coordination of Heterogeneous Thermostatically Controlled Loads for Demand Flexibility},
year = {2020},
isbn = {9781450380614},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3408308.3427980},
doi = {10.1145/3408308.3427980},
booktitle = {Proceedings of the 7th ACM International Conference on Systems for Energy-Efficient Buildings, Cities, and Transportation},
pages = {31–40},
numpages = {10},
keywords = {demand response, smart thermostats, TCLs, distributed control},
location = {Virtual Event, Japan},
series = {BuildSys '20}
}

cohort's People

Contributors

bingqingchen avatar marioberges avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.