Changes

Jump to: navigation, search

Vice

699 bytes added, 08:59, 30 April 2021
no edit summary
Vice [[Board Representation|represents the board]] with a [[10x12 Board|120 square array]] and additionally has some [[Bitboards|bitboards]] for [[Pawn|pawn]] stuff. It applies an [[Alpha-Beta|alpha-beta]] search with [[Transposition Table|transposition table]], [[Null Move Pruning|null move pruning]] and [[Quiescence Search|quiescence]] inside an [[Iterative Deepening|iterative deepening framework]]. It is compatible with the [[UCI]] and the [[Chess Engine Communication Protocol]], and since version 1.1, supports the [[PolyGlot]] [[Opening Book|opening book]] format <ref>[http://bluefever.net/Downloads/ViceReadMe.html Vice ReadMe File and Download]</ref>.
=See also=
* [[:Category:Acronym|Acronym]]
* [[:Category:Demonology|Demonology]]
=Forum Posts=
* [http://www.open-chess.org/viewtopic.php?f=5&t=2383 Vice 1.0] by [[BlueFeverSoft]], [[Computer Chess Forums|OpenChess Forum]], July 30, 2013
* [http://www.talkchess.com/forum/viewtopic.php?t=49043 Vice 1.0] by [[Adam Hair]], [[CCC]], August 22, 2013
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72372&start=24 Re: Mussaurus 0.1-prealpha - a poor man's Vice] by [[Richard Allbert]], [[CCC]], Novembr 26, 2019
: [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=72372&start=33 Re: Mussaurus 0.1-prealpha - a poor man's Vice] by [[Richard Allbert]], [[CCC]], December 02, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77205 Vice CCRL rating] by [[Amanj Sherwany]], [[CCC]], April 29, 2021 » [[CCRL]]
=External Links=
==Chess Engine==
* [http://bluefever.net/Downloads/ViceReadMe.html Vice ReadMe File and Download]
* [http://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?print=Details&each_game=1&eng=Vice%201.0%2064-bit Vice 1.0 64-bit] in [[CCRL|CCRL 40Blitz]] <ref>[http://www.talkchess.com/4forum3/viewtopic.php?f=2&t=77205 Vice CCRL rating]by [[Amanj Sherwany]], [[CCC]], April 29, 2021 » [[CCRL]]</ref> 
==Videos==
* [httphttps://www.youtube.com/watch?v=bGAfaepBco4&feature=share&list=PLZ1QII7yudbc-Ky058TEaOstZHVbT-2hg Programming A Chess Engine in C], [https://en.wikipedia.org/wiki/YouTube YouTube] Videos by [[BlueFeverSoft]]# [httphttps://www.youtube.com/watch?v=bGAfaepBco4 Resources and Community]# [httphttps://www.youtube.com/watch?v=VuJL4qhpp-8 Board Representation] » [[Board Representation]]# [httphttps://www.youtube.com/watch?v=x9sPmLt-EBM First Definitions]# [httphttps://www.youtube.com/watch?v=3uBCUF_qHcg Board Structure]# [httphttps://www.youtube.com/watch?v=1q0NlSdGOjI Undo-Move Structure] » [[Unmake Move]]# [httphttps://www.youtube.com/watch?v=pqYFUnUn0qw Array<nowiki>[120] to Array[64] </nowiki> Indexing for Pawns] » [[10x12 Board]], [[8x8 Board]]# [httphttps://www.youtube.com/watch?v=Bi61lMwhksw Piece Lists and ASSERT!] » [[Piece-Lists]]# [httphttps://www.youtube.com/watch?v=JsjSChsu2L0 Bitboards] » [[Bitboards]]# [httphttps://www.youtube.com/watch?v=ITVB7JSaI3w Bitboards Pop and Count] » [[BitScan]], [[Population Count]]# [httphttps://www.youtube.com/watch?v=pa0W1mz_wa4 Set and Clear bits] » [[General Setwise Operations]]# [httphttps://www.youtube.com/watch?v=uw9jsInf4jA Position Key (Hashkey) #1] » [[Zobrist Hashing]]# [httphttps://www.youtube.com/watch?v=WqVwQBXLwE0 Position Key (Hashkey) #2]# [httphttps://www.youtube.com/watch?v=vF_Td1nABYw Position Setup - Reset Board]# [httphttps://www.youtube.com/watch?v=4vCiIf73FQM Position Setup - FEN Notation ] » [[Forsyth-Edwards Notation]]# [httphttps://www.youtube.com/watch?v=usUJFkGyqM4 Parsing An FEN (1)]# [httphttps://www.youtube.com/watch?v=GmCxU4elNcA Parsing An FEN (2)]# [httphttps://www.youtube.com/watch?v=-wrSMzYGlGs Printing the board to screen]# [httphttps://www.youtube.com/watch?v=clLaVOnvUvA Piece Lists] » [[Piece-Lists]]# [httphttps://www.youtube.com/watch?v=CRaIcMGbkpE Rank and File Arrays]# [httphttps://www.youtube.com/watch?v=O5YtKzh4siE Checkboard]# [httphttps://www.youtube.com/watch?v=PGPdT9zz-xg Next steps]# [httphttps://www.youtube.com/watch?v=8mHFATWbeik Square Attacked (1)]# [httphttps://www.youtube.com/watch?v=VdH0ObqK3CA Square Attacked (2)]# [httphttps://www.youtube.com/watch?v=KQcArvyrbIo Move Format & Bits (1)] » [[Encoding Moves]]# [httphttps://www.youtube.com/watch?v=N6yImiyzWpo Move Format & Bits (2)]# [httphttps://www.youtube.com/watch?v=n2ZgdkW7uls Move Format & Bits (3)]# [httphttps://www.youtube.com/watch?v=siLoAPTOaWE Printmove and Printsquare]# [httphttps://www.youtube.com/watch?v=uBwwC5uWJKo Move Generation #1] » [[Move Generation]]# [httphttps://www.youtube.com/watch?v=wD9CNtvLCrI Move Generation #2 - Validations]# [httphttps://www.youtube.com/watch?v=1TCKuEoHvcs Move Generation #3 - White Pawns]# [httphttps://www.youtube.com/watch?v=8LUkqaodUFA Move Generation #4 - Black Pawns]# [httphttps://www.youtube.com/watch?v=MFMk5SiXvHQ Move Generation #5 - Piece Index Setup]# [httphttps://www.youtube.com/watch?v=6WovWHeRKFA Move Generation #6 - Non Slider Pieces]# [httphttps://www.youtube.com/watch?v=dkHlnSP3u3w Move Generation #7 - Slider Pieces]# [httphttps://www.youtube.com/watch?v=srAcgIKONO4 Move Generation #8 - Castling] » [[Castling]]# [httphttps://www.youtube.com/watch?v=kVXi615rFxE Move Generation #9 - Final Movelist!] » [[Move List]]# [httphttps://www.youtube.com/watch?v=ZWcjcn4KVTk Writing MakeMove - Introduction] » [[Make Move]]# [httphttps://www.youtube.com/watch?v=9Rfx1WHkJ3o Writing MakeMove #1]# [httphttps://www.youtube.com/watch?v=F_L2AhqB4V4 Writing MakeMove #2 - ClearPiece()]# [httphttps://www.youtube.com/watch?v=ai_193NC3zU Writing MakeMove #3 - Add/MovePiece()]# [httphttps://www.youtube.com/watch?v=qnHQJAsJFvk Writing MakeMove #4 - MakeMove()]# [httphttps://www.youtube.com/watch?v=aKaU0WHVrJI Writing MakeMove #5 - TakeMove()]# [httphttps://www.youtube.com/watch?v=ioaPTMKU3zg Introduction to Perft testing] » [[Perft]]# [httphttps://www.youtube.com/watch?v=6Y_FaQhqX2c Perft Testing (Move Make / Unmake debug)] » [[Unmake Move]]# [httphttps://www.youtube.com/watch?v=6ib1Kf44KR0 Quick Look At MinMax and NegaMax] » [[Minimax]], [[Negamax]]# [httphttps://www.youtube.com/watch?v=j_ZHeE87udo Quick Look At Alpha Beta] » [[Alpha-Beta]]# [httphttps://www.youtube.com/watch?v=eox81XUaXYI Overview of search implementation] » [[Search]]# [httphttps://www.youtube.com/watch?v=XPOcvp4h7VU Parsing a move from user / GUI] » [[GUI]]# <span id="Repetitions"></span>[httphttps://www.youtube.com/watch?v=1Vq-Ic9t4FE Repetition Detection] » [[Repetitions]]# [httphttps://www.youtube.com/watch?v=l_OrrycM7Fw Getting the time in milliseconds]# [httphttps://www.youtube.com/watch?v=AlwyJFG466M Principal Variation Table #1 Definitions] » [[Principal Variation]]# [httphttps://www.youtube.com/watch?v=BpR76VBo7DQ Principal Variation Table #2 Store / Probe]# [httphttps://www.youtube.com/watch?v=9LKX9jgqx84 Principal Variation Table #3 Retrieval]# [httphttps://www.youtube.com/watch?v=_063cuTPOe8 Preparation for search]# [httphttps://www.youtube.com/watch?v=F74y0ErjWTI Search Function Definitions]# [httphttps://www.youtube.com/watch?v=zSJF6jZ61w0 Basic Evaluation (very basic)] » [[Evaluation]]# [httphttps://www.youtube.com/watch?v=6WobF80RgaY Clear To Search]# [httphttps://www.youtube.com/watch?v=31guiVzPJuU Writing the Iterative Deepening Function] » [[Iterative Deepening]]# [httphttps://www.youtube.com/watch?v=-WyXnVpJVSQ Writing the Alpha Beta Function] » [[Alpha-Beta]]# [httphttps://www.youtube.com/watch?v=r4pNoANs8_0 Vice solves a Mate in 3 !] » [[Checkmate]]# [httphttps://www.youtube.com/watch?v=hDHa4-fijMc Move Ordering - Setting Up MVV LVA] » [[Move Ordering]], [[MVV-LVA]]# [httphttps://www.youtube.com/watch?v=8LYMXwH1xsg Move Ordering - Picking a Move]# [httphttps://www.youtube.com/watch?v=RkZ7mUQnviA BUG ALERT - Change to Move Generation!]
# <span id="KillHist"></span>[http://www.youtube.com/watch?v=jIc2YOP1W7U Move Ordering - Killer, History Heuristics, PV Move] » [[Killer Heuristic]], [[History Heuristic]], [[PV-Move]]
# <span id="Quiescence"></span>[httphttps://www.youtube.com/watch?v=ouWcWzyCOCY Quiescence - Getting rid of the horizon effect] » [[Quiescence Search]]# <span id="UCI"></span>[httphttps://www.youtube.com/watch?v=NBl92Vs0fos UCI Protocol #1 - Intoduction] » [[UCI]]# [httphttps://www.youtube.com/watch?v=gcBYSby9f88 UCI Protocol #2 - UCI Loop]# [httphttps://www.youtube.com/watch?v=EzkmJEkAmoY UCI Protocol #3 - Parse Position]# [httphttps://www.youtube.com/watch?v=Lo54mNqOMAs UCI Protocol #4 - Parse Go]# [httphttps://www.youtube.com/watch?v=gVGadWuBqEA UCI Protocol #5 - Interrupt Thinking & Working Program]# <span id="Nero"></span>[httphttps://www.youtube.com/watch?v=_1S_vDHWJp8 Vice vs Nero 6.1 - The first ever game!!] » [[Nero]]# <span id="CECP"></span>[httphttps://www.youtube.com/watch?v=DZwW-st4Jl8 XBoard / Winboard Protocol #1] » [[Chess Engine Communication Protocol]]# [httphttps://www.youtube.com/watch?v=ubSDzI3ecwc XBoard / Winboard Protocol #2]# [httphttps://www.youtube.com/watch?v=pClToEJ-g-A XBoard / Winboard Protocol #3 And Console Mode]# [httphttps://www.youtube.com/watch?v=KuQCsEcCO0g BUG ALERT #2]# [httphttps://www.youtube.com/watch?v=1SiR7A1NQ0g In Check Extension] » [[Check Extensions]]# [httphttps://www.youtube.com/watch?v=XkbK_yOvcUw Improving Evaluation - Bitmasks] » [[Evaluation]]# [httphttps://www.youtube.com/watch?v=oB2l2KADPYc Improving Evaluation - Pawn Bitmasks]# [httphttps://www.youtube.com/watch?v=tfzG-o77RD8 Improving Evaluation - Mirror Board Function] » [[Color Flipping]]# [httphttps://www.youtube.com/watch?v=uoHEwVSEy5s Improving Evaluation - Isolani and passer] » [[Isolated Pawn]], [[Passed Pawn]]# [httphttps://www.youtube.com/watch?v=XXdzSQ49aM0 Improving Evaluation - Open Files] » [[Open File]]# [httphttps://www.youtube.com/watch?v=4ozHuSRDyfE Improving Evaluation - King Position and Material Draws] » [[Draw Evaluation]]# [httphttps://www.youtube.com/watch?v=wgYuNhzCYe0 Null Move Pruning #1] » [[Null Move Pruning]]# [httphttps://www.youtube.com/watch?v=5rqXb_QMLA4 Null Move Pruning #2]# [httphttps://www.youtube.com/watch?v=MMoOsCHSdj4 Transpositon Table] » [[Transposition Table]]# [httphttps://www.youtube.com/watch?v=jmLNzigTceM Test Results, Debug Test Run] » [[Debugging]]# [httphttps://www.youtube.com/watch?v=-G_tQKNfVuM Vice 1.0 release, end of series]# <span id="Polyglot"></span>[httphttps://www.youtube.com/watch?v=HjZtevzCa5Y Adding An opening Book Using Polyglot] » [[Opening Book]], [[PolyGlot]]# [httphttps://www.youtube.com/watch?v=hGy5kR_mOdM Polyglot Opening Book #1]# [httphttps://www.youtube.com/watch?v=jEurXv03JIs Polyglot Book #2 Hashkey Generation]# [httphttps://www.youtube.com/watch?v=_VZfnlhk2SU Polyglot Book #3 Read In Data]# [httphttps://www.youtube.com/watch?v=wT7H4ogSDak Polyglot Book #4 Read Book Moves]# [httphttps://www.youtube.com/watch?v=u5WEOplKjdc Polyglot Book #5 Internal Format Book Moves]# [httphttps://www.youtube.com/watch?v=30GFA_d98SQ Polyglot Book #6 Book Option]# [httphttps://www.youtube.com/watch?v=eGGL_9_qduI Vice 1.1 Polyglot Books]
==Misc==
* [httphttps://en.wiktionary.org/wiki/vice vice - Wiktionary]
* [https://en.wikipedia.org/wiki/Vice_%28disambiguation%29 Vice (disambiguation) from Wikipedia]
* [https://en.wikipedia.org/wiki/Vice Vice from Wikipedia]
=References=
<references />
 
'''[[Engines|Up one Level]]'''
[[Category:Open Source]][[Category:UCI]][[Category:WinBoard]][[Category:XBoard]][[Category:Mac]][[Category:Acronym]][[Category:Demonology]][[Category:Didactic]]

Navigation menu