Team Tord Jealousy

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Team Tord Jealousy

Post by BubbaTough »

Howdy,

I have to admit extreme jealousy of the fun being had over on the Stockfish team. If there is another author or two that would like to team with me to build a new engine let me know. Here are my dream team characteristics:

Partner A. Coding GURU
1. proven ability to write an engine near LearningLemming strength or above...but with multi-processor support.
2. happy to do the "grunt work" of writing fast efficient support algorithms.
3. Time/Equipment to do some "pre-testing" to make sure Partner B is not inundated with junk.

Partner B. Research/Testing GURU
1. Time/equipment to run lots of test games
2. Enjoys "data diving" to find correlations in large databases of games aka Kaufman's early work.
3. Excellent note taker...logging what is tested in what combinations in an organized way that can be accessed effectively over a long period of time.

Partner C. [SAM - that's me!]
1. Mostly interested in efficient insertion of "chess knowledge"
2. Concentration on interaction between evaluation, search, and time management...a lot of original ideas mostly derived from introspection not other people's code.
3. Time/Equipment to do some "pre-testing" to make sure Partner B is not inundated with junk.

Alas, last time I made a call for teammates there was not much interest :(. And since I have not been very active the last year and a half, I would expect that hasn't changed much. Nevertheless, anyone interested should let me know.

-Sam
Dann Corbit
Posts: 12537
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Team Tord Jealousy

Post by Dann Corbit »

Your code is not publicly available so I do not know if I am interested.
If I were to help you, I would define my own role and do what I pleased.
I have, on occasion, been helpful to other chess programmers.
Michael Sherwin
Posts: 3196
Joined: Fri May 26, 2006 3:00 am
Location: WY, USA
Full name: Michael Sherwin

Re: Team Tord Jealousy

Post by Michael Sherwin »

Hey Sam,

I offered to join up with the author of the 'gang of five' to help him. I was rejected :?: :cry: I don't think that I can handle any more rejection :cry:

But, if I were willing to risk it ... no, no I'm sorry. :cry: Just forget that I even thought of it! :cry:

But, just in case--what do you think that I might do? :D

Well I'm just going to have to say no to you right now! :x

I am very mad that you would set me up this way in the first place. :evil:

You should be banned from this site for even making the offer. :P

Seriously, If there is something that I could contribute I am willing to try. Maybe some out of the box stuff. :lol:
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Re: Team Tord Jealousy

Post by BubbaTough »

Wow .... a record response! Dan and Michael, I am very happy you showed interest! I will contact you via private message to discuss.

Quick note to Michael: Romi has amazing speed...much better than LearningLemming. Perhaps we can talk about move generation and such? I have also always had crazy respect for your original ideas (same with Mark Lefler and Jaap Weidemann who I have spent many pleasant hours on ICC swapping ideas with). I think you would be an asset to any team. I also get the impression the time you have to devote is inconsistent (like mine for at least the next year). We can talk privately.

Quick note to Dan, I would be interested in any role you were interested in. How easy a flexible come'n'go role would be depends on the public/private inclinations of those who want to partner. If I managed to find a team, you would likely be helping whether you wanted to or not because of your fine test sets :). I will likely share my existing codebase for LearningLemming with anyone I ended up teaming with...but I don't expect to use it as the basis of a new joint project. It is super ugly, has known bugs including a major memory leak, and will not be THAT easy to add parallel support for. My main desire for a partner A type is that I think the software engineering and optimization is sub-par in my own work and someone else could do better. The reason for sharing my existing codebase with new partners will be in case it contains anything in it that inspires an idea (LearningLemming is not THAT weak, so it can't be all bad). I don't plan to make the LearningLemming codebase public (mostly from embarrassment) but anyone spending significant time on the new project could have a private copy if it interested them. Whether the new project was private or public would really be up to the the initial team.

-Sam
BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Re: Team Tord Jealousy

Post by BubbaTough »

delete
Michael Sherwin
Posts: 3196
Joined: Fri May 26, 2006 3:00 am
Location: WY, USA
Full name: Michael Sherwin

Re: Team Tord Jealousy

Post by Michael Sherwin »

BubbaTough wrote: Quick note to Michael: Romi has amazing speed...much better than LearningLemming. Perhaps we can talk about move generation and such? I have also always had crazy respect for your original ideas (same with Mark Lefler and Jaap Weidemann who I have spent many pleasant hours on ICC swapping ideas with). I think you would be an asset to any team. I also get the impression the time you have to devote is inconsistent (like mine for at least the next year). We can talk privately.
Thanks! I will make some time to contribute.

I suggest an ultra simple start. Something on the order of TSCP (but, much much better) that is well planned and easily extensible. We can have two versions, one bitboard and the other mailbox (like Tord did with the new Glaurung). Our second goal could be adding MP support while it is in this simple state. etc.

I also suggest that we involve the people in this forum and make it a community project in designing these two base programs. They could be a kind of seed program to get everyone up to par with MP.

However, I am also willing to rough it in a private project if that is what the other team members are interested in.
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 5:18 am

Re: Team Tord Jealousy

Post by BubbaTough »

Michael Sherwin wrote:
BubbaTough wrote: Quick note to Michael: Romi has amazing speed...much better than LearningLemming. Perhaps we can talk about move generation and such? I have also always had crazy respect for your original ideas (same with Mark Lefler and Jaap Weidemann who I have spent many pleasant hours on ICC swapping ideas with). I think you would be an asset to any team. I also get the impression the time you have to devote is inconsistent (like mine for at least the next year). We can talk privately.
Thanks! I will make some time to contribute.

I suggest an ultra simple start. Something on the order of TSCP (but, much much better) that is well planned and easily extensible. We can have two versions, one bitboard and the other mailbox (like Tord did with the new Glaurung). Our second goal could be adding MP support while it is in this simple state. etc.

I also suggest that we involve the people in this forum and make it a community project in designing these two base programs. They could be a kind of seed program to get everyone up to par with MP.

However, I am also willing to rough it in a private project if that is what the other team members are interested in.
I will keep you in the loop via private message Michael. I don't know what form the project will take yet (if any).

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

Re: Team Tord Jealousy

Post by Don »

Dann Corbit wrote:Your code is not publicly available so I do not know if I am interested.
If I were to help you, I would define my own role and do what I pleased.
I have, on occasion, been helpful to other chess programmers.
Dan, do you have your own program? I thought I remembered seeing somewhere you mention it, but I may be remembering something else.

A model that seems to work for chess is to write a reasonably strong program, then let somebody else improve on your code. They will take your code base and produce a stronger program that you could have written by yourself, or they could have written by themselves.

Assuming you don't have highly specialized roles such as book builder or a chess master (who cannot program) it's probably reasonable to let everyone have a crack at the code base, do what they want and then sync up every once in a while by mutual agreement. Or if one of the team guys is a natural (or designated) leader he can make final decisions with constant input and patches from the others.

Linux follows this model to an extent with Linus Torvalds and it seems to work. Of course there are team members with specific pieces of code they are responsible for in this case - but it doesn't always make it into the kernel unless Linux approves.
Dann Corbit
Posts: 12537
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Team Tord Jealousy

Post by Dann Corbit »

Don wrote:
Dann Corbit wrote:Your code is not publicly available so I do not know if I am interested.
If I were to help you, I would define my own role and do what I pleased.
I have, on occasion, been helpful to other chess programmers.
Dan, do you have your own program? I thought I remembered seeing somewhere you mention it, but I may be remembering something else.
I have a program I call 'bean counter'.
I will probably never release it. I tear it down and build it up and rebuild it. I try all kinds of crazy ideas. I went from C to C++ back to C and back to C++. I use database ideas. I use algorithms that other people do not use (for instance, in move ordering for non-root, I use quickselect to collect the top 4 moves into a partition and sort them, and then do not bother sorting any of the others). I have an actual database for opening book.

Because other people show me their source code very often, I sometimes learn things from their programs. For that reason, I think it would be unfair for me to ever release my program. Knowingly or unknowningly, I might be releasing a private idea and I would never want to do that.

A model that seems to work for chess is to write a reasonably strong program, then let somebody else improve on your code. They will take your code base and produce a stronger program that you could have written by yourself, or they could have written by themselves.

Assuming you don't have highly specialized roles such as book builder or a chess master (who cannot program) it's probably reasonable to let everyone have a crack at the code base, do what they want and then sync up every once in a while by mutual agreement. Or if one of the team guys is a natural (or designated) leader he can make final decisions with constant input and patches from the others.

Linux follows this model to an extent with Linus Torvalds and it seems to work. Of course there are team members with specific pieces of code they are responsible for in this case - but it doesn't always make it into the kernel unless Linux approves.
Michael Sherwin
Posts: 3196
Joined: Fri May 26, 2006 3:00 am
Location: WY, USA
Full name: Michael Sherwin

Re: Team Tord Jealousy

Post by Michael Sherwin »

Dann Corbit wrote:
Don wrote:
Dann Corbit wrote:Your code is not publicly available so I do not know if I am interested.
If I were to help you, I would define my own role and do what I pleased.
I have, on occasion, been helpful to other chess programmers.
Dan, do you have your own program? I thought I remembered seeing somewhere you mention it, but I may be remembering something else.
I have a program I call 'bean counter'.
I will probably never release it. I tear it down and build it up and rebuild it. I try all kinds of crazy ideas. I went from C to C++ back to C and back to C++. I use database ideas. I use algorithms that other people do not use (for instance, in move ordering for non-root, I use quickselect to collect the top 4 moves into a partition and sort them, and then do not bother sorting any of the others). I have an actual database for opening book.

Because other people show me their source code very often, I sometimes learn things from their programs. For that reason, I think it would be unfair for me to ever release my program. Knowingly or unknowningly, I might be releasing a private idea and I would never want to do that.

A model that seems to work for chess is to write a reasonably strong program, then let somebody else improve on your code. They will take your code base and produce a stronger program that you could have written by yourself, or they could have written by themselves.

Assuming you don't have highly specialized roles such as book builder or a chess master (who cannot program) it's probably reasonable to let everyone have a crack at the code base, do what they want and then sync up every once in a while by mutual agreement. Or if one of the team guys is a natural (or designated) leader he can make final decisions with constant input and patches from the others.

Linux follows this model to an extent with Linus Torvalds and it seems to work. Of course there are team members with specific pieces of code they are responsible for in this case - but it doesn't always make it into the kernel unless Linux approves.
You have seen many source codes with some of them being private. You have learned many useful private things that could give your engine a big advantage. So, just keep your source private. Put out an engine just for competing on Play Chess. Or write an engine that gives up some strength for a lively sacrificial style with lots of really nice features. Have you seen the code for any commercial engines? Then do not go commercial. As long as someone cannot make the case that you are costing them money because, they showed you their code under special circumstances then their is no moral issue at stake. If your engine is stronger than a private but free engine there is no moral issue. You do not need to be a closet chess programmer. There is a place for you out in the open!
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through