Chess Move Generator
In search algorithm, a good move ordering enables us to reduce the size of search tree so that search algorithm goes deeper. A good chess move ordering schema can be:
- checking moves, direct and discovered,
- promotions,
- capturing moves (MVV/LVA),
- non-capturing moves (History heuristic).
The general idea of MVV/LVA is to first generate capture moves with the most valuable capture pieces and least valuable attacker pieces (e.g. pawn captures queen).