Update GeMOSA v4

This commit is contained in:
D-X-Y
2021-05-27 17:30:44 +08:00
parent 1ce0b80776
commit b6e11c6360
8 changed files with 147 additions and 39 deletions

View File

@@ -3,13 +3,13 @@ from .synthetic_utils import TimeStamp
from .synthetic_env import SyntheticDEnv
from .math_core import LinearSFunc
from .math_core import LinearDFunc
from .math_core import QuadraticDFunc, SinQuadraticDFunc
from .math_core import QuadraticDFunc, SinQuadraticDFunc, BinaryQuadraticDFunc
from .math_core import (
ConstantFunc,
ComposedSinSFunc as SinFunc,
ComposedCosSFunc as CosFunc,
)
from .math_core import GaussianDGenerator
from .math_core import UniformDGenerator, GaussianDGenerator
__all__ = ["TimeStamp", "SyntheticDEnv", "get_synthetic_env"]
@@ -77,8 +77,21 @@ def get_synthetic_env(total_timestamp=1600, num_per_task=1000, mode=None, versio
)
dynamic_env.set_regression()
elif version.lower() == "v4":
l_generator = ConstantFunc(-2)
r_generator = ConstantFunc(2)
data_generator = UniformDGenerator([l_generator] * 2, [r_generator] * 2)
time_generator = TimeStamp(
min_timestamp=0, max_timestamp=max_time, num=total_timestamp, mode=mode
)
oracle_map = BinaryQuadraticDFunc(
params={
0: SinFunc(params={0: 1, 1: 3, 2: 0}), # sin(3 * t)
1: CosFunc(params={0: 1, 1: 6, 2: 0}), # cos(6 * t)
2: ConstantFunc(0),
}
)
dynamic_env = SyntheticDEnv(
data_generator, oracle_map, time_generator, num_per_task, noise=0.05
data_generator, oracle_map, time_generator, num_per_task, noise=None
)
dynamic_env.set_classification(2)
else: