Skip to content

Environment reference

Twenty-four environments, every one a target MDP: the objective is to reach and hold a subset of the state space against disturbances, not to reach a goal and stop.

Every environment implements the same interface, so the table below is the whole of what differs between them:

  • Observation / Action are the array shapes.
  • Tracked is the quantity the target applies to, exposed at env.obs_value_index with its setpoint at env.obs_target_index, and named by env.tracked_names.
  • PID / MPC say whether a baseline ships. Where one does not, the registry records why in baselines_note rather than leaving it silent, and the same note qualifies a shipped one that needs it (patrol_bearing_only's MPC is a full-state bound).
  • Physics links the environment's contract: sourced parameters, published validation targets asserted by tests, and quantified known deviations.

Load any of them by registry name, on the configuration it is scored on:

import target_gym as tg

env, params = tg.make("boiler_drum")

To pick one by what you want to test, see Choosing an environment.

Aircraft

Environment Cite as Observation Action Tracked PID MPC Physics
plane plane-v2 (10,) (2,) altitude (m) yes yes contract
plane_energy plane_energy-v4 (10,) (2,) altitude (m) yes yes contract
plane_sine plane_sine-v2 (10,) (2,) altitude (m) yes yes contract
plane3d_heading plane3d_heading-v4 (15,) (3,) altitude (m) yes yes contract
plane3d_circle plane3d_circle-v3 (17,) (3,) altitude (m) yes yes contract
plane3d_racetrack plane3d_racetrack-v4 (21,) (3,) altitude (m) yes yes contract
plane3d_figure8 plane3d_figure8-v4 (21,) (3,) distance to path (m) yes yes contract
patrol patrol-v3 (26,) (3,) slot error (m) yes yes contract
patrol_bearing_only patrol_bearing_only-v3 (21,) (3,) measured range (m) yes yes contract
formation formation-v2 (74,) (9,) lead altitude (m), wingman 0 slot error (m), wingman 1 slot error (m) yes yes contract

patrol_bearing_only -- The PID is a lead-state estimator feeding the same formation hold the full-observation variant uses. Range with azimuth and elevation is a complete relative-position measurement, so the only unobservable quantity is the lead's heading, which the slot needs because it is expressed in the lead's frame; the estimator takes the lead's velocity from the follower's own and the change in the relative position, and its heading from that track less the crab the follower flies in the same air. The MPC slot holds patrol's oracle reading the true state, so it is a full-state bound, not a bearing-only controller. On a task defined by what the observation withholds, its score measures information and control together: what the hidden lead state is worth plus what a policy leaves on the table. It never reads the observation, so its per-step costs equal patrol's seed for seed.

formation -- The PID flies the lead seat as a formation lead: the 3D heading task's course hold and pitch on height, aimed at the heading the route commands, at a set power, so its wingmen have a steady reference. Each wingman seat flies the patrol's formation hold. The MPC slot is the patrol oracle's design applied to the whole formation: the patrol's lead autopilot in the lead seat and its twin-autopilot law in each wingman seat, with one residual planner over every seat on the team cost.

Process Control

Environment Cite as Observation Action Tracked PID MPC Physics
cstr cstr-v3 (3,) (1,) C_a (mol/L) yes yes contract
first_order first_order-v3 (2,) (1,) x yes yes contract
four_tank four_tank-v3 (6,) (2,) h1 (m), h2 (m) yes yes contract
ph_neutralization ph_neutralization-v2 (3,) (1,) pH yes yes contract
distillation distillation-v3 (7,) (2,) yD (mole fraction), xB (mole fraction) yes yes contract
unstable_cstr unstable_cstr-v2 (4,) (1,) C_a (mol/L) yes yes contract

Industrial / Energy

Environment Cite as Observation Action Tracked PID MPC Physics
glass_furnace glass_furnace-v2 (5,) (1,) crown temperature (K) yes yes contract
reactor reactor-v3 (4,) (1,) neutron power (normalised) yes yes contract
hvac hvac-v2 (7,) (1,) zone air temperature (deg C) yes yes contract
cement_kiln cement_kiln-v3 (8,) (2,) discharge free lime (%) yes yes contract
boiler_drum boiler_drum-v2 (7,) (2,) drum level (m), drum pressure (bar) yes yes contract
compressor_surge compressor_surge-v2 (7,) (2,) header pressure (kPa) yes yes contract

Renewable Energy

Environment Cite as Observation Action Tracked PID MPC Physics
wind_turbine wind_turbine-v2 (5,) (2,) electrical power (MW) yes yes contract
battery battery-v2 (5,) (1,) delivered power (MW) yes yes contract