Home

Awesome

FedZero

Official repository for the paper "FedZero: Leveraging Renewable Excess Energy in Federated Learning." presented at e-Energy'2024. FedZero is an FL system that operates exclusively on renewable excess energy and spare capacity of compute infrastructure to effectively reduce a training’s operational carbon emissions to zero.

The implementation uses:

Installation

To run FedZero you need a Gurobi license. You can get a free academic license here.

Then run:

python -m venv venv
. venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt

Datasets

Usage

Options:

  --scenario [unconstrained|global|germany]  [required]
  --dataset [cifar10|cifar100|tiny_imagenet|shakespeare|kwt]  [required]
  --approach TEXT  [required]
  --overselect FLOAT
  --forecast_error [error|no_error|error_no_load_fc]
  --imbalanced_scenario
  --mock
  --seed INTEGER
  --help                                        Show this message and exit.

Example:

python main.py --scenario global --dataset cifar10 --approach random

Bibtex

@proceedings{wiesner2024fedzero,
    title={FedZero: Leveraging Renewable Excess Energy in Federated Learning}, 
    author={Wiesner, Philipp and Khalili, Ramin and Grinwald, Dennis and Agrawal, Pratik and Thamsen, Lauritz and Kao, Odej},
    booktitle={Proceedings of the 15th ACM International Conference on Future and Sustainable Energy Systems (e-Energy)},
    year={2024},
    publisher={ACM}
}