Passed
Push — master ( bf1b06...4fe153 )
by Simon
01:37
created

stochastic_hill_climbing   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 29
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 19
dl 0
loc 29
rs 10
c 0
b 0
f 0
wmc 1

1 Function

Rating   Name   Duplication   Size   Complexity  
A sphere_function() 0 5 1
1
import numpy as np
2
3
from hyperactive import Hyperactive
4
from hyperactive.optimizers import StochasticHillClimbingOptimizer
5
6
7
def sphere_function(para):
8
    x = para["x"]
9
    y = para["y"]
10
11
    return -(x * x + y * y)
12
13
14
search_space = {
15
    "x": list(np.arange(-10, 10, 0.1)),
16
    "y": list(np.arange(-10, 10, 0.1)),
17
}
18
19
opt = StochasticHillClimbingOptimizer(
20
    epsilon=0.01,
21
    n_neighbours=5,
22
    distribution="laplace",
23
    p_accept=0.05,
24
)
25
26
hyper = Hyperactive()
27
hyper.add_search(sphere_function, search_space, n_iter=1500, optimizer=opt)
28
hyper.run()
29