Changes

Jump to: navigation, search

MVV-LVA

12 bytes added, 20:55, 15 July 2019
no edit summary
'''MVV-LVA''' ('''M'''ost '''V'''aluable '''V'''ictim - '''L'''east '''V'''aluable '''A'''ggressor),<br/>
is a simple heuristic to [[Move Generation|generate]] or sort [[Captures|capture moves]] in a reasonable order. Inside a so called find-victim cycle, one first look up the potential victim of all [[Attacks|attacked ]] opponent pieces, in the order of the most valuable first, thus [[Queen|queen]], [[Rook|rook]], [[Bishop|bishop]], [[Knight|knight]] and [[Pawn|pawn]]. After the most valuable victim is found, the find-aggressor cycle loops over the potential aggressors that may capture the victim in inverse order, from pawn, knight, bishop, rook, queen to [[King|king]]. The heuristic is easy to implement and covers a lot of simple cases, such as PxR before BxP. It is used in various move generators build in hardware, such a [[Belle#Hardware|Belle]] and more recently in [[FPGA]] approaches such as [[Brutus]] and [[MBChess]] <ref>[[Marc Boulé]] ('''2002'''). ''An FPGA Move Generator for the Game of Chess''. Masters thesis, [[McGill University]], (Supervisor: [[Zeljko Zilic]], Co-Supervisor: [[Monroe Newborn|Monty Newborn]]), [http://www.iml.ece.mcgill.ca/%7Emboule/files/mbthesis02.pdf pdf]</ref>. However the heuristic may fail, if victims attacked by more valuable attackers are defended, in such cases most programs rely on [[Attack and Defend Maps|attack tables]], set-wise [[Pawn Attacks (Bitboards)#PawnAttacks|pawn attacks]] (defends) on the fly to perform a [[Static Exchange Evaluation|static exchange evaluation]].
=See also=

Navigation menu