Interview with Fabio Cavicchio, Delfi's author

March 23rd 2002


We are with Fabio Cavicchio, the author for the chess engine Delfi. First of all thanks for the presence.
Let's strart with a ritual question: how did it come to your mind to write a chess program? Have you been inspired by any engine in particular? Has it been easier or more complicated than what you expected?

The idea has been latent for at least 15 years; when I was a child I used to play chess against the first microcomputers and I have ever desired to create a program.
I have been inspired by the excellent book "I giocatori artificiali" ("artificial players") by P.Ciancarini, and with many Postscript documents avaiable on internet. I used to regularly create many test positions that I let the strongest commercial programs analyze, to have insights about their methods of evaluations and exploration. I believe that the difficulties begin when approaching 2300 ELO.
After the first releases I downloaded the source codes of all the freeware programs existing on internet, following the chess motto that says: "you must know everything of something, and something of everything", but I haven't been inspired by any engine in particular.

In particular I have been tempted by the bitboards implementations, but after having read on CCC that many commercial programs are not bitboard oriented, I held bytes arrays. I believe that with the 32 bit CPU the advantages bitboards can give are completely lost, due to the "broken" handling of 64 bit numbers, that furthermore can't be stored in the registers by compilators, hence causing many loads/stores. Naturally in 2-3 years everything should change, with the new processors.

How did you know about G6? What do you think about it and overall what improvements would you bring to it?

Surfing on the web. G6 is great! I really don't know what could be improved.

Your engine has some particular features, like the complex evaluation function and the possibility to select the strength by the user. This last feature in particular helped consistently the Delfi popularity. Could you tell us something more about these two features and, with regard to the strength regulation, why do you think such a feature has not encountered popularity in the winboard world?


Logo di Delfi

Having various commercial engines, I have ever had the desire to play against them in blitz games at easy level, but in such a case all the programs moved istantaneously "spoiling" the game feeling. Furthermore they simulated the easy levels with a not realistic play, so I decided to do it myself. It can be said that I developed Delfi as my trainer.

Delfi is a relatively young engine, but the improvements have been, and still is, very quick. Could you explain why haven't you been present in the official tournaments so far, beginning with the ones organized by G6 and ending with the CCTs? Are you going to join the Second Italian Championship (CIPS)? And what about the CCT5?

I don't like online tournaments, I consider more important those organized for example by Dijksman or Lyapko, while almost surely Delfi and I will join the second CIPS.
To strengthen Delfi I estabilished one rule: always holding, whatever the price, a speed better than 2/3 of the nodes per second of the best commercial programs. This is the optimization phase. Thereafter I make evaluation funciorn more complicated, thus slowering, until I go under the 2/3 threshold, and so on.


Fabio Cavicchio

With the current growth rate, it's likely that Delfi will become in a short time one of the strongest engines avaiable for free. Do you think you are going into the commercial at that point?

It's possible, but it won't depend only on the playing strength. The transformation in a commercial program requires a time investment that I don't know if I will want to face.

What do you think about the man vs machine matches? Is it still true that computers haven't reached the human level yet?

No, many humans persist in undervaluing programs playing with their own style... losing. I believe that man can still be better when he respects the opponent and plays an "anti-pc" style. This kind of style (strategical, conservative) doesn't fit very well with some players, like the irascible Kasparov. Recently I noticed two GMs who seem to have found the right way (Hubner, Dzindzicashvili).

What would you say to someone who, looking for the first time to an alpha-beta function, considered it interesting?

I started with the pure minmax (!), following the computerchess history, in the pages order of the already quoted book.

To finish, some questions about the player Fabio Cavicchio. Do you join tournaments? Are you classified at national/international level?

I have joined two circles getting the 1st Social Category, but then, due to my laziness, I haven't found motivations to reach a National category.

Did the writing of a chess program help you to improve your way to play? If so, how?

Yes, it can be said that one reason for writing it has been to improve myself. Currently, in some situations where I don't know which plan to follow, I just move like my program would do. Writing the opening book and the endgame schemes I have improved my skill in those phases very much.

What do you think about chess in Italy?

We have to be content with this situation. Luckily many circles are doing much in this sense.

Thanks for your answers and good luck for Delfi.

You're welcome, thank you too.


back to start
Interviews