Applying all chess principles in chess without mistake, how far does that get you?

Sort:
Avatar of DABABIBABABU

I was thinking about a new player that has the ability to study all important chess principles, openings, scan for tactics without blunders and follow general goals, but with no experience, talent or intuition. Then I was thinking if it's possible to build a chess engine that follows all the rules that chess teachers teach us, scanning for checks, captures, attacks on every move in an effort to imitate the thinking process of an intermediate player, but without any flaws.

Does anything like this already exists? It would be interesting to see how it plays, but also to use it for analyzing games, or to see what kind of chess knowledge requires actual intellect and cannot be dumbed down to a simple rule. Ideally, after losing a match, a chess coach would have a hard time explaining the mistakes, since the program does basically everything you tell it.

Edit to clarify some things: The engine I'm talking about should resemble a human that's just really good at following instructions (simple tactics, principles and openings). The engine should 1. Not be able to blast through thousands of nodes per seconds, when calculating variations it needs to be limited similar to how humans are limited, it needs to focus on the moves that "look" good based on concrete logical reasons (focus on forcing moves, pins etc). 2. It needs to be able to show its thought process, list the relevant principles / tactical ideas in a position and explain why it picked the move it did. If two principles collide with each other, it should try to find a way to establish a priority, otherwise choose a move randomly. Anyways, for the reason 1. and 2. mentioned above, I don't think an engine like Stockfish is eligible.

The point here is to simplify chess into a set of rules based on our knowledge about openings, principles and tactics that we can apply to any position without any human creativity or intuition whatsoever. And then, the point is also to explore around this algorithm, to see its limitations, our limitations, use it for analysis, compare it to Stockfish, etc.

Avatar of tygxc

@1

"Applying all chess principles in chess without mistake, how far does that get you?" +2000

"I was thinking about a new player that has the ability to study all important chess principles, openings, scan for tactics without blunders and follow general goals" ++ 2000+

"no experience" ++ the ability grows with experience

"talent" ++ not needed

"or intuition" ++ intuition is experience

"build a chess engine that follows all the rules that chess teachers teach us" ++ That is how chess engines were programmed. Nowadays they acquire their own rules through experience.

"Does anything like this already exists?" ++ Yes, any engine does that.

 

"It would be interesting to see how it plays" ++ Engines play differently depending on some parameters.

 

"chess knowledge requires actual intellect" ++ See https://arxiv.org/pdf/2111.09259.pdf 

Avatar of MaetsNori

Chess principles are definitely helpful, but they're not the gold standard. They're just a starting point to teach generalized concepts that often apply.

In many instances, though, principled play is simply wrong.

The mark of a skilled chess player is being able to make concrete decisions that are based upon the needs of the current position - often, this means knowing that's its sometimes necessary to ignore or abandon those concepts or principles completely.

Especially in the instance of tactics - principles often fail. "Capture pawns toward the center", for example, is a popular principle - but sometimes, tactically, you should capture away from the center - so following this principle blindly could lead to a blunder.

"Knights on the rim are dim" is another principle that is sometimes simply incorrect, and bringing the knight toward the center, instead, might very well lead to a loss of material.

The list can go on ... principles are good for introducing beginners to basic logical concepts. But those principles should eventually be put aside, once a player reaches a level where concrete understanding becomes the new guide.

I'd estimate an engine that follows principles as its main decision-making process would be about 1200 or so, at the most. Maybe even lower ...

Avatar of landloch

A problem with using only principles and tactics to play is that in many positions there are no obvious principles or tactics to follow. In these situations you need to evaluate positional strengths and weaknesses and plan (and play) accordingly.

Similarly, there are positions where principles conflict and with each other. For example: is it better to win material or develop? It depends.

I'd say a program that only checks tactics and plays according to principles (that is, a program that never actually evaluates positions) would be very weak indeed. Maybe 1000?

Avatar of tygxc

@3 @4
A program that only knows the rules and evaluates positions only with P=1, B=N=3, R=5, Q=9, K=10,000 easily reaches 2000 strength.

Avatar of MaetsNori
tygxc wrote:

@3 @4
A program that only knows the rules and evaluates positions only with P=1, B=N=3, R=5, Q=9, K=10,000 easily reaches 2000 strength.

Well, a program that follows basic chess principles, and a program that "evaluates positions" based on pawn/piece values, and calculates accordingly, are two different things.

The first one is a weak program that will make many blunders, due to blindly following dogma - and having no ability to adjust accordingly.

The second one is an actual engine that calculates ...

But pawn/piece values are not exactly a chess principle. A chess principle is something like: "Avoid moving the same piece twice in the opening."

So an engine that has been programmed to follow this principle would encounter this position:

And it would "think", "I have moved my king knight once already. Therefore, I cannot move it again to recapture on d4" - so it would search for a different move.

As the game progresses, all these principles would impede upon the engine's ability to make reasonable moves, more and more, the engine will find that its move choices are limited. It'll eventually make a serious blunder, due to following one of the principles it has been programmed with.

So, following the previous example, here's where that engine might immediately lose:

The engine (Black) has just lost material ... though it would still "think" that it is doing well.

On move 1, it followed the principle "Develop your pieces toward the center". It did so: developing a knight that also attacks White's unprotected central pawn.

On move 2, it again followed the principle "Develop your pieces toward the center". It also won bonus points by satisfying another principle "Don't move the same piece twice in the opening". Since it satisfied two principles with a single move, it would probably consider 2...Nc6 to be an exceptionally strong move.

On move 3, it recognized that it can now capture a pawn. So it followed the principle: "Recapture pawns toward the center".

3 moves in, and Black is already down material. However, the engine, at this point, would "think" that it is doing exceptionally well ...

Avatar of PromisingPawns

Interesting idea. I think it would reach 2000+ if you made it play atleast 100 games. Occasionally, it would lose games due to blindly following principles and piece values because you know, there's much more to chess than just that.

Avatar of blueemu

The problem is that chess principles almost always point in contradictory directions... with one principle hinting that a particular move would be good, while another principle claims that the same move is a mistake.

Avatar of tygxc

@6

There is a hierarchy in principles. In descending order:

  1. King safety
  2. Material
  3. All the rest

In your 1st example 4 Nxd4 takes precedence: material > moving a piece twice. Indeed 4 Nxd4 is stronger than e.g. 4 c3 losing material. 4 Nxd4 is also stronger than 4 Qxd4: premature queen move.
In your 2nd example 2... Nd5 takes precedence: material > moving the same piece twice. Also 2...Nd5 takes precedence over 2...Ng8: center > wing, and over 2...Ne4 losing material.

Avatar of blueemu
tygxc wrote:

@6

There is a hierarchy in principles. In descending order:

  1. King safety
  2. Material
  3. All the rest

This is so oversimplified as to be actively misleading.

For instance, King Safety is not always at the top of the list.

After 1. e4 e6 2. d4 d5 3. Nd2 Nf6 4. e5 Nfd7 5. f4 c5 6. c3 Nc6 7. Ndf3 cxd4 8. cxd4 Bb4+

How does your list indicate 9. Kf2! as the best move?
 
In a very similar vein:
 
Avatar of tygxc

@10

The king can be safe at f1 or f2. There is no contradiction.

Avatar of blueemu
tygxc wrote:

@10

The king can be safe at f1 or f2. There is no contradiction.

The King can be safe by blocking the check with your Bishop. Your list does not explain (and, I suspect, CANNOT explain) why forfeiting castling rights is better than blocking the check.

Avatar of tygxc

@12

It is no big deal. In example 1 7 Ndf3 and 9 Kf2 may be the best moves, but 7 Ngf3 or 9 Bd2 are not bad either. In game 2 10 Kf1 may be the best move, but 10 Bd2 is not bad either. An engine that based on principles plays 7 Ngf3, 9 Bd2, 10 Bd2 should have no problem competing at 2000+ level.

Avatar of tygxc

@10

"This is so oversimplified"
++ Yes, here is a fuller list, in descending order taken from The Method in Chess by former USSR Champion Iossif Dorfman:

  1. King safety
  2. Material
  3. Prospects after queen exchange
  4. Pawn structure
Avatar of MaetsNori

My point is that there's a limit to playing chess on principles alone.

In order to prevent the engine from blindly following chess dogma into a completely lost position, you'd have to add a lot of qualifiers and exceptions to the principles.

"Don't move a piece twice in the opening ... UNLESS keeping the piece there would result in a loss of material" - for example.

"Develop your knights before bishops ... UNLESS developing a bishop would be better, in this instance." - for another example.

But how would the engine "know" that developing a bishop would be better?

How would it "know" what a loss of material even means?

We would have to incorporate some sort of calculative ability into the engine to do so. It needs to have a way to assess the position, otherwise it would simply be searching through its coding for principles that currently apply, without any concept of whether or not the game was going well ...

And once we give the program the ability to calculate, then we're no longer relying on chess principles. Now we're calculating, too ... And the necessity of that shows us the limit of chess principles alone.

Avatar of landloch

IronSteam1 is hitting it pretty much on the head, and blueemo as well.

Principles tell you what is generally good to do. But there are so many positions where following principles is bad and where there are conflicting principles. Once you have an engine evaluating when to ignore principles or which principle to apply in a given position, then it's evaluating positions. Which is what engines do already, and is probably not what the OP was asking about.

Avatar of Antonin1957

Principles should be the foundation, but creativity is more important in my opinion. Creativity can defeat the rigid application of chess principles.

Avatar of blueemu
Antonin1957 wrote:

Principles should be the foundation, but creativity is more important in my opinion. Creativity can defeat the rigid application of chess principles.

Bronstein used to argue the same point in print. His "Zurich 1953" book is a classic, and mentions the role played by creativity or "fantasy" at the top level of the game.

Avatar of Spielkalb

It's funny, this discussion reminds me of the old Star Trek episodes in which Cpt Kirk beats Mr Spock in this weird 3D-Chess their playing because of his human intuitions opposed to "pure" logic.

Avatar of Antonin1957

@blueemu - Bronstein's "Zurich 1953" book is loaded with wonderful examples of chess at the highest level.