Every chess player in search of a title eventually comes to Budapest, which offers more access to the necessary qualifying tournaments than any other city in the world.
So in late 1999, when he was 28 years old—a time in life when a chess player must reach for the brass ring or forever let it go— Vasik Rajlich decided to come to these quaintly cobbled streets. The MIT-trained computer scientist told his boss, at a military-oriented research outfit in Ann Arbor, Mich., that he was taking a six-month leave of absence to score some tournament successes and raise his chess rating—a handicap based on a weighted average of one’s results against other rated players.
”I thought if I really, really trained, I’d get better fast,” Rajlich says, ”but I added maybe 100 rating points.” That left him 100 points shy of the 2400 he needed to become an international master.
The six months stretched out to three years. ”I would be walking down the street and get a panic attack,” he remembers. ” ’What am I doing?’ Everybody in my family thought I was a lunatic.”
When a young man’s family tells him he’s crazy to ditch his day job for a profitless passion, he can usually shrug it off. Rajlich’s Czech immigrant family, however, is packed with both chess players and engineers. His father teaches computer science at Wayne State University, in Detroit; his mother trained as a mathematician; and two of his brothers are computer scientists. A third one, the black sheep, is a doctor. Unlike Rajlich, they all managed to keep their love of chess in check.
Finally, his savings and his morale both nearly depleted, he broke the rating barrier, getting as high as 2440—earning him the international master title—before another decline forced him to realize that he’d never make grandmaster. So he set his sights on a new brass ring: writing the strongest chess-playing program in the world.
”I figured there were about 2000 people in the world stronger than me in chess,” he says, ”but not one chess player that was stronger than me in programming.”
He took side jobs to pay the rent, and finally, in late 2005, his brainchild was ready. He called it Rybka, the Czech word for ”little fish,” and later that year entered it in a computer chess championship, held in Paderborn, Germany. It won, then quickly went on to establish an unprecedented superiority. Today the various computer ratings lists place it between 70 and 200 points above its nearest rival.
How did Rajlich conquer so quickly? He attributes his success in part to his chess mastery, strangely rare in the programming field. More important, though, was his fresh approach. ”If you look at the best programs in the history of computer chess,” he says, ”you see that they all did very well right away.” Rajlich taught himself most of the tricks of the trade, in part because he had to; the best chess programmers have always kept their best ideas close to their vests.
He does, too. He will say only that his most important advance was in figuring out how to manage the ”search function,” the algorithm that decides which possibilities are to be examined. As a computer models the future course of a game, the number of branching possibilities increases exponentially with each additional projected move. By pruning many of the less promising branches, Rybka can devote far more time to scrutinizing the remaining ones. How the program tells whether a line is promising, Rajlich declines to say.
Each time Rajlich changes the program, he must confront it with carefully selected chess positions that challenge whatever feature he has refined. The chief tester is Iweta, Rajlich’s Polish-born wife, herself an international master. At 2432, she surpasses her husband’s current rating by a hefty 128 points.
Their work is on display on a Friday afternoon in October, when, together with Iweta’s coach, Michal Krasenkow, a Polish grandmaster, they sit in Rajlich’s modest walk-up apartment in front of five humming computers, one for each of them and two more to handle other functions. ”Our landlord complains about the electricity bill,” Rajlich laughs. They are playing in an online tournament as a so-called centaur team, in which humans and machines collaborate.
Team Rajlich’s computers are each running the latest version of Rybka; their adversary is a computer also running a copy of Rybka (one of many playing on various hardware platforms in the tournament). The humans take guidance from their computers, but ultimately they are the ones who decide what to play. Upon reaching an endgame that cannot be won against accurate defense, they play a move they know will seem weak to the program, without being so; the idea is to inveigle it into overreaching. The opposing computer doesn’t quite rise to the bait, though, and the game peters out to a draw.
In a later game they try the same method, and this time their trick does get them a great position. But they are the ones who get overconfident, make a mistake, and lose. Iweta is disconsolate, Rajlich philosophical. ”It’s the first game we’ve lost in these [centaur team] competitions,” he shrugs, noting that even with a 150-point rating edge, you will lose the odd game.
Anyway, it isn’t a total loss, as the chess computer world got yet another chance to see just how strong the unaided Rybka can be. Last year, enthusiasts bought 2000 copies of the program, at 34 (about US $45) a pop. Rajlich acknowledges that many buyers probably can’t tell it from the weaker programs, which are in any case strong enough to blow any amateur player off the chessboard—”but people always like to watch the best.”
He tried for a while to sell his own software. He and Iweta are still awash in ”I ♥ Rybka” pens, wall hangings, and other marketing tchotchkes. But the very qualities that brought him to Budapest turned out to disqualify him as a businessman. ”I just don’t care,” he says. ”I’m a software developer.” So he signed a contract with Convekta, a Russian-born, British-based company; it now handles the marketing, and it is also developing an interface between Rybka and other software products.
The company pays Rajlich a salary, freeing him to spend his days refining the next iteration of Rybka.
”I don’t anticipate that I’ll ever have to make a decision based on money,” he says. ”If you’re a software developer, and you get to a certain age, you have to decide what you want to do, and do it.”