2.2 KiB
AD Responsibility Sensitive Safety model (RSS) integration
This feature is a work in progress, only a Linux build variant is available.
This feature integrates the C++ Library for Responsibility Sensitive Safety into the CARLA Client library.
As the ad-rss-lib library is licensed under LGPL-2.1-only, building the variant which includes this feature and therefor the library might have some implications to the outgoing license of the resulting binary!
It provides basic implementations of both an RssSensor, the situation analysis and response generation by the ad-rss-lib and an basic RssRestrictor class which applies the restrictions to given vehicle commands.
The RssSensor results can be visualized within CARLA.
Please see C++ Library for Responsibility Sensitive Safety documentation and especially the Background documentation for further details.
Compilation
RSS integration is a Linux-only build variant. Please see Build System for general information. LibCarla with RSS has the be explicitly compiled by
make LibCarla.client.rss
The PythonAPI with RSS is built by
make PythonAPI.rss
Current state
RssSensor
The RssSensor is currently only considering vehicles within the same road segment, but on all lanes within that segment. Intersections are not yet supported!RssRestrictor
The current implementation of the RssRestrictor checks and potentially modifies a given *VehicleControl* generated by e.g. and Automated Driving stack or user imput via a *manual_control* client (see the *PythonAPI/examples/manual_control_rss.py*).Due to the structure of VehicleControl (just throttle, brake, streering values for the car under control), the Restrictor modifies and sets these values to best reach the desired accelerations or decelerations by a given restriction. Due to car physics and the simple control options these might not be met.