- 1、本文档共59页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
六子棋人机对战源代码
//头文件
// 接口类SearchEngine.h:interfacefortheCSearchEngineclass.
#includeMoveGenerator.h
#includeEveluation.h
classCSearchEngine
{
public:
CSearchEngine()
virtual~CSearchEngine()
virtual STONEMOVESearchAGoodMove(BYTEposition[][GRID_NUM], intType)=0;//得
到最优走法(核心),type为棋子颜色
virtualvoidSetEveluator(CEveluation*pEval){m_pEval=pEval;};//设置评估对象
virtualvoidSetSearchDepth(intnDepth){m_nSearchDepth=nDepth;}
virtual void SetMoveGenerator(CMoveGenerator *pMG){m_pMG= pMG;};//设置走法生
成器
BOOLGameOver(){returnm_bGameOver;};//返回游戏结束标记值
voidBeginGame(){m_bGameOver=FALSE;};//设置游戏结束标记值为FALSE
protected:
virtualvoidMakeMove(STONEMOVEmove,inttype);//计算机走最佳路,type为棋子颜
色
virtualvoidUnMakeMove(STONEMOVEmove)
BYTECurPosition[GRID_NUM][GRID_NUM];//棋盘
CMoveGenerator*m_pMG;//声明生成走法器已被定义
CEveluation*m_pEval;//声明评估对象已被定义
BOOLm_bGameOver;//游戏结束布尔型标记值
STONEMOVEm_cmBestMove
intm_nMaxDepth
intm_nSearchDepth
}
#endif
// 走法生成器类MoveGenerator.h:interfacefortheCMoveGeneratorclass.
#includeEveluation.h
#includeHistoryHeuristic.h
#includeNegaScout_TT_HH.h
#includeTranspositionTable.h
classCMoveGenerator
{
public:
CMoveGenerator()
virtual~CMoveGenerator()
int Sort_CreatePossibleMove(BYTE position[GRID_NUM][GRID_NUM], int nPly, int
Type)
intCreatePossibleMove(BYTEposition[GRID_NUM][GRID_NUM],intnPly,intType)
//此函数完成走法链,获得走法和相应
//走法的价值,所有走法的价值经过从大到小的排序,显然m_MoveList[2][0]是最优走
法
BOOLIsValidPosition(BYTEposition[GRID_NUM][GRID_NUM],inti,intj)
voidsort(intdepth,intn,intcount)
STONEMOVEm_MoveList[7][40000];//三层走法链,在这里只进行第一层即一位数组
m_MoveList[2]
//很显然,对当前局面最多只有64980路走法
protected:
intm_nMoveCount;//获得有哪些信誉好的足球投注网站当前局面的走法总数
CHistoryHeuristic*HistoryHeuristic
CEveluation*m_pEvel;//评估指针对象
}
#endif
// 置换表类TranspositionTable.h:interfacefortheCTranspositionTableclass.
enumENTRY_TYPE{exact,lower_bound,upper_bound}
typedefstructHASHI
您可能关注的文档
最近下载
- 小学体育_队列队形教学设计学情分析教材分析课后反思.doc
- 中建项目商务策划汇报模板.pptx
- 公路中小跨径钢-混组合梁桥标准图集(制订)》技术方案报告.docx
- “设计思维与方法”教案.ppt
- 大职赛生涯闯关参考答案.docx VIP
- 2022《美宜佳公司营运资金管理存在的问题及对策研究》开题报告文献综述(含提纲)3200字.docx VIP
- 长垣市人民医院西学中培训班《方剂学》考试.pdf VIP
- 苏教版一年级科学上册4.1《自然物与人造物》(课件).pptx
- 电子商务招聘简章模板.pdf
- 统编版小学语文二年级上册第六单元 先辈伟人 大单元整体学历案教案 教学设计附作业设计(基于新课标教学评一致性).docx
文档评论(0)