Now
this is very interesting as I was beginning to question the integrity of those whom I have long respected in the computer chess community given previous weird stance in light of overwhelming evidence to the contrary:
Don Dailey wrote:There are several issue concerning various programs that have raised a huge amount of controversy and have generated a lot of different viewpoints.
I would like to try to sort our the issues and attempt to bring a little clarity to the matter, and not in a ad-hoc manner but by just trying to provide a little direction to this dicussion with your help. I'm going to try to refrain from subjective comments on this particular post although I don't believe it's possible for anyone to be 100% objective about anything.
I think there are 2 major issues that we should consider separately, even though there may be some degree of overlap. One of them is purely legal (what you can legally get away with) and the other is ethical.
The legal issue is separate because it defines what you can get away with. I'm not going to focus on that here, because presumably there is little we can do about that, unless we are directly involved. For example I don't think we need to have a huge discussion about whether Vas violated GPL, and our opinion won't change that anyway. There is strong evidence that he did, therefore I'm not sure discussing it will change that.
From the eithical point of view, I think WE need to decide what is acceptable and what is not. I say WE, as fellow members of the computer chess community. Let's use Ipolitto as a talking point.
I believe there are 3 basic points of view on this that pretty much define how people feel about it.
1. Ippolito is a completely orginal program.
2. Ippolito is heavily based on reverse engineering Rybka 3 and this is wrong.
3. Ippolito is heavily based on reverse enginnering Rybka 3 and so what?
Although I think these represent the major points of view, they are mixed in various degrees. For example you might believe that Ippolito is mostly orginal but with some ideas taken from Rybka 3. And the degree of your belief in the wrongness of this will vary from person to person.
These 3 points of view can be broken down into 2 issues, whether Ippolito is orginal or not. I'm not going to address this here because I want to focus on what I think is the most important issue, the ethics of it.
So let's start with the assumption that we have identified a program that is not a source code clone of something original, but is heavily based on it. Let's also assume there are no legal issues. If there are, that of course is a separate matter with its own considerations.
Is this acceptable? Should we as the computer chess community endorse this behavior, or discourage it?
I think THAT is what we need to decide. We all have our various viewpoints on this which I think should be respected, but I think this is really at the heart of the matter and what we SHOULD be talking about but rarely do.
Hello Don,
Doesn't this argument invalidate the Rybka 4 is different from Rybka 3 is different from Rybka beta argument?
Meaning that if Rybka 1 was poisoned then mere version distance does not allow Rybka 4 to escape scrutiny.
So you would have no problem with this best of engine being represented at various tournaments? That seems difficult to accept if the origin of the engine was unethical. Why would you be alright with that?
Later.
Don Dailey wrote:Yes, Rybka 4 is just a different version of Rybka (or Fruit) and should not be allowed to compete unless the Fruit author gives permission to let Rybka represent it.
In theory Vas could write an entirely new program and in fact I think he has. I can imagine that Vas at some point decided that he needed to diverge from Fruit as quickly as possible and that is what he probably did. He probably blundered by leaving some small bits unchanged, such as the UCI interface parts because presumably that is still identifiable.
However, if Rybka 1 is really a version of Fruit, then it's pretty difficult to accept Rybka 4 as not being so too. So whether it's an acceptable rewrite or not does not matter because he ruined his credibility.
I have in fact written chess programs that had very little in common and shared almost no code, and I don't think anyone would be able to detect similarities unless it was coding style. Nevertheless, I would not be allowed to play both versions, even if I considered them completely different.