📄 ai_kua.h
字号:
// AI_kua.h: interface for the CAI_kua class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_AI_KUA_H__AF7F1525_EFCF_4077_8B85_88EC3FA588D6__INCLUDED_)
#define AFX_AI_KUA_H__AF7F1525_EFCF_4077_8B85_88EC3FA588D6__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//////////////////////////////////////////////////////////////////////////////
//名称 : CAI_kua类(继承与CHI) //
// //
//时间: 2003/11/25 //
// //
//最后修改时间: 2003/11/25 //
// //
//版本: 1.0 //
// //
//开发者: kua //
// //
//功能: 实现人工智能(AI) //
// //
//补充信息: Evaluate() :评估函数 //
// MinMax() : MinMax法搜索函数 //
// //
//Copyrights: kua 2003 //
//////////////////////////////////////////////////////////////////////////////
#include "HI.h"
class CAI_kua : public CHI
{
//有返回值的如无特殊注释,默认0:成功,1:失败
public:
int EvaluatePosition2(int blackorwhite);
int EvaluateDrop(int blackorwhite);
void Initialize(); //从CPlyaer类中得到attribute[9][9]
int Think(int turn,int depth,int EvaluateType); //继承自CPlayer
int SearchMax(int array[],int n); //搜索数组中的最大值,返回数组元素最大值下标
int EvaluateEnd(int blackorwhite);
int EvaluateStable(int blackorwhite);
int EvaluatePosition(int blackorwhite); //位置值法评估函数,给出当前局面下两种棋位置差值,positive为己方棋的种类。1:black 2: white
int MakeMove(int m,int n,int positive,int attributecopy[9][9]); // 执行第i个走法
int GenerateMove(int AIrow[64],int AIcolumn[64],int positive); // 产生当前局面下的所有可走着法
int UnMakeMove(int attributecopy[9][9]); //执行完MinMax之后返回执行前的每点的状态
int MinMax(int depth,bool type,int positive,int situation,int alpha,int beta); //MinMax法搜索棋盘,调用评估函数,给出这一步AI应走得最好的走好
int Implementation(int depth,int type,int positive,int situation); //实现MinMax搜索,返回当前局面下最好走子点的横纵坐标
int ThinkPad(int depth,int type,int positive,int EvaluateType); //AI实现函数,返回给judge类当前局面下最好的走子点,situation控制不同阶段不同评价方法
CAI_kua();
virtual ~CAI_kua();
friend class COthelloView; //COthelloView类为其友元类
};
#endif // !defined(AFX_AI_KUA_H__AF7F1525_EFCF_4077_8B85_88EC3FA588D6__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -