> We [Chinook and the lead programmer] played an exhibition match against Marion Tinsley in 1991. And the computer told me to make this one particular move. When I made it, Tinsley immediately said, "You're going to regret that."
> Not being a checkers player, I thought, "what does he know, my computer is looking 20 moves ahead." But a few moves later, the computer said that Tinsley had the advantage and a few moves after that I resigned.
More details on this epic match from Wikipedia:
> The lead programmer Jonathan Schaeffer looked back into the database and discovered that Tinsley picked the only strategy that could have defeated Chinook from that point and Tinsley was able to see the win 64 moves into the future.
---
https://www.pbs.org/newshour/amp/science/short-history-ai-sc...
You are welcome.
It's more likely that Tinsley was able to see a winning position much closer to the present than that, without bothering about the details of how exactly the winning position 6 turns in the future converted into an actual win 64 moves in the future.
it's less about how much he calculated in that moment and more about the accuracy of his confidence and the work he had to have put in alongside his talent prior to that moment to achieve that confidence and back it up.
Like, if you're in a chess midgame, there might still 6 major pieces and 4 or 6 minor pieces and tons of pawns on the board. It's tricky to calculate far into the future. At each node, there's easily dozens of possible moves, and 4-8 viable or not-horrible ones. That's becoming a lot of possibilities to consider very quickly.
In an endgame, there's like, 2 kings, 2 pieces and 4 pawns or a similar constellation. There's 6 possible moves, 3 of them immediately lose and 3 are worth thinking about. 2 of them probably only have one possible answer. Suddenly even an utter beginner like me can calculate 4-8 moves. A master-level player probably knows the endgame entirely, or can see 10 - 20 moves into it easily, because the branching factor is a lot lower now.
His opponents who played him were sometimes mystified, though the reason often becomes clear many moves down the road. He was not afraid of starting complex fights, even ko fights, and the games often have huge swings in territory. He played in a way with great freedom. Opponents would play thinking they played a forcing move, only for Go Seigan to tenuki (play elsewhere on a board, often at strategically vital points). People have tried to replicate his style, but it is difficult to put into practice without Go Seigan’s reading skills.
Also, his given name contains the character 源, which is read "gen" in Japanese, not "gan".
This may be way outside of your wheelhouse, but I have to ask -
The Mandarin reading of 源 is yuán. The phonetics are something like [ʲyɛn]. A similar raising of the written vowel occurs in the pinyin syllable yan (e.g. 言, 严, 眼), which is [jɛn]. In other pinyin syllables, an "a" represents /a/, which is something sort of intermediate between the English PALM and TRAP vowels.
It makes perfect theoretical sense that /a/ might be realized as [ɛ] when following a high vowel. But I've always wondered whether yuan and yan really do have a phonemic /a/ there or whether there might be an /ɛ/ phoneme. And it's interesting to me that the Japanese reading of 源, presumably taken from a much older Chinese, uses /e/ there instead of /a/. Can you provide any insight?
https://en.wiktionary.org/wiki/%E6%BA%90
Some highlights:
* Different Chinese variations (Cantonese, Min, etc.) have different readings. Initials, vowels, and finals all differ.
* When borrowed into Japanese, the Chinese initial was ŋ, which isn't used as an initial in Japanese, and was substituted.
I also wouldn't assume that sounds that are grouped together are supposed to sound the same. en/yin/wen/yun use the same final in bopomofo, but sound different.
There is a separate /jɛ/, 也,耶.
Within-syllable -jɛ- exists in yan and its "compounds" tian, mian, lian, etc; changing the final consonant to -ŋ gives you the yang / niang / liang / xiang series of syllables, which have -ja-. This would suggest that, if the vowels are to be unified into one phoneme, the realization of that phoneme is driven more by the following consonant than the preceding vowel/glide.
There's something weird going on where -ɛ- in a complex syllable can appear with more onsets than -a- can. We see e.g. tie, tian, die, dian, mie, mian, bian, pian (with -ɛ-) where we don't see tia, tiang, dia, diang, mia, miang, piang (which would use -a-). xia, jia, qia are all fine, and so is niang. My working hypothesis for that would be "it's a coincidence".
I believe without being able to cite anything that one reason for the spelling of yuan and similar codas with "a" is local variation in how the vowel is pronounced.
One distinction that some Chinese speakers fail to make, though, is between the r- onset and what I would prefer to think of as the j- onset. Thus, for these speakers, rang / yang or rou / you are the same sound.
Pinyin ran uses the standard /a/ vowel, but yan does not. I don't know whether, for speakers who don't distinguish r- from y-, a distinction remains in the vowel of ran/yan syllables.
That is a matter of opinion. Looking a certain number of "moves ahead" is an important metric in game engines and also something that human players will tell you that (1) they are consciously doing and that (2) is important to them. So it's worth discussing on its own terms.
This is why chess programs usually say “mate in 24” but humans would more likely just be looking a few moves ahead to get in a ‘winning position’ which they know is an eventual checkmate.
I’m not good at chess, and don’t calculate more than 5 moves ahead, but have ‘spotted’ a mate 20 moves ahead just because you recognise that a certain position is winning even if you don’t know every single possible move and response.
You can just go 'this move is winning, and I can infer that because of these logical points'. This isn't really 'looking ahead x moves into the future', you can just know a position is winning and will cause a cascade of moves of a predictable-length that will end in an eventual checkmate.
If you call this 'looking ahead x moves' or not depends on the definition I guess, but I just mean they might not be actually evaluating / imagining all those positions (because you can either use logic or pattern-match to previous situations).
> You can just go 'this move is winning, and I can infer that because of these logical points'. This isn't really 'looking ahead x moves into the future', you can just know a position is winning
Yes, that's exactly what I said in my original comment.
we look ahead in ways like "doing this leaves this area weak, and the opponent has resources that can take advantage of that, and i cannot intervene on those resources in time" or "if i create a strong threat then the opponent will be forced to react to it, here are the ways they can react that make any sort of sense, here is what i can do in each of those situations"
they are not doing things like "let me simulate moving every one of my pieces right now, and then every one of my opponents pieces in response to each of those moves, and then my options again, and review 10,000 possible scenarios in my mind individually for the best min/max situation" like a classical computer engine does.
so i always find the "X moves ahead" phrase misleading at best. but as i originally stated, it is useful to know how many moves of perfect play are necessary for someone to convert a winning position when reviewing the players confidence going into that position. and even then you dont know if they got lucky or earned that confidence by looking at just the one game alone. Over the course of their career the amount of time that their confidence pays off or not tells the story there
I mean, that's just plain wrong on both counts. You need to do work to do a good job at looking ahead. You don't need to do work just to be able to imagine what the board might look like after a particular move is made.
> they are not doing things like "let me simulate moving every one of my pieces right now, and then every one of my opponents pieces in response to each of those moves, and then my options again, and review 10,000 possible scenarios in my mind individually for the best min/max situation" like a classical computer engine does.
You don't understand what the computer is doing. Pruning its options is just as important for the computer as it is for the humans.
so im not sure why you think i was trying to say humans cant move pieces around in their mind.
you also completely ignored that i was mainly addressing the scope difference of positions analyzed by a human player vs a computer, and that the talking point was someone looking "64 moves ahead" and trying to explain that no this guy did not literally see all variations 64 moves out - but that through (arguably more impressive) reasonable human ability he was able to to be accurate and confident in a decision that he had won while there was still 64 moves of depth left in the game
No, pruning is by far the majority of the work the computer does. It is very much not trying to review all possible scenarios indiscriminately, because that can't be done, because there are too many possible scenarios.
And "pruning" and "making sense of the position" refer to the same thing. Interpreting the position is how you prune.
A computer prunes its moves from either an explicit or implicit (implicit when it's say a trained neural net) database of known positions, with some quantitative sense of strength (usually a probability to win or something like that).
A human needs to assign a narrative to particular branching pathways. These are qualitative instead of quantitative assessments.
A human isn't saying, if I make a certain move there is an 85% chance of winning, and so that makes it my best bet. They're assigning arbitrary structures and narratives to positions, hence why many positions, tactics, and strategies in chess and other games are given colourful names.
The two approaches are very different and have different strengths and weaknesses. Which is why the best play outcome is to combine the computer generated moves with the human generated moves.
The human approach is very good at generalising new information very quickly. Assigning unusual or unfamiliar information in a broader qualitative framework about what good play looks like, think about players who are trying to create certain structures, shapes and patterns on the board.
The computer is very good at applying knowledge about individual moves at great depths. But cannot combine it with any external information. All information about the success rates of moves are determined from the database of all past moves. The computer can't condition those probabilities on things like, does my opponent need to win, or only draw. Do they have a tendency to be aggressive or defensive. Probabilities of success only make sense when taking a population view of the computers input data (a literally impossible task if your talking about the kinds of neural nets used in chess).
So a hybrid approach lets good players condition computer generated moves based on external information. Maybe the computer generates a line of play with 80% confidence of winning, but the human can see that because of certain qualitative structures on the board, the opposing player is more likely to see the solution than the computers population, and so can recondition the lines of play on this new information, even if the human has no idea why the line of play should work 80% of the time. Lines of play that would otherwise have very similar success rates (differing by only a few percentage points say) can be re-ordered based on human judgement.
Both the computer and the human can tell obviously bad from obviously good moves. But their approach is very different when nuance is required.
If a computer could assess every single move, it would. A human would still prefer to rely on narratives and game sense if it's good enough
The more likely outcome if the engine is 'correct' is that it sees the line but thinks an alternative one offers a much greater advantage.
The computer can't condition this information on what you or the opponent is likely to do though. For example, there are lines of play that an engine can generate where you can checkmate in 60+ (even examples where the number goes into the hundreds) moves but only if you play every move absolutely perfectly, this kind of strategy is very brittle, a human might make adjustments to preserve the general idea of the line of play but make it more robust to error. The engine might also generate lines of play that have one or two flaws, but the engine thinks it's very unlikely that the opponent will find those flaws, because the population of games in it's database tells it that very few opponents see them. As the human you might see that your opponent is taking a certain line of play to try and get some sort of positional advantage, and that they are more likely to see the flaw in the engines line of play because the goals are in direct opposition to each other, in this case you would not choose this line because the computer is unable to condition its lines of play on the quality of your opponent.
IMO this is the fundamental reason chess masters around the world don't feel threatened by the computers yet. The way computers play chess relies on past information, often this past information is generated by humans. Humans are also able to generalise the insights that engines can find creating more robust strategies that are hard for engines to beat, until the engine adds it to the database.
No I mean it literally does not see the advantage until after the move is played and it runs depth on the new position. then if you "undo" the move, the engine will now assert it as the best move instead of its previous recommendation (thanks to its cache). It is a very rare occurrence, but Ive seen it happen watching analyses of top games.
another similar thing is that engines aren't that great at detecting "fortresses". So a position that is a draw might be evaluated as an advantage for the attacking side, even though there is no successful attack available. technically the attacking side does have the advantage / more powerful position.. but since it cant be won it should be evaluated to 0. by evaluating it to +1 or similar, that might make the engine favor it over a +0.5 position where attacking chances still exist.
>The engine might also generate lines of play that have one or two flaws, but the engine thinks it's very unlikely that the opponent will find those flaws
do engines do this? this seems much closer to human strategies. In general I totally agree with the larger point that a mix of human and machine is the best combo.
>chess masters around the world don't feel threatened by the computers yet
what do you mean by this? If any master needed to play against stockfish for their life, I think they would feel overwhelmingly threatened. Or do you mean this strictly in the context of human + engine being better than just engine alone?
Note that the first quote agrees with me:
> Not being a checkers player, I thought, "what does he know, my computer is looking 20 moves ahead." But a few moves later, the computer said that Tinsley had the advantage and a few moves after that I resigned.
We know as a matter of literal truth that the computer is looking 20 moves ahead, but it doesn't need 44 moves to realize that it's losing, even though the other guy says that recognizing the win would require looking 64 moves ahead. That guy was wrong; recognizing the win didn't require looking 64 moves ahead. He just had trouble imagining other methods of recognizing a win.
The WarGames "the only winning move is not to play" quote is about mutually assured destruction; a rather different lesson than the one Data learns in 'Peak Performance'.
...and self-replicating so it ensures its own survival long term of course, but that's a problem yet to be solved.
It's hard to overstate how incredibly dominant Tinsley was. In his entire career, he never lost a match, and only ever lost 7 games (two to Chinook). That is out of maybe tens of thousands of games. He was a mathematician by training and taught at a historically black university. He was also deeply religious and a lay minister at a black church. He famously described the difference between chess and checkers like this: “Chess is like looking out over a vast open ocean; checkers is like looking into a bottomless well.”
I could just quote the entire article, but I'll just leave it at this passage:
> The two men sat in his office and began the matches, Schaeffer moving for Chinook and entering changes in the game into the system. The first nine games were all draws. In the tenth game, Chinook was cruising along, searching 16 to 17 moves deep into the future. And it made a move where it thought it had a small advantage. “Tinsley immediately said, ‘You’re gonna regret that.’” Schaeffer said. “And at the time, I was thinking, what the heck does he know, what could possibly go wrong?” But, in fact, from that point forward, Tinsley began to pull ahead...
> The computer scientist became fixated on that moment. After the match, he ran simulations to examine what had gone wrong. And he discovered that, in fact, from that move to the end of the game, if both sides played perfectly, he would lose every time. But what he discovered next blew his mind. To see that, a computer or a human would have to look 64 moves ahead.
Tinsley was simply one of the most remarkable human minds of the 20th century. I'm happy he finally got a challenger that was worthy of him (as no other humans could even come close), but it also seems fitting that he was never officially defeated in a real checkers match. Rest in peace.
[1]: https://www.theatlantic.com/technology/archive/2017/07/mario...
I wonder how much more resistance he would have had in draughts.
Very interesting comment. This sentence about dominance in a field made me think of Stu Ungar, who dominated Gin Rummy so completely that he had to switch to Poker (where he became a 3-time world champion) to meet interesting adversaries.
I couldn't find an exact reference for the following quote, but still: "Some day, I suppose it's possible for someone to be a better No Limit Hold'em player than me. I doubt it, but it could happen. But, I swear to you, I don't see how anyone could ever play gin better than me."
Sounds like he was very skilled and continuously getting better -- which is of course impressive. At the same time, his overall life story turns out to be tragic. Two choice quotes from the article really jumped out for me:
> Ungar told ESPN TV... that the 1980 WSOP was the first time he had ever played a Texas hold'em tournament. Poker legend Doyle Brunson remarked that it was the first time he had seen a player improve as the tournament went on.
> Ungar is regarded by many poker analysts and insiders as one of the greatest pure-talent players ever to play the game. But on the topic of his life, Stu’s long term friend Mike Sexton said “In the game of life, Stu Ungar was a loser.”
when the show Billions did a poker game they used a famous Stu Ungar hand https://somuchpoker.com/calling-with-ten-high-stu-ungar-vs-m...
(but OMG that game was so cringey for so many reasons, you don't get to call time and go talk to your therapist in the middle of a hand)
An approximately optimal strategy for Limit Heads Up was determined: http://poker.srv.ualberta.ca/ is a Limit solution.
Machines don't play No Limit perfectly, but they're good enough to have beaten the best humans available when they last tried, so I expect if Stu had lived long enough they'd beat Stu too.
Interestingly Gin Rummy is not seen as a major AI research target. I found some undergraduates playing with relatively simple AI approaches for Gin Rummy as basically a getting your feet wet exercise, but this is apparently not in the context of "Here's what the grown-ups did" but rather "Nobody is exploring this, so whatever you do is actually novel". So there's a real opportunity if somebody is interested.
- 35 World Championship titles (23 in three-cushion + 12 in other carom disciplines)
- 48 European titles (23 in three-cushion) and
- 61 national titles.https://webdocs.cs.ualberta.ca/~chinook/publications/solving...
[0] https://link.springer.com/book/10.1007/978-0-387-76576-1
For an even shorter, and lighter, read on checkers engine, I recommend Blondie24[0].
I've got another one: famous hold 'em poker player Stu Ungar never lost a game of gin rummy. Utterly dominant.
86 wins in a row against one of the best opponents at the time has to indicate that skill can overcome much of the luck involved.
Not a "he", but Heather McKay won 16 consecutive British Open squash titles. Squash got a World Open only in 1976, and she won the first two editions. In a career spanning 1960-1981, she was only defeated twice and both times were early in her career.
No -> Fact checkers
Yes -> Checker facts
Marion Tinsley was world checkers champion from 1955-1958, then took a break, then again from 1975-1991, when he resigned in protest (at age 64). He was utterly dominant; indeed it is hard to think of a competitor in all of history more dominant over his sport or game than Tinsley.
In 1990 Tinsley decided to play Chinook, the best checkers computer program in the world. Chinook had placed second at the US Nationals so it had the right to enter the world championships, but the US and British checkers federations refused to allow it.
So Tinsley resigned his title. Tinsley then played Chinook in an unofficial match (which he won).
This power play really stuck it to the federations: nobody wanted to be named the new world champion knowing Tinsley was fully capable of crushing them. Eventually everyone came to an agreement to let Tinsley be the "champion emeritus".
Tinsley played Chinook four years later, at age 68, still probably the best player in the world. But in the middle of the match he complained of stomach pains and withdrew after only six games (of 20), all drawn. Tinsley's pains were real: he later died of pancreatic cancer.