Planetarium
收藏planetarium🪐
Planetarium🪐 是一个用于评估大型语言模型(LLMs)将自然语言描述的规划问题转换为 PDDL 的数据集和基准。我们开发了一种使用图同构比较 PDDL 问题描述的稳健方法。
安装
要安装 planetarium 包,可以使用以下命令:
bash
pip install git+https://github.com/BatsResearch/planetarium.git
基本用法
要评估 PDDL 问题描述,可以使用 planetarium.evaluate 模块:
python
import planetarium
...
planetarium.evaluate(gt_pddl_str, pred_pddl_str)
支持的领域包括 blocksworld 和 gripper。
数据集
数据集的主页可以在这里找到:planetarium。
以下是如何加载数据集的示例: python from datasets import load_dataset
dataset = load_dataset("BatsResearch/planetarium")
dataset["test"] 是论文中使用的主要测试集。您可以在此集上进行评估以重现我们的结果。
您可以通过运行以下命令来重现数据集、分割和报告: bash python dataset_generator.py -c dataset_config.yaml
通过修改 dataset_config.yaml 文件,您可以更改数据集分割、样本数量并生成更多示例。
数据集报告
以下是数据集中 PDDL 问题类型的摘要:
总问题数量:$132,037$。
抽象性分割
| Init | Goal | blocksworld | gripper |
|---|---|---|---|
| abstract | abstract | $23,144$ | $10,632$ |
| abstract | explicit | $23,086$ | $9,518$ |
| explicit | abstract | $23,087$ | $10,313$ |
| explicit | explicit | $23,033$ | $9,224$ |
大小分割(地面真值中的命题数量)
| Num. of Propositions | blocksworld | gripper |
|---|---|---|
| $0$ - $20$ | $1,012$ | $379$ |
| $20$ - $40$ | $10,765$ | $2,112$ |
| $40$ - $60$ | $50,793$ | $9,412$ |
| $60$ - $80$ | $26,316$ | $25,346$ |
| $80$ - inf | $3,464$ | $2,438$ |
工作原理
Planetarium🪐 通过首先将两个 PDDL 问题描述转换为图表示来进行比较。图帮助我们更好地检测和操作某些对象和命题之间的关系。接下来,我们通过添加“平凡”命题(在问题描述中不存在但在满足该描述的任何状态中必须存在的命题)来构建“完全指定”的图表示。最后,我们使用图同构来比较两个 PDDL 问题描述的完全指定图表示,无论是比较整个问题图还是单独的初始和目标场景图。这使我们能够在不需要运行规划器的情况下检查自然语言描述到 PDDL 的转换的正确性。

- 1Planetarium: A Rigorous Benchmark for Translating Text to Structured Planning Languages布朗大学计算机科学系 · 2024年



