littlebot
Published on 2025-04-03 / 4 Visits
0

【源码】基于Python的自动驾驶模拟环境

项目简介

本项目是用于模拟自动驾驶环境的开源项目,为自动驾驶算法的开发与测试提供灵活、可扩展的框架。项目涵盖环境模拟、车辆模型、道路网络和交通规则等模块,适用于强化学习、路径规划、控制策略开发等任务。

项目的主要特性和功能

  1. 多种环境模拟:支持高速公路、交叉路口、停车场、环形交叉口等环境,各环境有不同道路结构、车辆交互和奖励机制。
  2. 车辆模型:提供基于自行车模型的线性动力学模型和基于智能驾驶模型的IDM模型,可模拟不同驾驶风格车辆行为。
  3. 道路网络:支持直线车道、正弦波形车道、圆形车道等结构,具备道路网络构建、修改和可视化功能。
  4. 交通规则:包含车道变换、碰撞避免、优先权等规则,保障车辆安全交互。
  5. 数据处理:提供数据处理、分析和可视化工具,支持状态离散化、奖励函数定义、轨迹预测等功能。
  6. 扩展性:框架可扩展,用户能方便添加新环境、车辆模型或自定义规则。

安装使用步骤

  1. 安装依赖:确保已安装Python环境,用pip安装项目所需依赖库。
  2. 下载源码:将项目源码下载到本地。
  3. 训练模型:
    • 运行训练脚本:python train_acc(td3_mine).pypython train_lanekeeping_test.py
    • 训练数据保存在根目录,网络参数、损失和奖励值变化等信息保存在projects文件夹。
  4. 部署模型:使用训练好的网络生成小车运行轨迹,执行python deploy_acc.py
  5. 数据处理与分析:
    • /tool/Yida/tools.py对训练数据进行区间化处理,生成CSV文件。
    • data_analysis/acc_td3/mdp/construct_mdp.py构建MDP模型,用data_analysis/acc_td3/mdp/my_kmeans.py进行聚类分析(聚类部分未完成)。
  6. 评估模型:
    • data_analysis/acc_td3/plt_diagram中的脚本,通过canopy、gap_statistic、elbow、轮廓系数等方法确定聚类中心数,绘制图表和计算误差。
    • 生成的模型和图表保存在data_analysis/acc_td3/imgsdata_analysis/acc_td3/mdls文件夹。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】