Extended ad::rss::situation::SituationType by Unstructured value
Extended ad::rss::situation::VehicleState by ad::rss::world::ObjectType and ad::rss::world::ObjectState members
Extended ad::rss::state::ProperResponse by ad::rss::state::UnstructuredSceneResponse and ad::rss::state::HeadingRangeVector members
Renamed ad::rss::world::AccelerationRestriction -> ad::rss::state::AccelerationRestriction and integrated it
as a member into the ad::rss::state::ProperResponse.
Reflected this merge of the data types by renaming ad::rss::core::RssCheck::calculateAccelerationRestriction()
to ad::rss::core::RssCheck::calculateProperResponse() and adapting the function parameters accordingly.
Same applies for ad::rss::core::RssResponseResolving::provideProperResponse().
Extended ad::rss::state::RssState by ad::rss::situation::SituationType and ad::rss::state::UnstructuredSceneRssState members.
Extended ad::rss::state::RssStateSnapshot by ad::rss::state::UnstructuredSceneStateInformation member
Extended ad::rss::world::ObjectType by Pedestrian value
Extended ad::rss::world::Object by ::ad::rss::world::ObjectState member
Extended ad::rss::world::RssDynamics by ad::rss::world::UnstructuredSettings member
Extended ad::rss::map::RssSceneCreation::appendScenes() parameters by ad::physics::AngularVelocity of ego and object
and provide the mode of operation ad::rss::map::RssMode (NotRelevant, Structured, Unstructured)
Extended ad::rss::map::RssSceneCreator and ad::rss::map::RssObjectConversion classes to support unstructured scenes
Harmonized physics calcualions
Removed ad::rss::situation::CoordinateSystemAxis type
Refactored and extended calculations within Physics.hpp for unstructured cases
Made RssFormular.hpp public
Fixed consideration of maximum speed on accelerating:
Renamed ad::rss::world::RssDynamics::maxSpeed member to maxSpeedOnAcceleration to clarify that it's not the general max speed
of the vehicle, but the maximum speed to be considered while accelerating within the response time.
Fixed the calcualtions to consider the case that the current speed before the acceleration can already be higher than
the maxSpeedOnAcceleration parameter and in this case just no acceleration takes place
In preparation of the integration of unstructured scenes:
Deceleration values are given as negative values from now on
Remove separate Response Transformation to ease the merge of situations
On LateralResponse::None, the minimum value is not brakeMin anymore (that value was in each case irrelevant)
Reworked scene creation
Made RssSceneCreation a class with supporting classes RssObjectConversion and RssSceneCreator
to support multi-threaded scene appending.
Allow for scene specific ego vehicle RSS dynamics
Handle empty ego route correctly
Handle use-case: ego vehicle at back
Handle use-case: merging route
Restricting routes to relevant scene region to prevent from inaccourate relative distances
Ensure that NotRelevantScene also provides filled occupied region content
Workaround for route start within intersections: Use objectRoute intersection in intersection scenes if ego route
predictions don't provide intersection data at all (to be solved finally within ad::map::intersection::Intersection() class)
Massively extended scene creation unit tests
Make use of ad::map::route::getENUHeadingOfRoute() for more accurate object heading on route calculation
Renamed Math -> Physics and made header public
Adaptions for python binding built to support newer boost versions as well as multiple python versions at the same time
Introduced more straight forward interface on intermediate functions to support better integration of the single calls into an external
framework: SituationSnapshot, RssStateSnapshot, ProperResponse. Moved the timeIndex from the individual elements into these high level
types to support the propagation of the timeIndex even if there are no other vehicles in the surrounding.
Did some renaming (e.g. ResponseState->RssState, ResponseStateVector->RssStateVector, ResponseInformation->RssStateInformation,
ResponseEvaluator->RssStateEvaluator) to clarify by naming that the individual calcuated states only consider a snapshot in time without
analysis of the dangerous threshold. The ProperResponse became its own type and got an own overall isSafe flag and a list of dangerousObjects.
Added ObjectId to Situation and RssState to preserve the mapping to the originating object which was lost with the introduction of multiple
situations per object.
Increase amount of allowed situations because with multiple situations per object the amount of 100 might be hit too fast.
Improved merge of input scenarios to facilitate scene variations of the same situation
RssIntersectionChecker: since new situations may pop up when e.g. a previously occluded object is entering the field of view, one cannot guarantee that a previous safe state can be found. In this case, we have to brake instead of returning false.
Made some RssState operations available via public interface
Add option to select library build type (static/dynamic)
Allow multiple situations per ego vehicle/object pair: Add RssSituationIdProvider and made RssSituationExtraction a class holding RssSituationIdProvider instance to keep track of the different situation classes
Renamed world::Dynamics in world::RssDynamics, extended it by responseTime and separated it from world::Object; world::Scene got the objectRssDynamics and world::WorldModel the egoVehicleRssDynamics each as separate elements
Extended world::Scene by egoVehicle object description as occupied regions and velocity are actually scene dependent (e.g. when considering different vehicle predictions)
Small updates to be compliant to clang-tidy-3.8 static code analysis
Added basic FAQ
Added official support for Ubuntu 14.04 (GCC 4.8, Clang 3.4 and 3.8/3.9)
Added official support for Ubuntu 18.04 (GCC 7.3)
Download/Build gtest on the fly rather than using the version from the OS
Fixed documentation of RoadArea LaneSegment ordering (left -> right)
Fixed isSafe flags of the resolved response
Renamed some internal files from 'RSS...' -> 'Rss...' to have camel-case everywhere
Added ResponseInformation to provide more insight into intermediate result calculation