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.