Module costs
evaluation
This module implements cost functions of the Commonroad Benchmark. More details can be found here in the cost function documentation https://gitlab.lrz.de/tum-cps/commonroad-cost-functions/-/blob/master/costFunctions_commonRoad.pdf.
- class PartialCostFunction(value)[source]
See https://gitlab.lrz.de/tum-cps/commonroad-cost-functions/-/blob/master/costFunctions_commonRoad.pdf for more details.
A: Acceleration, J: Jerk, Jlat: Lateral Jerk, Jlon: Longitudinal Jerk, SA: Steering Angle, SR: Steering Rate, Y: Yaw Rate, LC: Lane Center Offset, V: Velocity Offset, Vlon: Longitudinal Velocity Offset, O: Orientation Offset, D: Distance to Obstacles, L: Path Length, T: Time, ID: Inverse Duration,
- A = 'A'
- J = 'J'
- Jlat = 'Jlat'
- Jlon = 'Jlon'
- SA = 'SA'
- SR = 'SR'
- Y = 'Y'
- LC = 'LC'
- V = 'V'
- Vlon = 'Vlon'
- O = 'O'
- D = 'D'
- L = 'L'
- T = 'T'
- ID = 'ID'
- class CostFunctionEvaluator(cost_function_id: CostFunction, vehicle_type: VehicleType)[source]
-
- property required_properties
- evaluate_pp_solution(cr_scenario: Scenario, cr_pproblem: PlanningProblem, trajectory: Trajectory, draw_lanelet_path=False, debug_plot=False)[source]
Computes costs of one solution for cr_pproblem.
- Parameters:
cr_scenario – scenario
cr_pproblem – planning problem that is solved by trajectory
trajectory – solution trajectory
draw_lanelet_path – optionally visualize the detected lanelet path with respect to whose some parameters for the cost computation are determined (only useful for development).
debug_plot – show plot in case a trajectory cannot be transformed to curvilinear coordinates.
- Returns:
result of evaluation
- evaluate_solution(scenario: Scenario, cr_pproblems: PlanningProblemSet, solution: Solution) SolutionResult [source]
Computes costs for all solutions of a planning problem set.
- Parameters:
scenario – scenario that was solved
cr_pproblems – planning problem set that was solved
solution – Solution object that contains trajectories
- Returns:
SolutionResult object that contains partial and total costs
- class PlanningProblemCostResult(cost_function_id: CostFunction, solution_id: int)[source]
- property total_costs: float
- add_partial_costs(pcf: PartialCostFunction, cost: float, weight)[source]
- class SolutionResult(benchmark_id: str, pp_results: List[PlanningProblemCostResult] = ())[source]
- add_results(pp_result: PlanningProblemCostResult)[source]