资源简介 (共26张PPT)项目挑战:无人机送快递的配送决策单击此处添加副标题配送要求1.快递分急件和非急件,急件优先配送2.让所有的用户等待的时间最短在无人配送时,什么因素决定配送顺序?第一节配送距离紧急程度由于地球是曲面的,因此两点之间距离:S=2*R*arcsin()其中R为地球半径:6371WA,JA,WB,JB分别为AB两点经纬度对应的弧度df[i][0] df[i][1] df[i][2] df[i][3] df[i][4] df[i][5]快递编号 地点 纬度 经度 是否急件 距离西湖风景名胜区(快递配送中心) 30.22537939 120.12508266600008 首创奥特莱斯 30.0782965 120.0297387 否6600065 浙江西湖美术馆 30.25145832 120.1447587 是6600066 鸡笼山 30.22730381 120.1173484 是…… …… …… …… …… ……S=2*R*arcsin()为了计算每个快递地点和配送中心的距离需要哪些数据?第i个快递地点经度和纬度:配送中心经度和纬度:df[i][2]和df[i][3]df[0][2]和df[0][3]快递地点经度和纬度配送中心经度和纬度WAJAWBJB弧度=degree*3.14/180S=2*R*arcsin()a[i][2]a[i][3]a[0][2]a[0][3]根据读取的快递数据信息,计算出每个快递距离配送点的距离,并存储在二维列表字段“距离”中,该功能也能封装于自定义函数。任务一:计算距离计算每个快递地址和配送中心的距离1按照配送紧急程度、配送距离进行策略设计2输出配送顺序3√配送快递时,何如设计快递的配送策略,才能让所有用户的等待时间最短?任务二:配送策略设计配送中心1号快递2号快递3号快递1号等待时间:sum1=t12号等待时间:sum2=t13号等待时间:sum3=t1配送中心1号快递2号快递3号快递1号等待时间:sum1=t12号等待时间:sum2=2*t1+t23号等待时间:sum3=2*t1+t2配送中心1号快递2号快递3号快递1号等待时间:sum1=t12号等待时间:sum2=2*t1+t23号等待时间:sum3=2*t1+2*t2+t3配送中心1号快递2号快递3号快递按照最近先配送的时间总和:sumzj=5*t1+3*t2+t3配送中心1号快递2号快递3号快递按照最远先配送的时间总和:sumzy=5*t3+3*t2+t1如果先送最近的:sumzj=5*t1+3*t2+t3如果先送最远的:sumzy=5*t3+3*t2+t1等待时间差=sumzj-sumzy=4*t1-4*t3<0因此可以得出结论:配送先配 .最近的根据策略设计结果完成程序的实现。任务三:配送策略实现能否在冒泡排序时直接将数据按照紧急程序为主要关键字、配送距离为次要关键字排序完成?第j号快递第j-1号快递是否加急:是是否加急:否配送距离:5km配送距离:9km即使配送距离再长,也得优先配送加急的快递。非急件急件df[j-1]df[j]急件非急件df[j-1]df[j]急件急件df[j-1]df[j]非急件非急件df[j-1]df[j]不做任何处理直接交换比较两份快递的配送距离,近者优先df[j-1][4] == "否" and df[j][4] == "是"df[j-1][4] == df[j][4] and df[j-1][5] > df[j][5]如果需要计算所有用户的等待时间时,则该如何计算?总等待时长+=(2*未配送快递数量-1)* 当前快递配送时间总等待时长+=(2*未配送快递数量-1)* 当前快递配送时间1.方案设计时要考虑实际情况对数据进行处理;2.利用排序算法实现设计配送策略;3.最终计算所有用户的等待时间,并控制等待时间最优化任务总结感谢观看单击此处添加副标题 展开更多...... 收起↑ 资源预览