luckyrobots 0.1.71__py3-none-any.whl → 0.1.73__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,77 +0,0 @@
1
- """
2
- Domain randomization configuration for physics parameters.
3
-
4
- This model maps to the DomainRandomizationConfig proto message in agent.proto.
5
- """
6
-
7
- from typing import Optional
8
- from pydantic import BaseModel, Field, ConfigDict
9
-
10
-
11
- class DomainRandomizationConfig(BaseModel):
12
- """Domain randomization configuration for physics parameters.
13
-
14
- All range fields are [min, max] tuples. None/empty means "use defaults".
15
-
16
- Usage:
17
- randomization_cfg = DomainRandomizationConfig(
18
- friction_range=(0.5, 1.5),
19
- mass_scale_range=(0.8, 1.2),
20
- joint_position_noise=0.05,
21
- )
22
- client.reset_agent(randomization_cfg=randomization_cfg)
23
- """
24
-
25
- model_config = ConfigDict(frozen=True)
26
-
27
- # Initial state randomization
28
- pose_position_noise: Optional[tuple[float, float, float]] = Field(
29
- default=None, description="[x, y, z] position noise std"
30
- )
31
- pose_orientation_noise: Optional[float] = Field(
32
- default=None, description="Orientation noise std (radians)"
33
- )
34
- joint_position_noise: Optional[float] = Field(
35
- default=None, description="Joint position noise std"
36
- )
37
- joint_velocity_noise: Optional[float] = Field(
38
- default=None, description="Joint velocity noise std"
39
- )
40
-
41
- # Physics parameters (all [min, max] ranges)
42
- friction_range: Optional[tuple[float, float]] = Field(
43
- default=None, description="Surface friction coefficient [min, max]"
44
- )
45
- restitution_range: Optional[tuple[float, float]] = Field(
46
- default=None, description="Bounce/restitution coefficient [min, max]"
47
- )
48
- mass_scale_range: Optional[tuple[float, float]] = Field(
49
- default=None, description="Body mass multiplier [min, max]"
50
- )
51
- com_offset_range: Optional[tuple[float, float]] = Field(
52
- default=None, description="Center of mass offset [min, max]"
53
- )
54
-
55
- # Motor/actuator randomization
56
- motor_strength_range: Optional[tuple[float, float]] = Field(
57
- default=None, description="Motor strength multiplier [min, max]"
58
- )
59
- motor_offset_range: Optional[tuple[float, float]] = Field(
60
- default=None, description="Motor position offset [min, max]"
61
- )
62
-
63
- # External disturbances
64
- push_interval_range: Optional[tuple[float, float]] = Field(
65
- default=None, description="Time between pushes [min, max]"
66
- )
67
- push_velocity_range: Optional[tuple[float, float]] = Field(
68
- default=None, description="Push velocity magnitude [min, max]"
69
- )
70
-
71
- # Terrain configuration
72
- terrain_type: Optional[str] = Field(
73
- default=None, description="Terrain type identifier"
74
- )
75
- terrain_difficulty: Optional[float] = Field(
76
- default=None, description="Terrain difficulty level"
77
- )