AI Zone Admin Forum Add your forum

NEWS: Chatbots.org survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

The little chess bot
 
 
  [ # 16 ]

There are opening books that can extend well into the middle game and sometimes even into the early endgame with master level play by both sides. If he were willing for his script to fail early against bad play (which he’s suggested he would be), this approach could at least allow the bot to provide the illusion of playing a high quality game of chess for quite some time. But eventually the number of possibilities would simply become too vast, especially in the endgame.

 

 
  [ # 17 ]
Steve Worswick - Jan 17, 2015:

And if I decide not to play f5 in my first move, that script is no longer followed. As Merlin says, there is no way you will be able to map out all the possible moves of a chess game.

Well, maybe if you hacked into Watson and took it over you might, but… raspberry cheese

 

 
  [ # 18 ]

Although I am probably not going to continue with this project. I feel the need to defend the concept, because it will also be useful for other turn based / question and answer games, as well as chess.

I was watching a TV program on AI. It included a demonstration of a thought experiment called “the Chinese room”. https://en.wikipedia.org/wiki/Chinese_room
this is a good analogy of the little chess bot. Or any other chat bot.

Merlin correctly says that there are 20 opening moves.  I say that working with in the limits of good moves by competent players who want to win, then the number drops to less than half that. He also points out that as early as the third move the number of mathematical possibilities would become very large. I would point out that at move ten that the number of chess openings is small enough that they have all been named, and can be looked up in any book of chess openings.
The idea of using a branching script made up of a large number of games is, that instead of trying to calculate every thing. for each position in the game a very small number of good moves have been picked by the players who’s games have contributed to that branch of the script. And that the script continues beyond that point.

The script that would be very large, being made up of thousands of games. But because of the way games are recorded, which is similar to a chatscript script would have made it doable. Sadly the problem of how to make the bots choices divide the script, in the same way players defeats me. [for now]. I called it the little chess bot because I intended for it to be less then complete and part of something else.

 

 
  [ # 19 ]

But this assumes that only grandmasters or expert players will play the bot. People who may make moves not classed as the best would deviate from any script in just a few moves

May I suggest trying a tic tac toe bot using a similar method. You could number the grid:

1|2|3
-+-+-
4|5|6
-+-+-
7|8|

and then store the games like 5194738 to represent the moves.

 

 
  [ # 20 ]

I don’t know enough about ChatScript to say whether storing positions by string is possible, but Steve’s response suggests that it is, so I would suggest something like Forsyth-Edwards Notation (http://en.wikipedia.org/wiki/Forsyth–Edwards_Notation), which concisely and losslessly encodes arbitrary positions (for simplicity, I’d get rid of the last two numbers, representing the 50-move rule and the move number) in a way that has no dependency on the move sequences used to generate those positions.

 

 
  [ # 21 ]

Sorry, I don’t know Chatscript either and was just suggesting that as a general way of storing a game.

 

 < 1 2
2 of 2
 
  login or register to react