Skip to content

Commit 686af9e

Browse files
committed
use new result class in converter
1 parent 4d0e5a0 commit 686af9e

File tree

1 file changed

+8
-2
lines changed
  • src/gradient_free_optimizers/optimizers/core_optimizer

1 file changed

+8
-2
lines changed

src/gradient_free_optimizers/optimizers/core_optimizer/converter.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88
from functools import reduce
99
from typing import Optional
1010

11+
from ..._result import Result
12+
1113

1214
def check_numpy_array(search_space):
1315
for para_name, dim_values in search_space.items():
@@ -149,14 +151,18 @@ def positions_scores2memory_dict(
149151
self, positions: Optional[list], scores: Optional[list]
150152
) -> Optional[dict]:
151153
value_tuple_list = list(map(tuple, positions))
152-
memory_dict = dict(zip(value_tuple_list, scores))
154+
# Convert scores to Result objects
155+
result_objects = [Result(float(score), {}) for score in scores]
156+
memory_dict = dict(zip(value_tuple_list, result_objects))
153157

154158
return memory_dict
155159

156160
@returnNoneIfArgNone
157161
def memory_dict2positions_scores(self, memory_dict: Optional[dict]):
158162
positions = [np.array(pos).astype(int) for pos in list(memory_dict.keys())]
159-
scores = list(memory_dict.values())
163+
# Extract scores from Result objects
164+
scores = [result.score if isinstance(result, Result) else result
165+
for result in memory_dict.values()]
160166

161167
return positions, scores
162168

0 commit comments

Comments
 (0)