Esempio n. 1
0
def select_agent(name, domain, max_steps, _seed):
    if name is None or name == "kifddk-q":
        return methods.kifdd_q(
            domain,
            11.6543336229,
            threshold=88044,
            lambda_=0.43982644088,
            initial_learn_rate=0.920244401,
            boyan_N0=64502.0,
            kernel="linf_triangle_kernel",
        )
    else:
        raise NotImplementedError("Method {} is not supported".format(name))
Esempio n. 2
0
def select_agent(name, domain, max_steps, seed, **kwargs):
    if name is None or name == "fourier-q":
        return methods.fourier_q(domain, order=5)
    elif name == "fourier-sarsa":
        return methods.fourier_sarsa(domain, order=5)
    elif name == "ifdd-q":
        return methods.ifdd_q(domain)
    elif name == "ifdd-sarsa":
        return methods.ifdd_sarsa(domain)
    elif name == "kifdd-q":
        return methods.kifdd_q(domain)
    elif name == "kifdd-sarsa":
        return methods.kifdd_sarsa(domain)
    elif name == "rbfs-q":
        return methods.rbf_q(domain, seed=seed)
    elif name == "rbfs-sarsa":
        return methods.rbf_q(domain, seed=seed)
    else:
        raise NotImplementedError()
Esempio n. 3
0
def select_agent(name, domain, max_steps, seed, **kwargs):
    if name is None or name == "ifdd-q":
        return methods.ifdd_q(
            domain,
            discretization=47,
            threshold=77.0,
            lambda_=0.9,
            initial_learn_rate=0.05,
            boyan_N0=11,
            ifddplus=True,
        )
    elif name == "kifdd-q":
        return methods.kifdd_q(
            domain,
            kernel_resolution=13.14,
            threshold=0.21,
            lambda_=0.9,
            initial_learn_rate=0.07,
            boyan_N0=37.0,
            kernel="gaussian_kernel",
        )
    elif name == "tabular-q":
        return methods.tabular_q(
            domain,
            lambda_=0.9,
            initial_learn_rate=0.26,
            boyan_N0=119,
            incremental=True,
        )
    elif name == "rbf-q":
        return methods.rbf_q(
            domain,
            seed,
            num_rbfs=5000,
            resolution=8,
            initial_learn_rate=0.26,
            lambda_=0.9,
            boyan_N0=2120,
        )
    else:
        raise NotImplementedError("Method {} is not supported".format(name))
Esempio n. 4
0
def select_agent(name, domain, max_steps, seed):
    if name is None or name == "lspi":
        return methods.tabular_lspi(domain, max_steps)
    elif name == "tabular-q":
        return methods.tabular_q(domain)
    elif name == "tabular-sarsa":
        return methods.tabular_sarsa(domain)
    elif name == "ifdd-q":
        return methods.ifdd_q(
            domain,
            discretization=18,
            lambda_=0.42,
            boyan_N0=202,
            initial_learn_rate=0.7422,
        )
    elif name == "kifdd-q":
        return methods.kifdd_q(
            domain,
            8.567677,
            threshold=0.0807,
            lambda_=0.52738,
            initial_learn_rate=0.4244,
            boyan_N0=389.56,
        )
    elif name == "rbfs-q":
        return methods.rbf_q(
            domain,
            seed,
            num_rbfs=96,
            resolution=21,
            initial_learn_rate=0.6633,
            lambda_=0.1953,
            boyan_N0=13444.0,
        )
    else:
        raise NotImplementedError()