Project Details
Projekt Print View

StdLearnLib: Towards a Standard Library for Automata Learning

Subject Area Software Engineering and Programming Languages
Theoretical Computer Science
Term since 2023
Project identifier Deutsche Forschungsgemeinschaft (DFG) - Project number 528775176
 
Active automata learning infers models from observations. Alternating between deriving conjectures from experiments and observations and then trying to corroborate or disprove conjectures, active automata learning can be seen as one instance of the fundamental method in science described by Popper. From its early beginnings in the 1980s, the learning model inspired a number of applications in quite a number of fields. It took more than a decade for the software verification and testing community to recognize its value of being able to provide models of black-box systems for model-based techniques. While many earlier works in the field of automata learning use a custom, one-off implementation of Angluin’s well-known L* learning algorithm and invested relatively little effort in optimizations, over time multiple libraries were developed that implement optimized versions of learning algorithms. LearnLib is the library for active automata learning that over time became a de facto standard in the research community. Its development started in 2003 and LearnLib is available as open-source software since 2013. Throughout the history of LearnLib, it consistently enabled fundamental research - as opposed to only re-implementing established algorithms - leading to the discovery of more efficient learning algorithms and becoming the basis for algorithms and tools that infer models of increasing expressivity, e.g., to deal with data. Moreover, LearnLib is often used as a baseline in experiments or in works that analyze the behavior of black-box systems. The goal of the proposed project is to ensure the long-term maintenance of LearnLib and to lay the groundwork for maintaining the value of LearnLib for the next twenty years by making it available to more researchers, by establishing mechanisms for automated regression testing on large labeled benchmark suites, and by defining a community process for making contributions to LearnLib. The project will pursue three working directions: 1) Increase the usability and impact of LearnLib by implementing support for more concept classes of learning models such as timed systems and learning from observations as well as by making LearnLib available in more programming environments. 2) Establish rigorous, automated quality assurance through continuous benchmarking on large problem sets as part of the CI/CD process, facilitated by the creation of a standardized benchmark data format. 3) Create the structures for long-term development and maintenance of LearnLib and define the roles of research software engineers in the project by participating in national networking efforts as well as by furthering competitions as platforms for tool developers. After the project, the tasks and processes for maintaining LearnLib are defined and documented in a way that allows it to hand over maintenance from one maintainer to the next - enabling a community-based maintenance model that other long-lived tools have achieved.
DFG Programme Research Grants
 
 

Additional Information

Textvergrößerung und Kontrastanpassung