Skip to content

3D figure-8

3D airplane environment state, parameters, and transition logic.

Action space Box((3,)), all actions in [-1, 1]
Observation space Box((19,))
Tracked variable(s) altitude (m)
Episode length 400 steps (400 s at 1 s per step)
Import from target_gym import Plane3DFigureEight, PlaneParams3D
Cite as plane3d_figure8-v1

Action space

Actions are normalised to [-1, 1] and mapped onto the plant's real actuator range inside the environment.

# meaning min max
0 power -1 1
1 stick -1 1
2 aileron -1 1

Observation space

19 values. Indices (2,) carry the tracked variable(s) that the reward scores.

Rewards

See the environment's compute_reward.

Every environment in this suite scores on one contract: the reward is (tracking terms, multiplied) x (1 - weighted costs), bounded in [0, 1], and reaches 1 only while the target is held exactly. See Reward shaping.

Starting state

reset samples the initial condition and the target; state has 27 fields.

Episode end

Termination. See check_is_terminal.

Truncation. After 400 steps.

Baselines

A tuned PID ships with this environment.

Arguments

parameter default
delta_t 1
max_steps_in_episode 400
gravity 9.81
initial_mass 73500
thrust_output_at_sea_level 240000
air_density_at_sea_level 1.225
frontal_surface 12.6
wings_surface 122.6
C_x0 0.095
C_z0 0.9
initial_fuel_quantity 19088
specific_fuel_consumption 0.0175
power_response_rate 0.05
stick_response_rate 0.9
50 more, see the params dataclass