Difference between revisions of "Maxima2"
GerdIsenberg (talk | contribs) (Created page with "'''Home * Engines * Maxima2''' '''Maxima2''',<br/> an UCI compliant open source chess engine by Erik van het Hof and Her...") |
GerdIsenberg (talk | contribs) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''[[Main Page|Home]] * [[Engines]] * Maxima2''' | '''[[Main Page|Home]] * [[Engines]] * Maxima2''' | ||
+ | |||
+ | [[FILE:MaximumParaboloid.png|border|right|thumb| Maxima <ref>The graph of a 3D [https://en.wikipedia.org/wiki/Paraboloid paraboloid] given by f(x,y) = -(x²+y²)+4, Shown is the [https://en.wikipedia.org/wiki/Maxima_and_minima global maximum] of the surface, at (0,0,4), Selfmade with [https://en.wikipedia.org/wiki/MuPAD MuPad], [https://en.wikipedia.org/wiki/User:Sam_Derbyshire Sam Derbyshire], February 21, 2008, [https://en.wikipedia.org/wiki/Wikimedia_Commons Wikimedia Commons]</ref> ]] | ||
'''Maxima2''',<br/> | '''Maxima2''',<br/> | ||
an [[UCI]] compliant [[:Category:Open Source|open source chess engine]] by [[Erik van het Hof]] and [[Hermen Reitsma]], released under the [[Free Software Foundation#GPL|GPL license]]. | an [[UCI]] compliant [[:Category:Open Source|open source chess engine]] by [[Erik van het Hof]] and [[Hermen Reitsma]], released under the [[Free Software Foundation#GPL|GPL license]]. | ||
− | Maxima2 is written in [[Cpp|C++]] as successor of [[BugChess NL|BugChess]] aka '''QueenMaxima'''. | + | Maxima2 is written in [[Cpp|C++]] as successor of [[BugChess NL|BugChess]] aka '''QueenMaxima'''. The code has been completely rewritten and modernized using new developments in computer chess from the last decade, |
+ | with [[Bitboards|bitboards]], [[Late Move Reductions|LMR]], less [[Extensions|extensions]], more [[Pruning|pruning]], [[Tapered Eval|tapered evaluation]], and integrated self-matching test for [[Engine Testing|testing]] and [[Automated Tuning|tuning]] [[Evaluation|evaluation]] values as most notable changes <ref>[https://github.com/hof/qm2/blob/master/README.md qm2/README.md at master · hof/qm2 · GitHub]</ref>. | ||
− | = | + | =Features= |
− | + | ==[[Board Representation]]== | |
− | * | + | * [[Bitboards]] |
− | * | + | * [[Magic Bitboards]] |
− | * | + | ==[[Search]]== |
− | * | + | * [[Iterative Deepening]] |
− | * | + | * [[Aspiration Windows]] |
− | * [[Tapered Eval | + | * [[Principal Variation Search]] ([[Fail-Soft]]) |
− | * | + | * [[Transposition Table]] |
+ | * [[Selectivity]] | ||
+ | ** [[Check Extensions|Safe Check Extensions]] | ||
+ | ** [[Late Move Reductions]] | ||
+ | ** [[Mate Distance Pruning]] | ||
+ | ** [[Null Move Pruning]] | ||
+ | ** [[Futility Pruning]] | ||
+ | ** [[Reverse Futility Pruning]] (Beta Pruning) | ||
+ | ** [[Quiescence Search]] | ||
+ | * [[Move Ordering]] | ||
+ | ** [[Hash Move]] | ||
+ | ** [[Internal Iterative Deepening]] | ||
+ | ** [[MVV-LVA|MVV/LVA]] | ||
+ | ** [[Static Exchange Evaluation]] | ||
+ | ** [[Killer Heuristic]] | ||
+ | ** [[History Heuristic]] | ||
+ | ==[[Evaluation]]== | ||
+ | * [[Tapered Eval]] | ||
+ | * [[Material]] | ||
+ | * [[Material Hash Table]] | ||
+ | * [[Piece-Square Tables]] | ||
+ | * [[Bishop Pair]] | ||
+ | * [[Mobility]] | ||
+ | * [[Trapped Pieces]] | ||
+ | * [[Outposts]] | ||
+ | * [[King Safety]] | ||
+ | * [[Pawn Structure]] | ||
+ | * [[Passed Pawn|Passed Pawns]] | ||
=See also= | =See also= | ||
Line 26: | Line 56: | ||
==Chess Engine== | ==Chess Engine== | ||
* [https://github.com/hof/qm2 GitHub - GitHub - hof/qm2: maxima2 chess program] | * [https://github.com/hof/qm2 GitHub - GitHub - hof/qm2: maxima2 chess program] | ||
+ | * [https://github.com/hof/qm2-util GitHub - hof/qm2-util: maxima2 utilities for online playing, tuning, web and mobile display] | ||
==Misc== | ==Misc== | ||
* [https://en.wikipedia.org/wiki/Maxima Maxima from Wikipedia] | * [https://en.wikipedia.org/wiki/Maxima Maxima from Wikipedia] | ||
Line 41: | Line 72: | ||
[[Category:Linux]] | [[Category:Linux]] | ||
[[Category:Windows]] | [[Category:Windows]] | ||
+ | [[Category:Given Name]] | ||
[[Category:Nobility]] | [[Category:Nobility]] |
Latest revision as of 19:31, 25 December 2019
Maxima2,
an UCI compliant open source chess engine by Erik van het Hof and Hermen Reitsma, released under the GPL license.
Maxima2 is written in C++ as successor of BugChess aka QueenMaxima. The code has been completely rewritten and modernized using new developments in computer chess from the last decade,
with bitboards, LMR, less extensions, more pruning, tapered evaluation, and integrated self-matching test for testing and tuning evaluation values as most notable changes [2].
Contents
Features
Board Representation
Search
- Iterative Deepening
- Aspiration Windows
- Principal Variation Search (Fail-Soft)
- Transposition Table
- Selectivity
- Move Ordering
Evaluation
- Tapered Eval
- Material
- Material Hash Table
- Piece-Square Tables
- Bishop Pair
- Mobility
- Trapped Pieces
- Outposts
- King Safety
- Pawn Structure
- Passed Pawns
See also
Forum Posts
- Two new programs if... by Günther Simon, CCC, June 21, 2016
External Links
Chess Engine
- GitHub - GitHub - hof/qm2: maxima2 chess program
- GitHub - hof/qm2-util: maxima2 utilities for online playing, tuning, web and mobile display
Misc
References
- ↑ The graph of a 3D paraboloid given by f(x,y) = -(x²+y²)+4, Shown is the global maximum of the surface, at (0,0,4), Selfmade with MuPad, Sam Derbyshire, February 21, 2008, Wikimedia Commons
- ↑ qm2/README.md at master · hof/qm2 · GitHub