ORCA#
Bases:
Behavior
Optimal Reciprocal Collision Avoidance (see http://gamma.cs.unc.edu/RVO2)
A wrapper of the open-source implementation from snape/RVO2
Registered properties:
time_horizon (float,
time_horizon
),effective_center (float,
is_using_effective_center
),treat_obstacles_as_agents (bool,
treat_obstacles_as_agents
)max_neighbors (int,
max_number_of_neighbors
)
State:
GeometricState
Contruct a new instance
- Parameters:
kinematics – The kinematics
radius – The radius
- Type:
Determines if an effective center is being used.
Using an effective center placed with an offset towards the front, allows to consider the kinematics as holonomic instead of a two- wheeled differential drive. See
J. Snape, J. van den Berg, S. J. Guy, and D. Manocha, “Smooth and collision-free navigation for multiple robots under differential-drive constraints,” in 2010 IEEE/RSJ International Conference on Intelligent, Robots and Systems, 2010, pp. 4584-4589.
with
D=L/2
.Only possibly true if the kinematics is wheeled and constrained.
- Returns:
True if using effective center, False otherwise.
- Type:
Gets the ORCA lines computed during the last update
- Returns:
The ORCA lines.
- Type:
The maximal number of neighbors
- Type:
The time horizon applied to static linear obstacles. collisions predicted to happen after this time are ignored
- Type:
The time horizon. collisions predicted to happen after this time are ignored
- Type:
Whether to treat obstacles as static, disc-shaped, [rvo] agents. else will treat them as squared obstacles.