With all due respect. There are a couple of programs that are almost as strong as Rybka now. Are you saying that they may not catch up and/or surpass Rybka? I know that Rybka is the strongest program out there for the time being and I am glad to see its success, but we have had winners in the past only to see someone write something better a little later on.
I mean who would have thought 10 years ago that programs today would be albe to pass the 3,000 elo mark?
There will always be a new kid on the block so to speak or as they used to say on the streets someone tougher will come along and whip a-- .
Bill
Why you're never going to catch Rybka
Moderator: Ras
-
- Posts: 3562
- Joined: Thu Mar 09, 2006 3:54 am
- Location: San Jose, California
-
- Posts: 12792
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: Why you're never going to catch Rybka
Every new superstar engine looks unstoppable when it came on the scene.
For years, Shredder looked untouchable.
Nobody knows where the next pile driver will come from. But it will come.
For years, Shredder looked untouchable.
Nobody knows where the next pile driver will come from. But it will come.
-
- Posts: 4673
- Joined: Sun Mar 12, 2006 2:40 am
- Full name: Eelco de Groot
Re: Why you're never going to catch Rybka
SzG wrote:Many seem to believe that you can catch Rybka by taking a strong open source engine and continue its development by optimizing code here, adding some technique there etc.
I believe that is not the way to go. The structure of the initial program will act as a cage for a bird: it won't let your thoughts fly freely, you will hit a wall and no further improvement will be possible.
To reach Rybka you will need a revolutionary idea and that idea will not be programming related because programming resources have been fully exploited and exhausted. It must be chess related and when you have that idea you can build your chess program on it.
Until then you'll only go creeping slowly and you'll always watch Rybka from the distance because, remember, Rybka is not waiting at the corner for you to catch up.
"Show me the way to go home"
Beating Rybka, errr Jaws in 30 seconds

Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
-
- Posts: 201
- Joined: Thu Mar 22, 2007 7:12 pm
- Location: Netherlands
Re: Why you're never going to catch Rybka
I agree that that is not the way to go, but for a different reason. The strong open source programs are the product of a process of development. I think that this process is the key to improving the program. (Although, as I am writing this, Toga seems to be a counter example.., can anyone tell me how much Toga has improved in strength compared to the source code it started from?) I think the way how you develop a program determines how strong it can get, more so than inventing original algorithms.SzG wrote:Many seem to believe that you can catch Rybka by taking a strong open source engine and continue its development by optimizing code here, adding some technique there etc.
I believe that is not the way to go. The structure of the initial program will act as a cage for a bird: it won't let your thoughts fly freely, you will hit a wall and no further improvement will be possible.
-
- Posts: 4562
- Joined: Tue Jul 03, 2007 4:30 am
Re: Why you're never going to catch Rybka
And that will be the end of Rybka, literally. Vas said that he's been improving Rybka non-stop even while being far ahead because once someone beats it it would be the end of his business and he'd have to retire from computer chess.Dann Corbit wrote:Nobody knows where the next pile driver will come from. But it will come.
Perhaps one trick to have a very strong chess engine is living from it.
-
- Posts: 12792
- Joined: Wed Mar 08, 2006 8:57 pm
- Location: Redmond, WA USA
Re: Why you're never going to catch Rybka
I guess that the engine that made the most money of all time is the engine in Chessmaster by Johan de Koning.Ovyron wrote:And that will be the end of Rybka, literally. Vas said that he's been improving Rybka non-stop even while being far ahead because once someone beats it it would be the end of his business and he'd have to retire from computer chess.Dann Corbit wrote:Nobody knows where the next pile driver will come from. But it will come.
Perhaps one trick to have a very strong chess engine is living from it.
Rybka is several hundred Elo stronger.
Marketing and other features are more important than engine strength, when it comes to making money.
If I were Vas, I would be in talks with UbiSoft. If he made $5 per copy of CM sold, he would probably end up with enough money to retire for life.
-
- Posts: 4673
- Joined: Sun Mar 12, 2006 2:40 am
- Full name: Eelco de Groot
Re: Why you're never going to catch Rybka
I suppose I look at the chess related terms a bit more mundanely. The main trouble is that there are such a lot of them! As Vas already said somewhere in 2005 I think, "knowledge isn't knowledge if it doesn't work".Jan Brouwer wrote:I agree that that is not the way to go, but for a different reason. The strong open source programs are the product of a process of development. I think that this process is the key to improving the program. (Although, as I am writing this, Toga seems to be a counter example.., can anyone tell me how much Toga has improved in strength compared to the source code it started from?) I think the way how you develop a program determines how strong it can get, more so than inventing original algorithms.SzG wrote:Many seem to believe that you can catch Rybka by taking a strong open source engine and continue its development by optimizing code here, adding some technique there etc.
I believe that is not the way to go. The structure of the initial program will act as a cage for a bird: it won't let your thoughts fly freely, you will hit a wall and no further improvement will be possible.
You need an enormous battery of tests if you really want to turn your program into an oiled fighting machine

Let me try to analyze a bit:
Suppose you add one term each day for a year, on average starting with many variables like the basic material values of all pieces that you can collect quickly, then for subsequent significant terms the search becomes harder. For each of these terms you do not know the best working value.
If the terms are all constants and for each you have to pick a value in a range of ten, you have to pick the best version of 10 * 365 possible combinations. That is still doable. If you have to play 50.000 ultrafast games with each version out of 3650 that is still doable with enough hardware.
But the biggest problem is I think when the variables are no longer independent. With proper care you can limit some of this dependency, but if that doesn't work for whatever reason, the number of possible combinations quickly spirals out of control. In the worst case, each of the varibles would depend on the setting of all the other variables. Then the number of possible combinations to test is 10 raised to the 365 or a 1 with 365 zeros. Go play 50.000 games with each one of them. If each match of 50,000 games takes us just one hour of Skulltrail time, the total duration of the test would take 1.1415525114155251141552511415525e+361 years to finish. That is ≈ 8.15 e+350 times the present age of our universe since the Big Bang

Maybe I'm a few orders of magnitude off but that is still a nightmare scenario. Fortunately the number of depencies need not be so large but for instance in Fruit I think there are many variables that work well only because one variable's error compensates another. That is also because of the heuristic nature of most known computerchess terms, but this probably also means every term only has a narrow optimal range where most of the errors cancel each other, and play is correct. Whenever you fall out of the optimal range playing against a superior opponent, -the errors don't cancel or you a missing one crucial piece of knowledge, one chessterm you have not yet discovered or tried-, you make one positional error at least, in your search. Some of them end up 'cascading' into a suboptimal move on the board. Assuming your opponent does not make any of these errors, every game is inevitably lost.
In short this probably also means that chess is far from solved in the sense of displaying unbeatable play by any computer program, which frankly is a very hopeful conclusion also

Eelco
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
-
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: Why you're never going to catch Rybka
SzG wrote:1. Second best is 180 Elos below Rybka. That is not "almost" for me...Bill Rogers wrote:With all due respect. There are a couple of programs that are almost as strong as Rybka now. Are you saying that they may not catch up and/or surpass Rybka? I know that Rybka is the strongest program out there for the time being and I am glad to see its success, but we have had winners in the past only to see someone write something better a little later on.
I mean who would have thought 10 years ago that programs today would be albe to pass the 3,000 elo mark?
There will always be a new kid on the block so to speak or as they used to say on the streets someone tougher will come along and whip a-- .
Bill
2. Neither of the closest rivals was built on the framework of an open source engine. They are all original.

We don't even know what Rybka was developed from, so your comments are far from accurate...
-
- Posts: 4562
- Joined: Tue Jul 03, 2007 4:30 am
Re: Why you're never going to catch Rybka
If Vas was smart enough to improve Rybka 1 by some 300 rating points I think he's smart enough to have created it from scratch.