Parking¶
A goal-conditioned continuous control task in which the ego-vehicle must park in a given space with the appropriate heading.
Usage¶
env = gym.make("parking-v0")
Default configuration¶
{
"observation": {
"type": "KinematicsGoal",
"features": ['x', 'y', 'vx', 'vy', 'cos_h', 'sin_h'],
"scales": [100, 100, 5, 5, 1, 1],
"normalize": False
},
"action": {
"type": "ContinuousAction"
},
"simulation_frequency": 15,
"policy_frequency": 5,
"screen_width": 600,
"screen_height": 300,
"centering_position": [0.5, 0.5],
"scaling": 7
"show_trajectories": False,
"render_agent": True,
"offscreen_rendering": False
}
More specifically, it is defined in:
API¶
- class highway_env.envs.parking_env.ParkingEnv(config: dict = None, render_mode: str | None = None)[source]¶
A continuous control environment.
It implements a reach-type task, where the agent observes their position and speed and must control their acceleration and steering so as to reach a given goal.
Credits to Munir Jojo-Verge for the idea and initial implementation.
- classmethod default_config() dict [source]¶
Default environment configuration.
Can be overloaded in environment implementations, or by calling configure(). :return: a configuration dict
- compute_reward(achieved_goal: ndarray, desired_goal: ndarray, info: dict, p: float = 0.5) float [source]¶
Proximity to the goal is rewarded
We use a weighted p-norm
- Parameters:
achieved_goal – the goal that was achieved
desired_goal – the goal that was desired
info (dict) – any supplementary information
p – the Lp^p norm used in the reward. Use p<1 to have high kurtosis for rewards in [0, 1]
- Returns:
the corresponding reward