基于课程学习的抛球智能体训练
1. 课程学习场景概述
我们将使用课程学习来创建并解决一个问题,即教会一个智能体如何向目标投掷球。虽然人类天生擅长扔球,但这实际上是一个非常复杂的任务,需要考虑距离、投掷力量、角度和弹道弧线等因素。
智能体总是从房间中心开始,而目标会随机分布在空间中。智能体需要确定投掷球的力度、垂直瞄准角度以及投掷前的朝向。
课程设计
我们将采用奖励结构来鼓励智能体改进。初始时,将一个非常大的半径定义为“近失球”,随着时间推移,这个半径会逐渐缩小,促使智能体提高准确性以持续获得奖励。课程将分为几个难度逐渐增加的阶段,在每个阶段中,智能体需要成功投掷到目标附近的距离会逐渐缩短。
2. 在Unity中构建环境
2.1 创建项目和场景
首先,创建一个新的Unity项目,添加Unity ML - Agents包,并准备一个空场景。我们将项目命名为“CurriculumLearning”。
2.2 创建地面
创建地面的步骤如下:
1. 在Hierarchy中创建一个新的平面。
2. 使用Inspector将其命名为“ground”,并将其位置设置为(0, 0, 0),缩放设置为(20, 1, 20)。
3. 创建一个新的材质,命名为“GroundGrass_Mat”。
4. 使用Inspector将材质的反照率颜色设置为绿色。
5. 将材质从Project面板拖到Hierarchy或场景中的地面平面上。
2.3 创建目标
目标是一个简单的立方体,创建
超级会员免费看
订阅专栏 解锁全文
1497

被折叠的 条评论
为什么被折叠?



