def default_pert(): return DomainRandomizer( NormalDomainParam(name='mass', mean=1.2, std=0.1, clip_lo=10, clip_up=100), UniformDomainParam(name='special', mean=0, halfspan=42, clip_lo=-7.4, roundint=True), NormalDomainParam(name='length', mean=4, std=0.6, clip_up=50.1), UniformDomainParam(name='time_delay', mean=13, halfspan=6, clip_up=17, roundint=True), MultivariateNormalDomainParam(name='multidim', mean=10*to.ones((2,)), cov=2*to.eye(2), clip_up=11) )
def default_randomizer(): return DomainRandomizer( NormalDomainParam(name="mass", mean=1.2, std=0.1, clip_lo=10, clip_up=100), UniformDomainParam(name="special", mean=0, halfspan=42, clip_lo=-7.4, roundint=True), NormalDomainParam(name="length", mean=4, std=0.6, clip_up=50.1), UniformDomainParam(name="time_delay", mean=13, halfspan=6, clip_up=17, roundint=True), MultivariateNormalDomainParam(name="multidim", mean=10 * to.ones((2,)), cov=2 * to.eye(2), clip_up=11), )
NormalDomainParam, UniformDomainParam, ) from pyrado.domain_randomization.domain_randomizer import DomainRandomizer DomainParam(name="a", mean=1) BernoulliDomainParam(name="b", val_0=2, val_1=5, prob_1=0.8) DomainRandomizer( NormalDomainParam(name="mass", mean=1.2, std=0.1, clip_lo=10, clip_up=100)) DomainRandomizer( NormalDomainParam(name="mass", mean=1.2, std=0.1, clip_lo=10, clip_up=100), UniformDomainParam(name="special", mean=0, halfspan=42, clip_lo=-7.4, roundint=True), NormalDomainParam(name="length", mean=4, std=0.6, clip_up=50.1), UniformDomainParam(name="time_delay", mean=13, halfspan=6, clip_up=17, roundint=True), MultivariateNormalDomainParam(name="multidim", mean=10 * to.ones((2, )), cov=2 * to.eye(2), clip_up=11), )
NormalDomainParam, UniformDomainParam, ) from pyrado.domain_randomization.utils import param_grid from pyrado.environments.sim_base import SimEnv @pytest.mark.parametrize( "dp", [ UniformDomainParam( name="", mean=3.0, halfspan=11.0, clip_lo=-5, clip_up=5), NormalDomainParam(name="", mean=10, std=1.0, clip_lo=9, clip_up=11), MultivariateNormalDomainParam(name="", mean=to.ones((2, 1)), cov=to.eye(2), clip_lo=-1, clip_up=1.0), MultivariateNormalDomainParam( name="", mean=10 * to.ones((2, )), cov=2 * to.eye(2), clip_up=11), BernoulliDomainParam(name="", val_0=2, val_1=5, prob_1=0.8), BernoulliDomainParam(name="", val_0=-3, val_1=5, prob_1=0.8, clip_up=4), ], ids=["U", "N", "MVN_v1", "MVN_v2", "B_v1", "B_v2"], ) @pytest.mark.parametrize("num_samples", [1, 5, 100]) def test_domain_param(dp, num_samples): # assert dp == dp fns = dp.get_field_names() assert fns is not None