George Makkas
|
Checkmate: Vasik Rajlich created the No.1 chess program
in the world.
|
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—
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.
517 Moves:
Longest Computer-Generated Endgame in Chess
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.”