Older Version Newer Version

GerdIsenberg GerdIsenberg Jul 30, 2017

**[[Home]] * [[Engines]] * Rival**
|| [[image:Ye_Eifl_sunset.jpg link="http://en.wikipedia.org/wiki/File:Ye_Eifl_@_sunset.jpg"]] ||~ || **Rival**, (Rival Chess, NewRival)
a chess engine written by [[Chris Moreton]] and [[Russell Newman]] in [[Cpp|C++]], starting in 1992 as [[MS-DOS]] program with an own [[GUI]], before being rewritten for [[Windows]] as [[WinBoard]] compatible engine (NewRival) a couple of years later <ref>[[http://www.rivalchess.com/about/|Rival Chess Engine - About]]</ref>. The [[UCI]] protocol was implemented in 2006 as //Rival UCI 1.18 for Windows//, while the current Rival engine was ported to [[Java]] as used in the [[Android]] application. DOS and Windows versions are available as source code <ref>[[http://www.redhotpawn.com/rival/|Rival Chess - Red Hot Pawn]]</ref>. Further, Rival is able to play various [[Chess#Variants|chess variants]] like [[Kinglet]], [[Losing Chess]], and [[Shatranj]] <ref>[[http://www.chessvariants.org/icomputer.html|The Chess Variant Pages: Computer resources]]</ref>. ||
||The Rivals <ref>Yr Eifl from [[http://en.wikipedia.org/wiki/Llandegfan|Llandegfan]] at sunset, February 21, 2005,  [[http://en.wikipedia.org/wiki/Yr_Eifl|Yr Eifl - The Rivals from Wikipedia]]</ref> ||~ ||^ ||
[[toc]]
=Description=
Rival is described in detail on the //redhotpawn// sites <ref>[[http://www.redhotpawn.com/rival/programming/index.php|Introduction]]</ref>. Rival for Java uses [[Bitboards|bitboards]] with [[Bibob#BERF|big-endian rank-file]] [[Square Mapping Considerations|mapping]]. It determines [[Sliding Piece Attacks|sliding piece attacks]] with [[Magic Bitboards|magic bitboards]] <ref>[[http://www.rivalchess.com/magic-bitboards/|Rival Chess Engine - Magic Bitboards]]</ref>.

==Search==
Rival applies [[Principal Variation Search|PVS]] [[Negamax|negamax]] [[Alpha-Beta|alpha-beta]] with [[Transposition Table|transposition table]], [[Killer Heuristic|killer heuristic]] and [[Quiescence Search|quiescence]] inside an [[Iterative Deepening|iterative deepening]] framework. 

==Evaluation==
The [[Evaluation|evaluation function]] calculates [[Score|scores]] of both sides, and returns the score difference of the [[Side to move|side to move]] minus the side not on the move in [[Negamax|negamax]] manner, considering [[Pawn Structure|pawn structure]], various [[Evaluation of Pieces|piece terms]], and [[King Safety|king safety]]. A quote from Rival's //Static Board Evaluation// site <ref>[[http://www.redhotpawn.com/rival/programming/evaluation.php| Rival Chess Engine - Static Board Evaluation]]</ref>:
|| {{The factors considered in the evaluation function have been chosen because they are relatively quick to calculate. Very few of the ideas are entirely original; many represent elementary chess knowledge and many have been used in other chess programs. Sources that have been of particular influence are [[David Slate|Slate]] & [[Larry Atkin|Atkin]] (1977)}} <ref>[[David Slate]], [[Larry Atkin]] (**1977**). //CHESS 4.5 - The Northwestern University Chess Program.// [[Chess Skill in Man and Machine]], reprinted (**1988**) in [[Computer Chess Compendium]] » [[Chess (Program)|Chess 4.5]]</ref>{{, [[Monroe Newborn|Newborn]] (1975)}} <ref>[[Monroe Newborn]] (**1975**). //Computer Chess//. Academic Press » [[Ostrich]]</ref> {{and [[Robert Hyatt|Hyatt]] et al (1985)}} <ref>[[Robert Hyatt]], [[Albert Gower]], [[Harry Nelson]] (**1985**). //Cray Blitz//. [[Advances in Computer Chess 4]] » [[Cray Blitz]]</ref> {{. Some of the factors have been added to overcome certain weaknesses that the program has shown, others have been left out in the hope that the gain in search speed would outweigh the loss in evaluation quality. The work of [[Hans Berliner|Berliner]] et al (1990)}} <ref>[[Hans Berliner]], [[Gordon Goetsch]], [[Murray Campbell]], [[Carl Ebeling]] (**1990**). //Measuring the Performance Potential of Chess Programs.// [[http://en.wikipedia.org/wiki/Artificial_Intelligence_%28journal%29|Artificial Intelligence]], Vol. 43, No. 1, pp. 7-21. ISSN 0004-3702 » [[HiTech]]</ref> {{suggests the opposite to the last assumption.}} ||

=Sreenshots=
==DOS & Windows==
<ref>[[http://www.redhotpawn.com/rival/|Rival Chess]]</ref> 
|| [[image:rivaldos.gif link="http://www.redhotpawn.com/rival/"]] ||~ || [[image:rivalwin.jpg link="http://www.redhotpawn.com/rival/"]] ||
|| Rival for [[MS-DOS|DOS]] ||~ || Rival for [[Windows]] ||
==Android==
|| [[image:RivalForAndroid.jpg link="https://play.google.com/store/apps/details?id=com.netadapt.rivalchess"]] ||
|| JavaRival, [[UCI]] engine for [[Android]] <ref>[[https://play.google.com/store/apps/details?id=com.netadapt.rivalchess&hl=en|Rival Chess Free - Android Apps on Google Play]]</ref> ||

=See also=
* [[Various Classifications#Geography|Geography]]
* [[Various Classifications#Startrek|Star Trek]]

=Forum Posts=
* [[https://groups.google.com/d/msg/rec.games.chess.computer/3Xd8OM2Pwec/FTelUbCcPS4J|Rival Chess 1.5.041]] by [[Chris Moreton]], [[Computer Chess Forums|rgcc]], November 03, 1998
* [[https://groups.google.com/d/msg/rec.games.chess.computer/0iOoI8YNLXQ/t-xX9U1kiEgJ|Rival Chess]] by [[Đorđe Vidanović]], [[Computer Chess Forums|rgcc]], November 04, 1998 
* [[http://www.stmintz.com/ccc/index.php?id=39692|History Heuristic on its own]] by [[Chris Moreton]], [[CCC]], January 16, 1999 » [[History Heuristic]]
* [[http://www.stmintz.com/ccc/index.php?id=103229|Rival Chess advances to Winboard Championships!]] by Daniel Chancey, [[CCC]], March 24, 2000
* [[http://www.talkchess.com/forum/viewtopic.php?t=64754|Rival Chess 1.0.1 and 1.0.3]] by [[Tony Mokonen]], [[CCC]], July 29, 2017

=External Links=
==Chess Engine==
* [[https://github.com/chris-moreton/rival-chess-android-engine|GitHub - chris-moreton/rival-chess-android-engine]]
* [[https://github.com/chris-moreton/rival-chess-dos|GitHub - chris-moreton/rival-chess-dos]]
* [[http://www.rivalchess.com/|Rival Chess Engine]]
* [[http://www.rivalchess.com/magic-bitboards/|Rival Chess Engine - Magic Bitboards]]
* [[http://www.rivalchess.com/downloads/|Rival Chess Engine - Downloads]]
* [[https://play.google.com/store/apps/details?id=com.netadapt.rivalchess&hl=en|Rival Chess Free - Android Apps on Google Play]]
* [[http://www.redhotpawn.com/rival/|Rival Chess - Red Hot Pawn]]
* [[http://www.computerchess.org.uk/ccrl/4040/cgi/engine_details.cgi?print=Details&each_game=1&eng=Rival%201.18#Rival_1_18|Rival 1.18]] in [[CCRL|CCRL 40/40]]
* [[http://www.xs4all.nl/~timkr/chess2/honor.htm|Defending Humanity's Honor]] by [[http://en.wikipedia.org/wiki/Tim_Krabb%C3%A9|Tim Krabbé]], see game [[Rival|NewRival]] - [[Faile]] with 493 moves, and playing 402 moves with bare kings!
==Chess Programming==
* [[http://www.redhotpawn.com/rival/programming/index.php|Introduction]]
> [[http://www.redhotpawn.com/rival/programming/negamax.php|Negamax]]
> [[http://www.redhotpawn.com/rival/programming/alphabeta.php|Alpha-Beta Pruning]]
> [[http://www.redhotpawn.com/rival/programming/moveorder.php|Move Ordering]]
> [[http://www.redhotpawn.com/rival/programming/quiescence.php|Quiescence]]
> [[http://www.redhotpawn.com/rival/programming/transref.php|Transposition/Refutation Tables]]
> [[http://www.redhotpawn.com/rival/programming/killers.php|Killer Heuristics]]
> [[http://www.redhotpawn.com/rival/programming/minwin.php|Minimal Window]]
> [[http://www.redhotpawn.com/rival/programming/timing.php|Timing Moves]]
> [[http://www.redhotpawn.com/rival/programming/draws.php|Draw Scoring]]
> [[http://www.redhotpawn.com/rival/programming/evaluation.php|Static Board Evaluation]]
> [[http://www.redhotpawn.com/rival/programming/openings.php|Openings]]
==Misc==
* [[http://en.wiktionary.org/wiki/rival|rival - Wiktionary]]
* [[http://en.wikipedia.org/wiki/Rival|Rival (disambiguation) from Wikipedia]]
* [[http://en.wikipedia.org/wiki/Rivals_%28Star_Trek:_Deep_Space_Nine%29|Rivals (Star Trek: Deep Space Nine) from  Wikipedia]]
* [[http://en.wikipedia.org/wiki/Yr_Eifl|Yr Eifl - The Rivals from Wikipedia]]

=References= 
<references />
=What links here?= 
[[include page="Rival" component="backlinks" limit="30"]]
**[[Engines|Up one level]]**