<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-553120838627117466</id><updated>2011-07-18T05:27:15.287-07:00</updated><category term='download'/><category term='nanook chess'/><category term='programming'/><title type='text'>Nanook chess - UCI Engine</title><subtitle type='html'>Nanook Chess is an UCI Engine developed by Julien Gonçalves.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-4455878986366027372</id><published>2011-07-18T05:27:00.000-07:00</published><updated>2011-07-18T05:27:15.350-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>Nanook Chess v0.2 postponed until september</title><content type='html'>The release of Nanook Chess v0.2 has been postponed due to professional reason until september or october.&lt;br /&gt;I need to finish the attack board for a better position evaluation, and to&amp;nbsp;implement rules to manage ending game before to be able to release this new version.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-4455878986366027372?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/4455878986366027372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/07/nanook-chess-v02-postponed-until.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/4455878986366027372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/4455878986366027372'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/07/nanook-chess-v02-postponed-until.html' title='Nanook Chess v0.2 postponed until september'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-9115109441006639343</id><published>2011-05-26T07:36:00.000-07:00</published><updated>2011-05-26T07:38:18.349-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>Nanook v0.2 will be released in June or July</title><content type='html'>I'm planning to release Nanook v0.2 in June or July: I implemented almost all the functionalities I wanted to add (I will describe them later), but I still have a lot of work on testing and to improve the board evaluation.&lt;br /&gt;Even with a bad evaluation function, v0.2 won 100% of the 10 games they played against v0.17&amp;nbsp; (5 minutes/side for each game), so it seems to play much better. As soon as I will have an evaluation working correctly, I will test it against other chess engine, and try to estimate the elo gain since last version&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-9115109441006639343?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/9115109441006639343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/nanook-chess-v02-close-to-be-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/9115109441006639343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/9115109441006639343'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/nanook-chess-v02-close-to-be-released.html' title='Nanook v0.2 will be released in June or July'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-7198826813985769976</id><published>2011-05-23T00:58:00.000-07:00</published><updated>2011-05-23T00:59:12.191-07:00</updated><title type='text'>Nanook v0.2 : a first release soon of the C++ chess engine.</title><content type='html'>I finished a&amp;nbsp;basic&amp;nbsp;version of Nanook chess v0.2 (C++)&amp;nbsp;using alpha-beta algorithm, quiescent search / zobrist keys, with a very basic evaluation function. I tested against last version of Nanook and the engine seems to be working well, very stable.&lt;br /&gt;I&amp;nbsp;was working for&amp;nbsp;1 week only with the code optimization (Board / Moves generator), and now&amp;nbsp;this part of the code&amp;nbsp;is much quicker than previous version v0.17 (reaching around 1.000.000 nps for now - should go slower with move ordering implementation), before to release a first version of this new engine developed from scratch, I need to implements the following points :&lt;br /&gt;&lt;br /&gt;- Ordering moves (mixing killer/history/static)&lt;br /&gt;- Evaluation function at least equal to the previous version&lt;br /&gt;- managing opening/final positions&lt;br /&gt;- time management&lt;br /&gt;- Performing alpha-beta&lt;br /&gt;&lt;br /&gt;I have some more ideas to do&amp;nbsp;after adding they tasks, but I will implement it after a first release.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-7198826813985769976?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/7198826813985769976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/nanook-v02-first-release-soon-of-c.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/7198826813985769976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/7198826813985769976'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/nanook-v02-first-release-soon-of-c.html' title='Nanook v0.2 : a first release soon of the C++ chess engine.'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-2146305830809235233</id><published>2011-05-06T14:01:00.000-07:00</published><updated>2011-05-06T14:29:16.594-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>C++ thread: A strange problem sending stdout to the GUI</title><content type='html'>Today I implemented a new thread for analysis, so the main thread can continue to listen for input from GUI during the analysis, when the "stop" command is sent, I just have to update a flag m_StopAnalysis to true and the thread exit with the serach results, this is very helpful and easy to implement. Concretely, when the GUI send the "go" command, I just call LaunchThreadAnalysis(), defined like this in my code :&lt;br /&gt;&lt;code&gt;&lt;br /&gt;void CProtocolUci::LaunchThreadAnalysis()&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; CProtocolUci *p = this;&lt;br /&gt;&amp;nbsp;&amp;nbsp; HANDLE hProcessThread = CreateThread(NULL, 0,&amp;amp;CProtocolUci::ThreadLauncher, p,0,NULL);&lt;br /&gt;&amp;nbsp;&amp;nbsp; if ( hProcessThread == NULL ){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBoxA(NULL,"Thread error : "+GetLastError(),"Critical error",MB_OK | MB_ICONINFORMATION);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; exit(0);&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The pointer of the current class is sent as parameter to the function ThreadLauncher, Defined&amp;nbsp;with the followed code&amp;nbsp;:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;static DWORD WINAPI ThreadLauncher(void *p)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; CProtocolUci *GameAnalysis = reinterpret_cast&lt;class cprotocoluci*=""&gt;(p);&lt;br /&gt;&amp;nbsp;&amp;nbsp; GameAnalysis-&amp;gt;LaunchingAnalysis();&lt;br /&gt;&amp;nbsp;&amp;nbsp; return (0);&lt;br /&gt;}&lt;/code&gt;&lt;br /&gt;Finally the function LaunchingAnalysis(), part of the same class is called, and it launch the Analysis. This call Alpha-Beta and write "info" and "bestmove" informations to the stdout in order to reply to the GUI, and then exit from the thread.&lt;br /&gt;I tested with command line : it works perfectly. But when I tested with Arena, the Engine never replied until the GUI send "stop"... Very strange, in depth 4, the engine should find the result in less of 2 seconds, but it never reply, even after 1 minute. After 2 hours of investigation, I found the problem : the behavior of the stdout from the child process is different, it seems to bufferize the characters sent to the GUI...&lt;br /&gt;If you have same problem, the solution is simple : after each stdout, use &lt;code&gt;fflush(stdout);&lt;/code&gt; ! This should flush the stdout pipe and send your&amp;nbsp;characters to the GUI.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-2146305830809235233?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/2146305830809235233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/c-thread-strange-problem-sending-stdout.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/2146305830809235233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/2146305830809235233'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/c-thread-strange-problem-sending-stdout.html' title='C++ thread: A strange problem sending stdout to the GUI'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-6713561159099673697</id><published>2011-05-05T06:01:00.000-07:00</published><updated>2011-05-05T06:02:52.115-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>Nanook chess from scratch - First step : UCI protocol, move generator and alpha-beta</title><content type='html'>&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;I want for this version of Nanook chess to avoid from the beginning all kind of moves bugs that we often detect too late. Beginning with a stable move generator and a well working alpha-beta algorithm is the best way to correctly progress forward.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;So, first of all, I choose a 0x88 board representation : It's a little different from the one used in the previous version of Nanook, but it seems to me to be a better way. Then I developed the move generator, nothing complicated at this point : just need to make sure that special move as castling/en passant/promotion are well understood. An finally, I implemented a basic alpha-beta algorithm with a really simple evaluation function (counting score of captured pieces, no score for position).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Before to make a step forward, I need to make sure that all these points work perfectly, the best way to do it is to implement now the UCI protocol, in order to be able to test all kind of situation with fen positions.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;UCI protocol implements a lot of commands, basically at this point it will be interesting to integrate the commands position/info/bestmove/etc... (options and timer can be done later), the most important is the possibility to load a fen position. Believe it or not, but previous version of Nanook was not able to load a fen position, I never implemented it ! Testing a position was possible only using startpos...&lt;/span&gt;&lt;br /&gt;&lt;div style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-lfcKNPVJCVI/TcKd7UF7RqI/AAAAAAAAAAc/3oc_qvYwXuw/s1600/uci_fen.PNG" imageanchor="1" style="cssfloat: left; margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="96" j8="true" src="http://3.bp.blogspot.com/-lfcKNPVJCVI/TcKd7UF7RqI/AAAAAAAAAAc/3oc_qvYwXuw/s400/uci_fen.PNG" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;UCI protocol - Analysing a given&amp;nbsp;FEN position via command line&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;As soon as these commands are understood, the engine can reply with the best move, and some other informations... It should be interesting also to manage "go infinite" and "stop": when you will launch test analysis, the GUI might use these commands. The best way is probably to create a Thread where you launch your analysis, so you can continue to read input commands from GUI and wait for the "stop" signal.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;Ok, so now Nanook Chess implements all these points, I just need to load and test some specific fen positions via UCI to make sure it didn't make an illegal move. I was thinking to do my own GUI engine with a list of fen positions and their expected moves, but it seems Arena give this possibility with the "engine analysis", you can load an EPD file (EPD is a format where you can find a list of fen positions and the move expected to be played for each of them), the engine will analyse these moves, and finally it will display which moves the engine success and fails. Great ! So the only thing I need to do is to create an EPD list with positions that Nanook should understand at this point of development (get a "free" piece, find a mate, escape a mate, test a pat, promotion, ...), and I will go forward only when it will success with 100%. This seems to be a very good way to proceed : for each step of the project, I will check again all EPD positions, and develop new ones, then Nanook should never have a worst score than the step before.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial, Helvetica, sans-serif;"&gt;I'm now preparing an EPD list of fen (around 30 specific positions), I will probably test the engine today or tomorrow with it.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-6713561159099673697?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/6713561159099673697/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/nanook-chess-from-scratch-first-step.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/6713561159099673697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/6713561159099673697'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/05/nanook-chess-from-scratch-first-step.html' title='Nanook chess from scratch - First step : UCI protocol, move generator and alpha-beta'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-lfcKNPVJCVI/TcKd7UF7RqI/AAAAAAAAAAc/3oc_qvYwXuw/s72-c/uci_fen.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-5863007843952863387</id><published>2011-04-27T05:57:00.000-07:00</published><updated>2011-04-27T08:17:06.805-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>History and Future of Nanook Chess : a new version from scratch in preparation</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/-UltG6R0_hAI/Tbgy3xkPUBI/AAAAAAAAAAU/nI61oAxnQWM/s1600/nanook_small.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 130px; height: 70px;" src="http://1.bp.blogspot.com/-UltG6R0_hAI/Tbgy3xkPUBI/AAAAAAAAAAU/nI61oAxnQWM/s200/nanook_small.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5600282070414741522" /&gt;&lt;/a&gt;I think it's now time to improve Nanook chess with a real new version. The last release v0.17 is weak, I identified a lot of problems 2 years ago but I never corrected them, a lot of functionalities are not implemented, and I don't feel very well to let this project unfinished.&lt;br /&gt;&lt;br /&gt;I started this project almost 8 years ago in C language, for a computer school project. The name of the project was "Epichess", and it has been developed to play chess through network, with client/server connections functionalities, 2D graphic, multiplayers/multi-engines for tournament, elo estimation, compatibility on Windows/Linux… I worked in this project during 2 months, the engine was weak, oriented for beginners.&lt;br /&gt;4 years ago, I decided to extract the engine from Epichess project and make it compatible with UCI protocol, rewriting quickly just some pieces of code, with no improvement, Nanook v0.15 was born. V0.16 has been released in june 2007, with some improvements but nothing really new.&lt;br /&gt;In may 2009, after 2 years of inactivity, I added some new functionalities, but it was more like a patch than a real new version, just to make it a little stronger.&lt;br /&gt;&lt;br /&gt;Now, when I watch the C code source, I’m very surprised and I understand why Nanook Chess is so unstable… I patched this code for so long, I actually can see some error that I coded 8 years ago that are still there. The only way to have a new stable version is to develop this project from scratch, and that’s the decision I just caught: the next version of Nanook Chess will be developed in C++ from scratch. I expect from this version to be stronger than the 0.17, more stable and implementing the UCI protocol with all functionalities.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-5863007843952863387?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/5863007843952863387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/04/history-and-future-of-nanook-chess-new.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/5863007843952863387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/5863007843952863387'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/04/history-and-future-of-nanook-chess-new.html' title='History and Future of Nanook Chess : a new version from scratch in preparation'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-UltG6R0_hAI/Tbgy3xkPUBI/AAAAAAAAAAU/nI61oAxnQWM/s72-c/nanook_small.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-1399120339924328081</id><published>2011-04-21T06:00:00.000-07:00</published><updated>2011-04-27T06:18:06.652-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>Links to download "Nanook Chess" are updated</title><content type='html'>The server Host for the binaries v0.16 and v0.17 changed 1 month ago, and links to download them was not working anymore. I just updated the links with the news host, they are now available.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-1399120339924328081?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/1399120339924328081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/04/links-to-download-nanook-chess-are.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/1399120339924328081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/1399120339924328081'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/04/links-to-download-nanook-chess-are.html' title='Links to download &quot;Nanook Chess&quot; are updated'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-6248398189822176559</id><published>2011-04-21T05:39:00.000-07:00</published><updated>2011-04-27T06:18:34.869-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>First message since 2 years</title><content type='html'>It has been a long time since my last message, unfortunately I didn't have time to work on Nanook Chess these 2 past years, too much work, too much extra activities.&lt;br /&gt;I remember I developed v0.17 after 2 years of inactivity, I guess it's now time for a 0.18, or directly a v1 ! :-)&lt;br /&gt;&lt;br /&gt;I had problems with my email and just saw some comments written 1 year ago, sorry for that, I will now redirect them to my main email, so this should never happen again.&lt;br /&gt;&lt;br /&gt;I will investigate to find time to develop a new version, more powerfull, and let you know when I start it, I did a lot of benchmark these past months about performance C/JAVA programming in AI and text mining domain, and it should be interesting to describe these results adapted to Chess case.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-6248398189822176559?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/6248398189822176559/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2011/04/first-message-since-2-years.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/6248398189822176559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/6248398189822176559'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2011/04/first-message-since-2-years.html' title='First message since 2 years'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-7213427362565502009</id><published>2009-05-19T04:36:00.000-07:00</published><updated>2011-05-06T13:28:39.087-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='download'/><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>Nanook v0.17 available</title><content type='html'>Nanook v0.17 is finally available ! You can download this version &lt;a href="http://88.191.135.248/nanook-chess/nanook_v0-17.zip"&gt;here&lt;/a&gt;. This is the list of the main changes :&lt;br /&gt;&lt;br /&gt;- Basic implementation of the aspiration windows&lt;br /&gt;- Better Killer moves&lt;br /&gt;- Principal Variation Search&lt;br /&gt;- Basic implementation of Late Move Reduction&lt;br /&gt;- Corrected some bugs with hash table and check problems&lt;br /&gt;- Basic implementation of history heuristic&lt;br /&gt;&lt;br /&gt;I didn't manage yet the following important points :&lt;br /&gt;&lt;br /&gt;- to ameliorate the compatibility with UCI protocol&lt;br /&gt;- to work on the evaluation function&lt;br /&gt;- to implement some specific algorithms to play end games&lt;br /&gt;&lt;br /&gt;But it will be probably the main points I will work on wih the next version.&lt;br /&gt;&lt;br /&gt;Here are the results of the last tournament between nanook v0.16 and v0.17, this new version seems better... :-)&lt;br /&gt;&lt;br /&gt;15 games of 5 minutes :&lt;br /&gt;&lt;br /&gt;&lt;table align="left" border="2"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th align="left"&gt;Module&lt;/th&gt;&lt;th&gt;Score&lt;/th&gt;&lt;th&gt;Na&lt;/th&gt;&lt;th&gt;Na&lt;/th&gt;&lt;th&gt;S-B&lt;/th&gt;&lt;/tr&gt;&lt;tr align="center"&gt;&lt;td align="left"&gt;Nanook_0-17&lt;/td&gt;&lt;td align="center"&gt;13,5/15&lt;/td&gt;&lt;td align="center"&gt;· ·· ·· ·· ·· ·· ··&lt;/td&gt;&lt;td&gt;=11111111111=1=&lt;/td&gt;&lt;td&gt;&amp;nbsp;20,25&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr align="center"&gt;&lt;td align="left"&gt;Nanook v0.16 &lt;/td&gt;&lt;td align="center"&gt;1,5/15&lt;/td&gt;&lt;td align="center"&gt;=00000000000=0=&lt;/td&gt;&lt;td&gt;· ·· ·· ·· ·· ·· ··&lt;/td&gt;&lt;td&gt;&amp;nbsp;20,25&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I still have a lot of improvements to do in order to have a Nanook Chess version not so weak... I work will work on it !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-7213427362565502009?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/7213427362565502009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2009/05/nanook-v0.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/7213427362565502009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/7213427362565502009'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2009/05/nanook-v0.html' title='Nanook v0.17 available'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-8400977173529763346</id><published>2009-04-17T07:05:00.000-07:00</published><updated>2011-05-06T13:26:17.327-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>Nanook Chess v0.17 is close to be ready</title><content type='html'>On the way of the v0.2, I'm developing the version v0.17, implementing PVS algorithm and late move reduction. I still have some bug that I'm resolving, but this version is really quicker than the previous one.&lt;br /&gt;I will keep updating about the test resuts and new functionality during this week.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-8400977173529763346?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/8400977173529763346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2009/04/nanook-chess-v017-is-close-to-be-ready.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/8400977173529763346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/8400977173529763346'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2009/04/nanook-chess-v017-is-close-to-be-ready.html' title='Nanook Chess v0.17 is close to be ready'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-8392309913490269285</id><published>2009-04-02T03:14:00.000-07:00</published><updated>2011-05-06T13:26:57.975-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'></title><content type='html'>I started to develop the version 0.2 of Nanook Chess, right now I resolved several bugs and optimized the software. This development version is yet stronger than the previous one :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table align="left" border="2"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;Classement&lt;/th&gt;&lt;th align="left"&gt;Module&lt;/th&gt;&lt;th&gt;Score&lt;/th&gt;&lt;th&gt;Na&lt;/th&gt;&lt;th&gt;Na&lt;/th&gt;&lt;th&gt;S-B&lt;/th&gt;&lt;/tr&gt;&lt;tr align="center"&gt;&lt;td&gt;&lt;b&gt;1&lt;/b&gt;&lt;/td&gt;&lt;td align="left"&gt;Nanook v0.2 dev&lt;/td&gt;&lt;td align="center"&gt;7,0/10&lt;/td&gt;&lt;td align="center"&gt;· ·· ·· ·· ··&lt;/td&gt;&lt;td&gt;110101=11=&lt;/td&gt;&lt;td&gt;&amp;nbsp;21,00&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr align="center"&gt;&lt;td&gt;&lt;b&gt;2&lt;/b&gt;&lt;/td&gt;&lt;td align="left"&gt;Nanook v0.16 &lt;/td&gt;&lt;td align="center"&gt;3,0/10&lt;/td&gt;&lt;td align="center"&gt;001010=00=&lt;/td&gt;&lt;td&gt;· ·· ·· ·· ··&lt;/td&gt;&lt;td&gt;&amp;nbsp;21,00&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I still have to optimize the evaluation function before to make more tests, it's really slow and it seems to be the highest problem to resolve.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-8392309913490269285?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/8392309913490269285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2009/04/i-started-to-develop-version-0.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/8392309913490269285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/8392309913490269285'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2009/04/i-started-to-develop-version-0.html' title=''/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-553120838627117466.post-2236410337104733007</id><published>2009-03-18T02:11:00.000-07:00</published><updated>2011-05-06T13:28:16.093-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='download'/><category scheme='http://www.blogger.com/atom/ns#' term='nanook chess'/><title type='text'>Nanook Chess is back</title><content type='html'>Nanook Chess development has been stopped almost 2 years ago. I have been too busy to continue to work on it, but I hope to be able to improve the AI level in the coming months.&lt;br /&gt;The 2 years old version is now available at the following address : &lt;a href="http://88.191.135.248/nanook-chess/nanook_v0-16.zip" target="_blank"&gt;Nanook chess v0.16&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/553120838627117466-2236410337104733007?l=nanook-chess.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://nanook-chess.blogspot.com/feeds/2236410337104733007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://nanook-chess.blogspot.com/2009/03/nanook-chess-is-back.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/2236410337104733007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/553120838627117466/posts/default/2236410337104733007'/><link rel='alternate' type='text/html' href='http://nanook-chess.blogspot.com/2009/03/nanook-chess-is-back.html' title='Nanook Chess is back'/><author><name>Nanook Chess</name><uri>http://www.blogger.com/profile/01535393108341796406</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='16' src='http://1.bp.blogspot.com/-8iNsgXTiXiY/TcRsa6zjDfI/AAAAAAAAAAk/6Njx_4NBDwU/s220/nanook_small.png'/></author><thr:total>3</thr:total></entry></feed>
