HAL9000

HAL9000
"It just isn't conceivable that you can design a program strong enough to beat players like me."

January 21, 2018

3 more articles about Kasparov-Deep Blue and AI

If you are not old enough, you didn't see the days when a world champion could beat dozens of best computer chess programs even in a simul.

In 1997, the equilibrum has shifted in favor of the computers, after Deep Blue has been the first computer to beat a human world champ in a match.

The 6 game match is a historical moment of the human vs machine, so there have been many books & publications & media articles about it.

Let me share two of them, although not very recent, but still interesting to read:

1) @ THE CONVERSATION:
Twenty Years on from Deep Blue vs Kasparov: How A Chess Match Started the Big Data Revolution

2) @ TIME MAGAZINE:
Did Deep Blue Beat Kasparov Because of a System Glitch?


3) @MEDIUM.COM: CONVERSATIONS WITH TYLER COWEN (BONUS PACK):
...and the third, as a bonus, speaks about the future of AI from Kasparov's point of view. Don't forget to read what GK suggests about a match opportunity between Magnus Carlsen and the strongest computer program available (Stockfish?).

Garry Kasparov on AI, Chess and the Future of Creativity

New Android chess engine: CT800 v1.20p04



Yet another new engine for your mobile devices: CT800 is an average level engine released by Ratmus Althoff who recently concentrated on compiling for Android and finally managed to obtain working binaries.

CT800, in fact, was born as a dedicated chess computer idea and it was designed by Rasmus Althoff.  The original CT800 featured an ARM Cortex M4 microcontroller of an Olimex H405 board that operates up to 168 Mhz, with 1 MB of flash memory, 192+4 kB of SRAM, and multiple I/O and USB connectors, with a 4x20 character text display, two leds, and a 4x4 + 1 keypad as peripherals aka user interface. Voltage source is due to four NiMH rechargeable AA batteries or external 5 V DC power supply.
ct800gameview.jpg

The "chess computer" CT800
CT800's firmware is developed by Rasmus Althoff, released under the GPL Version 3. The chess playing software is an ARM port of George Georgopoulos' open source engine NG-play including a KPK bitbase by Marcel van Kervinck.

GET CT800 v1.20p04 for arm7 and arm8

In case of trouble downloading from PC, use your mobile or refer to THIS POST.

Android UCI engine update: armFish 2018.01.21

armFish builds used to be made by Lyudmil Antonov for arm8 64-bit devices only, using direct cpu instructions via assembly language. This method is the most native but a little bit unhuman too. One would only bear for nothing but to reach for the the fastest build.

The assembly project seems abandoned by Mohammed Li, the former implementer of the code for Windows and Linux. The project is now forked and continued by Michael Byrne, developer of derivatives like McBrain, Hawkeye.

The Android port shared below comes from Alexei1976. We can do nothing but thank him for the contribution.

GET armFish 2018.01.21 for arm8 (*)

(*) mateFish 2018.01.21 for arm8 is included in the same package. This version integrates some specific code aiming to find mating lines quicker rather than playing the strongest level of chess.

In case of trouble dowloading from PC, use your mobile or refer to THIS POST.

Android UCI engine update: Cfish 2018.01.17.ACH

Thanks to Alexei Chernakoff for the latest version ported to Android.

GET Cfish 2018.01.17.ACH for arm7 and arm8

In case of trouble downloading from PC, use your mobile or refer to THIS POST.

Android UCI engine update: Ethereal 8.86 & 8.87

Three more builds by Andy Grant, the author and one ported by Alexei. 3000 ELO is a few steps away for Ethereal.

GET Ethereal 8.86.AG for arm7
GET Ethereal 8.87.AG for arm7
GET Ethereal 8.87.ACH for arm7 and arm8

In case of trouble downloading from PC, use your mobile or refer to THIS POST.

January 18, 2018

RAPIDROID RELOADED: January-2018 ft Komodo 11.2.2 and Andscacs

Here i come with a new list for a new year, long awaited and delayed a little bit due to unexpected updates that i couldn't ignore. Especially Andscacs, Ginkgo and Ethereal.

It's a pleasure to see new stronger engines coming to the stage, like Andscacs and Ginkgo thanks to Alexei Chernakoff's valuable efforts. As previous top engines didn't perform the same way against newcomers, we have a slightly changing distribution this time, explaining why Stockfish lost ~50 ELO. In fact it didn't lose anything, it just traveled between the lines. ELO margins between this list and the previous one are still linked.

I think this update is the most accurate ever because there are more games per engine and more competition at the top. Conclusion: Different population explain different distributions and different distributions explain different ELOs.

If you ask why Stockfish 8 is still here, there are two reasons:
1) There's no SF9 coming, not enough improvement yet,
2) Komodo is still behind.

The highlights of this release:
* ADDED Andscacs 0.921 (3210 ELO)
* ADDED Ginkgo 2.0 (3146 ELO)
* ADDED Sctr 1.0 (2722 ELO)
* UPDATED Ethereal 8.16 to 8.37
* UPDATED Komodo 11.01 to 11.2.2
* UPDATED Scorpio 2.7.7.JA to Scorpio 2.7.8.ACH
* UPDATED Sting SF 8.1 to 8.9
* UPDATED Senpai 1.0 JA to Senpai 1.0.APE
* UPDATED Texel 1.07a9lazy to 1.08a4
* UPDATED Vajolet2 2.3.1 AP to 2.4.ACH
* UPDATED Zurichess Luzern to Neuchatel

Targets for next release:
* ADD Gogobello 1.4
* UPDATE Arasan 20.0 to Arasan 20.4
* UPDATE Fruit Reloaded 2.1 to 3.2.1
* UPDATE Ethereal 8.37 to 8.85
* UPDATE Senpai 1.0 to 2.0
* UPDATE Texel 1.08a4 to 1.08a8


BAYES RATINGS AFTER 23299 GAMES PLAYED BY 132 PROGRAMS
Rnk Name                        O/S T TC  Elo   +   - Gam Sco Oppo Dra
001 Stockfish 8.0.AP            A32 4 bf 3357  34  32 400 83% 3106 32%
002 Komodo 11.2.2               A32 4 bf 3340  33  32 400 81% 3107 33%
003 Andscacs 0.921              A32 4 bf 3210  29  29 400 63% 3120 41%
004 Ginkgo 2.0                  A32 4  b 3146  28  28 400 54% 3127 43%
005 Chiron 4                    A32 4 bf 3124  29  29 400 56% 3083 38%
006 Texel 1.08a4                A32 4 bf 3084  29  29 396 51% 3079 34%
007 Gull 3 AP                   A32 4 bf 3074  29  29 398 48% 3087 38%
008 Firenzina 2.4.3 xTreme      A32 4 bf 3064  28  28 398 43% 3118 49%
009 Critter 1.6a                A32 4 bf 3062  28  28 406 43% 3116 44%
010 BlackMamba 2.0              A32 4 bf 3061  28  28 400 52% 3054 43%
011 Rybka 2.3.2a mp             W64 4 bf 3039 146 141  14 57% 2992 43%
012 Sting SF 8.9                A32 4 bf 3028  29  29 392 51% 3028 39%
013 Fritz 14                    A32 4 bf 3024  28  28 398 44% 3073 46%
014 IvanHoe 1945a AP            A32 4 bf 3008  29  29 394 41% 3077 44%
015 Hiarcs 13.71                IOS 2 bf 2999 140 124  22 75% 2822 23%
016 DeepSaros ver.2.3f          A32 1 bf 2991  28  28 390 49% 3000 46%
017 Senpai 1.0.APE              A32 4 bf 2990  28  28 400 54% 2966 41%
018 RobboLito 0.085g3l AP       A32 1 bf 2968  28  28 390 51% 2960 44%
019 Vajolet2 2.4                A32 4  b 2958  28  28 390 51% 2954 42%
020 Bobcat v8.0 AP              A32 4 bf 2942  29  29 390 47% 2961 38%
021 Arasan 20.0                 A32 4 bf 2925  28  28 392 49% 2931 46%
022 Cheng 4.39                  A32 4 bf 2916  28  29 390 45% 2949 39%
023 ExChess_7.88b.JA_xb.arm7    A32 4  b 2882  28  28 394 49% 2893 42%
024 Shredder 1.7.0              IOS 2  b 2877 122 121  20 53% 2865 45%
025 Gaviota v1.0-d              A32 4 bf 2873  28  28 406 52% 2857 36%
026 Nemorino 1.02 AP            A32 4  b 2871  28  28 398 47% 2887 40%
027 Hakkapeliitta 3.0           A32 1 bf 2869  29  29 394 53% 2850 34%
028 Scorpio_2.7.8.ACH_xb.arm7   A32 4 bf 2866  29  29 392 52% 2852 35%
029 Rodent III 0.171 AP         A32 4  b 2848  29  29 396 48% 2858 35%
030 Grapefruit 1.0              A32 4 bf 2836  28  28 408 53% 2818 40%
031 DiscoCheck 5.2.1            A32 1 bf 2814  28  28 410 49% 2824 35%
032 Toga II 3.0                 A32 1 bf 2812  28  28 396 45% 2848 38%
033 Deep Saros 0.9              A32 4 bf 2809  28  28 408 49% 2815 38%
034 Laser 1.3 beta              A32 4  b 2797  28  29 392 49% 2801 37%
035 Zurichess Neuchatel         A32 1  b 2782  29  29 394 55% 2742 34%
036 Murka 3                     A32 1 bf 2776  28  28 418 52% 2758 37%
037 Fruit Reloaded 2.1          A32 1  b 2772  29  28 408 52% 2762 32%
038 Doch32 1.3.4 JA             A32 1  b 2772  28  28 412 51% 2767 34%
039 Crafty_25.0.JA_xb.arm7.pie  A32 1 bf 2768  29  29 394 49% 2771 34%
040 Chess Pro 2016.02           IOS 2 bf 2742 111 113  22 45% 2771 55%
041 GNU Chess 5.60              A32 1 bf 2727  30  30 390 52% 2717 26%
042 Sctr 1.0                    A32 1  b 2722  30  30 388 48% 2734 27%
043 The King 3.50 x64           W64 1  b 2719  56  57  98 40% 2781 36%
044 Deuterium v14.3.34.130      A32 1 bf 2717  28  28 410 49% 2726 38%
045 Strelka 5                   A32 1 bf 2704  29  29 394 49% 2711 30%
046 RedQueen 1.1.98             A32 4 bf 2679  30  30 392 50% 2676 27%
047 Pawny 1.2                   A32 1 bf 2670  30  29 394 57% 2625 28%
048 Tucano_6.00.JA_xb.arm5      A32 1 bf 2664  28  28 394 47% 2680 40%
049 Ethereal 8.37               A32 1  b 2663  30  30 392 51% 2659 31%
050 Alfil 12.10                 A32 1 bf 2651  29  29 390 54% 2624 31%
051 Rhetoric 1.4.3              A32 1 bf 2643  29  29 396 48% 2654 32%
052 CNVCS 1.2.0                 IOS 2  f 2639 114 117  22 43% 2678 50%
053 Cheese 1.9                  A32 1 bf 2629  30  30 388 48% 2644 28%
054 Rodin v8.00                 A32 1 bf 2619  30  30 394 51% 2609 28%
055 Daydreamer 1.75 JA          A32 1 bf 2602  28  29 396 49% 2611 37%
056 Chess Genius 2.6.4          A32 1 bf 2578 224 239   4 38% 2627 75%
057 Chess Genius 4.0.00         IOS 2 bf 2562 195 253   8 13% 2814 25%
058 Glaurung Mainz              A32 1  b 2552  31  30 388 52% 2530 25%
059 Rotor 0.8                   A32 1 bf 2545  29  29 396 48% 2560 30%
060 DanaSah 7.0                 A32 1 bf 2541  29  29 396 49% 2545 30%
061 K2 v.087                    A32 1  b 2538  30  30 392 47% 2550 26%
062 RuyDos 1.0.3                A32 1  b 2531  30  30 394 52% 2515 26%
063 Sloppy_0.23.JA_xb           A32 1 bf 2527  30  30 386 51% 2514 29%
064 Phalanx_XXIV.JA_xb.arm7     A32 1 bf 2520  30  30 390 47% 2540 29%
065 Fridolin 2.00               A32 4 bf 2515  30  30 390 50% 2511 28%
066 Dirty_030411.JA_xb          A32 1 bf 2512  29  29 390 47% 2529 34%
067 GarboChess 3                A32 1 bf 2507  29  29 394 50% 2506 31%
068 Maverick 1.5 arm            A32 1 bf 2505  30  30 396 53% 2481 24%
069 GreKo_2015.JA_xb            A32 1 bf 2502  30  30 388 51% 2497 28%
070 BBChess 1.3b JA             A32 4 bf 2485  30  30 392 50% 2481 22%
071 Ifrit_m1.8.JA_uci2xb        A32 1 bf 2439  32  31 388 60% 2360 24%
072 Pepito v1.59                A32 1 bf 2425  30  31 394 49% 2426 24%
073 BetsabeII_1.47.JA_xb        A32 1 bf 2421  32  32 388 51% 2404 18%
074 Diablo 0.5.1b JA            A32 1 bf 2375  31  31 392 55% 2334 26%
075 Olithink_5.3.2.JA_xb        A32 1 bf 2372  32  32 388 52% 2352 20%
076 Amy_0.8.JA_xb               A32 1 bf 2354  32  32 394 49% 2357 19%
077 Myrddin_0.86.JA_xb          A32 1 bf 2294  31  31 390 51% 2283 22%
078 TJchess 1.1U                A32 1 bf 2275  32  32 394 46% 2305 17%
079 Marvin 2.0.0                A32 1  b 2257  31  31 392 46% 2287 22%
080 Bitfoot 150922.JA           A32 1 bf 2256  32  32 390 48% 2268 14%
081 Rattate_Nosferatu.JA_xb     A32 1 bf 2204  32  31 388 52% 2190 19%
082 Beowulf_2.4a.JA_xb          A32 1  b 2196  31  31 394 51% 2194 21%
083 Scidlet_2.61b2.JA_xb        A32 1 bf 2191  31  31 398 49% 2199 22%
084 Resp_0.19.JA_xb             A32 1 bf 2185  31  31 390 53% 2165 22%
085 Floyd 0.7 JA                A32 1 bf 2182  32  32 392 46% 2213 14%
086 KmtChess_1.21.JA_xb         A32 1 bf 2172  31  31 394 52% 2162 19%
087 Tiny Chess 1.4.6            A32 1  b 2136  30  30 398 46% 2163 26%
088 Gk_0.90.JA_xb               A32 1  b 2131  31  31 390 53% 2108 20%
089 AnkanChess 0.0              A32 1  b 2119  31  31 396 52% 2107 18%
090 Kurt 0.9.2.2 JA             A32 1 bf 2118  31  31 394 53% 2094 19%
091 Robocide 28.12.14.JA        A32 1 bf 2113  30  30 416 50% 2111 18%
092 Sunsetter_C10.JA_xb         A32 1  b 2078  32  31 396 55% 2030 18%
093 Cinnamon 2.0                A32 4 bf 2078  30  30 398 50% 2083 25%
094 Gunborg_1.39.JA_uci2xb      A32 1 bf 2045  30  30 392 48% 2060 28%
095 NGplay_9.86.JA_xb           A32 1 bf 2037  31  31 396 51% 2026 22%
096 AdroitChess0.4 JA           A32 1 bf 2033  31  32 392 49% 2042 18%
097 BikJump v1.8                A32 1 bf 2023  30  30 420 49% 2028 19%
098 Galjoen_v0.35.6             A32 1  b 2016  30  30 396 49% 2021 25%
099 Soldat-III_0.178.JA_xb      A32 1  b 2006  32  32 392 51% 1993 16%
100 Cilian_4.14.JA_xb           A32 1 bf 1997  31  31 386 53% 1967 23%
101 Leonidas_r83.JA_xb          A32 1 bf 1990  31  31 396 46% 2020 21%
102 Fairymax_4.8V.JA_xb         A32 1  b 1980  31  31 396 52% 1961 24%
103 Gullydeckel_2.15.pl10.JA_xb A32 1  b 1966  31  32 398 49% 1962 17%
104 Mephisto Roma Turbo         W64 1  b 1966  80  84  56 37% 2068 16%
105 ZCT-0.3.2500                A32 1 bf 1964  32  32 388 50% 1954 14%
106 Colchess_8.0.JA_xb          A32 1 bf 1964  31  31 392 53% 1931 20%
107 Ecce rev. 508               A32 1 bf 1920  33  33 390 55% 1871 14%
108 Sayuri 2016.10.07           A32 4 bf 1903  33  33 388 50% 1899 16%
109 Smash 1.03 JA               A32 1 bf 1901  33  32 402 56% 1846 16%
110 Surprise_4.3.b13.JA_xb      A32 1  b 1803  34  34 386 50% 1787 15%
111 Hoichess_0.12.1.JA_xb       A32 1 bf 1762  32  32 388 49% 1770 18%
112 Tscp_1.8.1.AB_xb            A32 1 bf 1727  33  33 388 49% 1726 17%
113 Chenard_2015.08.15.JA_xb    A32 1 bf 1726  35  35 382 55% 1636 11%
114 Zzzzzz_3.5.1.JA_xb          A32 1 bf 1705  33  33 382 52% 1659 24%
115 Rocinante 2.0 JA            A32 1 bf 1677  36  36 384 51% 1618 11%
116 Colossus 4.0 100X           C64 1 bf 1647 277 235   8 88% 1219 25%
117 Darky_0.5d.JA_xb            A32 1  b 1635  37  37 380 54% 1526 15%
118 Mephisto Roma 68020 UCI     W64 1  b 1619 131 140  20 35% 1734 30%
119 Pulse 1.5-cpp               A32 1 bf 1567  36  36 386 53% 1463 26%
120 VIRUTOR CHESS 1.1.1         A32 1 bf 1550  38  38 376 54% 1446 15%
121 Mizar_3.0.JA_xb             A32 1  b 1508  40  40 374 51% 1438 12%
122 Chess for Android           A32 1 bf 1469  40  40 373 53% 1374 14%
123 Superpawn b108 JA           A32 1  b 1417  40  40 368 52% 1342 17%
124 Chess Titans                W64 1  f 1355 217 207   7 57% 1325 29%
125 Toledo_Nano_2010.JA_xb      A32 1  b 1199  38  39 360 48% 1175 24%
126 Trappy_Beowulf_2.0.JA_xb    A32 1 bf 1181  40  41 366 47% 1176 11%
127 Colossus 4.0                C64 1 bf 1170 173 167  14 36% 1269 14%
128 Xadreco_5.7.JA_xb           A32 1  b 1062  42  44 360 36% 1190 11%
129 Byak 8.10.14.JA             A32 1  b 1039  41  42 366 35% 1194 21%
130 Novag Secondo               TTC 1 bf  939 280 -32   6 42%  980 17%
131 OliveChess 0.2.7            A32 1 bf  719 259-248 366 13% 1229  4%
132 DanaSah 6.0 RND             A32 1 bf  388 587-579 360  1% 1265  3%


Rapidroid test platform:
* GT-N7100 1.6 * 4 + 256MB hash: All Android progs
* GT-N5105 1.6 * 4 + 256MB hash: All Android progs
* Codegen Novatab 1.4 * 4 + 256MB: Single thread Android progs,
* Polypad 1010IPS tablet 1.61 * 2 + 128MB: Single thread Android progs
* HTC Diam 528Mhz, 16MB hash: Windows Mobile
* i7 M620 2.67 Ghz dual + Arena 3.5 + 2GB hash: Windows 64
* iPhone5S A7 1.3 Ghz * 2: iOS progs
* DosBox 1.74: DOS progs
* WinVICE 2.24: Commodore-64 progs
* Messtiny UCI adapters or CB-Emu2014: Mephisto progs
* Openings: 20 ply Adam Hair or 16 ply TCEC, no Q exchange, +0.15 to +0.40
eval by Stockfish and Komodo, depth 20 min, played both sides
* Repeating openings and twin games not allowed between two programs
* Tablebases and pondering off
* Time control: 600+0 to 1800+5 (optional 1/10 to 1/30 for manual games)

Calibration:
* Based on 50 engines rated in CCRL 40/4
* 32 bit arm5 vs CCRL 32-bit: Exynos 4412 = (Athlon X2 4600+) - 95 ELO
* 32 bit arm5 vs CCRL 64-bit: Exynos 4412 = (Athlon X2 4600+) - 118 ELO
* 32 bit arm7 vs CCRL 32-bit: Exynos 4412 = (Athlon X2 4600+) - 60 ELO
* 32 bit arm7 vs CCRL 64-bit: Exynos 4412 = (Athlon X2 4600+) - 83 ELO
* Bayeselo offset = 2356 (Mean of ELO error vs target: 54.3)

Termination stats:
* W:39.9% D:27.3% B:32.9% (53.5% vs 46.5%)

Legend:
* T = threads
* tc= f (playes fixed time), b (plays Fischer clock), bf (plays both)
* O/S: A32=Android 32bit, W64=Windows 64bit, C64=Commodore 64, TTC=Tabletop, IOS=iPhone

Android UCI engine update: Critter 1.6a for Android 5.0+

We owe tons of thanks to Gran Virt for suggesting a very simple trick which consists of altering just one dedicated byte directly in the binary of the old Critter, in order to make it compatible with Android versions which require PIE (Position Independent Executable). A truly smart catch by Gran!

Reminder:
Android up to 4.0.4 (API level up to 15) require NOPIE builds and don't accept PIE.
Android 4.1 to 4.4.4 (API level 16 to 19) can run both NOPIE and PIE.
Android 5.0 and up (API level 21 and up) require PIE and don't accept NOPIE.

Thus, the trick should be a tasty surprise for people with Android 5.0 and newer, who could not run Critter arm5 NOPIE until today. Now, they are provided with a legendary 3000+ ELO engine.

GET Critter 1.6a arm5 pie

Let's all remember that before the arrival of Chiron 4, the old Critter build, made in 2012 (!!!) used to be the #3 engine for Android for a very long time. It deserved this trick indeed.

One would dream of arm7 and arm8 builds of Critter as well but let's not get into unrealistic phantasys. Richard Vida stopped developing Critter after R.Houdart's threats long ago and there's no hope for a comeback.
Richard Vida, the author of Critter