Passed
Push — master ( 65e4f4...bd0b66 )
by Simon
01:38
created

opt_strat_search_space_pruning   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 39
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 1
eloc 27
dl 0
loc 39
rs 10
c 0
b 0
f 0

1 Function

Rating   Name   Duplication   Size   Complexity  
A objective_function() 0 3 1
1
import numpy as np
2
3
from hyperactive import Hyperactive
4
5
6
from hyperactive.optimizers.strategies import CustomOptimizationStrategy
7
from hyperactive.optimizers import (
8
    HillClimbingOptimizer,
9
    RandomSearchOptimizer,
10
    BayesianOptimizer,
11
)
12
13
14
opt_strat = CustomOptimizationStrategy()
15
opt_strat.add_optimizer(RandomSearchOptimizer(), duration=0.5)
16
opt_strat.prune_search_space()
17
opt_strat.add_optimizer(HillClimbingOptimizer(), duration=0.5)
18
19
20
def objective_function(opt):
21
    score = -opt["x1"] * opt["x1"]
22
    return score, {"additional stuff": 1}
23
24
25
search_space = {"x1": list(np.arange(-100, 101, 1))}
26
n_iter = 100
27
optimizer = opt_strat
28
29
hyper = Hyperactive()
30
hyper.add_search(
31
    objective_function,
32
    search_space,
33
    n_iter=n_iter,
34
    n_jobs=1,
35
    optimizer=optimizer,
36
    # random_state=1,
37
)
38
hyper.run()
39