Reversi AI Research Project — Meeting Slides (Bilingual)¶
Note: English first, followed by Chinese translation for each bullet. Use as slide notes directly.
1) Project Title & Ethical Compliance|项目标题与伦理合规¶
- Reversi AI Algorithm Benchmarking & Optimization Research — 黑白棋AI算法基准与优化研究
- Student:
, , BSc Computer Science — 学生:<姓名>,<学号>,计算机科学本科 - Supervisor meeting: Introductory overview (30 mins) — 与导师初次会面:项目概览(30分钟)
- Statement of Ethical Compliance: Data Category B; Participant Category 2; will follow COMP390 ethical guidance — 伦理合规声明:数据类别B;参与者类别2;遵循COMP390伦理指南
Visual suggestion: Minimal title slide; small footer with ethics line. — 视觉建议:极简标题页,页脚写伦理声明。
2) Why Reversi? Motivation & Fit|为何选择黑白棋:动机与契合¶
- Simple rules and no hidden info; a solid AI test — 规则简单、无隐藏信息;适合做AI测试
- Right size: interesting to study, small enough to finish — 规模合适:有研究性,也能按时做完
- Fits C++ well for fast bitboards and clear structure — 很适合用C++做位板加速和清晰架构
- Fits COMP390: software + analysis + good process — 符合COMP390:软件+分析+良好过程
Visual suggestion: One mini-board sketch + 3 bullet icons. — 视觉建议:简化棋盘草图+3个要点图标。
3) Project Overview & Objectives|项目概览与目标¶
- Distributed‑first: online multiplayer that just works (rooms, matchmaking, fair play) — 分布式优先:可用的在线对战(房间、匹配、公平对局)
- Works on real networks: smooth latency, reconnect, save results — 面向真实网络:延迟平滑、可重连、保存结果
- Then improve AI step by step; keep one clean interface for later methods — 然后逐步增强AI;保留统一接口便于以后接入方法
- Clear modules: networking and AI are separate; upgrade one without breaking the other — 模块清晰:联网与AI分离;升级一边不影响另一边
- Later show progress with small tests and simple charts — 之后用小测试和简明图表展示进展
Visual suggestion: Networking/Multiplayer block on top, AI block beneath. — 视觉建议:上方“联网/多人”,下方“AI”模块。
4) Tech Stack & Tools (Why Pure C++ vs Engine)|技术栈与工具(为何纯C++而非引擎)¶
- Core approach: Modern C++ + CMake; lightweight UI — 核心做法:现代C++ + CMake;轻量UI
- Why pure C++: performance & control; simple packaging; easy to reproduce — 选择纯C++:性能与可控性;打包简单;结果易复现
- Trade‑off: engines have stronger UI/UX; we prioritise netcode + AI now — 取舍:引擎UI/UX更强;当前优先网络与AI
- Networking plan: add
asio/boost::asiowhen needed, no engine lock‑in — 联网方案:需要时加入asio/boost::asio,避免引擎绑定
Visual suggestion: One‑line contrast (Pure C++ now → engine optional later). — 视觉建议:一行对比(现用纯C++ → 将来可选引擎)。
5) High-level System Overview|系统高层概览¶
- Layers: Algorithms / Optimizations / Evaluation / UI / Visualization — 分层:算法/优化/评测/UI/可视化
- Clear interfaces: one AI interface; easy to swap implementations — 清晰接口:一个AI接口,便于替换实现
- Simple events: UI listens to changes; background search does not block — 简单事件:UI监听变化;后台搜索不阻塞
- Core bitboard
Boardwith clean separation of concerns — 位板Board为核心,关注点分离清晰
Visual suggestion: Layered architecture diagram. — 视觉建议:分层架构图。
6) Direction Options: Distributed vs AI vs Both|方向选择:分布式 / AI / 双线¶
- Option A: Distributed search (different computers) — 方案A:分布式搜索(多机)
- Pros: scalability research, networking/OS skills — 优点:可扩展性研究、网络/系统技能
- Cons: higher complexity, debugging risk — 缺点:复杂度高、调试风险大
- Option B: AI-first depth (algorithms + optimizations) — 方案B:AI优先(算法+优化)
- Pros: stronger AI quality, clearer scope — 优点:AI质量更强、范围更清晰
- Cons: fewer distributed systems elements — 缺点:分布式要素较少
- Preferred: Distributed-first; add AI as staged enhancement — 倾向:分布式优先,AI分阶段增强
Visual suggestion: 3-column pros/cons matrix; highlight preferred. — 视觉建议:三列利弊矩阵,高亮首选。
7) AI Basics & Plan|AI基础与计划¶
- Start simple: basic rules to choose moves — 先从简单规则入手
- Cut bad branches early to speed up search — 提前剪掉不佳分支,加快搜索
- Try random trials when helpful to explore — 需要时用随机试走,探索更多可能
- Use bitboards to make move checks fast — 用位板让走法判定更快
- Keep one AI interface so we can swap methods later — 保持统一AI接口,便于后续替换方法
Visual suggestion: Simple flow from input position → choose move (with quick checks). — 视觉建议:从局面到选步的简易流程图(含快速检查)。
8) Speed-ups & Quality|加速与质量¶
- Go deeper step by step with time limit — 按时间限额逐步加深
- Remember past positions to avoid repeat work — 记住已见局面,减少重复计算
- Check good moves first to save time — 先检查更可能的好棋,节省时间
- Add simple multi-thread later if needed — 需要时再加简单多线程
- Measure basics: speed, depth, memory; keep small tests — 量基本指标:速度、深度、内存;保持小测试
Visual suggestion: Simple pipeline with 3 speed-up notes. — 视觉建议:简易流程图,标注3处加速点。
9) Compressed Roadmap & Milestones|压缩路线图与里程碑¶
- M1 (Week 1–2): Setup & plan — 建仓与计划
- Repo, build, simple local play — 仓库/构建/本地对战
- Goal: build passes; local play works — 目标:构建通过;本地对弈可用
- Check: start, move, no crash; README + task list — 验收:能启动、能落子、不崩溃;README与任务清单
- M2 (Week 3–5): Online basics — 在线基础
- Rooms & matchmaking; send/receive moves — 房间与匹配;收发走子
- Goal: online play loop works — 目标:联网对弈闭环打通
- Check: two PCs in one room finish a game — 验收:两台电脑同房完成一局
- M3 (Week 6–8): Network polish — 联网打磨
- Smooth latency, reconnect, save results — 延迟平滑、重连、保存结果
- Goal: playable on real networks — 目标:真实网络下可玩
- Check: 100–200ms ok; resume same game; view records — 验收:100–200ms可玩;可回到同局;可查看记录
- M4 (Week 9–11): AI v0 — AI初版
- Simple rules; one clean AI interface — 简单规则;统一AI接口
- Goal: basic AI via one interface — 目标:通过统一接口接入基础AI
- Check: human vs AI works; netcode unchanged — 验收:人机可用;联网代码无需改动
- M5 (Week 12–15): Tests & small charts — 测试与小图表
- Speed/depth charts; multiplayer stats — 速度/深度图;多人统计
- Goal: make small, repeatable charts — 目标:产出可重复的小图表
- Check: fixed script outputs speed/depth; basic multiplayer counts — 验收:固定脚本输出速度/深度;多人对局数量
- M6 (Week 16–19): AI v1 — AI进阶
- Faster search; remember positions — 更快搜索;记住局面
- Goal: faster/steadier AI — 目标:AI更快/更稳
- Check: deeper or faster at same time budget — 验收:同等时限下更深或更快
- M7 (Week 20–23, optional): Distributed add‑ons — 可选分布式增强
- Spectators or simple ranking — 旁观或简单排行
- Goal: one nice add‑on — 目标:完成一个增强点
- Check: spectators or ranking works — 验收:旁观或排行可用
- M8 (Week 24–30): Video & dissertation — 视频与论文
- Goal: video + paper draft — 目标:演示视频与论文稿
- Check: ≤10 min video; clear charts; paper structure ready — 验收:视频≤10分钟;图表清晰;论文结构就绪
Visual suggestion: Single line timeline with 6–8 markers. — 视觉建议:单线时间轴6–8节点。
10) Discussion & Next Steps|讨论与后续¶
- Questions: OK to go distributed‑first? how simple can AI v0 be? first demo content — 待讨论:是否认可分布式优先?AI初版多简单?首个演示内容
- Risks & plan B: time, network bugs; fallback to offline play; AI can stay simple — 风险与备选:时间与网络问题;可退回本地对战;AI先保持简单
- Next steps: lock MVP (online rooms + basic AI), set demo date, weekly goals — 下一步:锁定MVP(在线房间+基础AI)、定演示日期、订周目标
- Delivery: small demos often; keep repeatable tests and charts — 交付:小步快演示;保留可重复的小测试与图表
Visual suggestion: Simple checklist; space for notes. — 视觉建议:简易清单,留白做笔记。
Appendix (optional for printout)|附录(打印可选) - Glossary for non-experts (Reversi basics, bitboards) — 非专家术语表(黑白棋基础、位板) - Reference to COMP390 criteria & ethics link — COMP390评分标准与伦理链接提示