Lazy eval

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

User avatar
rvida
Posts: 481
Joined: Thu Apr 16, 2009 12:00 pm
Location: Slovakia, EU

Re: Lazy eval - test results

Post by rvida »

Houdini wrote: ...
...
I just notice that Houdini's specific implementation of an original idea is being presented by an acclaimed author, without giving any credit.
Unless this has been in Critter from before version 1.0 (Richard RE'd Houdini 1.5 between Critter 0.90 and 1.0), and we've just ended up by a great coincidence using exactly the same code?!

Robert
I cannot deny I took some ideas from your engine, but this is not one of them. I searched through my old sources, and this one appeared between 0.70 and 0.80 (cca 5/2010 - 8/2010). I did not know about Houdini at that time and was not familiar with Ippolit sources. In a earlier version this condition was based on king safety term from ply-1 eval.
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: Lazy eval - test results

Post by kranium »

wgarvin wrote: Yeah, I can't read Italian but matching up code between the various ippo clones is usually not difficult.
and of what is ippolit a clone, Wylie?
many here have stated that emphatically and unfairly for years...without presenting any proof.

i.e. the weak
"Anyone with half a brain knows it" argument again?
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: Lazy eval - test results

Post by wgarvin »

rvida wrote:
wgarvin wrote: I was annoyed by his cheap shot at Richard who as I understand it, acknowledges that his engine is derived from the ippolit family.
No, Critter is not derived from anything (although it employs many ideas I learned from other programs including both Ippolit & Houdini). It did not appear out of blue as a 3200+ engine. It is being developed for almost 4 years. If you are interested enough, you can look up its progress over time on the CCRL webpage - from version 0.38 (2500 ELO) up to current (3200 ELO):
http://computerchess.org.uk/ccrl/4040/c ... ly=Critter
My mistake, sorry. I didn't know you've been working on Critter for so long.

The point I intended to make is that you did not just take ippolit and try to hide what it was and act like it was your own work (the sort of thing that shameless cloners do.)
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: Lazy eval - test results

Post by wgarvin »

kranium wrote:
wgarvin wrote: Yeah, I can't read Italian but matching up code between the various ippo clones is usually not difficult.
and of what is ippolit a clone, Wylie?
many here have stated that emphatically and unfairly for years...without presenting any proof.

i.e. the weak
"Anyone with half a brain knows it" argument again?
I'm not sure what (if anything) ippolit was derived from. I meant Ippolit + Robbolito + IvanHoe + probably some others I can't think of right now. I should probably have written "ippo and clones".

Ippolit's code looks like the output of some kind of tool (i.e. the original C code was not written by hand) but that does not necessarily mean it was reverse-engineered. It could have been done with some sort of code generator (though I can't imagine why). More likely, just a preprocessor like M4 or CPP or whatever. Robbolito et al. appear to have cleaned up some things but the results are still seriously ugly, IMHO.
User avatar
Rebel
Posts: 6991
Joined: Thu Aug 18, 2011 12:04 pm

Re: Lazy eval

Post by Rebel »

lkaufman wrote: Yes, I see that NPS is fairly constant, nodes searched are heavily reduced. The question is WHY? Normal behavior of lazy eval is to improve NPS by reducing eval time, not to reduce nodes searched. Just what nodes are cut out by your lazy eval? Why does your program act differently in this matter compared to all others?
Added the eval's searched, perhaps it helps

Code: Select all

          time  nodes  eval
LE=0.50   0:25    61M   12M
LE=1.00   0:30    70M   15M
LE=1.50   0:33    75M   17M
LE=2.00   0:29    67M   16M -> surprise here
LE=OFF*   1:49   196M   87M -> another surprise here 
* practically off
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: Lazy eval - test results

Post by kranium »

wgarvin wrote:
kranium wrote:
wgarvin wrote: Yeah, I can't read Italian but matching up code between the various ippo clones is usually not difficult.
and of what is ippolit a clone, Wylie?
many here have stated that emphatically and unfairly for years...without presenting any proof.

i.e. the weak
"Anyone with half a brain knows it" argument again?
I'm not sure what (if anything) ippolit was derived from. I meant Ippolit + Robbolito + IvanHoe + probably some others I can't think of right now. I should probably have written "ippo and clones".

Ippolit's code looks like the output of some kind of tool (i.e. the original C code was not written by hand) but that does not necessarily mean it was reverse-engineered. It could have been done with some sort of code generator (though I can't imagine why). More likely, just a preprocessor like M4 or CPP or whatever. Robbolito et al. appear to have cleaned up some things but the results are still seriously ugly, IMHO.
there is an explanation, presented by the ippolit authors on their website
...i believe it plausible.

it has also been discussed at length here, and is unrefuted to date
(i will provide links if you are interested)

Beside, if Richard can RE Houdini for in an attempt to dscover why it is so strong...
and Jury O. can do the same...
with both engines being accepted by all, and tested by major testing groups...

then why is ippolit blacklisted?
and eternally condemned for 'maybe' discovering ideas from Rybka 3 in a similar manner?

(and i don't believe the latter is true)
Last edited by kranium on Tue Dec 06, 2011 11:30 pm, edited 2 times in total.
User avatar
Houdini
Posts: 1471
Joined: Tue Mar 16, 2010 12:00 am

Re: Lazy eval - test results

Post by Houdini »

rvida wrote:I cannot deny I took some ideas from your engine, but this is not one of them. I searched through my old sources, and this one appeared between 0.70 and 0.80 (cca 5/2010 - 8/2010). I did not know about Houdini at that time and was not familiar with Ippolit sources. In a earlier version this condition was based on king safety term from ply-1 eval.
OK, in that case we arrived independently at exactly the same implementation.
Sorry for my implying differently, it looked like an improbable coincidence.

Robert
User avatar
Rebel
Posts: 6991
Joined: Thu Aug 18, 2011 12:04 pm

Re: Lazy eval - test results

Post by Rebel »

Don wrote:
Rebel wrote:
Houdini wrote:
Don wrote:HOWEVER, your comment that it is a "Houdini idea" is what Mark Lefler refuted.
As far as I know this idea and its specific implementation, which is now also exactly found in Critter and in Strelka 5, is original to Houdini.

Do you have any reference to a past discussion (in this or another forum) in which this idea is exposed? I'm really interested.

Robert
Robert, LE probably was already in use before you were born :wink:
Ed,

You are being modest, your program Rebel uses the same concept, with what I believe is a superior implementation.

Don
Yes I believe it is and I am trying to convince your partner Larry :wink:

LE is one of those things I tested more thoroughly than everything else, mid or late 80's.
User avatar
Rebel
Posts: 6991
Joined: Thu Aug 18, 2011 12:04 pm

Re: Lazy eval - test results

Post by Rebel »

Houdini wrote:
Rebel wrote:Robert, LE probably was already in use before you were born :wink:
To improve the quality of the discussion, can you please give us a reference to a discussion about the specific feature of skipping LE when the positional value exceeds a certain amount?
Thank you.

Robert

P.S. The idea we are is discussing is not "LE" in general but the specific idea described above.
It's basically discussed in this thread.

Depth-1 eval score + 0.50 margin for horizon and QS nodes.

So you are not testing any bound. The bound is the eval score of depth-1
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: Lazy eval - test results

Post by kranium »

Houdini wrote:
rvida wrote:I cannot deny I took some ideas from your engine, but this is not one of them. I searched through my old sources, and this one appeared between 0.70 and 0.80 (cca 5/2010 - 8/2010). I did not know about Houdini at that time and was not familiar with Ippolit sources. In a earlier version this condition was based on king safety term from ply-1 eval.
OK, in that case we arrived independently at exactly the same implementation.
Sorry for my implying differently, it looked like an improbable coincidence.

Robert
is it just 'improbable coincidence' that RE'd Houdini 1.0 matches up exactly (almost line by line) with Robbolito 0.09....?

http://www.open-chess.org/viewtopic.php?f=3&t=1647

and what about this?
http://www.talkchess.com/forum/viewtopic.php?t=38052

these questions (among many others) have been asked previously, repeatedly, and on numerous occasions, you always chose to ignore...
please Robert, i can assure you these questions won't disappear...
you absolutely should/must address them to be taken at all seriously and not be classified as a fraud and habitual liar

and it seems you do desire that...?
(made clear by the sheer amount of posts you have effected in an effort to convince everyone of Houdini's brilliance and originality)