Litcius/Paper detail

Benchmarking Combinations of Learning and Testing Algorithms for Automata Learning

Bernhard K. Aichernig, Martin Tappler, Felix Wallner

2023Formal Aspects of Computing14 citationsDOIOpen Access PDF

Abstract

Automata learning enables model-based analysis of black-box systems by automatically constructing models from system observations, which are often collected via testing. The required testing budget to learn adequate models heavily depends on the applied learning and testing techniques. Test cases executed for learning (1) collect behavioural information and (2) falsify learned hypothesis automata. Falsification test-cases are commonly selected through conformance testing. Active learning algorithms additionally implement test-case selection strategies to gain information, whereas passive algorithms derive models solely from given data. In an active setting, such algorithms require external test-case selection, like repeated conformance testing to extend the available data. There exist various approaches to learning and conformance testing, where interdependencies among them affect performance. We investigate the performance of combinations of six learning algorithms, including a passive algorithm, and seven testing algorithms by performing experiments using 153 benchmark models. We discuss insights regarding the performance of different configurations for various types of systems. Our findings may provide guidance for future users of automata learning. For example, counterexample processing during learning strongly impacts efficiency, which is further affected by testing approach and system type. Testing with the random Wp-method performs best overall, while mutation-based testing performs well on smaller models.

Topics & Concepts

Computer scienceMachine learningConformance testingBenchmark (surveying)Artificial intelligenceBenchmarkingRandom testingLearning automataAlgorithmTest strategyWhite-box testingActive learning (machine learning)Orthogonal array testingModel-based testingTheory of computationAutomatonTest caseProgramming languageSoftware systemGeodesyBusinessGeographyOperating systemRegression analysisSoftware constructionStandardizationSoftwareMarketingMachine Learning and AlgorithmsSoftware Testing and Debugging TechniquesMachine Learning and Data Classification