Package ai.libs.jaicore.experiments
Class ExperimentRunner
- java.lang.Object
-
- ai.libs.jaicore.experiments.ExperimentRunner
-
- All Implemented Interfaces:
ai.libs.jaicore.basic.ILoggingCustomizable
public class ExperimentRunner extends java.lang.Object implements ai.libs.jaicore.basic.ILoggingCustomizableThis class is used to run experiments.
-
-
Constructor Summary
Constructors Constructor Description ExperimentRunner(IExperimentSetConfig config, IExperimentSetEvaluator conductor, IExperimentDatabaseHandle databaseHandle)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconductExperiment(ExperimentDBEntry expEntry)Conducts a single experimentjava.lang.StringgetLoggerName()voidrandomlyConductExperiments()Conducts an unbound number of randomly chosen experiments from the grid.voidrandomlyConductExperiments(int maxNumberOfExperiments)Conducts a limited number of not yet conducted experiments randomly chosen from the grid.voidsetLoggerName(java.lang.String name)
-
-
-
Constructor Detail
-
ExperimentRunner
public ExperimentRunner(IExperimentSetConfig config, IExperimentSetEvaluator conductor, IExperimentDatabaseHandle databaseHandle) throws ExperimentDBInteractionFailedException
-
-
Method Detail
-
randomlyConductExperiments
public void randomlyConductExperiments(int maxNumberOfExperiments) throws ExperimentDBInteractionFailedException, java.lang.InterruptedExceptionConducts a limited number of not yet conducted experiments randomly chosen from the grid.- Parameters:
maxNumberOfExperiments- Limit for the number of experimentsreload- Whether or not the experiment setup should be reloaded between two experiment runs.- Throws:
ExperimentDBInteractionFailedExceptionjava.lang.InterruptedExceptionIllegalExperimentSetupException
-
randomlyConductExperiments
public void randomlyConductExperiments() throws ExperimentDBInteractionFailedException, java.lang.InterruptedExceptionConducts an unbound number of randomly chosen experiments from the grid.- Parameters:
reload- Whether or not the experiment setup should be reloaded between two experiment runs.- Throws:
IllegalExperimentSetupExceptionExperimentDBInteractionFailedExceptionjava.lang.InterruptedException
-
conductExperiment
public void conductExperiment(ExperimentDBEntry expEntry) throws ExperimentDBInteractionFailedException, ExperimentAlreadyStartedException, java.lang.InterruptedException
Conducts a single experiment- Parameters:
exp-- Throws:
ExperimentAlreadyExistsInDatabaseExceptionExperimentDBInteractionFailedExceptionExperimentAlreadyStartedExceptionjava.lang.InterruptedException
-
getLoggerName
public java.lang.String getLoggerName()
- Specified by:
getLoggerNamein interfaceai.libs.jaicore.basic.ILoggingCustomizable
-
setLoggerName
public void setLoggerName(java.lang.String name)
- Specified by:
setLoggerNamein interfaceai.libs.jaicore.basic.ILoggingCustomizable
-
-