Search for a command to run...
Deliverable 4.1 sets the specifications, ontology and development framework for the energy sharing algorithms to be developed and integrated to the U2Demo platform in the subsequent tasks for Work Package 4.The algorithms to be developed are identified based on the review and conceptualisation work done in previous work packages. The identified algorithms aim to be as reusable as possible, to make the work in U2Demo replicable in other contexts, while being suitable for the case-specific contexts of the U2Demo demo sites. The algorithms in WP4 are deduced from the proof-of-concept models presented in WP2, which cover the conceptual and mathematical formulation. The task starts by identifying commonalities across these different models, making these algorithms as reusable as possible. The suitability of the identified algorithms in the U2Demo context is then verified by aligning them with the site-specific activities expressed by community members, as reported in the surveys of community members done in WP1.Four main types of algorithms emerge from this analysis: Centralised energy management system algorithms; Centralised market clearing algorithms (auction-based algorithms); Pricing mechanism algorithms; Heuristic benefit allocation algorithms. The first two types of algorithms represent two different approaches to schedule (ex-ante) / settle (ex-post) assets within a community: the centralized energy management system receives constraints and costs from members or assets and schedules their dispatch on their behalf, while a centralised market clearing lets members or assets decide on an optimal dispatch schedule and validates or rejects this schedule in order to optimise the outcome for the community as a whole. Each of these paradigms can then be implemented in different contexts, at different geographical scales (household vs community optimisation) or different times (pre-dispatch planning vs post-dispatch settlement).On the other hand, the pricing mechanism algorithms do not directly determine dispatch schedules of assets but instead try to influence the scheduling decisions of members, and thereby indirectly contribute to benefits at a community level.Finally, heuristic benefit allocation algorithms do not involve any scheduling at all but rather look at redistribution methods for benefits acquired by the community. The very different structure and logic of these different algorithm types is largely influenced by the context in which they are implemented (Who takes decisions within the community? When are decisions taken? For what purpose are these energy sharing decisions being made?). The identified algorithms are then standardised to ensure interoperability between algorithms and with the U2Demo platform. While this report does not detail the specific logic implemented within each algorithm, which is conceptualized and mathematically defined/modelled in WP2 and implemented in later tasks of WP4, it focuses on defining the data formats required to run these algorithms on the U2Demo platform and interact with them. Therefore, detailed data transfer objects (DTO) based on classes with attributes and corresponding data types are defined for each algorithm (and sub-algorithm) type. The classes are defined following the object-oriented programming principle of inheritance, providing a high degree of modularity to the developed algorithms. This allows to quickly adapt the algorithm to different contexts while keeping the same fundamental building blocks. For the economic dispatch algorithms, the idea is pushed further by pre-defining constraints and cost functions of generic assets which simply need to be instantiated when defining a specific optimisation problem.The corresponding DTO files are expressed using the Python Pydantic library and converted to OpenAPI standard json files, html files, mermaid files, and inheritance graphs, which can be found on the project’s github page: https://github.com/U2DemoProject/AlgorithmDTOsWP4T1. Finally, a technical architecture for the communication protocol between these algorithms and the U2Demo platform is defined in the final section of this work, by specifying the containerisation approach, the message broker setup, and the message orchestration.In summary, the formalism developed in this report helps to standardise the data communication: Between algorithms, to ensure that the different parties developing the algorithms have interoperable data formats. This is particularly important for example in energy sharing models where members run individual decision-making algorithms and the community runs algorithms for energy sharing either before (internal pricing models) or after (market clearing algorithm); Between each algorithm and the U2Demo platform, to ensure the data is received from the platform and sent back to the platform in the right format, using the right communication protocol. The modelling standardisation provided in this report provides a foundation for a harmonised development of algorithms throughout the rest of WP4, for a successful integration with the U2Demo platform in WP3, and for real-life implementations of the case studies in WP5.