Commit Graph

43 Commits

Author SHA1 Message Date
stefiosif
888b3866b9 Add Null-move pruning 2025-01-29 23:09:01 +02:00
stefiosif
91ad3de8b1 Add check extention 2025-01-28 20:03:14 +02:00
stefiosif
3f08e194f4 Add log for soft limit reach, tweak values, clippy 2025-01-28 00:21:19 +02:00
stefiosif
ccba6451aa Add one killer move per ply 2025-01-27 22:21:21 +02:00
stefiosif
b4f61f6504 Add depth based time limit 2025-01-27 22:20:45 +02:00
stefiosif
a01310c7b7 Add TT cutoffs 2025-01-26 23:58:44 +02:00
stefiosif
53beda7fe3 Refactor time info, update zobrist to tuple struct, naming and clippy 2025-01-26 20:16:01 +02:00
stefiosif
7667f7b5d2 Use increment from uci winc/binc in time management 2025-01-26 11:00:55 +02:00
stefiosif
2d9076cd1d Add depth based logging 2025-01-25 21:47:11 +02:00
stefiosif
2ed92f9253 Add PVS 2025-01-25 21:45:15 +02:00
stefiosif
62c524174e Fix and simplify move ordering 2025-01-25 16:39:04 +02:00
stefiosif
d8cc3b74a2 Change a/b to fail-soft 2025-01-25 09:16:51 +02:00
stefiosif
29d69b5ab1 Add repetition detection 2025-01-19 20:15:23 +02:00
stefiosif
1c7100f510 Use TT to store best move after each ID iteration 2025-01-18 17:44:27 +02:00
stefiosif
824f8a37b5 Add TT lookups in quiescence, move TT inside Game, remove redundant occupancy and time limit functions 2025-01-18 13:01:06 +02:00
stefiosif
2c9181993f Implement PeSTO eval 2025-01-12 23:02:10 +02:00
stefiosif
d9e76a224f Reduce bitboards from 12 to 8, add color info in mailbox representation 2025-01-12 20:02:16 +02:00
stefiosif
f7604b27a5 Implement Index<T>, IndexMut<T> for Castle, PieceType and Color enums, use swap_remove instead of remove on sort_moves 2024-12-01 10:52:38 +02:00
stefiosif
316f40e6e5 Remove tt cutoffs, fix capture move sorting, refactor 2024-11-30 00:04:53 +02:00
stefiosif
c2414c3f6e Make mvv_lva to map pieces to their material score instead of abritrary matrix
Add time limits, use anyhow crate to improve error handling, remove depth limit on quiescence search
2024-11-13 21:47:26 +02:00
stefiosif
429485ae73 Use one TT per game, use time manger in ID 2024-11-10 14:22:24 +02:00
stefiosif
e2d3185bbe Add tt node in case of best score >= alpha 2024-11-10 14:17:55 +02:00
stefiosif
1b28de5064 Refactor based on clippy, move tt to search module and call iterative deepening from uci_go 2024-11-03 01:19:12 +02:00
stefiosif
802bdcdb37 Add basic iterative deepening implementation 2024-10-29 22:55:35 +02:00
stefiosif
ff6bbafc50 Add depth limit on quiescence, add node/timer measurements 2024-10-16 21:36:48 +03:00
stefiosif
b2df931d48 Probe TT at each negamax recursion and store entries based on bounds 2024-10-14 23:57:54 +03:00
stefiosif
3fd3b1ea96 Rename fn names for better readability 2024-10-06 11:15:29 +03:00
stefiosif
a96d3d27b1 Pass Mailbox instead of Game on related functions for clarity 2024-09-21 15:42:41 +03:00
stefiosif
f74f1ef364 Implement redundant mailbox representation 2024-09-19 22:57:03 +03:00
stefiosif
3739e6e169 Fix sigkill 9 running out of memory issue 2024-09-16 19:33:05 +03:00
stefiosif
f128b35252 Move make/unmake and History on Game 2024-09-16 19:33:05 +03:00
stefiosif
3383435af7 Move MoveParameter handling inside make/unmake_move 2024-09-16 19:33:05 +03:00
stefiosif
6badbcd776 Rename movegen module files and make readability improvements 2024-09-16 19:33:05 +03:00
stefiosif
b26357a205 Add move ordering heuristic MVV/LVA 2024-09-14 20:29:53 +03:00
stefiosif
2093d91dfa Refactor some clippy-pedantic errors 2024-09-06 20:30:57 +03:00
stefiosif
6b9650a6f0 Improve readability and remove redundant code 2024-09-06 20:07:10 +03:00
stefiosif
0815837cd5 Return early if king is under check and small refactorings 2024-09-04 18:57:00 +03:00
stefiosif
fec27b0d02 Implement quiescence search for leaf nodes 2024-09-04 18:56:20 +03:00
stefiosif
e817229d12 Convert minimax to negamax and implement alpha-beta pruning 2024-09-03 20:35:08 +03:00
stefiosif
ba0cbf4d7d Add minimax and adapt UCI tests 2024-09-01 14:15:02 +03:00
stefiosif
21076da68c Add utility functions for readability and refactor make_move 2024-08-28 21:07:22 +03:00
stefiosif
b3d5930037 Remove uncommitted move_ordering from mod.rs 2024-08-14 22:01:10 +03:00
stefiosif
ed711f905d Refactor project structure to use submodules 2024-08-14 21:58:20 +03:00