本项目的核心是利用百度地图API获取步行时间和借助GBDT(梯度提升决策树)模型进行排队时间的预测。它旨在为用户提供一种自主选择多个目的地的功能,然后系统会输出最佳路线规划的结果,并根据用户的选择提供智能化的建议。
首先,项目利用百度地图API,能够获取到步行时间信息。这些信息包括从一个地点到另一个地点所需的预计步行时间。这个步骤确保了系统具有地理位置感知能力,可以理解用户的出行需求。
接下来,项目使用GBDT模型,这是一种强大的机器学习模型,用于预测排队时间。GBDT模型会考虑多个因素,如交通状况、目的地之间的距离、历史排队数据等,来预测用户在不同地点排队的时间。
一旦获取了这些信息,系统可以让用户自主选择多个目的地。用户可以输入他们的出发点和多个目标地点,然后系统会根据百度地图API的步行时间和GBDT模型的排队时间预测,计算出最佳路线规划。这个规划考虑了用户的时间限制、排队时间、步行时间等因素,以确保用户能够在最短的时间内到达所有目的地。
最后,系统还可以根据用户的选择,提供智能化的建议。例如,如果用户希望优先选择最短排队时间的目的地,系统可以相应地调整路线规划。
总的来说,这个项目结合了地图数据和机器学习技术,为用户提供了一个方便的自主选择多个目的地并获取最佳路线规划的工具。这对于城市出行和旅游规划非常有用,可以帮助用户更高效地安排行程。
本部分包括系统整体结构图和系统流程图。
系统整体结构如图所示。
系统流程如图所示。
路径规划流程如图所示。
计算路径耗时流程,如图所示。
本部分包括 Python 环境、Pycharm 环境和Scikit-learn环境。
需要Python 3.6及以上配置,在Windows环境下推荐下载Anaconda完成Python所需环境的配置,下载地址为https://www.anaconda.com/,也可下载虚拟机在Linux环境下运行代码。
PyCharm下载地址为http://www.jetbrains.com/pycharm/download/#section=windows,进入网站后单击Comminity版本下的DOWNLOAD下载安装包,下载完成后安装。单击Create New Project创建新的项目文件,Location为存放工程的路径,单击project附近的三角符号,可以看到PyCharm已经自动获取Python 3.6,单击create完成。
安装CPU版本的Scikit-learn
pip install -U --ignore-installed scikit-learn
或者从Anaconda环境中直接搜索 scikit-learn包进行下载、安装。
本项目包括6个模块:数据预处理、客流预测、百度地图API调用、GUI界面设计、路径规划和智能推荐,下面分别给出各模块的功能介绍及相关代码。
详见博客:https://blog.csdn.net/qq_31136513/article/details/133011765#1__49
详见博客:https://blog.csdn.net/qq_31136513/article/details/133011802#2__54
详见博客:https://blog.csdn.net/qq_31136513/article/details/133011802#3_API_134
详见博客:https://blog.csdn.net/qq_31136513/article/details/133014188#4__GUI_62
详见博客:https://blog.csdn.net/qq_31136513/article/details/133014188#5__306
详见博客:https://blog.csdn.net/qq_31136513/article/details/133014188#6__371
本部分包括训练准确率、测试效果及程序应用。
经过调参后,测试的错误率为8.236%,如图所示,准确率达到91.7%以上,意味着预测模型训练比较成功。
将数据代入模型进行测试,分类的标签与原始数据进行显示和对比,如图所示,可以验证:模型可以实现预测客流量的功能。
打开gui.py,单击“运行”按钮,初始界面如图所示。
界面从左至右,分别是一张北京欢乐谷园区的手绘地图,一个下拉菜单、一列目的地复选框。在下拉菜单中选择当前位置,复选框中选择目的地,如图所示。
单击“确定’按钮后,cmd窗口中会输出所有可能路线、耗时以及最短的路线、耗时,如图所示。
单击“确定”按钮后出现第二个GUI界面,显示用户选择的目的地、经系统计算后的最佳路线及总耗时,如图所示。
单击“退出”按钮即可退出程序。单击“猜你喜欢”按钮进入智能推荐模块,cmd窗口中会输出所有可能路线及耗时,并且输出推荐最佳路线和耗时,如图所示。
单击“猜你喜欢”按钮后,会出现第三个GUI界面,显示用户选择的目的地、系统推荐的地点、系统计算后的推荐最佳路线及总耗时,如图所示。
若用户选择的起点与目的地有重复,导致程序出现异常,则跳出异常提示框,如图所示。
总体测试结果如图所示。
基于GBDT+Tkinter+穷举法按排队时间预测最优路径的智能导航推荐系统——机器学习算法应用(含Python工程源码)+数据集(一)
基于GBDT+Tkinter+穷举法按排队时间预测最优路径的智能导航推荐系统——机器学习算法应用(含Python工程源码)+数据集(二)
基于GBDT+Tkinter+穷举法按排队时间预测最优路径的智能导航推荐系统——机器学习算法应用(含Python工程源码)+数据集(三)
详见本人博客资源下载页
如果大家想继续了解人工智能相关学习路线和知识体系,欢迎大家翻阅我的另外一篇博客《重磅 | 完备的人工智能AI 学习——基础知识学习路线,所有资料免关注免套路直接网盘下载》
这篇博客参考了Github知名开源平台,AI技术平台以及相关领域专家:Datawhale,ApacheCN,AI有道和黄海广博士等约有近100G相关资料,希望能帮助到所有小伙伴们。