Skip to main content

Posts

Showing posts from October, 2022

Engine understands clock and avoids draws

  28 Oct 2022 3 am bugfixes: fixed hard to find enpassant bug! AI part: code refactorings engine understands clock!! BIGGEST UPDATES: iterative deepening mate distance pruning null move pruning late move reduction others: simplified position hash engine now avoids draws! TODO: verify all of them, i guess i'm rushing into adding more and more features. i've spent around one week on this commit, now it's time for me to focus on my academics :|

Better algorithms and Evaluation function

  11 Oct 2022 long time no see 3 am well, there's a lot of small and big changes. i'll try to explain by checking the diff. AI part: replaced minimax with alpha-beta (similar to negamax version) TODO : implement quiescence search added piece-square table scoring in eval function reduced branching in code move generation part: bugfix : moves like  e1c1  were always interpreted as castling, fixed changed board representation from  string  to  char[64] now king positions are incrementally saved, so faster to find kings several optimizations in move generation general: now engine trys to avoid moves leading to repetitions (but it is not always optimal, so should do something better) fixed several gui bugs in promotion and flipping gui supports (some) premoves fixed some bugs in move hints, still some remaining ig faster makefile BIGGEST UPDATES: uci protocol working! made a  lichess bot  running this engine!