Welcome, Guest. Please Login or Register.
May 12th, 2024, 8:21pm

Home Home Help Help Search Search Members Members Login Login Register Register
Arimaa Forum « AI Challenge Contest »


   Arimaa Forum
   Arimaa
   Off Topic Discussion
(Moderators: christianF, supersamu)
   AI Challenge Contest
« Previous topic | Next topic »
Pages: 1 2 3  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print
   Author  Topic: AI Challenge Contest  (Read 7919 times)
Hippo
Forum Guru
*****




Arimaa player #4450

   


Gender: male
Posts: 883
Re: AI Challenge Contest
« Reply #30 on: Jan 11th, 2012, 2:12pm »
Quote Quote Modify Modify

on Jan 11th, 2012, 8:32am, Migi wrote:
Congratulations Hippo on your 23rd place! My bot only made it to 31st place. I don't really know why it even got that high, though, because I only worked on it for like 3 days. Near the end of the contest, I made a second version of my bot, starting (almost) from scratch, which was mostly the same but with some small improvements here and there. I worked about a week on that, and locally it could beat my first version hands down, but to my surprise it performed pretty badly against other bots.
 
I think that's because of the code I added to keep ants closer together and closer to my hills. The first version spreads out its ants a lot more, and often some ants randomly walk into an undefended hill. Also some of its ants end up behind enemy lines, which could be confusing the battle logic of some bots, and also allows me to surround enemy ants better. I also spent very little time on combat logic, and focused mostly on exploring and food gathering. I don't really know why though, better combat could have given me some easy ELO points.

 
Wow, I have not noticed another arimaa player was so close to me Wink. I have replayed some of your bot's games. There were some points to easily improve ...  
1) You had no code to break stalemate even when your  bot is very much ahead it is not able to break weak defense. ... But small number of bots had "army tactics implemented".  
2) I have seen your bot to run with a single ant to the place attacked by pair of enemy ants ... I was trying to avoid such things from version 4, but I have removed last bugs in version 14 ... it was very important to minimize unnecessary loses.
3) your bot's ant distribution was bad ... it was worse than my and my was bad as well. (I have hoped the symmetry food gathering would help me in the distribution), but xiathis simple idea dominated.
4) you have timeouted too often.
I am fascinated that with all these issues you have finished 31st. I have spent a lot of time codding and debugging. Seems you have spent all the development time very efficiently. Congratulation. (I have hoped for place 31 for myself at the final turnament start).
 
Seems your bot got a lot of points thanks to high priority to walk to enemy hills what was successful against unaware opponents. And your main strategy was simillar to mine ... to win by eating faster than opponents.
 
Our games in final: 1 2 3 4 5 6 7.
You had fantastics finish ...
« Last Edit: Jan 11th, 2012, 3:44pm by Hippo » IP Logged

Migi
Forum Senior Member
****



Arimaa player #4643

   


Gender: male
Posts: 26
Re: AI Challenge Contest
« Reply #31 on: Jan 11th, 2012, 7:33pm »
Quote Quote Modify Modify

on Jan 11th, 2012, 2:12pm, Hippo wrote:
2) I have seen your bot to run with a single ant to the place attacked by pair of enemy ants ... I was trying to avoid such things from version 4, but I have removed last bugs in version 14 ... it was very important to minimize unnecessary loses.

I know. As I said, I spent very little time on battle logic. All ants are given orders individually, and they assume that all my other ants will stay where they are, but that's obviously not always true. If 2 of my ants are fighting 2 enemy ants, one might decide to attack, thinking it's at least an even trade, and the other might have seen some food nearby and runs away to go get it, leaving the first ant to die.
 
on Jan 11th, 2012, 2:12pm, Hippo wrote:
1) You had no code to break stalemate even when your  bot is very much ahead it is not able to break weak defense. ... But small number of bots had "army tactics implemented".

To break stalemates you have to charge with all your ants at the same time. My simple battle logic that only looks at one ant at a time just couldn't do that.
 
There were some small improvements in this area for my second version, but all in all not much. A P1 minimax search, which in retrospect probably wouldn't have taken very long to write, would have done a lot better for these first 2 points.
 
on Jan 11th, 2012, 2:12pm, Hippo wrote:
3) your bot's ant distribution was bad ... it was worse than my and my was bad as well. (I have hoped the symmetry food gathering would help me in the distribution), but xiathis simple idea dominated.

Yup. There were many big improvements in this area for my second version, which had some really good exploring, food gathering and ant distribution.
 
on Jan 11th, 2012, 2:12pm, Hippo wrote:
4) you have timeouted too often.

I know, but I don't really know why. My main loop checks if it's within 10ms of the maximum time and if so, it stops. The loop itself takes only like 0.1ms, so timeouts shouldn't ever happen. But they did. Maybe an issue with the contest servers? I don't know.
 
Anyway my 2nd version was much faster and never gets even close to the timeout limit, so it didn't have that issue either.
 
on Jan 11th, 2012, 2:12pm, Hippo wrote:
I am fascinated that with all these issues you have finished 31st.
 
Seems your bot got a lot of points thanks to high priority to walk to enemy hills what was successful against unaware opponents.

This fascinated me too. I knew that my first version had all the flaws you mentioned above, and I knew version 2 fixed or improved most of them (and other things as well). But when running both versions on the TCP servers, it was clear that my 2nd version was overall just worse. A lot worse. It just didn't score any points.
 
My first version expands and gathers food pretty fast, suicides some ninja ants into enemy lines and occasonally scores a few points with that, and then it dies. My second version is too defensive and builds up a huge army but doesn't have the multi-ant battle logic to do anything with it. Unfortunately I came to this conclusion too late in the contest (just a few hours before the deadline) to still make big changes.
 
So that's why I had to upload the version I only worked on for 3 days and had to throw away about 5 days of work. Note to self: don't start over from scratch unless you know for sure you'll have enough time to fix all issues that come up, no matter how big.
 
on Jan 11th, 2012, 2:12pm, Hippo wrote:
You had fantastics finish ...

Thanks, you too.
IP Logged
Hippo
Forum Guru
*****




Arimaa player #4450

   


Gender: male
Posts: 883
Re: AI Challenge Contest
« Reply #32 on: Jan 12th, 2012, 1:02am »
Quote Quote Modify Modify

I had safetyTime turnTime/5. (I have expected that to be 200ms as I somehow was convinced the turntime is 1000ms), but sections of my code had calculated time where they should finish to allow some time for further tasks as some lower priority tasks should be finished before higher priority ones ... fortunately I made these times proportional to the remaining time after the parsing.  
I was very aware of timeouts and I had no experience with profiling in java. It could be that 10% of my computation time was spent in routine checking the time remaining. I was very surprised how much computational time 500ms gives on current hardware. (Compared to the case 20 years back Wink).
 
I would never go to 10ms safetime as DOS/Windows used to measure time in units of 11ms.
« Last Edit: Jan 12th, 2012, 1:03am by Hippo » IP Logged

Pages: 1 2 3  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print

« Previous topic | Next topic »

Arimaa Forum » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.