免费获取| 专业列表 论文代理
论文天下网


自动化 模具 机械 电子 通信 动画 英语论文 工程管理 金融论文 旅游管理 工业工程 生物工程 给排水论文 西门子PLC 历史学 三菱PLC
单片机 财务 会计 法律 行政 物理 物流论文 电子商务 制药工程 包装工程 土木工程 材料科学 汉语言论文 欧姆龙PLC 电压表 松下PLC
计算机 化工 数电 工商 食品 德语 国贸论文 人力资源 教育管理 交通工程 市场营销 印刷工程 机电一体化 数控论文 变电站 文化产业

  • 论文天下网 |
  • 原创毕业论文 |
  • 论文范文 |
  • 论文下载 |
  • 计算机论文 |
  • 论文降重 |
  • 毕业论文 |
  • 外文翻译 |
  • 免费论文 |
  • 开题报告 |
  • 心得体会 |
微信集赞换取论文,低至28个 毕业论文快速高质量降重 如何验证论文网的真实性 本站论文介绍说明

当前位置:论文天下网 -> 免费论文 -> 计算机论文
·电子商务原创毕业论文
·法学专业原创毕业论文
·土木工程原创毕业论文
·工商管理专业原创论文
·电气自动化原创毕业论文
·汉语言文学专业原创论文
·会计专业原创毕业论文
·计算机技术原创毕业论文
·人力资源专业原创毕业论文
·市场营销专业原创论文
·信息管理专业原创毕业论文
·学前教育专业原创论文
·教育管理专业原创论文
·小学教育专业原创论文
·应用心理学专业原创论文
·英语专业原创论文
·播音与主持原创毕业论文
·行政管理专业原创论文
·广播电视编导原创毕业论文
·摄影专业原创毕业论文
·广告学专业原创毕业论文
·新闻学专业原创毕业论文
·文化产业管理原创毕业论文
·视觉传达设计原创毕业论文
·表演专业原创毕业论文
·动画专业原创毕业论文
·录音艺术原创毕业论文
·护理专业原创毕业论文
·通信工程原创毕业论文
·金融专业原创毕业论文

免费vc中国象棋软件(三)

。
 我们假定棋盘上的局面发展到了结点A(见下图),现在轮到你走棋了,你是“最大的一方”——即你希望棋局的分值尽可能的高。让我们试着搜索两层来看一看“树的裁剪”对提高搜索效率的帮助。
 
 图中表示该结点要取子结点中的最大值;表示该结点要取子结点中的最小值。
 首先,我们考察结点A的子结点B。结点B所属的这一层是轮到你的对手——“最小者”来走棋了,他的目的是使得棋局的分值尽可能的小。依次考察结点B的各个子结点,查看它们的分值(因为我们事先约定好了搜索两层,现在已达到搜索深度的要求了,所以就停下来调用局面评估函数来给它打分)。结点B的第一个子结点(从左到右算起)返回10,第二个子结点返回了-5,第三个子结点返回了2。由于结点B这层是你的对手来做选择,我们假设他一定会做出明智的选择(你不能寄希望于你的对手会走出一步“昏招”),那么他会选择返回值为-5的那个结点。-5最终也就成了从结点B传递回的值,即倘若你(现在位于结点A)选择了产生结点B的走法,使得局面发展到了结点B。那么下一步,你的对手的选择就会使得棋局发展成为分值为-5的那个结点所表示的局面。
 我们再来分析结点A的第二个子结点C,结点C与结点B同属一层,它依然是轮到你的对手作选择。依次查看结点C的各个子结点的分值,其第一个子结点返回了-8……
 好了,该是“裁剪”登场的时候了。你已经不必再继续考察结点C的剩余子结点了,因为结点C已经够糟糕的了,不管结点C的剩余子结点有怎样的分值,它最多只能传回-8(有可能其剩余子结点中还有分值更小的结点,因而结点C还有可能传回更小的值)。而与前面已经分析过的结点B所传回-5相比较,作为“最大一方”的你显然更不愿意看到-8的局面。所以,你当然不会选择相应的着法使得局面发展成为结点C。因为那样的话,下一步你的对手就会带给你一个分值不高于-8的局面。
 由此,我们就在不影响搜索质量的前提下避免了搜索“无价值的”结点C的剩余子结点的大量工作,从而节省了宝贵时间,为在同样机器配置下搜索更多的层数提供了可能。
 “最小-最大”的思想再加上“对树的裁剪”,这就是Alpha-Beta搜索算法的核心。最基本的Alpha-Beta算法的代码如下:
 
int AlphaBeta(int depth, int alpha, int beta)
{
 if (depth == 0)   //如果是叶子节点(到达搜索深度要求)
  return Evaluate(); //则由局面评估函数返回估值
 
 GenerateLegalMoves(); //产生所有合法着法
 
 while (MovesLeft())  //遍历所有着法
 {
  MakeNextMove();  //执行着法
  int val = -AlphaBeta(depth - 1, -beta, -alpha); //递归调用   UnmakeMove();  //撤销着法
  
  if (val >= beta)  //裁剪
   return beta;
  if (val > alpha)  //保留最大值
   alpha = val;
 }
 
 return alpha;
}

5、历史启发及着法排序(搜索辅助)

 既然Alpha-Beta搜索算法是在“最小-最大”的基础上引入“树的裁剪”的思想以期提高效率,那么它的效率将在很大程度上取决于树的结构——如果搜索了没多久就发现可以进行“裁剪”了,那么需要分析的工作量将大大减少,效率自然也就大大提高;而如果直至分析了所有的可能性之后才能做出“裁剪”操作,那此时“裁剪”也已经失去了它原有的价值(因为你已经分析了所有情况,这时的Alpha-Beta搜索已和“最小-最大”搜索别无二致了)。因而,要想保证Alpha-Beta搜索算法的效率就需要调整树的结构,即调整待搜索的结点的顺序,使得“裁剪”可以尽可能早地发生。
 我们可以根据部分已经搜索过的结果来调整将要搜索的结点的顺序。因为,通常当一个局面经过搜索被认为较好时,其子结点中往往有一些与它相似的局面(如个别无关紧要的棋子位置有所不同)也是较好的。由J.Schaeffer所提出的“历史启发”(History Heuristic)就是建立在这样一种观点之上的。在搜索的过程中,每当发现一个好的走法,我们就给该走法累加一个增量以记录其“历史得分”,一个多次被搜索并认为是好的走法的“历史得分”就会较高。对于即将搜索的结点,按照“历史得分”的高低对它们进行排序,保证较好的走法(“历史得分”高的走法)排在前面,这样Alpha-Beta搜索就可以尽可能早地进行“裁剪”,从而保证了搜索的效率。
 对于着法的排序可以使用各种排序算法,在我们的程序中采用了归并排序。归并排序的空间复杂度为O(n),时间复杂度为O(nlog2n),具有较高的效率。

6、局面评估

 前面已经讲过了棋局表示、着法生成、搜索算法(包括搜索辅助), 在象棋程序中如果说搜索算法是心脏,那么局面评估就是大脑。搜索算法负责驱动整个程序,而局面评估则负责对搜索的内容进行判断和评价。因而搜索与局面评估是整个下棋引擎的核心。
 首先,先介绍一下在局面评估中需要考虑的因素。就不同的棋类可能要考虑的因素略有差异。在中国象棋中所要考虑的最基本的几个因素包括如下四点:
 1、子力总和
 子力是指某一棋子本身所具有的价值。通俗地讲就是一个棋子它值个什么价。例如,车值500的话,那可能马值300,卒值80等等。所以在评估局面时,我们首先要考虑双方的子力总和的对比。比如红方拥有士象全加车马炮,而黑方只有残士象加双马,则红方明显占优。
 2、棋子位置(控制区域)
 棋子位置,或称控制区域,是指某一方的棋子在棋盘上所占据(控制)的位置。例如,沉底炮、过河卒、以及车占士角等都是较好的棋子位置状态,而窝心马、将离开底线等则属较差的棋子位置状态。
 3、棋子的机动性
 棋子的机动性指棋子的灵活度(可移动性)。例如,起始位置的车机动性较差,所以我们下棋讲究早出车。同样四面被憋马腿的死马机动性也较差(对于一步也不能走的棋子,可以认为其机动性为零)。
 4、棋子的相互关系(包括攻击关系和保护关系)
 这一点的分析较为复杂,因为一个棋子与其它子之间往往存在多重关系。如:一个马可能在对方的炮的攻击之下同时它又攻击着对方的车。
 
&nb

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 3/7/7

相关论文
软件缺陷管理系统的分析与设计
计算机软件技术开发应用分析
关于计算机应用及软件讨论
浅析计算机软件可维护性方法
网站更新自动检测软件设计
大型超市管理系统软件的设计
我国软件产业的现状与对策分析
财务管理 市场营销 幼儿教育 PLC 单片机 教育 幼儿园 中小企业 教师 内部控制 工程造价 电子商务 PLC 变频调速 供水 系统 应用 控制 交流 变频 电梯 设计 火灾 自动 报警系统 单片机 烟雾 检测 篮球 比赛 计时器  自动售货机 控制系统 电热水器 温度 异步电动机 MATLAB 10kV 配电 线路 控制器 智能交通  机床  机械手 变电站 变压器 自动化 售货机 花样喷泉 立体车库 洗衣机 西门子PLC 组态控制 抢答器 数控车床 自行车 里程 车速 超声波 液位 传感器 密码锁 机构 数控激光 切割机设计 后托架 加工工艺 夹具设计 CA6140 传动轴 注塑 模具设计 液压 风险管理 银行 竞争力 中小企业 内部控制 状况 调查报告 融资 管理 中间业务 实习报告 金融 监管 制度  农村 养老保险 合作医疗 外贸 理财 规划 网上银行 发展现状 个人理财 人民币 升值 
上一篇:免费vc++网上寻呼QICQ源代码(附.. 下一篇:免费图书管理系统
推荐论文 本专业最新论文
贸易公司信息管理系统+VB
VB高速公路票据管理系统
电子教务管理系统vb
delphi+access通用会员管理系统[开题..
个人网站设计之上网导航设计
网上办公自动化系统的设计和实现
特洛伊木马攻击分析和检测技术
特洛伊木马程序攻击分析和检测技术
《数据结构》教学辅助系统的规划与设计
学校计算机网络环境下教学模式的研究
浅谈计算机系统维护
智能楼宇网络规划与设计
Tags:免费 中国象棋 软件 【返回顶部】

客服QQ:349991040点击这里给我发消息

微   信:1 7 3 0 4 5 4 5

相关栏目

自动化相关
计算机论文
工程管理论文
法律论文
医学论文
人力资源
电子专业
电气工程
英语论文
行政管理
电子商务
社科文学
教育论文
物流专业
金融专业
财务管理
会计专业
化学化工材料科学
电子通信
环境科学
经济类
机械模具类
报告,总结,申请书
其他专业论文

PLC 变频调速 供水 系统 应用 控制 交流 变频 电梯 设计 火灾 自动 报警系统 单片机 烟雾 检测 篮球 比赛 计时器  自动售货机 控制系统 电热水器 温度 异步电动机 MATLAB 10kV 配电 线路 控制器 智能交通  机床  机械手 变电站 变压器 自动化 售货机 花样喷泉 立体车库 洗衣机 西门子PLC 组态控制 抢答器 数控车床 自行车 里程 车速 超声波 液位 传感器 密码锁 机构 数控激光 切割机设计 后托架 加工工艺 夹具设计 CA6140 传动轴 注塑 模具设计 液压
风险管理 银行 竞争力 中小企业 内部控制 状况 调查报告 融资 管理 中间业务 实习报告 金融 监管 制度  农村 养老保险 合作医疗 外贸 理财 规划 网上银行 发展现状 个人理财 人民币 升值

关于我们 | 联系方式 | 论文说明 | 网站地图 | 免费获取 | 钻石会员 | 原创毕业论文

 

论文天下网提供论文检测,论文降重,论文范文,论文排版,网站永久域名WWW.GEPUW.NET

本站部分文章来自网友投稿上传,如发现侵犯了您的版权,请联系指出,本站及时确认并删除  E-mail: 893628136@qq.com

Copyright@ 2009-2022 GEPUW.NET 论文天下网 版权所有