LearnDiag: A Direct Diagnosis Algorithm Based On Learned Heuristics

Configuration systems must be able to deal with inconsistencies which can occur in different contexts. Especially in interactive settings, where users specify requirements and a constraint solver has to identify solutions, inconsistencies may more often arise. Therefore, diagnosis algorithms are required to find solutions for these unsolvable problems. Runtime efficiency of diagnosis is especially crucial in real-time scenarios such as production scheduling, robot control, and communication networks. For such scenarios, diagnosis algorithms should determine solutions within predefined time limits. To provide runtime performance, direct or sequential diagnosis algorithms find diagnoses without the need of calculating conflicts. In this paper, we propose a new direct diagnosis algorithm LearnDiag which uses learned heuristics. It applies supervised learning to calculate constraint ordering heuristics for the diagnostic search. Our evaluations show that LearnDiag improves runtime performance of direct diagnosis besides improving the diagnosis quality in terms of minimality and precision.