I'm a little confused about what he's been accused of here. Are they saying he cut and pasted code from other chess bots? Or that he examined other chess bots and used the ideas they implemented? Or...? What exactly do they mean by plagiarism?
The attached document indicates that Rybka contains the exact logic that is supposedly uniquely implemented in either Crafty or Fruit. These are not standard algorithms, and the likelihood of a closed implementation of a chess engine exactly matching the logic of an open sourced version on a number of unusual algorithms cannot be down to pure coincidence.
I guess the developer behind Rybka studied the code behind both Crafty and Fruit, and elected to use pieces of code from them, but didn't acknowledge/give credit for those pieces of code.
One of the example pieces of code is a hack to avoid enpassant specifically in a King and pawn versus a King and pawn endgame - something rather unusual considering the same issue occurs if either/both sides have more than 1 pawn. Fruit's approach was just to treat the KPvKP, and so to did Rybkas.
Again, the algorithms documeted were based around unique approaches to evaluating various facets of evaluating the score of a position, not something as simple as "can the White king castle in this position". So they don't make a massive difference in playing strength, which suggests more strongly that there's been some uncredited copying going on.
Rybka has been the strongest rated chess engine for a few years now. Granted that the developer has found definite improvements over the other chess engines out there. But, for the purposes of World Computer Chess Champion, the developer must own the program he runs (or document/credit the sections of the code he doesn't own)
Definitely have a look through the evidence. It's quite surprising how detailed it is. Comparing Crafty/Fruit source code to a decompiled Rybka codebase and looking at specific unusual engine-specific edge-cases and exceptions.
Comments
I'm a little confused about what he's been accused of here. Are they saying he cut and pasted code from other chess bots? Or that he examined other chess bots and used the ideas they implemented? Or...? What exactly do they mean by plagiarism?
The attached document indicates that Rybka contains the exact logic that is supposedly uniquely implemented in either Crafty or Fruit. These are not standard algorithms, and the likelihood of a closed implementation of a chess engine exactly matching the logic of an open sourced version on a number of unusual algorithms cannot be down to pure coincidence.
I guess the developer behind Rybka studied the code behind both Crafty and Fruit, and elected to use pieces of code from them, but didn't acknowledge/give credit for those pieces of code.
One of the example pieces of code is a hack to avoid enpassant specifically in a King and pawn versus a King and pawn endgame - something rather unusual considering the same issue occurs if either/both sides have more than 1 pawn. Fruit's approach was just to treat the KPvKP, and so to did Rybkas.
Again, the algorithms documeted were based around unique approaches to evaluating various facets of evaluating the score of a position, not something as simple as "can the White king castle in this position". So they don't make a massive difference in playing strength, which suggests more strongly that there's been some uncredited copying going on.
Rybka has been the strongest rated chess engine for a few years now. Granted that the developer has found definite improvements over the other chess engines out there. But, for the purposes of World Computer Chess Champion, the developer must own the program he runs (or document/credit the sections of the code he doesn't own)
Definitely have a look through the evidence. It's quite surprising how detailed it is. Comparing Crafty/Fruit source code to a decompiled Rybka codebase and looking at specific unusual engine-specific edge-cases and exceptions.
Essentially direct source code copying.