de.learnlib:learnlib-adt (maven):  The ADT Algorithm. Uses adaptive distinguishing trees (a generalization of adaptive distinguishing sequences) to separate hypothesis states and focuses on minimizing the amount of resets during the learning process. 
Keywords: automata-learning-algorithms|java|java-library|machine-learning