diff options
author | Daniel Friesel <daniel.friesel@uos.de> | 2020-09-16 15:52:03 +0200 |
---|---|---|
committer | Daniel Friesel <daniel.friesel@uos.de> | 2020-09-16 15:52:03 +0200 |
commit | 31a6f42e08a0285b2f6153a91605a400089d1199 (patch) | |
tree | 405b3412b618bac8a50bb8e9c2e8f928be9c48cb /lib | |
parent | d298969415483a2995ffc0d5957d362bb89f3abc (diff) |
make choice node configurable
Diffstat (limited to 'lib')
-rw-r--r-- | lib/model.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/model.py b/lib/model.py index f422204..a75033c 100644 --- a/lib/model.py +++ b/lib/model.py @@ -1317,6 +1317,7 @@ class KConfigModel: self.choices = kconfig_benchmark.choice_names self.symbol = kconfig_benchmark.symbol self.choice = kconfig_benchmark.choice + self.with_choice_node = True self.max_loss = 10 if callable(attribute): self.attribute = "custom" @@ -1356,9 +1357,6 @@ class KConfigModel: return np.sum((model_value - values) ** 2, dtype=np.float64) def build_tree(self): - # without ChoiceNode: - # self.model = self._build_tree(self.symbols, list(), self.data, 0) - standalone_symbols = list( filter( lambda sym: self.symbol[sym].choice is None @@ -1369,7 +1367,12 @@ class KConfigModel: tree_choices = list( filter(lambda choice: not self.choice[choice].is_optional, self.choices) ) - self.model = self._build_tree(standalone_symbols, tree_choices, self.data, 0) + if self.with_choice_node: + self.model = self._build_tree( + standalone_symbols, tree_choices, self.data, 0 + ) + else: + self.model = self._build_tree(self.symbols, list(), self.data, 0) def value_for_config(self, kconf): return self.model.model(kconf) |