资源简介
中国象棋vs2010源码, 带人工智能,人机对战

代码片段和文件信息
// AlphaBetaEngine.cpp: implementation of the CAlphaBetaEngine class.
//
//////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include “AlphaBetaEngine.h“
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CAlphaBetaEngine::CAlphaBetaEngine()
{
}
CAlphaBetaEngine::~CAlphaBetaEngine()
{
}
void CAlphaBetaEngine::SearchAGoodMove(BYTE position[][9])
{
memcpy(CurPositionposition90); //将当前局面复制到CurPosition
m_nMaxDepth=m_nSearchDepth; //设定搜索深度
AlphaBeta(m_nMaxDepth-2000020000);//进行alphabeta搜索
m_umUndoMove.cmChessMove=m_cmBestMove;
m_umUndoMove.nChessID=MakeMove(&m_cmBestMove);
memcpy(positionCurPosition90); //将走过的棋盘传出
}
int CAlphaBetaEngine::AlphaBeta(int nDepthint alphaint beta)
{
int score;
int Counti;
BYTE type;
i=IsGameOver(CurPositionnDepth);//检查是否游戏结束
if(i!=0)
return i;//结束,返回估值
//叶子节点取估值
if(nDepth<=0)
return m_pEval->Eveluate(CurPosition(m_nMaxDepth-nDepth)%2m_nUserChessColor);
//此函数找出当前局面所有可能的走法,然后放进m_pMG ->m_MoveList当中
Count=m_pMG->CreatePossibleMove(CurPositionnDepth(m_nMaxDepth-nDepth)%2m_nUserChessColor);
if(nDepth==m_nMaxDepth)
{
//在根节点设定进度条
m_pThinkProgress->SetRange(0Count);
m_pThinkProgress->SetStep(1);
}
//对所有可能的走法
for(i=0;i {
if(nDepth==m_nMaxDepth)
m_pThinkProgress->StepIt();//走进度条
type=MakeMove(&m_pMG->m_MoveList[nDepth][i]); //将当前局面应用此走法,变为子节点的局面
score=-AlphaBeta(nDepth-1-beta-alpha); //递归搜索子节点
UnMakeMove(&m_pMG->m_MoveList[nDepth][i]type);//将此节点的局面恢复为当前节点
if(score>alpha)
{
alpha=score;//保留极大值
//靠近根节点时保留最佳走法
if(nDepth==m_nMaxDepth)
m_cmBestMove=m_pMG->m_MoveList[nDepth][i];
}
if(alpha>=beta)
break;//剪枝,放弃搜索剩下的节点
}
return alpha;//返回极大值
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2114 2017-02-27 17:24 中国象棋VS2010\Source Code\AlphaBetaEngine.cpp
文件 824 2017-02-27 17:25 中国象棋VS2010\Source Code\AlphaBetaEngine.h
文件 2203 2017-02-27 17:25 中国象棋VS2010\Source Code\Alphabeta_HH.cpp
文件 831 2017-02-27 17:23 中国象棋VS2010\Source Code\Alphabeta_HH.h
文件 2751 2017-02-27 17:24 中国象棋VS2010\Source Code\AlphaBeta_TTEngine.cpp
文件 845 2017-02-27 17:25 中国象棋VS2010\Source Code\AlphaBeta_TTEngine.h
文件 1214 2017-02-27 17:25 中国象棋VS2010\Source Code\AspirationSearch.cpp
文件 709 2017-02-27 17:23 中国象棋VS2010\Source Code\AspirationSearch.h
文件 523580 2017-02-27 22:01 中国象棋VS2010\Source Code\Chess.aps
文件 2049 2004-07-05 11:48 中国象棋VS2010\Source Code\Chess.cpp
文件 1334 2004-08-23 20:19 中国象棋VS2010\Source Code\Chess.h
文件 62976 2004-08-24 13:20 中国象棋VS2010\Source Code\Chess.opt
文件 11374 2017-02-27 21:54 中国象棋VS2010\Source Code\Chess.rc
文件 876 2017-02-27 17:15 中国象棋VS2010\Source Code\Chess.sln
..A..H. 31744 2017-02-28 18:39 中国象棋VS2010\Source Code\Chess.suo
文件 10316 2017-02-27 17:14 中国象棋VS2010\Source Code\Chess.vcxproj
文件 7466 2017-02-27 17:14 中国象棋VS2010\Source Code\Chess.vcxproj.filters
文件 143 2017-02-27 17:57 中国象棋VS2010\Source Code\Chess.vcxproj.user
文件 50501 2017-02-28 18:27 中国象棋VS2010\Source Code\ChessDlg.cpp
文件 5458 2004-08-24 10:51 中国象棋VS2010\Source Code\ChessDlg.h
文件 6149 2003-04-24 16:41 中国象棋VS2010\Source Code\CoolButton.cpp
文件 1527 2003-04-24 16:41 中国象棋VS2010\Source Code\CoolButton.h
文件 918016 2017-02-28 18:27 中国象棋VS2010\Source Code\Debug\Chess.exe
文件 1534 2004-08-18 18:17 中国象棋VS2010\Source Code\Define.h
文件 20076 2004-08-19 14:50 中国象棋VS2010\Source Code\Eveluation.cpp
文件 2554 2004-08-19 14:37 中国象棋VS2010\Source Code\Eveluation.h
文件 2186 2017-02-27 17:25 中国象棋VS2010\Source Code\FAlphaBetaEngine.cpp
文件 823 2017-02-27 17:24 中国象棋VS2010\Source Code\FAlphaBetaEngine.h
文件 4539 2004-08-17 14:32 中国象棋VS2010\Source Code\GradientProgressCtrl.cpp
文件 2221 2004-08-17 14:29 中国象棋VS2010\Source Code\GradientProgressCtrl.h
............此处省略77个文件信息
- 上一篇:openmv+stm32+as608
- 下一篇:数据挖掘教程浙大PPT
相关资源
- 推箱子及人工智能寻路C 源代码
- 国际象棋c 完整版
- 北航人工智能原理课大作业源代码,
- vc编写中国象棋详细源码注释并附有视
- FLASH象棋源码很容易改成网络对战版的
- AI人工智能学习资料全套
- 用户网络行为画像 大数据中的用户网
- 中科院自动化所历年模式识别博士题
- Pathon开发象棋小游戏总文件
- 华南理工大学人工智能期末考试卷
- LabVIEW实现Fuzzy_PID的补充资源
- 微信小程序Demo/---欧拉蜜自然语言理解
- 微信小程序完整Demo--支持人工智能对
- 艾媒-2017年中国人工智能产业专题研究
- 工信部人工智能产业人才岗位能力标
- AMiner:2018年人工智能之自动驾驶研究
- 艾瑞咨询:2018年中国人工智能+金融行
- Qt实现的简单的中国象棋程序
- 2019技术趋势:人工智能报告
- 法院行业方案宣讲稿-海康
- 8.2 心智探奇 人类心智的起源与进化
- 象棋小虫引擎
- 人工智能尼尔森,2003,第1版
- 乌镇指数全球人工智能发展报告2017投
- 模式识别之特征选择
- 佳佳象棋陆海空版.zip
- springMVC的学习代码
- 人工智能全部课件和作业题
- 哥德尔、艾舍尔、巴赫——集异璧之
- 西电人工智能课件
评论
共有 条评论