The problem
Planners usually treat perception outputs as certain, adding fixed safety margins. In reality object positions are noisy, some objects are missed and occluded areas may hide pedestrians. Fixed margins are either unsafe in poor perception conditions or overly cautious in good ones. A planner that reasons explicitly about uncertainty could balance safety and progress, but the risk estimates must be calibrated.
Objectives
- Model perception uncertainty: position covariance, existence probability and occlusion.
- Compute collision risk of candidate trajectories with chance-constrained or sampling methods.
- Plan with an explicit risk bound and handle occluded regions with phantom agents.
- Compare with deterministic fixed-margin and worst-case planners in simulation.
- Study calibration of the risk estimates against observed outcomes.
What you need
Tools and toolboxes
- Python — Planner, risk computation and evaluation.
- MATLAB — Scenario generation and sensor models with Automated Driving Toolbox; trackers from Sensor Fusion and Tracking Toolbox.
- Sensor Fusion and Tracking Toolbox — Trackers such as trackerJPDA that provide state covariances and existence probabilities.
- Automated Driving Toolbox — drivingScenario with occluding objects and radar or vision sensor models.
- CARLA (optional) — Additional closed-loop tests with simulated sensors and pedestrians.
Software
- Python 3 with NumPy and SciPy
- MATLAB with Automated Driving Toolbox and Sensor Fusion and Tracking Toolbox
- CARLA (optional)
Extra parts and data
None beyond the software above.
Key concepts
- Chance constraint
- A constraint that must hold with at least a given probability, such as collision probability below a bound along the trajectory.
- Existence probability
- A tracker's estimate that a track corresponds to a real object; low values indicate possible false tracks, and missed objects are not represented at all.
- Phantom agents
- Hypothetical road users placed in occluded areas, such as behind parked vehicles, so the planner keeps the ability to stop if one emerges.
- Risk calibration
- Checking whether predicted collision probabilities match observed collision or near-miss frequencies over many trials.
Step-by-step guide
- 1
Frame the research questions
Review chance-constrained planning, occlusion-aware planning and uncertainty-aware perception. Pose questions: does explicit risk bounding achieve the same safety as worst-case planning with better progress, and how well calibrated are the risk estimates under realistic perception errors? Define scenarios: pedestrian emerging from behind parked cars, junction with limited visibility, noisy tracking of cyclists and missed detections. Define near-miss thresholds and progress metrics at this stage.
Checkpoint: A proposal chapter with questions, hypotheses and scenario list.
- 2
Build scenarios and sensors
Use drivingScenario to build urban streets with parked vehicles, junctions with buildings and crossing pedestrians and cyclists. Add radar and camera sensor models with realistic noise, detection probability and occlusion. Run a tracker such as trackerJPDA to get tracks with covariances and existence probabilities. Log ground truth alongside tracks for evaluation. Randomise pedestrian timing and parked car positions across instances, and keep a fixed seed list so every planner sees the same scenario set.
Checkpoint: Scenario runs with logged tracks, covariances, existence probabilities and ground truth.
- 3
Characterise perception uncertainty
Compare tracks with ground truth to measure position error distributions, false track rates and missed detections as functions of range and occlusion. Check whether reported covariances are consistent with actual errors using normalised estimation error squared (NEES). If not, calibrate covariances with a scaling factor. This step grounds the risk model in measured behaviour. Keep the calibration data separate from the evaluation scenarios.
Checkpoint: Error statistics and NEES consistency results with any calibration factors.
- 4
Model occlusion
Compute visible and occluded regions from the ego sensor position and obstacles at each step. Place phantom pedestrians or vehicles at the edges of occluded regions that could reach the ego path, with worst-plausible speeds. Assign them a prior existence probability based on context, such as near crossings. Visualise visible areas and phantoms over time. Check how many phantoms are generated per step and their effect on planning time.
Checkpoint: Animations showing occluded regions and phantom agents updating as the ego moves.
- 5
Compute trajectory risk
For each candidate trajectory, compute collision probability with each tracked object by propagating its Gaussian state over the horizon and integrating overlap with the ego footprint, using a sampling or analytical approximation. Weight by existence probability and include phantom agents. Combine risks over objects and time into a trajectory risk value. Validate the computation against Monte Carlo sampling. Record computation time per candidate to keep within budget.
Checkpoint: Risk values that match Monte Carlo estimates within a small error.
- 6
Plan with a risk bound
Use a Frenet or sampling-based candidate generator. Discard candidates whose risk exceeds a bound, and pick the best remaining one by comfort and progress cost. Always include a braking fallback candidate. Implement two baselines: deterministic planning with fixed margins on track means, and worst-case planning with reachable sets for all objects and phantoms. Use identical candidate generators and cost weights in all three, so the only difference between planners is how they handle uncertainty.
Checkpoint: All three planners running in closed loop on the scenarios.
- 7
Evaluate safety and progress
Run hundreds of randomised scenario instances with varied pedestrian timing, sensor noise and occlusion. Measure collision rate, near-miss rate (TTC below a threshold), minimum distance, progress (average speed and completion time) and comfort. Compare planners and sweep the risk bound to draw a safety-progress curve. Use the same scenario seeds for all planners, report results per scenario type, and check whether any collisions were physically unavoidable given the scripted pedestrian timing.
Checkpoint: Safety-progress curves for each planner with confidence intervals.
- 8
Check calibration
Group planning decisions by predicted risk and compare with observed collision or near-miss frequencies in simulation. Plot a reliability diagram for risk estimates. Analyse the effect of covariance calibration and existence probability errors. Identify conditions where risk is under-estimated, such as unmodelled missed detections. Because collisions are rare, use near-misses as a more frequent proxy and state clearly how this affects the interpretation of calibration, especially at very low risk values.
Checkpoint: Reliability diagrams and a list of under-estimation conditions.
- 9
Relate to safety standards
Discuss how a quantified risk bound fits a SOTIF argument and the limits of simulation evidence. Show how occlusion handling addresses a known triggering condition. Note what real-data validation would be needed, such as recorded drives with labelled near-misses, and the difficulty of estimating very small probabilities. Discuss which parts of the risk model would need independent verification before it could carry a safety claim.
Checkpoint: A section linking results to ISO 21448 concepts and evidence gaps.
- 10
Write the thesis
Write up perception analysis, occlusion modelling, risk computation, planner design, evaluation and calibration. Release scenario definitions and code. Present the safety-progress trade-off clearly and state limitations, including simulator realism and the Gaussian assumptions in the risk model. Provide scenario seed lists, sensor parameters, tracker settings and risk computation code, so that every safety-progress curve in the thesis can be regenerated by a reader with the same tools.
Checkpoint: Thesis chapters and a paper draft with reproducible results.
Testing & validation
- NEES consistency of tracker covariances before and after calibration.
- Risk computation accuracy against Monte Carlo.
- Collision and near-miss rates, progress and comfort per planner.
- Reliability diagrams of predicted risk against observed outcomes.
Expected results
A risk-bounded motion planner that accounts for tracking uncertainty, false tracks and occlusion, with a safety-progress comparison against fixed-margin and worst-case planners and a calibration study of its risk estimates.
Research angle for your PhD
Research questions: can explicit uncertainty-aware risk bounds give safety close to worst-case planning while keeping progress close to deterministic planning, and are the risk estimates calibrated under realistic perception errors? Metrics: collision and near-miss rates, progress, comfort, NEES and risk calibration error. Connecting measured perception uncertainty to planning risk, with calibration evidence and occlusion handling, addresses an important open problem and suits journals on intelligent vehicles and robotics.
Take it further
- Replace Gaussian uncertainty with learned, multi-modal perception uncertainty.
- Add interaction-aware prediction of pedestrians.
- Use conformal prediction to give distribution-free risk guarantees.
Viva and review questions
Why check covariance consistency with NEES?
The risk calculation depends on covariances; if the tracker is over-confident, risk is under-estimated, so NEES checks whether reported uncertainty matches real errors.
What are phantom agents for?
They represent road users that might be hidden in occluded areas, so the planner keeps a speed at which it could stop if one appears.
Why is worst-case planning not always the best choice?
It is safe but often too cautious, especially with phantoms and noisy tracks, leading to very slow progress or stalls.
How do you know the risk estimates are meaningful?
Through reliability diagrams comparing predicted risk with observed collision or near-miss frequencies over many simulated runs.
Learn it at DIYguru
These DIYguru courses and programmes teach what this project needs.
