Behavior

Behavior#

Schema#

$id: http://navground/behavior
$ref: behavior_register
$schema: https://json-schema.org/draft/2020-12/schema
properties:
  heading:
    enum:
    - target_point
    - target_angle
    - target_angular_speed
    - velocity
    - idle
  horizon:
    minimum: 0
    type: number
  kinematics:
    $ref: kinematics
  modulations:
    items:
      $ref: behavior_modulation
    type: array
  optimal_angular_speed:
    minimum: 0
    type: number
  optimal_speed:
    minimum: 0
    type: number
  path_look_ahead:
    minimum: 0
    type: number
  path_tau:
    minimum: 0
    type: number
  radius:
    minimum: 0
    type: number
  rotation_tau:
    minimum: 0
    type: number
  safety_margin:
    minimum: 0
    type: number
  social_margin:
    properties:
      default:
        type: number
      modulation:
        properties:
          type:
            enum:
            - zero
            - constant
            - linear
            - quadratic
            - logistic
          upper:
            minimum: 0
            type: number
        type: object
        unevaluatedProperties: false
      values:
        type: object
    type: object
    unevaluatedProperties: false
  type:
    type: string
type: object
unevaluatedProperties: false

Register#

$id: http://navground/behavior_register
$schema: https://json-schema.org/draft/2020-12/schema
anyOf:
- properties:
    type:
      const: ''
- properties:
    environment:
      default: ''
      description: 'The type on environment state: "Geometric" for GeometriState,
        "Sensing" for SensingState. Other values correspond to a null state.'
      type: string
    type:
      const: Dummy
- properties:
    aperture:
      default: 3.14159274
      description: Aperture angle
      minimum: 0
      type: number
    barrier_angle:
      default: 1.57079637
      description: Barrier angle
      minimum: 0
      type: number
    epsilon:
      default: 0
      description: Epsilon
      type: number
    eta:
      default: 0.5
      description: Eta
      exclusiveMinimum: 0
      type: number
    resolution:
      default: 101
      description: Resolution
      exclusiveMinimum: 0
      type: integer
    tau:
      default: 0.125
      description: Tau
      minimum: 0
      type: number
    type:
      const: HL
- properties:
    max_neighbors:
      default: 1000
      description: The maximal number of [HRVO] neighbors
      minimum: 0
      type: integer
    type:
      const: HRVO
    uncertainty_offset:
      default: 0
      description: Uncertainty offset
      type: integer
- properties:
    effective_center:
      default: false
      description: Whenever to use an effective center to handle non-holonomic kinematics
      type: boolean
    max_neighbors:
      default: 1000
      description: The maximal number of [RVO] neighbors
      minimum: 0
      type: integer
    static_time_horizon:
      default: 10
      description: Time horizon applied to static linear obstacles
      minimum: 0
      type: number
    time_horizon:
      default: 10
      description: Time horizon
      minimum: 0
      type: number
    treat_obstacles_as_agents:
      default: true
      description: Whenever to treat static obstacles as static [RVO] agents
      type: boolean
    type:
      const: ORCA
- properties:
    dummy:
      description: Am I dummy?
      readOnly: true
      type: boolean
    tired:
      default: false
      description: Am I tired?
      type: boolean
    type:
      const: PyDummy
- properties:
    c:
      default: 0.5
      description: Weight of 'non-in-sight' forces
      minimum: 0
      type: number
    phi:
      default: 1.75
      description: Field of sight half-length
      type: number
    step_duration:
      default: 1
      description: Step duration
      minimum: 0
      type: number
    tau:
      default: 0.5
      description: Relaxation time
      minimum: 0
      type: number
    type:
      const: SocialForce
    u_a:
      default: 10
      description: Obstacles potential amplitude
      type: number
    u_r:
      default: 0.200000003
      description: Obstacles potential length scale
      minimum: 0
      type: number
    v_a:
      default: 2.0999999
      description: Neighbors potential amplitude
      type: number
    v_r:
      default: 0.300000012
      description: Neighbors potential length scale
      minimum: 0
      type: number

Example#

type: HL
optimal_speed: 1.2
safety_margin: 0.2
horizon: 10
radius: 0.5
heading: target_point
social_margin:
  modulation:
    type: linear
    upper: 1.0
  values:
    1: 0.5
    2: 0.25
  default: 0.125