UE4+AirSim+CNN+深度强化学习 作品合集

0. 前言:

仿真环境是自己基于AirSim二次开发的. 在 AirSim 提供的车辆模型和 Demo 下, 自主开发基于虚幻 4 引擎下的驾驶仿真环境(绘制模型训练与测试的仿真地图)和相应API(控制程序开发与数据处理等).


1. (序列化数据输入)Torcs+模仿学习+深度强化学习(GAIL-DDPG)+拟人化决策

29维序列化状态空间+专家示教动作数据作为输入, Actor网络输出为三个连续动作(转向+油门+刹车).

  1. 先经由GAIL模仿学习算法对Actor网络进行预训练;
  2. 在GAIL-DDPG阶段设计了增益调度器进行过渡学习;
  3. 纯强化学习(DDPG)继续进行高级动作的探索.

其中奖励函数设计参考了人工势场理论. 奖励函数权重根据驾驶人风格进行了拟人化重标定.

❖ 取得成果: 通过在 DDPG 中引入 GAIL 模仿学习预训练缩短了“Trials and Errors”过程, 使得学习效率提升了 76.7%; 通过 Reward 权重进行拟人化标定, 使得 GAIL-DDPG 模型的决策行为更接近人类驾驶风格, 对于提升模型的驾驶人适应性具有重要参考价值.
❖ 项目概述: 通过采集专家示教数据训练 GAIL 模型, 在 GAIL-DDPG 转换阶段设计增益调度器平衡训练权重, 通过人工势场理论对 DDPG 中的 Reward 进行塑造, 通过驾驶风格特性分析进行奖励函数权重标定, 最后在 Torcs 自动驾驶环境中进行了安全性、操纵稳定性、行驶平顺性等验证.
在这里插入图片描述
(序列化数据输入)Torcs+模仿学习+深度强化学习(GAIL-DDPG)+拟人化决策 - 效果视频↗


2. (图像输入)深度强化学习+AirSim+UE4+CNN

目前的研究方向转为了基于图像输入的模仿学习-强化学习模型, 打算引入图像的同时加入时空注意力机制(LSTM+注意力权重)使特征提取更深入, 以期网络训练效果更佳.

最近真的太忙了, 先发布一个半成品的效果视频吧, 仅仅验证了可行性, 最新成果以及场景细节待设计补充. 目前主要用到的算法是: CNN+GAIL-DDPG. 正在引入LSTM+空间注意力机制.

❖ 取得成果: 基于实时图像输入的模仿学习-强化学习(GAIL-DPPG-CNN)算法实现自动驾驶模型训练.
❖ 仿真环境: 在 AirSim 提供的车辆模型和 Demo 下, 自主开发基于虚幻 4 引擎下的驾驶仿真环境(绘制模型训练与测试的仿真地图)和相应 API(控制程序开发与数据处理等).
❖ 训练数据: 对应仿真环境下的环境数据及驾驶人实操数据(车前图像+操作数据).
❖ 项目概述: 由连续𝑛帧车前图像+仿真驾驶数据作为模型的输入, 先由 GAIL 模仿学习网络生成预训练模型, 在预训练模型的基础上由 DDPG 强化学习模型继续训练.

2.1 (图像输入)AirSim+UE4+CNN+深度模仿学习(GAIL)

在这里插入图片描述
(图像输入)AirSim+UE4+CNN+深度模仿学习(GAIL) - 效果视频↗


2.2 (图像输入)深度强化学习(DDPG)+UE4+CNN

在这里插入图片描述
(图像输入)深度强化学习(DDPG)+UE4+CNN - 效果视频↗


2.3 (图像输入)深度强化学习(DQN)+UE4+CNN

在这里插入图片描述
(图像输入)深度强化学习(DQN)+UE4+CNN - 效果视频↗

搭建AirSim强化学习环境可以按照以下步骤进行: ### 1. 安装AirSim 首先,你需要安装AirSimAirSim是一个用于无人机和自动驾驶汽车模拟的开源平台。 1. **下载AirSim**: - 前往[AirSim的GitHub页面](https://github.com/microsoft/AirSim)下载最新的发布版本。 2. **安装依赖**: - 确保你的系统已经安装了Visual Studio(对于Windows用户)和必要的C++编译工具。 - 安装Unreal Engine。AirSim依赖于Unreal Engine来创建模拟环境。 3. **编译AirSim**: - 打开Visual Studio,选择“生成”->“生成解决方案”来编译AirSim。 ### 2. 设置Unreal Engine项目 接下来,你需要设置一个Unreal Engine项目来使用AirSim。 1. **创建新项目**: - 打开Unreal Engine,选择“游戏”类别,然后选择一个模板(例如,空白模板)。 - 选择项目保存路径并命名项目。 2. **添加AirSim插件**: - 将下载的AirSim文件夹中的“Plugins”文件夹复制到你的Unreal Engine项目文件夹中。 - 在Unreal Engine中,打开“编辑”->“插件”,确保AirSim插件已启用。 ### 3. 配置强化学习环境 现在,你需要在AirSim中配置强化学习环境。 1. **启动AirSim**: - 在Unreal Engine中,点击“播放”按钮来启动模拟环境。 - AirSim将自动启动并连接到模拟环境。 2. **安装Python库**: - 打开命令提示符或终端,安装必要的Python库: ```bash pip install airsim numpy ``` 3. **编写强化学习脚本**: - 使用Python编写强化学习脚本。例如,使用深度强化学习库(如Stable Baselines3)来训练智能体。 ```python import airsim import numpy as np from stable_baselines3 import PPO # 连接到AirSim client = airsim.VehicleClient() client.confirmConnection() # 定义状态和动作空间 state_space = ... # 定义状态空间 action_space = ... # 定义动作空间 # 创建强化学习模型 model = PPO("MlpPolicy", env, verbose=1) # 训练模型 model.learn(total_timesteps=100000) # 测试模型 obs = env.reset() for i in range(1000): action, _states = model.predict(obs) obs, rewards, dones, info = env.step(action) env.render() ``` ### 4. 运行和测试 最后,运行你的强化学习脚本并测试智能体的表现。 1. **运行脚本**: - 在命令提示符或终端中运行你的Python脚本: ```bash python train.py ``` 2. **观察结果**: - 在Unreal Engine中观察智能体的表现,并根据需要调整参数和模型。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值