Ignition Computing is developing a toolbox to speed up the solving of sequences of systems of linear equations. Solving such a system is at the core of many computationally expensive multi-physics simulations, such as those arising in Computational Fluid Dynamics (CFD).
A central challenge in achieving this speed-up is the selection of the most appropriate linear solver and preconditioner. Depending on the properties of the matrix (such as symmetry, sparsity structure, conditioning, or block patterns), different iterative solvers behave very differently. Methods such as Conjugate Gradient and GMRES each have distinct convergence characteristics and computational costs. Moreover, solver performance depends not only on the matrix A, but also on the right-hand side b, the initial guess and the required tolerance. As these quantities evolve during a simulation this non-stationary problem motivates a dynamic state-aware solver selection strategy.
Currently, solver selection is largely based on heuristics and expert intuition. However, manual rules cannot fully capture the complex and evolving relationship between system characteristics and solver performance. A data-driven approach could learn these patterns automatically, for instance by leveraging ideas from active learning to selectively gather informative data and reinforcement learning to adapt decisions based on observed performance. Strict practical constraints apply. At every iteration, any data that is collected must be cheap to compute, so that the learning mechanism does not negate the potential speed-up. This requires defining a feature space based on inexpensive, readily available quantities that are informative enough to characterize the solver state. Moreover, the solver-selection decision itself must be computationally lightweight, ensuring that the overhead of evaluating the model and choosing a solver remains negligible compared to the cost of the solve. There is also no opportunity for extensive training during runtime; consequently, the model must be primarily trained offline using historical data, with only minimal, carefully controlled updates performed online. Historical data is available, but it reflects past choices and therefore suffers from limited diversity and sampling bias. This data will be used for offline pre-training of the model, after which the solver-selection strategy can be fine-tuned online in a controlled and efficient manner during simulation.
The goals of the project are:
Vlado Menkovski