For those interested, I have released the very first version of my database of chess games, the CGR database! All details here!
1-Mise à jour
Gnochon, c’est parti! Déjà quelques leçons d’apprises!
1-Quand tu pars de rien, sans t’inspirer d’aucun code source des autres, c’est long et compliqué! Tout est à faire et à penser.
2-Les pions vont causer 99% de tes problèmes. Les pions sont tes ennemis!
3-La vie d’un développeur est plus compliquée quand tu désires supporter deux environnements, Squeak et Pharo.
2-Le premier adversaire
Dès que Gnochon sera en mesure de jouer une partie complète, j’ai décidé que le premier programme qu’il affronterait serait Chess, disponible sur SqueakSource et qui tourne sur Squeak! Le projet est situé ici. Ce programme tourne à environ 50000 NPS (nodes per second) sur mon ordinateur. Évidemment, pour le battre je devrai être plus rapide!
Finalement, pour rester dans le thème des échecs, j’ai découvert Lozza, un jeu d’échecs en ligne. Une petite merveille simple et efficace d’un programmeur nommé Colin Jenkins. Il permet même d’analyser des positions à partir de chaînes FEN. Et pour les curieux, la position sur l’échiquier est un problème de mat en 13! Essayez-vous : c’est beaucoup plus facile que c’en a l’air!
Steven J. Edwards passed away in October. Every chess player should be aware of the tremendous efforts this gentleman has done to facilitate his everyday life.
Most chess engine programmers somehow knew the guy or knew about the guy. He was posting daily on TalkChess.com, answering all kinds of questions, from the most simple ones to the extremely technical ones. He was always there to help and make the chess community (especially the chess programming community) a better place.
What most chess players don’t realize is that we now have access to millions of chess games and bigger-than-ever databases and all kinds of tools because of him, mainly because of the format he created for recording and exchanging chess games : the PGN format. He also worked on other chess notation formats but he is mostly known for the PGN format and a few tools he developed for it.
He has published many papers on chess programming and has developed many chess engines.
We will miss you Sir!
Thanks to Twipply, ZirconiumX and JoshS (regulars of ##chessprogramming on IRC), I finally decided to go ahead with my chess engine named Gnochon! At first, development will be slow as I am still working on Freewill and plan on finishing it before mid-November.
In case you asked, Gnochon is a French slang word in Quebec meaning someone *really* stupid!
After a major data loss (I haven’t given up on getting back all my data, mostly code repositories and databases!), I had to start all my pet projects from scratch. Luckily, it’s easier second time around as they say! And, lucky me, I store all my personal stuff on the web! So here’s a list of what’s coming up on this blog.
Even though I had a decent working version of the genetic algorithm program to find the best ruzzle grid (original posts in French here, here and here), I wasn’t satisfied with the code. It slowly evolved from a bunch of code snippets into something I could somehow call a genetic algorithm. Problem was that my solution was tailored for this specific problem only! Since I lost all the Smalltalk code, I redid the whole thing from scratch : better design, simpler API, more flexible framework. I can currently solve a TSP problem, the best ruzzle grid search and a diophantine equation.
I also plan to provide examples of the 8 queens problem, the knapsack problem, a quadratic equation problem, a resource-constrained problem and a simple bit-based example with the GA framework. Besides, the are now more selection operators, more crossover operators, more termination detectors (as well as support for sets of termination criteria!), cleaner code and the list goes on! So I’ll soon publish a GA framework for Pharo.
As most of you know, the Rush fan in me had to pick a project name in some way related to my favorite band! So the framework will be called Freewill, for the lyrics in the song :
Each of us
A cell of awareness
Imperfect and incomplete
With uncertain ends
On a fortune hunt that’s far too fleet
A stupid quest I’ll address after the first version of my GA framework is published. It all started with a simple question related to the game of bingo (don’t ask!) : can we estimate the number of bingo cards sold in an event based on how many numbers it takes for each card configuration to have a winner? So it’s just a matter of generating millions of draws and cards à la Monte Carlo and averaging how many numbers it takes for every configuration. Why am I doing that? Just because I’m curious!
There’s been a lot of action on the Pharo side and Glorp. I plan on having a serious look at the latest Glorp/Pharo combo and even participate to the development!
I’ll translate my articles (in French here, here and here) on the SQL sudoku solver in English and test the whole thing on the latest MySQL server. Besides, db4free has upgraded to a new MySQL server version!
I had done a port of NeoCSV to Dolphin right before losing all my code data. Wasn’t hard to port so I’ll redo it as soon as I reinstall Dolphin!
It’s time to reinstall VisualAge, VisualWorks, Squeak, ObjectStudio and Dolphin and see what’s new in each environment! From what I saw, there’s a lot of new and interesting stuff on the web side. Add to that the fact that most social media platforms have had significant changes in their respective APIs recently, so there’s a lot to learn there!
That’s a wrap folks!