Changes

Jump to: navigation, search

Vice

11,967 bytes added, 16:20, 18 May 2018
Created page with "'''Home * Engines * Vice''' FILE:Vices Speculum Virginum W72 25v.jpg|border|right|thumb|Tree of Vices <ref>"Tree of Vices" from [https://en.wikipedia.org/..."
'''[[Main Page|Home]] * [[Engines]] * Vice'''

[[FILE:Vices Speculum Virginum W72 25v.jpg|border|right|thumb|Tree of Vices <ref>"Tree of Vices" from [https://en.wikipedia.org/wiki/Speculum_Virginum Speculum Virginum], [https://en.wikipedia.org/wiki/Walters_Art_Museum Walters Art Museum], [http://www.thedigitalwalters.org/Data/WaltersManuscripts/html/W72/description.html Ms. W.72, fol. 25v], Early [https://en.wikipedia.org/wiki/13th_century 13th century] manuscript from the [https://en.wikipedia.org/wiki/Cistercians Cistercian] [https://en.wikipedia.org/wiki/Himmerod_Abbey abbey of Himmerode], [https://en.wikipedia.org/wiki/Tree_of_virtues_and_tree_of_vices Tree of virtues and tree of vices from Wikipedia]</ref> ]]

'''Vice''', (Video Instructional Chess Engine)<br/>
a didactic [[Open Source Engines|open source chess engine]] by [[BlueFeverSoft]], written in [[C]], and introduced in a series of 87 + 8 [https://en.wikipedia.org/wiki/YouTube YouTube] videos from May 2013 until January 2014 <ref> [http://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]]</ref>.

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=
* [[Various Classifications#Acronym|Acronym]]
* [[Various Classifications#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

=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 40/4]]
==Videos==
* [http://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]]
# [http://www.youtube.com/watch?v=bGAfaepBco4 Resources and Community]
# [http://www.youtube.com/watch?v=VuJL4qhpp-8 Board Representation] » [[Board Representation]]
# [http://www.youtube.com/watch?v=x9sPmLt-EBM First Definitions]
# [http://www.youtube.com/watch?v=3uBCUF_qHcg Board Structure]
# [http://www.youtube.com/watch?v=1q0NlSdGOjI Undo-Move Structure] » [[Unmake Move]]
# [http://www.youtube.com/watch?v=pqYFUnUn0qw Array[120] to Array[64] Indexing for Pawns] » [[10x12 Board]], [[8x8 Board]]
# [http://www.youtube.com/watch?v=Bi61lMwhksw Piece Lists and ASSERT!] » [[Piece-Lists]]
# [http://www.youtube.com/watch?v=JsjSChsu2L0 Bitboards] » [[Bitboards]]
# [http://www.youtube.com/watch?v=ITVB7JSaI3w Bitboards Pop and Count] » [[BitScan]], [[Population Count]]
# [http://www.youtube.com/watch?v=pa0W1mz_wa4 Set and Clear bits] » [[General Setwise Operations]]
# [http://www.youtube.com/watch?v=uw9jsInf4jA Position Key (Hashkey) #1] » [[Zobrist Hashing]]
# [http://www.youtube.com/watch?v=WqVwQBXLwE0 Position Key (Hashkey) #2]
# [http://www.youtube.com/watch?v=vF_Td1nABYw Position Setup - Reset Board]
# [http://www.youtube.com/watch?v=4vCiIf73FQM Position Setup - FEN Notation ] » [[Forsyth-Edwards Notation]]
# [http://www.youtube.com/watch?v=usUJFkGyqM4 Parsing An FEN (1)]
# [http://www.youtube.com/watch?v=GmCxU4elNcA Parsing An FEN (2)]
# [http://www.youtube.com/watch?v=-wrSMzYGlGs Printing the board to screen]
# [http://www.youtube.com/watch?v=clLaVOnvUvA Piece Lists] » [[Piece-Lists]]
# [http://www.youtube.com/watch?v=CRaIcMGbkpE Rank and File Arrays]
# [http://www.youtube.com/watch?v=O5YtKzh4siE Checkboard]
# [http://www.youtube.com/watch?v=PGPdT9zz-xg Next steps]
# [http://www.youtube.com/watch?v=8mHFATWbeik Square Attacked (1)]
# [http://www.youtube.com/watch?v=VdH0ObqK3CA Square Attacked (2)]
# [http://www.youtube.com/watch?v=KQcArvyrbIo Move Format & Bits (1)] » [[Encoding Moves]]
# [http://www.youtube.com/watch?v=N6yImiyzWpo Move Format & Bits (2)]
# [http://www.youtube.com/watch?v=n2ZgdkW7uls Move Format & Bits (3)]
# [http://www.youtube.com/watch?v=siLoAPTOaWE Printmove and Printsquare]
# [http://www.youtube.com/watch?v=uBwwC5uWJKo Move Generation #1] » [[Move Generation]]
# [http://www.youtube.com/watch?v=wD9CNtvLCrI Move Generation #2 - Validations]
# [http://www.youtube.com/watch?v=1TCKuEoHvcs Move Generation #3 - White Pawns]
# [http://www.youtube.com/watch?v=8LUkqaodUFA Move Generation #4 - Black Pawns]
# [http://www.youtube.com/watch?v=MFMk5SiXvHQ Move Generation #5 - Piece Index Setup]
# [http://www.youtube.com/watch?v=6WovWHeRKFA Move Generation #6 - Non Slider Pieces]
# [http://www.youtube.com/watch?v=dkHlnSP3u3w Move Generation #7 - Slider Pieces]
# [http://www.youtube.com/watch?v=srAcgIKONO4 Move Generation #8 - Castling] » [[Castling]]
# [http://www.youtube.com/watch?v=kVXi615rFxE Move Generation #9 - Final Movelist!] » [[Move List]]
# [http://www.youtube.com/watch?v=ZWcjcn4KVTk Writing MakeMove - Introduction] » [[Make Move]]
# [http://www.youtube.com/watch?v=9Rfx1WHkJ3o Writing MakeMove #1]
# [http://www.youtube.com/watch?v=F_L2AhqB4V4 Writing MakeMove #2 - ClearPiece()]
# [http://www.youtube.com/watch?v=ai_193NC3zU Writing MakeMove #3 - Add/MovePiece()]
# [http://www.youtube.com/watch?v=qnHQJAsJFvk Writing MakeMove #4 - MakeMove()]
# [http://www.youtube.com/watch?v=aKaU0WHVrJI Writing MakeMove #5 - TakeMove()]
# [http://www.youtube.com/watch?v=ioaPTMKU3zg Introduction to Perft testing] » [[Perft]]
# [http://www.youtube.com/watch?v=6Y_FaQhqX2c Perft Testing (Move Make / Unmake debug)] » [[Unmake Move]]
# [http://www.youtube.com/watch?v=6ib1Kf44KR0 Quick Look At MinMax and NegaMax] » [[Minimax]], [[Negamax]]
# [http://www.youtube.com/watch?v=j_ZHeE87udo Quick Look At Alpha Beta] » [[Alpha-Beta]]
# [http://www.youtube.com/watch?v=eox81XUaXYI Overview of search implementation] » [[Search]]
# [http://www.youtube.com/watch?v=XPOcvp4h7VU Parsing a move from user / GUI] » [[GUI]]
# <span id="Repetitions"></span>[http://www.youtube.com/watch?v=1Vq-Ic9t4FE Repetition Detection] » [[Repetitions]]
# [http://www.youtube.com/watch?v=l_OrrycM7Fw Getting the time in milliseconds]
# [http://www.youtube.com/watch?v=AlwyJFG466M Principal Variation Table #1 Definitions] » [[Principal Variation]]
# [http://www.youtube.com/watch?v=BpR76VBo7DQ Principal Variation Table #2 Store / Probe]
# [http://www.youtube.com/watch?v=9LKX9jgqx84 Principal Variation Table #3 Retrieval]
# [http://www.youtube.com/watch?v=_063cuTPOe8 Preparation for search]
# [http://www.youtube.com/watch?v=F74y0ErjWTI Search Function Definitions]
# [http://www.youtube.com/watch?v=zSJF6jZ61w0 Basic Evaluation (very basic)] » [[Evaluation]]
# [http://www.youtube.com/watch?v=6WobF80RgaY Clear To Search]
# [http://www.youtube.com/watch?v=31guiVzPJuU Writing the Iterative Deepening Function] » [[Iterative Deepening]]
# [http://www.youtube.com/watch?v=-WyXnVpJVSQ Writing the Alpha Beta Function] » [[Alpha-Beta]]
# [http://www.youtube.com/watch?v=r4pNoANs8_0 Vice solves a Mate in 3 !] » [[Checkmate]]
# [http://www.youtube.com/watch?v=hDHa4-fijMc Move Ordering - Setting Up MVV LVA] » [[Move Ordering]], [[MVV-LVA]]
# [http://www.youtube.com/watch?v=8LYMXwH1xsg Move Ordering - Picking a Move]
# [http://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>[http://www.youtube.com/watch?v=ouWcWzyCOCY Quiescence - Getting rid of the horizon effect] » [[Quiescence Search]]
# <span id="UCI"></span>[http://www.youtube.com/watch?v=NBl92Vs0fos UCI Protocol #1 - Intoduction] » [[UCI]]
# [http://www.youtube.com/watch?v=gcBYSby9f88 UCI Protocol #2 - UCI Loop]
# [http://www.youtube.com/watch?v=EzkmJEkAmoY UCI Protocol #3 - Parse Position]
# [http://www.youtube.com/watch?v=Lo54mNqOMAs UCI Protocol #4 - Parse Go]
# [http://www.youtube.com/watch?v=gVGadWuBqEA UCI Protocol #5 - Interrupt Thinking & Working Program]
# <span id="Nero"></span>[http://www.youtube.com/watch?v=_1S_vDHWJp8 Vice vs Nero 6.1 - The first ever game!!] » [[Nero]]
# <span id="CECP"></span>[http://www.youtube.com/watch?v=DZwW-st4Jl8 XBoard / Winboard Protocol #1] » [[Chess Engine Communication Protocol]]
# [http://www.youtube.com/watch?v=ubSDzI3ecwc XBoard / Winboard Protocol #2]
# [http://www.youtube.com/watch?v=pClToEJ-g-A XBoard / Winboard Protocol #3 And Console Mode]
# [http://www.youtube.com/watch?v=KuQCsEcCO0g BUG ALERT #2]
# [http://www.youtube.com/watch?v=1SiR7A1NQ0g In Check Extension] » [[Check Extensions]]
# [http://www.youtube.com/watch?v=XkbK_yOvcUw Improving Evaluation - Bitmasks] » [[Evaluation]]
# [http://www.youtube.com/watch?v=oB2l2KADPYc Improving Evaluation - Pawn Bitmasks]
# [http://www.youtube.com/watch?v=tfzG-o77RD8 Improving Evaluation - Mirror Board Function] » [[Color Flipping]]
# [http://www.youtube.com/watch?v=uoHEwVSEy5s Improving Evaluation - Isolani and passer] » [[Isolated Pawn]], [[Passed Pawn]]
# [http://www.youtube.com/watch?v=XXdzSQ49aM0 Improving Evaluation - Open Files] » [[Open File]]
# [http://www.youtube.com/watch?v=4ozHuSRDyfE Improving Evaluation - King Position and Material Draws] » [[Draw Evaluation]]
# [http://www.youtube.com/watch?v=wgYuNhzCYe0 Null Move Pruning #1] » [[Null Move Pruning]]
# [http://www.youtube.com/watch?v=5rqXb_QMLA4 Null Move Pruning #2]
# [http://www.youtube.com/watch?v=MMoOsCHSdj4 Transpositon Table] » [[Transposition Table]]
# [http://www.youtube.com/watch?v=jmLNzigTceM Test Results, Debug Test Run] » [[Debugging]]
# [http://www.youtube.com/watch?v=-G_tQKNfVuM Vice 1.0 release, end of series]
# <span id="Polyglot"></span>[http://www.youtube.com/watch?v=HjZtevzCa5Y Adding An opening Book Using Polyglot] » [[Opening Book]], [[PolyGlot]]
# [http://www.youtube.com/watch?v=hGy5kR_mOdM Polyglot Opening Book #1]
# [http://www.youtube.com/watch?v=jEurXv03JIs Polyglot Book #2 Hashkey Generation]
# [http://www.youtube.com/watch?v=_VZfnlhk2SU Polyglot Book #3 Read In Data]
# [http://www.youtube.com/watch?v=wT7H4ogSDak Polyglot Book #4 Read Book Moves]
# [http://www.youtube.com/watch?v=u5WEOplKjdc Polyglot Book #5 Internal Format Book Moves]
# [http://www.youtube.com/watch?v=30GFA_d98SQ Polyglot Book #6 Book Option]
# [http://www.youtube.com/watch?v=eGGL_9_qduI Vice 1.1 Polyglot Books]
==Misc==
* [http://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]
* [https://en.wikipedia.org/wiki/Vice_%28character%29 Vice (character) from Wikipedia]
* [https://en.wikipedia.org/wiki/Tree_of_virtues_and_tree_of_vices Tree of virtues and tree of vices from Wikipedia]
* [https://en.wikipedia.org/wiki/Seven_deadly_sins Seven deadly sins from Wikipedia]

=References=
<references />

'''[[Engines|Up one Level]]'''
[[Category:Engine]][[Category:Open Source]][[Category:UCI]][[Category:WinBoard]][[Category:XBoard]][[Category:Acronym]][[Category:Demonology]]

Navigation menu