HoloOcean 代理

在 HoloOcean 中,代理(Agent)是与环境进行交互的实体,并在场景配置文件中进行定义。代理配备了用于从环境收集数据的传感器。通过调用 env.act()env.step() 传入指令来控制代理,这些指令会由代理的控制方案进行解析。

import holoocean

scenario = {
   "name": "{Scenario Name}",
   "world": "{world it is associated with}",
   "package_name": "{package it is associated with}",
   "agents":[
      {
         "agent_name": "uav0",
         "agent_type": "{agent types}",
         "location": [1.0, 2.0, 3.0],
         "control_scheme": 0,
         "sensors": [
            { ... }
         ]
   ],
}

env = holoocean.make(scenario_cfg=scenario)

command = [0, 0, 0, 0, ...]

for range(100):
   env.step(command)

HoloOcean 提供了多种代理,每种代理都具备不同的能力。HoloOcean 中的三种主要智能体分别代表了三种最常见的水域载具悬停式自主水下航行器(HoveringAUV)水面航行器(SurfaceVessel)鱼雷型自主水下航行器(TorpedoAUV)。这三种代理能够执行大部分感知和导航任务。此外,系统中还包含代表飞行器及特定现实世界载具的其他代理。

有关在 HoloOcean 中开发自定义智能体的信息,请参阅开发代理相关内容。

使用代理

关于如何在 HoloOcean 中使用代理的文档:

代理

HoloOcean 中特定代理的文档。请注意,测试代理不应用重力效果。

水下代理

水面代理

测试代理

空域代理

地面代理