Smart Grid Algorithm Engineering (SGAE) A research-oriented process model for the design of distributed algorithms for Smart Grid control Astrid Nieße, Martin Tröschel, Michael Sonnenschein niesse@offis.de, troeschel@offis.de, sonnenschein@uni-oldenburg.de June 2014
What is SGAE? SGAE is a cyclic process model that should help research teams in designing distributed Smart Grid control algorithms in such a way, that major traps on the way to the field are avoided. SGAE is a domainspecific extension of Algorithm Engineering [Sanders2009]. SGAE is compatible with the Design Science guidelines [Hevner2004]. SGAE should help in the development by documenting major insights in such a way, that researchers need in their daily work (not the same as scientific publishing). To this end, SGAE is a quality assurance instrument. SGAE gives hints on what to do in which phase, and who is needed for what (you will need Smart Grid experts to develop Smart Grid algorithms, but not for everything done in the process cycle). SGAE is a living model in itself, so improvements are made in an evolutionary manner. SGAE gives only recommendations to our daily work you will have to tailor it for your needs. 2
Who is needed for SGAE? Algorithm engineers (AE): As the main purpose is to develop distributed control concepts, we need personnel with a profound background in algorithms and the ability to detect an algorithmic categorisation of real-world problems. Domain Experts (DE): We need personnel with an expertise in the context of the problem to be solved. The needed expertise depends on the problem if our solution has to cover everything from market to field automation, from bulk generation to customer premises, it will be nearly impossible to find a DE with sufficient knowledge in all the areas. DEs may be energy market experts, DER experts, power system engineers, electrical engineers, etc. Experts in experimental engineering (EE): As Smart Grid algorithm development heavily depends on simulative evaluation, we need experts in this field. EE should have a background in model building, simulation, design of experiments and statistics. 3
Smart Grid Algorithm Engineering (SGAE) 4
Initial phase: Conceptualise Objective Define the problem to be solved within the application domain and thereby prepare the topic for non-domain experts. Specify hypotheses and scenarios to evaluate the performance regarding application-specific performance indicators. Input Industrial partners problem definition (if applicable/possible) Roles DE, AE (for review of problem definition) Procedure and output 1. Problem definition 2. Define domain performance indicators 3. Identify hard constraints for analytical evaluation 4. Define hypotheses for evaluation (to be refined) 5. Design scenarios for experimental evaluation (to be refined) 5
Design Objective Identify the algorithmic complexity (e.g. NP-hardness) and the proper class (e.g. DCOP) of the specified problem, develop a possible algorithmic solution for the problem, check whether the proposed algorithm is adequate for the application domain and whether it is based on the right assumptions on its technical environment. Input Problem definition, set of scenarios Roles AE, DE (for reviewing) Procedure and output 1. Identification of complexity and problem class 2. Development, usually based on generalized algorithm schemes 3. Check for applicability (e.g. needed data accessibility) 6
Analyse Objective The objective of this phase is to analyse whether the proposed solution fulfills hard constraints that might be part of the problem definition. Input Problem definition (conceptualisation phase) Domain PIs (conceptualisation phase) Hard constraints (conceptualisation phase) (Distributed) control algorithm (design phase) Roles AE Procedure and output The objective of this phase is to formally prove needed characteristics of the algorithm under development. So a method is needed that is appropriate for this task, e.g. model checking. Usually the task of formally proving characteristics is very complex and time-consuming, so the choice of an appropriate method is crucial here. 7
Implement Objective The objective of the implementation phase is to generate a prototypic implementation of the algorithms designed including code to generate data sets needed for the identified domain performance indicators. Input Designed algorithm (design phase) Domain performance indicators (conceptualisation phase) Existing software systems (if applicable) Roles AE Procedure and output Procedure depends on internal guidelines. Output: prototypic implementation, code needed to generate evaluation data for defined performance indicators. Important aspects: 1. Agent system architecture (like BDI, InteRRaP, ) (if needed) 2. Technological framework 3. Integration strategy (for teams) 8
Experiment Objective Generation of data with a maximum of informational content regarding the evaluation of the control system under test using a minimum of (time-consuming) simulation runs. Input Implementation of the control system (implementation phase) Scenario definitions, domain-specific PIs and corresponding metrics (conceptualisation phase) Implemented and evaluated simulation models (especially from model library) Roles EE, DE Procedure and output 1. Development and/or adaption of simulation models 2. Design of scenarios 3. Design of experiments 4. Pre-processing of simulation results as input for evaluation phase 9
Evaluate Objective Evaluate the designed algorithms against the hypotheses defined early in the process (probably refined within SGAE iterations). Results are manifested in a knowledge base, giving input for new projects and research questions and delivering information for researchers new to the application domain. Input Problem definition (conceptualisation phase) Algorithmic categorisation (design phase) Domain PIs (conceptualisation phase) Hypotheses (conceptualisation phase) Algorithm design (design phase) Simulation results (data sets reflecting domain PIs) (experiment phase) Roles DE Procedure and output 1. Evaluation based on hypotheses, domain PIs and simulation results 2. Transfer to knowledge base 10
Some closing remarks SGAE is a cyclic model so several iterations of the phases from Design to Evaluate are part of the main idea, with the solution evolving over time. Transfer to the knowledge base is hard, especially for the ideas that did not lead to a solution but it will help in future projects. Last but not least: Feel free to contact us for any comments or ideas on SGAE! 11