# 网格寻路算法实验室（Qwen3.8 Max · xhigh）

## 原始提示词

见 [完整原始输入](prompt.md)，任务正文版本 [v1](../../prompts/v1/prompt.md)。

## 批次记录

Aliyun 批次合计 91.81 CNY，覆盖 11 个案例，耗时 2h 50m 7s；费用及耗时均为批次总计，不拆分为单案例。

## 运行方式

- 入口为本目录 `index.html`，`file://` 直接打开或任意 HTTP 静态托管均可运行，无任何外部依赖。
- 桌面端鼠标、移动端触摸均可绘制墙壁 / 高代价地形、拖动起点与终点。
- 控件：算法切换（BFS / Dijkstra / A*）、预设地图（空白、迷宫种子 42、加权沼泽、封闭终点、随机障碍种子递增）、画笔（墙壁 / 高代价 ×5 / 橡皮）、运行、暂停、单步、清除搜索、重置地图、速度滑块（1～512 步/帧）。

## 验证记录

2026-10-14 使用 Playwright（Chromium headless）冒烟测试，file:// 与 HTTP 双入口：

- 空白网格 Dijkstra：路径 30 步、总代价 30；单步一次已访问节点 = 1；暂停后已访问数不再增长，继续运行可完成。
- 封闭终点预设：任意算法均明确提示「终点不可达」。
- 加权沼泽预设：Dijkstra 与 A* 总代价一致（38，绕行），BFS 步数最少（30 步，地形代价 118）。
- 绘制经过起点时给出错误提示且起点不被覆盖；橡皮擦除、高代价画笔、拖动起点、拒绝把终点拖到墙壁上均通过。
- 迷宫（DFS 回溯完美迷宫，种子 42）与随机障碍（种子递增保底连通）预设均可达。
- 390px 视口无水平溢出；触摸点按绘制墙壁后运行得到绕行路径 32 步。
- 桌面与移动端均无 JS 报错。

## 复盘

- 搜索以 JavaScript 生成器实现：每次 `yield` 恰好扩展一个节点，因此「暂停 / 单步 / 速度」控制的是真实搜索推进，而不是预计算回放；搜索期间编辑地图会终止生成器并清除叠加状态。
- Dijkstra 与 A* 共用惰性删除二叉堆；A* 启发为曼哈顿距离，在四方向、进入代价 ≥ 1 的网格上不多估，与 Dijkstra 同为最小代价（沼泽图均为 38，但扩展节点更少）。
- 首版迷宫使用递归分割，发现墙线上的洞口可能被子腔内部墙体封死导致连通性破坏（冒烟测试中表现为终点不可达），改为 DFS 回溯的完美迷宫后连通性有构造性保证；随机障碍预设用种子递增循环 + BFS 连通性检查保底，仍保持完全可重复。
- 起点 / 终点以真实拖拽实现，落点必须是空格；障碍画笔经过起终点格时给出错误提示并不覆盖。

<!-- archive:start -->
## 当前归档信息（自动生成）

- 实验 ID：`pathfinding-lab--qwen3-8-max-xhigh-r01`
- 模型：Qwen 3.8 Max；推理档位：xhigh
- 类型：single-html；预览：static；网络：offline
- [完整原始输入快照](prompt.md) · [主题与其他版本](../../../../topic.html?id=pathfinding-lab)
- 输入记录：prompt.md 保留用户会话指令与任务正文原文；Claude Code 系统提示与仓库 AGENTS.md 项目说明同时生效，系统提示未留存于快照。
- 工具：Claude Code。当前会话直接执行，未委派子代理；模型与档位由用户指定为 qwen3.8-max / xhigh，与会话自报一致。Windows 11 + Node 22；Playwright（Chromium headless）冒烟验证 file://、HTTP 与 390px 触摸。
- 运行方式：浏览器直接打开本目录入口；CDN/外部素材需要联网。
- 费用记录：Aliyun 批次合计 91.81 CNY（11 个案例；批次 qwen3-8-max-xhigh-2026-10-14；未记录单案例费用）
- [寻路算法实验室](../../../../demos/pathfinding-lab/runs/qwen3-8-max-xhigh-r01/index.html)

### 部署适配记录

- 维护者于 2026-10-22 按 v3 对本轮桌面、手机及补充状态逐图重评并绑定 captures 证据；旧截图和 v2 评分见 catalog/score-reviews/2026-10-21-v3-source.json。未重跑模型或改写实验源码，截图不证明完整功能、算法、手势或性能。
<!-- archive:end -->
