# NOAI 2026: 基于 NVIDIA Isaac Sim 的具身智能 Sim2Real 状态预测

**注意：本题将在基于 `noai:2026v1.1` 镜像的环境中评测，参赛者请选择 `noai:2026v1.1` 作为训练镜像。**



## 1. 任务描述

在具身智能任务中，仿真环境可以低成本生成大量机器人轨迹，但仿真轨迹和真实机器人轨迹并不完全一致。参赛者需要根据完整的仿真轨迹、时间信息，以及每条轨迹开头提供的真实机器人状态前缀，预测后续隐藏帧对应的真实机器人状态。

每一帧均包含仿真环境中的 6 维关节位置 `simulation_positions`。参赛者需要预测该帧对应的真实机器人 6 维关节状态 `observation_state`。

参赛者可自行选择合适的建模方法，包括但不限于回归建模、特征工程、相似轨迹检索和近邻方法。建议关注：

- 仿真轨迹与真实轨迹之间的关系；
- 同一任务内可见前缀对后续隐藏段的提示；
- ...



## 2. 数据集

### 2.1 数据格式

数据集采用 CSV 格式。每一行对应一条任务轨迹中的一个时间帧。

| 字段                   | 含义                                                   |
| ---------------------- | ------------------------------------------------------ |
| `index`                | 全局样本编号                                           |
| `task_index`           | 任务编号，同一 `task_index` 下的行构成一条完整任务轨迹 |
| `frame_index`          | 任务内部的帧编号                                       |
| `timestamp`            | 时间戳，单位为秒                                       |
| `simulation_positions` | 仿真环境中的 6 维关节位置                              |
| `observation_state`    | 真实机器人对应的 6 维关节状态                          |

训练集中所有帧均提供完整的 `observation_state`。在验证集和测试集中，每条任务轨迹开头的一段 `observation_state` 可见，其后的状态值被置为空值，参赛者需要预测这些空缺位置对应的真实状态。

### 2.2 数据规模

| 数据集              | 任务数 | 总行数  | 需预测行数 |
| ------------------- | ------ | ------- | ---------- |
| 训练集 (Train)      | 336    | 176,675 | 0          |
| 验证集 (Validation) | 72     | 35,136  | 24,562     |
| 测试集 (Test)       | 72     | 37,632  | 26,310     |

### 2.3 数据示例

```csv
index,task_index,frame_index,timestamp,observation_state,simulation_positions
0,0,0,0.0,"[-0.153,-1.707,1.601,1.664,0.179,0.008]","[-0.142,-1.627,1.524,1.598,0.173,0.005]"
1,0,1,0.033,"[-0.153,-1.707,1.601,1.664,0.179,0.008]","[-0.142,-1.639,1.535,1.609,0.175,0.005]"
```

### 2.4 训练数据访问

在开发阶段，参赛者只能直接访问训练集。验证集和测试集仅在正式评测环境中提供，其文件路径需通过指定的环境变量获取。具体读取方式请参见 [baseline](https://www.bohrium.com/notebooks/88428539178) Notebook。



## 3. 任务

参赛者需要预测验证集和测试集中所有隐藏帧对应的 `observation_state`：

- **输入信息**：完整的 `simulation_positions`、`timestamp`、`frame_index`，以及同一轨迹中可见的 `observation_state` 前缀；

  **预测目标**：隐藏帧对应的长度为 6 的 `observation_state` 数值数组。



## 4. 提交

参赛者需提交一个名为 `submission.ipynb` 的 Notebook。该 Notebook 应包含完整的数据读取、数据处理、模型训练、预测及提交文件生成流程，并能够在评测环境中从头运行。

### 4.1 输入与输出

- **输入**：训练集 CSV 文件；验证集和测试集数据在提交时通过环境变量获取（详见[baseline](https://www.bohrium.com/notebooks/88428539178)代码）。
- **输出**：一个名为 `submission.zip` 的压缩文件，包含：
  - `submission_val.csv` — 验证集预测结果
  - `submission_test.csv` — 测试集预测结果

### 4.2 文件结构

请参见[baseline](https://www.bohrium.com/notebooks/88428539178)  Notebook 中的完整文件结构。

### 4.3 提交 CSV 格式

预测文件仅需包含验证集或测试集中待预测的隐藏帧，并按照以下字段顺序保存：

```csv
index,task_index,frame_index,timestamp,observation_state
4045,4,268,8.933,"[-0.207,-0.699,0.709,1.212,0.186,0.363]"
```

要求：

| 规则                                                 | 说明                                                         |
| ---------------------------------------------------- | ------------------------------------------------------------ |
| `observation_state`                                  | 必须保存为长度为 6 的数值数组字符串，格式应与原始数据中的 `observation_state` 保持一致。 |
| `index` / `task_index` / `frame_index` / `timestamp` | 需要与目标行保持一致                                         |
| 行数                                                 | 提交文件必须且仅能包含对应数据集中全部待预测的隐藏帧，不得遗漏、重复或增加其他行。 |
| 数据使用                                             | 参赛程序不得以任何方式访问、恢复或利用验证集和测试集中隐藏帧的真实标签。 |

**注意：如果不按照要求提交，评测阶段会直接报错**

### 4.4 本题只允许提交一个Notebook文件，不允许外挂数据集和其他文件



## 5. 评分

### 5.1 指标

对于每个待预测帧，设真实状态为 $y$，预测状态为 $\hat y$，首先计算其六个维度上的均方根误差：

$$\text{RMSE} = \sqrt{\frac{1}{6} \sum_{i=1}^{6}(\hat{y}_i - y_i)^2}$$

该行基础得分为：

$$\text{Score}_{\text{row}} = \exp(-10 \cdot \text{RMSE})$$

### 5.2 分数计算

对于验证集和测试集，分别计算其中所有待预测隐藏帧的行得分平均值：

$$\text{Score} = \frac{1}{n}\sum_{i=1}^{n} \text{Score}_{\text{row},i} = \frac{1}{n}\sum_{i=1}^{n} \exp(-10 \cdot \text{RMSE}_i)$$

最终得分范围为 $(0,1]$。预测误差越小，得分越高；当预测值与真实值完全一致时，该帧得分为 1。

### 5.3 公开榜与私有榜

- **公开榜（A 榜）**：根据验证集（Validation Set）进行计算；
- **私有榜（B 榜）**：根据测试集（Test Set）进行计算，并在比赛结束后公布。



## 6. 限制

- 不允许下载或使用本题提供的数据集之外的任何外部数据，但允许参赛者基于题目提供的数据进行特征构造、数据变换和二次标注；

- 不允许使用外部大语言模型 API（如 GPT、Claude）进行预测、特征生成、数据标注或模型集成；

- 评测环境不提供网络访问，参赛程序不得执行联网操作，也不得通过 `pip install` 安装额外依赖。参赛者只能使用指定镜像中预装的软件包；

- 本题使用**CPU**进行训练和评测，训练 + 推理总时长不超过 25 分钟。

  

## 7. 基线分数与参考分数

- **B 榜基线分数 ([baseline](https://www.bohrium.com/notebooks/88428539178))**：0.5647
- **科学委员会提供的参考解的B榜分数 (Reference Result)**：0.7861



## 8. 致谢

感谢 NVIDIA 技术专家提供本题。