Changes

Jump to: navigation, search

MVV-LVA

5,138 bytes added, 09:48, 30 April 2018
Created page with "'''Home * Search * Move Ordering * MVV-LVA''' '''MVV-LVA''' ('''M'''ost '''V'''aluable '''V'''ictim - '''L'''east '''V'''aluable '''A'''ggressor),<br/>..."
'''[[Main Page|Home]] * [[Search]] * [[Move Ordering]] * MVV-LVA'''

'''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 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=
* [[Belle#Hardware|Belle | Hardware Move Generation]]
* [[Mater]]
* [[Move Generation]]
* [[Quiescence Search]]
* [[SEE - The Swap Algorithm]] with [[Bitboards]]
* [[Static Exchange Evaluation]]

=Forum Posts=
==1995 ...==
* [http://groups.google.com/group/rec.games.chess.computer/browse_frm/thread/1fa5e36362f5dde4 mvv/lva vs SEE capture ordering test results] by [[Robert Hyatt]], [[Computer Chess Forums|rgcc]], August 10, 1995
* [http://groups.google.com/group/rec.games.chess.computer/browse_frm/thread/645f44f84102e450 MVV/LVA vs SEE move ordering - more test results] by [[Robert Hyatt]], [[Computer Chess Forums|rgcc]], August 25, 1995
: [http://groups.google.com/group/rec.games.chess.computer/msg/1951744da404fc33 Re: MVV/LVA vs SEE move ordering - more test results] by [[Brian Sheppard]], [[Computer Chess Forums|rgcc]], August 27, 1995
==2000 ...==
* [https://www.stmintz.com/ccc/index.php?id=109588 Fast BB move generation] by [[Bas Hamstra]], [[CCC]], May 08, 2000
* [https://www.stmintz.com/ccc/index.php?id=141813 MVV/LVA or SEE - liability?] by [[Severi Salminen]], [[CCC]], November 29, 2000 » [[Static Exchange Evaluation]]
* [https://www.stmintz.com/ccc/index.php?id=253151 MVVLVA sorting does not help for move ordering] by [[Scott Farrell]], [[CCC]], September 21, 2002
==2005 ...==
* [http://www.talkchess.com/forum/viewtopic.php?t=22755 Sorting captures] by [[Pablo Vazquez]], [[CCC]], August 02, 2008
* [http://www.talkchess.com/forum/viewtopic.php?t=23727 Effect of MVV/LVA] by [[Mathieu Pagé]], [[CCC]], Sepember 14, 2008
* [http://www.talkchess.com/forum/viewtopic.php?t=27254 MVV/LVA. Or should it be LVV/MVA?] by [[Harm Geert Muller]], [[CCC]], March 31, 2009
==2010 ...==
* [http://www.talkchess.com/forum/viewtopic.php?topic_view=threads&p=395213 LVA MVV with relative Pin] by [[Clemens Pruell]], [[CCC]], February 16, 2011 » [[Pin]]
* [http://www.talkchess.com/forum/viewtopic.php?t=48202 MVV/LVA sorting] by [[Harm Geert Muller]], [[CCC]], June 05, 2013
==2015 ...==
* [http://www.talkchess.com/forum/viewtopic.php?t=56114 DarkThought sorts MVV/LVA without looking at any moves?] by Rob Williamson, [[CCC]], April 25, 2015 » [[DarkThought]]
* [http://www.talkchess.com/forum/viewtopic.php?t=57813 MVV/LVA] by [[Folkert van Heusden]], [[CCC]], October 02, 2015
* [http://www.talkchess.com/forum/viewtopic.php?t=61021 Sorting Captures] by [[David Cimbalista]], [[CCC]], August 03, 2016
* [http://www.open-chess.org/viewtopic.php?f=5&t=3058 A smarter MVV/LVA] by thevinenator, [[Computer Chess Forums|OpenChess Forum]], December 28, 2016

=External links=
* [http://web.archive.org/web/20040427014440/brucemo.com/compchess/programming/quiescent.htm#MVVLVA MVV/LVA] from [[Bruce Moreland|Bruce Moreland's]] [http://web.archive.org/web/20040403211728/brucemo.com/compchess/programming/index.htm Programming Topics]
* [http://home.hccnet.nl/h.g.muller/mvv.html Micro-Max 4: Quiescence Search] by [[Harm Geert Muller]]
* [[Videos#TheDorf|The Dorf]] feat. [https://en.wikipedia.org/wiki/F.M._Einheit FM Einheit] und [https://en.wikipedia.org/wiki/Caspar_Br%C3%B6tzmann Caspar Brötzmann] - [https://en.wikipedia.org/wiki/Home_(Caspar_Br%C3%B6tzmann_Massaker_album) Massaker], [http://www.grammatikoff.de/ Grammatikoff], [https://en.wikipedia.org/wiki/Duisburg Duisburg], May 17, 2014, [https://en.wikipedia.org/wiki/YouTube YouTube] Video
: {{#evu:https://www.youtube.com/watch?v=MJVohz5k5_U|alignment=left|valignment=top}}

=References=
<references />

'''[[Move Ordering|Up one level]]'''

Navigation menu