Questions tagged [engines]

An engine is any machine or computer program that plays chess.

Filter by
Sorted by
Tagged with
2
votes
1answer
24 views

How to use a Polyglot book in C# with a chess engine

I would like, if possible, for someone to provide a code snippet of a basic logic to access a Polyglot book file. I'm having trouble finding the file format documentation, so I don't know how to ...
3
votes
1answer
60 views

How can I speed up my check detection in Javascript?

I am trying to write a simple chess engine in Javascript. It performs very slowly but I have finally rooted down the problem to check detection. How might I speed up this check detection? If you have ...
4
votes
0answers
96 views

Are these magics wrong?

I am working on my chess engine and wanted to finally implement magic bitboards to get a huge increase in performance. Basically I was writing a method to check if a number can be used as a magic for ...
3
votes
2answers
81 views

Moves per depth in search engines

I have been implementing a chess engine myself and it is playing pretty good but it seems to calculate way too many nodes. I was looking at this post: Stockfish nodes And tested it with my engine. ...
3
votes
2answers
912 views

In what ways is it the best to use a computer in correspondence chess?

I have only recently started correspondence chess and I have read that engines are allowed in correspondence chess. I definitely do know that the world champions of correspondence chess have said ...
2
votes
2answers
101 views

Lc0 weights file

On Windows 10 I have installed the latest versions of Arena (v3.5.1) and the Lc0 engine (v0.23.1). However I have only found one weights.pb file that it will accept. The one in the link in this Q&...
3
votes
1answer
83 views

Minimax check(mate) detection

in my minimax function I have a first few lines looking something like this: children = board.get_all_possible_moves(board) if depth = 0 or board.is_check_mate or board.is_draw: return None, ...
5
votes
2answers
391 views

Stockfish 10 working on only 1 core at a time

I am a lichess user who would like to be able to use my 8C/16T processor to the best of my ability, and yet when I start up a chess engine only one of my cores is working on stockfish the rest are ...
4
votes
2answers
113 views

Minimax with alpha-beta pruning for chess

I am creating a chess AI using the minimax method with alpha-beta pruning. I am trying to understand how the alpha-beta pruning works, but I can't get my head around it when it comes to chess where ...
0
votes
2answers
107 views

What is the most effective openings to beat a 2200-2400 rated computer at chess?(With White and Black)

I have had good positions with the Hippopotamus opening with its Kings Indian structure(ranging up to +3 in evaluation) but in the end, the tactical superiority of the computer always gets in the way ...
1
vote
2answers
79 views

What is the most effective way to beat the computer at chess?

I have recently been playing a lot of games against the Computer level 9 on chess.com(not to be confused with Komodo 9). It is actually a reasonably difficult computer I would say rated definitely ...
2
votes
1answer
79 views

What is the highest mobility score of a board without a checkmate, stalemate, or draw?

I consider the mobility score of a board to be the number of legal moves one player could make less the number of legal moves the other player could make. 8/7k/2Q2K2/8/6b1/8/8/8 w - - 0 1 Using the ...
14
votes
5answers
5k views

Why have engines not increased top rated chess players' Elo?

The arrival of strong chess engines as Stockfish, Houdini or Rybka allow top players to deeply prepare lines in openings or to study better endgames. I would expect a rating increase of top players. ...
3
votes
2answers
491 views

chess.com Analysis “Accuracy” - What score is computer like for a given rating?

I have a few questions about engine use detection at online games on chess.com: Let's say both players are rated 1800 on chess.com online play and they make n number of moves in a game. White has 90%...
3
votes
1answer
40 views

Chessbase Nalimov tablebases

I'm using Nalimov tablebases with Fritz14 and it basically works. Just one strange problems occurs: The engine doesn't mate because the final mating move isn't sorted correctly. It look like this: +- ...
2
votes
0answers
50 views

How to reduce the number of playouts on LeelaChessZero?

So after checking the wiki it seems the parameter "--playouts" allows to chose the number of playouts. But when I try it on my laptop it just fails: $ ./lc0 -w meangirl-7.pb.gz --playouts 5 v0.23....
7
votes
10answers
7k views

Is a Finite State Machine a good way to model chess?

A very common model in programming is the Finite State Machine (FSM) (see here for a great worked example.) Is a FSM a good way to model chess? What are the best ways to go about it? What chess ...
2
votes
2answers
3k views

Why doesn't Stockfish (DroidFish) try to flag me?

Imagine the following position: [FEN "3k4/7p/7K/3B4/8/8/8/8 w - - 0 1"] White is played by Stockfish in DroidFish and black by human (me). We both have 15 seconds. After a few moves, white bishop ...
3
votes
1answer
200 views

Hans Berliner and computers. Did he win the world ICCF championship using computer help?

Way back when, Hans worked for IBM. I met him at an IBM data center one time, but he worked in the Federal division and just used the center for a demo. I had known him from the Washington Chess ...
3
votes
1answer
52 views

Are there any sources of massive transposition tables?

Do transposition databases exist the way tablebases do? Would an engine be able to take advantage of a pre-calculated TD? Is there a benefit to players when studying if they had access to pre-...
3
votes
1answer
158 views

What is the farthest away a game can be from a guaranteed checkmate?

What is the maximum number of moves away from checkmate that a player can be where checkmate is guaranteed? There are many positions that are a guaranteed win for a player if played perfectly right? (...
4
votes
3answers
185 views

Chess engine: Quiescence Search increases required time by a factor of 20

I am currently trying to implement a basic chess engine and got to the following point: I have got Alpha-Beta Pruning implemented and extended it with a transposition table. To further increase ...
5
votes
4answers
883 views

Help with game phase identification

I'm working on a chess AI for a school project and I am looking into ways to identify the current phase of a board, meaning the opening, middlegame, and endgame. I have seen an article explaining ...
2
votes
1answer
68 views

Use of transposition tables in chess engines

I hope this is the right place to post this question. So I like to implement things myself without using libraries and one of my first projects was a chess engine and I would like to improve this one. ...
3
votes
3answers
177 views

File format/interface for home-brew engines (and implementation in lichess)

I'm a hobbyist chess programmer. I've built a few engines from scratch, had lots of fun, and am generally pretty proud of what I've made (I estimate ~1400-1500 though it's hard to tell). I was very ...
3
votes
0answers
24 views

Human assisted handicapped engine against engine, adjustable parameters

I am looking for software preferably local interface on windows, to play human+engine against engine with access to search parameters such as depth and "greed" or dismissal factor (controlling ...
15
votes
9answers
3k views

Could a chess engine do retro analysis?

If I took a legal chess position, to what extent could an engine work out the previous moves? [in some other board games such as Othello such game reconstruction is done easily with an engine.]
4
votes
1answer
123 views

Minimax algorithm - Play with Black pieces?

Motivation: I am trying to make a basic AI agent that can play chess against an opponent. The goal is to see how good it can become through the use of machine learning later on and also learn the ...
14
votes
4answers
3k views

How to tell that this is a draw

In an endgame I played as Black, after the rooks were exchanged, the below position was reached. A funky stalemate quickly ensued. [FEN "8/5ppk/5p1p/8/3K1P2/6P1/7P/8 b - - 0 1"] [startflipped ""] 1.....
0
votes
0answers
21 views

Need Help: Chess live data api for wordpress

I am working on a project creating a chess news portal. Can anyone help with Chess live data API for WordPress? That way, I can display live results and updates automatically
1
vote
1answer
71 views

Can engines use the current pawn structure to refine its search/eval?

As I understand it, engines use so-called "bitboards" to generate the current position & possible moves. I'm wondering if any engine uses the pawn bitboard to refine its search and eval. To ...
4
votes
1answer
132 views

Does Google's new quantum computer mean we will soon have a more powerful AlphaZero?

According to a paper published in Nature Google has developed a quantum computer. Abstract The promise of quantum computers is that certain computational tasks might be executed ...
5
votes
2answers
143 views

Is it possible to combine CPU and GPU engines to use the other's principal variation?

This is a speculative question since I don't know if such an engine is even plausible. The idea: we'll start Stockfish and Leela at the same time using both my CPU and GPU. Within a fraction of a ...
3
votes
2answers
113 views

How many games to get a good idea of computer chess board rating?

I have an old Radio Shack 1850 Electronic Chess Computer, which I would like to know the ELO rating each level plays at. The instructions just give average number of seconds per move. I figure I ...
6
votes
3answers
138 views

How do generic game engines work?

The evaluation functions for chess usually includes chess specific knowledge. However, Zillions of Games is able to play any game based only on a description of how the pieces move and winning/losing/...
2
votes
2answers
135 views

How can I set up en passant in Popeye engine?

I want to solve a problem with Thomas Maeder's excellent Popeye engine, and to specify that a possible en passant in the diagram is ok. How can I do this please? The documentation seems opaque. Thanks ...
26
votes
3answers
3k views

Is there an engine that finds the best “practical” move?

A standard chess engine will find the move it considers best assuming best play from both sides. But this move might lead to an insignificant advantage or a tricky line that can easily result in ...
3
votes
2answers
132 views

How does an engine choose between two moves of equal evalulation?

In many positions, different moves are functionally the same, and an engine should return the same evaluation. For example, in a KR vs. KR endgame, (almost) every move that does not lose the rook ...
2
votes
1answer
161 views

How to tweak a chess engine like SF to return a variation which is only slightly better than your moves?

By default, engines return the strongest variation(s) they calculate. I was wondering if there is a way to tweak an open source chess engine to show a move from their MultiPV which is slightly better ...
14
votes
2answers
3k views

Do “chess engine in the cloud” services exist?

And if so, what interfaces can connect to them, and how do they do that? I want to analyze with Lc0, but I don't have a computer with a GPU; I could rent one for a short time period at various cloud ...
18
votes
4answers
6k views

Creating chess engine, machine learning vs. traditional engine?

I am both an avid chess player and computer programmer. I would say that playing chess and programming are the two things I spend the most time doing. Naturally, I am wanting to create my own engine ...
3
votes
1answer
72 views

Adding time to game played with chess engine

Are there any chess engines out there that will allow me to add arbitrary amounts of time to their clocks as the game progresses? I am interested in experimenting with two engines playing each other ...
1
vote
1answer
81 views

What is the most efficient way to calculate attack squares in a chess engine?

I have made a chess engine, and it seems from cProfile that my most expensive function is the one that calculates attack squares for both players. Here is the cProfile results for a perft function I ...
2
votes
1answer
124 views

Speed of minimax with alpha beta pruning in chess engines

Can a minimax function with just alpha beta pruning really evaluate 1.8 billion chess positions (3 ply = 356) in just a second? My chess engine, which uses minimax with only alpha beta pruning, takes ...
2
votes
2answers
129 views

What chess app displays the name of the opening being used in the game?

I used to have a chess app that would say the name of the opening being used when you played. Then my tablet broke, and I thought it would be easy to find that chess app, but no luck. Does anyone ...
2
votes
2answers
236 views

If a pawn promotes to a checking piece while also revealing a check, it is a double check?

I'm writing a chess engine just for fun, and during the validation of movement generation, I found some positions in Perft Results that differ from what my engine is producing. As an example, take ...
1
vote
3answers
122 views

Computers and draws

Engines really push for a win in a dead-draw middlegame position, unlike humans who may agree on a draw. Why is that happening?
3
votes
5answers
229 views

Are engine ratings directly comparable to human-level play?

Yesterday, I play a game against Stockfish 7, and it has 2200 rating points. I drew 2 games, and lost 1. The point is that if I play against a human-rated 2200 player, I would probably have a ...
1
vote
1answer
63 views

Software with support for Database with opening analysis

I'm looking for a software tool that will: Engine Support. For analysis suggestions. Support for software evaluation of the moves. I guess this is optional, although I've seen this feature in ...
2
votes
1answer
221 views

Why can Stockfish give different evaluations at the same depth?

When I let Stockfish get to a certain depth (say depth 33), it gives some evaluation. Then I refresh the position (while leaving Stockfish on) and when it gets to the same depth it gives a different ...