Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parallelize ADT Learner #132

Merged
merged 16 commits into from
Sep 1, 2024
Merged

Parallelize ADT Learner #132

merged 16 commits into from
Sep 1, 2024

Conversation

leonthalee
Copy link
Contributor

This PR replaces the SymbolQueryOracle (and related code) with a collection-based AdaptiveMembershipOracle that supports parallelism similar to the existing ParallelOracles.

vito and others added 16 commits July 24, 2024 15:33
	- new AdaptiveQuery abstract class with adt and default query extensions
	- new adaptiveADTOracle classes with parallel interfaces and static implementation
	- adaptive membership oracle for preset adaptive queries
	- sleepySUL
	- changes in ADTLearner class for new Adaptive classes

verbose:
	- added abstract class Adaptive Query in "de.learnlib.query"
	- added Adaptive_ADT_Query class in "de.learnlib.algorithm.adt.Adaptive"
	- (added ADTNode<S, I, O> getSuccessor() in ADTResetNode ( in "de.learnlib.algorithm.adt.adt" ) for Adaptive_ADT_Query
	  to work )
	- added AdaptiveMembershipOracle interface in "de.learnlib.oracle"

	- added package Adaptive in "de/learnlib/algorithm/adt/Adaptive"
	- added Sul_Adaptive_Oracle class in "de.learnlib.algorithm.adt.Adaptive"
	- added Adaptive_DEF_Query class in "de.learnlib.algorithm.adt.Adaptive"
	- added A2M_Oracle class in "de.learnlib.algorithm.adt.Adaptive"

	- added ParallelAdaptiveOracle interface in "de.learnlib.oracle"
	- added StaticParallelAdaptiveOracle in "de.learnlib.oracle.parallelism"
	- added SleepySUL class in "de.learnlib.algorithm.adt.Adaptive"

	- modified ADTLearner class:
		- added constructor for adaptive membership oracle
		- added AdaptiveMembershipOracle attribute.
		- modified startLearning() to choose between oracles
		- added closeTransitionsLeon() method to use appropriate oracles
known issues:
* adaptive parallel oracle testing still missing
* AQOOTBridge non-functional
* A2S_Oracle non-functional
* may replace SQOOTBridge
* testing of counter currently broken
@mtf90 mtf90 mentioned this pull request Sep 1, 2024
@mtf90 mtf90 merged commit bd602cb into LearnLib:develop Sep 1, 2024
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants