def test_load_with_params():
    config = {
        "type": "bolero.optimizer.CMAESOptimizer",
        "variance": 10.0,
        "n_samples_per_update": 10
    }
    optimizer = from_dict(config)
    assert_true(isinstance(optimizer, CMAESOptimizer))
    assert_equal(optimizer.variance, 10.0)
    assert_equal(optimizer.n_samples_per_update, 10)
def test_load_cpp_lib():
    opt = from_dict({"Optimizer": {"type": "pso_optimizer"}})["Optimizer"]
    assert_true(hasattr(opt, "get_next_parameters"))
def test_load_tuple():
    opt_config = {"type": "bolero.optimizer.CMAESOptimizer"}
    config = {"optimizers": (opt_config, opt_config)}
    result = from_dict(config)
    assert_true(isinstance(result["optimizers"][0], CMAESOptimizer))
    assert_true(isinstance(result["optimizers"][1], CMAESOptimizer))
def test_load_missing_type():
    config = {"key": "value"}
    config2 = from_dict(config)
    assert_equal(config, config2)
def test_load_explicit_package():
    config = {"package": "bolero.optimizer", "type": "CMAESOptimizer"}
    optimizer = from_dict(config)
    assert_true(isinstance(optimizer, CMAESOptimizer))
예제 #6
0
"""
=======================
Load Module from Config
=======================

In bolero, we can load modules (optimizers, behavior search methods, behaviors,
environments) either from configuration dictionaries or from YAML files. This
example shows how we can load an optimizer from a configuration dictionary.
"""
print(__doc__)

from bolero.utils import from_dict

config = {
    "type": "bolero.optimizer.CMAESOptimizer",
    "variance": 10.0,
}

optimizer = from_dict(config)
optimizer.init(2)
params = [0, 0]
optimizer.get_next_parameters(params)
print(params)