FruitFly 1.1

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

Moderators: Harvey Williamson, Dann Corbit, hgm

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
karger
Posts: 196
Joined: Tue Feb 02, 2010 1:27 am

Re: FruitFly 1.1

Post by karger » Tue Jul 24, 2012 8:32 pm

nice job , aggressive bold moves

ZirconiumX
Posts: 1327
Joined: Sun Jul 17, 2011 9:14 am

Re: FruitFly 1.1

Post by ZirconiumX » Thu Jul 26, 2012 7:27 am

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
Some believe in the almighty dollar.

I believe in the almighty printf statement.

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

Re: FruitFly 1.1

Post by Richard Allbert » Thu Jul 26, 2012 8:37 am

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.

mar
Posts: 2220
Joined: Fri Nov 26, 2010 1:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: FruitFly 1.1

Post by mar » Thu Jul 26, 2012 8:37 am

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".

User avatar
Zlaire
Posts: 62
Joined: Mon Oct 03, 2011 7:40 pm

Re: FruitFly 1.1

Post by Zlaire » Thu Jul 26, 2012 8:38 am

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... :)

ZirconiumX
Posts: 1327
Joined: Sun Jul 17, 2011 9:14 am

Re: FruitFly 1.1

Post by ZirconiumX » Thu Jul 26, 2012 10:31 am

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
Some believe in the almighty dollar.

I believe in the almighty printf statement.

User avatar
pocopito
Posts: 238
Joined: Tue Jul 12, 2011 11:31 am
Contact:

Re: FruitFly 1.1

Post by pocopito » Thu Jul 26, 2012 11:50 am

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
Two first meanings of the dutch word "leren":
1. leren [vc] (learn, larn, acquire) acquire or gain knowledge or skills.
2. leren [v] (teach, learn, instruct) impart skills or knowledge to.

User avatar
Zlaire
Posts: 62
Joined: Mon Oct 03, 2011 7:40 pm

Re: FruitFly 1.1

Post by Zlaire » Thu Jul 26, 2012 12:57 pm

GreKo has really clean code and is in the lower spectra in terms of strength so have some room for improvement.

mar
Posts: 2220
Joined: Fri Nov 26, 2010 1:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: FruitFly 1.1

Post by mar » Thu Jul 26, 2012 1:14 pm

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.

Post Reply