Abaia: A new iPhone chess program

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

Moderators: hgm, Rebel, chrisw

Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Abaia: A new iPhone chess program

Post by Tord Romstad »

Hi all,

Abaia, a beta version of Glaurung for jailbroken iPhones and iPod Touches is now available. Further information and installation instructions can be found on this page.

Those who have non-jailbroken phones will have to wait for the App Store version of Glaurung (which is probably still a few weeks away), or become beta testers. :)

Tord
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Abaia: A new iPhone chess program

Post by Tord Romstad »

Somehow I managed to screw up saving and loading games to PGN files. :(

I've fixed the bug -- please reinstall.

Tord
Marc Lacrosse
Posts: 511
Joined: Wed Mar 08, 2006 10:05 pm

Re: Abaia: A new iPhone chess program

Post by Marc Lacrosse »

Seeing the screenshots it seems you are an e4 player, aren't you Tord
:-)

Marc
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Abaia: A new iPhone chess program

Post by Tord Romstad »

Marc Lacrosse wrote:Seeing the screenshots it seems you are an e4 player, aren't you Tord
:-)
Mostly, but not exclusively -- during my years as a chess player (around 1990), I think I played 1. e4 about 60-70% of the time, 1. d4 30-40% of the time, 1. Nf3 in three or four games, and 1. Nc3 once (the only first move with which I have a 100% score). :)

First six test games with Abaia (with lots of awful moves from both sides -- clearly computer chess has a long way to go on the iPhone):

Code: Select all

[Event "Test match"]
[Site "?"]
[Date "Feb 1, 2009"]
[Round "1"]
[White "Abaia"]
[Black "Chess Genius"]
[Result "1-0"]

1. e4 c5 2. Nf3 e6 3. d4 cxd4 4. Nxd4 a6 5. Bd3 Nf6 6. O-O d6 7. c4 g6 8. Nc3
Bg7 9. Be3 O-O 10. Rc1 Nc6 11. Nxc6 bxc6 12. Be2 Rb8 13. Rb1 Qc7 14. b4 d5 15.
Qd3 Rd8 16. Rfd1 Rd7 17. cxd5 cxd5 18. Rbc1 dxe4 19. Nxe4 Rxd3 20. Nxf6+ Bxf6
21. Rxc7 Rxd1+ 22. Bxd1 Be5 23. Rc1 Bd7 24. f4 Bd6 25. a3 Kf8 26. Be2 Bb5 27.
Kf2 Ke7 28. g3 Bxe2 29. Kxe2 Kd7 30. Rd1 Kc6 31. Rd2 Rb5 32. Rc2+ Kd7 33. Bd2
Rh5 34. h4 Rd5 35. Bc3 Ke7 36. Rd2 h6 37. Rxd5 exd5 38. Kd3 Kd7 39. Be5 Be7 40.
Bg7 h5 41. Bc3 f5 42. Be5 Kc6 43. Kc3 Bd8 44. a4 Bb6 45. Bd4 Bc7 46. Kd3 Bd6
47. Bc3 Be7 48. Ke3 Kb7 49. Kd4 Bf6+ 50. Kd3 Be7 51. Be1 Kc6 52. Kd4 Bf6+ 53.
Ke3 Kd6 54. Ke2 Bd8 55. Bf2 Kc6 56. Kd3 Be7 57. Kc3 Bf8 58. Bd4 Bd6 59. Be5 Be7
60. Kb3 Bf8 61. Bf6 Bd6 62. Bh8 Bb8 63. Bd4 Bc7 64. Be3 Bd8 65. Bc5 Bf6 66. Kc2
Bg7 67. Ba7 Bh8 68. Kd3 Bf6 69. Bc5 Bg7 70. Bf2 Bf8 71. Kc3 Bd6 72. Ba7 Bc7 73.
Bc5 a5 74. Bd4 axb4+ 75. Kxb4 Bb6 76. Bxb6 Kxb6 77. a5+ Kc6 78. a6 Kb6 79. a7
Kxa7 80. Kc5 Ka6 81. Kxd5 Kb5 82. Ke5 Kc4 83. Kf6 Kd5 84. Kxg6 Ke6 85. Kxh5 Kf6
86. g4 fxg4 87. Kxg4 Kg6 88. h5+ Kf6 89. h6 Kg6 90. h7 Kxh7 91. Kf5 Kg8 92. Kf6
Kf8 93. f5 Ke8 94. Kg7 Ke7 95. f6+ Ke6 96. f7 Kf5 97. f8=Q+ Ke4 98. Kf6 Kd4 99.
Qa8 Ke3 100. Ke5 Kd3 101. Qe4+ Kc3 102. Qd4+ Kb3 103. Kd5 Kc2 104. Kc4 Kb1 105.
Kc3 Ka2 106. Qd1 Ka3 107. Qa1#
1-0

[Event "Test match"]
[Site "?"]
[Date "Feb 1, 2009"]
[Round "2"]
[White "Chess Genius"]
[Black "Abaia"]
[Result "0-1"]

1. e4 e5 2. f4 exf4 3. Nc3 Qh4+ 4. Ke2 d5 5. Nxd5 Bg4+ 6. Nf3 Nc6 7. Nxc7+ Kd8
8. Nxa8 Ne5 9. h3 Bh5 10. Qe1 Nxf3 11. Qxh4+ Nxh4+ 12. Ke1 Nf6 13. e5 Ne4 14.
Rh2 Bc5 15. d4 Bxd4 16. Bd3 Nc5 17. Bb5 Bxe5 18. Bd2 Kc8 19. Bb4 Bxb2 20. Rb1
Bd4 21. c3 Bg1 22. Rh1 Be3 23. Bxc5 Bxc5 24. Rh2 Bg1 25. Rh1 Be3 26. Rh2 Rd8
27. Ba4 Rd2 28. Rb4 Re2+ 29. Kf1 Nf5 30. Bd7+ Kxd7 31. Rxb7+ Kd6 32. Rd7+ Kxd7
33. Nb6+ axb6 34. a4 Ng3#
0-1

[Event "Test match"]
[Site "?"]
[Date "Feb 1, 2009"]
[Round "3"]
[White "Abaia"]
[Black "Chess Genius"]
[Result "1-0"]

1. d4 d5 2. c4 c6 3. Nc3 e6 4. e3 Nf6 5. Nf3 Bd6 6. Bd3 Nbd7 7. O-O O-O 8. e4
dxe4 9. Nxe4 Nxe4 10. Bxe4 Qc7 11. Re1 c5 12. Bg5 h6 13. Bh4 Nb6 14. b4 Nxc4
15. bxc5 Be7 16. Bxe7 Qxe7 17. Qa4 Nd6 18. cxd6 Qxd6 19. Qc4 Rd8 20. Rab1 Rb8
21. Qc2 b6 22. Bh7+ Kf8 23. Ne5 Bb7 24. Rb3 Rbc8 25. Qb1 f6 26. Ng6+ Kf7 27.
Rg3 Rc7 28. Rg4 f5 29. Rg3 Kf6 30. Qb3 Be4 31. a4 Bd5 32. Qd1 Qb4 33. a5 Qxa5
34. Rge3 Qb5 35. Qh5 Qe8 36. g4 Rc6 37. gxf5 Rdd6 38. fxe6 Qxe6 39. Rxe6+ Rxe6
40. Ne5 Rc7 41. Qh4+ g5 42. Qxh6+ Ke7 43. Qxg5+ Kf8 44. Qd8+ Kg7 45. Qxc7+ Kh6
46. Bf5 Rg6+ 47. Bxg6 Be6 48. Qh7+ Kg5 49. h4+ Kf6 50. Nd7+ Bxd7 51. Qf7#
1-0

[Event "Test match"]
[Site "?"]
[Date "Feb 1, 2009"]
[Round "4"]
[White "Chess Genius"]
[Black "Abaia"]
[Result "0-1"]

1. d4 Nf6 2. c4 c5 3. d5 b5 4. cxb5 a6 5. bxa6 Bxa6 6. Nc3 g6 7. e4 Bxf1 8.
Kxf1 d6 9. Nf3 Nbd7 10. Bg5 Bg7 11. Ke2 Qb6 12. Qc2 O-O 13. Rhc1 Rfb8 14. b3 c4
15. bxc4 Ng4 16. Bh4 Nc5 17. Rab1 Qa6 18. Rxb8+ Rxb8 19. Nb5 Bh6 20. Rb1 Ra8
21. h3 Qxa2 22. Rb2 Qa1 23. hxg4 Qh1 24. Nc7 Ra1 25. Rb8+ Bf8 26. Bxe7 Nd7 27.
Rd8 Qf1+ 28. Ke3 Ra3+ 29. Kf4 Qxg2 30. Qe2 h6 31. Re8 g5+ 32. Bxg5 hxg5+ 33.
Nxg5 Qh2+ 34. Kf5 Qh8 35. e5 dxe5 36. Re6 fxe6+ 37. Kxe6 Qg7 38. d6 Nc5+ 39.
Kf5 Bxd6 40. Nd5 Qf8+ 41. Kg6 Qe8+ 42. Kf6 Ra6 43. Kf5 Kg7 44. Nf4 Qf8+ 45. Nf7
Qxf7+ 46. Kg5 Be7#
0-1

[Event "Test match"]
[Site "?"]
[Date "Feb 1, 2009"]
[Round "5"]
[White "Abaia"]
[Black "Chess Genius"]
[Result "1-0"]

1. e4 Nf6 2. e5 Nd5 3. d4 d6 4. c4 Nb6 5. f4 dxe5 6. fxe5 Nc6 7. Be3 Bf5 8. Nc3
e6 9. Nf3 Qd7 10. Be2 Be7 11. O-O O-O-O 12. a4 Bb4 13. Qb3 h5 14. Bg5 Be7 15.
Bxe7 Qxe7 16. a5 Nd7 17. a6 b6 18. Qa4 Ndb8 19. Nb5 Be4 20. Rad1 Rd7 21. Nd2
Bf5 22. d5 exd5 23. Rxf5 g6 24. Rf2 d4 25. Nf3 Qc5 26. b4 Qf8 27. Nfxd4 Nxd4
28. Nxd4 Rh7 29. Bf3 Qe7 30. Bb7+ Kd8 31. Rfd2 Ke8 32. Nc6 Nxc6 33. Rxd7 Qxe5
34. Rd8+ Ke7 35. Qxc6 Qe3+ 36. Kh1 Qe6 37. Re8+ Kf6 38. Rxe6+ fxe6 39. Rf1+ Ke5
40. Qe4+ Kd6 41. Rf6 Ke7 42. Qxe6+ Kd8 43. Rf8#
1-0

[Event "Test match"]
[Site "?"]
[Date "Feb 1, 2009"]
[Round "6"]
[White "Chess Genius"]
[Black "Abaia"]
[Result "0-1"]

1. d4 d5 2. c4 e6 3. Nc3 Nf6 4. Nf3 c6 5. e3 Nbd7 6. Bd3 Bd6 7. e4 dxe4 8. Nxe4
Nxe4 9. Bxe4 O-O 10. O-O h6 11. Bc2 e5 12. Qd3 f5 13. c5 Bc7 14. Qb3+ Kh8 15.
dxe5 Nxe5 16. Nxe5 Bxe5 17. Rd1 Qc7 18. h3 Re8 19. Qb4 Bd7 20. Bb3 Be6 21. Bxe6
Rxe6 22. Be3 Rae8 23. Rac1 Rg6 24. Qb3 Ree6 25. Rd3 Kh7 26. Rcd1 Bf4 27. Rd7
Qe5 28. Bxf4 Qxf4 29. Qd3 b5 30. Rxa7 Re5 31. Rd7 Rxc5 32. a3 Rc1 33. Qe2 Rxd1+
34. Qxd1 Qe4 35. g3 f4 36. g4 c5 37. Qd5 Qxd5 38. Rxd5 Rg5 39. Rd7 h5 40. Rb7
hxg4 41. h4 Re5 42. Rxb5 Kg6 43. a4 Re1+ 44. Kg2 Kh5 45. Rxc5+ Kxh4 46. b3 f3+
47. Kh2 Re2 48. Kg1 Rb2 49. Rd5 Rxb3 50. a5 Ra3 51. Kh2 Ra2 52. Kg1 g5 53. a6
Rxa6 54. Rb5 Ra1+ 55. Kh2 Rf1 56. Rb2 Rxf2+ 57. Rxf2 g3+ 58. Kg1 gxf2+ 59. Kf1
g4 60. Kxf2 Kh3 61. Kg1 Kg3 62. Kh1 Kf2 63. Kh2 g3+ 64. Kh3 g2 65. Kg4 Ke3 66.
Kf5 g1=Q 67. Kf6 f2 68. Ke6 f1=Q 69. Kd5 Qb5+ 70. Ke6 Qg6+ 71. Ke7 Qbe8#
0-1
Tord
Lion
Posts: 531
Joined: Fri Mar 31, 2006 1:26 pm
Location: Switzerland

Re: Abaia: A new iPhone chess program

Post by Lion »

Hi !

Do you think Glaurung is stronger on a PPC ?

regards
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Abaia: A new iPhone chess program

Post by Tord Romstad »

Lion wrote:Do you think Glaurung is stronger on a PPC ?
The acronym "PPC", unfortunately, is used with two entirely different and unrelated meanings in computing, and it is often difficult to guess which of the two meanings people intend. I'll answer to both possible interpretations of your question.

PowerPC is a very wide family of CPUs, but I the PowerPC G4 and G5 CPUs found in the last PowerPC based Macintoshes where much faster for running Glaurung than the ARM CPU in the iPhone. I have never used any of the numerous PowerPC-based gaming consoles on the market, but I am fairly sure they are also much faster than the ARM for my program (and most other programs, I am sure). I think there are also PowerPC variants for embedded devices, I am not sure how these compare to the ARM.

PocketPC devices are usually, if I have understood correctly, powered by ARM CPUs, just like the iPhone and iPod Touch. Different devices probably have different CPU speeds (even within a single platform, for instance the second-generation iPod Touch has a faster CPU than the iPhone), and there are probably some PocketPCs which run Glaurung faster than the iPhone, and some which runs it more slowly. The compilers used may also have some importance.

However, it is evident that Glaurung performs very poorly on the ARM in general. As I have always feared, the bitboard infrastructure in Glaurung 2 has turned out to be a serious design mistake.

Tord
User avatar
mhull
Posts: 13447
Joined: Wed Mar 08, 2006 9:02 pm
Location: Dallas, Texas
Full name: Matthew Hull

Re: Abaia: A new iPhone chess program

Post by mhull »

Tord Romstad wrote:As I have always feared, the bitboard infrastructure in Glaurung 2 has turned out to be a serious design mistake.

Tord
IMO, your fears are groundless. Hand-held devices are today where PC's were yesterday. And the bitboard design is just as forward-looking on these small devices as it was on PC's of the past.
Matthew Hull
Tord Romstad
Posts: 1808
Joined: Wed Mar 08, 2006 9:19 pm
Location: Oslo, Norway

Re: Abaia: A new iPhone chess program

Post by Tord Romstad »

mhull wrote:IMO, your fears are groundless. Hand-held devices are today where PC's were yesterday. And the bitboard design is just as forward-looking on these small devices as it was on PC's of the past.
The point is that in chess engine programming, being forward-looking is and always has been kind of stupid. Chess engines are relatively small and simple programs, and it isn't a tremendous amount of work to adapt them to new and improved hardware. The right approach is to always design for the hardware you have now. When the future comes, you will be able to redesign quickly and easily.

For PDAs and mobile phones, I guesstimate that widespread use of 64-bit CPUs is still at least a couple of years away. By that time, if I am still doing computer chess, I will probably already have rewritten my entire engine from scratch at least once in the meantime, and what I am doing now will be completely irrelevant.

When all the more urgent tasks are completed, my plan is therefore to throw out the bitboard internals of Glaurung and replace them with something more mobile-friendly.

Tord
User avatar
mhull
Posts: 13447
Joined: Wed Mar 08, 2006 9:02 pm
Location: Dallas, Texas
Full name: Matthew Hull

Re: Abaia: A new iPhone chess program

Post by mhull »

Tord Romstad wrote:
mhull wrote:IMO, your fears are groundless. Hand-held devices are today where PC's were yesterday. And the bitboard design is just as forward-looking on these small devices as it was on PC's of the past.
The point is that in chess engine programming, being forward-looking is and always has been kind of stupid. Chess engines are relatively small and simple programs, and it isn't a tremendous amount of work to adapt them to new and improved hardware. The right approach is to always design for the hardware you have now. When the future comes, you will be able to redesign quickly and easily.

For PDAs and mobile phones, I guesstimate that widespread use of 64-bit CPUs is still at least a couple of years away. By that time, if I am still doing computer chess, I will probably already have rewritten my entire engine from scratch at least once in the meantime, and what I am doing now will be completely irrelevant.

When all the more urgent tasks are completed, my plan is therefore to throw out the bitboard internals of Glaurung and replace them with something more mobile-friendly.

Tord
But I wouldn't expect the speedup obtained from your redesigned internals to result in significantly better play in the example games you provided. If you're already handing genius his helmet, then even what you consider to be low quality moves in these winning games won't change much where speedup < 100%.
Matthew Hull
Cubeman
Posts: 644
Joined: Fri Feb 02, 2007 3:11 am
Location: New Zealand

Re: Abaia: A new iPhone chess program

Post by Cubeman »

I have PocketFritz3 and have Glaurung as an additional engine.Would the iphone version be the same.I have also tested ChessGenius on both platforms and it seems that the iphone is as fast as a midrange PPC.
But 6-0 against Genius is very good result.Out of curiosity what was the time control for the games.