Gaviota 0.74 released

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

Moderators: hgm, Rebel, chrisw

User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Gaviota 0.74 released

Post by michiguel »

Dann Corbit wrote:
michiguel wrote:
AdminX wrote:
michiguel wrote:Finally, after a long time... version 0.74 for Win32 (other versions later, particularly for Linux).

http://sites.google.com/site/gaviotachessengine/

I may move the site to google sites from the previous one, but I am not sure yet. Do not cast in stone the links.

What is new:
A gazillion changes since 0.33 (6.5 years ago).
It is SMP
It has its own tablebases. It come with 3-pc tbs as an example.
You can generate 4 or 5-pc after opening the engine in console mode and typing tbgen 4 or tbgen 5 (the last one may take a couple of days on a fast dual).
I comes with a new book (~10 Mb), but it still can use the old one.
It may be 200 or 250 elo points stronger than the previous version and apparently has a very agressive style of play.
It supports all the new winboard features, AFAIK.
The documentation is non-existent. I will try to put something decent later.

Regards,
Miguel
Hi Miguel,

Will there be a 64-bit version, or is there no extra benefit to be gained by this?

Thanks
64-bit Linux is at least 30% faster that 32-bits if we compare Intel compiler or 50% if we compare gcc (because gcc32 is not good). Gaviota was always a bitboard engine.

I do not have a 64 bit windows compiler, but I was planning to bug Dann Corbit in private to compile it for me. In the past he helped me, so he may do that again. I am hereby bugging him in public. :-)
I used Microsoft Visual studio express 2008, so port it to a Win64 should be one click away, considering that it compiles in 32 and 64 bit Linux without problems.

Miguel
I already sent you an email asking if you want me to build it for you.

I can also build binaries for any other platform you might need (we have everything here).
Fantastic. I got your email and I will contact you.

Miguel
User avatar
Matthias Gemuh
Posts: 3245
Joined: Thu Mar 09, 2006 9:10 am

Re: Gaviota 0.74 released

Post by Matthias Gemuh »

michiguel wrote:
Some GUIs are not compliant by design according to their authors (ChessGUI, for instance).

...

;
; Some GUIs (Arena, ChessGUI etc.) are NOT fully SAN compliant
; and send wrong SAN moves. ...
;-------------------------------------------------------------------


Miguel

Hi Miguel,

Why does Gaviota hate ChessGUI so much ?
Gaviota 0.74 crashed in each of its first 2 games in ChessGUI 0.167, so I stopped the test. SAN was off.

Matthias.
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Gaviota 0.74 released

Post by michiguel »

Matthias Gemuh wrote:
michiguel wrote:
Some GUIs are not compliant by design according to their authors (ChessGUI, for instance).

...

;
; Some GUIs (Arena, ChessGUI etc.) are NOT fully SAN compliant
; and send wrong SAN moves. ...
;-------------------------------------------------------------------


Miguel

Hi Miguel,

Why does Gaviota hate ChessGUI so much ?
Gaviota 0.74 crashed in each of its first 2 games in ChessGUI 0.167, so I stopped the test. SAN was off.

Matthias.
I will certainly try to find out. Love and hate sometimes are indistinguishable :-) and maybe ChessGUI hates gaviota. Do you have the log files?

Miguel
User avatar
beachknight
Posts: 3533
Joined: Tue Jan 09, 2007 8:33 pm
Location: Antalya, Turkey

Re: Gaviota 0.74 released

Post by beachknight »

michiguel wrote:Finally, after a long time... version 0.74 for Win32 (other versions later, particularly for Linux).

http://sites.google.com/site/gaviotachessengine/

I may move the site to google sites from the previous one, but I am not sure yet. Do not cast in stone the links.

What is new:
A gazillion changes since 0.33 (6.5 years ago).
It is SMP
It has its own tablebases. It come with 3-pc tbs as an example.
You can generate 4 or 5-pc after opening the engine in console mode and typing tbgen 4 or tbgen 5 (the last one may take a couple of days on a fast dual).
I comes with a new book (~10 Mb), but it still can use the old one.
It may be 200 or 250 elo points stronger than the previous version and apparently has a very agressive style of play.
It supports all the new winboard features, AFAIK.
The documentation is non-existent. I will try to put something decent later.

Regards,
Miguel
Hi,

I am getting "CGI Error
Binary files retrieved through this service may not exceed 4MB"

Is there an alternate rapidshare link?

Best,
hi, merhaba, hallo HT
jpqy
Posts: 550
Joined: Thu Apr 24, 2008 9:31 am
Location: Belgium

Re: Gaviota 0.74 released

Post by jpqy »

Thanks Miguel for your engine!

I run your engine on a core i7 920 @3.87Ghz HT OFF
When i set to 4cores i get max. around 72% cpu use in Arena 2.0.1
So i think your SMP is not optimal yet!
Hope you can fix this also later!

Kind regards,
Jean-Paul.
User avatar
Matthias Gemuh
Posts: 3245
Joined: Thu Mar 09, 2006 9:10 am

Re: Gaviota 0.74 released

Post by Matthias Gemuh »

michiguel wrote:
I will certainly try to find out. Love and hate sometimes are indistinguishable :-) and maybe ChessGUI hates gaviota. Do you have the log files?

Miguel
Solution found !

With "log = off", all 4 games crashed.
With "log = on", all 4 games get played.




;=========================
; parameters for Gaviota
;=========================

;-------------------------------------------------------
; name that Winboard will use for saving games into pgn
;-------------------------------------------------------

name = "Gaviota 0.74"

;------------------------------------------------------------
; hashmem --> is hash tables (transposition, refutation).
; ref_table --> is a special table for refutation moves,
; keep it smaller than hashmem,
; probably half is best
; learn_table --> holds information from learn.epd
; do not set it bigger than 1 M
; pawn_table --> information about pawn structure.
; keep it small, 1-4 M
; M is Megabytes, k kilobytes , b bytes
;-------------------------------------------------------------

hashmem = 16 M
ref_table = 32 M
learn_table = 1 M
pawn_table = 4 M

;----------------------------------------------
; log info. max_logs is number of files kept.
; After that number is reached, it will start
; to overwrite them
;----------------------------------------------

log = on
max_logs = 2

;-----------------------------------------------------------------------
; ponder can have three values, 0, 1, or 2 (recommended).

; 2: Pondering will be determined by the interface (winboard, etc.)

; 1: Ponder is on, hardwired, no matter what the interface wants

; 0: Ponder is off, hardwired, won't turn on even if the interface wants
;-----------------------------------------------------------------------

ponder = 2

;-------------
; book info
;-------------

book = on
book_file = "cleanbook.bin"
book_learn = off

;------------------------------------------------
; learning of positions when is out of book.
; learn = on --> will save what just learned,
; use_learned = on --> will use any previous stored
; information in the "learn_file"
; learn_file = "/properpath/whatevername.epd"
;------------------------------------------------

learn = off
use_learned = on
learn_file = "learn.epd"

;-------------------------------------------------------------------
; won't show every output detail in the first n plies of the search
;-------------------------------------------------------------------

quiet_level = 6

;---------------------------------------------------------------------------
; logs when the node/sec is lower than "alert_nps"
; it is useful to detect when the program slowed down because of the OS etc.
;---------------------------------------------------------------------------

alert_nps = 10000

;-----------------------------------------------------------------
; Runs all the commands included in the file after initialization
; and before accepting commands from the user.
; Delete the command if you do not want to have an initial script
; or comment it out placing a semicolon before.
;-----------------------------------------------------------------

;script_file = "input.txt"



;-----------------------------
; Resign in hopeless position?
;-----------------------------

resign_mode = on

;------------------------------------------------------
; Should I kibitz info on computer tournaments online?
;------------------------------------------------------

kibitz = off

;---------------------------------

;

; Gaviota Tablebase parameters

;

;---------------------------------



use_tablebase = on

tb_probing_depth = 2

tb_pieces_used = 3

tb_cache = on

tb_cache_size = 16 M

tb_cache_slot_size = 8 k



tb_path_1 = "gtb"
tb_path_2 = ""

tb_path_3 = ""

tb_path_4 = ""



;-------------------------------------------------------------------

; SAN support (Standard Algebraic Notation) (e.g. Nf3)

; on ==> will try to send and accept SAN moves if GUI supports it

; off ==> will use default coordinate notation (e.g. g1f3)

;

; Some GUIs (Arena, ChessGUI etc.) are NOT fully SAN compliant

; and send wrong SAN moves. Use SAN = off with those GUIs

;-------------------------------------------------------------------



SAN = off



;------------------------------------------------------------
; PARALLEL SEARCH
; cores --> CPU Usage

; Gaviota will launch up a number of threads

; equal to this value
; Supported up to 16 cores
;------------------------------------------------------------



cores = 1


;-------
; end!
;-------
My engine was quite strong till I added knowledge to it.
http://www.chess.hylogic.de
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Gaviota 0.74 released

Post by michiguel »

Matthias Gemuh wrote:
michiguel wrote:
I will certainly try to find out. Love and hate sometimes are indistinguishable :-) and maybe ChessGUI hates gaviota. Do you have the log files?

Miguel
Solution found !

With "log = off", all 4 games crashed.
With "log = on", all 4 games get played.
Gee...

I "stress" tested Gaviota in many ways but... I have not run it with log off in years, probably. Embarrasing, but it is going to be easy to fix. I generally have if (LOG_ON) fprintf(stdlog, "whatever");
I must have forgotten to include "if (LOG_ON)" somewhere...

Thanks for catching it.

Miguel
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Gaviota 0.74 released

Post by michiguel »

beachknight wrote:
michiguel wrote:Finally, after a long time... version 0.74 for Win32 (other versions later, particularly for Linux).

http://sites.google.com/site/gaviotachessengine/

I may move the site to google sites from the previous one, but I am not sure yet. Do not cast in stone the links.

What is new:
A gazillion changes since 0.33 (6.5 years ago).
It is SMP
It has its own tablebases. It come with 3-pc tbs as an example.
You can generate 4 or 5-pc after opening the engine in console mode and typing tbgen 4 or tbgen 5 (the last one may take a couple of days on a fast dual).
I comes with a new book (~10 Mb), but it still can use the old one.
It may be 200 or 250 elo points stronger than the previous version and apparently has a very agressive style of play.
It supports all the new winboard features, AFAIK.
The documentation is non-existent. I will try to put something decent later.

Regards,
Miguel
Hi,

I am getting "CGI Error
Binary files retrieved through this service may not exceed 4MB"

Is there an alternate rapidshare link?

Best,
I will split the files. The problem is that the book is too big.

Miguel
Will Singleton
Posts: 128
Joined: Thu Mar 09, 2006 5:14 pm
Location: Los Angeles, CA

Re: Gaviota 0.74 released

Post by Will Singleton »

Miguel,

I had the crashes as well. From a 20 game quick match, it looks like Gaviota is now stronger than Amateur, good work. That looks like, from Leo's rating list, an improvement of perhaps 400 elo or more. Is that right? What was the main reason for the improvement?

Also, I noticed in your ini file you say to keep the ref table smaller than the main hash, yet the default is larger.

Will
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

Re: Gaviota 0.74 released

Post by michiguel »

Will Singleton wrote:Miguel,

I had the crashes as well.
because of log = off, right?

From a 20 game quick match, it looks like Gaviota is now stronger than Amateur, good work. That looks like, from Leo's rating list, an improvement of perhaps 400 elo or more. Is that right? What was the main reason for the improvement?
My estimation is ~250 points at fast controls.
There has been too many changes since 2006, when I retook the project from 2003, to point specific items. However, the main reason for being stronger must be eval(). The search has not been touched much, except move ordering, which is much better now.
I optimized Qsearch limiting quite a bit. That reduced a lot of nodes but I did not tested how much elo this improved. I started to test more accurately last year.
I know that there were big jumps when I fixed passed pawn evaluation (just removing the old code gave me ~50 points!!), introducing king safety (it had almost none), and tuning the parameters in general (I devised an automatic procedure as I mentioned before in this forum).

Also, I noticed in your ini file you say to keep the ref table smaller than the main hash, yet the default is larger.
I have to test this accurately. Long time ago I thought the ref table should be smaller but a month ago I had a hunch that being bigger could be better. I forgot to change the instructions.
The ref table stores the moves that were erased from the typical hashtable. The idea is that I can store only the move with a shorter hash signature. In that way, I can store more moves per memory than the transposition table.

Miguel

Will