2011-12-08T00:00:43 *** delt0r_ has quit IRC (Ping timeout: 252 seconds) 2011-12-08T00:08:49 *** b0rder has quit IRC (Quit: 离开) 2011-12-08T00:09:09 *** besh has quit IRC (Quit: Page closed) 2011-12-08T00:13:31 *** delt0r_ has joined #aichallenge 2011-12-08T00:14:30 *** McLeopold has joined #aichallenge 2011-12-08T00:16:03 *** yoden has quit IRC (Quit: Leaving.) 2011-12-08T00:18:47 *** AntDroid_ has joined #aichallenge 2011-12-08T00:20:20 *** Antimony has quit IRC (Ping timeout: 252 seconds) 2011-12-08T00:24:52 *** avdg has joined #aichallenge 2011-12-08T00:25:19 *** Areks has joined #aichallenge 2011-12-08T00:29:30 *** replore_ has joined #aichallenge 2011-12-08T00:30:28 Influence maps ftw! 2011-12-08T00:30:36 \o/ 2011-12-08T00:31:43 Someone posted collaborative diffusion, but its really just an influence map 2011-12-08T00:32:49 it seems like the second best method to me 2011-12-08T00:33:51 Whats the first? 2011-12-08T00:34:09 something that controls individual ants toward the best path 2011-12-08T00:34:31 or, something where 2 ants coordinate together 2011-12-08T00:34:41 *** welterde has quit IRC (Ping timeout: 248 seconds) 2011-12-08T00:34:47 *** nickjohnson has quit IRC (Ping timeout: 240 seconds) 2011-12-08T00:34:51 You can do that with most methods, thats basically the end goal 2011-12-08T00:34:51 *** Fluxid has quit IRC (Ping timeout: 252 seconds) 2011-12-08T00:35:07 *** modafinil has quit IRC (Ping timeout: 255 seconds) 2011-12-08T00:35:07 I find influence mapping to coordinate much easier than per ant searching 2011-12-08T00:36:54 *** Fluxid has joined #aichallenge 2011-12-08T00:36:59 hmm, I think for exploring or finding chokepoints, they have their place, but not for effecient food gathering 2011-12-08T00:37:21 *** Fluxid is now known as Guest86987 2011-12-08T00:39:09 *** Jak_o_Shadows has quit IRC (Remote host closed the connection) 2011-12-08T00:39:55 *** Jak_o_Shadows has joined #aichallenge 2011-12-08T00:40:14 *** modafinil has joined #aichallenge 2011-12-08T00:46:25 *** amstan has quit IRC (Quit: Konversation terminated!) 2011-12-08T00:46:28 *** amstan_ has joined #aichallenge 2011-12-08T00:46:28 *** ChanServ sets mode: +o amstan_ 2011-12-08T00:51:08 *** welterde has joined #aichallenge 2011-12-08T00:55:45 Its pretty simple to make influene mapping generate equivilent data to a* or any of the similar searches 2011-12-08T00:56:11 So not sure why its inefficient for food gathering 2011-12-08T00:56:50 making sure 2 ants don't go for a pile when 1 ant would do 2011-12-08T00:57:23 Yea, so you decrement your map based on occupancy 2011-12-08T00:57:30 that is basically its strongpoint 2011-12-08T00:59:50 The downside is that you dont get as quick response time for fast changing maps 2011-12-08T01:00:12 but when the food and ant count grows it doesnt lose efficiency which is win 2011-12-08T01:00:42 food count is never high 2011-12-08T01:01:14 it never gets very high as an absolute value and it never gets very high relative to ant count after the beginning 2011-12-08T01:01:59 ah, well the problem ive noticed with a*/etc is you are doing an exponential algo * num ants which doesnt work out well 2011-12-08T01:02:19 if you search from food to ants it works fine 2011-12-08T01:02:25 and food is important enough to handle specifically 2011-12-08T01:02:27 sure, but then you have to collaborate 2011-12-08T01:02:28 yeah, I'm working on bfs, search from food 2011-12-08T01:02:49 well that *is* how i do it so I think it works ok :) 2011-12-08T01:02:56 and food * num_ants is just as bad as num_ants * food ;)( 2011-12-08T01:03:22 yes but you're searching from food to any ant 2011-12-08T01:03:24 not every ant 2011-12-08T01:03:35 BenJackson: how do you explorer? last seen? influece map? 2011-12-08T01:03:36 any moveable ant* 2011-12-08T01:03:37 and the distance is capped anyway 2011-12-08T01:03:39 but you dont want the n closest ants? 2011-12-08T01:03:54 McLeopold: various ways 2011-12-08T01:04:08 primarily an influence-type map based on finding the unexplored frontier 2011-12-08T01:04:19 do you detect dead ends? 2011-12-08T01:04:28 i do iterative bfs from uncollected food to moveable ants, and atm i'm not collecting food that doesn't have a seen path to it from a hill 2011-12-08T01:04:34 if you saw my multi-source bfs that was the basis of almost everything I did in my first decent version 2011-12-08T01:04:38 well, i'm not searching over unseen land 2011-12-08T01:04:43 you mean cul-de-sacs? 2011-12-08T01:05:13 cul-de-sac implies a loop? 2011-12-08T01:05:38 a path with no outlet 2011-12-08T01:05:52 BenJackson: so you are doing an influence map? 2011-12-08T01:05:59 in french literally "bott of bag" 2011-12-08T01:06:04 +om 2011-12-08T01:06:19 greghaynes: yes, but how I'm using it has varied considerably 2011-12-08T01:06:34 originally I just did things like multi-source bfs sets of interesting things 2011-12-08T01:06:37 food, enemy hills, etc 2011-12-08T01:06:47 and then each ant went to the closest one of those 2011-12-08T01:06:50 Makes sense, I couldnt see a better way to aggregate map data though 2011-12-08T01:06:59 then that got modulated by scaling the closeness 2011-12-08T01:07:10 eg so "hill defense" was only interesting very locally 2011-12-08T01:07:16 while attacking was interesting far away 2011-12-08T01:07:34 now I have those maps but I use them indirectly in various ways 2011-12-08T01:08:01 since I can immediately ask "how many steps is this ant to *any* enemy ant" 2011-12-08T01:08:03 not *every* 2011-12-08T01:13:18 McLeopold: Anyway if you see a dead end then the frontier extends beyond the back wall of it and thus the influence for exploring no longer eminates from inside 2011-12-08T01:13:27 in fact the gradient immediately flips around 2011-12-08T01:13:51 exploring is not that hard 2011-12-08T01:13:57 you just need some attractive force on unseen squares 2011-12-08T01:14:05 what's harder is maintaining vision long term 2011-12-08T01:14:18 that's a different problem from most in the game: 2011-12-08T01:14:23 it's not "somewhere to go" 2011-12-08T01:23:49 *** ltriant has quit IRC (Quit: Computer has gone to sleep) 2011-12-08T01:28:32 once again brute force seems fast enough 2011-12-08T01:34:25 *** Scryer has quit IRC (Quit: Page closed) 2011-12-08T01:40:12 *** alc has joined #aichallenge 2011-12-08T01:46:03 *** JorgeB has joined #aichallenge 2011-12-08T01:46:05 *** LouisMartin has joined #aichallenge 2011-12-08T01:55:54 *** bhasker has joined #aichallenge 2011-12-08T01:57:26 *** pairofdice has joined #aichallenge 2011-12-08T01:57:58 *** Palmik has joined #aichallenge 2011-12-08T02:01:45 *** pairofdice has quit IRC (Ping timeout: 252 seconds) 2011-12-08T02:01:54 *** alc has quit IRC (Remote host closed the connection) 2011-12-08T02:02:47 *** ildarkaa has joined #aichallenge 2011-12-08T02:07:02 *** pairofdice has joined #aichallenge 2011-12-08T02:07:09 *** AntDroid_ has quit IRC (Ping timeout: 265 seconds) 2011-12-08T02:11:47 *** cuda has joined #aichallenge 2011-12-08T02:13:19 *** Jak_o_Shadows has quit IRC (Read error: Connection reset by peer) 2011-12-08T02:13:26 *** pairofdice has quit IRC (Ping timeout: 248 seconds) 2011-12-08T02:16:34 *** cuda has quit IRC (Ping timeout: 244 seconds) 2011-12-08T02:35:45 http://paste.aichallenge.org/Xz0Gl/ 2011-12-08T02:35:50 don't know why I didn't just do that sooner 2011-12-08T02:37:56 *** bmh has joined #aichallenge 2011-12-08T02:38:16 bmh: I just pasted http://paste.aichallenge.org/Xz0Gl/ 2011-12-08T02:38:39 BenJackson: what am I looking for? 2011-12-08T02:38:45 show orange's vis 2011-12-08T02:39:19 it isn't showing anything? 2011-12-08T02:40:22 that doesn't bring up a viewer? 2011-12-08T02:40:23 works for me 2011-12-08T02:40:54 It brings up a viewer, but showing the AI state doesn't do anything 2011-12-08T02:41:15 it certainly doesn't like to kill hills 2011-12-08T02:41:45 not ai state, just the fog of war 2011-12-08T02:42:10 that bot isn't doing anything but optimizing fog of war with a minute interest in exploration 2011-12-08T02:42:24 looks efficient :) 2011-12-08T02:42:58 wow that looks efficient 2011-12-08T02:43:08 BenJackson: can you run a bot on my tcp server? I'm waiting for an opponent 2011-12-08T02:43:21 I think that's it 2011-12-08T02:43:30 I set the font size for those windows so small I can't read them 2011-12-08T02:43:37 thanks. I told it to play 15 games. Back in 10. 2011-12-08T02:43:40 (minutes) 2011-12-08T02:48:44 *** darkf has quit IRC (Quit: Leaving) 2011-12-08T02:49:48 *** Conorach has joined #aichallenge 2011-12-08T02:52:32 back -- BenJackson: my bot is a little... zergy. 2011-12-08T02:52:46 *** amstan__ has joined #aichallenge 2011-12-08T02:52:46 *** ChanServ sets mode: +o amstan__ 2011-12-08T02:53:00 sorry I quit running it earlier -- the tcpclient leaks some resoruces 2011-12-08T02:53:06 so I was killing them all because I was having major other problems 2011-12-08T02:53:13 *** GeorgeJ has joined #aichallenge 2011-12-08T02:53:13 *** GeorgeJ has joined #aichallenge 2011-12-08T02:57:08 I am so psyched to have a bot that doesn't crash 2011-12-08T02:57:12 *** bmh has quit IRC (Quit: sleep) 2011-12-08T03:01:32 *** amstan__ has quit IRC (Ping timeout: 252 seconds) 2011-12-08T03:01:55 BenJackson: influence map? 2011-12-08T03:02:21 only for the slight interest in exploring 2011-12-08T03:02:38 ending up with vision of the whole map is just literally optimizing having vision of the whole map 2011-12-08T03:02:44 which somehow I always assumed would be too expensive 2011-12-08T03:03:51 hmm 2011-12-08T03:16:51 *** aerique has joined #aichallenge 2011-12-08T03:17:47 *** mikewintermute has joined #aichallenge 2011-12-08T03:18:10 *** mj41 has joined #aichallenge 2011-12-08T03:18:58 *** Thinq has quit IRC (Ping timeout: 244 seconds) 2011-12-08T03:33:32 *** Thinq has joined #aichallenge 2011-12-08T03:38:13 *** epicmonkey has joined #aichallenge 2011-12-08T03:45:32 *** praveen_ has joined #aichallenge 2011-12-08T03:52:38 *** Fandekasp has quit IRC (Ping timeout: 248 seconds) 2011-12-08T03:56:42 *** jon1 has joined #aichallenge 2011-12-08T04:06:23 *** team_9 has joined #aichallenge 2011-12-08T04:06:27 *** olexs has joined #aichallenge 2011-12-08T04:10:19 *** Guest86987 is now known as Fluxid 2011-12-08T04:11:27 *** team_9 has quit IRC (Quit: Page closed) 2011-12-08T04:18:25 *** ikaros has joined #aichallenge 2011-12-08T04:22:41 *** pairofdice has joined #aichallenge 2011-12-08T04:32:21 *** FatboyPunk has joined #aichallenge 2011-12-08T04:35:07 *** antimatroid1 has joined #aichallenge 2011-12-08T04:35:07 *** antimatroid has quit IRC (Read error: Connection reset by peer) 2011-12-08T04:37:15 *** olexs has quit IRC (Quit: Leaving.) 2011-12-08T04:44:21 *** mviel_ has joined #aichallenge 2011-12-08T04:48:01 *** mviel__ has quit IRC (Ping timeout: 255 seconds) 2011-12-08T04:49:10 *** retybok has quit IRC (Quit: leaving) 2011-12-08T05:00:27 *** replore_ has quit IRC (Remote host closed the connection) 2011-12-08T05:05:01 *** praveen_ has quit IRC (Ping timeout: 265 seconds) 2011-12-08T05:18:04 *** Areks has quit IRC (Ping timeout: 268 seconds) 2011-12-08T05:30:09 *** Areks has joined #aichallenge 2011-12-08T05:45:59 *** antimatroid1 has quit IRC (Ping timeout: 252 seconds) 2011-12-08T05:46:44 *** antimatroid has joined #aichallenge 2011-12-08T05:49:34 *** Mystret has joined #aichallenge 2011-12-08T05:52:25 *** antimatroid has quit IRC (Ping timeout: 244 seconds) 2011-12-08T05:53:05 *** antimatroid has joined #aichallenge 2011-12-08T06:04:49 *** ikaros has quit IRC (Ping timeout: 244 seconds) 2011-12-08T06:08:01 *** antimatroid has quit IRC (Ping timeout: 252 seconds) 2011-12-08T06:14:19 *** antimatroid has joined #aichallenge 2011-12-08T06:19:24 *** antimatroid has quit IRC (Ping timeout: 244 seconds) 2011-12-08T06:19:57 *** antimatroid has joined #aichallenge 2011-12-08T06:21:07 *** mviel_ has quit IRC (Ping timeout: 240 seconds) 2011-12-08T06:21:21 *** mviel_ has joined #aichallenge 2011-12-08T06:22:24 *** mviel__ has joined #aichallenge 2011-12-08T06:24:12 *** mviel_ has quit IRC (Read error: Operation timed out) 2011-12-08T06:24:17 *** imp5imp5 has quit IRC (Ping timeout: 265 seconds) 2011-12-08T06:31:35 *** _flag <_flag!~flag@69-165-173-172.dsl.teksavvy.com> has joined #aichallenge 2011-12-08T06:36:43 *** Palmik has quit IRC (Ping timeout: 252 seconds) 2011-12-08T06:37:46 *** UncleVasya has joined #aichallenge 2011-12-08T06:44:47 *** epicmonkey has quit IRC (Ping timeout: 240 seconds) 2011-12-08T06:46:09 *** Palmik has joined #aichallenge 2011-12-08T07:02:36 *** Palmik has quit IRC (Ping timeout: 240 seconds) 2011-12-08T07:08:48 *** g0llum has joined #aichallenge 2011-12-08T07:22:58 *** ikaros has joined #aichallenge 2011-12-08T07:23:45 *** nfn has joined #aichallenge 2011-12-08T07:36:27 *** amstan_ has quit IRC (Ping timeout: 240 seconds) 2011-12-08T07:40:24 *** _flag <_flag!~flag@69-165-173-172.dsl.teksavvy.com> has quit IRC (Quit: Lost terminal) 2011-12-08T07:45:43 *** Anilm3 has joined #aichallenge 2011-12-08T07:51:11 *** mviel_ has joined #aichallenge 2011-12-08T07:51:30 *** zoli1 has joined #aichallenge 2011-12-08T07:55:01 *** mviel__ has quit IRC (Ping timeout: 252 seconds) 2011-12-08T08:00:17 *** ildarkaa has quit IRC (Quit: Page closed) 2011-12-08T08:00:56 *** delt0r_ has quit IRC (Ping timeout: 240 seconds) 2011-12-08T08:08:26 *** mviel_ is now known as vielmath 2011-12-08T08:08:42 *** vielmath is now known as mviel_ 2011-12-08T08:10:33 *** Surya has joined #aichallenge 2011-12-08T08:12:17 *** Palmik has joined #aichallenge 2011-12-08T08:14:57 *** delt0r_ has joined #aichallenge 2011-12-08T08:19:14 *** thestinger has quit IRC (Quit: WeeChat 0.3.6) 2011-12-08T08:32:42 *** imp5imp5 has joined #aichallenge 2011-12-08T08:38:27 *** jeff_ has joined #aichallenge 2011-12-08T08:38:53 *** jeff_ is now known as Guest78989 2011-12-08T08:42:58 contestbot: hi 2011-12-08T08:42:59 Guest78989: User error, it's not my fault. 2011-12-08T08:43:32 contestbot: ranking 10 2011-12-08T08:43:33 Guest78989: I'm sorry Dave, err Guest78989; I cannot 'ranking'. 2011-12-08T08:43:47 contestbot: rankings 10 2011-12-08T08:43:48 Guest78989: Top 10 players: pguillory(92.6), xathis(91.1), ChrisH(89.6), ThisIsNotABug(87.7), lazarant(87.6), delineate(87.5), RVeerdonk(87.0), GreenTea(86.9), Migi32(86.2), BenJackson(85.9) 2011-12-08T08:43:50 *** TheLinker has joined #aichallenge 2011-12-08T08:43:59 contestbot: bye 2011-12-08T08:44:00 Guest78989: I do not know about 'bye', but I do know about these similar topics: 'beta' 2011-12-08T08:44:10 *** Guest78989 has quit IRC (Quit: Page closed) 2011-12-08T08:49:22 ...derp 2011-12-08T08:49:32 @rankdings 2011-12-08T08:49:33 pairofdice: I'm sorry Dave, err pairofdice; I cannot 'rankdings'. 2011-12-08T08:49:36 @rankings 2011-12-08T08:49:37 pairofdice: Top 10 players: pguillory(92.6), xathis(91.1), ChrisH(89.6), ThisIsNotABug(87.7), lazarant(87.6), delineate(87.5), RVeerdonk(87.0), GreenTea(86.9), Migi32(86.2), BenJackson(85.9) 2011-12-08T08:52:13 *** TheLinker has quit IRC (Quit: Bye) 2011-12-08T08:57:12 *** keithroe has joined #aichallenge 2011-12-08T08:59:29 *** Antimony has joined #aichallenge 2011-12-08T09:04:34 *** amstan_ has joined #aichallenge 2011-12-08T09:04:35 *** ChanServ sets mode: +o amstan_ 2011-12-08T09:11:02 *** imp5imp5 has quit IRC (Ping timeout: 265 seconds) 2011-12-08T09:11:47 *** Areks has quit IRC (Ping timeout: 268 seconds) 2011-12-08T09:14:54 *** FatboyPunk has quit IRC (Ping timeout: 265 seconds) 2011-12-08T09:20:07 *** goffrie has quit IRC (Ping timeout: 244 seconds) 2011-12-08T09:20:36 *** goffrie has joined #aichallenge 2011-12-08T09:22:49 *** Antimony has quit IRC (Ping timeout: 252 seconds) 2011-12-08T09:29:17 *** Antimony has joined #aichallenge 2011-12-08T09:30:48 *** avdg has quit IRC (Quit: Leaving.) 2011-12-08T09:32:54 *** tobym has joined #aichallenge 2011-12-08T09:34:03 *** modafinil is now known as BEASTMODE 2011-12-08T09:34:28 *** sigh has quit IRC (Remote host closed the connection) 2011-12-08T09:38:06 *** keithroe has quit IRC (Ping timeout: 265 seconds) 2011-12-08T09:38:15 *** Antimony has quit IRC (Ping timeout: 252 seconds) 2011-12-08T09:51:14 *** Antimony has joined #aichallenge 2011-12-08T09:54:48 *** thestinger has joined #aichallenge 2011-12-08T10:00:08 *** Antimony has quit IRC (Ping timeout: 240 seconds) 2011-12-08T10:05:31 *** olexs has joined #aichallenge 2011-12-08T10:05:52 what's up with aichallenge workers? game rate is near zero since yesterday... 2011-12-08T10:08:32 *** NightExcessive has joined #aichallenge 2011-12-08T10:08:42 they scale up and down according to price fluctuations in the cloud 2011-12-08T10:12:42 http://aichallenge.org/server_stats.php 2011-12-08T10:12:47 only one server currently 2011-12-08T10:14:09 *** ikaros has quit IRC (Quit: Ex-Chat) 2011-12-08T10:19:08 not very nice scaling the workers down now this much, when the challenge is nearly over and people want to see current ranking of their latest bots before final submissions... 2011-12-08T10:19:57 olexs: when this happens price is usually 20 times more than normal 2011-12-08T10:20:09 it's really stupid to be playing games at that price 2011-12-08T10:20:22 20 times the price isn't nice either 2011-12-08T10:20:25 *** olexs has quit IRC (Quit: Leaving.) 2011-12-08T10:20:37 yeah, i think it's like 5c/hour on average 2011-12-08T10:20:43 our limit is $1 2011-12-08T10:21:15 amstan_: will the final tournament have more servers for more games in that week? 2011-12-08T10:21:33 yes, we conserved money to play much more games for the finals 2011-12-08T10:21:41 Easier would be to cut away the low mu low sigma bots 2011-12-08T10:21:49 pairofdice: that too 2011-12-08T10:26:11 *** olexs has joined #aichallenge 2011-12-08T10:28:54 *** jon1 has quit IRC (Quit: Leaving.) 2011-12-08T10:33:10 *** Karlis has joined #aichallenge 2011-12-08T10:36:20 *** AntDroid has quit IRC (Quit: Page closed) 2011-12-08T10:37:56 *** NightExcessive has quit IRC (Quit: This computer has gone to sleep) 2011-12-08T10:45:11 *** Antimony has joined #aichallenge 2011-12-08T10:46:31 wow, the prices fluctuate so much? then I remove my inquiry :) 2011-12-08T10:46:42 *** mviel__ has joined #aichallenge 2011-12-08T10:46:52 I thought it's a few percent more or less 2011-12-08T10:47:09 google should sponser by giving servers! 2011-12-08T10:47:25 *** aerique has quit IRC (Quit: ...) 2011-12-08T10:47:26 rwest: that wouldn't be as easy as amazon 2011-12-08T10:48:32 doesn't google have some scaling cloud service? I coulda swore I read about it 2011-12-08T10:49:50 rwest: yes, but it was probably not intended for outside use 2011-12-08T10:50:08 *** mviel_ has quit IRC (Ping timeout: 244 seconds) 2011-12-08T10:50:17 they have something called Google Apps which is public 2011-12-08T10:50:20 Well it looks like it could be, but you couldn't compile and the like on the server 2011-12-08T10:50:31 Minthos: that's only for python and go 2011-12-08T10:50:35 it seems it's web apps only 2011-12-08T10:50:40 yea that's what I just read 2011-12-08T10:51:15 so unless you could virtualize a worker in a python or go process you're screwed :p 2011-12-08T10:51:19 we need real linux servers for all the 25 languages we have 2011-12-08T10:51:31 *** AntDroid has joined #aichallenge 2011-12-08T10:51:35 and main server frontend is in php 2011-12-08T10:51:40 and even if it was in python 2011-12-08T10:51:54 last time i checked google apps only liked python 2.5 2011-12-08T10:52:08 which is like 3 years old 2011-12-08T10:53:18 it's nuts that amazon prices fluctuate so much 2011-12-08T10:53:50 if you think about it, it's supercheap 2011-12-08T10:53:59 seems reasonable to me 2011-12-08T10:54:12 we spent 2000 bucks for like 7 servers running at the same time on average, with 100% cpu usage 2011-12-08T10:54:28 Thx a lot for this awesome challenge anyway amstan :] I enjoy it too much (literally, my professionnal productivity & personal life get fucked up :]) 2011-12-08T10:54:42 amstan_: 2k/7 servers for how long? 2011-12-08T10:54:49 the length of the contest 2011-12-08T10:55:00 two-three months? 2011-12-08T10:55:05 yeah 2011-12-08T10:55:30 I think 7 regular vpses would have been cheaper 2011-12-08T10:55:37 with similar resources 2011-12-08T10:55:52 similar resources? 17GB of ram each and dual core xeons? 2011-12-08T10:55:59 hmm.. perhaps not 2011-12-08T10:56:05 but the memory seems overkill 2011-12-08T10:56:09 and an interface to start and stop them at will? 2011-12-08T10:56:12 not really 2011-12-08T10:56:18 you have 1.5B limit per bot 2011-12-08T10:56:27 you have at most 8 bots running at the same time 2011-12-08T10:56:34 1.5GB* 2011-12-08T10:56:46 yeah 1.5 GB per bot seems overkill 2011-12-08T10:56:47 so that's 12GB 2011-12-08T10:56:55 Minthos: java doesn't start otherwise 2011-12-08T10:57:13 *** dvladim has joined #aichallenge 2011-12-08T10:57:14 huh? 2011-12-08T10:57:33 I think being lent 1 of google's server for the contest would have been better ^^ 2011-12-08T10:57:47 some quad octeon or better with 64 cores 2011-12-08T10:57:49 java doesn't require 1.5 GB 2011-12-08T10:58:01 Minthos: well, idk, ask janzert for more details 2011-12-08T10:58:43 *** ikaros has joined #aichallenge 2011-12-08T10:58:45 also.. being able to bring up or down the servers at will and reverting to the blank ubuntu to reinstall the worker is a very nice feature 2011-12-08T10:58:46 ok but anyway, it's not unreasonably priced 2011-12-08T10:58:56 *** besh has joined #aichallenge 2011-12-08T10:59:10 and cloud computing is popular for people who have workloads that flucutate a lot 2011-12-08T10:59:23 so amazon needs to have capacity to handle peak demand 2011-12-08T10:59:41 so they price resources higher when there is much demand, and lower when there is less 2011-12-08T10:59:57 makes perfect sense :) 2011-12-08T11:00:09 Pretty much 2011-12-08T11:00:36 *** avdg has joined #aichallenge 2011-12-08T11:01:55 my bot uses 24 megs on a 120x120 map 2011-12-08T11:02:23 *** Antimony has quit IRC (Ping timeout: 252 seconds) 2011-12-08T11:02:49 Minthos: that's about what mine uses 2011-12-08T11:03:12 well actually 2011-12-08T11:03:16 less 2011-12-08T11:04:08 *** Surya has quit IRC (Ping timeout: 265 seconds) 2011-12-08T11:06:04 *** decaz has quit IRC (Ping timeout: 265 seconds) 2011-12-08T11:11:30 *** mikewintermute has quit IRC (Quit: mikewintermute) 2011-12-08T11:12:12 *** Antimony has joined #aichallenge 2011-12-08T11:16:42 can't you move to a food location ? I got a move blocked error 2011-12-08T11:17:00 You can't 2011-12-08T11:17:15 food spawns at the end of the turn, and you're told about it at the start of the turn 2011-12-08T11:17:19 so it can be next to your ants 2011-12-08T11:17:33 don't you automatically collect them when near? 2011-12-08T11:17:40 I have never had this problem and I should 2011-12-08T11:17:42 yes, during the turn - not in between them 2011-12-08T11:17:58 well i thought so too but food can be dropped close to your ant I think.. 2011-12-08T11:18:01 unless! 2011-12-08T11:18:14 maybe the java start package calls i occupied 2011-12-08T11:18:16 food can spawn next to one of your ants at the end of the turn (when food spawns :P) 2011-12-08T11:18:18 it 2011-12-08T11:18:32 and then it will be 1 distance from your ant at the start of the turn 2011-12-08T11:18:38 and movement happens before food is gathered 2011-12-08T11:18:42 thestinger: yes 2011-12-08T11:19:40 hmm I have never seen the issue yet I have nothing preventing it 2011-12-08T11:20:00 it doesn't really matter, your move will just be blocked and you'll gather the food 2011-12-08T11:20:33 well still a wast of a turn 2011-12-08T11:20:33 I wrote a special case to deal with it just to get rid of the warnings though 2011-12-08T11:20:42 yes that is what happened. 2011-12-08T11:20:58 I can just modify the check to see if it's unoccupied 2011-12-08T11:21:01 thestinger: wow too cautions :) 2011-12-08T11:21:09 cautious* 2011-12-08T11:21:35 well, if 2 ants are next to a food I only want one to stay 2011-12-08T11:21:54 well I guess that would happen anyway if I ignored food blocking movement... 2011-12-08T11:22:48 I think I might improve my bot again today, for the first time in over a week :P 2011-12-08T11:23:28 good for u. mine seem to go down every week.. 2011-12-08T11:23:51 just going to make combat _really_ per battle and keep generating moves until time runs out 2011-12-08T11:23:57 atm I never use more than 35ms 2011-12-08T11:24:31 return ((this == LAND || this == DEAD) && this != FOOD); 2011-12-08T11:24:32 there 2011-12-08T11:24:48 actually 2011-12-08T11:24:48 nvm 2011-12-08T11:24:51 thats dumvb 2011-12-08T11:24:54 it already did it 2011-12-08T11:25:35 * rwest realizes it was an enum and did it anyway 2011-12-08T11:25:54 which language are you using? 2011-12-08T11:26:00 java 2011-12-08T11:26:05 *** QuirionPT has joined #aichallenge 2011-12-08T11:26:15 if it's labeled land it has no food on it 2011-12-08T11:26:19 ah 2011-12-08T11:26:31 yes it excludes that but my A* excludes only water. Got to fix that 2011-12-08T11:26:52 the food won't be there once gathered though 2011-12-08T11:27:08 so you might as well pathfind through it 2011-12-08T11:27:14 add it to the isPassible() if you are using java besh 2011-12-08T11:27:26 assuming you use that to check for water 2011-12-08T11:28:00 I assume food is passable for A* 2011-12-08T11:28:01 I think the only time food would block a path is if it spawned next to an ant 2011-12-08T11:28:13 McLeopold: yeah :) 2011-12-08T11:28:15 otherwise walking "through" it will gather it and not slow you down 2011-12-08T11:28:27 I check my moves right before do them 2011-12-08T11:28:36 if I didn't handle food spawning next to ants, I think it would end up being the same behavior as what I do now 2011-12-08T11:28:40 as a secondary check 2011-12-08T11:28:48 because I would try to have one of the ants it spawned next to move onto it 2011-12-08T11:28:50 and they would stay there 2011-12-08T11:29:05 which is exactly what I do now (I make one of the ants next to it stay there to gather it) 2011-12-08T11:29:59 thestinger: Though if you think they're moving, you'd risk a collision 2011-12-08T11:30:23 ah yeah, that's why I fixed it :) 2011-12-08T11:30:25 if it happens, my ant will stay there or move a space along in it the direction of it's next target 2011-12-08T11:30:27 now I remember xD 2011-12-08T11:30:44 it in 2011-12-08T11:38:03 *** olexs has quit IRC (Quit: Leaving.) 2011-12-08T11:38:57 *** analyst74 has joined #aichallenge 2011-12-08T11:42:53 new combat strategy memetix using influence maps http://forums.aichallenge.org/viewtopic.php?f=24&t=2083 2011-12-08T11:48:54 *** Antimony has quit IRC (Ping timeout: 248 seconds) 2011-12-08T11:50:38 *** dvladim has quit IRC (Ping timeout: 240 seconds) 2011-12-08T11:56:45 Anyone understood why he said the influence map should be computed after 1 move ? why not just compute it from where the ants are now 2011-12-08T11:59:27 *** Antimony has joined #aichallenge 2011-12-08T12:00:09 Well, you don't want to know what happened but what will happen if I move there or here 2011-12-08T12:00:33 so is it attack_radius + 2 ? 2011-12-08T12:00:55 *** mleise has joined #aichallenge 2011-12-08T12:01:11 it's more like, all possible moves convolved with attack_radius 2011-12-08T12:01:24 ^ 2011-12-08T12:01:25 you could precompute this in a 16-entry table 2011-12-08T12:02:18 That's what I did, but didn't bother with water blocking movement or any other details either so it's... yeah 2011-12-08T12:03:08 *** SimonT has joined #aichallenge 2011-12-08T12:03:29 i figured this sort of approach would be smarter and better than what i did but i never worked out the details 2011-12-08T12:03:51 It's simple and cheap 2011-12-08T12:03:58 yes that is what I do too. 2011-12-08T12:04:17 second questions: enemies = total[row][col] - influence[player][row][col] 2011-12-08T12:04:45 "We can now work out the best ant in each combat zone" 2011-12-08T12:04:49 *** tobel has joined #aichallenge 2011-12-08T12:04:59 best for what ? 2011-12-08T12:05:11 *** analyst74 has quit IRC (Quit: Want to be different? Try HydraIRC -> http://www.hydrairc.com <-) 2011-12-08T12:05:20 *** Simon14 has joined #aichallenge 2011-12-08T12:06:02 *** nplus has quit IRC (Ping timeout: 252 seconds) 2011-12-08T12:06:04 *** Simon14 is now known as nplus 2011-12-08T12:06:09 " the best ant being the one that is fighting the least number of other ants" 2011-12-08T12:06:23 Roght after your text 2011-12-08T12:06:27 :p 2011-12-08T12:07:41 we are making coordinated moves of ant which doesn't require selection 2011-12-08T12:07:44 brb.. 2011-12-08T12:08:08 *** bluegaspode has joined #aichallenge 2011-12-08T12:08:36 *** SimonT has quit IRC (Ping timeout: 240 seconds) 2011-12-08T12:10:43 *** olexs has joined #aichallenge 2011-12-08T12:14:31 I obviously overcomplicated combat... 2011-12-08T12:14:35 lemme try this way and compare 2011-12-08T12:15:56 *** Karlis has quit IRC (Quit: Page closed) 2011-12-08T12:17:10 *** mj41 has quit IRC (Ping timeout: 248 seconds) 2011-12-08T12:18:41 *** Hexren has joined #aichallenge 2011-12-08T12:18:43 *** Hexren has left #aichallenge 2011-12-08T12:19:44 *** Scryer has joined #aichallenge 2011-12-08T12:22:32 *** JorgeB has quit IRC (Ping timeout: 252 seconds) 2011-12-08T12:23:18 *** RedTurtle has joined #aichallenge 2011-12-08T12:23:57 my combat that I am working on is very similar to what memetix posted 2011-12-08T12:25:56 *** McLeopold has quit IRC (Quit: Leaving.) 2011-12-08T12:25:56 *** mviel__ has quit IRC (Read error: Connection timed out) 2011-12-08T12:26:25 *** kire has joined #aichallenge 2011-12-08T12:26:40 *** mviel__ has joined #aichallenge 2011-12-08T12:30:57 *** dvladim has joined #aichallenge 2011-12-08T12:33:06 *** kire has quit IRC (Remote host closed the connection) 2011-12-08T12:34:43 *** GarfTop has joined #aichallenge 2011-12-08T12:34:54 @rwest Mine will be too, soon. :) It fits better into my structure than a1k0n's. 2011-12-08T12:34:55 Scryer: An error occured while trying to show the previous error. 2011-12-08T12:35:06 *** GarfTop has quit IRC (Read error: Connection reset by peer) 2011-12-08T12:35:43 *** GarfTop has joined #aichallenge 2011-12-08T12:36:15 *** Garf has quit IRC (Ping timeout: 240 seconds) 2011-12-08T12:36:37 *** JorgeB has joined #aichallenge 2011-12-08T12:36:56 Scryer: I am using influence maps for my entire bot hah 2011-12-08T12:37:06 hm, I think memetix does things a bit differently than how I coded it 2011-12-08T12:37:50 too... much... kfc... 2011-12-08T12:37:50 ugh 2011-12-08T12:38:53 so for the "best ant", he just means ant within attackradius+1 with the minimum number of enemies in range, right? 2011-12-08T12:39:04 I already do that 2011-12-08T12:39:43 oh well, time to figure out why my bot isn't nearly that good :P 2011-12-08T12:42:00 his method seems like it works well in mazes and confined areas but is too conservative in open spaces 2011-12-08T12:43:09 I might implement it just to have it to fight against 2011-12-08T12:43:23 yeah, I'm implementing it right now just so I can compare 2011-12-08T12:43:37 it's similar to what you're doing anyway Ben isn't it? at last for enemy ants? 2011-12-08T12:43:45 s/last/least/ 2011-12-08T12:44:59 mine is probably more similar to what I've heard peopel describe here where they assume all enemies are stationary 2011-12-08T12:45:10 i just multiply all enemies by everywhere they could go 2011-12-08T12:45:13 ah 2011-12-08T12:45:16 and fight against all those at once 2011-12-08T12:45:19 I just move them towards me (without collisions) 2011-12-08T12:45:29 and pretend they are staying still (so 2 scenarios) 2011-12-08T12:45:30 that's pretty much what the influence map is 2011-12-08T12:45:41 yes, I agree 2011-12-08T12:46:02 but then I consider individual sets of moves against that 2011-12-08T12:46:08 this influence map method is a lot more cautious than mine 2011-12-08T12:46:20 if my code lacks anything it's probabilities for where the enemies would go 2011-12-08T12:46:21 because it basically multiplies ants in all directions 2011-12-08T12:46:29 so I might implement his combat to weight the probabilities of the enemy ants 2011-12-08T12:46:49 the thing is, it's equally cautious and reckless cause he multiplies his own ants the same way 2011-12-08T12:46:56 lol implement his combat so you can predict his moves 2011-12-08T12:47:01 http://paste.aichallenge.org/Xz0Gl/ 2011-12-08T12:47:07 rwest: well if he can do it in a few ms in java... 2011-12-08T12:47:26 btw that's what I finally did last night 2011-12-08T12:47:41 I was inspired by the fog of war at the end of a pguillory game to just go ahead and directly maximize vis 2011-12-08T12:47:53 so if you slide to the end there and hit fog you can see how nicely it works out 2011-12-08T12:47:56 I have a similar combat on my bot and I couldn't figure out why it sucked 2011-12-08T12:48:03 I need to separate it out from my main map 2011-12-08T12:48:07 didn't cost any more than my other method which was far more dense 2011-12-08T12:48:12 that's pretty much what i've been doing all along 2011-12-08T12:48:14 since I spread the values too much 2011-12-08T12:48:24 my ants don't bother scouting over known water either 2011-12-08T12:48:56 my currently submitted bot tried to be within some number of steps (4? 5? I forget) of everything 2011-12-08T12:49:03 it works well for some things 2011-12-08T12:49:10 but it's too dense far from teh fight 2011-12-08T12:49:15 *** thestinger has quit IRC (Read error: Operation timed out) 2011-12-08T12:49:32 yeah it's a tradeoff. just getting full map coverage with a minimum number of ants works really well, except your ants are extremely vulnerable 2011-12-08T12:49:56 If you have ants moving from hills you don't have to have stationary ants at all, if you keep track of the perimeter 2011-12-08T12:50:04 *** ademar_ has quit IRC (Read error: Connection reset by peer) 2011-12-08T12:50:18 I only worked out yesterday that it really takes 4v1 with ideal placement to beat a lone ant "in space" 2011-12-08T12:50:35 *** Garf has joined #aichallenge 2011-12-08T12:50:35 *** GarfTop has quit IRC (Ping timeout: 240 seconds) 2011-12-08T12:50:56 *** ademar_ has joined #aichallenge 2011-12-08T12:50:58 Yeah, in unbostructed map 2011-12-08T12:50:59 not 3? 2011-12-08T12:51:19 you can force the lone ant to die with 3 but it can trade you 2011-12-08T12:51:59 anyway my point being that my vision of my dense web of ants being like white blood cells didn't pan out 2011-12-08T12:52:03 *** thestinger has joined #aichallenge 2011-12-08T12:52:11 stupid freenode servers :( 2011-12-08T12:55:50 gah, some bot on fluxid is using ~3s per turn... game's been running since ages 2011-12-08T12:56:22 yeah 2011-12-08T12:56:32 games take so long now, so I'm unable to test things on tcp 2011-12-08T12:56:48 How are the other servers? 2011-12-08T12:56:51 Fluxid just needs to get the server to tell bots the turntime is 500ms :P 2011-12-08T12:57:00 tc-pants and bhickey? 2011-12-08T12:57:38 bhickey is for lower level competition 2011-12-08T12:58:00 How low? 2011-12-08T12:58:10 really low 2011-12-08T12:58:16 sub-combat 2011-12-08T12:58:26 Hmph 2011-12-08T12:58:26 well, people developing new combat can certainly use it 2011-12-08T12:58:34 but if you're playing there just to provide a bot, provide a weak bot 2011-12-08T13:00:15 hmmmm 2011-12-08T13:00:25 I don't really get how memetix's way works now 2011-12-08T13:00:33 *** Scryer has quit IRC (Quit: Page closed) 2011-12-08T13:00:36 I guess he _always_ moves toward the enemy? 2011-12-08T13:01:41 He masks the tiles on which ants can attack on the next turn 2011-12-08T13:02:03 just adds up the number of ants that a tile can be attacked by 2011-12-08T13:02:20 yeah, I get that 2011-12-08T13:02:24 I've been doing it all along 2011-12-08T13:02:38 but then he's pretending all his ants are moving towards the enemy, before he decides to do that 2011-12-08T13:02:41 basically 2011-12-08T13:02:44 oh 2011-12-08T13:02:59 I don't think so 2011-12-08T13:03:03 he's pretending all ants move everywhere 2011-12-08T13:03:18 yeah, so lets say he has 2 ants out of range of an enemy 2011-12-08T13:03:21 *** kire has joined #aichallenge 2011-12-08T13:03:26 he's pretending the enemy moves every direction, and his own ants do 2011-12-08T13:03:29 so he can kill the enemy 2011-12-08T13:03:40 but he must be forcing both his ants to then move towards the enemy 2011-12-08T13:03:51 otherwise one might think 'hey!, it's safe!', but it's not 2011-12-08T13:03:58 unless all ants attack if possible 2011-12-08T13:04:06 Yeah, that's an issue 2011-12-08T13:04:14 I can easily work this into what I already do 2011-12-08T13:04:16 *** Israfel has quit IRC (Ping timeout: 240 seconds) 2011-12-08T13:04:25 but I just don't see how it can actually be a complete combat implementation 2011-12-08T13:04:41 or even a big part of it :P 2011-12-08T13:04:45 It makes it hard to ignore enemy ants 2011-12-08T13:05:06 well, you have to always attack or this way don't work (if I understand it correctly) 2011-12-08T13:05:28 Pretty much 2011-12-08T13:05:38 *** dvladim has quit IRC (Ping timeout: 240 seconds) 2011-12-08T13:05:56 come on, we're all going to implement it to see what it does... 2011-12-08T13:06:05 if for no other reason than dozens of people in the forums will 2011-12-08T13:06:10 so we have to practice against it :) 2011-12-08T13:06:11 I implemented it 2011-12-08T13:06:17 I don't understand how it can possibly work though xD 2011-12-08T13:06:25 (no one can understand a1k0n's luckily ;-) 2011-12-08T13:06:38 I've had it for a month on the server now 2011-12-08T13:08:55 *** Apophis has joined #aichallenge 2011-12-08T13:10:07 oh, now it makes more sense 2011-12-08T13:10:17 or not x 2011-12-08T13:10:19 xD 2011-12-08T13:11:03 :) 2011-12-08T13:11:12 *** olexs1 has joined #aichallenge 2011-12-08T13:11:33 it's just around 10 lines of code since I already have generic radius utility stuff 2011-12-08T13:11:52 *** Apophis has quit IRC (Client Quit) 2011-12-08T13:11:58 *** Apophis_ has quit IRC (Quit: Verlassend) 2011-12-08T13:12:21 *** Apophis has joined #aichallenge 2011-12-08T13:13:29 *** Antimony has quit IRC (Ping timeout: 252 seconds) 2011-12-08T13:14:03 My bot won't be finished till long after the competition :< 2011-12-08T13:14:07 just do it (c) 2011-12-08T13:14:14 *** olexs has quit IRC (Ping timeout: 252 seconds) 2011-12-08T13:14:52 http://sprunge.us/QQgU 2011-12-08T13:14:55 I get something like this now 2011-12-08T13:15:11 I am back. So did any one understand the method fully ? 2011-12-08T13:15:15 0 == "SAFE", 1 == "KILL", 2 == "DIE" 2011-12-08T13:15:35 that blob is 2 enemy ants next to each other 2011-12-08T13:15:38 with some of mine around them 2011-12-08T13:15:49 well, mine are on the west 2011-12-08T13:16:43 *** Israfel has joined #aichallenge 2011-12-08T13:17:38 anyway I don't really get how this turns into combat :) 2011-12-08T13:18:02 O_o 2011-12-08T13:18:54 like, moving into tiles with 0 (SAFE) could be lethal if your other ants don't move where they are supposed to 2011-12-08T13:19:23 Yes, but you can control what your ants 2011-12-08T13:19:30 do 2011-12-08T13:19:39 yeah, but lets say the enemy is on both sides of you 2011-12-08T13:19:44 so if you attack one way, you can beat them 2011-12-08T13:19:49 if you attack the other, you can too 2011-12-08T13:19:54 but if you split up, you will die 2011-12-08T13:19:58 *** anzen has joined #aichallenge 2011-12-08T13:20:06 thestinger: agreed. Moves are coordinated and you can not infer on the outcome of making a move just by looking at influence table. 2011-12-08T13:20:16 thestinger: the side with better chances will get most of the weight 2011-12-08T13:20:26 *** bluegaspode has quit IRC (Ping timeout: 265 seconds) 2011-12-08T13:20:39 *** anzen has quit IRC (Client Quit) 2011-12-08T13:20:49 rwest: ah, so you're pathfinding towards enemies then? 2011-12-08T13:20:58 I don't see how it could work otherwise 2011-12-08T13:21:08 like you need to turn this into an influence map and move towards the enemy 2011-12-08T13:21:26 meh, I don't really get it xD 2011-12-08T13:21:32 heh 2011-12-08T13:22:28 thestinger: you have to diffuse the map 2011-12-08T13:23:10 I didn 2011-12-08T13:23:16 't completely read the thread hah 2011-12-08T13:23:29 but I assume he is doing a typical influence map 2011-12-08T13:23:36 and diffusing the values afterwards 2011-12-08T13:25:04 i don't think there is diffusion. 2011-12-08T13:25:22 ahh, then it is not exactly like mine heh 2011-12-08T13:26:13 rwest: yeah, he just doesn't move into tiles marked as DIE (2 in my map) 2011-12-08T13:26:16 so did you guys figure out what the best ant is used for ? In other words,how is fighting[p][r][c] determined ? 2011-12-08T13:26:37 sec, I'll explain how I interpreted it 2011-12-08T13:26:38 so 2011-12-08T13:27:04 first of all, I'm putting all this in the Square struct the C++ starter has 2011-12-08T13:27:16 so then I access stuff like grid[row][col].influence[player] 2011-12-08T13:27:37 anyway, for each Square, I make an influence array that holds the number of ants within attackradius+1 for each player 2011-12-08T13:27:53 and a total_influence int with the total number of ants 2011-12-08T13:28:03 so far so good 2011-12-08T13:28:29 then I make a 'fighting' array (for each player), which is 'total - influence[player]' 2011-12-08T13:28:31 so 2011-12-08T13:28:36 the number of enemies within attackradius+1 2011-12-08T13:29:02 then I go through each tile to decide whether to mark them as DIE or KILL (they are all set to SAFE at the start of the turn) 2011-12-08T13:29:33 wait 2011-12-08T13:29:48 He said "enemies = total[row][col] - influence[player][row][col]" 2011-12-08T13:29:52 yeah 2011-12-08T13:30:00 so 2011-12-08T13:30:17 enemies[player] = total - influence[player] for each tile 2011-12-08T13:30:19 "the best ant being the one that is fighting the least number of other ants" 2011-12-08T13:30:26 yes 2011-12-08T13:30:33 so when I look around each tile (to mark them as DIE or KILL) 2011-12-08T13:30:46 if I find an enemy ant in attackradius+1, I check the # of enemies that ant has 2011-12-08T13:30:55 so fighting[p][r][c] is not same as number of enemies 2011-12-08T13:31:42 *** zoli1 has left #aichallenge ("Konversation terminated!") 2011-12-08T13:31:48 i.e. fighting[0][0][0] would contain the number of enemy ants an ant at (0,0) belonging to player 0 would be fighting. 2011-12-08T13:31:51 that's what he says 2011-12-08T13:31:53 so I just did that 2011-12-08T13:32:04 I find the best ant based on that 2011-12-08T13:32:14 'best ant' meaning enemy with the lowest weakness 2011-12-08T13:32:21 just like running a combat evaluation 2011-12-08T13:32:56 yes that second statement makes sense. 2011-12-08T13:33:24 I don't really think I interpreted what he said in the right way 2011-12-08T13:33:37 anyway 2011-12-08T13:33:42 *** dr-_ has joined #aichallenge 2011-12-08T13:33:46 I thought we are going to select our ant with the least number of enemy attacks. 2011-12-08T13:33:59 fighting[row][col][player] is the number of enemies (of that player) within attackradius+1 2011-12-08T13:34:09 besh: yeah, I do that with the fighting data later 2011-12-08T13:34:19 so after I calculate all that stuff 2011-12-08T13:34:22 I go through each tile 2011-12-08T13:34:42 I get the fighting value of that tile (for player 0) 2011-12-08T13:34:52 then I look at the tiles around it (within attackradius+1) 2011-12-08T13:35:16 if there's an enemy ant, I check the value for it (# of enemies it has) 2011-12-08T13:35:43 *** dr- has quit IRC (Ping timeout: 268 seconds) 2011-12-08T13:35:52 then I compare to the value I got for the tile I'm checking - it's equal, I mark it KILL - if it's greater, I mark it DIE and break out of the loop 2011-12-08T13:36:55 Ok thanks it is getting clearer now. 2011-12-08T13:37:03 well, that's how I interpreted it 2011-12-08T13:37:14 I think my interpretation must be wrong because this doesn't seem very useful :P 2011-12-08T13:37:42 haha... it must be because his bot is very strong ;) 2011-12-08T13:38:47 My combat scheme which I think a lot other use is simple 2011-12-08T13:39:01 I just park my ants on attack_radius + 2 of enemy ants 2011-12-08T13:39:13 then attack when I outnumber the enemy ant 2011-12-08T13:39:31 so does it work if there's 1 enemy 2011-12-08T13:39:38 and you have 1 ant on opposite sides? 2011-12-08T13:40:19 meh, maybe I'll try the debug visualizer and take a screen of this crap :P 2011-12-08T13:43:43 wow I played a burst of games 2011-12-08T13:43:56 5 between 3:16am and 3:23am 2011-12-08T13:44:09 previous gap was about 24h 2011-12-08T13:44:19 net skill change was -0.05 2011-12-08T13:44:41 yes it works well but sometimes can suicide. 2011-12-08T13:44:55 A little correction there. I park them at attack_radius + 1 2011-12-08T13:45:04 and also attack_radius + 2 2011-12-08T13:45:36 In 2 vs 1 it can never loose but doesn't mean it can always win. 2011-12-08T13:46:22 since my combat just maximizes certain heuristics I often don't understand what it does 2011-12-08T13:46:27 oh 2011-12-08T13:46:29 I think this works :D 2011-12-08T13:46:31 or not without significant thought 2011-12-08T13:46:52 http://ompldr.org/vYm5jZw 2011-12-08T13:46:58 so that orange ant near the enemies 2011-12-08T13:47:05 if it moves down (into blue) it can trade 1 for 1 2011-12-08T13:47:06 it will sort of suck if after seeing everyone implement the same strategy function and clump up in the ranks now everyone implements the same combat 2011-12-08T13:47:14 if it moves out of the red/blue ranges, it will be safe 2011-12-08T13:47:40 Why is the blue only south 2011-12-08T13:47:53 blue is trade 2011-12-08T13:47:56 if it moves east it can escape 2011-12-08T13:48:42 yeah, this is somewhat different than what I do now 2011-12-08T13:48:46 I think I could easily mix them together 2011-12-08T13:48:54 but I don't think just doing it this way will work 2011-12-08T13:49:15 oh boy, i'm reading backscroll 2011-12-08T13:49:23 Fluxid: just look at the pic :P 2011-12-08T13:49:24 and i do stuff totally different 2011-12-08T13:49:29 yeah 2011-12-08T13:49:35 but at the same way totally inefficient 2011-12-08T13:49:45 time* 2011-12-08T13:49:50 atm I come up with possible enemy locations 2011-12-08T13:49:59 a simple version is just unmoving enemies, and enemies moving towards me 2011-12-08T13:50:18 then I generate moves that optimize a "score" based on those enemy locations (I assume they will do the best thing, so I raise the minimum) 2011-12-08T13:50:27 so like a payoff matrix, but only for enemy moves 2011-12-08T13:51:43 *** Antimony has joined #aichallenge 2011-12-08T13:51:51 actually this combat is pretty much the exact inverse of what I do 2011-12-08T13:52:01 this method looks at how enemies could possibly threaten you 2011-12-08T13:52:12 and I look at how I could possibly threaten enemies 2011-12-08T13:52:50 those ideas look neat bu i think i'll stick with what i do 2011-12-08T13:53:06 thestinger: if you're only considering 1 set of moves from your opponents it's more like a decision matrix :P 2011-12-08T13:53:29 antimatroid: no, I consider n sets of enemy moves 2011-12-08T13:53:38 but I only test 1 set of moves against them and just keep optimizing it 2011-12-08T13:53:54 so it's like a payoff matrix but I don't actually keep it around 2011-12-08T13:54:14 anyway it doesn't work very well 2011-12-08T13:55:23 http://aichallenge.org/visualizer.php?game=171150&user=2255 2011-12-08T13:55:37 you can see that it gets the basics okay, but it falls apart for big battles 2011-12-08T13:55:47 which one is he? 2011-12-08T13:55:55 because I don't form lines 2011-12-08T13:55:55 oh you mean YOU 2011-12-08T13:56:06 and I don't really try to flank the enemy, even when I outnumber them 2011-12-08T13:56:29 the lines that do form are just because my ants try to get around each other, but that's limited to ~3 tiles away 2011-12-08T13:56:32 neither do I, although it happens as an emergent behavior 2011-12-08T13:57:00 I used to use "step around" avoidance but it resulted in lines 2011-12-08T13:57:10 it's neat to see the current code moves 3-abreast snakes through mazes and stuff 2011-12-08T13:57:40 the other problem with 'stepping around' is that the ants that would step out of line would sometimes step right back in to be closer, followed by stepping out, etc 2011-12-08T13:57:51 I saw one bot whose ants were just a flowing mass, like liquid 2011-12-08T13:58:25 thestinger: have you considered path finding to enemies not over friends to try and get them to surround the enemy? 2011-12-08T13:59:33 or vice versa 2011-12-08T13:59:40 from enemies to friends but not over friends 2011-12-08T13:59:57 yeah 2011-12-08T14:00:06 I have a few attempts in branches atm 2011-12-08T14:00:19 such as pretending a layer thicker than 2 of my ants is not passable 2011-12-08T14:00:21 i haven't touched my bot in a few days 2011-12-08T14:00:44 been busy with other stuff, hopefully i have time again on the weekend, although i need to fix up the maze map gen before my bot again too 2011-12-08T14:00:54 my bot is basically fine until there's a big battle, where it will just form a ball instead of a line 2011-12-08T14:01:20 because they're all either agressive or defensive? 2011-12-08T14:01:45 *** UncleVasya has joined #aichallenge 2011-12-08T14:01:49 well, because they don't actually chase the enemy 2011-12-08T14:02:00 *** bluegaspode has joined #aichallenge 2011-12-08T14:02:04 i think my move selection is quite different to yours 2011-12-08T14:02:12 but i'm not willing to share how i'm picking out moves :P 2011-12-08T14:02:22 basically, I have efficient movement to a target 2011-12-08T14:02:42 so, they'll usually form a 3 or 4 width march towards it 2011-12-08T14:02:49 *** Palmik has quit IRC (Remote host closed the connection) 2011-12-08T14:03:10 but then they don't really spread out further when there's a battle 2011-12-08T14:03:18 *** Palmik has joined #aichallenge 2011-12-08T14:03:21 just as much as needed to get efficient movement (assuming there was no enemy) 2011-12-08T14:04:24 meh, I think I misunderstood this new way of doing combat xD 2011-12-08T14:04:43 http://ompldr.org/vYm5kOQ 2011-12-08T14:04:47 *** bhasker has quit IRC (Ping timeout: 240 seconds) 2011-12-08T14:04:49 red == "DIE" 2011-12-08T14:04:56 so... it doesn't work like this 2011-12-08T14:06:20 because the "best" enemy ant doesn't have any enemies within attackradius+1 2011-12-08T14:07:27 lol, you're still using attackradius +1? 2011-12-08T14:07:30 partition them properly! 2011-12-08T14:07:39 no 2011-12-08T14:07:45 this is to implement this http://forums.aichallenge.org/viewtopic.php?f=24&t=2083 2011-12-08T14:07:50 I'm trying to understand it 2011-12-08T14:08:21 I could just get attackradius with the ant moved in each possible direction 2011-12-08T14:08:33 but there's no point doing it properly if it's not going to work at all :P 2011-12-08T14:09:11 hehe, that's a lot like what i do, except they missed a trick i'm using to get slightly more accurate info 2011-12-08T14:09:42 i use that kind of information to pick out offensive and defensive moves for my opponents and i then put it through a game tree 2011-12-08T14:11:25 Offencive is where sum of summes of distances every enemy to every your ant is minimal and defencive vise versa? 2011-12-08T14:16:01 thestinger: http://pastebin.com/a0tstdX5 2011-12-08T14:16:08 that's a hint towards improving the accuracy of your info 2011-12-08T14:16:18 only 1 enemy can really battle a if he remains statis 2011-12-08T14:16:20 static* 2011-12-08T14:17:15 well, I know a better way would be tiles within attackradius of the tile the enemy ant is in, and also the tiles they could move to 2011-12-08T14:18:01 yeah, i just do min of those two numbers :P 2011-12-08T14:18:10 unique locations battled from and unique enemies 2011-12-08T14:19:44 you only need to work out this information for locations that can be moved into as well obviously 2011-12-08T14:21:05 and my state stores for each location the locations that (i) could battle it if it doesn't move and it's enemies do(don't) (ii) could battle if it does(n't) and it's enemies do(don't) move 2011-12-08T14:21:50 you can set them up with translation values in turn 0 then just update as you receive water info :P 2011-12-08T14:26:06 *** vn971 has joined #aichallenge 2011-12-08T14:26:16 test 2011-12-08T14:26:22 ies 2011-12-08T14:30:13 antimatroid: http://ompldr.org/vYm5kdw 2011-12-08T14:30:28 blue == possible trade, red == possible death 2011-12-08T14:31:24 your info isn't right :P 2011-12-08T14:31:32 oh wait 2011-12-08T14:31:33 ignore me 2011-12-08T14:31:48 well, the top seems wrong 2011-12-08T14:31:50 but not important 2011-12-08T14:31:58 the top left red square? 2011-12-08T14:32:04 how is that a possible death? :P 2011-12-08T14:32:17 if the ant moves north 2011-12-08T14:32:22 they can attack 2 forwards and 1 west 2011-12-08T14:32:22 antimatroid: don't you know where mcstar's gone? 2011-12-08T14:32:27 oh, by the time it gets there? 2011-12-08T14:32:37 UncleVasya: nope? how long has he been gone? 2011-12-08T14:32:39 @last seen mcstar 2011-12-08T14:32:39 antimatroid: (last [--{from,in,on,with,without,regexp} ] [--nolimit]) -- Returns the last message matching the given criteria. --from requires a nick from whom the message came; --in requires a channel the message was sent to; --on requires a network the message was sent on; --with requires some string that had to be in the message; --regexp requires a regular expression the message must (1 more message) 2011-12-08T14:32:53 @seen mcstar 2011-12-08T14:32:53 UncleVasya: mcstar was last seen in #aichallenge 1 week, 3 days, 20 hours, 26 minutes, and 56 seconds ago: i dont agree 2011-12-08T14:33:00 hmmmm :\ 2011-12-08T14:33:05 antimatroid: well, it's "possible death once the enemies move" 2011-12-08T14:33:19 or possible trade once they move 2011-12-08T14:33:34 thestinger: so the info is for when your ant could get to the location? 2011-12-08T14:33:49 well, I really only need to calculate this for tiles next to my ants 2011-12-08T14:33:53 do you get my example from before right? 2011-12-08T14:34:07 http://pastebin.com/a0tstdX5 2011-12-08T14:34:12 yeah, one of the blue ants couldn't move down 2011-12-08T14:34:15 ie. if you move 'a' down is it blue above him? 2011-12-08T14:34:18 and they can't both move closer to a 2011-12-08T14:34:19 yeah 2011-12-08T14:34:21 without colliding 2011-12-08T14:34:29 it took me a while to work out how to get that info 2011-12-08T14:35:56 *** kire has quit IRC (Remote host closed the connection) 2011-12-08T14:36:16 *** JorgeB has quit IRC (Ping timeout: 240 seconds) 2011-12-08T14:39:33 *** hkraal_ has joined #aichallenge 2011-12-08T14:39:58 *** UncleVasya has quit IRC () 2011-12-08T14:52:45 *** AntDroid has quit IRC (Ping timeout: 265 seconds) 2011-12-08T14:56:01 antimatroid: I take care of your example problem in my bot. 2011-12-08T14:56:08 *** McLeopold has joined #aichallenge 2011-12-08T14:56:09 :) 2011-12-08T14:56:22 antimatroid: http://paste.aichallenge.org/NidJk/?row ... 14&turn=33 2011-12-08T14:56:29 ants on attack_radius + 1 are allowed to move only if they outnumber the opponent 2011-12-08T14:56:58 if you're doing it that way you need attackradius+2 2011-12-08T14:57:11 because the enemy can move towards you, in addition to you moving towards them 2011-12-08T14:57:35 attack_radius + 2 ants are always moved closer unless it is always suicide ofcourse 2011-12-08T14:57:45 ah 2011-12-08T14:58:03 http://paste.aichallenge.org/NidJk/?row=3&col=14&turn=33 2011-12-08T14:58:07 that's better 2011-12-08T14:58:21 what am i looking at though? 2011-12-08T14:58:24 I'm trying to implement Memetix's combat 2011-12-08T14:58:41 the highlighted ant is mine 2011-12-08T14:58:52 it thinks it can safely go south, but it can't 2011-12-08T14:59:00 http://paste.aichallenge.org/GpWxL/ go on, laugh at me 2011-12-08T14:59:08 it could when it did 2011-12-08T14:59:37 you mean west? 2011-12-08T14:59:43 no, south 2011-12-08T14:59:54 :s 2011-12-08T15:00:15 I think the ant at 6,12 is throwing it off 2011-12-08T15:00:18 fluixd: what went wrong there? your combat is too cautious 2011-12-08T15:00:29 McLeopold: draw the status for all the tiles 2011-12-08T15:00:31 *** vn971 has left #aichallenge 2011-12-08T15:00:34 not just the ones next to your ants 2011-12-08T15:00:39 makes it easier to see what you're doing :P 2011-12-08T15:00:39 it realises that the enemy could be smarter 2011-12-08T15:00:40 ok 2011-12-08T15:00:50 McLeopold: Yeah, it thinks it has backup when it doesn't 2011-12-08T15:00:56 *** Antimony has quit IRC (Ping timeout: 252 seconds) 2011-12-08T15:00:57 I know 2011-12-08T15:00:59 possibly 2011-12-08T15:01:06 but, I don't think I'm updating stuff right 2011-12-08T15:01:38 * antimatroid doesn't see an ant at 6 12? 2011-12-08T15:01:38 besh: everything. I have in logs stuff like "I may kill something when going 2" but no ant actually go in direction which kills anything 2011-12-08T15:02:04 oh wait, wrong turn :P 2011-12-08T15:02:12 2 of my ants *could* influence 4,14, and only 1 enemy *could* influence 4,14, but it should still be KILL 2011-12-08T15:02:15 Fluxid: I'm just throwing out all my combat code for the 5th time and starting over :P 2011-12-08T15:02:51 I wonder if I get an update before the end 2011-12-08T15:03:00 thestinger: pasted the map here: http://paste.aichallenge.org/DVwbi/ 2011-12-08T15:03:13 McLeopold: what I do is use that information to pick out offensive and defensive moves for each ant in my battle partition, those for my ants constitute 2 moves in a game tree and those of my enemies are 2 moves for them in a game tree, then i run minimax on that to work out whether to be offensive or defensive 2011-12-08T15:03:15 Would like to nudge my bot from #150 to top 100 2011-12-08T15:04:07 someone is posting lots of pastes 2011-12-08T15:04:13 i would suggest that one could perhaps try some hill climbing like heuristics once you've picked your move to improve it 2011-12-08T15:04:16 McLeopold: how did you get rid of the spam on antpaste? 2011-12-08T15:04:29 has anyone tried that last suggestion? 2011-12-08T15:04:33 amstan_: I just looked for urls and denied the paste 2011-12-08T15:04:47 doesn't the json have urls in it? 2011-12-08T15:04:55 yes 2011-12-08T15:04:58 I allow those 2011-12-08T15:05:04 cool 2011-12-08T15:05:15 not really, spammers are just stupid, or lazy 2011-12-08T15:05:56 the php paster is really anoying... 2011-12-08T15:06:15 Fluxid: my combat attacks in that map 2011-12-08T15:06:46 wait nvm I have combat disabled because I'm testing this thing - it still attacks with it enabled though 2011-12-08T15:07:00 :| 2011-12-08T15:07:20 the 4 ants at the front move forwards 2011-12-08T15:07:26 what's even more funny, my bot takes all the time every second turn on this time 2011-12-08T15:07:33 the 2 ants near the 1 enemy in the easy move forwards and kill it 2011-12-08T15:07:38 like, one turn takes 10ms, and second 467ms 2011-12-08T15:07:40 wtf 2011-12-08T15:07:50 *** delt0r_ has quit IRC (Ping timeout: 248 seconds) 2011-12-08T15:07:50 and with the bottom part, one ant waits until the other gets there and they kill it 2011-12-08T15:07:54 my bot handles unmoving enemies fine 2011-12-08T15:08:00 it's the moving ones that screw it up 2011-12-08T15:08:08 when they move sideways instead of towards me 2011-12-08T15:09:54 *** Anilm3 has quit IRC (Quit: Lost terminal) 2011-12-08T15:12:53 http://ompldr.org/vYm5lcg well, this does something 2011-12-08T15:12:56 I'm not sure what though 2011-12-08T15:13:13 looks funky 2011-12-08T15:13:20 *** Redgis has joined #aichallenge 2011-12-08T15:14:43 *** _flag <_flag!~flag@69-165-173-172.dsl.teksavvy.com> has joined #aichallenge 2011-12-08T15:16:40 *** Kurnevsky has joined #aichallenge 2011-12-08T15:20:43 *** delt0r_ has joined #aichallenge 2011-12-08T15:21:50 *** vn971 has joined #aichallenge 2011-12-08T15:22:22 Tell me please, where should I place my files so my bot can read them? 2011-12-08T15:22:54 at the root of the zip 2011-12-08T15:23:15 your bot's current directory will always be that 2011-12-08T15:23:47 ok, thank you 2011-12-08T15:24:47 oh well, this method doesn't really work for me but it compliments my existing combat code well 2011-12-08T15:24:57 I can generate a better initial set of offensive moves 2011-12-08T15:25:16 http://ompldr.org/vYm5mOQ can just completely ignore moves into red zones 2011-12-08T15:25:20 *** Accoun has quit IRC (Remote host closed the connection) 2011-12-08T15:25:24 and do my combat the old way, but with a better start 2011-12-08T15:25:33 *** Accoun has joined #aichallenge 2011-12-08T15:26:06 I am looking forward to combat being my problem 2011-12-08T15:27:50 okay, I was updating the status wrong http://paste.aichallenge.org/puzdB/ 2011-12-08T15:28:26 McLeopold: so you just don't move into DIE zones? 2011-12-08T15:28:28 it makes me smile to watch the replay with visualizations and see the ants lock on to the hill :) 2011-12-08T15:28:44 *** Antimony has joined #aichallenge 2011-12-08T15:29:22 thestinger: only when exploring and attacking 2011-12-08T15:29:29 when gathering food, I go for it 2011-12-08T15:33:31 *** pairofdice has quit IRC (Quit: leaving) 2011-12-08T15:33:37 okay, who's on what tcp server? 2011-12-08T15:33:51 *** Accoun has quit IRC () 2011-12-08T15:33:57 I think most people are on Fluxid's tcp server 2011-12-08T15:34:09 http://ants.fluxid.pl/ranking 2011-12-08T15:34:18 that's the good one? 2011-12-08T15:34:30 anyone playing on the crappy one? :) 2011-12-08T15:34:32 well, they're all good - but no one plays on the others :P 2011-12-08T15:34:38 *** Hexren has joined #aichallenge 2011-12-08T15:34:46 I'll give it a shot 2011-12-08T15:35:16 *** Hexren has left #aichallenge 2011-12-08T15:35:44 *** vn971 has left #aichallenge 2011-12-08T15:35:59 someone do something about the slow bots on tcp :( 2011-12-08T15:36:40 Fluxid: change the turntime reported to the bots to 500ms :) 2011-12-08T15:38:48 Yes. Then the server could wait for a response for 5000ms if it wants. But the bot the should know it only has 500ms 2011-12-08T15:39:22 does the tcpclient report status and turns? 2011-12-08T15:39:45 *** Accoun has joined #aichallenge 2011-12-08T15:39:47 yep 2011-12-08T15:40:01 yeah! timeout! 2011-12-08T15:45:31 ...if someone has a faintest clue what is going on here, please help. 2011-12-08T15:45:34 http://pastebin.com/d7SyzCtf 2011-12-08T15:45:54 assert OK, call function, same assert -> fail. 2011-12-08T15:49:42 *** heinrich5991 has quit IRC (Excess Flood) 2011-12-08T15:50:30 ronchaine: are u sure about what you saw? It should behave the same as long as the same value is passed 2011-12-08T15:50:38 besh: Positive 2011-12-08T15:50:43 That is why I'm so baffled. 2011-12-08T15:50:59 ronchaine, yo're shure the code yyou pasted is the only call to getloc ? 2011-12-08T15:52:15 *** heinrich5991 has joined #aichallenge 2011-12-08T15:52:51 No, there are others, but if I comment out that one call, it won't crash. 2011-12-08T15:53:53 what value does dir have when it fails ? 2011-12-08T15:55:08 a sec, I'll check. 2011-12-08T15:56:21 if it is a garbage value then it is in the "else" block. 2011-12-08T15:56:23 case of 'can't find my way home', lol 2011-12-08T15:57:16 *** Kurnevsky has left #aichallenge 2011-12-08T15:58:12 *** bluegaspode has quit IRC (Quit: Page closed) 2011-12-08T15:58:57 *** Palmik has quit IRC (Remote host closed the connection) 2011-12-08T16:00:36 *** epicmonkey has joined #aichallenge 2011-12-08T16:01:05 McLeopold: http://paste.aichallenge.org/NidJk/?row=3&col=14&turn=33 2011-12-08T16:01:10 that doesn't look like ANY combat 2011-12-08T16:01:16 every meeting was a 1-1 trade 2011-12-08T16:03:06 besh: It's "1" 2011-12-08T16:05:27 well that assert can not fail with a value of 1. 2011-12-08T16:05:46 ...yeah, when it comes to the function, it is suddenly 87. 2011-12-08T16:06:18 Fluxid: http://paste.aichallenge.org/xH1yL/ 2011-12-08T16:06:29 Constantly 87, even. 2011-12-08T16:07:54 *** heinrich5991 has quit IRC (Excess Flood) 2011-12-08T16:08:21 try intitializing d to 0 i.e int d = 0; 2011-12-08T16:08:48 line 3; 2011-12-08T16:09:44 *** heinrich5991 has joined #aichallenge 2011-12-08T16:10:55 *** ltriant has joined #aichallenge 2011-12-08T16:11:26 Tried, didn't help. Also, if it doesn't hit any of the NSEW's (which initialise the value) it should fail in the assert(0) -block. 2011-12-08T16:12:50 *** hkraal_ has quit IRC (Quit: Page closed) 2011-12-08T16:13:39 ronchaine: I would guess that getLoc is being inlined (good) and the two identical asserts are being folded into one 2011-12-08T16:13:43 maybe you should check for other getloc() calls as gollum suggested 2011-12-08T16:13:47 and the debug information happens to point at the getLoc one 2011-12-08T16:13:56 try with -O0 2011-12-08T16:13:59 *** tobym has quit IRC (Remote host closed the connection) 2011-12-08T16:14:05 then you will probably see it assert on the expected line 2011-12-08T16:14:44 it is in debug mode right ? 2011-12-08T16:14:48 Yeah. 2011-12-08T16:14:50 no optimization 2011-12-08T16:14:56 O.o 2011-12-08T16:15:05 Just tested, with no optimisation it works. 2011-12-08T16:15:13 do you have warnings turned up? 2011-12-08T16:15:15 *** tobym has joined #aichallenge 2011-12-08T16:15:24 it works works or it asserts on line "16"? 2011-12-08T16:15:34 bugs caused by optimization are pretty much always caught by a warning 2011-12-08T16:16:03 they're pretty much always mem smashing/initialization bugs too 2011-12-08T16:16:23 *** nplus has quit IRC (Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 1.9.0.17/2009122204]) 2011-12-08T16:16:50 use valgrind 2011-12-08T16:17:02 libmudflap is better than valgrind :) 2011-12-08T16:17:22 better than valgrind? blasphemy! :p 2011-12-08T16:17:23 any hint on how much time i should reserver for sending outputs? .. this seems to vary pretty much 2011-12-08T16:17:30 Minthos: much better, it's built into your program 2011-12-08T16:17:31 reserve* 2011-12-08T16:17:33 bounds checks for every array 2011-12-08T16:17:34 it's 10ms per 100 lines 2011-12-08T16:17:41 the engine enforces that 2011-12-08T16:17:49 int a[4]; a[5] = 5; 2011-12-08T16:17:53 but you can send output early and be processing during the 10ms too 2011-12-08T16:17:53 hmm 2011-12-08T16:17:54 valgrind doesn't catch that, libmudflap does 2011-12-08T16:18:14 well valgrind might if it actually accesses off the end of the stack 2011-12-08T16:18:15 i buffered all outputs in a stringstream and send it completely at the end 2011-12-08T16:18:37 not a good idea 2011-12-08T16:18:38 ikaros: the engine pauses for 10ms between every... 50 lines I think 2011-12-08T16:18:39 maybe 100 lines 2011-12-08T16:18:43 don't buffer it 2011-12-08T16:18:48 if you know what you want to do, do it early if you have >100 bots 2011-12-08T16:18:56 hm ok i did that because i already had timeouts befor 2011-12-08T16:18:59 which was strange 2011-12-08T16:19:24 set turntime to 50ms and let 10% for output 2011-12-08T16:19:28 so my new combat code is different 2011-12-08T16:19:30 but it seemed to low 2011-12-08T16:19:30 not sure if it's better 2011-12-08T16:19:43 maybe I just have 1000 bugs to fix 2011-12-08T16:20:12 same here.. I fixed last night's bug today 2011-12-08T16:20:21 and made one ore more new ones 2011-12-08T16:20:32 so now my bot is mental again 2011-12-08T16:20:51 s/ore/or/ 2011-12-08T16:21:02 I do the same thning as Ikaros. What is wrong with buffering ? 2011-12-08T16:21:14 BenJackson: I had updated the status wrong. And it's not really combat yet, just combat avoidance. 2011-12-08T16:22:00 keep getting timeouts.. even with 10ms reserved for output.. very strange 2011-12-08T16:22:07 and there are only 15 ants or so 2011-12-08T16:22:12 meaning 15 lines.. 2011-12-08T16:22:19 how is 15 ants taking 500ms anyway? 2011-12-08T16:22:21 thestinger: is it better to send each move as you get it ? 2011-12-08T16:22:23 buffering throws away computation time because the engine is slow at reading bot commands 2011-12-08T16:22:35 besh: I dunno, it doesn't matter for me 2011-12-08T16:22:39 BenJackson, i lowered turntime to 100ms 2011-12-08T16:22:48 and i test how many calculations i can do 2011-12-08T16:22:48 I output all moves near the end because I keep them around to change them with combat code 2011-12-08T16:22:56 thats why it uses 90% time for simulation 2011-12-08T16:23:00 but it would be better just to output them right away I guess 2011-12-08T16:23:19 just before I timed out, I had the highest ant count \o/ http://ants.fluxid.pl/replay.19470 2011-12-08T16:24:03 wow I wonder if the "_15lookahead" guy is really etc 2011-12-08T16:24:28 guess I've got to implement this new combat thing to see it in action 2011-12-08T16:24:29 no way 2011-12-08T16:24:43 it' 2011-12-08T16:24:43 thestinger: oh you'd know allll about fake suffixes 2011-12-08T16:24:52 it's probably version 15, with lookahead 2011-12-08T16:24:54 strcat_misdirection 2011-12-08T16:25:07 lol :) 2011-12-08T16:25:19 watch out for bj_complete_endgame_database 2011-12-08T16:25:23 Minthos: we are talking about writing your moves. Is it better to write each move one by one as you get it doing computation in between OR write them all at the end ? 2011-12-08T16:25:32 besh: the first 2011-12-08T16:25:47 *** bluegaspode has joined #aichallenge 2011-12-08T16:25:49 I do mine at the end for historical reasons 2011-12-08T16:25:55 but then I've never timed out 2011-12-08T16:25:59 and I don't even watch the time 2011-12-08T16:26:13 yea there must something different be wrong 2011-12-08T16:26:25 this is strange 2011-12-08T16:26:35 last contest waiting till the end was bad, because of the engine, now you can and it's ok 2011-12-08T16:26:54 I don't understand why the first one is better ? Infact I deliberately changed to the second one in the hope it will be faster , silly me :( 2011-12-08T16:27:27 *** Anilm3 has joined #aichallenge 2011-12-08T16:27:31 *** nplus has joined #aichallenge 2011-12-08T16:27:46 besh: the engine's main loop is: while sleep 10ms: for all alive bots read up to 100 lines 2011-12-08T16:28:13 McLeopold: So I thought I had a clever idea to get better CPU utilization on the workers and then I saw it was already implemented 2011-12-08T16:28:22 *** heinrich5991 has quit IRC (Excess Flood) 2011-12-08T16:28:23 can some one explain me how can make my antes go to objectives like lazarant on this match? http://aichallenge.org/visualizer.php?game=173325&user=589 2011-12-08T16:28:24 the 2 at a time? 2011-12-08T16:28:24 is the live setup actually using --serial or some variant? 2011-12-08T16:28:47 in the config template I see 'serial':2 but --serial 2 is not a valid cmd line (it's just a boolean) 2011-12-08T16:28:48 serial 2 2011-12-08T16:29:00 serial is only for the engine, not playgame 2011-12-08T16:29:08 the official contest doesn't use playgame 2011-12-08T16:29:13 that is local play only 2011-12-08T16:29:14 playgame does take it, ah 2011-12-08T16:29:20 ok, cool 2011-12-08T16:29:32 so maybe having CPU time controls vs wall clock is not that big a deal 2011-12-08T16:29:38 I could added... or you could do a pull request 2011-12-08T16:29:39 since it's not up to 9 bots waiting on the slowest 2011-12-08T16:29:54 right 2011-12-08T16:29:56 McLeopold: no, I don't need it locally, I was just brainstorming about the workers 2011-12-08T16:30:06 and then saw the code was there but didn't understand the playgame/engine distinction 2011-12-08T16:30:17 http://ants.fluxid.pl/replay.19470 great method, have 260 ants in hill so you're safe for 260 turns 2011-12-08T16:30:26 Fluxid: ChrisH does that 2011-12-08T16:30:32 I just implemented hive count 2011-12-08T16:30:32 but I' 2011-12-08T16:30:36 m not using for anything yet 2011-12-08T16:30:54 I used to do that on accident 2011-12-08T16:30:56 okay okay, lemme quickly hack constant "turntime 500" 2011-12-08T16:31:00 bj: why doesn't it read everything in the socket buffer ? 2011-12-08T16:31:05 my record is 960 in the hill 2011-12-08T16:31:08 I think I was safe 2011-12-08T16:31:15 besh: unknown 2011-12-08T16:31:41 you're safe as soon as hive() > (state.turns - state.turn) 2011-12-08T16:31:48 as long as your logic doesn't move ants off your hill 2011-12-08T16:32:08 BUT your hills are only worth 1 point so you can probably still score higher if you bring more ants to the party 2011-12-08T16:32:13 once your hill is surrounded you won't be able to 2011-12-08T16:32:14 12 games running on my tcp 2011-12-08T16:32:22 can i kill them? 2011-12-08T16:32:28 fluxid: thumbs up for turntime 500 2011-12-08T16:32:48 *** Redgis has quit IRC (Quit: ... mains libres) 2011-12-08T16:33:04 fluxid: statistically speaking most people are not winning those 12 games 2011-12-08T16:33:08 so they all vote yet :) 2011-12-08T16:33:08 s 2011-12-08T16:33:14 *** heinrich5991 has joined #aichallenge 2011-12-08T16:33:16 yets? 2011-12-08T16:33:24 nyet 2011-12-08T16:33:32 :) 2011-12-08T16:33:55 okay then! 2011-12-08T16:34:00 KILL ALL THE GAMES 2011-12-08T16:34:07 Fluxid: so, how about that turn time? 2011-12-08T16:34:36 McLeopold: now it should send turntime 500 2011-12-08T16:34:40 someone check 2011-12-08T16:34:48 it's fast now 2011-12-08T16:34:50 :) 2011-12-08T16:35:10 my cpu load is way up which is a good sign 2011-12-08T16:35:12 mine won't be restarted until I get home 2011-12-08T16:35:34 yes it seems to go faster but i have to wait till a new game starts .. 2011-12-08T16:36:32 no it is still 5000 2011-12-08T16:37:40 besh: you mean you get 5000 or you see 5000 in game replay on site 2011-12-08T16:38:00 because it replaces turntime when sending to socket with 500 2011-12-08T16:38:05 not in engine itself 2011-12-08T16:38:16 at least it should 2011-12-08T16:38:20 wasnt there a problem with the timer from the c++ starter pack? 2011-12-08T16:38:30 ikaros: I think it was broken 2011-12-08T16:38:40 ok.. best ill look into that first :) 2011-12-08T16:39:06 the best way to do it is saving a timeval struct, and calculating a delta based on a new one 2011-12-08T16:39:31 instead of trying to turn unix time seconds into milli/microseconds 2011-12-08T16:39:59 fluxid: I see 5000 for both loadtime and turntime but the games to go much faster.. 2011-12-08T16:40:17 i'll check myself with my bot then 2011-12-08T16:40:43 it's 500 2011-12-08T16:40:46 fluxid, what did you do to achieve the 500 output t the bots ? 2011-12-08T16:40:58 g0llum: i'll commit and push in a second 2011-12-08T16:41:03 ikaros: http://paste.pocoo.org/show/z5jGMzQw7jxcJkOOYa4B/ I just turned it into that (you can ignore the silly anonymous namespace) 2011-12-08T16:41:30 *** kire has joined #aichallenge 2011-12-08T16:41:33 thx i was just reading up clock_gettime .. no idea whats the better choice 2011-12-08T16:41:37 greeting gentlemen :) 2011-12-08T16:41:56 ikaros: clock_gettime is the modern way (gettimeofday is deprecated according to the POSIX:2008 docs) 2011-12-08T16:42:02 *** olexs has joined #aichallenge 2011-12-08T16:42:05 but I think you need -lrt passed to gcc to use the clock_ stuff 2011-12-08T16:42:11 g0llum: https://github.com/fluxid/ants-tcp/commit/4cdd4c7c293c46094271020b4b7f93858c2e62e3 here you are 2011-12-08T16:42:11 ohh 2011-12-08T16:42:19 ok thx i will try your version first 2011-12-08T16:42:57 the new clock_ stuff lets you use CLOCK_MONOTONIC (based on an arbitrary time) instead of wall clock time, which can be changed by ntpd, etc. 2011-12-08T16:43:17 as I'm about to begin the battle code for my post-nervous breakdown v2 bot, I was wondering if some of you would be kind enough to give me a few advices and tips? share some horror stories of what to avoid? 2011-12-08T16:43:26 and I think it's more accurate (the struct uses nsec, not usec :P) and you can get the resolution with clock_getres 2011-12-08T16:43:32 gettimeofday() is fine though 2011-12-08T16:43:46 *** kire has quit IRC (Remote host closed the connection) 2011-12-08T16:44:25 gah still timouts.. so it wasnt the timers fault.. wtf 2011-12-08T16:45:35 fluxid: I am getting 5000 for the third time even after I restarted ? Replay also says 5000 2011-12-08T16:45:41 has anyone shared some scenarios maps to practice battle / battle aspect and such? is there a map editor or any precious tool I should know about? 2011-12-08T16:46:43 LouisMartin: notepad... 2011-12-08T16:47:13 I think there's an emacs mode for drawing ascii art... 2011-12-08T16:47:20 to be 100% accurate: clock_gettime CLOCK_MONOTONIC's *rate* is affected by NTP, but not its offset 2011-12-08T16:47:40 but gettimeofday and clock_gettime use the same underlying mechanism 2011-12-08T16:47:45 ah 2011-12-08T16:47:48 and linux actually stores the wall clock time and translates to monotonic 2011-12-08T16:47:56 so gettimeofday is microscopically faster 2011-12-08T16:48:28 oh wow, you drop all games when restarting? 2011-12-08T16:48:48 McLeopold: Yea, I was thinking of TheDraw (http://en.wikipedia.org/wiki/TheDraw) 2011-12-08T16:49:17 http://www.lysator.liu.se/~tab/artist/ 2011-12-08T16:49:41 anyway I'm just doing it by hand in vim :P 2011-12-08T16:50:37 yeah, I have a template arena 2011-12-08T16:50:43 and I modify it in vim 2011-12-08T16:50:54 thestinger: I like it 2011-12-08T16:51:36 fluxid, still got turntime 5000fluxid, it's not the bot, that writes turntime, but the angine/ants.py(1542) i think, you mixed up bot read/write 2011-12-08T16:52:13 lemme check once more 2011-12-08T16:53:09 so, no maps/bots to practice battle code has been shared? 2011-12-08T16:53:30 a few on paste 2011-12-08T16:53:42 hm, you're right 2011-12-08T16:55:05 in vim, I just use block visual with ctrl-V and then r% to change to walls r. to change to land, etc. 2011-12-08T16:55:20 the emacs artist mode thing is kind of neat though 2011-12-08T16:55:28 *** _Lone_Wolf_ <_Lone_Wolf_!LW@bl10-78-112.dsl.telepac.pt> has joined #aichallenge 2011-12-08T16:55:34 *** _Lone_Wolf_ is now known as flowenol 2011-12-08T16:55:53 McLeopold: thanks 2011-12-08T16:55:57 thestinger: you'd like aacircuit 2011-12-08T16:57:19 lol, my bot loses to an ancient pre-combat version on small maps 2011-12-08T16:57:25 15% win rate 2011-12-08T16:57:48 on tiny random walks 2011-12-08T16:58:20 do most people use the same name for different versions when playing on tcp ? 2011-12-08T16:58:43 besh idk but i do 2011-12-08T16:58:47 besh: I use strcat and strcat_next for my stable version and master branch 2011-12-08T16:58:48 just one http://ants.fluxid.pl/player/McLeopold_sucks 2011-12-08T16:58:57 the random ones with suffixes are just branches I want to test 2011-12-08T16:59:05 thestinger: yeah we know what you do :) 2011-12-08T16:59:10 :P 2011-12-08T16:59:25 adding a version number and starting at a high sigma again just seems like a waste 2011-12-08T16:59:30 but i think what I do is bad practise as it could affect ratings 2011-12-08T17:01:40 on fluxid you can get 200 games a day 2011-12-08T17:01:46 restarting hardly matters 2011-12-08T17:02:45 one more chance 2011-12-08T17:03:00 with this fix mayb 400 games a day! 2011-12-08T17:03:02 if all else fails, hardcode an iptables rule to edit the packet P 2011-12-08T17:03:04 :P * 2011-12-08T17:03:09 OKAY 2011-12-08T17:03:14 now it should be good 2011-12-08T17:03:37 fucking python 2.6 on the server 2011-12-08T17:03:38 to make fluxid more like the main site I'm going to connect with 3500 starter kits 2011-12-08T17:03:41 yes now it works 2011-12-08T17:03:49 good 2011-12-08T17:04:00 sorry for the restarts and enjoyyyyyyyy~~~ 2011-12-08T17:04:08 thanks: Now I should have 10x more games that I don't know what to do with :) 2011-12-08T17:04:23 do your ants give priority to fighting or gathering food? 2011-12-08T17:04:27 besh: I did a few statistical analyses of all my fluxid games 2011-12-08T17:04:31 looking at map sizes I was bad at 2011-12-08T17:04:33 particular maps, etc 2011-12-08T17:04:37 then using that to pick replays 2011-12-08T17:04:47 http://ants.fluxid.pl/player/hedonismbot this is mine btw :P 2011-12-08T17:04:54 ripped out 50% of the logic and made it only care about food 2011-12-08T17:05:07 seems to be an improvement... 2011-12-08T17:05:08 gold-plated grape-eating chaise lounge robot? 2011-12-08T17:05:10 *** avdg has quit IRC (Ping timeout: 248 seconds) 2011-12-08T17:05:23 *** mviel__ has quit IRC (Ping timeout: 252 seconds) 2011-12-08T17:05:42 oh btw, i updated the maps 2011-12-08T17:05:51 http://images.wikia.com/en.futurama/images/1/18/Hedonismbot.jpg 2011-12-08T17:05:58 BenJackson: yep 2011-12-08T17:05:59 bj: that is interesting. I know my bot does bad at open maps but it is good to have a statistical check. 2011-12-08T17:06:06 Fluxid: did you have to buy new disks to hold them all? 2011-12-08T17:06:14 cell_maze_05p_9249249298.map 2011-12-08T17:06:51 uh, no, not really. i just copied them from aichallenge repo 2011-12-08T17:07:05 is that up to date? 2011-12-08T17:07:09 I did that recently and was still missing maps 2011-12-08T17:07:13 http://ants.fluxid.pl/maps i think so 2011-12-08T17:07:33 *** mviel__ has joined #aichallenge 2011-12-08T17:07:54 lots of... maps 2011-12-08T17:07:56 aw crap, there are a bunch of random walks now 2011-12-08T17:08:06 300 maps, wow 2011-12-08T17:08:14 you'll need to play for two days to make sure you played all of them... 2011-12-08T17:08:26 BenJackson: all the random walks are basically the same though :P 2011-12-08T17:08:30 yeah that seems to be a big disparity for the finals 2011-12-08T17:08:38 now noone will will even try to hardcode map-dependent behaviour 2011-12-08T17:08:39 you and some other bot could play entirely disjoint sets of maps 2011-12-08T17:08:55 well, this sucks 2011-12-08T17:09:01 thestinger: I found a unique feature of 1 2011-12-08T17:09:13 an ant could hide in a niche such that only one enemy ant could threaten it 2011-12-08T17:09:20 my code kept trying to send more ants to finish it off 2011-12-08T17:09:26 but none could get close enough 2011-12-08T17:09:32 this map I'm testing on is silly, my bots raise each other's hill at the same turn 2011-12-08T17:09:34 so it boxed that one ant in with 10+ ants :( 2011-12-08T17:09:38 almost every game 2011-12-08T17:13:44 *** iglo has joined #aichallenge 2011-12-08T17:13:45 in explore tests it turns out my bot with combat but no goals (like attacking hills) tends to kill all the holdbots anyway 2011-12-08T17:13:52 I'm not entirely sure why 2011-12-08T17:14:06 I think killing the holdbots must get me close enough to the hills that I accdientally step on them 2011-12-08T17:14:19 lol 2011-12-08T17:16:26 part of the reason I added --forever to the game 2011-12-08T17:16:31 to shut off the endgame conditions 2011-12-08T17:18:30 http://ompldr.org/vYm5oaw all my tests end like this... 2011-12-08T17:18:49 lol 2011-12-08T17:19:01 perfect tie 2011-12-08T17:19:33 *** mleise has quit IRC (Ping timeout: 248 seconds) 2011-12-08T17:20:38 I think I fixed a bug 2011-12-08T17:20:49 now my new version seems to win most of the time 2011-12-08T17:22:04 you know I keep meaning to figure out why I can run n versions of my bot on the same map 2011-12-08T17:22:09 like it didn't before 2011-12-08T17:22:13 without any rotations in the symmetry 2011-12-08T17:22:18 yet they won't do identical things 2011-12-08T17:23:02 your direction choices are probably biased 2011-12-08T17:23:08 mine are for sure 2011-12-08T17:23:29 *** nplus has quit IRC (Read error: Connection reset by peer) 2011-12-08T17:24:22 what's the max name length on tcp? 2011-12-08T17:24:59 oh, apparently there is none 2011-12-08T17:25:59 inb4 exploit 2011-12-08T17:26:02 depends on your will to cheat, since it's in the client ;) 2011-12-08T17:28:28 I need to redo movement again, my ants think they are bees atm 2011-12-08T17:28:45 I like how some bots move around like blobs of mercury 2011-12-08T17:30:38 *** tobym has quit IRC (Remote host closed the connection) 2011-12-08T17:32:02 *** tobym has joined #aichallenge 2011-12-08T17:32:08 fluxid: I tried your idea about cost of path through ants for A* path finding, and it helps. 2011-12-08T17:32:51 I increment the cost by +2 when the path is through an ant. Maybe too aggresive ? 2011-12-08T17:33:17 I am wondering if I can manipulate the cost to include "unseen tile" information. 2011-12-08T17:33:50 besh: I do +3 when going through an ant instead of the usual +1 2011-12-08T17:34:09 Aha so we do similar things then. 2011-12-08T17:34:11 well, I've tried like a hundred variations 2011-12-08T17:34:40 It helps to avoid path through pile of your ants like at choke points. 2011-12-08T17:35:13 yeah, they take alternate routes if it's not too much further 2011-12-08T17:35:32 I need a better way of doing it though 2011-12-08T17:36:34 I am thinking to use it for maximizing exploration as well. To prefer paths through less visited tiles more but getting the right weights may be difficult. 2011-12-08T17:39:01 My A* paths are not really that optimal anyway. I use weighted A* with a factor of 2 2011-12-08T17:39:57 *** Paradoxial has joined #aichallenge 2011-12-08T17:42:33 thestinger: someone has the same exact confusions as I have about the fighting[][] array http://forums.aichallenge.org/viewtopic.php?f=24&t=2083 2011-12-08T17:43:24 *** Jak_o_Shadows has joined #aichallenge 2011-12-08T17:47:04 *** nplus has joined #aichallenge 2011-12-08T17:47:38 antimatroid: heh, I actually dealt with your example (with the two ants not being able to go to the same place) already 2011-12-08T17:48:14 because I put all possible locations into an unordered_set, then paint the info around them 2011-12-08T17:48:48 oh nvm, I need to tweak it a tiny bit to deal with it properly 2011-12-08T17:50:35 If there was no water, my code tries to order moves to get all ants closer to the target. 2011-12-08T17:50:56 but that water tile forces them to move to the same location for his example. 2011-12-08T17:53:25 *** bluegaspode has quit IRC (Quit: Page closed) 2011-12-08T17:54:04 *** ikaros has quit IRC (Quit: Ex-Chat) 2011-12-08T17:54:10 hmm, what is --scenario used for? playgame.py usage info doesn't tell 2011-12-08T17:55:04 to feed in a map with preexisting food and ants 2011-12-08T17:55:06 for testing 2011-12-08T17:55:12 and ignoring symmetry 2011-12-08T17:55:14 you will want --food none too in most cases 2011-12-08T17:55:21 or --food random 2011-12-08T17:56:38 ah! that's what I thought. the engine doesn't like my idea of a scenario though.. "got 43 rows, expected none" 2011-12-08T17:58:57 File "C:\Local Workspace\AIC Ants\tools\ants.py", line 271, in parse_map % (height, row)) Exception: ('map', 'Incorrect number of rows. Expected None, got 43') 2011-12-08T17:59:27 *** ikaros has joined #aichallenge 2011-12-08T17:59:28 *** Antimony has quit IRC (Ping timeout: 240 seconds) 2011-12-08T18:00:18 I'm an idiot, but why? (in the context of this error, plz...) 2011-12-08T18:01:25 bad map? 2011-12-08T18:01:44 LouisMartin, now the whole cmdline, please 2011-12-08T18:01:46 put your map on paste.aichallenge 2011-12-08T18:02:16 perhaps.. I'll check again 2011-12-08T18:03:36 I'll clean it first as it seems too loaded for nothing, g0llum. I'm recycling the same cmd line over and over and it probably ain't good for scenario map. 2011-12-08T18:03:57 also, as Ben suggest, my map is probably just bad 2011-12-08T18:05:24 maybe, you just forgot to say rows 20 and the like in the map 2011-12-08T18:07:59 *** iglo has quit IRC (Remote host closed the connection) 2011-12-08T18:08:14 I'll paste it 2011-12-08T18:08:31 I don't get it since the rows and cols declared in the map are okays 2011-12-08T18:09:59 http://paste.aichallenge.org/v9IY1/ 2011-12-08T18:10:40 *** sigh has joined #aichallenge 2011-12-08T18:11:27 the command line is "python "%~dp0playgame.py" -So --engine_seed 62 --player_seed 59 --end_wait=0.25 --verbose --log_dir game_logs --loadtime 36000 --turntime 2000 --turns 36000 -- viewradius2 77 --food_rate 5 11 --food_turn 19 37 --food_start 75 175 --food_visible 3 5 --scenario --food none --map_file "%~dp0maps\cases\battledummy.map" %* "python ""%~dp0sample_bots\python\LeftyBot.py""" """%~dp0mybots\realsmurfs.exe""" | j 2011-12-08T18:11:31 i've seen that map before! 2011-12-08T18:11:41 I made it to test my early combat :P 2011-12-08T18:11:47 it's just the tutorial map with some ants 2011-12-08T18:12:00 and yes, it needs a redesign to say the least lol 2011-12-08T18:12:09 *** Antimony has joined #aichallenge 2011-12-08T18:12:15 I found it somewhat useful to see how many ants my orange team could survive with 2011-12-08T18:12:44 thestinger :) yes, you're the one who gave it to me if I remember well. 2011-12-08T18:12:57 http://ompldr.org/vYm5pcw red == die, blue == trade 2011-12-08T18:13:09 haha I thought this new code would be slower 2011-12-08T18:13:10 or maybe it just got viral 2011-12-08T18:13:12 it's 10% faster 2011-12-08T18:16:12 so this map is well known and tested; how could it fail on my side? 2011-12-08T18:16:40 the starter pack "tutorial1.map" runs perfectly with the same cmd line 2011-12-08T18:16:46 *** oddmunds has left #aichallenge 2011-12-08T18:17:51 the empty line ? why not just diff those ? 2011-12-08T18:20:03 I don't understand. which empty line? in the map? those are okay by the format, but I'll try 2011-12-08T18:21:27 empty line between players 2 and actual map data, other maps don't have that 2011-12-08T18:21:36 btw, what would be the parameter -So ? I blindly copy/pasted it for a while without knowing. It's not in the playgame.py usage 2011-12-08T18:22:28 LouisMartin: bad line endings? 2011-12-08T18:22:45 tried it, but it doesn't work 2011-12-08T18:23:50 Ben: line endings? I thought notepad was okay? 2011-12-08T18:24:10 cr/lf versus just lf ? 2011-12-08T18:25:07 I actually used Visual Studio to save it, not notepad 2011-12-08T18:28:45 ...and that is it: saving maps under common windows editors adds the and playgame.py dislike those. I opened and a perfectly working map and now it's ruined. 2011-12-08T18:29:18 thanks BenJackson and g0llum. mystery solved. 2011-12-08T18:32:22 gotta love "not invented here syndrome": Windows has , Linux and Apple/Mac 2011-12-08T18:33:46 OSX does it properly now iirc 2011-12-08T18:33:49 some applications may not 2011-12-08T18:33:53 \n is the one true way 2011-12-08T18:33:56 who cares what windows does :P 2011-12-08T18:34:00 yea, almost 2012, and we still splitting hairs on that 2011-12-08T18:34:09 windows also doesn't use UTF-8 everywhere 2011-12-08T18:34:25 and I think notepad/wordpad have broken unicode 2011-12-08T18:34:36 you could probably fix the engine to load crlf maps pretty easily 2011-12-08T18:34:39 because they use UCS-2, not UTF-16 2011-12-08T18:35:14 Wow, apparently my bot doesn't work on square maps 2011-12-08T18:35:27 *** epicmonkey has quit IRC (Ping timeout: 240 seconds) 2011-12-08T18:35:59 wikipedia says win8 actually uses LF (\n) line endings 2011-12-08T18:36:00 BenJackson: indeed an option 2011-12-08T18:36:06 *** avdg has joined #aichallenge 2011-12-08T18:36:06 might not be true 2011-12-08T18:38:30 ÿþhi i'm a windows unicode text file 2011-12-08T18:38:39 http://en.wikipedia.org/wiki/Byte_order_mark 2011-12-08T18:40:31 *** tobel has quit IRC (Quit: ERC Version 5.3 (IRC client for Emacs)) 2011-12-08T18:40:39 *** AntDroid has joined #aichallenge 2011-12-08T18:40:58 *** cyphase has quit IRC (Ping timeout: 268 seconds) 2011-12-08T18:42:07 cause there's one thing Microsoft loves more than fair competition; standards 2011-12-08T18:42:49 *** Conorach has quit IRC (Ping timeout: 268 seconds) 2011-12-08T18:44:03 *** iglo has joined #aichallenge 2011-12-08T18:44:12 http://harmful.cat-v.org/standards/ 2011-12-08T18:45:29 thestinger: you seem well versed in text encoding, any idea what I should feed visual studio when saving? it asks for encoding and page ending 2011-12-08T18:46:34 page ending? 2011-12-08T18:47:01 utf-8 is the only sane encoding 2011-12-08T18:47:16 I think most text editors add an extra newline at the end 2011-12-08T18:47:43 *** mviel_ has joined #aichallenge 2011-12-08T18:48:24 'Mediocrity finds safety in standardization.' XML 2011-12-08T18:48:36 there's also a great page on XML on there 2011-12-08T18:48:47 http://harmful.cat-v.org/software/xml/ 2011-12-08T18:49:01 extra newline on the end? 2011-12-08T18:49:12 it probably puts it there 2011-12-08T18:49:19 you just can't see it in the editor 2011-12-08T18:50:17 Java is a DSL to transform big XML documents into long exception stack traces. -- Scott Bellware 2011-12-08T18:50:22 best quote ever :P 2011-12-08T18:50:24 oh god, site is quite therapeutic 2011-12-08T18:51:19 I think http://harmful.cat-v.org/ is done by uriel (one of the suckless.org people) 2011-12-08T18:51:23 *** mviel__ has quit IRC (Ping timeout: 252 seconds) 2011-12-08T18:51:24 ""XML combines the efficiency of text files with the readability of binary files" -- unknown 2011-12-08T18:51:27 nice 2011-12-08T18:51:35 my stomach hurts good :D truth win 2011-12-08T18:51:36 *** bluegaspode has joined #aichallenge 2011-12-08T18:52:02 LouisMartin: -So is the same as -S and -o 2011-12-08T18:52:19 stream output and output to stdout 2011-12-08T18:52:48 it is needed if playing a game live with the java visualizer 2011-12-08T18:52:53 anyway uriel is a rob pike fanboy so there's lots of *nix, plan9, Go, C, etc. stuff on cat-v.org 2011-12-08T18:53:02 *** cyphase has joined #aichallenge 2011-12-08T18:53:14 go_ants_go! 2011-12-08T18:53:44 ah okay. So I guess it I can leave it there without paranoia. 2011-12-08T18:54:11 bookmarked 2011-12-08T18:54:11 *** bluegaspode has quit IRC (Client Quit) 2011-12-08T18:59:37 I can't believe this. VS has 6 options for line ending and none - when combien with UTF-8 (with or without signature, whatever this means) saves the map correctly 2011-12-08T19:00:47 *** Antimony has quit IRC (Ping timeout: 240 seconds) 2011-12-08T19:01:28 *** bleh has joined #aichallenge 2011-12-08T19:01:51 *** fourmidable has quit IRC (Quit: Page closed) 2011-12-08T19:01:54 *** bleh is now known as Guest74161 2011-12-08T19:04:00 LouisMartin, you won't guess how many bullshit you can pack into a ~200mb ide ;( (still the best c++ one i've seen so far) 2011-12-08T19:04:40 haha, my play_one_game is modified to automatically supply the right number of opponents 2011-12-08T19:04:51 I did a run without my bot on the command line 2011-12-08T19:04:54 and didn't notice 2011-12-08T19:05:03 so I kept running my various test opponents against teach other 2011-12-08T19:08:45 g0llum: exact. this is what you deserve for insisting on being MS little b'tch after so many years of awesome open source nix dev efforts available instantly, open and free. I totally deserve this. fml 2011-12-08T19:09:16 BenJackson: Who won? :} 2011-12-08T19:09:41 "Next game could take a while" Almost a day now 2011-12-08T19:10:03 LouisMartin, still stick to it, just don't insist topen 'map files' with that 2011-12-08T19:10:42 *** Guest74161 has quit IRC (Quit: Page closed) 2011-12-08T19:11:43 g0llum: until the end of the contest, sure.. no plan on getting excited on learning python in 10 days. 2011-12-08T19:12:12 <_flag> Is it just me or has the game rate decreased? 2011-12-08T19:12:18 also: I've succeeded with "US-ASCII codepage 20127" and "Unix LF" line ending 2011-12-08T19:12:40 <_flag> There appears to only be one worker running, so that might be why 2011-12-08T19:12:44 LouisMartin: actually the "best" one (the highest submitted version) 2011-12-08T19:12:52 _flag: it has decreased signifcantly. Yesterday was 0.0 games / minute for me 2011-12-08T19:12:55 besh, we're all waiting for raspberryPi to deliver, -- the next contest will be run from 24 worker running out of a shoebox , poered by solar energy. 2011-12-08T19:13:09 I played 0 games overa bout 25 hours and then 5 or so in 10 minutes 2011-12-08T19:13:25 <_flag> McLeopold: Not sure if you're aware, but 5 out of 6 workers are down 2011-12-08T19:13:31 <_flag> janzert: ^ 2011-12-08T19:13:45 I can't keep watching my bot suffer on Fluxid :( 2011-12-08T19:14:57 _flag: I've seen something to the effect that the servers were currently costly and so they release a few to keep on budget. 2011-12-08T19:15:52 It's currently 20x more costly than commonly. They're keeping the server budget for running the finals. 2011-12-08T19:16:50 _flag: yep, but I don't have access to revive them, that's janzert only 2011-12-08T19:18:39 McLeopold: So the low rate of game played isn't related to the lowered number of servers as much as it's a technical problem (down workers) then? 2011-12-08T19:20:27 *** g0llum has quit IRC (Read error: Connection reset by peer) 2011-12-08T19:20:28 *** olexs has quit IRC (Quit: Leaving.) 2011-12-08T19:23:29 I don't see a price increase, so they should be running 2011-12-08T19:23:51 http://cloudexchange.org/charts/us-east-1.linux.m2.xlarge.html 2011-12-08T19:26:34 My ants! They do something! 2011-12-08T19:26:46 *** iglo has quit IRC (Remote host closed the connection) 2011-12-08T19:27:52 wow win prices are a lot higher 2011-12-08T19:29:05 *** Antimony has joined #aichallenge 2011-12-08T19:30:31 no wonder replay.html is taking a while to load across the internet... it's 50M with visualization 2011-12-08T19:32:16 lol 2011-12-08T19:32:18 yeah 2011-12-08T19:33:50 *** Migi32 has joined #aichallenge 2011-12-08T19:37:49 ug my symmetry detection is so slow that the bot has already found hills by the time it's done 2011-12-08T19:39:04 http://paste.aichallenge.org/37Zbn/ 2011-12-08T19:39:34 I'd just like to say the visualization overlay is awesome 2011-12-08T19:42:21 antimony: be glad you have symmetry detection at all. 2011-12-08T19:42:30 i have none :( 2011-12-08T19:43:05 does symmetry detection really worth it? 2011-12-08T19:43:32 I guess it depends on how fast it is, in turns 2011-12-08T19:43:32 I think it helps if you want to attack hills early 2011-12-08T19:43:40 it would get you hill locations 2011-12-08T19:44:06 *** Antimony has quit IRC (Ping timeout: 248 seconds) 2011-12-08T19:44:24 Food is spawned symmetrically but i think the tester takes care of that for us if I am not mistaken .. 2011-12-08T19:45:20 wait that statement doesn't make sense if the engine recieves food in its _visible_ area 2011-12-08T19:46:38 so i guess , foraging could also benefit from symmetry.. 2011-12-08T19:48:44 McLeopold: Amstan said sooner (~10h20) that he thought the workers were lowered because of the price. Maybe he didn't know about the tech problem. 2011-12-08T19:51:00 McLeopold: the viewer layout is quite attractive. where can I find doc on how to make use of it? 2011-12-08T19:54:17 *** Cyndre has quit IRC (Quit: Leaving) 2011-12-08T19:55:26 *** bugnuts has left #aichallenge ("Leaving") 2011-12-08T19:55:39 Also, does the Java visualizer supports this debug layout? 2011-12-08T19:58:11 *** Antimony has joined #aichallenge 2011-12-08T20:05:52 *** Anilm3 has quit IRC (Quit: Lost terminal) 2011-12-08T20:08:04 *** Anilm3 has joined #aichallenge 2011-12-08T20:11:55 I'm reworking my strategy layer 2011-12-08T20:12:06 so I took out almost all of my bot's motivations 2011-12-08T20:12:22 it doesn't even go toward hills for the most part 2011-12-08T20:12:37 it might step on one preferentially if it happens to be next to it 2011-12-08T20:12:50 then I added a slight interest in enemy ants 2011-12-08T20:12:55 now it's an ant extermination machine 2011-12-08T20:13:16 finished this 4 player game with total vision of the map and 2 surviving enemies 2011-12-08T20:15:39 so it is more passive now ? 2011-12-08T20:15:44 *** Migi32 has quit IRC (Remote host closed the connection) 2011-12-08T20:16:48 well I need to add some motivation to my bot. Look at the end of the game here http://ants.fluxid.pl/replay.19863 2011-12-08T20:16:56 not really 2011-12-08T20:16:58 just less focused 2011-12-08T20:17:44 I did the changes you made sometime back and it clearly improved strenght 2011-12-08T20:18:12 the changes I made? 2011-12-08T20:18:18 viz a viz. Less attack hill , more exploration, and more enemy ant attacks 2011-12-08T20:18:38 Hill attack was taking too many ants 2011-12-08T20:18:51 yeah 2011-12-08T20:19:10 my current version will do some interesting collapsing on an enemy hill when it's discovered 2011-12-08T20:19:15 which is great when it's the last 2011-12-08T20:19:17 and sucks when it's not 2011-12-08T20:19:46 do you prioritize based on distance to targets ? 2011-12-08T20:20:24 on all kinds of things, but yes 2011-12-08T20:20:29 For instance, when I find enemy hill with in 16 unit radius I go for it instead of attacking ants. 2011-12-08T20:21:14 Also I prefer to attack ants close to my hills with more priority 2011-12-08T20:21:20 one bug that's fixed in V10 that I saw on aichallenge in V9 was where an ant that was NEXT TO an enemy hill ran off to get food 2011-12-08T20:21:23 oops 2011-12-08T20:22:00 yes that could still happen for me 2011-12-08T20:22:10 I basically rely on finding nearby hills first to set the priority 2011-12-08T20:22:17 that's one reason I didn't use symmetry detection yet 2011-12-08T20:22:22 I "find" far away hills too early 2011-12-08T20:22:48 do the top bots use symmetry detection? 2011-12-08T20:23:07 But if you have reduced priority for hills, it may come handy 2011-12-08T20:24:19 Anilm3: I haven't tried to figure it out 2011-12-08T20:24:24 like I said, I don't, and I was as high as 5th 2011-12-08T20:24:26 *** yoden has joined #aichallenge 2011-12-08T20:24:50 good to know 2011-12-08T20:25:01 I don't even have a clue as to how that would be implemented 2011-12-08T20:25:40 I had to read a lot of code 2011-12-08T20:25:44 the map generators, the engine, etc 2011-12-08T20:27:10 sysmmetry detection can also be used to reduce path finding _theoretically_ 2011-12-08T20:32:13 *** keith__ has joined #aichallenge 2011-12-08T20:32:23 I'm still trying to make my bot go a little bit more packed to raze hills and to avoid exploring dead ends 2011-12-08T20:33:23 I don't even know where to start 2011-12-08T20:33:33 I try to flock my ants when they are outnumbered by enemy. 2011-12-08T20:34:08 I see some of the top100 bots and they all go packed and don't get stuck 2011-12-08T20:34:18 I don't see how they do it 2011-12-08T20:34:28 recursively changing moves 2011-12-08T20:34:45 what? 2011-12-08T20:34:49 :O 2011-12-08T20:35:00 Anilms3: the snake like movements are sideeffects of path finding 2011-12-08T20:35:24 the head of the snake moves leaving behind an empty space..and so on 2011-12-08T20:36:07 then when you see an enemy you change course to put maximum attack 2011-12-08T20:36:57 but path finding usually needs a target doesn't it? 2011-12-08T20:37:24 yes. 2011-12-08T20:37:53 In my case 2011-12-08T20:37:57 when there is no target 2011-12-08T20:38:00 ants roam freely 2011-12-08T20:38:34 searching for food and ignoring enemies 2011-12-08T20:38:38 yes. But when you see a hill all move to one target 2011-12-08T20:38:48 And they can even flock without any additional code 2011-12-08T20:38:53 but how can I do that? 2011-12-08T20:39:06 All ants converge to the same location 2011-12-08T20:39:18 *** keith__ has quit IRC (Ping timeout: 265 seconds) 2011-12-08T20:39:43 so if I see a hill I have to move a large number of ants towards it? 2011-12-08T20:39:50 For exploration (different targets) the ants disperse which is again the desired behaviour 2011-12-08T20:40:05 yes 2011-12-08T20:40:21 but pathfinding from every ant to that same hill can be costly 2011-12-08T20:40:34 jeez there's a lot of spam in the forums 2011-12-08T20:40:41 I need a macro to report with fewer clicks 2011-12-08T20:40:43 As a beginner, infact I moved all my ants 2011-12-08T20:40:59 I tried that but my bot timed out 2011-12-08T20:41:15 have you tried bfs ? 2011-12-08T20:41:25 I did A* from every ant to the target 2011-12-08T20:41:30 thestinger uses that if I am not mistaken 2011-12-08T20:41:51 A*? 2011-12-08T20:42:27 It is more like diffusion without coordination. You generate a bfs table from the hill outwards and then, you ants move towards the hill by minizing distance 2011-12-08T20:43:22 in order to move a subset of my ants 2011-12-08T20:43:40 I see 2011-12-08T20:44:05 what language are you using ? 2011-12-08T20:44:12 besh: I add +3 instead of +1 when going through a tile with one of my ants though 2011-12-08T20:44:13 c++ 2011-12-08T20:44:20 you could sort them by distance so they wont be blocked or implement a "push" system 2011-12-08T20:44:44 Aha you do that to the bfs table too ? 2011-12-08T20:44:50 thestinger: ^ 2011-12-08T20:45:18 yeah, makes ants spread out or take alternate routes (if they aren't much longer) 2011-12-08T20:45:25 ikaros: by distance to the hill you mean? 2011-12-08T20:45:32 for example 2011-12-08T20:45:44 or to whatever target you are heading 2011-12-08T20:46:41 though all my bfs based exploration sucked but i guess thats just my fault 2011-12-08T20:47:47 either my ants jittered or the clumped together.. no good distribution :) 2011-12-08T20:48:23 my exploration actually tends to separate ants too much 2011-12-08T20:48:27 except on mazes 2011-12-08T20:48:29 ikaros: the ants do jitter but become straight when they see enemy 2011-12-08T20:48:34 on mazes they get stuck 2011-12-08T20:48:54 The first ant to reach the target stops at attack_radius + 2 2011-12-08T20:49:39 i wouldn't worry about how they move before reaching the target really 2011-12-08T20:49:55 besh :) 2011-12-08T20:50:42 how do you guys decide which tile should be explored? 2011-12-08T20:50:59 To be honest, I was worried to and tried to make vertical/horizontal lines when i started :) 2011-12-08T20:51:01 i use an times_not_seen attribute but its not so good 2011-12-08T20:51:09 *** QuirionPT has quit IRC (Quit: Leaving) 2011-12-08T20:51:32 I try to go to the tiles that haven't been visited in a while 2011-12-08T20:51:44 *** Cyndre has joined #aichallenge 2011-12-08T20:51:46 i have that array (visit_count) too but still don't use it 2011-12-08T20:51:50 increasing a counter for each tile when i dont see it 2011-12-08T20:52:21 something like that 2011-12-08T20:52:24 Anilm3, when i do that and set the period too short the run in circles 2011-12-08T20:52:34 ikaros: it is better to incrment a counter when you see the tile. 2011-12-08T20:52:44 hm 2011-12-08T20:52:45 besh: that's how I do it yes 2011-12-08T20:52:52 i had that before 2011-12-08T20:52:54 why is it? 2011-12-08T20:53:06 I don't increment viewrange 2011-12-08T20:53:13 just a smaller range 2011-12-08T20:53:23 arbitrarily picked (worked well) 2011-12-08T20:53:28 well when I tested the idea, I wanted to move my ant to the least visited tile. 2011-12-08T20:53:31 hm gotta try that 2011-12-08T20:53:56 ikaros: my ants walk very well on random walks and on some cells 2011-12-08T20:54:03 but on mazes they get stuck 2011-12-08T20:54:04 besh which is not visible? 2011-12-08T20:54:07 oh hehe 2011-12-08T20:54:39 I have tried taking into account not only the tiles I haven't visited but the number of ants near that tile 2011-12-08T20:54:44 but it gets worse somehow 2011-12-08T20:55:22 for mazes this hill climbing thing from the forums was great 2011-12-08T20:55:26 anilm3: number of enemy ants ? 2011-12-08T20:55:39 no, number of my own ants 2011-12-08T20:55:39 *** Fandekasp has joined #aichallenge 2011-12-08T20:55:43 my old version on the official servers still uses it 2011-12-08T20:55:59 but on rando walks it didnt distribute well enough 2011-12-08T20:56:13 in ikaros it looks great how it avoids dead ends 2011-12-08T20:56:21 -in 2011-12-08T20:56:26 yea 2011-12-08T20:56:43 today I tried some type of "learning" 2011-12-08T20:56:49 but the version is very old and still has the bug: if it discovered the whole map they go all back to base lol 2011-12-08T20:56:53 but sucked 2011-12-08T20:57:32 ikaros: i refill unseen tiles when the whole map is visited. 2011-12-08T20:57:44 ok i tried that too 2011-12-08T20:57:49 I want to replace that with the visit_count array later when I have time 2011-12-08T20:58:04 but often ants went in lines into one direction.. 2011-12-08T20:58:13 from the hive 2011-12-08T20:58:25 unfortunately they do 2011-12-08T20:58:26 and didnt distribute enough.. no idea what i do wrong there 2011-12-08T20:59:07 well i thought about adding some randomness to the closest tiles, instead of taking the single closest tile as target. 2011-12-08T21:00:00 i used a "ring" of targets as queue for my bfs 2011-12-08T21:00:05 but well 2011-12-08T21:00:07 its 3am 2011-12-08T21:00:11 gotta sleep :) 2011-12-08T21:00:16 good night 2011-12-08T21:00:21 gn 2011-12-08T21:00:23 *** ikaros has quit IRC (Quit: Ex-Chat) 2011-12-08T21:00:59 me too 2011-12-08T21:01:05 gn 2011-12-08T21:01:06 bye 2011-12-08T21:01:12 *** Anilm3 has quit IRC (Quit: Lost terminal) 2011-12-08T21:01:17 *** besh has quit IRC (Quit: Page closed) 2011-12-08T21:06:46 *** TheLinker has joined #aichallenge 2011-12-08T21:11:48 *** Mystret has quit IRC (Ping timeout: 252 seconds) 2011-12-08T21:17:02 *** Paradoxial has quit IRC (Quit: :) 2011-12-08T21:21:16 *** replore_ has joined #aichallenge 2011-12-08T21:44:59 *** besh has joined #aichallenge 2011-12-08T21:58:31 *** Paradoxial has joined #aichallenge 2011-12-08T22:06:22 *** Paradoxial has quit IRC (Quit: :) 2011-12-08T22:13:07 *** flowenol has quit IRC (Ping timeout: 240 seconds) 2011-12-08T22:15:19 *** dmj111 has joined #aichallenge 2011-12-08T22:19:05 *** jeffymj has joined #aichallenge 2011-12-08T22:20:44 *** yoden has quit IRC (Quit: Leaving.) 2011-12-08T22:22:13 *** bugnuts has joined #aichallenge 2011-12-08T22:25:01 quit 2011-12-08T22:25:09 *** jeffymj has left #aichallenge ("Ex-Chat") 2011-12-08T22:27:00 *** Antimony has quit IRC (Ping timeout: 244 seconds) 2011-12-08T22:27:25 *** AntDroid_ has joined #aichallenge 2011-12-08T22:32:16 you know you could use a reboot when the ants visualizer has the Deus Ex: Human Revolution Icon in your taskbar 2011-12-08T22:33:24 R R R _ 2011-12-08T22:33:30 - - - - 2011-12-08T22:33:42 - - - - 2011-12-08T22:33:59 - O - O 2011-12-08T22:34:16 R = your ant O = opponent ant 2011-12-08T22:35:00 The correct attack would be to move the top left two ants south, but keep the right one static 2011-12-08T22:35:16 Assuming static opponent ants. How to achieve this ? 2011-12-08T22:37:19 pay them? ants love money :) 2011-12-08T22:38:34 I'm just beginning to develop my own battle system, so I'm afraid I can't afford way more than humor here 2011-12-08T22:38:36 they love sugar :) My combat moves all three ants down and I think it can help to improve this 2011-12-08T22:39:49 I wonder if the influence methods discussed would help here 2011-12-08T22:39:57 well, what about less sugar where your ant is sure to get killed without gain? 2011-12-08T22:41:37 The third ant will find no sugar by moving down, but two angry enemy attacks 2011-12-08T22:42:04 You are right, i should start thinking interms of sugar :) 2011-12-08T22:42:13 *** sigh has quit IRC (Remote host closed the connection) 2011-12-08T22:42:55 my latest attempt at combat involves lying to my ants about how many enemies there are :P 2011-12-08T22:43:32 do you increase the sugar level so they would be motivated to attack ? 2011-12-08T22:44:22 *** LouisMartin_ has joined #aichallenge 2011-12-08T22:44:29 *** LouisMartin has quit IRC (Ping timeout: 265 seconds) 2011-12-08T22:44:33 1, 2, 1, 2 testing 2011-12-08T22:44:41 thestinger: seriously I have trouble solving the above example 2011-12-08T22:44:54 *** cyphase has quit IRC (Ping timeout: 248 seconds) 2011-12-08T22:45:19 my old method was just to attack with everything 2011-12-08T22:45:22 then try cancelling orders 2011-12-08T22:45:31 which would result in the left two going down and the right one not going down 2011-12-08T22:45:36 besh: sorry if I repeated this many times, but my computer is bugging tight and I don't know if I've resent this many times over.. strange bugs.. anyways -> 2011-12-08T22:45:38 the implementation of this depends on how your system works, but a quick check such as "if I don't sacrifice this ant, is the outcome (gain) different?" before moving wouldn't be costly I'd think 2011-12-08T22:46:39 going to bed now, cya 2011-12-08T22:47:09 what if there was another ant north of the 3rd ant. I mean redoing a move woud triger another undo 2011-12-08T22:47:19 undoing* 2011-12-08T22:47:29 ok cya 2011-12-08T22:47:36 *** amstan has joined #aichallenge 2011-12-08T22:47:36 *** ChanServ sets mode: +o amstan 2011-12-08T22:49:13 *** antimatroid has quit IRC (Ping timeout: 244 seconds) 2011-12-08T22:50:05 *** LouisMartin_ has quit IRC (Quit: Page closed) 2011-12-08T22:55:28 *** Antimony has joined #aichallenge 2011-12-08T22:58:55 result = [] 2011-12-08T22:59:33 *** Fandekasp has quit IRC (Ping timeout: 244 seconds) 2011-12-08T23:02:45 *** sigh has joined #aichallenge 2011-12-08T23:03:23 *** bmh has joined #aichallenge 2011-12-08T23:03:48 *** dvladim has joined #aichallenge 2011-12-08T23:05:47 hmm... make my BFS code more generic, or start on fighting 2011-12-08T23:07:56 *** delt0r_ has quit IRC (Ping timeout: 244 seconds) 2011-12-08T23:11:33 *** besh has quit IRC (Quit: Page closed) 2011-12-08T23:12:26 *** cyphase has joined #aichallenge 2011-12-08T23:12:41 Ug, I keep finding bugs in my symmetry code 2011-12-08T23:12:54 I've found at least 3 bugs in release versions 2011-12-08T23:13:10 Antimony: you're doing symmetry? neat! 2011-12-08T23:13:45 what 's your technique? 2011-12-08T23:14:50 what do you mean? 2011-12-08T23:15:58 How are you solving it? How do you deal with rotation/mirroring? 2011-12-08T23:16:54 well for one thing, I assume rotation can only happen on square maps 2011-12-08T23:17:28 that's a nice simplifying assumption 2011-12-08T23:18:12 anyway, I hope that it will give me a edge, but I haven't really noticed any benefits yet 2011-12-08T23:18:23 it wasn't as effective as I'd hoped 2011-12-08T23:18:56 currently my ants blindly rush other ants 2011-12-08T23:19:01 it's... suboptimal 2011-12-08T23:20:18 *** delt0r_ has joined #aichallenge 2011-12-08T23:20:37 why would you rush other ants? 2011-12-08T23:21:15 Antimony: because I have no fight code 2011-12-08T23:21:50 Anyway, the basic idea is to find all possible syemmtries and then each time you see a new square, remove the ones that don't fit. But unfortunately the method is a little slow 2011-12-08T23:22:48 Some times, my bot doesn't even get done processing the starting data before it finds the first hill 2011-12-08T23:22:55 slow, really? :) 2011-12-08T23:22:58 wow, the contest site is cruising now 2011-12-08T23:27:03 Random Number Generator says: Genericize your search code. 2011-12-08T23:27:33 *** dvladim has quit IRC (Ping timeout: 248 seconds) 2011-12-08T23:27:38 *** br3akd0wn has joined #aichallenge 2011-12-08T23:28:01 Antimony: hash 2011-12-08T23:28:21 ? 2011-12-08T23:28:30 for symmetry detection 2011-12-08T23:28:35 *** br3akd0wn has quit IRC (Client Quit) 2011-12-08T23:28:54 nah, I think my way is better even if it is slow 2011-12-08T23:29:15 and I do it at the end of turn after moves are calculated so at least it isn't hurting me 2011-12-08T23:29:36 also... once you find your first hill it's really easy 2011-12-08T23:29:53 the challenge is to do this before you find the hill, so you know where they are before the enemy has seen you 2011-12-08T23:30:07 I keep "timing out" on fluxid 2011-12-08T23:30:20 time taken: 185.627ms 2011-12-08T23:30:22 BenJackson: turn off those torrents, lol 2011-12-08T23:30:45 my ping to fluxid.pl is about 200ms 2011-12-08T23:31:19 some packet loss in mid europe 2011-12-08T23:31:27 <_flag> BenJackson: fluxid times me out all the time too 2011-12-08T23:31:43 <_flag> That server is kind of known for its problems, I think there may just be a ton of people using it 2011-12-08T23:32:36 this bot has most of the logic removed, too 2011-12-08T23:32:42 so I was worried if it *really* timed uot! 2011-12-08T23:33:06 my server isn't very beefy, but you could run your real bot there? 2011-12-08T23:33:19 in 20 games the worst turn was 310ms 2011-12-08T23:33:48 bmh: you want me to run my current contest bot on your server? 2011-12-08T23:34:17 BenJackson: go for it. If fluxid is overrun, I have no qualms with 'production' bots running 2011-12-08T23:34:26 oh, no 2011-12-08T23:34:29 my bot can generally only find hills before seeing them on a 2 player map 2011-12-08T23:34:35 I just did 20 runs with some modified logic to see what it did 2011-12-08T23:34:43 because you usally have to explore almost half the map before you can be sure 2011-12-08T23:34:49 I just wanted to see what it did with most of the "rules" removed 2011-12-08T23:34:53 to see which rules are worth putting back 2011-12-08T23:35:02 BenJackson: there is one game with bj_v4 v. skynet. Skynet should have won, but I turned off my laptop and went to bed :) 2011-12-08T23:35:14 Antimony: you guys are going to kick yourselves at the end ;-) 2011-12-08T23:35:35 *** avdg has quit IRC (Quit: Leaving.) 2011-12-08T23:35:45 I doubt your symetry method is better than mine 2011-12-08T23:36:00 :) 2011-12-08T23:36:02 well apart from optimization 2011-12-08T23:36:12 mine's good, it's just too slow 2011-12-08T23:36:14 :) 2011-12-08T23:37:07 *** amstan has quit IRC (Ping timeout: 240 seconds) 2011-12-08T23:37:48 *** avdg has joined #aichallenge 2011-12-08T23:37:49 *** amstan_ has quit IRC (Read error: Operation timed out) 2011-12-08T23:37:54 *** TheLinker has quit IRC (Quit: Bye) 2011-12-08T23:42:18 *** amstan has joined #aichallenge 2011-12-08T23:42:18 *** ChanServ sets mode: +o amstan 2011-12-08T23:46:05 *** Scryer has joined #aichallenge