All Projects → czagoni → darkgreybox

czagoni / darkgreybox

Licence: MIT license
DarkGreyBox: An open-source data-driven python building thermal model inspired by Genetic Algorithms and Machine Learning

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to darkgreybox

Smart-Rockets
This project is a fun little demo of a genetic algorithm. A population of rockets attempt to find their way to a a target.
Stars: ✭ 15 (-40%)
Mutual labels:  genetic-algorithm
Super-Meta-MarIO
Mario AI Ensemble
Stars: ✭ 15 (-40%)
Mutual labels:  genetic-algorithm
Genetic-Algorithm-for-Job-Shop-Scheduling-and-NSGA-II
Learning how to implement GA and NSGA-II for job shop scheduling problem in python
Stars: ✭ 178 (+612%)
Mutual labels:  genetic-algorithm
SpleeterRT
Real time monaural source separation base on fully convolutional neural network operates on Time-frequency domain.
Stars: ✭ 111 (+344%)
Mutual labels:  model
bin-packing-core
基于人工智能(遗传算法 + 贪心 max-rect 算法) 的矩形拼接算法
Stars: ✭ 26 (+4%)
Mutual labels:  genetic-algorithm
virtio
Virtio implementation in SystemVerilog
Stars: ✭ 38 (+52%)
Mutual labels:  model
Drowsy
💤🖌️ AI making tiny Bitsy video games. Features an experimental generative structure inspired by GANs and Genetic Algorithms
Stars: ✭ 19 (-24%)
Mutual labels:  genetic-algorithm
realar
5 kB Advanced state manager for React
Stars: ✭ 41 (+64%)
Mutual labels:  model
FlirImageExtractor
A small tool/lib to read temperatures and original photos from FLIR® thermal camera images.
Stars: ✭ 20 (-20%)
Mutual labels:  thermal
hcv-color
🌈 Color model HCV/HCG is an alternative to HSV and HSL, derived by Munsell color system, usable for Dark and Light themes... 🌈
Stars: ✭ 44 (+76%)
Mutual labels:  model
oggm
Open Global Glacier Model
Stars: ✭ 167 (+568%)
Mutual labels:  model
acorn-db
Provides Acorn projects with Eloquent Models for WordPress data.
Stars: ✭ 30 (+20%)
Mutual labels:  model
snake-neural-network
An experiment with neural network and genetic algorithms
Stars: ✭ 68 (+172%)
Mutual labels:  genetic-algorithm
CNN-GoogLeNet
👁 Vision : Model 4: GoogLeNet : Image Classification
Stars: ✭ 17 (-32%)
Mutual labels:  model
Odin
manage model revisions with ease
Stars: ✭ 60 (+140%)
Mutual labels:  model
ASD-ML-API
This project has 3 goals: To find out the best machine learning pipeline for predicting ASD cases using genetic algorithms, via the TPOT library. (Classification Problem) Compare the accuracy of the accuracy of the determined pipeline, with a standard Naive-Bayes classifier. Saving the classifier as an external file, and use this file in a Flask…
Stars: ✭ 14 (-44%)
Mutual labels:  genetic-algorithm
eSelection
Dynamic model selection library for SA-MP servers
Stars: ✭ 28 (+12%)
Mutual labels:  model
UnityGeneticAlgorithmMaze
Modern reimplementation in Unity of Bob's Map from AI Techniques for Game Programming
Stars: ✭ 37 (+48%)
Mutual labels:  genetic-algorithm
neuro-evolution
A project on improving Neural Networks performance by using Genetic Algorithms.
Stars: ✭ 25 (+0%)
Mutual labels:  genetic-algorithm
snakeneuralnetworkjs
Neuroevolution of Neural Network for snakes in the Browser
Stars: ✭ 13 (-48%)
Mutual labels:  genetic-algorithm

Dark Grey Box

License: GPL v3 CircleCI PyPI version

DarkGreyBox: An open-source data-driven python building thermal model inspired by Genetic Algorithms and Machine Learning

Read the medium article here: https://medium.com/analytics-vidhya/data-driven-thermal-models-for-buildings-15385f744fc5

Constructing simple, accurate and easy-to-interpret thermal models for existing buildings is essential in reducing the environmental impact of our built environment. DarkGreyBox provides a data-driven approach to constructing and fitting RC-equivalent grey box thermal models for buildings, within the classic Machine Learning (ML) framework for straightforward model performance evaluation.

A large number of competing models can be set up in easy-to-configure pipelines and the best performing models are selected based on principles inspired by Genetic Algorithms (GA). This approach also addresses the main disadvanatages of classical grey-box thermal modelling techniques by not requiring initial condition values for the thermal parameters to be pre-calculated and also not requiring an excitation signal to be injected into the building for successful model convergence and evaluation.

The massive advantages of using a DarkGreyBoxModel over a black-box (i.e. Machine Learning) model - e.g. a deep sequence-to-sequence model - are that it is easily interpreted by humans and that it slots easily into other modelling frameworks. E.g. to model the behaviour of a building with its connected heating system, simply construct a heat source model in a MILP framework and the grey-box building thermal model just slots in as a set of linear differential equations with a handful of parameters. Doing this with a deep ML model would be quite tricky.

The easiest way to get familiar with DarkGreyBox is to look at the tutorials.

Installation

Dependencies

DarkGreyBox requires:

  • Python (>= 3.6)
  • lmfit
  • pandas
  • joblib

Note: these are only the core dependencies and you will most likely want to install either the optional dependencies or your preferred custom alternatives to them.

User installation from PyPi package (latest release)

Install DarkGreyBox via pip:

pip install darkgreybox

Optional Dependencies

This gives you a headstart for using DarkGreyBox in anger.

  • scikit-learn
  • numdifftools
  • statsmodels
  • matplotlib
  • jupyter
  • notebook

You can install these additional dependencies via pip:

pip install darkgreybox[dev]

User installation from source repository

You can check the latest sources with the command::

git clone https://github.com/czagoni/darkgreybox.git

You can install the dev dependencies (from the root of the repository):

pip install -e .'[dev]'

Documentation

To access the tutorials you need to have cloned DarkGreyBox from the source repository (see above).

Tutorials

The easiest way to get into the details of how DarkGreyBox works is through following the tutorials:

Launch a new jupyter notebook from the root of the repository:

jupyter notebook

Development

We welcome new contributors of all experience levels.

Source code

You can check the latest sources with the command::

git clone https://github.com/czagoni/darkgreybox.git

You can install the dev and test dependencies (from the root of the repository):

pip install -e .'[dev,test]'

Testing

After installation, you can launch the test suite from the repo root directory (you will need to have pytest installed):

pytest

You can check linting from the repo root directory (you will need to have flake8 installed):

flake8
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].