Please drop Stockfish

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

Moderators: hgm, Rebel, chrisw

Peter Aloysius
Posts: 57
Joined: Thu Mar 09, 2006 12:53 pm
Location: Surabaya, Indonesia

Re: Please drop Stockfish

Post by Peter Aloysius »

Now let's just forget about those "competitive" stuff.

If you want to LEARN how chess engine works, what method could be better rather than building your own engine from scratch? YES, it would take years. YES, it would take a very hard work, YES, it's might be reinventing the wheel.

But you'll learn much better that way. You'll learn what actually work and what didn't. You'll make mistake and you will learn from that. Something that you cannot get by "improving" already strong engine. You'll learn what actually make a strong engine strong, and a weak engine weak.

And more importantly to computer chess, you can come with your own original idea. If you just improving already strong engine, you'll too affraid to change something that already work great. For me, what you did to Glaurung (and other derivater) is just rename xxx, optimizing xxx, that's hardly called something new.

If you read computer chess forum archive, in the past a lot of interesting idea appear. Botvinnik-Markov extension, some kind extension that related to previous moves, and many others. I have my own original idea too, none of them actually work. But who know, someday, someone will come with very original idea that can easily beat Rybka. Now, every programmer seems to just follow Fruit formula : late move reduction, extension only on PV nodes, etc. That didn't give anything new to computer chess, except a few hundred elo points improvements.

mcostalba wrote:
Peter Aloysius wrote: Now I would like to ask, wouldn't it be more interesting to see a lot of different engines, each with it's unique strength and weakness, each with unique different playing style, each with different original idea, rather than watching a few 3000+ derivatives with very similiar playing style compete each other?
Actually I don't know how to answer this question, I'don't know what is better to SEE, but I'm quite confident on what for me it is better to DO.

Starting a chess engine from scratch is an interesting and attarctive idea:

1) Have your name associate to an original engine

2) See your engine to grow up in elo when you add new features (mostly new for your engine, not for chess software literature)

3) Have the pride to see you engine to compete and win


Perhaps I am a bit strange, but I don't care _ANY_ of the three points above.

I have started with Glaurung just because I wanted to LEARN how a chess engine works. IMHO the best way to learn is to read the source of a well made engine. I modified a bit the source because you learn better if you rewrite (with same functionality), as for school books you learn better if you highlight or add personal notes.

The idea of writing form scratch is not attractive to me because the first two years I will probably pass the time reinventing (actually recopying) the wheel: NULL move, futility, king safety, bitboards, etc. etc. you name them.

After two years I would perhaps start with the novelities I am able to find. For me is more attractive to go hunting for new directions now, and this is possible only if you work above an already exsisting engine and more powerful and high quality is the engine the better.

I understund that people that see this activity in a more competitive way can be upset by a derivative/clone come from nowhere, that's the reason I would prefer Stockfish be dropped. It is not a competitive effort for me. It is a learning effort. On the other side a private engine suffers IMHO two strong weak points:

- Does not have the feedback from peers

- Does not have an independent evaluation/testing


Thanks
Marco
gerold
Posts: 10121
Joined: Thu Mar 09, 2006 12:57 am
Location: van buren,missouri

Re: Please drop Stockfish

Post by gerold »

mcostalba wrote:Disclaimer

I am really new to computer chess, actually I am still outside of computer chess development.

Yes, I have hacked for only a couple of months on a very well tought out engine called Glaurung, but my developments are mostly C++ code related, and it is still very far to be clear if the result is stronger, equal or very possibly weaker then Glaurung.

OSS

Glaurung is released with a GPL licence, as most of open source software out there, but the recent threads on this forum have started to make me think that not all the GPL software is the same. There is some GPL software that is more GPL then other :)

Actually, chess software world seems to have very peculiar aspects that I didn’t found in my previous OSS experience.

The biggets and for me the most clear difference is the lone-development model of chess engines.

In my opinion the real force of OSS is not that everybody can FORK a project and add something new. The biggest power of OSS is that everybody can JOIN a project and add a contribute to THAT project.

Perhaps I didn’t notice but I failed to see chess engine projects where there is a number of active contributors that concurrently (let alone publicly) develop an engine.

I really would like 100 times more to join a possible Glaurung project and send my patches there also anonymously then fork it and build up a new version.

I would think is more effective, as is in others OSS projects: chess software requires a joint effort of different disciplines as chess alghortims experts, code experts, profiler experts, internal daily testers (incredibly important!!!!) and so on. IMHO I would think is very tailored to a developer team more then a lone developer. But I am too new to state it and I agree I cannot be opinionated on this.

But one point on which I have a strong opinion, due to my past experiences in OSS, is that a joint development is surely more fun and more gratifying because is the daily exchange of ideas with your peers that makes OSS attractive to most, me included.

I absolutly don’t care if Stockfish has the rights to join public tests or tornments, I care to have an indipendent and serious test session to state ELO of this engine, after I have these numbers, please drop Stockfish from any pubblic list and test session out there.

I strongly belive OSS is for joining people, not for splitting.


Thanks for your time
Marco
Have dropped the testing of stockfish. Be happy to test another
engine if and when you write one. Thanks,

Best to you,

Gerold.
Gerd Isenberg
Posts: 2250
Joined: Wed Mar 08, 2006 8:47 pm
Location: Hattingen, Germany

Re: Please drop Stockfish

Post by Gerd Isenberg »

Zach Wegner wrote:Hey Marco,

Great post! I too have wondered at the strange nature of the chess engine community. There are some people who are strongly against open source for one reason or another. And there are those who will not play with "clones". I never got this, but I have accepted it. The other thing I have found is that it is very fragmented. I was excited when I learned of the Toga forum, because I thought there might be some effort at unifying the source base. But come to find out, it's anything but. I'd like to contribute more, but I don't really have time...

But anyways, I have had a very positive experience with releasing my engine as GPL. Though I have only gotten a relatively small amount of people interested, I have received a ton of help from them that I probably would not have gotten if my engine was closed source or still private. So I would like to encourage you to keep at it, your efforts are appreciated and they will pay out eventually. There is always use for more organization and cooperation, so it might be a good idea to foster some sort of community approach--request more testers, coders, compilers, etc. One reason I think the Toga forum is so fragmented is that it started when there were already several independent forks, and each developer had their own stake in keeping their fork independent. There was competition instead of cooperation. But you have the opportunity now to start a unified development line. Take control and try to get something started. Who knows if it will work, but the computer chess sure needs it. Just my two cents here...

Zach

I have objections against strong open source chess programs, because it is a competitive field - and it hurts interests of commercial chess programmers, and boosts a general suspicion to new strong closed source engine developers.

To avoid "reenventing the wheel", I suggest a public domain framework with winboard and/or uci support - engines like the CPW-engine without any licence issues - free to use even for commercials if they like. As you know, I like the idea to share ideas and code-snippets, but for the mentioned reason no strong open source programs.

As for the ethics and GPL, I don't like the idea that magic and kindergarten bitboards were used without mentioning any sources - to make such code with hindsight GPL.

Gerd
jswaff

Re: Please drop Stockfish

Post by jswaff »

mcostalba wrote:Disclaimer

I am really new to computer chess, actually I am still outside of computer chess development.
Welcome! I am already reading your post with great interest.

Yes, I have hacked for only a couple of months on a very well tought out engine called Glaurung, but my developments are mostly C++ code related, and it is still very far to be clear if the result is stronger, equal or very possibly weaker then Glaurung.

OSS

Glaurung is released with a GPL licence, as most of open source software out there, but the recent threads on this forum have started to make me think that not all the GPL software is the same. There is some GPL software that is more GPL then other :)

Actually, chess software world seems to have very peculiar aspects that I didn’t found in my previous OSS experience.

The biggets and for me the most clear difference is the lone-development model of chess engines.
Indeed, the computer chess model is different than the way most software is developed. There is a tension, I believe, between the idealistic view of "creating something better for everyone" and the competitive aspect - of achieving "glory" for the author(s). And then there are those who don't seem to be either "idealistic" or "competitive" - they just want a creative outlet.

My own program is GPL'd, though it is quite weak compared to the top of the field, and it's been nearly two years since I've released an update (should change this Spring). Since it is relatively weak I don't worry _too_ much about being ripped off at this point. I've often wondered how I would feel if I were in the shoes of Bob Hyatt, Tord Romstad, Jon Dart, etc. I have great admiration for authors of strong engines that are willing to publish source code, when it can possibly "work against them" as far as the competitive aspect goes.
In my opinion the real force of OSS is not that everybody can FORK a project and add something new. The biggest power of OSS is that everybody can JOIN a project and add a contribute to THAT project.

Perhaps I didn’t notice but I failed to see chess engine projects where there is a number of active contributors that concurrently (let alone publicly) develop an engine.
Most weaker engines (like mine) are lone ranger efforts. Once they become a bit stronger and get some attention it's common for a book author to join the team, people start studying the code and giving feedback, etc. But for many of us, this is just a fun outlet to put some creative energy into. For me (personally), I'd rather be in charge of a weaker program than be co-captain of a stronger one. (Though I would definitely rather be the author of a stronger engine than a weaker one!)
I really would like 100 times more to join a possible Glaurung project and send my patches there also anonymously then fork it and build up a new version.

I would think is more effective, as is in others OSS projects: chess software requires a joint effort of different disciplines as chess alghortims experts, code experts, profiler experts, internal daily testers (incredibly important!!!!) and so on. IMHO I would think is very tailored to a developer team more then a lone developer. But I am too new to state it and I agree I cannot be opinionated on this.

If your goal is to maximize strength, then I agree 100% with your assessment.

But one point on which I have a strong opinion, due to my past experiences in OSS, is that a joint development is surely more fun and more gratifying because is the daily exchange of ideas with your peers that makes OSS attractive to most, me included.

I absolutly don’t care if Stockfish has the rights to join public tests or tornments, I care to have an indipendent and serious test session to state ELO of this engine, after I have these numbers, please drop Stockfish from any pubblic list and test session out there.

I strongly belive OSS is for joining people, not for splitting.
I find your views very interesting. I'm looking forward to your contributions!

Thanks for your time
Marco
kranium
Posts: 2129
Joined: Thu May 29, 2008 10:43 am

Re: Please drop Stockfish

Post by kranium »

Gerd Isenberg wrote: I have objections against strong open source chess programs, because it is a competitive field - and it hurts interests of commercial chess programmers, and boosts a general suspicion to new strong closed source engine developers.
Gerd
Strong open source engines benefit the user:
they get a great engine for free

Strong open source engines provide competition:
they stimulate commercial authors to work harder in order to get an advantage and maintain it...

a hypothetical situation:
if Rybka was only rated 2900...a lot less people would be willing to spend good money on it.
why? because of Toga...just as strong yet free!

just look at Microsoft vs Linux...its the end consumer that benefits!
Gerd Isenberg
Posts: 2250
Joined: Wed Mar 08, 2006 8:47 pm
Location: Hattingen, Germany

Re: Please drop Stockfish

Post by Gerd Isenberg »

kranium wrote:
Gerd Isenberg wrote: I have objections against strong open source chess programs, because it is a competitive field - and it hurts interests of commercial chess programmers, and boosts a general suspicion to new strong closed source engine developers.
Gerd
Strong open source engines benefit the user:
they get a great engine for free

Strong open source engines provide competition:
they stimulate commercial authors to work harder in order to get an advantage and maintain it...

a hypothetical situation:
if Rybka was only rated 2900...a lot less people would be willing to spend good money on it.
why? because of Toga...just as strong yet free!

just look at Microsoft vs Linux...its the end consumer that benefits!
Yes, you made some valid points. The scene already changed enormously. Lot of former programmers retired due to people starting to improve already strong open source engines - not to mention clone issues and commercial interests, since we don't live in an ideal world or cockaigne.

Time may prove me wrong, I stick with my objections against too strong open source chess programs and favor free education rather than free strong open source chess programs and the associated "all for nothing" mentality.

Gerd
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Please drop Stockfish

Post by bob »

mcostalba wrote:Disclaimer

I am really new to computer chess, actually I am still outside of computer chess development.

Yes, I have hacked for only a couple of months on a very well tought out engine called Glaurung, but my developments are mostly C++ code related, and it is still very far to be clear if the result is stronger, equal or very possibly weaker then Glaurung.

OSS

Glaurung is released with a GPL licence, as most of open source software out there, but the recent threads on this forum have started to make me think that not all the GPL software is the same. There is some GPL software that is more GPL then other :)

Actually, chess software world seems to have very peculiar aspects that I didn’t found in my previous OSS experience.

The biggets and for me the most clear difference is the lone-development model of chess engines.

In my opinion the real force of OSS is not that everybody can FORK a project and add something new. The biggest power of OSS is that everybody can JOIN a project and add a contribute to THAT project.

Perhaps I didn’t notice but I failed to see chess engine projects where there is a number of active contributors that concurrently (let alone publicly) develop an engine.

I really would like 100 times more to join a possible Glaurung project and send my patches there also anonymously then fork it and build up a new version.

I would think is more effective, as is in others OSS projects: chess software requires a joint effort of different disciplines as chess alghortims experts, code experts, profiler experts, internal daily testers (incredibly important!!!!) and so on. IMHO I would think is very tailored to a developer team more then a lone developer. But I am too new to state it and I agree I cannot be opinionated on this.

But one point on which I have a strong opinion, due to my past experiences in OSS, is that a joint development is surely more fun and more gratifying because is the daily exchange of ideas with your peers that makes OSS attractive to most, me included.

I absolutly don’t care if Stockfish has the rights to join public tests or tornments, I care to have an indipendent and serious test session to state ELO of this engine, after I have these numbers, please drop Stockfish from any pubblic list and test session out there.

I strongly belive OSS is for joining people, not for splitting.


Thanks for your time
Marco
There are five of us actively working on Crafty. Each in a different state in the US. It can work. It has for us. I'm not a big fan of this "copy and run" type development where every open-source program becomes N different projects. Nothing wrong with doing that, but the "copies" can't participate in chess events, which is as it should be...