Package org.deidentifier.arx.algorithm
Klasse AbstractAlgorithm
java.lang.Object
org.deidentifier.arx.algorithm.AbstractAlgorithm
- Bekannte direkte Unterklassen:
DataDependentEDDPAlgorithm,FLASHAlgorithmImpl,GeneticAlgorithm,LIGHTNINGAlgorithm
Abstract class for an algorithm, which provides some generic methods.
-
Feldübersicht
FelderModifizierer und TypFeldBeschreibungprotected TransformationCheckerA node checker.protected SolutionSpace<?> The lattice. -
Konstruktorübersicht
KonstruktorenModifiziererKonstruktorBeschreibungprotectedAbstractAlgorithm(SolutionSpace<?> solutionSpace, TransformationChecker checker, int timeLimit, int checkLimit) Initializes the algorithm -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungprotected voidcomputeUtilityForMonotonicMetrics(Transformation<?> transformation) Determine information loss implied by the given transformation if it can be used for estimating minimum and maximum information loss for tagged nodes.intReturn stuff for progress monitoringintReturn stuff for progress monitoringReturns the global optimum.intReturn stuff for progress monitoringlongReturn stuff for progress monitoringprotected booleanmustStop()Returns whether we have exceeded the allowed number of steps or time.protected voidprogress(double progress) Propagate progress to listenersvoidsetListener(ARXListener listener) Sets a listenerprotected voidCall before traversalprotected voidtrackOptimum(Transformation<?> transformation) Keeps track of the global optimum.protected voidTrack progress from limitsprotected voidtrackProgressFromLimits(double algorithmProgress) Track progress from limitsabstract booleantraverse()Implement this method in order to provide a new algorithm.
-
Felddetails
-
checker
A node checker. -
solutionSpace
The lattice.
-
-
Konstruktordetails
-
AbstractAlgorithm
protected AbstractAlgorithm(SolutionSpace<?> solutionSpace, TransformationChecker checker, int timeLimit, int checkLimit) Initializes the algorithm- Parameter:
solutionSpace- The solution spacechecker- The checker
-
-
Methodendetails
-
getCheckCount
public int getCheckCount()Return stuff for progress monitoring- Gibt zurück:
-
getCheckLimit
public int getCheckLimit()Return stuff for progress monitoring- Gibt zurück:
-
getGlobalOptimum
Returns the global optimum.- Gibt zurück:
-
getTimeLimit
public int getTimeLimit()Return stuff for progress monitoring- Gibt zurück:
-
getTimeStart
public long getTimeStart()Return stuff for progress monitoring- Gibt zurück:
-
setListener
Sets a listener- Parameter:
listener-
-
traverse
public abstract boolean traverse()Implement this method in order to provide a new algorithm.- Gibt zurück:
- Whether the result is optimal
-
computeUtilityForMonotonicMetrics
Determine information loss implied by the given transformation if it can be used for estimating minimum and maximum information loss for tagged nodes.- Parameter:
transformation-
-
mustStop
protected boolean mustStop()Returns whether we have exceeded the allowed number of steps or time.- Gibt zurück:
-
progress
protected void progress(double progress) Propagate progress to listeners- Parameter:
progress-
-
startTraverse
protected void startTraverse()Call before traversal -
trackOptimum
Keeps track of the global optimum.- Parameter:
transformation-
-
trackProgressFromLimits
protected void trackProgressFromLimits()Track progress from limits -
trackProgressFromLimits
protected void trackProgressFromLimits(double algorithmProgress) Track progress from limits- Parameter:
algorithmProgress-
-