Skip to content

Commit eb8a1cf

Browse files
committed
black
1 parent d36bc42 commit eb8a1cf

File tree

2 files changed

+21
-11
lines changed

2 files changed

+21
-11
lines changed

cgp/local_search/random_search.py

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44

55
class RandomLocalSearch:
66
def __init__(
7-
self,
8-
objective: Callable,
9-
seed: int,
10-
n_steps: int = 10, # todo: should this be dependent on the number of parameters?
11-
permissible_values: np.ndarray = np.logspace(start=0, stop=7, num=8, base=2, dtype=int),
7+
self,
8+
objective: Callable,
9+
seed: int,
10+
n_steps: int = 10, # todo: should this be dependent on the number of parameters?
11+
permissible_values: np.ndarray = np.logspace(start=0, stop=7, num=8, base=2, dtype=int),
1212
) -> None:
1313
self.objective = objective
1414
self.seed = seed
@@ -23,15 +23,21 @@ def __call__(self, ind) -> None:
2323
if len(params_values) > 0:
2424
for _ in range(self.n_steps):
2525
# sample a new set of parameter values randomly
26-
params_sampled = [rng.choice(self.permissible_values) for param_value in params_values]
26+
params_sampled = [
27+
rng.choice(self.permissible_values) for param_value in params_values
28+
]
2729
# write the parameters into a clone of individual
2830
new_ind = ind.clone()
29-
new_ind.update_parameters_from_numpy_array(params=params_sampled, params_names=params_names)
31+
new_ind.update_parameters_from_numpy_array(
32+
params=params_sampled, params_names=params_names
33+
)
3034
# evaluate fitness
3135
self.objective(new_ind)
3236
# if fitness improved: replace parameter values and fitness
3337
if new_ind.fitness >= ind.fitness: # todo: should this be >= or > ??
34-
ind.update_parameters_from_numpy_array(params=params_sampled, params_names=params_names)
38+
ind.update_parameters_from_numpy_array(
39+
params=params_sampled, params_names=params_names
40+
)
3541
ind.fitness = new_ind.fitness
3642

3743

@@ -49,8 +55,12 @@ def objective(ind):
4955
ind = cgp.IndividualSingleGenome(genome=genome)
5056

5157
objective(ind)
52-
print(f'Node parameters before local search {ind.parameters_to_numpy_array(only_active_nodes=True)} \n')
58+
print(
59+
f"Node parameters before local search {ind.parameters_to_numpy_array(only_active_nodes=True)} \n"
60+
)
5361

5462
rls = RandomLocalSearch(objective=objective, seed=seed, n_steps=1000)
5563
rls(ind)
56-
print(f'Node parameters after local search {ind.parameters_to_numpy_array(only_active_nodes=True)} \n')
64+
print(
65+
f"Node parameters after local search {ind.parameters_to_numpy_array(only_active_nodes=True)} \n"
66+
)

cgp/node.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ def __init_subclass__(cls: Type["OperatorNode"]) -> None:
178178
node_validation.check_to_func(cls)
179179
node_validation.check_to_numpy(cls)
180180
node_validation.check_to_torch(cls)
181-
#node_validation.check_to_sympy(cls)
181+
node_validation.check_to_sympy(cls)
182182

183183
@classmethod
184184
def _extract_input_names_from_def_output(self, cls: Type["OperatorNode"]) -> None:

0 commit comments

Comments
 (0)