首页
短视频去水印
文件下载
熊文件免费下载
登录 / 注册
一级分类:
安全技术
存储
操作系统
服务器应用
行业
课程资源
开发技术
考试认证
数据库
网络技术
信息化
移动开发
云计算
大数据
跨平台
音视频
游戏开发
人工智能
区块链
二级分类:
C语言Renju规则五子棋AI
GomokuAIincludingMinimax,HeuristicEvaluation,Alpha-BetaPruning,pre-evaluate,IterativeDeepening,VCT/VCF,PVS,killerheuristicsearch,dynamicmulti-thread(notverydynamic).Renjurule
2023/10/7 22:21:53
11KB
五子棋AI
gomoku
AI
Renju
1
黑白棋回溯算法及论文
•Alpha-Beta剪枝(Alpha-Beta
pruning
)对于一般的最大最小搜索,即使每一步只有很少的下法,搜索的位置也会增长非常快;
在大多数的中局棋形中,每步平均有十个位置可以下棋,于是假设搜索九步(程序术语称为搜索深度为九),就要搜索十亿个位置(十的九次方),极大地限制了电脑的棋力。
于是采用了一个方法,叫“alpha-beta剪枝”,它大为减少了检测的数目,提高电脑搜索的速度。
各种各样的这种算法用于所有的强力Othello程序。
(同样用于其他棋类游戏,如国际象棋和跳棋)。
为了搜索九步,一个好的程序只用搜索十万到一百万个位置,而不是没用前的十亿次。
•估值这是一个程序中最重要的部分,如果这个模块太弱,则就算算法再好也没有用。
我将要叙述三种不同的估值函数范例。
我相信,大多数的Othello程序都可以归结于此。
棋格表:这种算法的意思是,不同的棋格有不同的值,角的值大而角旁边的格子值要小。
忽视对称的话,棋盘上有10个不同的位置,每个格子根据三种可能性赋值:黑棋、白棋和空。
更有经验的逼近是在游戏的不同阶段对格子赋予不同的值。
例如,角在开局阶段和中局开始阶段比终局阶段更重要。
采用这种算法的程序总是很弱(我这样认为),但另一方面,它很容易实现,于是许多程序开始采用这种逼近。
基于举动力的估值:这种更久远的接近有很强的全局观,而不像棋格表那样局部化。
观察表明,许多人类玩者努力获得最大的举动力(可下棋的数目)和潜在举动力(临近对手棋子的空格,见技巧篇)。
如果代码有效率的话,可以很快发现,它们提高棋力很多。
基于模版的估值:正如上面提及的,许多中等力量的程序经常合并一些边角判断的知识,最大举动力和潜在举动力是全局特性,但是他们可以被切割成局部配置,再加在一起。
棋子最少化也是如此。
这导致了以下的概括:在估值函数中仅用局部配置(模版),这通常用单独计算每一行、一列、斜边和角落判断,再加在一起来实现。
估值合并:一般程序的估值基于许多的参数,如举动力、潜在举动力、余裕手、边角判断、稳定子。
但是怎么样将他们合并起来得到一个估值呢?一般采用线性合并。
设a1,a2,a3,a4为参数,则估值s:=n1*a1+n2*a2+n3*a3+n4*a4。
其中n1,n2,n3,n4为常数,术语叫“权重”(weight),它决定了参数的重要性,它们取决于统计值。
2017/8/17 10:01:12
884KB
黑白棋
算法
论文
1
python大作业含爬虫、数据可视化、地图、报告、及源码(2016-2021全国各地区粮食产量).rar
(含源码及报告)本程序分析了自2016年到2021年(外加)每年我国原油加工的产量,并且分析了2020年全国各地区原油加工量等,含饼状图,柱状图,折线图,数据在地图上显示。
运转本程序需要requests、bs4、csv、pandas、matplotlib、pyecharts库的支持,如果缺少某库请自行安装后再运转。
文件含6个excel表,若干个csv文件以及一个名字为render的html文件(需要用浏览器打开),直观的数据处理部分是图片以及html文件,可在地图中显示,数据处理的是excel文件。
不懂可以扫文件中二维码在QQ里面问。
2022/9/30 16:31:44
29.75MB
爬虫
python
源码软件
开发语言
1
钉钉无人值守自动打卡脚本 永不迟到的神器 安卓和苹果教程
New!
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03
15KB
钉钉
钉钉打卡
个人信息
点我去登录or注册
|
微信登录
一言
热门下载
CNS2_CN_VW_P0095D_0332.7z
几何画板课件350套.zip
ENVI去云补丁Haze_tool文件及其使用说明和安装方法
Android控件GridView之仿支付宝钱包首页带有分割线的GridView九宫格的完满实现
超声随心所欲xp版.rar
软件开发文档书写规范
分形维数MATLAB程序
ADCSPI配置FPGA代码
NavicatPremiumforMacv12.0.22.0
二维声波高阶有限差分地震波场模仿
几个flash动画作品带源文件
spring+springmvc+mybatis+mysql+实现的APP信息管理系统.rar
基于matlab产生粉红色噪声和高斯色噪声noise.m
乐玩插件9.09(最新).zip
有限单元法基本原理和数值方法(清晰版)
最新下载
PCB常用封装库,PCB常用封装库
jfinal-3.6-all
开源中国Android客户端源码
道路的区域检测
DSPTMS320F28335-AD7606.rar
tensorflow_examples-master.zip
全栈网络应用4-源码
C#wpf操作wordExcel,
unity语音SDKDemo已经写好代码,直接拖进去用
fft_my.m基2-fft算法的MATLAB实现,内含注释
用PIC汇编写的,有接收和发送程序.
青岛理工大学c++试题
状态指示灯(VC++6.0源代码)
AlteraCycloneIVGX全系列AltiumAD原理图库PCB封装库集成库(AD库).zip
mc1496设计基本调幅电路课程设计
其他资源
Cardinal样条曲线Qt代码
合金弹头素材
clientsdk.3.50.FC9.WIN
2018尚硅谷HTML5全套视频链接
线性系统理论(第二版)郑大钟pdf
MFC42U.LIB
NumericalPythonScientificComputingandDataScienceApplications,2ndEdition
c++登录窗口
年会行为html酷炫抽奖成果-高端版
bootstrap-table实现行拖拽插件jquery.tablednd.jsbootstrap-table-reorder-rows.js
apk文件反编译工具
SPSS25回归方法(Regression)IBM官方阐明手册
aix5.3安装jdk1.6
utf-8ansi字符互转对象
mysql-connector-odbc-noinstall-5.3.6-winx64.zip
C#实现的九宫格格式
连续和离散两种情况下编写的pid——s函数
CorelDraw教程
enx-cube-mcsdk-ful_5.4.5.zip
关于Zookeeper自学视频的对照文档.docx