Skip to main content

Questions tagged [engines]

Questions relating to chess engines: any computer program that is able to play/analyze chess positions.

60 questions with no upvoted or accepted answers
Filter by
Sorted by
Tagged with
12 votes
0 answers
2k views

Highest depth ever achieved

I saw a guy that went into depth 70 with no search moves at 41, 192, 897, 168, and 184 nodes from the starting position on Stockfish a few years ago. I would like to know if this is still a record or ...
Ropdup's user avatar
  • 313
8 votes
0 answers
426 views

Stockfish position evaluation component terms in Python?

I saw the excellent Javascript-based guide to how Stockfish evaluates (non-NNUE). Is there a python version out there, perhaps using python-chess? What I am trying to do (in case you have other ...
Abhijit Mahabal's user avatar
7 votes
0 answers
228 views

Chess engines missing mate in 2

After going through a long list of test positions for my chess engine, I found this simple mate in 2 puzzle that my engine failed to see even after searching to a depth of 16 ply. I checked the puzzle ...
Hank's back rank's user avatar
6 votes
0 answers
536 views

What program/website shows the last captured piece in displaying the last move played in a position?

The following image appeared in the question Can anyone explain this sacrifice? You can see a pawn is captured. Sometimes a position will show the last move played or whose move it is but doesn't ...
BCLC's user avatar
  • 2,170
5 votes
0 answers
170 views

Stack data structure to store chess positions?

One method I thought of for storing chess positions is a stack. This is because when you go one move deeper in the search, you add that position onto the stack, and delete the node when finish, this ...
BanjoMan's user avatar
  • 160
5 votes
0 answers
294 views

Setting up Stockfish for Droidfish

I would like to set up Stockfish for the android app Droidfish. How do I set up a server for a Windows machine (my linux machine is too weak) using SF13?
Concerto's user avatar
4 votes
0 answers
305 views

Are engines impaired by the 50-move rule?

Are we missing too much from the 50-move rule implementation to engines, whether HCE (Hand-crafted evaluation) or/and NN (Neural Network)? We know that certain endgames are a win without the rule. ...
JSBach49's user avatar
4 votes
0 answers
310 views

How engines accomplish calculation speeds of 1000kN/s per Core and above?

I am developing a chess engine to improve my Cpp. It works, which means it generates legal moves and it can play them out. I optimized a bit and now achieve ~20k N / s, which is way better than my ...
Niclas's user avatar
  • 149
3 votes
1 answer
120 views

How many weaker players as a team can rival a much stronger player?

I wonder if anyone has tried to organize a large number of much weaker players to cooperatively beat a top player. Of course weaker players may not even see let alone agree on best moves if they use ...
alices_and_bobs's user avatar
3 votes
1 answer
102 views

Are there free chess engines where you can exclude a specific move line from the search tree, or give it a manual evaluation?

Years ago, the engine version of Shredder 10+ had such a 'god mode' where you could enter manually an evaluation after a certain line of moves, and then going back to the original position the engine'...
MikeTrans's user avatar
  • 121
3 votes
0 answers
254 views

I have a code in Python which should compute fully optimal moves in an endgame for Black and White player, but it seems that k is playing suboptimally

In this example "'fen': '7Q/8/8/6k1/2K5/8/8/8 w - -', 'moves_to_mate': 9" should be "'fen': '7Q/8/8/6k1/2K5/8/8/8 w - -', 'moves_to_mate': 11" according to Stock-Fish. EDIT The ...
user2925716's user avatar
3 votes
0 answers
97 views

Why this Python code for a simple endgame yields wrong results?

I have a Python code as below for a trivial (for a human) endgame, but I'm unable to make it output correct results. I'm seeking for a fully optimal play by both player: the stronger player should try ...
user2925716's user avatar
3 votes
0 answers
119 views

Can previous and continuing research on N-piece tablebases be used toward human theory of chess?

This follows another questions here: What is the status for EIGHT piece endgame tablebases? My answer there was appropriately removed as being question in reaction to that question, well in light of ...
dbdb's user avatar
  • 162
3 votes
0 answers
248 views

Debugging my PERFT coding

I'm stuck debugging my move generation and do move function. I noticed that the castling as actually the problem in my code, but I think I have implemented everything right. I installed some java ...
James Urian's user avatar
2 votes
0 answers
47 views

How to make engine evaluation show difficulty of finding right move sequence, not just who's better with perfect play?

Inspired by a recent video where Magnus Carlsen was surprised that the engine thinks his position was a draw. Even top players may find a position considered winning can actually be drawn with perfect ...
alices_and_bobs's user avatar
2 votes
0 answers
62 views

optimum chess endgame with D=3 pieces doesn't give an exact moves_to_mate variable

I have just upgraded my code for computing completely optimally for both players a chess endgame as given here: https://pastebin.com/jQ090L01 but it gives to me 2 plies to checkmate White instead of ...
user2925716's user avatar
2 votes
0 answers
68 views

Easily modifiable chess engine

I'm looking for a chess engine that I can (relatively) easily go into the source code, make some tweaks, recompile, and run the modified engine. Ideally, the source code would be well documented and ...
isaacg's user avatar
  • 292
2 votes
0 answers
52 views

Transposition table store/retrieval confusion

I am struggeling to get the transposition table aspect of my search algorithm right. These are the table functions: pub fn lookup(&self, hash: ZHash, depth: u32) -> Option<&...
Curunir's user avatar
  • 121
2 votes
0 answers
127 views

Is it possible to make stockfish promote only to a queen and nothing else?

Is there a way to limit stockfish to promote pawns only to a queen? I'm using python chess library and a stockfish engine. I'm making an engine play itself and then use its moves to control the ...
Konraddo's user avatar
2 votes
0 answers
126 views

Literature on chess engines' playing style

I'm aware of Matthew Sadler and Jozarov's outputs, do you have any other suggestions? Any first-hand attempt of trying to describe engines' playing main themes would also be welcome.
Andrea Nerla's user avatar
2 votes
0 answers
232 views

Transposition table cut and all nodes

I have written a chess engine over the last year. Inside my search function I have the following struct transposition *e = attempt_get(pos); if (e && transposition_depth(e) >= depth &&...
spinosarus123's user avatar
2 votes
0 answers
149 views

Which websites have a ranking and/or a rating list for correspondence chess without engine help?

I am looking for websites that have a ranking and/or a rating list for correspondence chess without engine help. Which ones do exist? For example, lichess.org has correspondence chess without engine ...
Beginner's user avatar
  • 1,292
2 votes
0 answers
208 views

Alpha-Beta Pruning and Depth skews checkmate evaluation

I am currently working on a chess engine in golang. I have implemented and tested move generation, making and unmaking. I am working on search and evaluation using Negamax with Alpha Beta pruning, ...
Rak Laptudirm's user avatar
2 votes
0 answers
152 views

Issue with connecting engine to lichess bot (uci communication)

My engine is responding correctly to the first inputs from the GUI (as above), but when it receives go movetime 10000 it just crashes and I don't know why. When I test my engine manually in CMD I get ...
ZED's user avatar
  • 103
2 votes
0 answers
371 views

Understanding Null move pruning

I have trouble understanding null move pruning. I understand the concept of a free move for the side that just played a move, but what I don't understand is the code part: int score = -negamax(-beta,-...
DaOnly Owner's user avatar
1 vote
0 answers
35 views

Stockfish engine - how to modify skill level?

I've managed to get the Stockfish engine working using python-chess. I'd like to play with the skill levels of Stockfish, but need some info. My code below uses the 'skill level' option but after an ...
Crease's user avatar
  • 11
1 vote
1 answer
58 views

Help for Building a Chess Engine in Python

I am building a chess engine in python, as a project for school. I am required not to use any engines of course, but I am allowed to use the chess module. The code I tried to develop uses a rough ...
Chris Wong's user avatar
1 vote
1 answer
81 views

Is this what I should have done or should do next?

When I analyze my game, is the analysis machine (stock fish lite on chess.com) telling me what move or I should made instead of the one I just made, or is it telling me what move it thinks I should ...
Nathan's user avatar
  • 11
1 vote
0 answers
34 views

Training data retrieval

I am currently developing a chess engine which uses minimax algorithm to evaluate chess positions. In addition to this I want to improve my current static evaluation with reinforcement learning. I ...
Martin Šváb's user avatar
1 vote
0 answers
53 views

I have a simple code which has a bug at the particular place given below, but I'm unable to detect it exactly and fix it

I have asked a similar question elsewhere and I have detected where roughly is a problem. It is in this function which gets processed for node "1" only, see the output section below: (I'm ...
user2925716's user avatar
1 vote
0 answers
62 views

Creating a Position with Defined Possibilities within N Ply (for engine testing)

DEFINITIONS The definitions of "cook" and "dual" I'm using (which are the standard definitions if I understand them correctly) are: Cook: A position where the attacking side, on ...
Dave's user avatar
  • 347
1 vote
0 answers
111 views

Why is my negamax/quiescence search slow?

I'm currently making a chess engine in Java and my search function is extremely slow to the point that it's slower than my perft function. My search function is currently a negamax search that uses ...
wdk23's user avatar
  • 90
1 vote
0 answers
152 views

Creating or editing shredder .bkt opening book

I want to create an opening book for Shredder or edit an existing one. the way I want it is like how Lucas chess works, giving a certain value (weight, percentage, etc) to a specific move. This is an ...
mohammad sarabi's user avatar
1 vote
0 answers
270 views

Is this a possibly faster way to find pinned pieces using magic hash?

Okay so this is something that I came up with while working on my own engine, but I am not sure if anyone has ever tried. Basically I am using a separate set of magic hashed longs to store pieces and ...
Debabrata Roy's user avatar
1 vote
0 answers
285 views

Clear Stockfish hash table after every move conveniently

When analyzing a game with Stockfish I sometimes find it confusing that evaluation of a given position changes depending on what positions I had analyzed previously. I understand that this is because ...
boot4life's user avatar
  • 687
1 vote
0 answers
339 views

Relation between Elo and search depth for basic minimax

If we use the most basic approach to a chess engine (for example, for a codegolf): minimax to a fixed depth with the material count as static evaluation, then how strong is this algorithm? This of ...
Jens Renders's user avatar
0 votes
0 answers
47 views

What is the difference between the PV-move and Hash-move in move ordering in an chess engine?

I'm writing a chess engine in python and I'm trying to start implementing some move ordering techniques for more cutoffs in my negamax algorithm. The chess programming wiki gives this suggested move ...
user24551772's user avatar
0 votes
2 answers
78 views

How to add engine evaluation to a pgn file?

I have pgn file of thousands of game, with the clock only, every move have comment like this, this is a pgn file downloaded from lichess: {[%clk 0:10:00]} I need to add engine eval to every move like ...
sharp12345's user avatar
0 votes
0 answers
62 views

Cdrill: what does the “Threat” parameter affect?

Around ten parameters allow you to modify the playing style of the Cdrill chess engine. I would like to use it to program new personalities for the engine but I'm not sure I understand how to use the &...
RobRobinson's user avatar
0 votes
0 answers
47 views

Transposition table problems with negamax

sorry if I didn't follow the upload rules correctly. This is my first post here. I am currently building a chess engine using C# (Godot game engine), and my transposition table is rarely used. For ...
uri bracha's user avatar
0 votes
0 answers
68 views

How do I test my static evaluation function?

I am programming a basic chess AI, within it I have my evaluation function. It is simple, only uses piece square table values, and does basic calculations for the pawn structure and king safety. How ...
bbqribs's user avatar
  • 13
0 votes
0 answers
50 views

What is an "opening edge" in computer terms

When analysing with stockfish on chessbase, there are often positions reached in openings where the engine's eval is around +0.2 ish and the verdict is "position is equal". So at what ...
anti - Marshall's user avatar
0 votes
0 answers
52 views

Smallest size of the transposition table that still makes sense

I've implemented a chess engine with iterative deepening, triangular table for PV and aspiration window. The engine runs on a microcontroller with 1MB of RAM. I read in the Internet everything I could ...
Kajetan Świtalski's user avatar
0 votes
0 answers
68 views

What is this wide split in the Kmoch nimzo between stockfish's evaluation and master-level move choice?

In the Kmoch Nimzo Indian (sometimes called the f3 nimzo) [FEN ""] 1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. f3 d5 5. a3 Bxc3 6. bxc3 c5 (6... dxc4!? 7. e4) The move 6...c5 is the most popular ...
Awalrod's user avatar
  • 199
0 votes
0 answers
55 views

For magic bitboards experts, find magics for bigger total bits?

Writing a legal move generator, I had an idea to use the same approach as bishop/rook attacks for pins (and discover checks). The idea is that, for a given occupancy, it returns the second set bit (if ...
zuokuok's user avatar
  • 101
0 votes
0 answers
100 views

How to calculate transposition table hash index

I'm writing a chess engine in Java, and I'm having difficulty understanding how to calculate the hash address/index, based on the zobrist key. According to the Chess Programming Wiki, since the 64-bit ...
kelseyde's user avatar
0 votes
0 answers
31 views

What engine & setup can I use to analyze a Bughouse position from a single board only (one board), taking into account the pieces in hand?

I have looked at the Sjeng and the Bughousechess.wz.cz website and the answers in the other page. This is not quite a Crazyhouse equivalent analysis, due to the capture mechanics. The pages are very ...
Mark C's user avatar
  • 101
0 votes
0 answers
148 views

How to install external engines in Lucas chess?

I downloaded several chess engines ,and tried to add them with the help of engine configuration, but Lucas wanted .exe type file. My downloaded engine files were not shown because they were in the ZIP ...
Mohammad Shahinur Islam's user avatar
0 votes
0 answers
86 views

Horrible branching rate in kiwipete position

My chess engine can generally get a branching factor 4.5 in the opening and around 7.5 during average middlegame positions. However, I recently tested my engine on the test position Kiwipete and found ...
Hank's back rank's user avatar
0 votes
0 answers
136 views

How bad is Stockfish in Fog of War chess

Since in Fog of War chess you cant see all the board , I think that engines would suck at it.Have there been any attempts on playing engine tournaments under Fog of War chess?
Cerise's user avatar
  • 271