Commit Graph

1006 Commits

Author SHA1 Message Date
Calcitem cb34e7f6be refactor: opponent 替换为 them 2020-07-05 20:06:19 +08:00
Calcitem 7e75211c18 getOpponent() 替换为 ~ 重载运算符 2020-07-05 19:45:08 +08:00
Calcitem 1d7ecd6680 移除 player_t 类型并全部用 Color 类型取代 2020-07-05 13:28:59 +08:00
Calcitem 58acff7ce2 移除包裹 Position 类的 StateInfo 类 2020-07-05 00:04:58 +08:00
Calcitem c2b6a3880c position: 删除自定义的重载 = 运算符 2020-07-04 22:51:12 +08:00
Calcitem 3a187ddbc6 refactor: COLOR_COUNT 改名为 COLOR_NB 2020-06-28 00:32:13 +08:00
Calcitem acf260c2a5 mempool: 移除目前不再使用的内存池模块
memmgr 模块代码转移到:
https://github.com/calcitem/memmgr
2020-06-27 09:12:03 +08:00
Calcitem 8f5583fcfd comment: 移除核心代码的大部分中文注释
部分更换为英文注释
2020-06-27 01:18:02 +08:00
Calcitem 48358b0e99 rule: refactor: 修改规则相关变量名提高可读性 2020-06-26 22:20:13 +08:00
Calcitem 900aac636a 移除默认未启用的 IDS_WINDOW 相关代码 2020-06-26 21:27:43 +08:00
Calcitem ee0a1ef1b7 refactor: 重命名其他的 ring/seat 为 file/rank 2020-06-26 21:13:37 +08:00
Calcitem 0d230fd993 refactor: types: 部分 type 改为首字母大写的风格 2020-06-26 20:19:41 +08:00
Calcitem 0f89043a8e 删除无用的 location.cpp/h 2020-06-26 18:04:23 +08:00
Calcitem 3e47540613 refactor: Rename Line/Move direction and Piece 2020-06-07 20:50:20 +08:00
Calcitem cd3b0e9aba MAX_MOVES 由 40 上调到 64
满足飞子的要求。
理论值尚未推算。
2020-06-07 10:43:26 +08:00
Calcitem 675e439f81 refactor: Rename forbidden to banned 2020-06-03 00:30:40 +08:00
Calcitem cdc14e5ec6 OpeningBook: Fix build error 2020-05-26 01:28:26 +08:00
Calcitem 4792cc89ef types: Refactor: Rename val to like Stockfish 2020-05-17 11:58:05 +08:00
Calcitem f243e537cd hashmap: Replace hash_t to hashFn 2020-05-16 02:18:43 +08:00
Calcitem 68b89788fd bb: Fix buffer overflow 2020-05-16 02:16:00 +08:00
Calcitem 333641845a replace key_t to hash_t to fix GCC build error 2020-05-16 02:16:00 +08:00
Calcitem 92c65f3c2d movegen: refactor: 函数重命名 2020-05-13 01:45:45 +08:00
Calcitem f8bae1b167 Evaluation: refactor: 重命名函数 2020-05-13 01:36:34 +08:00
Calcitem 92991c4cb3 tt: refactor: 重命名变量 2020-05-13 01:29:40 +08:00
Calcitem b69de7f09a TT: 增加 TRANSPOSITION_TABLE_FAKE_CLEAN_NOT_EXACT_ONLY 宏但不启用
开启后,对于确切值的TT值,开始新的搜索前不会清除。
2020-05-13 00:46:36 +08:00
Calcitem ca67ed76f1 bb: 给 byTypeBB 赋值
此外:
piecetype_t 枚举成员名称更换
setPosition() 函数减少参数
2020-05-12 02:09:06 +08:00
Calcitem 585cdb7b36 analyze: 控制台输出棋局分析结果 2020-05-11 01:13:35 +08:00
Calcitem 80bbec96a7 refactor: 部分变量和类型改名
启用 ring_t 和 seat_t
capture -> removePiece
choose -> selectPiece
2020-05-10 23:45:02 +08:00
Calcitem 71fa68b67d 简化 hash_t Position::getNextMainHash(move_t m) 函数 2020-05-10 21:39:04 +08:00
Calcitem 3ac8c4e77d type: 新增 type_of(m) 函数并使用 2020-05-10 21:34:53 +08:00
Calcitem 4057808fa5 未使用 locationToPlayer() 的地方进行使用 2020-05-10 20:16:44 +08:00
Calcitem 06f1e3000e type: 新增 make_move() 并使用 2020-05-10 20:01:11 +08:00
Calcitem f86bbec6a4 删除多余的 Position::generateNullMove() 2020-05-10 19:50:47 +08:00
Calcitem c93d7222ce type: 完成 from_sq() 和 to_sq() 函数并应用
并增加部分 bitboard 代码 (未完成)。
2020-05-10 10:02:35 +08:00
Calcitem 8177fc40be Add Codacy badge 2020-05-10 00:35:25 +08:00
Calcitem a334e7ee8d refactor: 清理代码
包括暂时删除 MCTS 大部分代码。
后续再加回来。
2020-05-10 00:35:25 +08:00
Calcitem 08b07c0de8 Position::checkGameOverCondition 增加参数控制是否写入 cmdlist 2020-05-10 00:35:25 +08:00
Calcitem fa0e0b4b33 ai: 参考 stockfish 修改 fail-safe search 代码
调用的 TT 部分也被修改
2020-05-10 00:35:25 +08:00
Calcitem 0232de6684 refactor: 重命名部分变量 2020-05-10 00:35:25 +08:00
Calcitem 1114906434 WAR: 临时处理内存泄漏最大的泄漏点 2020-05-10 00:35:25 +08:00
Calcitem 6399e03a36 ai: 搜索时不再生成结点而是遍历着法数组即可
修改后,即便是关闭预取,也能提速 15%。
2020-05-10 00:35:25 +08:00
Calcitem b8cd08e204 消除编译警告
并且万一找不到最佳 move 也不会触发 assert
2020-05-10 00:26:39 +08:00
Calcitem 3fbca61f76 解决一局比赛完成或者运行到一半退出时报告 Position 析构过程中 string 析构出错的问题
原因暂不明确,先用此方式规避。
2020-05-10 00:26:39 +08:00
Calcitem 3b40e4b0d6 将tips从Position中提出来作为全局变量
以解决运行到一半疑似对tips重复释放导致崩溃的问题。
目前原因不明。不过tips迟早是要提取出来的。
2020-05-10 00:26:39 +08:00
Calcitem f864c7bbc4 refactor: 将 StateInfo 中大多数成员转移到 Position 类中 2020-05-10 00:26:39 +08:00
Calcitem 0f9ae19661 nullmove: 增加部分空着裁剪代码 (WIP) 2020-05-10 00:26:39 +08:00
Calcitem 456613e750 pvs: 因单纯开 MTD(f) 略快故关闭 PVS 搜索
depth + 4 自对弈时长统计结果:
Alpha-Beta Only: 186.062s
PVS (win=1): 144s
PVS (win=5): 137s
MTDF (win=1): 126s
PVS + MTDF (win=5): 95s
MTDF (win=5): 93s 最快
2020-05-10 00:26:39 +08:00
Calcitem e4973ce2d9 mtdf/pvs: 启用MTD(f) 并把 PVS 和 MTD(f) 的窗口由极小窗口1调整为5
即调整为一个棋子的价值。
修改后,自对弈棋谱不变,自对弈时长由8s缩短到6s以内。
深度+4 测算,耗时缩短到原来的 69%。
2020-05-10 00:26:39 +08:00
Calcitem 02380b64bd pvs: PVS 相关代码用宏控制 2020-05-10 00:26:39 +08:00
Calcitem 335b218d85 mtdf: Support MTD(f) 2020-05-10 00:26:39 +08:00