SoftCPS has contributed to the development of CityLearn v3, an open-source simulation framework for intelligent energy management. Development of the new release was led by SoftCPS researcher Tiago Fonseca as part of his doctoral research, in collaboration with the wider CityLearn community.

CityLearn is now part of LF Energy, the Linux Foundation initiative bringing together researchers, developers and energy-sector organisations to build open-source technology for the energy transition. For CityLearn, this provides a framework for shared governance and continued community development, opening opportunities for closer collaboration between research and industry.
CityLearn enables researchers to develop and compare control strategies, including artificial intelligence approaches such as reinforcement learning, for communities combining buildings, solar generation, batteries and electric vehicles. The contributions developed at SoftCPS extend these experiments to more realistic operating conditions:
- Electric vehicles and flexible appliances: smart charging, vehicle-to-grid operation, and scheduling of appliances such as washing machines and dishwashers within specified deadlines.
- Community energy coordination: local energy sharing and financial settlement, demand-response requests, and communities with changing members and equipment.
- Operational constraints and disruptions: building and phase power limits, equipment unavailability, missing data and failed commands.
- Controller evaluation: richer interfaces and performance indicators that assess energy savings alongside service delivery and compliance with physical constraints.
- Interactive visualisation: the CityLearn UI, developed to explore simulation results and compare controller behaviour.
Together, these capabilities support research into how intelligent control can improve renewable energy use, reduce electricity costs and peak demand, and coordinate energy resources within grid limits.
The software and accompanying resources are publicly available:
💻 Code and documentation:
https://github.com/citylearn-project/CityLearn
📦 Install via PyPI:
https://pypi.org/project/citylearn/
🖥️ Explore the CityLearn UI:
https://citylearnui.netlify.app/
📄 Read the research preprint:
https://arxiv.org/abs/2609.21570
🌍 CityLearn at LF Energy:
https://lfenergy.org/projects/citylearn/
