What is the purpose of chess engines?

Discussion of anything and everything relating to chess playing software and machines.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Uri Blass
Posts: 8604
Joined: Wed Mar 08, 2006 11:37 pm
Location: Tel-Aviv Israel

Re: What is the purpose of chess engines?

Post by Uri Blass » Sun Nov 17, 2019 1:25 am

mclane wrote:
Sat Nov 16, 2019 5:07 pm
CHESS is about checkmate the opponent king.
Most chess engines, if they can’t see the mate, try to capture material. And if there is no material advantage to get, they make a move that is not giving away the game.

Then the programmer call this chess.

But this is not chess.

CHESS is not a test suite you have to solve with a key move.

CHESS is to make moves in the appropriate order to mate the opposite king.

Therefore you need a plan.

Computerchess Engines do not plan. Therefore they do not play chess but solve test suites.

They reach a very high ELO doing it.
But they don’t play chess.
I totally disagree that most chess engines try to capture material.
I often see evaluations of stockfish that I do not understand based on material even at small depth.
I do not claim that stockfish is not stupid at small depth but this is not the type of being stupid because you are too materialistic.


Here is one example(white is winning in the diagram but the point is not who is winning)




Latest version of stockfish at depth 1 shows
Rc1 with 4.37 pawns for white

if you want to capture material Nxb7 is more logical and even after Nxb7 the evaluation based on material should be only +1.00

At depth 2 things become more strange and main line is
Nxb7 g4 Nxd8 Rxd8 Qxb6 with 13.75 pawns for white

It seems that stockfish prunes moves of the queen and does not see that the queen can escape.

Conclusion is that stockfish at small depth is useless for analysis and I also do not think that this pruning is good for very fast time control that the stockfish team does not test(even at 10+0.1 time control stockfish clearly get more than depth 2).

Basically when I look at a position I would like to understand not only the best move but also the process of thinking of lines by a strong player even if the initial lines are wrong(and strong humans change their mind when they think more) but stockfish does not help.

No strong human think in that way and no strong human will start his thinking by Nxb7 g4

User avatar
Ovyron
Posts: 2818
Joined: Tue Jul 03, 2007 2:30 am

Re: What is the purpose of chess engines?

Post by Ovyron » Sun Nov 17, 2019 1:28 am

Chess engines don't have any purpose. Is the purpose of a hammer to nail? No, because nailing has no purpose.

Anything that you can use chess engines for doesn't have any purpose by its very nature.

The purpose can't be to improve your chess because improving doesn't have any purpose.

The purpose can't be to win games because winning doesn't have any purpose.

The purpose can't be to analyze positions because analyzing positions doesn't have any purpose.

The purpose can't be to know the truth about chess because knowing the truth about chess doesn't have any purpose.

This proves that "What is the purpose of chess engines?" is the wrong question.

Since chess engines are a tool, what you want to ask is what is it that you want to do, and ask yourself if what you want to do could be done in a more easy way by using chess engines. If the answer is "yes", you use them, if the answer is "no", you avoid them. But the purpose has to come from what you want to achieve, not from chess engines.

If you want to hit a nail, you don't need a hammer, there are other methods.

Uri Blass
Posts: 8604
Joined: Wed Mar 08, 2006 11:37 pm
Location: Tel-Aviv Israel

Re: What is the purpose of chess engines?

Post by Uri Blass » Sun Nov 17, 2019 1:45 am

Ovyron wrote:
Sun Nov 17, 2019 1:28 am
Chess engines don't have any purpose. Is the purpose of a hammer to nail? No, because nailing has no purpose.

Anything that you can use chess engines for doesn't have any purpose by its very nature.

The purpose can't be to improve your chess because improving doesn't have any purpose.

The purpose can't be to win games because winning doesn't have any purpose.

The purpose can't be to analyze positions because analyzing positions doesn't have any purpose.

The purpose can't be to know the truth about chess because knowing the truth about chess doesn't have any purpose.

This proves that "What is the purpose of chess engines?" is the wrong question.

Since chess engines are a tool, what you want to ask is what is it that you want to do, and ask yourself if what you want to do could be done in a more easy way by using chess engines. If the answer is "yes", you use them, if the answer is "no", you avoid them. But the purpose has to come from what you want to achieve, not from chess engines.

If you want to hit a nail, you don't need a hammer, there are other methods.
There may be misunderstanding and it seems that you mean by purpose to something different than what I mean and the poster meant.

Note that my main language is not english but
I understand purpose of X as what humans want to achieve by X(of course something practical).

When X=chess engine
there are many type of engines so purpose is what humans want to achieve by some type of engine or by some practical modification of an engine.

dkappe
Posts: 272
Joined: Tue Aug 21, 2018 5:52 pm
Full name: Dietrich Kappe

Re: What is the purpose of chess engines?

Post by dkappe » Sun Nov 17, 2019 1:54 am

I don’t think you’re really getting useful answers. :-)

Maybe we can divide this into audiences:

1) computer chess enthusiasts
2) iccf participants
3) professional players
4) club players
5) casual players
6) everyone else

I fall into category 4 — a middling club player. I used to use ab engines to play games when I didn’t have human opponents. As a result I developed a really ugly anti engine style that hampered my improvement. Nowadays I only use them to spellcheck for tactical mistakes.

A0 (and leela) had a very different style, but were still too strong as opponents and often played in a way that was too complex to follow. That’s why I developed a series of small nets (Bad Gyal, etc., MiniHuman on lichess) that, while objectively worse than leela nets, made for better sparring and analysis partners for a club player.

Ask some other club players what they want (if they know), and ask members of those other categories what they want. GM Hammer has some strong opinions about what he wants.

Dann Corbit
Posts: 10186
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: What is the purpose of chess engines?

Post by Dann Corbit » Sun Nov 17, 2019 7:54 am

To analyze chess positions in a search for truth.
All the others are subsets, anyways.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.

Vinvin
Posts: 4390
Joined: Thu Mar 09, 2006 8:40 am
Full name: Vincent Lejeune

Re: What is the purpose of chess engines?

Post by Vinvin » Sun Nov 17, 2019 10:34 am

crem wrote:
Sat Nov 16, 2019 4:21 pm
...
So, here is a list of uses of chess engines that I can think of:
...
I summarize all of this as : "find the best move in every possible (but legal) chess position".

abulmo2
Posts: 200
Joined: Fri Dec 16, 2016 10:04 am
Contact:

Re: What is the purpose of chess engines?

Post by abulmo2 » Sun Nov 17, 2019 11:42 am

crem wrote:
Sat Nov 16, 2019 4:21 pm
1. To participate in TCEC / CCCC / other competitions.

2. To play against humans.

3. To help correspondence chess players.

4. To analyze your games.

5. To assist opening preparation.

So, my questions:
1. Is there anything I miss/got wrong in the list above?
IMHO, the only purpose of a chess engine is for their programmers to have fun programming something useless. Engine programmers just try to understand how algorithms work, how efficient they are, how to code them efficiently and somewhat elegantly. Hence, the purpose of LC0 was mostly to understand the alphazero approach, that many thought was faked. The usefulness for engine users is just a collateral damage.
crem wrote:3. How do you personally use chess engines?
To test my own engine.
Richard Delorme

User avatar
mclane
Posts: 16253
Joined: Thu Mar 09, 2006 5:40 pm
Location: US of Europe, germany
Full name: Thorsten Czub
Contact:

Re: What is the purpose of chess engines?

Post by mclane » Sun Nov 17, 2019 12:01 pm

Vinvin wrote:
Sun Nov 17, 2019 10:34 am
crem wrote:
Sat Nov 16, 2019 4:21 pm
...
So, here is a list of uses of chess engines that I can think of:
...
I summarize all of this as : "find the best move in every possible (but legal) chess position".
The best move in a position is not nessesary the best move in a game of chess.

If you have a plan to mate the opponent king, you maybe have to sacrifice the “best move “ for the plan.
What seems like a fairy tale today may be reality tomorrow.
Here we have a fairy tale of the day after tomorrow....

User avatar
Ovyron
Posts: 2818
Joined: Tue Jul 03, 2007 2:30 am

Re: What is the purpose of chess engines?

Post by Ovyron » Sun Nov 17, 2019 12:22 pm

mclane wrote:
Sun Nov 17, 2019 12:01 pm
Vinvin wrote:
Sun Nov 17, 2019 10:34 am
crem wrote:
Sat Nov 16, 2019 4:21 pm
...
So, here is a list of uses of chess engines that I can think of:
...
I summarize all of this as : "find the best move in every possible (but legal) chess position".
The best move in a position is not nessesary the best move in a game of chess.

If you have a plan to mate the opponent king, you maybe have to sacrifice the “best move “ for the plan.
Yes, that's why the time factor is very important, when you want to checkmate the enemy king, the best move might be different if there's 1 second remaining or 1 minute remaining or 1 hour remaining or 1 day remaining or 1 month remaining or 1 year remaining :shock:

People that are looking for "chess truth" assume "infinite time" for both sides, but then the chess truth is that in those conditions it's best to never make a move!

chrisw
Posts: 2186
Joined: Tue Apr 03, 2012 2:28 pm

Re: What is the purpose of chess engines?

Post by chrisw » Sun Nov 17, 2019 12:49 pm

Dann Corbit wrote:
Sun Nov 17, 2019 7:54 am
To analyze chess positions in a search for truth.
All the others are subsets, anyways.
Yours is the most interesting answer, but really only because it itself poses a mass of questions on the underlying assumptions on what you mean by “truth”. And since it is -you- posing the question, another set of underlying assumptions of deeper philosophy.

I throw back at you the question of what is this truth? For example what is the “truth” of the 10 times table? Well, we can write it out in ten rows by ten columns. To which we can say, okay here is the truth, to which somebody else might say “and? So what? How does this relate to philosophical questions of “truth” out in the big wide world?
So, I sense, in Marxist critique (so not personal) that by extension to chess, this “truth” (basically a giant table, or an almost infinite algorithm) is bring conflated with “truth” as in the answer to the question of life the universe and everything (plus its own impossible question).
Chess “truth” doesn’t really mean anything, and finding it won’t solve anything either. Whereas, finding Douglas Adams hypothetical Q and A might solve a few things. Hence conflation of the trivial with the spectacularly consequential.

Post Reply