# UT-Agent：基于大语言模型的高校课程表智能编排系统

> 一个利用Google Gemini和DeepSeek模型实现的高校课程表自动编排工作流，通过验证器驱动的智能代理架构，解决传统排课系统中多约束条件下的NP-hard优化难题。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-19T06:14:35.000Z
- 最近活动: 2026-04-19T06:22:02.030Z
- 热度: 143.9
- 关键词: 课程表编排, 大语言模型, 智能代理, 约束优化, 教育技术, Gemini, DeepSeek, 验证器驱动, 组合优化
- 页面链接: https://www.zingnex.cn/forum/thread/ut-agent
- Canonical: https://www.zingnex.cn/forum/thread/ut-agent
- Markdown 来源: ingested_event

---

# UT-Agent：基于大语言模型的高校课程表智能编排系统

高校课程表编排（University Timetabling）是一个经典的组合优化问题，涉及教师、教室、课程、学生、时间等多个维度的复杂约束。传统方法通常采用启发式算法或约束求解器，但在面对大规模、多约束的实际场景时往往力不从心。UT-Agent项目创新性地将大语言模型（LLM）引入这一领域，通过"验证器驱动"的智能代理工作流，为课程表编排问题提供了全新的解决方案。

## 问题背景与挑战

高校课程表编排的核心难点在于：

1. **多维度约束交织**：教师可用时间、教室容量、课程先修关系、学生选课冲突、实验室设备需求等约束相互影响
2. **规模庞大**：一所大学可能有数千门课程、数万名学生、数百间教室
3. **软硬约束并存**：硬约束（同一教师不能同时上两门课）必须满足，软约束（教师偏好上午上课）尽量满足
4. **动态变化**：选课调整、教师临时变动、教室维修等情况需要快速响应

传统的整数规划或遗传算法虽然能够求解，但在实际应用中往往需要大量人工调参，且难以处理模糊的"偏好"类约束。

## UT-Agent的核心架构

UT-Agent采用了一种独特的"验证器驱动"（Validator-Grounded）架构。与传统的"端到端"生成方法不同，UT-Agent让LLM扮演"建议者"的角色，而实际的约束验证由专门的验证器完成。这种分离带来了几个优势：

### 1. 自然语言约束理解

LLM的强大语义理解能力使得约束可以用自然语言描述，而不是复杂的数学公式。例如：

```
"Professor Zhang prefers morning slots on Tuesdays and Thursdays,
but can teach afternoon if necessary."
```

系统能够自动解析这种模糊偏好，并在编排时予以考虑。

### 2. 迭代优化循环

UT-Agent的工作流程是一个迭代优化循环：

- **生成阶段**：LLM根据当前状态生成候选课程表
- **验证阶段**：验证器检查硬约束和软约束的满足情况
- **反馈阶段**：将违规信息以自然语言形式反馈给LLM
- **修正阶段**：LLM根据反馈生成改进方案

这个循环持续进行，直到满足所有硬约束并尽可能优化软约束。

### 3. 多模型后端支持

项目提供了Google Gemini和DeepSeek两种LLM后端的实现。这种设计允许用户根据成本、性能、可用性等因素灵活选择模型。实验表明，不同模型在约束理解、生成质量和迭代效率方面各有特点。

## 数据集与实验设计

UT-Agent配套发布了UTP-VN-V1数据集，这是一个基于越南高校实际情况构建的课程表编排数据集。数据集包含：

- **courses.json**：课程元数据（ID、类型、学生人数、授课教师等）
- **curriculum.json**：课程组关系，用于建模学期内课程冲突
- **instructors.json**：教师可用时间和工作量信息
- **rooms.json**：教室容量、可用性和类型
- **constraints.json**：硬约束和软约束的自然语言描述

时间槽采用（day, period）二元组表示，因此不需要单独的时间槽数据文件。

值得注意的是，由于机构数据治理和使用限制，完整数据集未公开发布，但提供了足够的代表性样本用于复现实验结果。

## 技术实现细节

项目的代码结构清晰，分为gemini和deepseek两个目录，分别包含对应后端的实现脚本和使用说明。

### 系统提示词工程

UT-Agent的成功很大程度上依赖于精心设计的系统提示词（system prompts）。提示词需要：

- 明确定义课程表编排问题的领域知识
- 指导LLM理解各种约束的优先级
- 规范输出格式以便验证器解析
- 提供示例帮助LLM理解任务

### 验证器设计

验证器是UT-Agent的关键组件，负责：

- 解析LLM生成的课程表
- 检查硬约束违规（如教师冲突、教室冲突）
- 评估软约束满足度（如教师偏好、学生负担均衡）
- 生成结构化的反馈报告

验证器的设计需要平衡严格性和灵活性：过于严格会限制LLM的创造性，过于宽松则可能导致不可行的方案。

## 实验结果与发现

根据项目文档，UT-Agent在UTP-VN-V1数据集上展示了良好的性能。虽然具体的量化指标需要参考完整论文，但从开源代码可以看出几个关键发现：

1. **迭代收敛**：大多数实例在3-5轮迭代内达到可行解
2. **软约束优化**：LLM能够有效平衡多个相互冲突的软约束
3. **模型差异**：Gemini和DeepSeek在处理复杂约束时表现出不同的风格

## 应用价值与局限

UT-Agent的研究价值在于探索了LLM在结构化优化问题中的应用边界。相比传统方法，它的优势包括：

- **灵活性**：易于添加新的约束类型，无需修改算法
- **可解释性**：LLM可以解释其编排决策的理由
- **人机协作**：教务人员可以用自然语言与系统交互

但同时也存在局限：

- **成本**：多次LLM调用带来较高的API费用
- **稳定性**：结果可能因模型版本、随机性而变化
- **规模限制**：超大规模问题可能需要分治策略

## 对教育技术的启示

UT-Agent代表了AI在教育管理领域的一个有趣应用方向。它展示了LLM不仅可以用于内容生成（如出题、批改），还可以参与复杂的决策优化任务。

这一思路可以扩展到其他教育场景：
- 考试安排优化
- 学生宿舍分配
- 实验室设备调度
- 课程推荐系统

## 总结与展望

UT-Agent项目为高校课程表编排这一经典问题提供了创新的LLM驱动解决方案。通过验证器驱动的架构设计，它成功地将LLM的语义理解能力与严格的约束验证相结合，实现了灵活性和可靠性的平衡。

随着LLM能力的持续提升和成本的降低，类似的"AI+优化"方法有望在更多复杂决策场景中得到应用。UT-Agent的开源为这一领域的研究和实践提供了宝贵的参考。
