MCPcopy Create free account
hub / github.com/PJLab-ADG/OASim / UncontrolledPredictor

Class UncontrolledPredictor

limsim/trafficManager/predictor/simple_predictor.py:18–47  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

16
17
18class UncontrolledPredictor(AbstractPredictor):
19 def predict(
20 self, observation: Observation, roadgraph: RoadGraph,
21 lastseen_vehicles, through_timestep, config) -> Prediction:
22 prediction = Prediction()
23
24 for vehicle in observation.vehicles:
25 if vehicle.vtype != VehicleType.OUT_OF_AOI:
26 if vehicle.id in lastseen_vehicles:
27 prediction.results[vehicle] = lastseen_vehicles[vehicle.id].trajectory.states[through_timestep:]
28 else:
29 lane = roadgraph.get_lane_by_id(vehicle.lane_id)
30 predict_t = config["MIN_T"]
31 dt = config["DT"]
32 s = vehicle.current_state.s
33 d = vehicle.current_state.d
34 s_d = vehicle.current_state.s_d
35
36 predict_trajectory = Trajectory()
37 for t in np.arange(0, predict_t, dt):
38 predict_trajectory.states.append(
39 State(t=t, d=d, s=s, s_d=s_d,))
40 s += s_d * dt
41 next_lane = roadgraph.get_next_lane(lane.id)
42 lanes = [lane, next_lane] if next_lane != None else [lane]
43 predict_trajectory.frenet_to_cartesian(
44 lanes, vehicle.current_state)
45
46 prediction.results[vehicle] = predict_trajectory.states
47 return prediction

Callers 1

__init__Method · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected