The show match

General Discussion about the game of Checkers.
Bill Salot
Posts: 448
Joined: Sat Dec 15, 2007 10:57 am

Re: The show match

Post by Bill Salot »

Ed,

One question: If your database plays for the shortest win and defends for the longest loss, what does it do with draws? Since draws can go for an infinite number of moves, when does it concede a draw? I guess that's two questions.

One comment: A checker game is not a team sport. A team of strong players trying to reach a consensus on every move of a game is weaker than the best player in the group. Strong players play their best when they are not distracted by discussions over every move. If you want your program to play a team of strong players, play them simultaneously on different boards like an old-fashioned exhibition player. I guess that is four comments.
Chexhero
Posts: 583
Joined: Sat Jan 08, 2011 10:11 pm
What do you like about checkers?: It is a game of beauty when played at a high level.
Location: PA

Re: The show match

Post by Chexhero »

chipschap wrote:
Do the results prove that computers are vastly superior? Certainly not. But in a drawish game such as checkers, there would have to be many more games in order to draw any sort of definite, defensible conclusion. Do the results show that the computer has an edge? Perhaps. But it's really hard to say.
In my personal opinion, I think the very top checker programs, mainly Kingsrow and Cake, are far superior to any human checker player current or in history, including the great Tinsley. Tinsley was only slightly better than the 1992 Chinook, which was nowhere near the level of today's Cake and Kingsrow programs. It is true that programs have a weakness in that they only try to play the "strongest" move, not necessarily the "best" move. In some instances, the best move is the move that makes it tougher for your opponent to figure out his or her next move, even if it is slightly less strong than another option. Programs are not necessarily trying to win, but rather just looking to make the strongest moves, while not worrying so much about making it more complicated and difficult for the opponent. That is not to say the programs were just trying to play easy drawish lines against Alex, but perhaps there were some moments where they could have made it more difficult. Where programs are incredibly tough and much superior to humans is when they have a strong position advantage, because they will almost never give it up and constantly force you to make critical moves. Not to knock Alex who obviously is a tremendous player, but was this a match of critical tough deck openings only, I would predict a larger margin of victory for the programs.
Ed Trice
Posts: 64
Joined: Wed Aug 10, 2016 9:16 pm
What do you like about checkers?: I like checkers programming, most notably Perfect Play Databases for the endgame.

Re: The show match

Post by Ed Trice »

Bill Salot wrote:Ed,

One question: If your database plays for the shortest win and defends for the longest loss, what does it do with draws? Since draws can go for an infinite number of moves, when does it concede a draw? I guess that's two questions.

One comment: A checker game is not a team sport. A team of strong players trying to reach a consensus on every move of a game is weaker than the best player in the group. Strong players play their best when they are not distracted by discussions over every move. If you want your program to play a team of strong players, play them simultaneously on different boards like an old-fashioned exhibition player. I guess that is four comments.
All good questions, no matter how you count them :)

1. About draws: My program does something a bit different than other programs out there.

A. The evaluation function will never return a score of +1 or -1. I made it so that no matter what, these two results are impossible.
B. If it is the computer's turn to move, and a database draw is encountered by the search, if white is "ahead" in the parent position on the board (where the search started), the program will return a score of -1 for the draw. If white is "behind" or even from the parent position, the score returned will be +1. In this fashion, the program will "not exactly love the draw" (-1) when it was better off to start, and "like the draw" (+1) if it was not in a good position to begin with. If these scores trickle all the way down from the deep searches all the way back to the root, there is only one possibility: There is definitely a way for the program to force a draw, no matter what path the human takes.
C. One the program has played long enough into the game that the position over-the-board is a database draw (no searching need, just an instantaneous lookup), then it plays "devilishly" to try an induce a mistake on behalf of its opponent. It will test every move on the board for it that leads to a draw, and discard all of the moves that are losses as if they are illegal moves even. Then, for each opponent reply to these moves, it counts the number of moves for them that lose, and the number of moves that draw. The program will seek out the position with the lowest draw count for the opponent. It has to be careful not to repeat positions, so this strategy cannot be applied without other safeguards and checks.
D. The program recognizes the "worthiness" of the opponent, once a certain "contempt for a draw" threshold has been met. Currently there are 3 criteria which must be met before it will accept a draw offer. The opponent must survive for at least 10 moves into the draw, must not have shuffled the same piece back and forth, and must be in a position where it is possible to lose. Odd as that last one may sound, there are some checkers positions with all kings on the board that cannot be lost no matter what move is made (mostly because the forces are far enough apart than no move leads to a trivial capture).

2. Team play: My former chess club used to have a "consultation match" once a year. We'd split into two teams based on ratings. All the odd-best-rankings (1st best, 3rd best, 5th best etc) would play the white side of the board, while 2nd best, 4th best, 6th best etc would play the black pieces. We'd be in two different classrooms with our board. We'd chat about our options, discuss tactics and strategy, then vote on a move. A "runner" would be dispatched into the next room to make our consensus move on their board. It was lots of fun.

I agree that having two or more people on the same typewriter would be counterproductive, but with the top ranked player on each team as the "captain," a poor move was rarely transmitted. He had "veto" power over any other move, but would likewise be able to show the strong refutation awaiting the candidate moves. Just something to consider with a longer time control to allow for discussion and interesting play.
User avatar
Alex_Moiseyev
Posts: 4339
Joined: Sat Nov 12, 2005 5:03 pm
What do you like about checkers?: .....

Re: The show match

Post by Alex_Moiseyev »

Chexhero wrote:but was this a match of critical tough deck openings only
We played standard tournament format - "RANDOM" drawing of opening.

You propose to give program handicap ? :D I already did this. We played 15 mins for game to each player instead 1 hour for 24 moves in World Title matches. Having this slow time control with programs may (or maynot) change score.

Regarding team play remind me driving on the road - the average speed of all cars is the same as slowest car! :D
I am playing checkers, not chess.
Post Reply