FLEX is a modeling suite for households' behavior, energy system operation, and interaction in the energy community. It is developed by Fraunhofer ISI and TU Wien (Energy Economics Group) in the framework of the H2020 project newTRENDs.
FLEX contains three modules:
First is FLEX-Behavior
, which models the energy-related behavior of a specified household.
For each individual household member, the activity profile is modeled at a 10-minute resolution based on a Markov chain model.
Then, the activity profile is converted to the profiles of appliance electricity and hot water demand, as well as building occupancy.
Finally, household members' profiles are aggregated to the household level in hourly resolution.
Second is FLEX-Operation
, which focuses on the operation of the household's energy system.
Taking the results from FLEX-Behavior
, FLEX-Operation
is further configured with the household’s building envelope and technology system,
including the heating system, PV, thermal and battery storage, and EV. The model calculates the system operation in hourly resolution,
as well as the energy consumption and cost. It can run in both simulation and optimization modes, with the latter minimizing the energy cost and representing the use of SEMS.
Third is FLEX-Community
, which takes a group of households' results from FLEX-Operation
as input and models the operation of an energy community from an aggregator's perspective.
The aggregator can make a profit by using the following options:
(1) Facilitate the peer-to-peer (P2P) electricity trading among the households in real-time, and
(2) Optimize the operation of the batteries of its own or community members to buy at lower prices and sell at higher.
To work with FLEX, please first follow the steps for installation
- Clone the repo to your local computer;
- Open the project and install the requirements with
pip install -r requirements.txt
in the terminal; - Install a solver for the
FLEX-Operation
model (setup with Pyomo). We suggest to use gurobi, and if you would like to try other solvers, we appreciate if you could inform us the experience. In themodel_opt.py
file, you can switch to others solvers inpyo.SolverFactory("gurobi")
.
In the "tests" folder, we created three examples using the three FLEX models. They are good starting points for you to understand how to use the models.
In the "doc" folder, you can find the working paper that comprehensively introduces the FLEX modeling suite. Until it is published, we suggest to use the following citation:
Yu, S.; Mascherbauer, P.; Haupt, T.; Skrona, K.; Rickmann, H.; Kochański, M.; Kranzl, L.; (2024). Modeling households’ behavior, energy system operation, andinteraction in the energy community. doi: 10.2139/ssrn.4992581
As mentioned, FLEX is developed by Fraunhofer ISI and TU Wien (Energy Economics Group) in the framework of the H2020 project newTRENDs. The developers (2021-2023) include:
- Songmin Yu: [email protected]
- Philipp Mascherbauer: [email protected]
- Thomas Haupt: [email protected]
- Kevan Skrona: [email protected]
- Hannah Rickmann: [email protected]
FLEX is licensed under the open source MIT License.