Commit 1f55cb31 authored by 张晓彤's avatar 张晓彤

异常处理BUG

parent 67d88c4c
......@@ -78,77 +78,77 @@ class Group(WalkManage):
self.device_group[group_id][0].add(item.dump_id)
self.device_group[group_id][1].add(item.exactor_id)
# 更新实际交通流
def update_actual_traffic_flow(self):
loading_task_time = self.excavator.get_loading_task_time()
unloading_task_time = self.dump.get_unloading_task_time()
truck_current_task = self.truck.get_truck_current_task()
truck_current_trip = self.truck.get_truck_current_trip()
payload = self.truck.get_payload()
dynamic_dump_num = get_value("dynamic_dump_num")
dynamic_excavator_num = get_value("dynamic_excavator_num")
dynamic_truck_num = get_value("dynamic_truck_num")
self.goto_dump_truck_num = np.zeros((dynamic_excavator_num, dynamic_dump_num))
self.actual_goto_dump_traffic_flow = np.zeros(
(dynamic_excavator_num, dynamic_dump_num)
)
self.goto_excavator_truck_num = np.zeros(
(dynamic_dump_num, dynamic_excavator_num)
)
self.actual_goto_excavator_traffic_flow = np.zeros(
(dynamic_dump_num, dynamic_excavator_num)
)
# try:
logger.info("dynamic_truck_num")
logger.info(dynamic_truck_num)
print("truck.truck_index_to_uuid_dict")
print(self.truck.truck_index_to_uuid_dict)
print("truck_current_task")
print(truck_current_task)
for i in range(dynamic_truck_num):
task = truck_current_task[self.truck.truck_index_to_uuid_dict[i]]
end_area_index = truck_current_trip[i][1]
start_area_index = truck_current_trip[i][0]
if task in heavy_task_set:
self.goto_dump_truck_num[start_area_index][end_area_index] += 1
self.actual_goto_dump_traffic_flow[start_area_index][end_area_index] += float(payload[i])
# logger.info("debug2")
if task in empty_task_set:
self.goto_excavator_truck_num[start_area_index][end_area_index] += 1
self.actual_goto_excavator_traffic_flow[start_area_index][end_area_index] += float(payload[i])
self.actual_goto_dump_traffic_flow = self.actual_goto_dump_traffic_flow / (
self.distance_to_dump.reshape(dynamic_excavator_num, dynamic_dump_num)
/ (1000 * empty_speed)
+ np.expand_dims(unloading_task_time, axis=0).repeat(
dynamic_excavator_num, axis=0
)
)
self.actual_goto_excavator_traffic_flow = (
self.actual_goto_excavator_traffic_flow
/ (
self.distance_to_excavator.reshape(
dynamic_dump_num, dynamic_excavator_num
)
/ (1000 * heavy_speed)
+ np.expand_dims(loading_task_time, axis=0).repeat(
dynamic_dump_num, axis=0
)
)
)
# 更新实际交通流
def update_actual_traffic_flow(self):
loading_task_time = self.excavator.get_loading_task_time()
unloading_task_time = self.dump.get_unloading_task_time()
truck_current_task = self.truck.get_truck_current_task()
truck_current_trip = self.truck.get_truck_current_trip()
payload = self.truck.get_payload()
dynamic_dump_num = get_value("dynamic_dump_num")
dynamic_excavator_num = get_value("dynamic_excavator_num")
dynamic_truck_num = get_value("dynamic_truck_num")
self.goto_dump_truck_num = np.zeros((dynamic_excavator_num, dynamic_dump_num))
self.actual_goto_dump_traffic_flow = np.zeros(
(dynamic_excavator_num, dynamic_dump_num)
)
self.goto_excavator_truck_num = np.zeros(
(dynamic_dump_num, dynamic_excavator_num)
)
self.actual_goto_excavator_traffic_flow = np.zeros(
(dynamic_dump_num, dynamic_excavator_num)
)
# try:
logger.info("dynamic_truck_num")
logger.info(dynamic_truck_num)
print("truck.truck_index_to_uuid_dict")
print(self.truck.truck_index_to_uuid_dict)
print("truck_current_task")
print(truck_current_task)
for i in range(dynamic_truck_num):
task = truck_current_task[self.truck.truck_index_to_uuid_dict[i]]
end_area_index = truck_current_trip[i][1]
start_area_index = truck_current_trip[i][0]
if task in heavy_task_set:
self.goto_dump_truck_num[start_area_index][end_area_index] += 1
self.actual_goto_dump_traffic_flow[start_area_index][end_area_index] += float(payload[i])
# logger.info("debug2")
if task in empty_task_set:
self.goto_excavator_truck_num[start_area_index][end_area_index] += 1
self.actual_goto_excavator_traffic_flow[start_area_index][end_area_index] += float(payload[i])
self.actual_goto_dump_traffic_flow = self.actual_goto_dump_traffic_flow / (
self.distance_to_dump.reshape(dynamic_excavator_num, dynamic_dump_num)
/ (1000 * empty_speed)
+ np.expand_dims(unloading_task_time, axis=0).repeat(
dynamic_excavator_num, axis=0
)
)
self.actual_goto_excavator_traffic_flow = (
self.actual_goto_excavator_traffic_flow
/ (
self.distance_to_excavator.reshape(
dynamic_dump_num, dynamic_excavator_num
)
/ (1000 * heavy_speed)
+ np.expand_dims(loading_task_time, axis=0).repeat(
dynamic_dump_num, axis=0
)
)
)
def update_group_truck_flow(self):
......@@ -328,6 +328,11 @@ class Group(WalkManage):
logger.error("modify update 异常")
def update_excavator_hold_truck(self, excavator_hold_truck):
'''
更新调度分组内挖机保有矿卡
:param excavator_hold_truck:
:return:
'''
group_excavator_hold_truck = {}
for group_id in self.group_set:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment