C++的位优化 之前的中国象棋初版重在实现,老实说不论是时空效率还是健壮性都不太拿得出手,于是导师要求继续优化改进。考虑和调查过后,时间效率上可以借助之前设想的并行计算得到小幅优化,此外使用类似bool数组的手段也可以在走法生成器中小幅优化边界判断过程,最重要的时间效率优化手段是把博弈机改造成查表器,即以查表为主博弈为辅改变重心。以上都是时间效率优化,这篇文中暂且不展开,我的 2015-12-01 C++ #C++ #位域 #bitset #vector<bool>
中国象棋人机博弈实现练习 上一篇简略做了棋牌游戏人机博弈的概念铺垫,这一篇文就来贴一下我的初版实现。精力受限,没有像许多前辈那样把Maxmin系的搜索算法(Maxmin、AlphaBeta、Fail-Soft-AlphaBeta、Aspiration、PVS、MTD(f))全部实现一遍。刚开始我甚至只打算实现一个MTD(f)的搜索核心,因为毕竟最晚出现的算法通常一定程度上是以往算法的集 2015-11-15 人机博弈 #Qt #C++ #人机博弈 #AlphaBeta #MTD(f)
人机博弈初探 组里布置任务,要编个中国象棋人机博弈程序练练手,写这篇文时游戏初版已经完成了。开工前导师给了些相关资料,我自己又稍微做了些调查,这篇文就先来对人机博弈,尤其是棋牌游戏的人机博弈思路做一些概念上的科普铺垫。做好了概念铺垫,下一篇再挑重点简单讲解下我的中国象棋游戏实现情况。 2015-11-14 人机博弈 #人机博弈 #Maxmin #AlphaBeta #PVS #MTD(f)
解决依赖问题的利器——apt-file 学校的有线网络客户端是DrCom,Windows下停掉热点分享服务和代理后跑的很顺利。可是切到我常用的Ubuntu下时客户端却跑不起来。从终端用命令运行客户端时发现有依赖文件缺失,借着这个契机,我认识了Ubuntu(Debian)下解决依赖问题的利器——apt-file。 2015-10-19 ubuntu #ubuntu #debian #apt-file
C++多线程初探——c++11篇 今天被说C++出身的猿不会多线程跟不会C++有什么分别,于是放下刚到手的Go和R的书,痛定思痛准备来给自己补补课。 2015-10-17 C++ #C++ #c++11 #多线程
python的SimpleHTTPServer Linux下想要给局域网的其他终端共享文件大家一般会怎么做?是开个Nginx服务器或者Apache服务器?还是装个开源的FTP软件?其实还有更便捷的原生办法。 2015-10-13 python #python
BP神经网络的python(pybrain库)实现 上一篇文用C++手写了BP神经网络,事实上,生产环境中已经很少有人再亲自写神经网络了,已经出现了很多成熟的机器学习开源库。我安装了C++的shark库和python的pybrain库,在研究shark库的文档时发现shark库封装度太低了,用起来很麻烦,遂弃。虽然放弃C++的高效库很遗憾,但是后来发现pybrain库真是非常友好非常方便,于是分别写了分类器和函 2015-10-13 机器学习 #BP神经网络 #机器学习 #python #pybrain
BP神经网络的C++实现 之前说了组里的任务是手写BP神经网络,上一篇文总结了一下BP神经网络的概念,老实说,总结概念前的一个C++实现版本在总结概念之后重新审视时觉得实在是惨不忍睹,于是今晚回炉重写了。这篇文就来挂我的BP神经网络C++实现。 2015-10-11 机器学习 #C++ #BP神经网络 #机器学习
BP神经网络 组里要求新人手写个BP神经网络练练手先,具体要求是用一个平面把空间点集二分类,建模时我发现这个问题比起分类来更接近一个多元函数拟合,当然分类也不是不行,机器学习的要求更低,更容易有更好的结果。这都是后话,这篇文我决定先来总结一下BP神经网络的概念,也算是前几天的学习笔记了。 2015-10-09 机器学习 #BP神经网络 #机器学习 #人工神经网络
C++二进制-十进制转换器 布置了二进制-十进制转换器的小作业,本来还要求顺手扩展一下大数的四则运算,我嫌麻烦没做扩展,就只是写来玩玩。也算熟悉一下底层的二进制-十进制转换机制,顺便复习下C++源码规范。注释写了很多,就不多做解释了,只贴代码。 2015-10-08 C++ #C++ #进制转换