Skip to content

TypeError; Write Conditions with non-string values #79

@mlindauer

Description

@mlindauer
from ConfigSpace.configuration_space import ConfigurationSpace
from ConfigSpace.hyperparameters import CategoricalHyperparameter
from ConfigSpace.conditions import InCondition
from ConfigSpace.read_and_write.pcs_new import write

cs = ConfigurationSpace(seed=12345)

p1 = CategoricalHyperparameter(name="p1", choices=[True, False], default_value=True)
p2 = CategoricalHyperparameter(name="p2", choices=[True, False], default_value=True)
cs.add_hyperparameters([p1,p2])
c1 = InCondition(child=p2, parent=p1, values=[True])
cs.add_condition(c1)

with open("test.pcs", "w") as fh:
    fh.write(write(cs))

Error:

Traceback (most recent call last):
  File "test.py", line 16, in <module>
    fh.write(write(cs))
  File "/home/lindauer/git/ConfigSpace/ConfigSpace/read_and_write/pcs_new.py", line 462, in write
    condition_lines.write(build_condition(condition))
  File "/home/lindauer/git/ConfigSpace/ConfigSpace/read_and_write/pcs_new.py", line 145, in build_condition
    ", ".join(condition.values))
TypeError: sequence item 0: expected str instance, bool found

In response to automl/SMAC3#442

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions