Ethiopia’s Daniel Shawul Abdi breaking codes in computer chess
There have been many famous pioneering computer scientists, but there is one you probably don’t know. Daniel Shawul Abdi is an Ethiopian computer scientist and civil engineer who has become a noted author of the DanChess program and its predecessor Scorpio. Both chess engines possess the open-source endgame bitbases (EGBBs) format.
Dr. Abdi has also created a game-playing engine Nebiyu (based on Scorpio), that can play Chess variants, Checkers, Reversi, Go and a strategy game called Amazons. There is also a phone app on Google under the name “AlienBoard” that you can download here.
Any chess enthusiast will know the impact of computers in the game of chess. Even those who do not compete in chess may have heard of the “Man vs. Machine” matches that took place between Garry Kasparov and IBM’s various programs. This eternal question has been part of a series of debates on the role of computers in society. Of course, many movies (i.e., Terminator) dramatize the adversarial relationship of man versus machine.
Today computers have changed the way chess is played and studied. It makes for a somewhat uneasy collaboration. It is a foregone conclusion that the machine has won the battle in terms of skill, but humans have decided to use the computer as a tool the same way they began using previous mechanized innovations. Now the question is whether humans can find ways to use engines as an extension of their intelligence.
While not particularly an avid player, Dr. Abdi stated that he was motivated by the revolution of AlphaZero and Artificial Intelligence (AI) that started the chess world buzzing at the unique insight of the program. He told The Chess Drum,
I was interested in application of Monte Carlo Tree Search methods for Chess for a long time. Most had given up on the method before AlphaZero showed its successful application in combination with neural networks. Nebiyu had MCTS for long though not that successful with it, but it worked pretty well with Checkers. (see post)
Matthew Sadler and Natasha Regan published the groundbreaking book, Game Changer which describes (among many things) the evolution of chess engines, AlphaZero’s beginnings, and how the program “thinks.” Due to this motivation, the Addis Ababa native has written a number of programs and papers on his work.
One of his articles is titled, “Monte Carlo Methods for Estimating Game Tree Size,” and looks at the Monte Carlo Tree Search (MCTS) as a way of measuring the number of leaf nodes of a chess tree (PDF). There are many thoughts about the advantages of computers and how the field could be leveled. When The Chess Drum asked Dr. Abdi about handicap chess against engines, he left a frightening thought:
I think now computers can give a human grandmaster a Knight handicap and beat them. The chess program Komodo have had handicap games with human grandmasters at different times and mostly it was a win for it. This is no surprise since it may be 400 elo stronger than humans. Advancement in hardware/software have made chess programs incredibly strong tactically, which have made it too hard for humans to overcome. And now with neural networks, the positional understanding of programs has gone up a step too. It is amazing to look at the kind of positional moves a neural network engine makes without any lookahead search. The future looks bright for chess programs that are able to mix alpha-beta search (tactically strong) with neural networks (positionally strong) efficiently.
Dr. Abdi started his fascination of Artificial Intelligence around 2001 and has made a career out of the pursuit of this cutting-edge topic. He holds a B.Sc. from Addis Ababa University, a M.Sc. from the Indian Institute of Technology, and a Ph.D. from the University of Western Ontario (Canada). He enjoys photography in his spare time. We applaud Dr. Abdi’s excellence at advancing the study of AI in chess!
Resume of Daniel Abdi: http://dshawul.github.io/
Scorpio and Nebiyu: https://sites.google.com/site/dshawul/home
Programming Wiki: https://www.chessprogramming.org/Daniel_Shawul