fix(curriculum): Make boundaries in curriculum more sensible (#407)

* init

* fix tests

* unify codeio

* filtered for libraries not present in reasoning-gym

* fix more bounds

* puzzle24

* knight swap curriculum

* fix number sorting

* fix attributes

* add validation of config in creation of dataset

* dry run for instantiating and validating the datasets

* remove unused imports

* fix curriculum tests to reference newly updated attribute names
This commit is contained in:
Zafir Stojanovski 2025-04-04 20:24:14 +02:00 committed by GitHub
parent 7853263650
commit dced3bfc45
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
132 changed files with 1226 additions and 347 deletions

View file

@ -134,22 +134,22 @@ def test_course_schedule_curriculum():
base_cfg: CourseScheduleConfig = curriculum.generate_configuration(base_value)
assert base_cfg.seed == 1
assert base_cfg.size == 150
assert base_cfg.min_num_courses == 10 and base_cfg.max_num_courses == 10
assert base_cfg.min_num_prerequisites == 2 and base_cfg.max_num_prerequisites == 2
assert base_cfg.min_cycle_length == 3 and base_cfg.max_cycle_length == 3
assert base_cfg.min_num_courses == 5 and base_cfg.max_num_courses == 10
assert base_cfg.min_num_prerequisites == 2 and base_cfg.max_num_prerequisites == 3
assert base_cfg.min_cycle_length == 3 and base_cfg.max_cycle_length == 4
# test incrementing attribute levels
curriculum.increment_attr_level("num_courses")
curriculum.increment_attr_level("num_prerequisites")
curriculum.increment_attr_level("cycle_length")
increased_cfg = curriculum.generate_configuration(base_value)
assert increased_cfg.min_num_courses == 10 and increased_cfg.max_num_courses == 50
assert increased_cfg.min_num_prerequisites == 2 and increased_cfg.max_num_prerequisites == 3
assert increased_cfg.min_cycle_length == 3 and increased_cfg.max_cycle_length == 4
assert increased_cfg.min_num_courses == 5 and increased_cfg.max_num_courses == 25
assert increased_cfg.min_num_prerequisites == 2 and increased_cfg.max_num_prerequisites == 4
assert increased_cfg.min_cycle_length == 3 and increased_cfg.max_cycle_length == 5
# test decrementing attribute level for num_courses again
curriculum.decrement_attr_level("num_courses")
partially_decreased_cfg = curriculum.generate_configuration(base_value)
assert partially_decreased_cfg.min_num_courses == 10 and partially_decreased_cfg.max_num_courses == 10
assert partially_decreased_cfg.min_num_prerequisites == 2 and partially_decreased_cfg.max_num_prerequisites == 3
assert partially_decreased_cfg.min_cycle_length == 3 and partially_decreased_cfg.max_cycle_length == 4
assert partially_decreased_cfg.min_num_courses == 5 and partially_decreased_cfg.max_num_courses == 10
assert partially_decreased_cfg.min_num_prerequisites == 2 and partially_decreased_cfg.max_num_prerequisites == 4
assert partially_decreased_cfg.min_cycle_length == 3 and partially_decreased_cfg.max_cycle_length == 5