本课程为北京大学数学科学学院本研合上课程。
时间:2026年秋季学期,9月8日开始,单周二3-4节,每周四5-6节。
地点:三教306。
答疑:双周二10:00-11:00,智华楼353,需提前至少一天邮件预约,也可预约其他时间。
课程内容:在学习了基本程序设计技术(计算概论),算法与数据结构的基本概念和技术的基础上,通过本课程进一步加强使用计算机解决问题的能力。约束编程、约束求解是近三十年来人工智能领域的一个重要研究方向,约束编程是一种声明式的编程范式,通过约束条件对变量之间的关系进行陈述,给出问题解的一些属性规范,通过约束传播等算法对其进行求解。课程中将讲解约束编程相关的技术与方法,所讲授的主要内容包括约束满足问题(CSP)、约束编程的基本框架、约束求解工具、一致性问题、约束传播及检索算法等内容,并对当前约束编程领域的新兴技术进行适当讨论。
教材及参考书目([2,3]为数学学院图书馆馆藏):
[1] Krzysztof Apt. Principles of Constraint Programming. Cambridge University Press, 2009.
[2] Francesca Rossi,Peter van Beek,Toby Walsh. Handbook of Constraint Programming. Elsevier, 2006.
[3] Thom Frühwirth, Slim Abdennadher. Essentials of Constraint Programming. Springer, 2003.
成绩判定:
本课程选课学生需要做一次关于前沿论文的课堂报告(可从2026年32nd International Conference on Principles and Practice of Constraint Programming会议长文(序号3-61之间)中任选一篇进行报告),并完成一篇课程论文。期末成绩基于课堂报告水平和课程论文质量综合评定。
课程日程安排(第一次上课会建课程微信群,具体上课日期及讲授内容可能会有所调整,以课程微信群通知为准):
| 时间 | 内容 |
| 2026.9.8 | Lecture 1: Introduction to Constraint Programming and Constraint Satisfaction Problems |
| 2026.9.10 | Lecture 2: Constraint Programming in a Nutshell (I): CSP Examples & Equivalence of CSPs |
| 2026.9.17 | Lecture 3: Constraint Programming in a Nutshell (II): Basic Framework & Examples |
| 2026.9.22 | Lecture 4: Constraint Solvers (I) |
| 2026.9.24 | Lecture 5: Constraint Solvers (II) |
| 2026.10.8 | Lecture 6: Local Consistency (I) |
| 2026.10.15 | Lecture 7: Local Consistency (II) & Some Incomplete Constraint Solvers (I) |
| 2026.10.20 | Lecture 8: Some Incomplete Constraint Solvers (II) |
| 2026.10.22 | Lecture 9: Some Incomplete Constraint Solvers (III) |
| 2026.10.29 | Lecture 10: Constraint Propagation Algorithms (I) |
| 2026.11.3 | Lecture 11: Constraint Propogation Algorithms (II) |
| 2026.11.5 | Lecture 12: Search (I) |
| 2026.11.12 | Lecture 13: Search (II) |
| 2026.11.17 | Lecture 14: Some Further Issues in Constraint Programming |
| 2026.11.19 | 侯弘毅 王涵予 邱文晰 张清州 |
| 2026.11.26 |
李佑龙 单梁 赵嘉铭 哈斯艾尔德尼 |
| 2026.12.1 |
刘子铭 董家睿 徐辰宇 陈浩林 |
| 2026.12.3 |
章锐新 武奥铮 朱子川 吴宇鹏 |
| 2026.12.10 |
赵春霖 王思阳 李佳凯 马腾 |
| 2026.12.15 |
王沐晨 任加为 徐一赫 彭瑞杰 |
| 2026.12.17 |
郑铭毅 孙逸涵 刘祚旭 鞠曜徽 |
| 2026.12.24 |
王迪 钟光耀 黄科涵 王远桥 |
课程论文可选题目:基于约束求解的规则与结论验证,题目介绍及要求均可见链接文件。