Answers.Body: <p>I'm also a chess engine developer, let me answer you from my own experience:</p>
  
  <p>There're lot of reasons differentiate the playing ability. Actually, a lot. This is an area where one could write a PhD thesis, but let's take a quick look at the two major factors.</p>
  
  <ol>
  <li>Ability to do a cutoff quicker</li>
  <li>Ability to evaluate a position better</li>
  </ol>
  
  <p>Unlike a human player, a computer chess algorithm doesn't need a sophisticated position evaluation. Lots of weak engines tend to use some very complicated evaluations, such as cubic interpolation of material values but none have been proven to work. Simple is the key. Stockfish, the strongest engine in the world, has an evaluation about Elo 1800. It might sound amazing that an Elo 3000+ engine has a simple evaluation that is only about Elo 1800 level. But remember, a computer needs to use this evaluation function for hundreds of thousands of positions. The simpler, the faster the engine can search, the higher depth it can reach and therefore the more tactics it can see.</p>
  
  <p>Weak engines tend to use only alpha-beta. It's insufficient because the search space is too large. One would need to consider null-move, late move reductions and other advanced algorithms.</p>
  
  <p>Now, to your second point. The common mistake made by chess engines at ELO range 1500 - 1800 is that their programmer doesn't understand chess programming. MicroMax, a super light chess engine (Google it if you don't believe) can play Elo 2000. Anything weaker than it is an indication that the engine has bugs and not performing as expected, as it should.</p>
  
  <p>In general, an engine with a correct material evaluation function can perform Elo 2000.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-08-29T12:15:07.680Z
Answers.Text: How do you evaluate the "elo of an evaluation function" ? Where does the 1800 number comes from ? Did someone "disable all other features but alpha-beta search + evaluation function" ?
Answers.UserDisplayName: rodrigob
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-08-29T13:34:29.737Z
Answers.Text: @rodrigob The number is a rough approximation by reading the source code. The chess understanding demonstrated in the source code is essentially material counting, opposite color bishop, spacing, better rooks on the open-file, pawn structure etc. All of which can be understood by a 1800 rated player.
Answers.UserDisplayName: SmallChess
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2014-08-26T04:48:04.197Z
Answers.LastActivityDate: 2019-09-18T18:25:28.900Z
Answers.LastEditDate: 2019-09-18T18:25:28.900Z
Answers.UserDisplayName: SmallChess
Answers.Body: <p>It doesn't take much depth to a search to surpass an 1800 level... so even really dumb evaluators tend to surpass that level quickly.  Engines that do have these problems seem to get stuck in quiet positions (or closed positions) which require a plan that terminates beyond the search horizon rather than a short tactical improvement.  Often, a program can make random moves that cause a deterioration of their position, so a patient human can wait for weaknesses to be self inflicted.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2014-08-26T21:24:01.567Z
Answers.LastActivityDate: 2019-09-18T18:26:12.920Z
Answers.LastEditDate: 2019-09-18T18:26:12.920Z
Answers.UserDisplayName: tbischel
Body: <p>I'm a software developer and occasional chess player at elo rating 1500.</p>
  <p>Chess engines of different level play different type of games with some mistakes according to that given level.</p>
  <ol>
  <li>I'm really eager to know that what are common factors differentiate
  the playing ability of chess engines from one level to another
  level?</li>
  <li>Can somebody explain what are the common mistakes make by chess
  engines at ELO range 1500 - 1800 ?</li>
  </ol>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2014-08-25T22:01:19.717Z
Comments.Text: I like this question but I'm not sure it's answerable as it currently stands. You might want to clarify whether you're talking about intentional mistakes, which some programs insert, or just choosing bad moves. You should also split this question into two, since you have two questions to ask!
Comments.UserDisplayName: Henry Keiter
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2014-08-26T00:30:34.110Z
Comments.Text: @HenryKeiter, I think the question is quite answerable. One just needs a lot of time to do so! :)
Comments.UserDisplayName: NM Wesley Falcao
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2014-08-27T04:28:38.533Z
Comments.Text: It's not so much a mistake, but more of inferior algorithm and poor search depth. I'm still looking for a smart program that makes 'interesting' or human-looking mistakes.
Comments.UserDisplayName: prusswan
Tags: <learning><engines><elo><programming><blunder>
Title: What are the common mistakes make by chess engines at ELO range 1500 - 1800?
ThreadText: # What are the common mistakes make by chess engines at ELO range 1500 - 1800?
  
  (Asked by: username_0 on 2014-08-25)
  
  I'm a software developer and occasional chess player at elo rating 1500.
  
  Chess engines of different level play different type of games with some mistakes according to that given level.
  
  1. I'm really eager to know that what are common factors differentiate
     the playing ability of chess engines from one level to another
     level?
  2. Can somebody explain what are the common mistakes make by chess
     engines at ELO range 1500 - 1800 ?
  
  **Tags:** learning, engines, elo, programming, blunder
  
  > **Comments:**
  > **username_1**: I like this question but I'm not sure it's answerable as it currently stands. You might want to clarify whether you're talking about intentional mistakes, which some programs insert, or just choosing bad moves. You should also split this question into two, since you have two questions to ask!  
  > **username_2**: @HenryKeiter, I think the question is quite answerable. One just needs a lot of time to do so! :)  
  > **username_3**: It's not so much a mistake, but more of inferior algorithm and poor search depth. I'm still looking for a smart program that makes 'interesting' or human-looking mistakes.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_4 on 2014-08-26. Score: 4
  
  I'm also a chess engine developer, let me answer you from my own experience:
  
  There're lot of reasons differentiate the playing ability. Actually, a lot. This is an area where one could write a PhD thesis, but let's take a quick look at the two major factors.
  
  1. Ability to do a cutoff quicker
  2. Ability to evaluate a position better
  
  Unlike a human player, a computer chess algorithm doesn't need a sophisticated position evaluation. Lots of weak engines tend to use some very complicated evaluations, such as cubic interpolation of material values but none have been proven to work. Simple is the key. Stockfish, the strongest engine in the world, has an evaluation about Elo 1800. It might sound amazing that an Elo 3000+ engine has a simple evaluation that is only about Elo 1800 level. But remember, a computer needs to use this evaluation function for hundreds of thousands of positions. The simpler, the faster the engine can search, the higher depth it can reach and therefore the more tactics it can see.
  
  Weak engines tend to use only alpha-beta. It's insufficient because the search space is too large. One would need to consider null-move, late move reductions and other advanced algorithms.
  
  Now, to your second point. The common mistake made by chess engines at ELO range 1500 - 1800 is that their programmer doesn't understand chess programming. MicroMax, a super light chess engine (Google it if you don't believe) can play Elo 2000. Anything weaker than it is an indication that the engine has bugs and not performing as expected, as it should.
  
  In general, an engine with a correct material evaluation function can perform Elo 2000.
  
  > **Comments:**
  > **username_5**: How do you evaluate the "elo of an evaluation function" ? Where does the 1800 number comes from ? Did someone "disable all other features but alpha-beta search + evaluation function" ?  
  > **username_4**: @username_5 The number is a rough approximation by reading the source code. The chess understanding demonstrated in the source code is essentially material counting, opposite color bishop, spacing, better rooks on the open-file, pawn structure etc. All of which can be understood by a 1800 rated player.  
  
  ---
  
  ### Answer by username_6 on 2014-08-26. Score: 1
  
  It doesn't take much depth to a search to surpass an 1800 level... so even really dumb evaluators tend to surpass that level quickly. Engines that do have these problems seem to get stuck in quiet positions (or closed positions) which require a plan that terminates beyond the search horizon rather than a short tactical improvement. Often, a program can make random moves that cause a deterioration of their position, so a patient human can wait for weaknesses to be self inflicted.
  
  
  ---
  
  