Coder Social home page Coder Social logo

alphadatacentercooling's Introduction

AlphaDataCenterCooling: A virtual testbed for optimizing data center cooling system

Welcome to the official repository of AlphaDataCenterCooling, a framework designed for enhancing and optimizing data center cooling systems. This virtual testbed is split into two integral components:

  1. AlphaDataCenterCooling Docker Service: Encapsulates the data center cooling system's simulation model. Operates within a Docker container for consistent, reproducible simulations.
  2. AlphaDataCenterCooling Gym Environment: Located within the AlphaDataCenterCooling_Gym directory. It nterfaces with the Docker service, offering a standardized environment for applying and testing various control algorithms, specifically designed for optimizing data center cooling strategies.

Overview

AlphaDataCenterCooling is an open-source virtual testbed specifically designed to facilitate the development and evaluation of control strategies for data center cooling systems. This virtual testbed is built using Python and Modelica, and it is wrapped using the standardized interface of Farama-Foundation Gymnasium (previously known as OpenAI Gym). The Modelica model of the cooling system is constructed based on the architecture and the annual historical operational data of a real data center's cooling system.

Structure

  • /AlphaDataCenterCooling_Gym: This folder contains the gym environment for the AlphaDataCenterCooling.
  • /Resources: This folder contains models, boundary condition data, and other data required to load the model. This is crucial for the initialization and normal operation of the environment.
    • AlphaDataCenterCooling_FMU.fmu: This is a Functional Mock-up Unit (FMU) representing the cooling system model.
    • Disturbance.csv: Boundary condition data.
    • Initialization_actions.csv and Initialization_observation0.csv: Data used for initializing the environment.
    • mlp.pth: This is a Multilayer Perceptron (MLP) neural network model used for calculating the required head (pressure)
    • version.txt: Indicates the current version of the AlphaDataCenterCooling environment.
  • /docs: This directory contains documentation and figures related to the AlphaDataCenterCooling environment.
  • /testing: This directory includes notebooks for REST API interaction.
    • test_REST_API.ipynb: Demonstrates how to interact with the AlphaDataCenterCooling environment using the REST API.
    • validate_Pumps_Power.ipynb: Validates whether the results obtained using Matlab Simulink match those simulated using the PyFMI library.

Code Usage (Setting up the AlphaDataCenterCooling Docker Service)

  1. Download and navigate to the repository:
git clone https://github.com/wfzheng/AlphaDataCenterCooling.git
cd AlphaDataCenterCooling
  1. Install Docker and Docker Compose.
  2. To construct and initiate the AlphaDataCenter Service, execute the subsequent command within the /AlphaDataCenterCooling root directory:
docker-compose up
  1. Validate the functionality of the AlphaDataCenter docker environment using the Jupyter notebook located at test/test_REST_API.ipynb

Feedback

Feel free to send any questions/feedback to: Zhe Wang

Citation

If you use our code, please cite us as follows:

alphadatacentercooling's People

Contributors

wfzheng avatar

Stargazers

Ma Yiru avatar ajost scada avatar  avatar  avatar

Watchers

 avatar

alphadatacentercooling's Issues

您好,冒昧请教

目前,容器创建好,docker compose up运行完成后,在通过网页进行第四步时,网页一直not found,请您指教,今年我们做你们之前的延申,恳请百忙之中看下。
1
2

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.