Page 4 of 4

Re: FruitFly 1.1

Posted: Tue Jul 24, 2012 10:32 pm
by karger
nice job , aggressive bold moves

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 9:27 am
by ZirconiumX
I have decided that my next program will be based on Smash. (I still have no idea how the author got it to play chess, for instance it has switch...cases in the search. Huge bottle neck)

It will have a rewritten search and a rewritten eval, at the very least. It has been named Durandal, in honour of the famous sword.

Matthew:out

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 10:37 am
by Richard Allbert
Since when was switch a bottleneck? Crafty has a big switch in MakeMove.

Smash is a really good job imho.
(I still have no idea how the author got it to play chess, for instance it has switch...cases in the search. Huge bottle neck)
Since when are you in a position to criticize the Smash author? It's pretty strong and SMP, which is no easy task.

Agree with Lucas, patience has run out.

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 10:37 am
by mar
ZirconiumX wrote:(I still have no idea how the author got it to play chess, for instance it has switch...cases in the search. Huge bottle neck)
switch/case can be fast, for many elements it's very fast because the compiler generates a jump table. From my experiments some time ago in a specific case switch/case outperformed virtual methods in C++. So I don't see a "huge bottleneck".

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 10:38 am
by Zlaire
ZirconiumX wrote:(I still have no idea how the author got it to play chess, for instance it has switch...cases in the search. Huge bottle neck)
Haven't looked at Smash's code so don't know what switch you're referring to, but e.g. Scorpio has an iterative search rather than recursive (atleast had), that is lots of switches and gotos in the search. In theory it's actually a performance boost, not a bottle neck. If you can do it right that is, makes for completely unreadable code... :)

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 12:31 pm
by ZirconiumX
Richard Allbert wrote:Since when was switch a bottleneck? Crafty has a big switch in MakeMove.
Sorry, I did not know.
Smash is a really good job imho.
It is a technical masterpiece. How it manages to do so, I do not know, because the code is rather hard on the eyes.
(I still have no idea how the author got it to play chess, for instance it has switch...cases in the search. Huge bottle neck)
Since when are you in a position to criticize the Smash author? It's pretty strong and SMP, which is no easy task.
I made my decision based on a) the ease of getting its source, and b) strength.

I take Jabba 1.0 on CCRL 40/40, and Smash 1.0.3.

Jabba 1.0 = 2043 +- 24 Elo = 2019-2067
Smash 1.0.3 = 1938 +- 26 Elo = 1912-1964 Elo

Jabba is stronger.
Agree with Lucas, patience has run out.
Fine. Everyone in the world can be harsh on me.

I mean, it isn't their fault I'm ratty because my mum has cancer.

Matthew:out

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 1:50 pm
by pocopito
Maybe you can give a try to Danasah

https://sites.google.com/site/danasah/last


The code is based on firstchess, an engine you're already familiarized with. On the cons, the comments are written in Spanish, but I guess if you've been able to do some stuff in SF it won't be a problem to you.

Best regards

E Diaz

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 2:57 pm
by Zlaire
GreKo has really clean code and is in the lower spectra in terms of strength so have some room for improvement.

Re: FruitFly 1.1

Posted: Thu Jul 26, 2012 3:14 pm
by mar
Both DanaSah and GreKo are pretty strong engines already. Not much weaker than Fruit 2.1, I would say they would fit within 100 elo.