示例#1
0
    def test_bruteforce_driver_2d(self):
        from ctree.tune import BruteForceTuningDriver, IntegerParameter, MinimizeTime

        params = [IntegerParameter("foo", 0, 10), IntegerParameter("bar", 0, 10)]
        driver = BruteForceTuningDriver(params, MinimizeTime())

        unsearched = set(range(0, 100))
        for config in islice(driver.configs, 100):
            entry = config["foo"] * 10 + config["bar"]
            unsearched.remove(entry)
            driver.report(time=0.4)
        self.assertSetEqual(unsearched, set())
示例#2
0
    def test_bruteforce_driver_1d(self):
        from ctree.tune import BruteForceTuningDriver, IntegerParameter, MinimizeTime

        objective = MinimizeTime()
        params = [IntegerParameter("foo", 0, 100)]
        driver = BruteForceTuningDriver(params, objective)

        unsearched = set(range(0, 100))
        for config in islice(driver.configs, 100):
            unsearched.remove(config["foo"])
            driver.report(time=0.4)
        self.assertSetEqual(unsearched, set())
示例#3
0
    def test_bruteforce_driver_2d_parabola(self):
        from ctree.tune import BruteForceTuningDriver, IntegerParameter, MinimizeTime

        params = [IntegerParameter("x", 0, 10), IntegerParameter("y", 0, 10)]
        driver = BruteForceTuningDriver(params, MinimizeTime())

        for config in islice(driver.configs, 100):
            # report height on inverted paraboloid with global min at (3,4)
            x, y = config["x"], config["y"]
            z = (x - 3) ** 2 + (y - 4) ** 2 + 1
            driver.report(time=z)

        for config in islice(driver.configs, 10):
            self.assertEqual((config["x"], config["y"]), (3, 4))
示例#4
0
    def test_bruteforce_driver_1d(self):
        from ctree.tune import (
            BruteForceTuningDriver,
            IntegerParameter,
            MinimizeTime,
        )

        objective = MinimizeTime()
        params = [IntegerParameter("foo", 0, 100)]
        driver = BruteForceTuningDriver(params, objective)

        unsearched = set(range(0, 100))
        for config in islice(driver.configs, 100):
            unsearched.remove(config["foo"])
            driver.report(time=0.4)
        self.assertSetEqual(unsearched, set())
示例#5
0
    def test_bruteforce_driver_2d(self):
        from ctree.tune import (
            BruteForceTuningDriver,
            IntegerParameter,
            MinimizeTime,
        )

        params = [
            IntegerParameter("foo", 0, 10),
            IntegerParameter("bar", 0, 10),
        ]
        driver = BruteForceTuningDriver(params, MinimizeTime())

        unsearched = set(range(0, 100))
        for config in islice(driver.configs, 100):
            entry = config["foo"] * 10 + config["bar"]
            unsearched.remove(entry)
            driver.report(time=0.4)
        self.assertSetEqual(unsearched, set())
示例#6
0
    def test_bruteforce_driver_2d_parabola(self):
        from ctree.tune import (
            BruteForceTuningDriver,
            IntegerParameter,
            MinimizeTime,
        )

        params = [
            IntegerParameter("x", 0, 10),
            IntegerParameter("y", 0, 10),
        ]
        driver = BruteForceTuningDriver(params, MinimizeTime())

        for config in islice(driver.configs, 100):
            # report height on inverted paraboloid with global min at (3,4)
            x, y = config["x"], config["y"]
            z = (x-3)**2 + (y-4)**2 + 1
            driver.report(time=z)

        for config in islice(driver.configs, 10):
            self.assertEqual((config["x"], config["y"]), (3, 4))