def run(route, prd, **kwargs): """ :type route: pyticas.ttypes.Route :type prd: pyticas.ttypes.Period :return: """ # load_data speed data us = moe_helper.get_speed(route.get_stations(), prd, **kwargs) us_results = moe_helper.add_virtual_rnodes(us, route) us_data = [res.data for res in us_results] us_data = spatial_avg.imputation(us_data) # make empty whole_data for STT by copying speed whole_data and reseting data stt_results = [res.clone() for res in us_results] for ridx, res in enumerate(stt_results): stt_results[ridx].data = [0] * len(prd.get_timeline()) stt_results[ridx].prd = prd # calculate STT cm_data = _calculate_stt(us_data, prd.interval, **kwargs) for ridx, res in enumerate(stt_results): res.data = cm_data[ridx] return stt_results
def run(route, prd, **kwargs): """ :type route: pyticas.ttypes.Route :type prd: pyticas.ttypes.Period :return: """ # load_data speed data moe_congestion_threshold_speed = kwargs.pop("moe_congestion_threshold_speed", get_system_config_info().moe_congestion_threshold_speed) us = moe_helper.get_speed(route.get_stations(), prd, **kwargs) us_results = moe_helper.add_virtual_rnodes(us, route) us_data = [res.data for res in us_results] us_data = spatial_avg.imputation(us_data) # make empty whole_data for congested miles by copying speed whole_data and reseting data cmh_results = [res.clone() for res in us_results] for ridx, res in enumerate(cmh_results): cmh_results[ridx].data = [0] * len(prd.get_timeline()) cmh_results[ridx].prd = prd # calculate CMH cm_data = _calculate_cmh(us_data, prd.interval, moe_congestion_threshold_speed, **kwargs) for ridx, res in enumerate(cmh_results): res.data = cm_data[ridx] return cmh_results
def run(route, prd, **kwargs): """ :type route: pyticas.ttypes.Route :type prd: pyticas.ttypes.Period :return: """ return moe_helper.get_speed(route.get_stations(), prd, **kwargs)
def run(route, prd, **kwargs): """ :type route: pyticas.ttypes.Route :type prd: pyticas.ttypes.Period :rtype: list[RNodeData] """ # load_data speed data return moe_helper.get_speed(route.get_stations(), prd, **kwargs)
def run(route, prd, **kwargs): """ :type route: pyticas.ttypes.Route :type prd: pyticas.ttypes.Period :return: """ rnode_list = route.get_stations() # load_data total flow data us = moe_helper.get_speed(rnode_list, prd, **kwargs) us_results = moe_helper.add_virtual_rnodes(us, route) us_data = [res.data for res in us_results] us_data = spatial_avg.imputation(us_data) return us, us_results, us_data
def run(route, prd, **kwargs): """ :type route: pyticas.ttypes.Route :type prd: pyticas.ttypes.Period :return: """ rnode_list = route.get_stations() # load_data speed data (load_data more data than given period) us_results = moe_helper.get_speed(rnode_list, prd, **kwargs) # make empty whole_data for acceleration by copying speed whole_data and reseting data accel_results = [res.clone() for res in us_results] # calculate travel time by increasing time index for ridx, rnode_data in enumerate( _calculate_accel(us_results, prd.interval, **kwargs)): accel_results[ridx].data = rnode_data return accel_results
def run(route, prd, **kwargs): """ :type route: pyticas.ttypes.Route :type prd: pyticas.ttypes.Period :return: """ ext_hour = kwargs.get('ext_hour', DEFAULT_END_HOUR_EXTENSION) now = datetime.datetime.now() ext_prd = prd.clone().extend_end_hour(ext_hour) if ext_prd.end_date > datetime.datetime.now(): ext_prd.end_date = now n_origin_data = len(prd.get_timeline()) # load_data speed data (load_data more data than given period) us = moe_helper.get_speed(route.get_stations(), ext_prd, **kwargs) us_results = moe_helper.add_virtual_rnodes(us, route) us_data = [res.data for res in us_results] us_data = spatial_avg.imputation(us_data) # make empty whole_data for travel time by copying speed whole_data and reseting data tt_results = [res.clone() for res in us_results] for idx, res in enumerate(tt_results): tt_results[idx].traffic_type = TrafficType.travel_time for ridx, res in enumerate(tt_results): tt_results[ridx].data = [-1] * n_origin_data tt_results[ridx].prd = prd # calculate travel time by increasing time index for tidx in range(n_origin_data): partial_data = [pd[tidx:] for pd in us_data] tts = _calculate_tt(partial_data, prd.interval, **kwargs) for ridx, tt_data in enumerate(tt_results): tt_results[ridx].data[tidx] = tts[ridx] return tt_results