Passed
Push — master ( 206a80...44bd28 )
by Simon
01:21
created

gradient_free_optimizers.optimizers.sequence_model.bayesian_optimization.BayesianOptimizer._expected_improvement()   A

Complexity

Conditions 1

Size

Total Lines 18
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 13
nop 1
dl 0
loc 18
rs 9.75
c 0
b 0
f 0
1
# Author: Simon Blanke
2
# Email: [email protected]
3
# License: MIT License
4
5
6
import numpy as np
7
from scipy.stats import norm
8
from scipy.spatial.distance import cdist
9
10
from .exp_imp_based_opt import ExpectedImprovementBasedOptimization
11
12
from .surrogate_models import (
13
    GPR_linear,
14
    GPR,
15
)
16
17
gaussian_process = {"gp_nonlinear": GPR(), "gp_linear": GPR_linear()}
18
19
20
class BayesianOptimizer(ExpectedImprovementBasedOptimization):
21
    def __init__(self, search_space, gpr=gaussian_process["gp_nonlinear"], **kwargs):
22
        super().__init__(search_space, **kwargs)
23
        self.regr = gpr
24
25