Add simple spaces

This commit is contained in:
D-X-Y
2021-03-18 14:05:29 +08:00
parent 7de8c0dec4
commit 85ee0ad4eb
4 changed files with 74 additions and 7 deletions

View File

@@ -12,6 +12,7 @@ if str(lib_dir) not in sys.path:
sys.path.insert(0, str(lib_dir))
from spaces import Categorical
from spaces import Continuous
class TestBasicSpace(unittest.TestCase):
@@ -19,4 +20,19 @@ class TestBasicSpace(unittest.TestCase):
space = Categorical(1, 2, 3, 4)
for i in range(4):
self.assertEqual(space[i], i + 1)
self.assertEqual("Categorical(candidates=[1, 2, 3, 4])", str(space))
self.assertEqual("Categorical(candidates=[1, 2, 3, 4], default_index=None)", str(space))
def test_continuous(self):
space = Continuous(0, 1)
self.assertGreaterEqual(space.random(), 0)
self.assertGreaterEqual(1, space.random())
lower, upper = 1.5, 4.6
space = Continuous(lower, upper, log=False)
values = []
for i in range(100000):
x = space.random()
self.assertGreaterEqual(x, lower)
self.assertGreaterEqual(upper, x)
values.append(x)
self.assertAlmostEqual((lower + upper) / 2, sum(values) / len(values), places=2)