跳转至

从零起步:PDDL 描述世界中的 AI 规划

凡事预则立,不预则废。本文档系统梳理 PDDL(规划领域定义语言)的核心概念、工具生态与前沿研究,为 AI 规划学习者提供一站式知识导航。

规划知识 Wiki

规划领域的主要在线知识库 Planning.wiki —— AI 规划与 PDDL 的权威 Wiki,涵盖从入门到精通的系统教程与参考资料。其源代码开源于 planning-wiki

经典综述文献 Everything You Always Wanted to Know About Planning (But Were Afraid to Ask) 由 Jörg Hoffmann 撰写,系统回答了规划领域的核心问题。

来自 Universidad Simón Bolívar 的优质课程资料:PF 3335 Artificial Intelligence Planning,配套课程项目在线幻灯片

学习资源

入门教程

视频教程

中文社区资源

规划社区

规划领域爱好者在 Slack 平台上设有 The Planning Community,汇集了丰富的学术讨论与技术交流资源。

Planning.Domains 生态系统

Planning.Domains 是一个面向 AI 规划研究者的在线服务生态系统,由澳大利亚、西班牙、英国等多国研究机构联合构建。其核心组件包括:

API 服务

api.planning.domains 提供对 PDDL 基准领域及问题文件的编程访问接口。该 API 管理三类对象:

  • Problem(问题):涵盖每个问题的文件路径、对应领域、统计信息等。
  • Domain(领域):涵盖各领域的描述文档及统计指标。
  • Collection(集合):涵盖历届 IPC(国际规划大赛)的领域集合及特定规划器的集合。

经典规划领域的 PDDL 文件集合托管于 classical-domains,研究者可通过克隆仓库或 API 命令行工具获取副本。目前接受经典 PDDL 基准(涵盖各版本与表现力层级),未来拟扩展至 POND、FOND、RDDL 等形式化体系。

在线求解器

solver.planning.domains 提供在线 PDDL 求解服务,支持通过 URL 链接或 JSON 格式提交原始 PDDL 内容,从而检索或验证规划方案。配套提供 JavaScript/Python 远程调用的示例代码。

在线编辑器

editor.planning.domains 集成 PDDL 编辑、求解与验证功能于一体,是基于 Web 的规划开发环境。

教育资源

education.planning.domains 汇集自动化规划与建模的教学幻灯片、源代码及视频教程,是系统学习 AI 规划的优质起点。

VS Code PDDL 扩展

VS Code 的 PDDL 扩展插件(pddl)是目前最成熟的 PDDL 开发环境,提供语法高亮、代码补全、规划器集成与验证等一站式功能。其源代码开源于 vscode-pddl,示例工程见 vscode-pddl-samples

插件集成了丰富的规划工具与资源:

编辑器插件生态

除 VS Code 外,PDDL 还支持其他主流编辑器:

编辑器 插件 说明
Visual Studio Code PDDL Plugin for VSCode 功能最全面
Sublime Text MyPDDL Plugin for Sublime 轻量级支持
Atom MyPDDL Plugin for Atom 已停止维护
Web Planning.Domains PDDL Editor 在线编辑求解一体化

规划器工具集

经典规划器

通用规划器

  • MyND (GitHub):基于 Java 的启发式 AND/OR 搜索规划器。
  • PRP (planner-for-relevant-policies):基于经典重规划的 FOND 求解器。
  • FOND-SAT:将 FOND 规划归约为 SAT 可满足性问题的求解方法。

领域实例集合

公开可用的 PDDL 领域实例:IPC PDDL Domains —— 历届国际规划大赛使用的标准基准集。

推荐参考书籍:An Introduction to the Planning Domain Definition Language,系统讲解 PDDL 的形式语义与建模实践。

课程与学术资源

教学幻灯片与课程

机构 课程内容 资源链接
UniBasel AI Group AI 与规划课程 Lecture Slides
FAI Group, Saarland University AI 基础与规划课程 Lecture Slides, Planning Source, AI Source

教学实验与作业

课程/项目 负责人 说明 资源
AI (CS) at PUCRS Felipe Meneguzzi 等 基于启发式搜索的规划实验 Source Code
Pacman Capture the Flag Nir Lipovetzky, Sebastian Sardina 基于 Berkeley AI Pacman 框架的竞赛 Competition, Code
ICAPS 2020 Summer School Michael Cashmore 使用 PDDL 进行规划建模的入门实验 Lab Details