如何写论文?写好论文?免费论文网提供各类免费论文写作素材!
当前位置:免费论文网 > 美文好词 > 优质好文 > 和电脑下中国象棋

和电脑下中国象棋

来源:免费论文网 | 时间:2018-11-08 14:42 | 移动端:和电脑下中国象棋

篇一:中国象棋源代码及文档

摘 要

象棋程序可以分为两大部分:人工智能和界面程序辅助。人工智能的主要部分,反映了计算机下象棋的想法,电脑怎么想,最好的方法去完成下一步,优先搜索算法进行搜索,和各种可能的行动,评估,选择胜利面最大的一步;界面和程序协助部分主要是界面友好,以更好地适应用户下象棋的想法。

本文研究了中国象棋在电脑中如何表示,然后讨论如何产生走法的一系列相关技术。 使用MFC架构和Visual C + +开发工具,实现一定技能的中国象棋人机对弈功能。 关键词:中国象棋;人工智能;下棋

Title Chess Game

Abstract

Chess program can be divided into two major auxiliary artificial intelligence and interface program. The AI part of the main reflected computer chess ideas, computer how to think and go to the best method to complete the next step, first search algorithm to search, and a variety of possible moves, valuations, choose victory surface step; the interface and the program assisted some of the major user-friendly game of chess by the previous step, to better adjust the chess ideas.

This paper studies the Chinese chess computer, and then discuss how to generate a series of related moves. MFC architecture and Visual C development tools, to achieve a certain chess skills, Chinese chess, human-computer chess program.

Keywords: Chess; artificial intelligence; chess

目次

1 引言????????????????????????????? 1

1.1 象棋设计背景和研究意义???????????????????? 1

1.2象棋设计研究方法 ??????????????????????? 1 2 需求分析 ????????????????????????? 3

2.1 界面要求 ???????????????????????????3

2.2规则要求 ?????????????????????????? 3

2.3判定输赢 ?????????????????????????? 4 3系统设计与实现 ?????????????????????????6

3.1系统模块划分 ?????????????????????????6

3.2系统主要流程图 ????????????????????????6

3.3相关数据定义 ???????????????????????? 8 4系统测试运行?????????????????????????10

4.1测试方案设计 ??????????????????????????10

4.2测试过程及结果 ???????????????????????? 10

4.3系统的优缺点分析及改进方案??????????????????11

4.4系统性能分析?????????????????????????11

结论 ?????????????????????????????? 12 致谢 ?????????????????????????????? 13 参考文献?????????????????????????????14

1引言

1.1 象棋设计背景和研究意义

经过二十年的发展,电脑游戏行业已成为最重要的工作之一,以跟上全球电影,电视,音乐和其他娱乐行业,其年销售额超过好莱坞的全年收入的步伐。游戏作为一种休闲活动。由于早期人类社会的生产力和技术的限制,只有一些户外游戏。随着生产力的发展和技术进步,一种新的方式来播放 - 视频游戏也将诞生。

当计算机的发明,电子游戏和另外一个新的载体。在计算机行业作为一个整体的推动下,通过不断创新,开发电子游戏。由于计算机的发明到发展到各个领域,成为每天的工作和生活这一进程的重要组成部分,电子游戏已逐渐渗透我们每个人的休闲活动。电脑已经流行,人们可以使用的计算机程序编辑,开发自己的游戏,不再是一个梦想。事实上,从游戏软件销售的占个人电脑软件市场份额约80%。棋类游戏是休闲游戏,以及阶段的角色扮演游戏和实时战略游戏和其他游戏比上手快,比赛时间很短,但也有利于用户的放松,喜欢的人,尤其是棋类游戏,方便,快,操作简单,在休闲和娱乐活动中占主导地位。中国象棋作为中华民族的古老文化的代表之一,不仅有悠久的历史和广泛的基础,作为一个智力活动,中国象棋开始走向世界。

随着计算机处理速度的迅速增加,提出一个长期的问题:计算机是否会超越人类?计算机击败世界国际象棋大师,计算机比人强吗?人工智能是一个高度跨学科的,其中心任务是研究如何使电脑做过去依靠人类的智慧可以做的工作。因此,在游戏开发过程中的人工智能技术的研究自然成为行业的一个热门的研究方向。

1.2 象棋设计研究方法

本程序的核心设计包括象棋的表示,人工智能算法的实现,以及在整个游戏的界面和程序内的MFC类库开发的辅助部分,使用Visual C++ 开发工具,使游戏开发更方便,使用人工智能相关搜索算法,用人工智能的方法来产生计算机走法,从而提高整个游戏的功能。

本文的目标是要实现具有一定的象棋水平和互动与友好的中国象棋人机对弈象棋程序。

整个程序可分为两个主要部分:

篇二:中国象棋打谱系统

摘 要

中国象棋发展至今已有数千年的历史了,它是中华民族智慧的结晶。在我国,中国象棋的普及程度是其它棋类无法相比的,大致国际、国内比赛,小至社区街道。如今,仅中国就有两亿人会下中国象棋,且中国象棋的发展趋势日益国际化。

Java游戏程序的开发是计算机运用的一个重要方面之一。游戏程序的发展几乎与计算机网络和软硬件技术的发挥在那个基本保持同步。游戏无论是开发过程还是运行过程,对它所以依赖的计算机硬件配臵的要求较高。本设计采用软件工程学方法设计并实现个了中国象棋打谱系统,该系统能够制作保存用户对弈过程,能重新演示绝对过程,及复盘。当然它也能遵守象棋的一切基本规则,实现人机对战,人与人对战等多方面功能。

【关键词】中国象棋,打谱,复盘,JAVA,软件工程

Abstract

As the quintessence of a country for China,it has passed thousands of years since Chinese Chess developed. Other chess couledn't be compared with it's popularzation in China,form largeinternational or nationl competition to smaller pieces community street. It is the distillate of Chinese people's wisdom.Now,there are 200 million people can paly Chinese Chess only in China. And Chinese Chess is developing in the way of internationalization.

Java Development of the game program is one important ASPect of computer applications. Procedures for the development of the game almostremain the same step with computer NETwork and software technology development.Whether the development process oroperation process of game, it has to rely on a high computer hardware configuration.The paper designs and develops the Spectrum system of Chinese chess with Software Engineering .And the system can create and maintain a game process in order to re-demo game precess,which called chessboard resuming. Of course,it also can comply with all the basic chess rules and achieve many functions,such as human-machine war,man-man war and so on.

【Key words】Chinese Chess,Spectrum Fight,chessboard resuming, Java,

目 录

1.引言

1.1 主要设计 ........................................................................................................................... 1

1.2主要内容 ............................................................................................................................ 1

1.3设计要求 ............................................................................................................................ 1

2.开发平台

2.1 Java软件概述 .................................................................................................................. 3

2.2 Java的特点 ...................................................................................................................... 3

2.3 关于ECLIPSE .................................................................................................................... 5

3. 需求分析

3.1任务概述 ............................................................................................................................ 6

3.2 设计基本要求 ................................................................................................................... 6

4. 总体设计

4.1线程的设计 ........................................................................................................................ 8

4.1.1 通过Thread类实现 ............................................................................................. 8

4.1.2 实现Runnable接口 ............................................................................................. 8

4.2线程的生命周期 ................................................................................................................ 9

4.2.1 出生 ....................................................................................................................... 9

4.2.2 就绪 ....................................................................................................................... 9

4.2.3 运行 ....................................................................................................................... 9

4.2.4 阻塞 ....................................................................................................................... 9

4.2.5 死亡 ..................................................................................................................... 10

5.详细设计

5.1程序流程图 ...................................................................................................................... 11

5.2运行结果及界面 .............................................................................................................. 12

6.实验总结

致谢 .............................................................................................................................................. 16 参考文献 ................................................................................................................................... 17

南昌工学院课程设计论文

1.引言

1.1 主要设计

象棋水平的发展是需要靠信息技术来推动的,国际象棋有两个很好的范例,一个是象棋棋谱编辑和对弈程序的公共平台——WinBoard平台,另一个是商业的国际象棋数据库和对弈软件——ChessBase,他们为国际象棋爱好者和研究者提供了极大的便利。国际象棋软件有着成功的商业运作,已发展成一种产业。然而,电脑在中国象棋上的运用还刚刚起步,尽管国内涌现出一大批中国象棋的专业网站和专业软件,但是由于缺乏必要的基础工作,电脑技术在中国象棋上的应用优势还无法体现出来。

在设计中国象棋软件过程中,国际象棋软件有很多值得借鉴的成功经验和优秀的思想。例如B. Moreland,微软(Microsoft)的程序设计师,业余从事国际象棋引擎Ferret的开发,他的一系列关于国际象棋程序设计的文章非常值得其他棋类程序设计人员借鉴。然而,中国象棋与国际象棋存在着很大的差异,因此国际象棋的某些成熟技术,无法直接应用于中国象棋,需要对其加以改进和创新。

1.2主要内容

本课题采用Java语言编写这个中国象棋对弈系统程序。

主要工作内容:搜集相关资料,准备参考资料,学习掌握开发方法、开发工具,需求分析,确定游戏程序实施方案,根据要求设计具体的流程图,编写程序,修改、完善程序,系统调试、测试,优化处理。

1.3设计要求

中国象棋是双方在由9条和10条横线分割而成的棋盘对弈。竖线与横线的交叉点称做棋点,每个棋子都放置在棋点上 ,而不是方格中。河界将棋盘分为两个等分=份,没一边都有一个由9个点组成的区域“将”,“帅”,“士”只能在“九宫”内移动,并且“将”,“帅”,的每一步只可以水平或垂直移动一个棋点。士:“士”只能在“九宫”内移动,并且每一步只可以沿对角线方向移动一个棋点。象;一步必须沿对角线方向走两个棋点。但它既不能过河,也不能跳过或穿

1

篇三:象棋例胜例和

象 棋 定 式 残 局

序号 分类

编号 1 1 2 单兵 2

3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 双兵 10

11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 三兵 20

21 21 22 22 23 23 24 24 25 25 26 1 27 2 28 单马 3 29 4 30 5 31 6 32 马兵 7

33 8 34 9 3510 3611 37

12

双方子力 单兵对将 单兵对单士 单兵对双士 双兵对双士 双兵对双象 双兵对单士象 双兵对单缺士 双兵对单缺象 双兵单炮 双兵对单马 双兵对卒单士 双兵对卒单象 双兵对炮士 双兵对炮象 双兵对马士 双兵对马象 三兵对士象全 三兵对炮双士 三兵对炮双象 三兵对马双士 三兵对马双象 三兵对炮士象 三兵对马士象 三兵对卒单缺象 三兵对卒单缺士 单马对单士 单马对双士 单马对单卒 单马对单象 马底兵对双士 马底兵对单象 马底兵对双象 马底兵对单士象 马高兵对单缺象 马低兵对单缺象 马低兵对单缺士 马高兵对单缺士

残局结果 取胜要领 底线兵和,余均胜 困毙

一般和,有巧胜

一般和,有巧胜

高兵必胜 高低兵必胜,双低兵、高底兵酌情

高兵必胜 高低兵必胜,双低兵酌情

一般和,有巧胜

一般和,有巧胜一般和,有巧胜

双高兵必胜 有步骤地占领中心 一般胜 有步骤地占领中心 一般胜 双兵依靠帅力,分占肋道,取胜 一般胜 双兵依靠帅力,分占肋道,取胜 一般和,有巧胜 炮挡帅,红棋“二鬼拍门”后,无法进兵杀 一般和,有巧胜 飞高象,炮挡帅,红棋无法形成“二鬼拍门”

一般和,有巧胜 能换兵就换兵,不能换兵守中心 一般和,有巧胜 能换兵就换兵,不能换兵守中心

高兵必胜 从将的背侧先下一兵,兵帅强攻四、六路,成“二鬼

拍门”

一般和,有巧胜 炮庶将门,成和不难,红棋“二鬼拍门”后,无法杀

可以获胜 稳步占领中心,从而取胜 高兵可胜,其它和

可以取胜,注意方法 可以获胜 稳步占领中心,从而取胜

一般能和 以炮换兵 一般能和 以马换兵 一般能和 卒庶将门和

可以获胜 以兵换士(甚至擒士),兵强占中心胜 必胜 取胜关健是逼将上顶后,红马及时盖在将头上。

一般和,有巧胜过河卒肯定和,未过河可

能巧胜

一般和,有巧胜

将象在同侧,可以巧胜,将象在两侧,守和不难

必胜 兵换士胜

必胜

一般和

必胜 不要忽略帅的助攻,逼将象到一边,乃取胜关键

必胜 马高兵

可守和 羊角士庶住兵,将在无士侧,象在有士侧,可守和

可守和 士落将底,象双飞燕,官和 必胜

兵帅分占四、六路,获胜较易

1

3813 3914 4015 4116 4217 4318 4419 4520 4621 4722 4823 4924 5025 51 马兵 26

5227 5328 5429 55 单炮 1

562 573 584 59

5

60 炮兵 1 612 623 634 645 656 667 678 689 6910 7011 7112 7213 7314 7415 7516 76

17

77 双炮 1

马兵对士象全 马兵对卒双士 马兵对卒单缺象 马兵对卒单缺士 马低兵对单炮 马低兵对单马 马兵对炮象 马兵炮双象 马兵对炮士 马兵对马象 马兵对马士 马双兵对炮单缺象 马双兵对马单缺象 马双兵对马单缺士 马双兵对炮单缺士 马双兵对马士象全 马双兵对炮士象全

炮仕对双士 炮仕相对士象 炮双仕对单马 炮双仕对卒士 炮双仕对卒象 炮底兵单仕相对单士象炮高兵对单象 炮高兵对双象 炮低兵对单象 炮高兵相对双象 炮兵对双士 炮低兵相对单士象 炮低兵仕对单缺士 炮低兵仕对单缺象 炮兵仕相对士象全 炮高兵相对单炮 炮高兵双仕对炮士 炮兵双仕对炮象 炮高兵双仕对马士 炮高兵仕相对马象 炮双兵对马士象全 炮双兵对炮士象全 双炮双相对双象

可守和 必胜 一般和 必胜 一般和 必胜 必胜 一般和 高兵必胜 一般和 必胜 一般和 一般和 一般胜 一般胜 一般和 一般和 必胜 和棋 一般和,有巧胜

和棋 必胜 必胜 必胜 一般和 一般和 必胜

高兵必胜,低兵可和一般和 必胜 必胜 炮高兵必胜

必胜 必胜 高兵必胜 必胜 单缺相则必胜

和棋 和棋 必胜

2

士象全部双飞燕,官和

变化复杂

马兵联合捉象时,象退5弃象让兵吃,困住兵,和棋

高级残棋,变化复杂

变化复杂

变化复杂 变化复杂 变化复杂

将士互保,象走闲着,小心防范,可以成和

将士互保,卒走闲着,小心防范,可以成和

将象无力自保,各个击破

先把红相调至黑象一边,借打象闪身,红帅巧牵将士 兵帅分占四、六路,兵从有象的一边冲下,最终困毙

让红变成低兵才让它吃一象,炮低兵不胜单象(将在

底)

将在底,象走闲,则和;将在士角,炮借将作架,可

得象胜

炮高兵必胜单士象,炮高兵相必胜单缺象或单缺士

高兵则炮换双士胜,低兵可能和棋

士落将底,象走闲

兵帅分占四六路可必胜

先用沉底炮,兵从炮侧下,得士象,变成炮低兵对士

利用兑炮相威胁,兵帅强占四六路胜

红兵设法占领中心胜 中路与两翼夹击,黑无法守和

炮双兵对马单缺象(士),可胜 炮双兵对炮单缺象(士),可胜 “等着”运用很关键,要悉心体会

78 79 80 81 83 84 85 8623452345 双炮双相对士象全 双炮仕相全对马双象 双炮双仕对炮双士 双炮双仕对马双士 双马对士象全 双马难胜马双象 马炮对士象全 马炮仕相全对双马 马炮兵仕相全 必胜 必胜 必胜 必胜 必胜 和棋 必胜 必胜 和棋 用帅配合,攻用等着,先灭双士,乃取胜要点 炮双象可以守和双炮仕相全(炮庶将门)

双马必胜马双士、必胜炮双士 双马难胜炮双象,难胜双炮

马炮仕相全必胜马士象全,不胜炮士象全 马炮仕相全必胜双马,不胜双炮、马炮、单车 难胜马炮(双马、双炮)士象全,再加一兵必胜

82 马炮 1

87 单车 1

882 893 904 915 926 937 948 948 95

9

96 车兵 1 972 983 99

4

100 车炮 1 1012 1023 1034 104 车马 1 1052 106 双车 1 1072 1083 1094 110 车马

兵 1

1112 1123 1134 114 车炮兵

1

1152 单车对士象全 一般和,有巧胜单车对炮双士 一般和,有巧胜

单车对马双士 必胜 赶马至无士一边,车把老将调上来,再抓马,牵士,

灭士胜

单车对炮双象 一般和,有巧胜 形成“炮三象式”便可和

单车对马双象 一般和,有巧胜 只有形成“马三象式”才能和,否则输

单车对马单缺象 到位可和,否则要输 “只马当象”可和,马贴将即可 单车对马单缺士 到位可和,否则要输 “只马当士”可和,马贴将即可

单车对双卒双士 到位可和,否则要输 卒庶将门和 单车对双卒双士 到位可和,否则要输 卒庶将门和 单车对双象双卒 到位可和,否则要输 卒庶将门和

车兵对炮士象全 一般和,有巧胜 车兵可胜马士象全,主要胜法是兵换双士,防“马三

象式”

车兵对车双象 红有仕相必胜 夺取中路,可以获胜

车兵对车单士 低兵可和,高兵必胜 高兵时有步骤夺取中路后,因黑无法形成“单车临

士”,取胜 车双兵对车士象全

高级残棋,胜负难定 待研究 车炮对单车 红车占中可胜,否则和棋

“海底捞月”胜法 车炮仕相全对车士象全 一般和,有巧胜

黑车不能被车炮套牢

车炮仕相全对车炮 必胜 车炮仕相全不胜车马双象,可胜车马双士 车炮双仕对车卒双士 必胜 车炮仕相全对车卒双象可取胜,难度较大

车马双相对车双士 必胜 车单缺象可守和车马,难度较大 车马仕相全对双马士象全

必胜 但不胜马炮士象全或双炮士象全

双车对车士象全 一般和,有巧胜

双车对双马士象全 必胜

双车对马炮士象全 到位可和,否则要输 同理双炮士象全守双车更容易

双车对车炮双士 一般和,有巧胜

车马兵对车士象全 必胜 只要防黑棋兑车,取胜方法多样

车马兵对车炮双士 必胜 马换双士,车兵巧胜车炮 车马兵仕相全对车炮单缺士

必胜 缺士难以防守,红棋可胜

车马兵对车炮单缺象 一般和,有巧胜

车炮兵对车士象全

必胜

车炮兵仕相全对车卒士象全

必胜

红可利用中炮杀法,夺卒取胜

3

4


和电脑下中国象棋》由:免费论文网互联网用户整理提供;
链接地址:http://www.csmayi.cn/meiwen/24819.html
转载请保留,谢谢!
相关文章