Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release candiadate #2310

Merged
merged 74 commits into from
Dec 21, 2019
Merged
Changes from 1 commit
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
076e4e2
Windows compatibility changes
jackbart94 Dec 12, 2019
6f9cfbe
Windows compatibility changes pt2
jackbart94 Dec 12, 2019
fd9a4c1
Updated docs regarding Traffic Manager
marcgpuig Dec 12, 2019
a578ef0
Fixed Import folder in gitignore
marcgpuig Dec 12, 2019
2f16886
Namespaces fix
jackbart94 Dec 13, 2019
053f92e
WIP:TM modified to run synchronously with carla
pravinblaze Dec 13, 2019
40a4e66
Synchronised all stages of TrafficManager
pravinblaze Dec 14, 2019
b4dde3f
Fix for LibCarla build error
pravinblaze Dec 14, 2019
feb4ec9
Fixed collision handling with unregistered actors
pravinblaze Dec 14, 2019
3b5041c
WIP:Geodesic map gridding
pravinblaze Dec 15, 2019
e2c445b
WIP:Integrating geodesic griding with localization and collision stage
pravinblaze Dec 16, 2019
da631b3
Moved unregistered actor handling logic
pravinblaze Dec 16, 2019
552254d
Modified PerformanceDiagnostics class
pravinblaze Dec 17, 2019
b0b56b1
Fixed incorrect overlap vehicle accumulation
pravinblaze Dec 17, 2019
a873468
WIP:Improvements to collision stage throughput
pravinblaze Dec 17, 2019
3be07f0
Fixed incorrect memory handoff between stages
pravinblaze Dec 18, 2019
1c84331
Seg fault fixes for lane changes
jackbart94 Dec 18, 2019
9a19095
Removed logic for altering world settings from traffic manager
pravinblaze Dec 18, 2019
4cdea73
Fix type int to int64_t for windows compilation
bernatx Dec 18, 2019
c81871c
Fixing command batch autopilot
bernatx Dec 18, 2019
978c7ac
Set timeout for RPC calls to 5 seconds instead of 1 second, to get ti…
bernatx Dec 17, 2019
a7db151
Disable autopilot in server
bernatx Dec 18, 2019
bc91ed7
Fix uint to uint64_t for windows
bernatx Dec 18, 2019
0b030ff
Fix variable type and add parenthesis
bernatx Dec 18, 2019
eaf9be4
Merge branch 'bernatx/praveen' into praveen/traffic_manager
bernatx Dec 18, 2019
a29c182
Pipeline changes + cleaning syncr changes
jackbart94 Dec 18, 2019
264c0a4
Velocity dependent pedestrian bbox extension
pravinblaze Dec 19, 2019
2048bbf
Fixing segmentation fault in AssignLaneChange
pravinblaze Dec 19, 2019
ebcff0a
Fixed S.F when forcing lane changes
glopezdiest Dec 19, 2019
1c80603
Added UnNotifyWheeledVehicle()
marcgpuig Dec 19, 2019
53e4f93
Set some limits to the parameters.
glopezdiest Dec 19, 2019
54897ed
Merge branch 'main_traffic_manager' of https://github.com/carla-simul…
glopezdiest Dec 19, 2019
5fc0209
Fixed TM delete process
doterop Dec 19, 2019
f1a6958
Fixed merge error
doterop Dec 19, 2019
d7c0d3a
WIP PID Changes
jackbart94 Dec 19, 2019
84eeaf1
WIP:Improved Geodesic Grid Implementation
pravinblaze Dec 20, 2019
046fd59
Deleting redundant class files
pravinblaze Dec 20, 2019
e369b1a
WIP: Fixing no control flow
pravinblaze Dec 20, 2019
ba14c78
WIP:TM modified to run synchronously with carla
pravinblaze Dec 13, 2019
7634955
Synchronised all stages of TrafficManager
pravinblaze Dec 14, 2019
e5393ed
Fix for LibCarla build error
pravinblaze Dec 14, 2019
ae2b364
Fixed collision handling with unregistered actors
pravinblaze Dec 14, 2019
472ff61
WIP:Geodesic map gridding
pravinblaze Dec 15, 2019
ccb6f21
WIP:Integrating geodesic griding with localization and collision stage
pravinblaze Dec 16, 2019
cab20d7
Moved unregistered actor handling logic
pravinblaze Dec 16, 2019
77af96e
Modified PerformanceDiagnostics class
pravinblaze Dec 17, 2019
3c31c08
Fixed incorrect overlap vehicle accumulation
pravinblaze Dec 17, 2019
a1ab802
WIP:Improvements to collision stage throughput
pravinblaze Dec 17, 2019
77c738e
Fixed incorrect memory handoff between stages
pravinblaze Dec 18, 2019
ecb1fb8
Seg fault fixes for lane changes
jackbart94 Dec 18, 2019
a21b2e5
Removed logic for altering world settings from traffic manager
pravinblaze Dec 18, 2019
837576c
Fix type int to int64_t for windows compilation
bernatx Dec 18, 2019
67482f0
Fixing command batch autopilot
bernatx Dec 18, 2019
d5c52fd
Set timeout for RPC calls to 5 seconds instead of 1 second, to get ti…
bernatx Dec 17, 2019
f51c64a
Disable autopilot in server
bernatx Dec 18, 2019
d5e3cd5
Fix uint to uint64_t for windows
bernatx Dec 18, 2019
b2bb32b
Fix variable type and add parenthesis
bernatx Dec 18, 2019
835643a
Pipeline changes + cleaning syncr changes
jackbart94 Dec 18, 2019
afbffad
Velocity dependent pedestrian bbox extension
pravinblaze Dec 19, 2019
d613f1e
Fixing segmentation fault in AssignLaneChange
pravinblaze Dec 19, 2019
1d0bd98
Fixed S.F when forcing lane changes
glopezdiest Dec 19, 2019
0fe22c8
Added UnNotifyWheeledVehicle()
marcgpuig Dec 19, 2019
4726b21
Set some limits to the parameters.
glopezdiest Dec 19, 2019
efcc8a5
Fixed TM delete process
doterop Dec 19, 2019
efa31f1
Fixed merge error
doterop Dec 19, 2019
9caf585
WIP PID Changes
jackbart94 Dec 19, 2019
4b8f1a9
Modified InMemoryMap to use cc::Map::GenerateWaypoints
pravinblaze Dec 20, 2019
e074452
Turning off redundant collision avoidance algorithm
pravinblaze Dec 20, 2019
0464442
Fixing for windows compilation
bernatx Dec 20, 2019
1f8d017
Commit for testing
jackbart94 Dec 20, 2019
5c6281b
Final bug fixes
jackbart94 Dec 21, 2019
c2ea71b
Merge branch 'praveen/traffic_manager' into release_candiadate
marcgpuig Dec 21, 2019
40c00c4
Updated content version
marcgpuig Dec 21, 2019
279d74c
Adjust bounding box extension for walkers
jackbart94 Dec 21, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fixing segmentation fault in AssignLaneChange
(cherry picked from commit 57da8b5)
  • Loading branch information
pravinblaze authored and bernatx committed Dec 20, 2019
commit d613f1e781777e0f65436bdd7dba85296731d03d
67 changes: 34 additions & 33 deletions LibCarla/source/carla/trafficmanager/LocalizationStage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -393,48 +393,49 @@ namespace LocalizationConstants {
// This is totally ignoring unregistered actors during lane changes.
// Need to fix this. Only a temporary solution.
if (vehicle_id_to_index.find(other_vehicle_id) != vehicle_id_to_index.end()) {

const Buffer other_buffer = buffer_list->at(vehicle_id_to_index.at(other_vehicle_id));

const SimpleWaypointPtr& other_current_waypoint = other_buffer.front();
const cg::Location other_location = other_current_waypoint->GetLocation();

bool distant_lane_availability = false;
const auto other_neighbouring_lanes = {
other_current_waypoint->GetLeftWaypoint(),
other_current_waypoint->GetRightWaypoint()};
if (other_current_waypoint != nullptr) {
for (auto& candidate_lane_wp: other_neighbouring_lanes) {
if (candidate_lane_wp != nullptr &&
track_traffic.GetPassingVehicles(candidate_lane_wp->GetId()).size() == 0 &&
vehicle_velocity < HIGHWAY_SPEED) {
distant_lane_availability = true;
const Buffer& other_buffer = buffer_list->at(vehicle_id_to_index.at(other_vehicle_id));

if (!other_buffer.empty()) {
const SimpleWaypointPtr& other_current_waypoint = other_buffer.front();
const cg::Location other_location = other_current_waypoint->GetLocation();

bool distant_lane_availability = false;
const auto other_neighbouring_lanes = {
other_current_waypoint->GetLeftWaypoint(),
other_current_waypoint->GetRightWaypoint()};
if (other_current_waypoint != nullptr) {
for (auto& candidate_lane_wp: other_neighbouring_lanes) {
if (candidate_lane_wp != nullptr &&
track_traffic.GetPassingVehicles(candidate_lane_wp->GetId()).size() == 0 &&
vehicle_velocity < HIGHWAY_SPEED) {
distant_lane_availability = true;
}
}
}

const cg::Vector3D reference_heading = current_waypoint->GetForwardVector();
const cg::Vector3D other_heading = other_current_waypoint->GetForwardVector();
const cg::Vector3D reference_heading = current_waypoint->GetForwardVector();
const cg::Vector3D other_heading = other_current_waypoint->GetForwardVector();

if (other_vehicle_id != actor_id &&
!current_waypoint->CheckJunction() &&
!other_current_waypoint->CheckJunction() &&
cg::Math::Dot(reference_heading, other_heading) > MAXIMUM_LANE_OBSTACLE_CURVATURE) {
if (other_vehicle_id != actor_id &&
!current_waypoint->CheckJunction() &&
!other_current_waypoint->CheckJunction() &&
cg::Math::Dot(reference_heading, other_heading) > MAXIMUM_LANE_OBSTACLE_CURVATURE) {

const float squared_vehicle_distance = cg::Math::DistanceSquared(other_location, vehicle_location);
const float deviation_dot = DeviationDotProduct(vehicle, other_location);
const float squared_vehicle_distance = cg::Math::DistanceSquared(other_location, vehicle_location);
const float deviation_dot = DeviationDotProduct(vehicle, other_location);

if (deviation_dot > 0.0f) {
if (deviation_dot > 0.0f) {

if (distant_lane_availability &&
squared_vehicle_distance > std::pow(MINIMUM_LANE_CHANGE_DISTANCE, 2)) {
if (distant_lane_availability &&
squared_vehicle_distance > std::pow(MINIMUM_LANE_CHANGE_DISTANCE, 2)) {

need_to_change_lane = true;
} else if (squared_vehicle_distance < std::pow(MINIMUM_LANE_CHANGE_DISTANCE, 2)) {
need_to_change_lane = true;
} else if (squared_vehicle_distance < std::pow(MINIMUM_LANE_CHANGE_DISTANCE, 2)) {

need_to_change_lane = false;
abort_lane_change = true;
}
need_to_change_lane = false;
abort_lane_change = true;
}

}
}
}
}
Expand Down