What the computer chess community needs to decide

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

Re: What the computer chess community needs to decide

Post by Christopher Conkie »

Larry got them mixed up.

I corrected Larry's mistake in my last post.
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

Re: What the computer chess community needs to decide

Post by Christopher Conkie »

lkaufman wrote:
Christopher Conkie wrote:
On the basis that Houdini is a complete copy of Robbolito.

I thought you might have worked that out by now.

It is hilarious that you seem unable to.......

If you would like to say to me that Mr. Houdart is the programmer of Ippolit, I would say to you that Ippolit is a disassembled Rybka 2.3.2b.

Fin.

Chris


Two questions: 1. Can you tell us anything about the DIFFERENCES between Houdini 1.5 and Robbolito? It is also obvious to me that Houdini started at Robbo, but something is substantially different in 1.5 to cause such a large rating gain.
2. Why do you say Ippo was based on Rybka 2.3.2b, rather than Rybka 3.0 as everyone else says? The evaluation terms in Ippo/Robbo seem to match my R3 values much more closely than my R2.3.2b values, and also the rating gain from 2.3.2b is something like 150 Elo, way too much for mere tweaks.

Larry
Specifically Houdini is Ivanhoe (which is a parallel Roboolito) that has had the strings changed from Italian to English and then had various bug fixes to make the smp work.

The values may come from 3 but the exe that was disassembled to make Ippolit was 2.3.2 is my belief.

There exists a vesion of Rybka 2.3.2 that did not have its symbols stripped. Would make the disassembly so much easier. It was given to various people one of whom leaked it. It was used as you know to tune Rybka and had it's own interface for that purpose.

The date of the executable is 10/5/2006.

It is programmable. I have learned how to program it.

Chris
lkaufman
Posts: 5960
Joined: Sun Jan 10, 2010 6:15 am
Location: Maryland USA

Re: What the computer chess community needs to decide

Post by lkaufman »

Christopher Conkie wrote:
lkaufman wrote:
Christopher Conkie wrote:
Specifically Houdini is Ivanhoe (which is a parallel Roboolito) that has had the strings changed from Italian to English and then had various bug fixes to make the smp work.

The values may come from 3 but the exe that was disassembled to make Ippolit was 2.3.2 is my belief.

There exists a vesion of Rybka 2.3.2 that did not have its symbols stripped. Would make the disassembly so much easier. It was given to various people one of whom leaked it. It was used as you know to tune Rybka and had it's own interface for that purpose.

The date of the executable is 10/5/2006.

It is programmable. I have learned how to program it.

Chris
Thanks for your reply. Regarding Rybka/Robbo, do you know whether singular extension was in 2.3.2 or just in 3.0? It is in Robbo. Your theory seems plausible if you mean that 2.3.2 code was then modified by ideas and parameter values in R3, as well as some original ideas. At least some eval terms in Robbo were from R3, not 2.3.2. The increased LMR in Robbo was (I believe) different from both Rybkas, and probably accounts for some of the increased Elo over R3.

Regarding Houdini 1.5, do you mean that the large rating jump over Robbo and Ivanhoe was just due to bug fixes? Surely there is some new idea that accounts for some of the Elo points; Robbo/Ivanhoe was not that buggy, I think.

Larry
Sven
Posts: 4052
Joined: Thu May 15, 2008 9:57 pm
Location: Berlin, Germany
Full name: Sven Schüle

Re: What the computer chess community needs to decide

Post by Sven »

paulo wrote:
bob wrote:
paulo wrote:
SzG wrote:
paulo wrote:Today only a complete asshole would start coding a new engine from scratch, i.e., ignoring all the (best) available ideias and resources.
The two are not the same. You can start from scratch using all the available ideas together with yours. And you can start from a complete code and put in your ideas.
Nope. It's exactly the same thing as long as you agree the existing code you are basing is the best. Furthermore I strongly believe any experienced software developer agrees with this.
Here is one that does not. Copying source is not "software development" by the way, it is "software plagiarism". HUGE difference...
I respect your opinion but I don't see it that way and don't consider copying. Furthermore, modern sw development is heavily based on code-reuse, either yours or, in most cases, from other sources.

regards
Code reuse is good - as long as it is allowed based on existing copyright and license situation.

For most SW companies "code reuse" means to reuse existing *own* code mainly.

Sven
User avatar
Don
Posts: 5106
Joined: Tue Apr 29, 2008 4:27 pm

Re: What the computer chess community needs to decide

Post by Don »

Sven Schüle wrote:
paulo wrote:
bob wrote:
paulo wrote:
SzG wrote:
paulo wrote:Today only a complete asshole would start coding a new engine from scratch, i.e., ignoring all the (best) available ideias and resources.
The two are not the same. You can start from scratch using all the available ideas together with yours. And you can start from a complete code and put in your ideas.
Nope. It's exactly the same thing as long as you agree the existing code you are basing is the best. Furthermore I strongly believe any experienced software developer agrees with this.
Here is one that does not. Copying source is not "software development" by the way, it is "software plagiarism". HUGE difference...
I respect your opinion but I don't see it that way and don't consider copying. Furthermore, modern sw development is heavily based on code-reuse, either yours or, in most cases, from other sources.

regards
Code reuse is good - as long as it is allowed based on existing copyright and license situation.

For most SW companies "code reuse" means to reuse existing *own* code mainly.

Sven
Yes, and code reuse generally applies to the generous use of external libraries, or clever reuse of classes by extending them, etc. I hope "modern SW development" does not ever become synonymous with software plagiarism.
paulo
Posts: 53
Joined: Wed Dec 15, 2010 7:31 pm

Re: What the computer chess community needs to decide

Post by paulo »

Sven Schüle wrote:
paulo wrote:
bob wrote:
paulo wrote:
SzG wrote:
paulo wrote:Today only a complete asshole would start coding a new engine from scratch, i.e., ignoring all the (best) available ideias and resources.
The two are not the same. You can start from scratch using all the available ideas together with yours. And you can start from a complete code and put in your ideas.
Nope. It's exactly the same thing as long as you agree the existing code you are basing is the best. Furthermore I strongly believe any experienced software developer agrees with this.
Here is one that does not. Copying source is not "software development" by the way, it is "software plagiarism". HUGE difference...
I respect your opinion but I don't see it that way and don't consider copying. Furthermore, modern sw development is heavily based on code-reuse, either yours or, in most cases, from other sources.

regards
Code reuse is good - as long as it is allowed based on existing copyright and license situation.

For most SW companies "code reuse" means to reuse existing *own* code mainly.

Sven
Sven Schüle wrote: Code reuse is good - as long as it is allowed based on existing copyright and license situation.

For most SW companies "code reuse" means to reuse existing *own* code mainly.
Code reuse is not just good is strongly encouraged. Only short-minded SW companies would ignore all the existing **free** libraries and sources available at a mouse click.
paulo
Posts: 53
Joined: Wed Dec 15, 2010 7:31 pm

Re: What the computer chess community needs to decide

Post by paulo »

Don wrote:
Sven Schüle wrote:
paulo wrote:
bob wrote:
paulo wrote:
SzG wrote:
paulo wrote:Today only a complete asshole would start coding a new engine from scratch, i.e., ignoring all the (best) available ideias and resources.
The two are not the same. You can start from scratch using all the available ideas together with yours. And you can start from a complete code and put in your ideas.
Nope. It's exactly the same thing as long as you agree the existing code you are basing is the best. Furthermore I strongly believe any experienced software developer agrees with this.
Here is one that does not. Copying source is not "software development" by the way, it is "software plagiarism". HUGE difference...
I respect your opinion but I don't see it that way and don't consider copying. Furthermore, modern sw development is heavily based on code-reuse, either yours or, in most cases, from other sources.

regards
Code reuse is good - as long as it is allowed based on existing copyright and license situation.

For most SW companies "code reuse" means to reuse existing *own* code mainly.

Sven
Yes, and code reuse generally applies to the generous use of external libraries, or clever reuse of classes by extending them, etc. I hope "modern SW development" does not ever become synonymous with software plagiarism.
You don't need to hope anymore because according to your viewpoint all modern sw development _already_ is sw plagiarism, either you like it or not.
Christopher Conkie
Posts: 6073
Joined: Sat Apr 01, 2006 9:34 pm
Location: Scotland

Re: What the computer chess community needs to decide

Post by Christopher Conkie »

lkaufman wrote:
Christopher Conkie wrote:
Specifically Houdini is Ivanhoe (which is a parallel Roboolito) that has had the strings changed from Italian to English and then had various bug fixes to make the smp work.

The values may come from 3 but the exe that was disassembled to make Ippolit was 2.3.2 is my belief.

There exists a vesion of Rybka 2.3.2 that did not have its symbols stripped. Would make the disassembly so much easier. It was given to various people one of whom leaked it. It was used as you know to tune Rybka and had it's own interface for that purpose.

The date of the executable is 10/5/2006.

It is programmable. I have learned how to program it.

Chris
Thanks for your reply. Regarding Rybka/Robbo, do you know whether singular extension was in 2.3.2 or just in 3.0? It is in Robbo. Your theory seems plausible if you mean that 2.3.2 code was then modified by ideas and parameter values in R3, as well as some original ideas. At least some eval terms in Robbo were from R3, not 2.3.2. The increased LMR in Robbo was (I believe) different from both Rybkas, and probably accounts for some of the increased Elo over R3.

Regarding Houdini 1.5, do you mean that the large rating jump over Robbo and Ivanhoe was just due to bug fixes? Surely there is some new idea that accounts for some of the Elo points; Robbo/Ivanhoe was not that buggy, I think.

Larry
Ivanhoe smp was more buggy than a termite hill. :)

Rybka 2.3.2 begat Ippolit.

Ippolit became Robbolito which then became Ivanhoe which then became Houdini.

It is Ippolit you should compare with Rybka 2.3.2 for that is where the disassembling took place.

Chris
frcha
Posts: 221
Joined: Thu Jan 28, 2010 5:47 pm

Re: What the computer chess community needs to decide

Post by frcha »

paulo wrote:
Don wrote:
Sven Schüle wrote:
paulo wrote:
bob wrote:
paulo wrote:
SzG wrote:
paulo wrote:Today only a complete asshole would start coding a new engine from scratch, i.e., ignoring all the (best) available ideias and resources.
The two are not the same. You can start from scratch using all the available ideas together with yours. And you can start from a complete code and put in your ideas.
Nope. It's exactly the same thing as long as you agree the existing code you are basing is the best. Furthermore I strongly believe any experienced software developer agrees with this.
Here is one that does not. Copying source is not "software development" by the way, it is "software plagiarism". HUGE difference...
I respect your opinion but I don't see it that way and don't consider copying. Furthermore, modern sw development is heavily based on code-reuse, either yours or, in most cases, from other sources.

regards
Code reuse is good - as long as it is allowed based on existing copyright and license situation.

For most SW companies "code reuse" means to reuse existing *own* code mainly.

Sven
Yes, and code reuse generally applies to the generous use of external libraries, or clever reuse of classes by extending them, etc. I hope "modern SW development" does not ever become synonymous with software plagiarism.
You don't need to hope anymore because according to your viewpoint all modern sw development _already_ is sw plagiarism, either you like it or not.
I think you are probably thinking of cases such as javascript where programmers just use the jquery library.
You can use jquery to do a lot of things that would otherwise take longer -- yet even in this case -- you can program from scratch .. its not that hard for example to program a rollover from scratch . Don't need jquery -- nor is it necessary to use jquery to toggle a div on or off.. that can be done directly too ..

EVEN if programmers does use a library to implement something, they're not claiming credit for a "creation" just getting the job done.


As a programmer outside of the chess engine scene, and if I am good enough I too might be tempted to just make an improvement to ippo code but what did I create? Just added ELO to Ippo not create a new engine as you think.

The issue here is giving credit where credit is due.
paulo
Posts: 53
Joined: Wed Dec 15, 2010 7:31 pm

Re: What the computer chess community needs to decide

Post by paulo »

frcha wrote:
paulo wrote:
Don wrote:
Sven Schüle wrote:
paulo wrote:
bob wrote:
paulo wrote:
SzG wrote:
paulo wrote:Today only a complete asshole would start coding a new engine from scratch, i.e., ignoring all the (best) available ideias and resources.
The two are not the same. You can start from scratch using all the available ideas together with yours. And you can start from a complete code and put in your ideas.
Nope. It's exactly the same thing as long as you agree the existing code you are basing is the best. Furthermore I strongly believe any experienced software developer agrees with this.
Here is one that does not. Copying source is not "software development" by the way, it is "software plagiarism". HUGE difference...
I respect your opinion but I don't see it that way and don't consider copying. Furthermore, modern sw development is heavily based on code-reuse, either yours or, in most cases, from other sources.

regards
Code reuse is good - as long as it is allowed based on existing copyright and license situation.

For most SW companies "code reuse" means to reuse existing *own* code mainly.

Sven
Yes, and code reuse generally applies to the generous use of external libraries, or clever reuse of classes by extending them, etc. I hope "modern SW development" does not ever become synonymous with software plagiarism.
You don't need to hope anymore because according to your viewpoint all modern sw development _already_ is sw plagiarism, either you like it or not.
I think you are probably thinking of cases such as javascript where programmers just use the jquery library.
You can use jquery to do a lot of things that would otherwise take longer -- yet even in this case -- you can program from scratch .. its not that hard for example to program a rollover from scratch . Don't need jquery -- nor is it necessary to use jquery to toggle a div on or off.. that can be done directly too ..

EVEN if programmers does use a library to implement something, they're not claiming credit for a "creation" just getting the job done.


As a programmer outside of the chess engine scene, and if I am good enough I too might be tempted to just make an improvement to ippo code but what did I create? Just added ELO to Ippo not create a new engine as you think.

The issue here is giving credit where credit is due.
I agree with almost you said, in particular when you say:
"EVEN if programmers does use a library to implement something, they're not claiming credit for a "creation" just getting the job done."

The point here is precisely about getting the job done.
Nowadays is all about it, modern computer programming focus solely on the business case and only when that is not possible you have to handle technical issues.

Now a question for all SW developers around here:
For you, what is the business case of a computer chess engine?

My answer:
The business case of a chess engine is to get, at the end, the strongest engine possible by kicking hard in the ass the previous #1 (once more, congratulations to Robert Houdart).