The near future of computer chess

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

Moderators: hgm, Rebel, chrisw

User avatar
geots
Posts: 4790
Joined: Sat Mar 11, 2006 12:42 am

Re: The near future of computer chess

Post by geots »

gerold wrote:Hi Kai.

Testing 9.46 IH now. Is this the latest one.

Best,
Gerold.


Gerold, when you start talking IvanHoe and version numbers, it can be painful if you are not aware all their engines use the exact opposite method from us. Don't get lost like I did. When you see versions 46a, version 46b and 46c, remember of the 3, 46c is the oldest, not the latest. In that sense, 46a should be strongest- at least "should" be.

george
User avatar
Eelco de Groot
Posts: 4567
Joined: Sun Mar 12, 2006 2:40 am
Full name:   

Re: The near future of computer chess

Post by Eelco de Groot »

bob wrote:
Rebel wrote:
hgm wrote: Well, that is what I mean. Of course I would not enter the 100 engines under my own name. I have many nephews... :wink:
One phone call, a couple of technical questions will do.

Look... this kind of things are not the problem. Chess programmers are usually not the dumbest people on the planet, there is enough intelligence out there not to solve the clone problem once and for all. The problem is the acknowledgement there is a problem and the will to solve it.
I don't understand your post. On one hand, you are saying "it can be solved if we have the will to solve it" yet in previous posts you are saying "this is the internet age and everyone should be allowed to copy/use what they want."

How can it be BOTH???
I haven't read more than two or three posts of this entire discussion, sorry, but I still think Don must be reading much of Ed's intentions wrong somehow. I thought Ed's point is more that it is very likely that after the Fruit era began, the strongest chessprograms will be based on at least the ideas of existing open source code. This is the normal course of evolution in many fields and it has nothing to do with the notion that computerchess is also a sport. Of course it is also that, a sport as well as science, or commercial business, entertainment or more, but that seems to me not very relevant for Ed's views. Computerchess is evolving from science to engineering, and the building blocks for a chess program are becoming higher level, in general. Frans Morsch and Ed Schröder both still program in assembler. That is what they excel at. But a program like The King was entirely in C, right from the start I believe. Chess programming had evolved. C was easier to maintain and easier to understand, easier to set up a new project with. In a way, all the existing open source chess programcode can also be seen as building blocks in the same way that C has machine code building blocks that are handled by the compiler, not the programmer. I don't even think Vas is programming very much in C anymore, well at least he claimed once to be doing much in his self written language. Maybe it is B :P

All that has nothing to do with whether the resulting chess programs should be allowed in programmer tournaments. I think Ed is just saying: that is the most efficient way to build a chessprogram today. I still think Tord made a memorable post about this process which I quoted once on Rybka forum and it still can be quoted today:
Because Stockfish is free, commercial programmers can study it, reimplement the ideas they like in their own programs, and stay ahead.

It is still possible that it will some day be impossible to make significant amounts of money from computer chess, of course. If and when this happens, it is only because chess programming has become sufficiently easy and well understood that hobbyists like us can compete on the same level as professionals. This is a very natural development, and is happening in many fields. Trying to slow down progress in order to prevent it from happening is just silly.
This text should be on the first page of the chess programmer's Wiki.

I don't really want to enter a million posts about this, but as Don seemed to misunderstand Ed's stance and Ed becoming upset about that, I have not even read Ed's text but it is likely to be once again a case of "Lost in translation". No offence to Ed's very good English these days :)

And maybe I am reading Ed's ideas totally through my own glasses which are very different from Don's, different in the the interpreting sense I mean. In that case the above views are more those of myself then, not Ed's.

Regards, 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
User avatar
Dr.Wael Deeb
Posts: 9773
Joined: Wed Mar 08, 2006 8:44 pm
Location: Amman,Jordan

Re: The near future of computer chess

Post by Dr.Wael Deeb »

Don wrote:
Dr.Wael Deeb wrote:
Terry McCracken wrote:
Rebel wrote:
Don wrote:
Terry McCracken wrote:Has anyone combed through Ed's software? It makes one wonder.
I don't know what is up with Ed, but his program is clearly original and he is a brilliant and hard working programmer. I guess he just thinks there is a new generation of programmer who shouldn't have to be bothered with originality or hard work.
It's about you and other established programmers who voted someone guilty of plagiarism while at the same time doing it yourself following the definition of Webster and not willing to accept it.
Bullshit!
Terry,are you totally convinced that Don & Co. don't read and use ideas from available source codes of top chess engines :!: :?:
Of course I used ideas from available sources, either source code or from this forum or others. Every program author does this.

This is how all human endeavors work and every computer chess program works. It's how it's supposed to be - you build on the works of others because it's just stupid to start from scratch. Surely you don't think that every new chess programmer has to re-invent alpha/beta pruning do you?

Stop being an unreasonable ass and try to understand the difference between natural progress by accumulating knowledge over time and outright code theft.

Go back about 60 years to see what has happened in computer chess. There was the discovery of alpha beta pruning, Hash tables, check extensions, futility pruning, null move pruning, reductions and many other techniques. This was ALL part of the natural progress that was made in computer chess and did not involve "plagiarism" - every program uses these techniques. In 20 years there will be more of them.

In Ed's view, if you use any of these techniques, you are a plagiarist you are not in a position to recognize blatant code theft.

You guys are in a desperate situation because you cannot make your justification for code theft seem plausible without making it seem like natural progress is really plagiarism anyway.
I was talking exactly about the natural progress by accumulating knowledge over time and I don't call it direct theft....

BTW,can you elaborate who you are addressing with the polite expression "unreasonable ass",me or Ed :!: :?:
Dr.D
_No one can hit as hard as life.But it ain’t about how hard you can hit.It’s about how hard you can get hit and keep moving forward.How much you can take and keep moving forward….
User avatar
Dr.Wael Deeb
Posts: 9773
Joined: Wed Mar 08, 2006 8:44 pm
Location: Amman,Jordan

Re: The near future of computer chess

Post by Dr.Wael Deeb »

kranium wrote:another thought:
it would be very nice to see you (and Larry) stop trying to dictate the definition of what is acceptable and what is not...

seems overly ambitious, IMO
i.e. Komodo can make it to #1 and you can sell a lot of copies, without the endless propaganda that it's the only 'pure' engine available.
Norm,
My prediction is that if Komodo make it to the top of the rating list,it won't last long there,it will be dethroned in a short period of time....

The competition is simply vicious up there on the top of the food chain 8-)
Dr.D
_No one can hit as hard as life.But it ain’t about how hard you can hit.It’s about how hard you can get hit and keep moving forward.How much you can take and keep moving forward….
Peter Berger
Posts: 653
Joined: Thu Mar 09, 2006 2:56 pm

Re: The near future of computer chess

Post by Peter Berger »

Ed's case is very weak the way he chose to put it up for discussion - and he will lose it objectively against people who argue as well as Don Dailey does.

I don't think that this means he has no real point.

Actually I think Don ( or whoever did this) put up the alternatives very nicely in principle: there is no problem with multiple competitions: one for original programmers, one for clone wars, one for hardware geeks, etc.

The real problem is that there is a general understanding that a world champion should *still* be the strongest. You can put up some kind of doping rules ( the Tour de France comes to mind here), but if every top competitor is doped the event will die itself rather than anything else.

I think the real problem here are the Ippolit guys who simply chose to ignore the framework of competition that used to be the standard in computerchess land before their arrival. To put it their way: a real "Decembrist's achievement". At least their lead figures are probably chess programmers who would be able to compete successfully within *any* framework of rules.

That's not too different to Fabien's influence: he simply published Fruit's source code - and I am sure he knew exactly what he was doing back then - and how it might change everything - and he enjoyed himself.

I think that Fruit and Ippolit would have to be considered free for all if the competitive aspect of WCCC events should be preserved - not because it is right, just because this can't be avoided anyway ( and this is probably Ed's main point anyway).

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

Re: The near future of computer chess

Post by Don »

kranium wrote:
Don wrote:
Of course I used ideas from available sources, either source code or from this forum or others. Every program author does this.
This is how all human endeavors work and every computer chess program works. It's how it's supposed to be - you build on the works of others because it's just stupid to start from scratch. Surely you don't think that every new chess programmer has to re-invent alpha/beta pruning do you?
Stop being an unreasonable ass and try to understand the difference between natural progress by accumulating knowledge over time and outright code theft.

Don-

if i understand this properly...
others plagiarize (i.e. Vas., Houdart, Ippolit, myself, etc., etc.), but what you do, or simply the manner in which you do it, is ok...?
Haven't you read anything I wrote? Houdart plagiarized, I don't, Stockfish doesn't, Shredder doesn't and most other programs do not.

Take a look at this and see if you can get a more accurate understand of what plagiarism is at it applies to software copyrights:

http://chessprogramming.wikispaces.com/Scaramanga


my question is:
is this because you re-write the ideas sufficiently where they can no longer possibly be considered plagiarized, or it there another technique/secret?
(as Ed so aptly pointed out...formal definitions of plagiarism refer to taking of ideas as well)
The first time I wrapped my head around alpha/beta pruning it took a little time for me to get it in my head. I worked out the details of the implementation by myself and I did not have to copy code to do it.

I don't know what you mean by "re-writing" the ideas. I don't re-write ideas I implement them. I think your cognitive model for building a chess program is that you copy code and then change it around - but that is not how I do it. Maybe you do it that way and think that everyone else does that too. Ed implies that we are all dishonest but gets offended if we say anything harsh about him so maybe Ed thinks that is how all the top programmer build chess programs.

You can often find the same BUGS in code that is plagiarized or the same logical inconsistencies and you see strong evidence that the "author" didn't even understand what he was copying.

Another thing you will find in original code is that the ideas used are rarely exactly as in the article where the idea was posted. One example is LMR, an idea that we did not invent ourselves but learned from a web site article called "An Introduction to Late Move Reductions" by Tord Romstad. That was my introduction to LMR. There was some pseudo code there, but it does not resemble anything in any program that I know of. We did not implement LMR anything like as show in the article, and yet it was a great inspiration for us.

To me you and Ed are being completely unreasonable by putting this is the same category as plagiarism and hypocrisy. I guess because we all use LMR we are supposed to lie about the evidence we saw with Rybka.

Another source of inspiration was the wonderful description of how Rebel works by Ed Shroeder. When we get stuck we sometimes look for inspiration there. It turns out that Ed thinks that anyone who uses those ideas must be a hypocrite unless they give him credit for it. Of course Ed doesn't really own those ideas anyway so I'm not sure who to give credit to so that I am not a hypocrite in his eyes.

In general, if we get ideas or inspiration from open source code we will take the time to understand the idea, but the implementation will be our own. It will not involve copying any code. I don't make any attempt to understand the code at a low level anyway, I just want to grok the basic idea. By the way, most of the time the ideas we look at do not work in Komodo anyway. We spend the MAJORITY of the time perusing our own ideas and experiments. You and Ed and others seem to think that modern chess programs are nothing more than Ivanhoe with the code re-arranged and I can imagine that Ed is so out of touch with software development since retiring that he has succumbed to this point of view. Ed, if you are seeing this, we still do in fact think for ourselves and do not need to be spoon-fed code in order to proceed. Engineering has NOT changed since you retired from active computer chess development. It's still hard work and there are no shortcuts.

Do you know what the biggest contribution of these strong open source programs has been? Nothing more than just showing that it can be done. It has very little to do with the handful of tricks contained in the code but like the 4 minute mile someone had to show the world that it was possible. Fruit showed that chess programs should be much stronger than they were previously and people ran with that. That's all I had to know in order to make rapid progress with Komodo. And by the way, I don't claim to be a great original thinker full of extraordinary genius, I am just a common sense engineer and I made no apologies for using alpha/beta pruning just because someone did before me. Like all other program authors we all build on what is in the public domain. Of course to you that means copying source code and you don't even realize there is a difference.

wikipedia:
"Plagiarism is defined in dictionaries as the "wrongful appropriation," "close imitation," or "purloining and publication" of another author's "language, thoughts, ideas, or expressions," and the representation of them as one's own original work"
Why do you quote what the wiki says on this? It only hurts your case because it criminalizes Houdart and your other hero's and exonerates the authors of original programs.

It has occurred to me that part of the problem is that people today have almost no issue with stealing software. Over the years a number of people have offered to give me free versions of expensive software, fully expecting that I would be just fine with it, or willing to point me to pirate sites to get the software for myself. It's like cheating on your taxes, more and more people just don't see a problem with it and are even bragging about it.

How do you stand on this issue? I don't care if someone like Ed decided to give away his secrets and in fact I applaud him for it - it's a wonderful gesture and I thank him for it and I am likely to do the same some day when I retire from computer chess. But the gift has no value if it's used as a club to beat everyone else over the head with because they chose not to do the same. For me there is a little bit of a lack of credibility here because is coming from a completely different place now. It's easy to take the point of view of Robin Hood if you no longer have a vested interest.

PS-
I'm not sure why you must resort to name calling, (i.e. Ed 'an ass'), this is not good in any way shape or form,
he's communicating valid ideas in open discussion, must you insult him...?
Show me where I called Ed an "ass", because I don't think I called him that.

I said something different to Ed and apologized for doing so. So just get over it like I did. He will either forgive me or not and it's none of your business.

finally: is Komodo the only 'clean' top engine, in your opinion?
What kind of stupid question is that?

Norm
User avatar
hgm
Posts: 27819
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: The near future of computer chess

Post by hgm »

Rebel wrote:
hgm wrote: Well, that is what I mean. Of course I would not enter the 100 engines under my own name. I have many nephews... :wink:
One phone call, a couple of technical questions will do.

Look... this kind of things are not the problem. Chess programmers are usually not the dumbest people on the planet, there is enough intelligence out there not to solve the clone problem once and for all. The problem is the acknowledgement there is a problem and the will to solve it.
So now you want to have the rules dictate that the participants must first pass some exam before they are allowed to register? That doesn't sound very practical to me. What level of knowledge would you require exactly? What if the participant bluntly says: "well, I did not bother with alpha-beta and all that technical stuff that would just slow me down, and only focused on the important part, like the author name..." And then demonstrates to you how adept he is with a hex editor...

It seems you monumentally underestimate the difficulty of making watertight rules. In practice it is far more difficult to make rules, than it is to find loopholes to circumvent them. And like you say, Chess programmers are pretty clever guys....
Milos
Posts: 4190
Joined: Wed Nov 25, 2009 1:47 am

Re: The near future of computer chess

Post by Milos »

Don wrote:Of course I used ideas from available sources, either source code or from this forum or others. Every program author does this.

This is how all human endeavors work and every computer chess program works. It's how it's supposed to be - you build on the works of others because it's just stupid to start from scratch.
You are a hypocrite. Plain and simple.
For everyone that doesn't know why here is a simple thought experiment in a form of a question to answer:

If Ippolit sources never appeared what would have been today's rating of Komodo?

It's a very simple question. Don is experienced in disassembling (to use his own expression) "like my grandmother", so he would definitively not be able to extract the ideas of Rybka for himself.

Now he is using ideas from a program he personally believes is a plagiarism of another program he already condemned as a plagiarism of a third program. And all his talented programming skills and year of experience would mean shit in terms of strength of his beloved Komodo if there were no sources of Ippolit available.
And he sees no problem with that. Well it's time to call it by its real name and Ed actually did it. It's called HYPOCRISY.
Terry McCracken
Posts: 16465
Joined: Wed Aug 01, 2007 4:16 am
Location: Canada

Re: The near future of computer chess

Post by Terry McCracken »

Milos wrote:
Don wrote:Of course I used ideas from available sources, either source code or from this forum or others. Every program author does this.

This is how all human endeavors work and every computer chess program works. It's how it's supposed to be - you build on the works of others because it's just stupid to start from scratch.
You are a hypocrite. Plain and simple.
For everyone that doesn't know why here is a simple thought experiment in a form of a question to answer:

If Ippolit sources never appeared what would have been today's rating of Komodo?

It's a very simple question. Don is experienced in disassembling (to use his own expression) "like my grandmother", so he would definitively not be able to extract the ideas of Rybka for himself.

Now he is using ideas from a program he personally believes is a plagiarism of another program he already condemned as a plagiarism of a third program. And all his talented programming skills and year of experience would mean shit in terms of strength of his beloved Komodo if there were no sources of Ippolit available.
And he sees no problem with that. Well it's time to call it by its real name and Ed actually did it. It's called HYPOCRISY.
Is this the Asshole Forum, I thought was reserved for the Immortal Forum?
Terry McCracken
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: The near future of computer chess

Post by wgarvin »

Milos wrote:
Don wrote:Of course I used ideas from available sources, either source code or from this forum or others. Every program author does this.

This is how all human endeavors work and every computer chess program works. It's how it's supposed to be - you build on the works of others because it's just stupid to start from scratch.
You are a hypocrite. Plain and simple.
For everyone that doesn't know why here is a simple thought experiment in a form of a question to answer:

If Ippolit sources never appeared what would have been today's rating of Komodo?

It's a very simple question. Don is experienced in disassembling (to use his own expression) "like my grandmother", so he would definitively not be able to extract the ideas of Rybka for himself.

Now he is using ideas from a program he personally believes is a plagiarism of another program he already condemned as a plagiarism of a third program. And all his talented programming skills and year of experience would mean shit in terms of strength of his beloved Komodo if there were no sources of Ippolit available.
And he sees no problem with that. Well it's time to call it by its real name and Ed actually did it. It's called HYPOCRISY.
Don's no hypocrite. He's consistently stated the same position, over and over:

Using ideas from other programs is what everyone does, and is fine.
Wholesale copying of other people's code is plagarism and is not fine.

The boundary between the two might be a bit mushy, but cases like Rybka and Houdini do not appear to be anywhere near the mushy area.

I don't see why some people find this so hard to understand. It's not like its a difficult concept. "Original" means you wrote it yourself, without copying other people's code. It doesn't mean you can't use ideas that came from other people or were previously used in other programs. (If you copy other people's code, the result is a derivative--a fancy word that means "not original").