Commit Graph

614 Commits

Author SHA1 Message Date
Calcitem c584ed6769 自动重新开局时保存分数和胜率比值到文件中 2019-12-08 11:32:13 +08:00
Calcitem 3182eff1ad test: 新增测试模块用于本地对战
使用共享内存实现,效率比 socket 高。
打开 TEST_MODE 宏才能生效。
2019-12-08 02:28:24 +08:00
Calcitem be8b1d4baa Board: 简化 = 重载符函数
* 删除自己赋值给自己的判断
* 删除  millList 的复制,只保留 locations 的复制
2019-12-07 00:49:37 +08:00
Calcitem 23cb1f4e91 addMills() 中减少 iter 重复赋值 2019-12-06 00:19:33 +08:00
Calcitem 0498c5ebc7 ai: NODE_CHILDREN_SIZE 由 64 下调到 40
按 4 * 4 + 3 * 4 * 2 计算
2019-12-05 23:16:12 +08:00
Calcitem 4c258d5391 search: 最后记录不一定确切的哈希值时省略对 node->children[0] 是否非 null 的判断 2019-12-05 00:55:35 +08:00
Calcitem 39274bb704 refactor: search: minmax 计算部分由 if 改 switch 2019-12-05 00:47:44 +08:00
Calcitem 578070d8f4 search: 将搜索到决胜局面与搜索第0层或需要退出合在一起处理 2019-12-05 00:40:03 +08:00
Calcitem 4c007940c9 evaluate: 补充 getValue() 中的 else if 2019-12-05 00:33:53 +08:00
Calcitem 526060e812 search: 搜索到第0层或需要退出时不再根据深度调整 value
搜索到第0层,深度肯定是0.
2019-12-05 00:25:18 +08:00
Calcitem 4ce85299db refactor: probeHash() 中 if 换 switch 2019-12-05 00:17:08 +08:00
Calcitem 5d658460a7 refactor: 简化 getHash() 2019-12-05 00:07:47 +08:00
Calcitem e0a017dbfe setGame() 中使用 memset 取代 root 的逐项赋值 2019-12-05 00:03:30 +08:00
Calcitem 99a18af8ce search: 删除 deleteTree() 中不必要的判断 2019-12-04 23:53:52 +08:00
Calcitem 42f774548a refactor: gamecontroller: Add thread functions 2019-12-01 22:40:52 +08:00
Calcitem f86c4585ad refactor calcXXX 函数重命名为 searchXXX 函数 2019-12-01 22:40:27 +08:00
CalciteM d7926aca9d thread: Add thread.cpp/h from Stockfish
暂时未用
2019-12-01 22:39:45 +08:00
CalciteM 1c03f00833 refactor: rename thread.* to aithread.* 2019-11-30 12:49:23 +08:00
Calcitem 9ac06bf94d movegen: 计算对手延迟到吃子再进行 2019-11-24 01:57:05 +08:00
Calcitem 4380566fa8 movegen: 去除开头'如果有子节点,则返回,避免重复建立'的判断 2019-11-24 01:52:26 +08:00
Calcitem 0562672ed0 refactor: MOVE_PRIORITY_TABLE_SIZE 改为类静态成员变量 2019-11-24 01:40:08 +08:00
Calcitem d07d575474 refactor: addNode() 移除 side 参数 2019-11-24 01:28:15 +08:00
Calcitem 03069e2bf2 debug: Window: 当编译为Debug时固定窗口大小
方便双显示器上下排列时的显示.
2019-11-23 23:27:26 +08:00
Calcitem eec33160fb build: Fix build error on non-x86 2019-11-18 01:30:09 +08:00
Calcitem 127b5b95b2 refactor: options 改名为 gameOptions 2019-11-18 00:48:11 +08:00
Calcitem 929d62e7ce log: Fix build warning 2019-11-18 00:37:53 +08:00
Calcitem 652ee7ce0d hash: 将其他的64位定义改为由参数决定 (2) 2019-11-18 00:37:30 +08:00
Calcitem da6696448e sort: Remove compiling warnings
* size_t -> int
* Remove some functions
2019-11-18 00:30:39 +08:00
Calcitem 6126e883a2 .gitignore: Add *.diagsession 2019-11-17 23:32:33 +08:00
Calcitem d55bc8e723 hash: 将其他的64位定义改为由参数决定 2019-11-16 22:14:28 +08:00
Calcitem 9c2b406d9b refactor: 重构 board.cpp 以略微提升性能 2019-11-16 12:31:05 +08:00
Calcitem 61012820cd memmgr: Refactor get_mem_from_pool() 2019-11-10 13:49:45 +08:00
Calcitem f1d6edcf6c perf: 将 cmdlist 由 list 切换为 vector
实际对性能影响很小.
2019-11-10 13:33:56 +08:00
Calcitem a3f9059528 timestat: 增加 CYCLE_STAT 宏但仅为示例用故不启用 2019-11-10 12:36:31 +08:00
Calcitem 5a085560f3 timestat: Add stopwatch 2019-11-10 10:57:47 +08:00
方解石 b4984f5797
Update Readme.md 2019-11-03 23:14:14 +08:00
Calcitem d247ce4db8 refactor: 用 BLACK/WHITE 替换 1/2 2019-11-03 23:07:06 +08:00
Calcitem 627d687652 GameController: 去除 if (&game == &(this->game)) 的判断 2019-11-03 22:38:25 +08:00
Calcitem 8a2c179d62 refactor: 使用 COLOR_COUNT 替换 3 2019-11-03 22:12:09 +08:00
Calcitem 48a92be7e6 thread: 删除 AiThread::pause() 函数 2019-11-03 21:37:19 +08:00
Calcitem 846a58eb32 thread: 删除 aiThread 的 waiting 变量
waiting 变量为线程等待标识,没用到,留着以后扩展用.
现在删除之.
2019-11-03 21:32:57 +08:00
Calcitem 22ffd83b19 去除 EMIT_COMMAND_DELAY
QTimer::singleShot(EMIT_COMMAND_DELAY, this, &AiThread::emitCommand);
改为:
emitCommand();

顺带将 i/id 重命名为 sideId/playerId.
2019-11-03 20:23:57 +08:00
Calcitem 9d2f548220 refactor: MIN/MAX 宏改为通过 numeric_limits::min/max 获取 2019-11-03 19:25:23 +08:00
Calcitem dd22228856 refactor: checkGameOverCondition 去掉 forceDraw 参数 2019-11-03 17:59:04 +08:00
Calcitem 78f79652b6 refactor: win() 重命名为 checkGameOverCondition() 2019-11-03 17:58:16 +08:00
Calcitem d6307b5c61 depth: 如果深度小于1则设置为1
为了调试需要, 新增 DEPTH_ADJUST 宏用于深度调整.
2019-11-03 17:43:27 +08:00
Calcitem e90266d3e1 license: Change Licence to GPL 3.0
由 LGPL 协议切换为 GPL 协议.
2019-11-03 13:00:45 +08:00
Calcitem c747b8b429 depth: 调整 movingDiffDepthTable 降深度更苛刻
实际对自对弈时长影响不大, 仅从 13s 增到 14s.
2019-10-29 00:41:58 +08:00
Calcitem 5e8fc4ddea endgame: 关闭 ENDGAME_LEARNING 功能
内存占用从 570MB 下降到  433MB.
因为 movingDiffDepthTable 的切换, 自对弈时长由 18s 缩短到 13s.
2019-10-29 00:39:08 +08:00
Calcitem 9d6b3245ed tt: value_t 由16位减少到8位
程序内存占用由 680MB 下降到 570MB.
2019-10-29 00:11:46 +08:00