Social margin#

Abstract modulation: maps a pair (margin, distance) to a margin.

A modulation that always return 0.

A modulation that leaves the margin unchanged

A modulation that linearly interpolate between 0 and the input margin, returning the input margin above upper_distance

Constructs a new instance.

Parameters:

upper_distance – The upper distance

A modulation that quadratically interpolates between 0 and the input margin, returning the input margin above upper_distance. The slope is 0 at distance 0.

A logistic modulation.

This class defines a modulated social margin that may be added to the safety margin around Neighbor for behaviors that uses the GeometricState. The social margin is assigned to the neighbor’s Neighbor.id and it is modulated by the neighbor current distance.

Constructs a new instance.

Parameters:

value – The default value of social margins

Get the value, ignoring type and distance

Returns:

The social margin

Returns the json-schema

Returns:

json-schema

Return type:

dict[str, typing.Any]

Set the default value, ignoring type.

Parameters:

value – The desired social margin

Type:

float

The maximal possible value across all types

Type:

navground.core.SocialMarginModulation

The modulation.