# games **Repository Path**: jackson222/game ## Basic Information - **Project Name**: games - **Description**: AI五子棋游戏 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-11-05 - **Last Updated**: 2025-11-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: AI-Games ## README ## 五子棋AI对战游戏 这是一个基于Windows平台的五子棋游戏项目,使用C++语言和Windows API开发。游戏支持人机对战和AI对战模式,AI具备强化学习能力,能够通过游戏不断提升棋力。

游戏截图

## 项目特点 - **双模式对战**:支持人机对战和AI自动对战 - **智能AI**:基于强化学习算法的AI,具备自我学习和提升能力 - **经验持久化**:AI学习经验自动保存到文件,重启后继续积累 - **多种交互**:提供悔棋、快速对战等多种游戏功能 - **实时显示**:实时显示AI学习状态和对战统计信息 AI的智能程度使用以下强化学习指标衡量: 1. **经验值 (Experience)** - AI通过游戏获得的经验累积 2. **知识库 (Knowledge Base)** - AI掌握的策略和位置知识 3. **适应性 (Adaptability)** - AI适应不同局面的能力 4. **探索率 (Exploration Rate)** - AI尝试新策略的概率(随时间递减) ## 安装说明 本项目需要使用Microsoft Visual Studio进行编译和运行。请按照以下步骤操作: 1. 安装Microsoft Visual Studio(推荐2019或更高版本) 2. 打开项目文件[game1.sln](file://C:\Users\Administrator\source\repos\game\game1.sln) 3. 在Visual Studio中选择"生成" -> "重新生成解决方案" 4. 编译完成后,在Debug目录下会生成可执行文件`game1.exe` ## 使用说明 ### 基本操作 1. 运行生成的`game1.exe`文件 2. 游戏窗口打开后,玩家执黑子,通过鼠标左键在棋盘交叉点落子 3. AI执白子,会自动进行对战 ### 功能按钮 - **开始游戏**:重新开始一局新的游戏 - **悔棋**:撤销上一步玩家和AI的走棋(仅在人机对战模式下可用) - **AI对战**:启动两个AI之间的自动对战模式 - **快速5局**:让两个AI快速进行5局对战,加速AI学习 ### 游戏模式 1. **人机对战**:默认模式,玩家执黑对战AI(白子) 2. **AI对战**:两个AI自动对战,观察AI之间的博弈 3. **快速对战**:AI快速进行多局对战,快速积累经验 ### 快捷键 - **鼠标左键**:在棋盘上落子(人机对战模式) - **鼠标右键**:重新开始游戏 - **空格键**:切换AI模式开启/关闭 ## 界面说明 ### 游戏状态显示 - 棋盘上方中央显示当前回合状态(你的回合/AI思考中/游戏结束) - 右侧区域显示AI学习状态和对战统计信息 ### AI学习指标 - **经验值**:AI通过游戏获得的总体经验数值 - **知识库**:AI掌握的策略和位置知识丰富程度 - **适应性**:AI应对不同局面的适应能力 - **探索率**:AI尝试新策略的概率 - **胜率统计**:AI的获胜局数和总体胜率 ## 技术特性 ### 核心功能 - 基于Windows API的图形界面实现 - 五子棋游戏规则完整实现 - 智能AI算法,包含位置评估和策略选择 - 游戏状态持久化,支持经验数据保存和加载 ### AI强化学习机制 - **位置评估**:基于连子数、阻挡情况等评估每个位置的价值 - **经验积累**:通过胜负结果调整策略和位置偏好 - **自我提升**:随着对局增加,AI决策能力逐步提升 - **数据持久化**:学习经验保存到文件,重启后继续使用 ### 文件结构 - [Resource.h](file://C:\Users\Administrator\source\repos\game\Resource.h):定义项目中使用的资源标识符 - [framework.h](file://C:\Users\Administrator\source\repos\game\framework.h):包含Windows API的头文件配置 - [game1.h](file://C:\Users\Administrator\source\repos\game\game1.h):主程序头文件 - [game1.rc](file://C:\Users\Administrator\source\repos\game\game1.rc):资源脚本文件,定义界面元素和图标 - [game1.ico](file://C:\Users\Administrator\source\repos\game\game1.ico) 和 [small.ico](file://C:\Users\Administrator\source\repos\game\small.ico):项目图标文件 - [ai_learning_data.dat](file://C:\Users\Administrator\source\repos\game\Debug\ai_learning_data.dat):AI学习数据保存文件 - `.vs/`目录:包含Visual Studio的配置文件 - `Debug/`目录:编译生成的可执行文件和调试信息 ## 注意事项 - 本项目是基于Windows平台开发的,只能在Windows系统上编译和运行 - 需要安装Visual Studio的C++开发工具包 - 如果遇到编译错误,请检查Visual Studio的编译器版本和项目配置是否匹配 - AI学习数据保存在[ai_learning_data.dat](file://C:\Users\Administrator\source\repos\game\Debug\ai_learning_data.dat)文件中,请勿删除 ## 学习价值 本项目适合用于学习以下技术知识: - Windows API图形界面编程 - 基础游戏开发框架设计 - 简单AI算法实现 - 强化学习基础概念应用 - 数据持久化技术 - C++面向对象编程实践 通过这个项目,开发者可以深入了解Windows桌面应用程序开发流程,掌握游戏逻辑实现方法,以及学习基础的人工智能算法应用。