For me, checkers was always a game to pass time. An innocuous diversion while I waited for something else to do. More than a few restaurants I frequented in my childhood had games setup as a diversion for otherwise impatient families waiting for a table.
I never really cared for the game. For one, my older brother always seems to be working five moves ahead of me. But it also always seemed deceivingly simple. If I was going to be beat at a one-on-one board game, at least chess had a diversity of pieces and movements to keep my inevitable defeat marginally entertaining. It always seemed losing at checkers had a certain ignobility to it.
But solving checkers turns out to be a fascinating exercise. Recently, Alphabet’s AlphaGo team has made a lot of headlines with their neural network-based ability to beat human Go masters. But Ray Lucchesi looks back at earlier days trying to solve checkers with much more limited hardware.
It shows how approaches to solving games, and machine learning challenges in general, have evolved as computing power escalated. Checkers was essentially solved by slowly expanding opening and closing moves databases that had a series of optimized moves based on piece placement at different stages in the game. As they came together, the game was eventually solved.
As Ray points out, the trend in machine learning now is on developing extensively trained neural networks. What’s really fun is to hear about Ray’s own efforts in coming up with a checkers playing program back in his punch card days.
Ray Lucchesi comments:
Read an article in The Atlantic this week (How checkers was solved) on Jonathan Schaeffer, the man who solved checkers, and his quest to beat Marion Tinsley, The Champion. But first some personal history, while I was at university (back in the early 70’s) and first learned how to code in real.
Read more at: Old world AI, Checkers, and The Champion
- OpenFaaS: Serverless for Containers Made Easy - October 18, 2017
- Just Say No To KRACK - October 16, 2017
- One USB-C Hub to Rule Them All - October 16, 2017
- How to Accept Email Based Payments for Free as a Freelancer - October 13, 2017
- Satyamania: Windows Subsystem for Linux - October 13, 2017
- Technical Debt in the Age of AI - October 12, 2017
- The Origins of Premises - October 11, 2017
- Technical Debt Really Isn’t All That Bad – The On-Premise IT Roundtable - October 10, 2017
- E Tu Pluribus Networks UNUM? - October 9, 2017
- The Life and Death of Digital Re-Presentations - October 6, 2017