Esempio n. 1
0
    def specification(self) -> solver.SolverSpec:
        try:
            optuna_version = get_distribution("optuna").version
        except DistributionNotFound:
            optuna_version = "unknown"

        try:
            kurobako_version = get_distribution("kurobako").version
        except DistributionNotFound:
            kurobako_version = "unknown"

        return solver.SolverSpec(
            name=self._name,
            attrs={
                "version":
                "optuna={}, kurobako-py={}".format(optuna_version,
                                                   kurobako_version),
                "github":
                "https://github.com/optuna/optuna",
                "paper":
                'Akiba, Takuya, et al. "Optuna: A next-generation hyperparameter '
                'optimization framework." Proceedings of the 25th ACM SIGKDD International '
                "Conference on Knowledge Discovery & Data Mining. ACM, 2019.",
            },
            capabilities={
                solver.Capability.UNIFORM_CONTINUOUS,
                solver.Capability.LOG_UNIFORM_CONTINUOUS,
                solver.Capability.UNIFORM_DISCRETE,
                solver.Capability.LOG_UNIFORM_DISCRETE,
                solver.Capability.CATEGORICAL,
                solver.Capability.CONDITIONAL,
                solver.Capability.CONCURRENT,
                solver.Capability.MULTI_OBJECTIVE,
            },
        )
Esempio n. 2
0
 def specification(self) -> solver.SolverSpec:
     return solver.SolverSpec(name="Random Search")