Actions

Similarly to observations, a variety of action types can be used within each environment. These are defined in the action module. Each environment comes with a default action type, that can be customized using environment configurations. As an example:

import gymnasium as gym

env = gym.make('flyer-v1')
env.configure({
    "action": {
        "type": "ContinousAction"
    }
})
env.reset()

Continuous Actions

The ContinuousAction type allows for direct control of the agents controls either with a FlyingVehicle or AircraftVehicle. These commands include:

Control Surface

Nomenclature

Range

Unit

Elevator

\(\delta_{\eta}\)

[-1.0, 1.0]

[-]

Aileron

\(\delta_{\epsilon}\)

[-1.0, 1.0]

[-]

Thrust Lever Angle (TLA)

\(\delta_{tla}\)

[0.0, 1.0]

[-]

Controlled Actions

The ControlledAction type is a higher order action type to control the aircraft’s heading, altitude, and speed with a FlyingVehicle. These commands include:

Controlled Parameter

Nomenclature

Range

Unit

Heading

\(\theta\)

[\(- \pi , \pi \)]

[\(rads\)]

Altitude

\(H\)

[0.0, 10,000]

[\(m\)]

Airspeed

\(V_{\infty}\)

[0.0, 300.0]

[\(m/s\)]

Pursuit Actions

The PursuitAction type is a higher order action type used to navigate a FlyingVehicle to a specific 2D point at a fixed altitude and speed. These commands include:

Controlled Parameter

Nomenclature

Range

Unit

GoalPos

\(s_{g}\)

[-]

[\(m\)]

Altitude

\(H\)

[0.0, 10,000]

[\(m\)]

Airspeed

\(V_{\infty}\)

[0.0, 300.0]

[\(m/s\)]

API