This is the official code repository for the paper Data-driven Assessment of Room Air Conditioner Efficiency for Saving Energy published in the Journal of Cleaner Production.
Please use the Bibtex below for citation of this work:
@article{wang2022data,
title={Data-driven assessment of room air conditioner efficiency for saving energy},
author={Wang, Weiqi and Zhou, Zixuan and Lu, Zhongming},
journal={Journal of Cleaner Production},
pages={130615},
year={2022},
publisher={Elsevier}
}
The experiment is conducted under Windows 10 with Python 3.7/3.8 as the developing environment.
Use the following code segment to install all the required packages:
pip install -r requirements.txt
The following code segment is for updating the pip:
python -m pip install --upgrade pip
Due to the privacy issues, the dataset will not be made open to public.
However, we still provide a 200
lines sample version of the
full dataset to demonstrate the formation of our experimenting data, and you can check the data_compilation.py
for how
our data is compiled from different categories of data.
Remarks: Please notice that the Location
in sample_data.csv
are set to 0 for privacy.
Again, you must have all the packages above installed.
Run the training_xgboost_model.py
to train the model, we use xgboost squared regressor and cross validation to do the
training. Each room's model has been boosted for 300 rounds under 10 folds of cross-validation, and we used
the SMOTE algorithm to help with the imbalance distribution of the data.
Here is a simple demonstration of the data distribution before the SMOTE algorithm.
After the SMOTE algorithm, the distribution for AC below or above 0.7 is balanced.
Models will be dumped into models
folder, and two csv files will be generated, recording the information about results
after cross validation and the real-prediction value of each room.
We provide some statistical results by the XGBoost models.
After you've trained the models, run the prediction_processing.py
to generate the visual graphs of the result.
It will generate distribution plot for each room, interactive shapley value for each room's model, an overall RMSE histogram and an overall accuracy distribution histogram.
For detail about the Shapley value, please refer to Shapley Additive Explanation.
The graphs will be dumped into three folders: distribution_plot
, shap_TH_ac_plot
and the current work directory.
At the same time, there are also some codes for other visualizations used in the paper:
SMOTE_plot_demonstration.py
is the code for plotting the difference before and after
SMOTE, room_comparison_plotting.py
is for comparison among high/mid/low efficiency ACs.
In general, this a plot for our result:
This project was supported by the Undergraduate Research Opportunity Program (UROP) of The Hong Kong University of Science and Technology (HKUST), and the Sustainable Smart Campus project of HKUST. The views and ideas expressed here belong solely to the authors and not to the funding agencies.
If you have any question, feel free to email me at [email protected]
. This email will be active all the time.