From 57ddad6e228c004b4c3256f88c313cb7d2ca7ddd Mon Sep 17 00:00:00 2001 From: Xudong Sun Date: Thu, 1 Feb 2024 12:20:58 +0100 Subject: [PATCH 1/4] Update fbopt_mu_controller.py --- domainlab/algos/trainers/fbopt_mu_controller.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domainlab/algos/trainers/fbopt_mu_controller.py b/domainlab/algos/trainers/fbopt_mu_controller.py index 9f8e02971..f02c39264 100644 --- a/domainlab/algos/trainers/fbopt_mu_controller.py +++ b/domainlab/algos/trainers/fbopt_mu_controller.py @@ -84,7 +84,7 @@ def set_k_i_gain(self, epo_reg_loss): k_i_gain_saturate_min = min(k_i_gain_saturate) # NOTE: here we override the commandline arguments specification # for k_i_control, so k_i_control is not a hyperparameter anymore - self.k_i_control = self.k_i_gain_ratio * k_i_gain_saturate_min + self.k_i_control = self.k_i_gain_ratio * k_i_gain_saturate warnings.warn( f"hyperparameter k_i_gain disabled! \ replace with {self.k_i_control}" From 49837cbc18a997528c4ff820fd123e304926a43c Mon Sep 17 00:00:00 2001 From: Xudong Sun Date: Thu, 1 Feb 2024 12:30:20 +0100 Subject: [PATCH 2/4] Update fbopt_mu_controller.py --- domainlab/algos/trainers/fbopt_mu_controller.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domainlab/algos/trainers/fbopt_mu_controller.py b/domainlab/algos/trainers/fbopt_mu_controller.py index f02c39264..b2c0bd192 100644 --- a/domainlab/algos/trainers/fbopt_mu_controller.py +++ b/domainlab/algos/trainers/fbopt_mu_controller.py @@ -162,7 +162,7 @@ def cal_activation(self): """ setpoint = self.get_setpoint4r() activation = [ - self.k_i_control * val if setpoint[i] > 0 else self.k_i_control * (-val) + self.k_i_control[i] * val if setpoint[i] > 0 else self.k_i_control[i] * (-val) for i, val in enumerate(self.delta_epsilon_r) ] if self.activation_clip is not None: From 67b2dddc9ca5865cd98c6e8dad7fbbe8e2808d20 Mon Sep 17 00:00:00 2001 From: Xudong Sun Date: Thu, 1 Feb 2024 12:35:54 +0100 Subject: [PATCH 3/4] Update fbopt_mu_controller.py --- domainlab/algos/trainers/fbopt_mu_controller.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domainlab/algos/trainers/fbopt_mu_controller.py b/domainlab/algos/trainers/fbopt_mu_controller.py index b2c0bd192..817238253 100644 --- a/domainlab/algos/trainers/fbopt_mu_controller.py +++ b/domainlab/algos/trainers/fbopt_mu_controller.py @@ -50,7 +50,7 @@ def __init__(self, trainer, **kwargs): self.mmu = {key: self.init_mu for key, val in self.mmu.items()} self.set_point_controller = FbOptSetpointController(args=self.trainer.aconf) - self.k_i_control = trainer.aconf.k_i_gain + self.k_i_control = [trainer.aconf.k_i_gain for i in len(self.mmu)] self.k_i_gain_ratio = None self.overshoot_rewind = trainer.aconf.overshoot_rewind == "yes" self.delta_epsilon_r = None @@ -84,7 +84,7 @@ def set_k_i_gain(self, epo_reg_loss): k_i_gain_saturate_min = min(k_i_gain_saturate) # NOTE: here we override the commandline arguments specification # for k_i_control, so k_i_control is not a hyperparameter anymore - self.k_i_control = self.k_i_gain_ratio * k_i_gain_saturate + self.k_i_control = [self.k_i_gain_ratio * ele for ele in k_i_gain_saturate] warnings.warn( f"hyperparameter k_i_gain disabled! \ replace with {self.k_i_control}" From eb71b433b6bd6bc0e28a07fb3419ea44d9c5eadf Mon Sep 17 00:00:00 2001 From: Xudong Sun Date: Thu, 1 Feb 2024 13:32:06 +0100 Subject: [PATCH 4/4] Update fbopt_mu_controller.py --- domainlab/algos/trainers/fbopt_mu_controller.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domainlab/algos/trainers/fbopt_mu_controller.py b/domainlab/algos/trainers/fbopt_mu_controller.py index 817238253..9ae93a9bc 100644 --- a/domainlab/algos/trainers/fbopt_mu_controller.py +++ b/domainlab/algos/trainers/fbopt_mu_controller.py @@ -50,7 +50,7 @@ def __init__(self, trainer, **kwargs): self.mmu = {key: self.init_mu for key, val in self.mmu.items()} self.set_point_controller = FbOptSetpointController(args=self.trainer.aconf) - self.k_i_control = [trainer.aconf.k_i_gain for i in len(self.mmu)] + self.k_i_control = [trainer.aconf.k_i_gain for i in range(len(self.mmu))] self.k_i_gain_ratio = None self.overshoot_rewind = trainer.aconf.overshoot_rewind == "yes" self.delta_epsilon_r = None