Model-based optimisation

Bringing the power of explicit modelling to optimisation and search

Automated optimisation techniques are central to many engineering disciplines, where they provide an excellent tool for design space exploration and finding the best design for a given set of requirements. Automation allows to explore many more potential solutions than what would be manually feasible for human engineers. As a result, much better (and sometimes surprising) solutions can be found using automated optimisation techniques than could be found by human engineers. A recent interesting application domain (one of many) is quantum computing, where the creation of programs can be effectively reframed as an optmisation problem.

In the context of digital twins there are even more applications of optimisation:

  • if-what analysis uses search-based optimisation to find the optimal set of changes to a real-world asset or the optimal set of changes to a real-world process to achieve the best possible outcome (e.g., least cost, least risk, best product quality etc.).
  • search-based calibration uses parameter sweeps and searches over model structures to match a simulation / digital twin as closely as possible to the reality it represents.
  • generative social science builds simulation models to explore possible mechanisms that can explain observed social phenomena. It uses forms of search-based calibration to explore the space of possible mechanisms.

But using optimisation algorithms and tools well is difficult and requires a broad range of technical expertise. Model-driven engineering can help here by providing tools to make the description and execution of optimisation problems easier, including tieing them into the modelling and simulation capabilities of digital twins. We have developed the MDEOptimiser tool as a research foundation for exploring ways in which MDE can help with optimisation problems.

Search-based optimisation, one of the most flexible optimisation approaches, requires the definition of good problem encodings and mutation operators. We have found that model-driven engineering provides key benefits here by allowing encodings and smart mutation operators to be defined easily and efficiently, and in some cases even for optimal mutation operators to be generated automatically.

More research is required across the board, including in new application areas, new mechanisms for efficient encodings, mechanisms for hiding more of the technical complexity, or techniques for generating smarter, more efficient search operators and algorithms.

References

Journal Articles

2023

  1. We’re Not Gonna Break It! Consistency-Preserving Operators for Efficient Product Line Configuration
    Jose-Miguel HorcasDaniel Strüber, Alexandru Burdusel, and 2 more authors
    IEEE Transactions on Software Engineering 49(3), 2023

2021

  1. Automatic generation of atomic multiplicity-preserving search operators for search-based model engineering
    Alexandru Burdusel, Steffen Zschaler, and Stefan John
    Software and Systems Modelling, 2021

Conference and Workshop Papers

2022

  1. Extended Abstract: We’re Not Gonna Break It! Consistency-Preserving Operators for Efficient Product Line Configuration
    Jose-Miguel HorcasDaniel Strüber, Alexandru Burdusel, and 2 more authors
    In Journal First track at SPLC’22, 2022

2019

  1. Searching for Optimal Models: Comparing Two Encoding Approaches
    Stefan John, Alexandru Burdusel, Robert Bill, and 4 more authors
    In Proc. 12th Int’l Conf. Model Transformations (ICMT’19), 2019
  2. Automatic Generation of Atomic Consistency Preserving Search Operators for Search-Based Model Engineering
    Alexandru Burdusel, Steffen Zschaler, and Stefan John
    In IEEE / ACM 22nd Int’l Conf. Model Driven Engineering Languages and Systems (MODELS’19), 2019

2018

  1. MDEoptimiser: A Search Based Model Engineering Tool
    Alexandru Burdusel, Steffen Zschaler, and Daniel Strüber
    In Companion Proc. 21st ACM/IEEE Int’l Conf Model Driven Engineering Languages and Systems, 2018
  2. Henshin: A Model Transformation Language and its Use for Search-Based Model Optimisation in MDEOptimiser
    Daniel Strüber, Alexandru Burdusel, Stefan John, and 1 more author
    In Modellierung 2018, Tutorials, 2018
  3. Deriving Persuasion Strategies Using Search-Based Model Engineering
    Josh Murphy, Alexandru Burdusel, Michael Luck, and 2 more authors
    In 7th International Conference on Computational Models of Argument (COMMA’18), 2018

2017

  1. Automatic generation of evolution rules for model-driven optimisation
    Alexandru Burdusel, and Steffen Zschaler
    In 8th International Workshop on Graph Computation Models (GCM’17), 2017

2016

  1. Mejora de una representación genética genérica para modelos
    Lorenzo Mandow, Jose Antonio Montenegro, and Steffen Zschaler
    In Actas de la XVII Conferencia de la Asociación Española para la Inteligencia Artificial (CAEPIA’16), 2016
  2. Towards Model-Based Optimisation: Using domain knowledge explicitly
    Steffen Zschaler, and Lawrence Mandow
    In Proc. Workshop on Model-Driven Engineering, Logic and Optimization (MELO’16), 2016
  3. Model Optimisation for Feature–Class allocation using MDEOptimiser: A TTC 2016 Submission
    Alexandru Burdusel, and Steffen Zschaler
    In Transformation Tool Contest, 2016

Technical Reports

2019

  1. Automatic Generation of Atomic Consistency Preserving Search Operators for Search-Based Model Engineering.
    Alexandru Burdusel, Steffen Zschaler, and Stefan John
    2019