From a4495d23d12606644f13b2c19e5fbd1fb9e26c01 Mon Sep 17 00:00:00 2001 From: Ivan Raikov Date: Wed, 24 Sep 2025 23:03:43 -0500 Subject: [PATCH 1/2] fixes to network objective function --- src/miv_simulator/optimize_network.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/miv_simulator/optimize_network.py b/src/miv_simulator/optimize_network.py index 1a28836..297bdcd 100644 --- a/src/miv_simulator/optimize_network.py +++ b/src/miv_simulator/optimize_network.py @@ -7,6 +7,7 @@ import sys import datetime import copy +import pprint os.environ["DISTWQ_CONTROLLER_RANK"] = "-1" @@ -159,6 +160,7 @@ def optimize_network( kv = arg.split("=") if len(kv) > 1: k, v = kv + sys.stdout.flush() network_config[k.replace("--", "").replace("-", "_")] = v else: k = kv[0] @@ -401,19 +403,17 @@ def compute_objectives(local_features, operational_config, opt_targets): fr_time_bins = np.arange(t_start, t_end, temporal_resolution) bin_width = time_bins_ref[1] - time_bins_ref[0] time_centers = time_bins_ref + bin_width / 2 - fr_time_centers = fr_time_bins + temporal_resolution / 2 + fr_time_centers = (fr_time_bins + temporal_resolution / 2).astype(np.float32) if sum_active_per_bin is None: - sum_active_per_bin = np.zeros_like(time_centers) + sum_active_per_bin = np.zeros_like(fr_time_centers, dtype=np.float32) for gid, dens_dict in spike_density_dict.items(): mean_rate = np.mean(dens_dict["rate"]) if mean_rate > 0.0: sum_mean_rate_local += mean_rate - ip_rate = np.interp1d( + ip_rate = np.interp( fr_time_centers, - dens_dict["rate"], - kind="linear", - bounds_error=False, - fill_value=0.0, + dens_dict["time"].astype(np.float32), + dens_dict["rate"].astype(np.float32), ) active_per_bin = ip_rate > active_threshold sum_active_per_bin += active_per_bin From cb8c6794c9cc2cfe7b03da89d1b4a7dd8276bea6 Mon Sep 17 00:00:00 2001 From: Ivan Raikov Date: Wed, 24 Sep 2025 21:08:23 -0700 Subject: [PATCH 2/2] fixes to network objective function --- src/miv_simulator/optimize_network.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/miv_simulator/optimize_network.py b/src/miv_simulator/optimize_network.py index 297bdcd..e24a346 100644 --- a/src/miv_simulator/optimize_network.py +++ b/src/miv_simulator/optimize_network.py @@ -7,7 +7,6 @@ import sys import datetime import copy -import pprint os.environ["DISTWQ_CONTROLLER_RANK"] = "-1" @@ -160,7 +159,6 @@ def optimize_network( kv = arg.split("=") if len(kv) > 1: k, v = kv - sys.stdout.flush() network_config[k.replace("--", "").replace("-", "_")] = v else: k = kv[0] @@ -401,9 +399,9 @@ def compute_objectives(local_features, operational_config, opt_targets): t_end = time_bins_ref[-1] + (time_bins_ref[1] - time_bins_ref[0]) # time bins for fraction active per time bin calculation fr_time_bins = np.arange(t_start, t_end, temporal_resolution) - bin_width = time_bins_ref[1] - time_bins_ref[0] - time_centers = time_bins_ref + bin_width / 2 - fr_time_centers = (fr_time_bins + temporal_resolution / 2).astype(np.float32) + fr_time_centers = (fr_time_bins + temporal_resolution / 2).astype( + np.float32 + ) if sum_active_per_bin is None: sum_active_per_bin = np.zeros_like(fr_time_centers, dtype=np.float32) for gid, dens_dict in spike_density_dict.items():