예제 #1
0
class SeedsConfig(Config):
    expected_tail_length = ConfigField(100)
    max_tail_length = ConfigField(200)
    num_random_points = ConfigField(50)
    safe_projection = ConfigField(False)
    projection_max_line_search = ConfigField(10)
    _section = 'optimizers.seeds'
예제 #2
0
class SimpleControllerConfig(ControllerConfig):
    T = ConfigField(100, comment="Horizon")
    best_predicted_every = ConfigField(
        0,
        comment=
        "Do .best_predict() on every n-th timestep, if set to 0, don't evaluate .best_predict()"
    )
예제 #3
0
class ModelMixinConfig:
    model = ClassConfigField('febo.models.GP')
    model_config = ConfigField({})
    constraints_model = ClassConfigField(None, allow_none=True)
    constraints_model_config = ConfigField({})
    noise_model = ClassConfigField(None, allow_none=True)
    noise_model_config = ConfigField({})
    _section = 'algorithm'
예제 #4
0
class TripathyGPConfig(ModelConfig):
    """
    * kernels: List of kernels
    * noise_var: noise variance

    """
    # kernels = ConfigField([('GPy.kern.RBF', {'variance': 2., 'lengthscale': 0.2 , 'ARD': True})])
    noise_var = ConfigField(0.01)
    calculate_gradients = ConfigField(False, comment='Enable/Disable computation of gradient on each update.')
    optimize_bias = ConfigField(False)
    optimize_var = ConfigField(False)
    bias = ConfigField(0)
    _section = 'src.tripathy__'
예제 #5
0
class ScipySolverConfig(Config):
    lbfgs_use_gradients = ConfigField(False)
    lbfgs_maxfun = ConfigField(1000)
    # lbfgs_maxiter = ConfigField(1000)
    num_restart = ConfigField(50)
    num_processes = ConfigField(1)
    sync_restarts = ConfigField(True)
    convergence_warnings = ConfigField(True)
    _section = 'solver.scipy'
예제 #6
0
class MainConfig(Config):
    experiment = ClassConfigField('febo.experiment.SimpleExperiment', comment="Experiment")
    modules = ConfigField([])
    log_level_console = ConfigField('INFO')
    log_level_file = ConfigField('INFO')
    experiment_dir = ConfigField('runs/')
    sync_dir = ConfigField('remote/')
    plotting_backend = ConfigField(None, allow_none=True, comment='Set to "agg" on machines where default matplotlib qt backend is not available.')
    _section = 'main'
예제 #7
0
class BenchmarkEnvironmentConfig(EnvironmentConfig):
    constraints = ClassListConfigField([])
    lower_bound_objective = ConfigField(None,
                                        field_type=float,
                                        allow_none=True)
    noise_function = ConfigField(0.5)
    noise_obs_mode = EnumConfigField(
        'full',
        enum_cls=NoiseObsMode,
        comment='Can be set to "full", "evaluation" or "hidden".')
    dimension = ConfigField(3)
    num_domain_points = ConfigField(30)
    bias = ConfigField(0)
    scale = ConfigField(1)
    seed = ConfigField(None,
                       comment='Seed for randomly generated environments.',
                       allow_none=True)
    random_x0 = ConfigField(False)
    random_x0_min_value = ConfigField(None, allow_none=True)
    _section = 'environment.benchmark'
예제 #8
0
class StandaloneGPConfig(ModelConfig):

    kernels = ConfigField([('ard', {
        'variance': 2.,
        'lengthscale': 0.2,
        'ARD': True,
        'groups': None
    })])
    noise_var = ConfigField(0.1)
    calculate_gradients = ConfigField(
        True, comment='Enable/Disable computation of gradient on each update.')
    optimize_bias = ConfigField(True)
    optimize_var = ConfigField(True)
    bias = ConfigField(0)
예제 #9
0
class CDBanditConfig(BenchmarkEnvironmentConfig):
    exact_context = ConfigField(False)
예제 #10
0
class UCBCDConfig(AlgorithmConfig):
    observe_context = ConfigField(
        False, comment='If true, exact context is used for regression')
    l = ConfigField(1)
    _section = 'algorithm.ucbcd'
예제 #11
0
class PlottingControllerConfig:
    plots = ConfigField([])
    _section = 'controller'
예제 #12
0
class BoringConfig(AlgorithmConfig):
    # dim = ConfigField(2, comment='subspace dimension')
    optimize_every = ConfigField(40,
                                 comment='adding how many datapoints will lead to identifying the active and passive subspace?')
예제 #13
0
class CompassConfig(AlgorithmConfig):
    deltatol = ConfigField(0.01)
    deltainit = ConfigField(0.5)
    redfactor = ConfigField(1.5)
    niter = ConfigField(400)
    _section = 'algorithm.cmaes'
예제 #14
0
class SPSAConfig(AlgorithmConfig):
    a = ConfigField(0.5)
    c = ConfigField(0.1)
    niter = ConfigField(500)

    _section = 'algorithm.spsa'
예제 #15
0
class GridSolverConfig(Config):
    points_per_dimension = ConfigField(20)
    _section = 'solver.grid'
예제 #16
0
class GridSearchConfig(AlgorithmConfig):
    points_per_dim = ConfigField(5)
예제 #17
0
class AcquisitionAlgorithmConfig(AlgorithmConfig):
    solver = ClassConfigField(None, field_type=str, allow_none=True)
    evaluate_x0 = ConfigField(True)
    _section = 'algorithm.acquisition'
예제 #18
0
class NoiseConfig(Config):
    low = ConfigField(0.5, comment="May be used by the noise function to roughly set the lowest noise level.")
    high = ConfigField(0.5, comment="May be used by the noise function to roughly set the higest noise level.")
    seed = ConfigField(None, comment="Seed for randomly generated noise function.", allow_none=True)
    _section = 'environment.benchmark.noise'
예제 #19
0
class SubDomainBOConfig(AlgorithmConfig):
    points_in_max_interval_to_stop = ConfigField(10)
    min_queries_line = ConfigField(10)
    max_queries_line = ConfigField(30)
    min_queries_tr = ConfigField('d')
    max_queries_tr = ConfigField('2*d')
    tr_radius = ConfigField(0.1)
    tr_method = ConfigField('grad')
    line_boundary_margin = ConfigField(0.1)
    plot = ConfigField(False)
    plot_every_step = ConfigField(False)

    acquisition = ConfigField('febo.algorithms.subdomainbo.acquisition.ts')
    _section = 'algorithm.subdomainbo'
예제 #20
0
class RemboConfig(AlgorithmConfig):
    emb_d = ConfigField(2, comment='subspace dimension')
    _section = 'algorithm.rembo'
예제 #21
0
class ModelConfig(Config):
    delta = ConfigField(0.05)
    beta = ConfigField(default=2, allow_none=True)
    _section = "model"
예제 #22
0
class RemboConfig(AlgorithmConfig):
    dim = ConfigField(2, comment='subspace dimension')
예제 #23
0
class DataBaseConfig(Config):
    chunk_size = ConfigField(200)
    _section = 'database'
예제 #24
0
class MultiExperimentConfig(SimpleExperimentConfig):
    fixed_environment = ConfigField(False, comment='If true, only one environment for the whole batch will be created. Use this, if you randomly genrate your environment, but the whole batch should use the same random instance of the environment.')
    iterator = SubconfigField({})
    multi_controller = ClassConfigField('febo.controller.multi.RepetitionController')
    label = ClassConfigField(label_id)
    _section = 'experiment.multi'
예제 #25
0
class CMAESConfig(AlgorithmConfig):
    sigma0 = ConfigField(0.1)
    _section = 'algorithm.cmaes'
예제 #26
0
class InterleavedRemboConfig(AlgorithmConfig):
    interleaved_runs = ConfigField(4)
    _section = 'algorithm.rembo'
예제 #27
0
class SafeOptConfigMixin:
    bo_expander_ratio = ConfigField(2.)
    _section = 'algorithm.subdomainbo'
예제 #28
0
class NelderMeadConfig(AlgorithmConfig):
    contraction_factor = ConfigField(0.8)
    initial_stepsize = ConfigField(0.1)
    restart_threshold = ConfigField(0.001)
    adaptive = ConfigField(True)
    _section = 'algorithm.nelder_mead'
예제 #29
0
class AugmentedDimensionMixinConfig:
    aug_d = ConfigField(10)
    random_permutation = ConfigField(True)
    _section = 'environment.benchmark'
예제 #30
0
class GaussianConfig(BenchmarkEnvironmentConfig):
    initial_value = ConfigField(0.1)
    _section = 'environment.benchmark.gaussian'