Mussaurus 0.1-prealpha - a poor man's Vice

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

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
tmokonen
Posts: 1037
Joined: Sun Mar 12, 2006 5:46 pm
Location: Vancouver

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by tmokonen » Sun Dec 01, 2019 5:23 am

That's too bad. I enjoyed trying out your engine.

shinkarom
Posts: 18
Joined: Tue Nov 19, 2019 12:26 pm
Full name: Roman Shynkarenko

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by shinkarom » Sun Dec 01, 2019 8:43 am

I enjoyed it right up till the point where slowly moving towards bitboards didn't make the engine faster, but slower. Up till the point where the code became more and mroe like spaghetti with little understanding of how to untangle it. Till it started playing chess way better than me. (A question: should a chess programmer play good chess or it's not obligatory? Because when I create an engine while losing to the weakest engines myself I feel even more like an impostor.)
tmokonen, I need regular feedback, because, as they say "No good review is bad review in itself", and "No good review = why flood the forum with low quality stuff when there are better offers by better programmers to get people's attention".

User avatar
Ovyron
Posts: 2815
Joined: Tue Jul 03, 2007 2:30 am

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by Ovyron » Mon Dec 02, 2019 1:54 am

shinkarom wrote:
Sun Dec 01, 2019 8:43 am
A question: should a chess programmer play good chess or it's not obligatory? Because when I create an engine while losing to the weakest engines myself I feel even more like an impostor.
Nah, the top chess programmers weren't very good at chess. They were decent, but very early on the development stage the engine becomes stronger than you and there's no turning back. Actually, those people didn't play against their engines at all, to test they played against older versions or against other engines.

If you care about elo (and that's only a factor) I'd recommend you set your goal for your engine to beat some engine of someone else that it can't beat currently, and after you succeed you move to another one. People like doing this because it provides a sense of progress, if this is what you're after you can get a lot as Mussaurus goes up in the rankings.
shinkarom wrote:
Sun Dec 01, 2019 8:43 am
I need regular feedback
So here's a problem. Chess programming is mostly a solitary exercise, the most feedback you can expect to get is people that test your engine and tell you how's it doing against the group they test it against, and major bugs that don't let them use the engine properly (like crashes or losing on time.)

But you'd do it because it's fun. Most people that don't have fun anymore just ditch their code and start from scratch, and surprising get to where they were before in a much shorter time thanks to all the experience they gained on their first attempt. Some people get addicted to this, and rewrite their engines from scratch several times.

So it's up to you where you wanna go, but of course if none of the possible paths to continue sound appealing, quitting is an option.

Richard Allbert
Posts: 770
Joined: Wed Jul 19, 2006 7:58 am

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by Richard Allbert » Mon Dec 02, 2019 7:32 pm

Guenther wrote:
Tue Nov 26, 2019 2:17 pm
Richard, did you just reveal yourself as the (unknown) author of Vice, or am I just confused? :)
probably. :shock:

Richard Allbert
Posts: 770
Joined: Wed Jul 19, 2006 7:58 am

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by Richard Allbert » Mon Dec 02, 2019 7:37 pm

shinkarom wrote:
Sun Dec 01, 2019 8:43 am
** snipped **
Don't give up with it. There's no need to pressure yourself, no one will laugh, point the finger or anything. In fact, this community is the opposite - it's very helpful, testers and programmers alike.

However, do make sure you take advice on board - and that usually starts with making your program bug free - starting with perft passing many positions and moving on from there. Next, take the advice people on here offer, it's invaluable, and don't take criticism personally.

I've written lots and lots of apps (with bad code) over the years, and the chess programs remain the highlight. I still have one playing on FICS.

shinkarom
Posts: 18
Joined: Tue Nov 19, 2019 12:26 pm
Full name: Roman Shynkarenko

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by shinkarom » Tue Dec 03, 2019 9:50 am

If a man hasn't earned anything (like, a nice round zero) in 28-and-a-half years, and the cost of living steadily rises, and the quantity of software that works on 32 bit dwindles with every week, and health conditions preclude him from doing much, then by Maslow's hierarchy of needs the enjoyment of anything else is bound to drop.
About laughing and pointing fingers: check out how one community discouraged me from creating conlangs (which I enjoyed until I understood that nobody needs a n00b to waste their time and attention). http://www.incatena.org/viewtopic.php?f=4&t=37442 http://www.incatena.org/viewtopic.php?f=4&t=41698 http://www.incatena.org/viewtopic.php?f=7&t=37304 After that I realized the need for full disclosure, so that people don't make too good impressions.
Over there, the advice people offered amounted to "You suck, so shut up, know your place and contact us only when you're good enough", while I expected some nudges to the right direction, taking my n00b status into account. And yes, the lack of social life made it difficult to communicate.
But to know my plce, I should first know what this place is. That's why the need for constant feedback: to give me the relative standing on the "leaderboard", which is needed to not go above my league. You see why it's hard to not take criticism personally: it may offer information on my personal position.
Mussaurus was an endeavor to leave some legacy, but you can't be accepted as equal without becoming an equal first, can you?

User avatar
Ovyron
Posts: 2815
Joined: Tue Jul 03, 2007 2:30 am

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by Ovyron » Wed Dec 04, 2019 2:38 am

Well, this community is a mixed bag, there will be people that will give useful feedback and encourage you to continue, others will ignore the project (because they're only interested in chess engines that are at the top, or ones with interesting features like style tweaking), others can attack you or imply that, indeed, it'd be better for everyone if you dedicated your time to something else.

The question you have to ask is if you'd be happy if at the end of the show there's only a single person clapping, and if it's worthwhile to do it just for them. If it is, more will come (mainly, people that like seeing progress, wanting to see how Mussaurus rises to the top, and it's not necessarily about elo.)

Note you will get most feedback from engine chess enthusiasts that aren't programmers and wouldn't know how to make an engine themselves, because most chess engine testers dedicate to testing what exists, not to create more. Coming from that angle you have to realize that, if your engine is already able to play chess, then you're miles ahead of most people around here, including "programmers" that just change a few lines of code from open source software Stockfish, and make their "releases" just like others that have built everything from scratch.

It's easy to stand on the shoulders of giants, but not to maintain an engine made from the bottom up, no matter its status.

Have you checked what is the lowest Stockfish depth that Mussaurus can beat? (Stockfish being limited in Depth while Muss plays normally) Perhaps that would be a good starting point to get more feedback, as eventually Mussaurus would be able to overcome it if you keep working on it, and it would allow you to show some of Muss's games so we see how it plays. This isn't just about the engine's code.

shinkarom
Posts: 18
Joined: Tue Nov 19, 2019 12:26 pm
Full name: Roman Shynkarenko

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by shinkarom » Wed Dec 04, 2019 8:54 am

I know you do like style tweaking. I like engines with style too. Losing to Rodent on depth 1 doesn't hinder my appreciation of it. And Zappa Mexico Dissident Aggressor is a wild beast from nightmares. Reminds me of AI War Fleet Command.
Well, Mussaurus is already gone, and there is still much to learn. For example, Brutus dedicates one unit just for sliding move generation.
My "racehorse" is performance. It is the main thing that I like to optimize. Stockfish (or even Amoeba, which is written in D) is able to look 13 plys ahead in the time my dinosaur can see only 7. Of course, they are multi-threaded, which I now consider obligatory, because it promises more speed.
One reason I got frustrated with my engine is the only thing I used it for was 1+0 with Nero. That gets boring very fast. Maybe next time there will be more diverse rogues gallery.
If only tmokonen's post about enjoying playing with my engine came sooner, then I wouldn't write off my work as fruitless.
By the way, how's my English (the only thing I got complimented upon), and what still needs work?

User avatar
Ovyron
Posts: 2815
Joined: Tue Jul 03, 2007 2:30 am

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by Ovyron » Wed Dec 04, 2019 10:51 am

shinkarom wrote:
Wed Dec 04, 2019 8:54 am
If only tmokonen's post about enjoying playing with my engine came sooner, then I wouldn't write off my work as fruitless.
Just because something you do doesn't produce fast results doesn't mean it'll never will. It's like a seed, you plant it and let it do its job, you don't destroy it because nothing came out of the ground as fast as you hoped. Perhaps if you had kept working on it, one year from now you'd have gotten 100 users like tmokonen that enjoyed using your engine and gave you the feedback you wanted, but I guess we'll never know now, will we?
shinkarom wrote:
Wed Dec 04, 2019 8:54 am
By the way, how's my English (the only thing I got complimented upon), and what still needs work?
As someone that spent several years on the other side of the fence worrying about it, the best advice I can give you is to never ask people how's your english. When I was reading your messages it looked fine to me because I was understanding what I was reading, after your question I went back and it suddenly looked grammatically weird as if by magic. You'll improve it naturally with experience, as misunderstandings arise, or people ask for clarification. Otherwise, conscious effort to check what you should be typing or not gets in the way of natural flow. Just go to old messages you have written and if you can still tell what you were talking about, they're fine.

shinkarom
Posts: 18
Joined: Tue Nov 19, 2019 12:26 pm
Full name: Roman Shynkarenko

Re: Mussaurus 0.1-prealpha - a poor man's Vice

Post by shinkarom » Wed Dec 04, 2019 12:54 pm

But they, like tmokonen, would tell me it only after frustrated deletion of the project.
The thing is, without energy giving medicine (I can relax my English a little now that nobody expects much) any long term project will be abandoned at some point. Right now the stamina level is so low reading is the only viable activity. Debugging and runing test games to see if something has broken not so much. And due to aforementioned lack of any lifetime merit the gratification better be instant or it's unlikely ever to happen. (The thread has long ago stopped being about chess programming and became an unpaid psychoterapy session). I'd deleted CheeseForth, the Forth implementation I was creating because the thought of the need for constant maintenance did hurt.
I see no methods of earning money that would be possible with no skills and with sending money to Ukraine. Well, there's my English-Russian translation gig on Fiverr, but it's untested and I won't know the quality of my work until somebody buys it, and given Fiverr is not lacking for professional translators the chances are similar to my chances of competing in TCEC. { I know,I know. But this is not for self-promotion. } This is to explain why I can't wait for the seed to grow.

Post Reply