2011-06-18T00:05:17 *** _flag <_flag!~flag@69-165-173-172.dsl.teksavvy.com> has quit IRC (Quit: Lost terminal) 2011-06-18T00:09:06 antimatroid: if we switch battle resolution method, any though on radius? 2011-06-18T00:09:22 not really, i like 5 2011-06-18T00:09:26 but not sure if that has blocking problems 2011-06-18T00:12:10 antimatroid: you free mon 11am to noon? 2011-06-18T00:12:13 antimatroid: your time zon 2011-06-18T00:12:15 zone* 2011-06-18T00:12:22 and by yours i mean sydney, correct? 2011-06-18T00:12:25 i can be why? 2011-06-18T00:12:29 yeah i'm with sydney 2011-06-18T00:12:40 ok, decent 2011-06-18T00:12:47 an hour earlier would be better :P 2011-06-18T00:12:53 actually nah 2011-06-18T00:12:57 i'll just jump on at uni 2011-06-18T00:13:21 http://bit.ly/loNg1G 2011-06-18T00:13:29 http://bit.ly/kkdP3l 2011-06-18T00:13:31 k.. pick one 2011-06-18T00:14:14 so.. the second one then? 2011-06-18T00:14:21 i can do either 2011-06-18T00:14:30 :p 2011-06-18T00:14:31 sorry 2011-06-18T00:14:36 k... 2011-06-18T00:14:47 go the second 2011-06-18T00:14:52 @topic add Launch Preparation Meeting http://bit.ly/kkdP3l 2011-06-18T00:14:52 amstan: Error: I can't change the topic, I'm not opped and #aichallenge is +t. 2011-06-18T00:14:59 *** amstan sets mode: +o contestbot 2011-06-18T00:15:00 @topic add Launch Preparation Meeting http://bit.ly/kkdP3l 2011-06-18T00:15:00 *** contestbot changes topic to "Official Google AI Challenge: http://ai-contest.com/ || Channel Logs: http://contestbot.hypertriangle.com/ || Code Repo: http://github.com/aichallenge/aichallenge || Beta testers needed: http://aichallengebeta.hypertriangle.com/ (amstan) || Launch Preparation Meeting http://bit.ly/kkdP3l (amstan)" 2011-06-18T00:15:09 y u no opped 2011-06-18T00:16:12 oh man.. bitcoin 2011-06-18T00:16:43 bitcoin sounds stupid to me :P 2011-06-18T00:17:06 antimatroid: why? 2011-06-18T00:17:27 i haven't really looked at it, but why? 2011-06-18T00:17:30 what's it for? 2011-06-18T00:17:51 you can send money to ppl 2011-06-18T00:18:03 without anyone telling you otherwise 2011-06-18T00:18:10 I've both mined bitcoin and bought actual physical objects with it and *I* think it's just a huge bubble (unintentional pyramid scheme if you want to be nasty about it) 2011-06-18T00:19:01 if it actually get's any serious traction I think goverments will step in and make sure it doesn't go anywhere 2011-06-18T00:19:13 it may somewhat depend, if it took off it might do alright, if it doesn't people will lose money 2011-06-18T00:19:23 too risky for me 2011-06-18T00:19:25 it does trade at 15btc/$1 2011-06-18T00:19:31 i don't have any money anyway :P 2011-06-18T00:19:38 sorry 1btc/$15 2011-06-18T00:19:44 i owe the government like 35k 2011-06-18T00:19:53 amstan: and was 1btc/$30 just a few days ago 2011-06-18T00:20:11 janzert: yes, everyone got scared because of that heist 2011-06-18T00:20:12 *** Zaphus has joined #aichallenge 2011-06-18T00:20:13 it's value is way to wild right now to be really useful 2011-06-18T00:20:29 and was 1 to 1 in january 2011-06-18T00:20:36 someone is propping up the price with the dark pool on mtgox 2011-06-18T00:20:56 look at the financial crisis, a lot of people made a LOT of money when the market was that volatile, but a lot more people lost money 2011-06-18T00:21:01 *** computerwiz_222 has quit IRC (Ping timeout: 240 seconds) 2011-06-18T00:21:35 antimatroid: yes, but that wasn't people's currency fluctuating by that much either 2011-06-18T00:21:42 antimatroid: https://mtgox.com/trade/megaChart 2011-06-18T00:21:56 stability in a currency is a good thing ;) 2011-06-18T00:22:17 janzert: my point was volatility in general :P 2011-06-18T00:22:33 there was a lot of uncertainty and prices for financial stuff were all over the show 2011-06-18T00:22:45 back again. what was the attack range to use for testing the Power rule ? 2011-06-18T00:22:46 yeah, there's profit to be made in volatility but it's not where you want to store your wealth either 2011-06-18T00:22:59 kinda my point :P 2011-06-18T00:24:12 is much known about the legitimacy of the heist thing yet? 2011-06-18T00:24:21 i'm surprised someone had 500k there 2011-06-18T00:25:18 antimatroid: he was an early adopter, when he got his money, it was worth little 2011-06-18T00:26:34 amstan: yeah okay, i'd be fairly weary of it personally :P 2011-06-18T00:27:01 but i'm fairly risk averse with that kind of thing 2011-06-18T00:27:33 antimatroid : what is the attack radius to use for Power ? and what size corridoor is thought to be unblockable ? 2011-06-18T00:27:48 Zaphus: 4 or 5? we used to use 4 with it 2011-06-18T00:27:55 i think any corridor > 3 is unblockable 2011-06-18T00:27:58 that's the hope 2011-06-18T00:28:11 antimatroid: it looks like >= 3 might be unblockable 2011-06-18T00:28:19 at least I haven't found a block for 3 yet 2011-06-18T00:28:24 was just about to say that :) 2011-06-18T00:28:35 Zaphus: http://i.imgur.com/rZKCu.png look at those examples 2011-06-18T00:28:40 there are lots for corridors 2011-06-18T00:29:07 top outcome is power/occupied, middle is iterative closest and bottom is support (i think) 2011-06-18T00:29:16 and radius is attack2 = 4 2011-06-18T00:29:42 the biggest thing i miss from windows is ms paint :( 2011-06-18T00:30:54 the best I can do with radius2=5 is 3 ants for 1 2011-06-18T00:31:12 so even 2 wide isn't blocked? 2011-06-18T00:31:28 hmm, haven't tried that yet 2011-06-18T00:31:34 i think it is 2011-06-18T00:31:39 with a straight line across it 2011-06-18T00:32:06 yeah, 2 wide is blocked 2011-06-18T00:32:13 5 might make defense structures slightly easier? 2011-06-18T00:32:30 if so then my preference goes to 4 2011-06-18T00:32:41 3 ants for 1 means if you keep a pile of ants behind the blockade you can keep refreshing it and eventually win 2011-06-18T00:32:59 Zaphus: the point is it can be broken down 2011-06-18T00:33:08 everyone else can do the same thing at their symmetrically similar place 2011-06-18T00:33:12 then battle it 2011-06-18T00:33:15 Zaphus: the idea is that you are blocked in a smaller area of the map and the attacker can out number you 2011-06-18T00:33:32 so long as the attacker can kill any of the defender's ants at all 2011-06-18T00:33:40 if two bots can completely block themselves in somewhere, the game is going to go to max turns 2011-06-18T00:33:41 i.e. it's not a perfect blockade 2011-06-18T00:34:10 yep, but there's still the 1 & 2 issue, so it will happen (hell, I'm going to make sure my bot fills one in, gives me a chance at 2nd place) 2011-06-18T00:34:18 we can make maps without that 2011-06-18T00:35:03 yes, we already knew we needed to make maps that didn't have areas that were only accessible by less than 3 width corridors 2011-06-18T00:35:09 or just accept it as part of the game 2011-06-18T00:35:35 it makes the game boring and puts stricter restrictions on us for feasible parameters come contest time 2011-06-18T00:35:45 it is desirable to not have it 2011-06-18T00:36:29 I guess so... but if the contest goes live and you see bot strategies that you deem "boring" will you create rules to prevent those bots from doing it ? or once it's live it stays that way ? 2011-06-18T00:36:56 we don't want to change the game once it goes live 2011-06-18T00:37:05 if the game is deemed broken for whatever reason, we reserve the right to 2011-06-18T00:37:12 maps generators will vary 2011-06-18T00:37:29 the only way I can think the rules will change after launch is if someone discovers a 'perfect' strategy 2011-06-18T00:37:29 and parameters on maps sizes food spawn etc. will most likely change towards the start 2011-06-18T00:37:33 i.e. breaks the game 2011-06-18T00:37:39 hopefully actual game parameters like radius can not change 2011-06-18T00:37:46 and that isnt going to happen (probably) 2011-06-18T00:38:03 yes, hopefully 2011-06-18T00:38:04 if someone gets a "perfect" strategy late in the contest, that would be awesome 2011-06-18T00:38:11 but not near the start 2011-06-18T00:38:23 antimatroid: only if no one else has time to copy it :P 2011-06-18T00:38:44 janzert: if i had a perfect strategy i don't think i'd be giving people many exampel games to watch :P 2011-06-18T00:38:46 if 2 people create perfect strategies... then they tie all their games ? that would be very impressive given the scoring system 2011-06-18T00:38:49 or hopefully even figure out what it actually is until the finals start 2011-06-18T00:39:19 there is a trade off to testing on tcp etc. 2011-06-18T00:39:26 Zaphus: I'd say two perfect strategy bots merely each have a 50% chance of winning 2011-06-18T00:39:27 you get to test your bot, but people see your strategy 2011-06-18T00:39:42 yeah, we don't claim to rank bots perfectly 2011-06-18T00:40:05 In PlanetWars, for a while I purposefully 'broke' my bot, it would only play properly for a while and then it would sabotage itself once it knew it would win - so people didnt see how... made little difference since others were stronger 2011-06-18T00:40:12 well minus whatever their draw rate ends up, but I don't think the draws will go to 100% no 2011-06-18T00:41:02 Zaphus: challenge, block a 3 width corridor with power and attack2 = 4 :) 2011-06-18T00:41:12 amstan: On father's day? I should have mentioned earlier that that is a bad time 2011-06-18T00:41:18 McLeopold: I read the presentation on V8, but it gets vague to the end. But there are a few nice optimizations that may apply to other browsers, too. 2011-06-18T00:41:31 antimatroid: looking at it now 2011-06-18T00:41:36 McLeopold: then we have to do moday 2011-06-18T00:41:46 i can do the following day 2011-06-18T00:41:48 and fair call 2011-06-18T00:42:07 also, you have fathers day wrong, it's in september :P 2011-06-18T00:42:21 bhasker: your first fathers day! :P 2011-06-18T00:42:34 btw, this is fairly clear post on the method I was thinking of earlier I believe all the JS jits are using for small objects http://morepypy.blogspot.com/2010/11/efficiently-implementing-python-objects.html 2011-06-18T00:42:48 although it is specifically on a python jit of course :) 2011-06-18T00:42:59 I think 3-width with thin walls at the end can be blocked (i.e. the end points of the corridoor are only 1 water wide) 2011-06-18T00:43:30 Zaphus: yes, but they can equally be less blockable depending on where the outside is connected to :P 2011-06-18T00:43:44 also, pastebin examples are good :) 2011-06-18T00:44:47 @topic remove 5 2011-06-18T00:44:47 *** contestbot changes topic to "Official Google AI Challenge: http://ai-contest.com/ || Channel Logs: http://contestbot.hypertriangle.com/ || Code Repo: http://github.com/aichallenge/aichallenge || Beta testers needed: http://aichallengebeta.hypertriangle.com/ (amstan)" 2011-06-18T00:45:21 contestbot: topic add Launch Preparation Meeting http://bit.ly/kYYbD4 2011-06-18T00:45:21 *** contestbot changes topic to "Official Google AI Challenge: http://ai-contest.com/ || Channel Logs: http://contestbot.hypertriangle.com/ || Code Repo: http://github.com/aichallenge/aichallenge || Beta testers needed: http://aichallengebeta.hypertriangle.com/ (amstan) || Launch Preparation Meeting http://bit.ly/kYYbD4 (amstan)" 2011-06-18T00:46:02 Zaphus: I don't see how? 2011-06-18T00:46:04 amstan: monday works for me 2011-06-18T00:46:06 gtg 2011-06-18T00:46:57 janzert: http://pastebin.com/Fzq0knwe if I have done it correctly 2011-06-18T00:48:04 since there are only 3 accessible squares, the most you can attack with at once is 3, and they won't all hit the same ants 2011-06-18T00:48:42 i think i can live with that 2011-06-18T00:49:40 actually, this is a better example: http://pastebin.com/78nX4UHA you can see it just needs that mouth to be the right shape and it can block. 2011-06-18T00:49:52 ok, or we can go to radius2= 5 since it seems to prevent it 2011-06-18T00:50:11 Zaphus: block 3 with attack2 = 5 :) 2011-06-18T00:51:30 http://pastebin.com/7ZmMTc4b is best I can do 2011-06-18T00:51:46 the front middle b dies 2011-06-18T00:52:27 and most of the b's are irrelevant of course 2011-06-18T00:54:13 http://pastebin.com/Y2qy7Hn8 - the same pattern that works with 4 seems to work with 5 - am I right ? 2011-06-18T00:55:07 doesn't seem like it 2011-06-18T00:55:23 * janzert is using the battle_sim.py script in the ants/util directory btw 2011-06-18T00:56:55 I can't see how you can get more than three ants to attack at once - so don't see what I've done wrong unless I've got the shape of 5 wrong 2011-06-18T00:57:56 battle_sim doesn't have a way to do water but http://pastebin.com/mPh7JFhW is equivalent right? 2011-06-18T00:58:09 the occupid method seems to block more 2011-06-18T00:58:14 by the way, I'm assuming the a's are the blockers if that wasnt clear 2011-06-18T00:58:26 with that all the a's die and the second from top and second from bottom b die 2011-06-18T00:58:45 janzert: hmm, checking... 2011-06-18T00:58:48 McLeopold: ? 2011-06-18T00:58:49 yeah, I just realized we were doing it in reverse of each other 2011-06-18T00:59:19 how do those die ? they only have 2 attackers each and there are three or more on each of them 2011-06-18T00:59:37 each of the attackers I mean 2011-06-18T00:59:54 all three a's attack each of those b's 2011-06-18T01:00:30 radius2=5 is a 3x3 square with the corners cut out I believe 2011-06-18T01:00:50 ah, I might have the shape wrong 2011-06-18T01:01:35 4x4 square rather 2011-06-18T01:01:53 I think need to chart it out 2011-06-18T01:02:02 anyway it's a square with the corners cut out :P 2011-06-18T01:02:08 it needs to be an odd number if the ant is in the middle 2011-06-18T01:02:27 it's a 5x5 block with the corners cut out 2011-06-18T01:02:29 yeah, 5x5 but you better check 2011-06-18T01:02:55 I was getting there eventually 2011-06-18T01:03:13 http://pastebin.com/YfhkQvFK 2011-06-18T01:03:26 ok, I had it way wrong :-) 2011-06-18T01:03:28 aichallenge: McLeopold epsilon * rf7a67e0 / (9 files in 2 dirs): added stuff to test blocking - http://bit.ly/jPYPqk 2011-06-18T01:03:33 and actually all 3 a's don't attack each of those b's 2011-06-18T01:03:36 janzert: i accepted your answer everytime without thinking it through either :P 2011-06-18T01:03:42 only 2 do 2011-06-18T01:03:57 i was wrong, "power" method blocks much less, but still blocks width 3 2011-06-18T01:04:18 McLeopold: try with attack2=5 2011-06-18T01:05:22 that works, it takes a lot to punch through 2011-06-18T01:05:53 radius=9 is worse with power 2011-06-18T01:06:19 radius 3 is nice too 2011-06-18T01:07:20 I'm voting for occupid, radius 3 or 5 right now 2011-06-18T01:07:27 okay, bedtime 2011-06-18T01:08:22 i'm going with power/occupied radius2=5 2011-06-18T01:08:23 night 2011-06-18T01:08:26 is that something we could trial ? 2011-06-18T01:08:33 Zaphus: yes 2011-06-18T01:08:43 Zaphus: yes, but there is no point, bots aren't smart enough yet 2011-06-18T01:08:53 but we think we are ? 2011-06-18T01:08:56 :-) 2011-06-18T01:09:04 McLeopold: i think it'd be nice to see some games with it anyway 2011-06-18T01:09:10 and zaphus has a block test bot to some extend 2011-06-18T01:09:12 extent* 2011-06-18T01:09:26 okay, we can switch beta 2011-06-18T01:09:33 janzert: agreed? 2011-06-18T01:09:37 McLeopold: you can't not test it if you are thinking of going that way - just make sure you tell people :-) 2011-06-18T01:09:51 bah, let them be confused 2011-06-18T01:10:19 beta is dog slow... 2011-06-18T01:10:46 yeah let's go for it 2011-06-18T01:10:47 I'll rephrase it... if you want to get something out of doing a Beta, you need to tell people about the change :-) 2011-06-18T01:10:54 attackradius2=5? 2011-06-18T01:11:12 hmmm i just pulled from git 2011-06-18T01:11:14 done 2011-06-18T01:11:28 yes, radius 5 2011-06-18T01:11:29 it looks like playgame.py still has attack2=5? 2011-06-18T01:11:35 although radius 3 looks nice too 2011-06-18T01:11:36 4* sorry 2011-06-18T01:11:47 shouldn't that reflect what the beta server is using? 2011-06-18T01:12:02 *** McLeopold has quit IRC (Read error: Connection reset by peer) 2011-06-18T01:12:06 otherwise people's local testing will be different? 2011-06-18T01:12:37 antimatroid: it's using the wrong battle resolution by default too :) 2011-06-18T01:12:41 which is even worse 2011-06-18T01:12:51 janzert: it is using damage? 2011-06-18T01:12:59 oh no it's not 2011-06-18T01:13:02 hmm yeah wtf 2011-06-18T01:13:06 right, nothing with it was changed yet 2011-06-18T01:13:07 that's not good at all 2011-06-18T01:13:28 just the settings on the server I believe 2011-06-18T01:13:44 oh nevermind, i can't read :) 2011-06-18T01:13:57 so did McLeopold update the server settings? 2011-06-18T01:14:01 how can I flip my local testing to use the other method ? 2011-06-18T01:14:24 --attack power --attackradius2 5 2011-06-18T01:14:29 Zaphus: add "--attack power" to your play game 2011-06-18T01:14:36 add those options to your command line for playgame 2011-06-18T01:14:47 using Uncles player, so I'll just hack the python default :-) 2011-06-18T01:15:04 i'm going to the supermarket, back in a bit 2011-06-18T01:15:22 I'll go ahead and commit the new defaults in just a sec here 2011-06-18T01:18:29 cool cheers 2011-06-18T01:20:09 aichallenge: janzert epsilon * r09f47f9 / (3 files in 2 dirs): Switch to power (occupied) battle resolution as default - http://bit.ly/khlJO6 2011-06-18T01:22:55 aichallenge: janzert epsilon * r55dfe46 / (3 files in 2 dirs): Move blockade testing script to util directory - http://bit.ly/kExNHw 2011-06-18T01:23:26 will be interesting to see how that shakes up the leaders... if at all 2011-06-18T01:23:46 I doubt it will have much effect 2011-06-18T01:24:06 the current leaders seem to be leading by virtue of better growth patterns 2011-06-18T01:24:14 at least that's my impression 2011-06-18T01:25:49 unless I suppose unexpected battle resolution causes some crashes? 2011-06-18T01:26:33 e.g. http://aichallengebeta.hypertriangle.com/visualizer.php?game=27421&user=78 2011-06-18T01:26:56 :( 2011-06-18T01:29:34 http://aichallengebeta.hypertriangle.com/visualizer.php?game=27422 2011-06-18T01:30:09 can so many bots already be that dependent on battle resolution? 2011-06-18T01:30:13 *** Accoun has quit IRC (Read error: Connection reset by peer) 2011-06-18T01:31:28 *** Accoun has joined #aichallenge 2011-06-18T01:52:10 I restarted the worker script on the beta server and it seems to be less time outs still more than I would expect from before though 2011-06-18T01:56:19 bots crashing from battle resolution already? 2011-06-18T01:56:24 bah :( 2011-06-18T01:58:59 janzert: any idea what would cause that? :S 2011-06-18T01:59:08 Zaphus: is your bot battle option dependent? 2011-06-18T01:59:27 I think it was probably unrelated 2011-06-18T01:59:45 you'll notice hunterbot was one of the ones to timeout in the second game there 2011-06-18T02:00:03 it really shouldn't matter to it 2011-06-18T02:00:11 fair enough 2011-06-18T02:01:34 *** sigh has quit IRC (Quit: This computer has gone to sleep) 2011-06-18T02:03:06 gah, something is definitely wrong though http://aichallengebeta.hypertriangle.com/visualizer.php?game=27426 2011-06-18T02:04:12 and 27427 27428 27430 27431 2011-06-18T02:05:29 going to change the attack method back for a bit to see if that is really the problem 2011-06-18T02:05:54 yep 2011-06-18T02:16:01 hmm, nope 27434, 27435 2011-06-18T02:22:50 still a problem? 2011-06-18T02:23:05 yep, I went ahead and stopped the main server worker 2011-06-18T02:23:17 bringing up an ec2 worker now to see how it does 2011-06-18T02:23:19 hmmmm 2011-06-18T02:23:25 is there anything i can do? 2011-06-18T02:23:32 i'm about to head out for a couple of hours otherwise... 2011-06-18T02:23:47 I don't think so, I'm not sure what else changed on the server recently 2011-06-18T02:24:12 I suppose I could try changing attackradius2 back to 9 as well 2011-06-18T02:24:29 not sure how using 5 could kill so many bots though 2011-06-18T02:24:50 yeah, seems a bit weird 2011-06-18T02:24:51 but I'll hold off to see how the ec2 worker does 2011-06-18T02:25:05 considering almost no bots consider battles really at all, i'd be surprised if they would crash from that changing 2011-06-18T02:25:26 if it is fine I'll change back the power resolution and leave the ec2 instance and the main worker down 2011-06-18T02:25:49 ec2 worker up that is 2011-06-18T02:26:11 okay cool, well i'm off to watch some hockey 2011-06-18T02:26:26 a couple of australian players are playing in a local team (which happens to be my cousins team) atm 2011-06-18T02:26:42 sweet, ice hockey? 2011-06-18T02:26:50 nah field hockey :P 2011-06-18T02:26:55 the only real hockey btw ;) 2011-06-18T02:27:00 ahh 2011-06-18T02:27:09 have fun 2011-06-18T02:27:16 ps wtf vancouver! 2011-06-18T02:27:25 hehe, go bruins 2011-06-18T02:27:49 only cause I didn't want to see the canadians bragging about getting the cup back :P 2011-06-18T02:28:22 so instead they tore their city appart 2011-06-18T02:28:31 heh, yeah no kidding 2011-06-18T02:29:21 there was one really good comment on reddit about that 2011-06-18T02:29:45 it would be interesting to see the response of one of those people if it turned around a corner and they started smashing their vehicle/property 2011-06-18T02:30:00 of course i doubt any of them have property nearby, but an interesting idea anyway 2011-06-18T02:30:30 :/ 2011-06-18T02:35:27 (was AFK) 2011-06-18T02:36:23 antimatroid: No, my bot is not battle dependent - it takes the input from a frame and gives it's moves, doesnt care what the server decides really happened (i.e. it could be given a blank map next turn and it wouldnt blink) 2011-06-18T02:38:52 antimatroid: Actually, a negative number for attackradius2 or viewradius2 would crash mine, and most others :-) 2011-06-18T02:42:27 janzert: is the server using power or damage now ? 2011-06-18T02:42:30 *** Palmik has joined #aichallenge 2011-06-18T02:43:01 it's not running at the moment ;) 2011-06-18T02:43:13 *** chris__0076 has joined #aichallenge 2011-06-18T02:43:16 the last few games it played were back to damage 2011-06-18T02:44:51 any idea why they all started timing out ? can't be related surely 2011-06-18T02:46:33 *** Chris_0076 has quit IRC (Ping timeout: 276 seconds) 2011-06-18T02:57:44 no I'm not sure at all what happened 2011-06-18T02:59:05 ec2 spot price was in a spike so the instance is just finally coming up now 2011-06-18T02:59:33 hopefully the bots won't be timing out there and I'll switch the battle resolution again 2011-06-18T03:00:23 I do see mysql seems to be eating a lot of cpu time on the server so that may be what is causing bots to timeout there 2011-06-18T03:04:28 *** jugde has joined #aichallenge 2011-06-18T03:05:11 and now mysql doesn't seem to be using any so I might have just looked at top at the wrong time 2011-06-18T03:05:19 load average is quite low as well 2011-06-18T03:28:44 looks like ec2 is running games fine, switching back to power battle method 2011-06-18T03:32:22 and looks like they're running fine too 2011-06-18T03:33:25 *** nux67 has joined #aichallenge 2011-06-18T03:33:41 will be interesting to see what happens. I think the attacking bots will suffer more than the others. my blocktest might still be OK - it's not smart but neither are most bots 2011-06-18T03:33:56 is there something on the front page about the change ? or the forums ? 2011-06-18T03:36:18 I think at least with current play styles it is going to be a little difficult to find instances where damage resolution and power resolution differ 2011-06-18T03:36:50 I don't think there is any announcement yet, unless antimatroid posted it somewhere 2011-06-18T03:37:02 *** Zaphus has quit IRC (Quit: Page closed) 2011-06-18T03:45:54 *** berak has joined #aichallenge 2011-06-18T03:49:50 *** amstan has quit IRC (Ping timeout: 260 seconds) 2011-06-18T03:51:05 *** mcstar has joined #aichallenge 2011-06-18T03:51:45 what changing is coming? 2011-06-18T03:54:20 the battle resolution method has changed 2011-06-18T03:54:51 to the one described as the "power option" here https://github.com/aichallenge/aichallenge/wiki/Ants-Battle-Resolution-Options 2011-06-18T04:01:53 ok, notice on front page of beta server of the change now 2011-06-18T04:05:22 contestbot: later tell mcleopold I shut down the worker script on the main server because almost all bots were timing out. I also added a notice of the battle resolution change to server_message.html 2011-06-18T04:05:22 janzert: Ready to serve. 2011-06-18T04:08:30 for the logs, the last battle resolution change to the power method was a few games before 27450 2011-06-18T04:09:08 *** chris__0076 has quit IRC (Read error: Operation timed out) 2011-06-18T04:09:21 what 2011-06-18T04:09:25 is the difference 2011-06-18T04:09:51 in many situations it works out the same 2011-06-18T04:10:23 but this method prevents complete blocking 2011-06-18T04:10:24 *** stocha has joined #aichallenge 2011-06-18T04:10:54 what do you mean by complete blocking 2011-06-18T04:11:42 with the damage method it turns out that any width corridor could be completely blocked by a static configuration of ants (i.e. it would kill all the ants coming down the corridor without any of its own dieing) 2011-06-18T04:12:27 the page I linked above probably does a better job of explaining how they each work than I could 2011-06-18T04:12:45 also linked from the front page of the beta server now 2011-06-18T04:12:58 you still have the option of radius = 1 though. 2011-06-18T04:13:20 stocha: ? 2011-06-18T04:13:31 radius 1 is easy to blockade with damage 2011-06-18T04:13:31 what radius is on with power batle resolution ? 2011-06-18T04:13:43 radius2=5 with power 2011-06-18T04:13:43 radius2=5 2011-06-18T04:13:54 how do you blocade a 3 width corridor with radius = 1 ? 2011-06-18T04:14:13 a diagonal line from each edge basically 2011-06-18T04:14:14 what does power do again ? 2011-06-18T04:14:32 i.e. a V off the end 2011-06-18T04:14:38 yeah 2011-06-18T04:14:46 i 'll just believe you i guess 2011-06-18T04:14:54 I think we should change the official name to occupied 2011-06-18T04:14:59 what is the power resolution again ? 2011-06-18T04:14:59 yep 2011-06-18T04:15:03 it much better describes it 2011-06-18T04:15:16 stocha: your ant lives if it has less enemies than any of those enemies in range have 2011-06-18T04:15:27 antimatroid: want to change the description page and I'll change the name on the beta server page? 2011-06-18T04:15:32 with damage rule, you have the option of changing how much damage trigger the death also. 2011-06-18T04:15:35 janzert: sure 2011-06-18T04:15:41 i had some testing back a few month ago. 2011-06-18T04:15:42 should i update the specs page too? 2011-06-18T04:15:46 it is worth exploring. 2011-06-18T04:15:55 stocha: we have explored that idea 2011-06-18T04:16:01 antimatroid: and ? 2011-06-18T04:16:03 we were considering damage of 1.9 or this change 2011-06-18T04:16:06 antimatroid: yes, probably 2011-06-18T04:16:13 antimatroid: and ? 2011-06-18T04:16:21 mcleopold janzert and i prefer the power method for encouraging a better game 2011-06-18T04:16:29 well ? 2011-06-18T04:16:50 what are the objectifs reasons, if i might ask 2011-06-18T04:17:05 by the time you get to damage 1.9 (which you need to prevent blocking) there is little motivation left to cluster ants 2011-06-18T04:17:10 janzert: are you changing the name of it in the source? 2011-06-18T04:17:31 not now, I need to get to bed. I can hardly keep my eyes open ;) 2011-06-18T04:17:33 you mean 1.1 damage is not enough to prevent blocking ?? 2011-06-18T04:17:39 yep fair enough 2011-06-18T04:17:50 stocha: yes 2011-06-18T04:18:18 2 ants have to be able to kill 3 to prevent blocking with damage 2011-06-18T04:18:29 what about 0.9 damage ? 2011-06-18T04:18:36 it make combat tricky. 2011-06-18T04:18:38 makes blocking worse 2011-06-18T04:19:10 and 0.5 ? 2011-06-18T04:19:22 less is worse :) 2011-06-18T04:19:30 i don't understand 2011-06-18T04:19:35 we don't use the same metric most probably 2011-06-18T04:19:37 damage <=1.5 allows blocking 2011-06-18T04:19:39 anything under 1.8...something would allow blocking 2011-06-18T04:19:43 damage > 1.5 doesn't encourage clustering 2011-06-18T04:19:50 give me the damage resolution rule maybe. 2011-06-18T04:20:08 McLeopold worked out the exact numbers 2011-06-18T04:20:15 i went by this : an ant die if it takes more that DAMAGE in a round. 2011-06-18T04:20:16 i've updated the battle optiosn page less the battle option name 2011-06-18T04:20:24 i'll do a sweep of the specs page with updates 2011-06-18T04:20:33 then with damage = 0.5 it means an ant can kill two. 2011-06-18T04:20:38 stocha: each ant gives out that much damage 2011-06-18T04:20:38 but not three. 2011-06-18T04:20:43 each ant gives a certain amount of damage evenly split among all enemies in range, any ant taking >= 1 damage dies 2011-06-18T04:20:56 >= 1 damage sustained gives a dead ant 2011-06-18T04:21:09 okay so what i call 0.5 i most probably 2 for you. 2011-06-18T04:21:18 https://github.com/aichallenge/aichallenge/wiki/Ants-Battle-Resolution-Options 2011-06-18T04:21:42 stocha: one ant killing 2 completely crushes clustering 2011-06-18T04:21:44 shows all the methods that have been given serious consideration/implemented in the engine 2011-06-18T04:21:59 antimatroid: but also that's 3 ant kills one. 2011-06-18T04:22:14 stocha: 1 ant kills 1 2011-06-18T04:22:19 oh, without dying 2011-06-18T04:22:22 kind of, but not as well 2011-06-18T04:22:24 so you have to find the good balance, between going to kill isolated ants, and not clustering not to be killed by fewer ants. 2011-06-18T04:22:28 ok, front page of beta server is changed 2011-06-18T04:22:40 I'm off to bed, see you all later 2011-06-18T04:22:52 i don't remember what the problem was with power. 2011-06-18T04:23:00 night 2011-06-18T04:23:02 but there certainly was good reasons to drop it :p 2011-06-18T04:23:09 only problem with it is the complexity of explaining it 2011-06-18T04:23:10 stocha: it was "too complicated" to understand 2011-06-18T04:23:21 and it didn't workout well also. 2011-06-18T04:23:22 but our ideas for fixing the other method were as complicated if not more so 2011-06-18T04:23:22 I think the new description as occupied really helps that 2011-06-18T04:23:58 the actual gameplay dynamics of it have always seemed best of all options considered 2011-06-18T04:24:25 does it prevent blocking ? 2011-06-18T04:24:28 *** chris__0076 has joined #aichallenge 2011-06-18T04:24:30 yes 2011-06-18T04:24:38 i don't understand :p 2011-06-18T04:24:58 that's two kills one 2011-06-18T04:25:01 :) I'll let antimatroid explain 2011-06-18T04:25:06 okay 2011-06-18T04:25:20 it can take 3 to kill 1 2011-06-18T04:25:25 i think there was pictures on the forum half a year or a year back :p 2011-06-18T04:25:28 but you can always kill at least 1 2011-06-18T04:25:43 what am i answering? 2011-06-18T04:25:49 but you can kill more than 1 also , with only one ? 2011-06-18T04:26:03 yes 2011-06-18T04:26:14 antimatroid: explaining what the power resolution means practically. (death ratio, blocking clustering etc) 2011-06-18T04:26:14 no? 2011-06-18T04:26:16 how? 2011-06-18T04:26:29 i don't know, i don't remember it :p 2011-06-18T04:26:37 I'm not sure how you'd kill more than 1 with 1? 2011-06-18T04:26:39 i think you need illustration to understand it anyway. 2011-06-18T04:26:50 maybe you can't :p i was just asking 2011-06-18T04:26:55 can you kill three with two ? 2011-06-18T04:27:12 if not, how does it prevent blocking. 2011-06-18T04:27:20 http://i.imgur.com/rZKCu.png 2011-06-18T04:27:24 thx 2011-06-18T04:27:28 look at the top outcome for each of those 2011-06-18T04:27:35 that's with radius2= 4 though 2011-06-18T04:27:52 that does allow blocking of 3 corridors, but we're pretty sure with radius2=5 it's not blockable 2011-06-18T04:27:59 ah i remember. 2011-06-18T04:28:04 you don't need to cluster at all. 2011-06-18T04:28:23 or take a look at the ants/util/block_test scripts in latest git 2011-06-18T04:28:59 is that the power rule only on the picture ? 2011-06-18T04:29:35 question can a isolated ant be garanted to kill at least one ? 2011-06-18T04:29:42 no 2011-06-18T04:29:55 1 and 2 width corridors can be blocked 2011-06-18T04:30:25 a dying ant isn't always in range of a dying enemy no 2011-06-18T04:30:26 the top branch of each scenario in that image is the occupied method 2011-06-18T04:31:16 the middle and bottom branch were iterative closest and support methods respectively if I remember correctly 2011-06-18T04:31:49 that's correct 2011-06-18T04:32:24 i hope it does encourage clustering of ants. 2011-06-18T04:32:44 even damage didn't enourage them enough to my taste. 2011-06-18T04:32:54 if anything is going to it will be this 2011-06-18T04:33:11 in many situations it does work out the same as damage btw 2011-06-18T04:33:42 yep, it took us a while to come up with examples where they differed a while ago if i remember correctly? 2011-06-18T04:34:38 what about groups of ant based fighting rule ? 2011-06-18T04:35:02 (like in go, power of a group, is proportionnal to number of ant connected to the groupe horizontally or vertically) 2011-06-18T04:35:13 (you could even use liberty if you want ) 2011-06-18T04:35:23 at least it does encourage clustering. 2011-06-18T04:35:36 too complicated 2011-06-18T04:35:42 *** chris__0076 has quit IRC (Read error: Connection reset by peer) 2011-06-18T04:35:48 from my testing, for example, the greedy fooding looks way less cool than the worm eating food. 2011-06-18T04:35:52 and you may not be able to determine the outcome of your moves with fog of war 2011-06-18T04:36:11 i'm very frustrated that greedy (one ant to one food at maximum) are better. 2011-06-18T04:36:37 antimatroid: you can cap the maximum of power then. 2011-06-18T04:36:43 not always true if you have competition to claim the food 2011-06-18T04:36:48 like they put power together, and then it's cap at 5 2011-06-18T04:37:03 antimatroid: certainly true in most map setting though. 2011-06-18T04:37:23 (with a combat rule that encourage clustering i mean) 2011-06-18T04:37:42 maybe the hidden power of ants would make the game more interesting though. 2011-06-18T04:37:51 because now you have a big incentive to cluster. 2011-06-18T04:38:24 although the effective power resolution would still be left to find. 2011-06-18T04:38:26 it's a fairly big change to the structure of the game 2011-06-18T04:38:34 can't say i'd be a huge fan of changing to that at this point 2011-06-18T04:38:38 (i mean how you use power to kill ants) 2011-06-18T04:38:45 it's a fairly minor change to occupied with attack2 = 5 2011-06-18T04:38:58 from what i remember, all combat rules are broken. 2011-06-18T04:39:01 *** chris__0076 has joined #aichallenge 2011-06-18T04:39:17 the only problem with power was it's complexity of understanding 2011-06-18T04:39:29 we thought damage was simpler without problems, but it turned out it had problems 2011-06-18T04:39:38 if you want to encourage clustering, without blocking and with no state/probability. 2011-06-18T04:39:40 so now we're going back to occupied/power 2011-06-18T04:39:48 fair enough. 2011-06-18T04:40:02 i'd rather you have asked the comunity before though. 2011-06-18T04:40:16 most probably people would have agreed once you show your evidences. 2011-06-18T04:40:30 we have been talking to anyone that has been in irc 2011-06-18T04:40:37 i don't like this feeling that two people can make whatever changes they want. 2011-06-18T04:42:17 that's the main reasons i stoped trying to improve my bot. I'm waiting for the end of beta now. because i anticipate a lot of change during beta. With only two people really taking the decisions. 2011-06-18T04:44:57 *** stocha has quit IRC (Quit: Page closed) 2011-06-18T04:45:11 extremely rough but maybe a narrative like this will help http://pastebin.com/qRAx2Mxp 2011-06-18T04:45:23 and stocha already left :( 2011-06-18T04:47:19 https://github.com/aichallenge/aichallenge/wiki/Ants-Game-Specification i've somewhat updated this 2011-06-18T04:47:34 particularly the battle resolution component in the game state update section 2011-06-18T04:49:48 that seems like a good specification, I think if we can get a good narrative description as well it will help people more intuitively understand it 2011-06-18T04:50:24 i might change the last three words to "in range have" 2011-06-18T04:50:30 "have in range" doesn't seem right to me 2011-06-18T04:50:39 should i include the enemies(a) definition? 2011-06-18T04:50:48 heh, well I just change a few hours ago from that 2011-06-18T04:50:58 in range have seems really wrong to me :/ 2011-06-18T04:50:59 really? 2011-06-18T04:51:03 i don't mind 2011-06-18T04:51:05 i'll leave it as is 2011-06-18T04:51:21 funny that i picked that out though 2011-06-18T04:51:27 might be an australian/american slight grammar difference 2011-06-18T04:51:50 i'm far from good at that kind of thing 2011-06-18T04:52:22 it's amazing how complicated it is to describe, it's really such a simple rule :\ 2011-06-18T04:52:41 yeah, that's why I think a good narrative (story) might help 2011-06-18T04:53:17 the story might help convey the mechanics behind it better than the details of implementation 2011-06-18T04:54:47 yeah okay 2011-06-18T04:54:48 hmmm 2011-06-18T04:55:04 so billy the ant was wondering around.. :P 2011-06-18T04:55:46 i'm going to make a forum post 2011-06-18T04:55:56 should i do it in devlopment/tools or suggestions? 2011-06-18T04:57:05 * janzert shrogs 2011-06-18T04:57:10 shrugs even 2011-06-18T04:57:21 no idea 2011-06-18T04:57:35 *** chris___0076 has joined #aichallenge 2011-06-18T04:57:40 development/tools seems to be where most of the discussion is recently 2011-06-18T04:58:00 *** chris__0076 has quit IRC (Ping timeout: 240 seconds) 2011-06-18T05:01:49 btw, I regenerated tools.zip on the beta server 2011-06-18T05:02:05 so anyone downloading it now should get the new defaults 2011-06-18T05:09:41 cool 2011-06-18T05:12:56 antimatroid: I've a cool new tool. 2011-06-18T05:13:05 mleise: shoot :P 2011-06-18T05:13:50 It is a GUI that incorperates a server listening for bots that want to draw something in 2D for debugging purposes :p 2011-06-18T05:14:41 :S 2011-06-18T05:14:45 all important cairo drawing operations are wrapped + my own extensions, currently ext_unit_grid, which draws a uniform grid around squares 2011-06-18T05:16:56 it automatically duplicates draw commands that need to be wrapped around, like a circle at the right border that wraps back in on the left 2011-06-18T05:17:44 It supports turn break points and manual breaks. 2011-06-18T05:24:19 *** boegel has joined #aichallenge 2011-06-18T05:25:19 *** boegel has quit IRC (Client Quit) 2011-06-18T05:25:22 http://ai-contest.com/forum/viewtopic.php?f=25&t=1411 2011-06-18T05:25:29 janzert: if you're still awake ;) 2011-06-18T05:25:39 mleise: sorry, reading up now, wanted to get that done 2011-06-18T05:27:09 http://img716.imageshack.us/img716/6932/debugpainter.png 2011-06-18T05:28:34 pycairo? 2011-06-18T05:28:50 looks nice 2011-06-18T05:29:24 mcstar: not quite, written in D with gtkd. 2011-06-18T05:30:40 Frontier: how hard it would be to make a html5 drag&drag interface to a simple array plotter? it would be able to add ants, with their respective battle-radius, and color the nearby squeares according to the number of ant's radii it is in 2011-06-18T05:30:53 mleise: oh so it lets me have a debug image each turn instead of a character map? 2011-06-18T05:31:11 that's neat 2011-06-18T05:31:13 antimatroid: a CHAR MAP?!?!?? in which century did you grow up? 2011-06-18T05:31:27 australia? 2011-06-18T05:31:33 century 2011-06-18T05:31:40 the 15th 2011-06-18T05:32:00 hey, characters are nice, the only problem is there are no 1:1 monospace fonts for terminals :( 2011-06-18T05:32:11 mcstar: You can write up that html thingy. I help you with problems :) 2011-06-18T05:32:26 i just debug to file 2011-06-18T05:32:32 Frontier: im just wondering approx. how much time it would take 2011-06-18T05:32:34 but i would be down with something like that as well 2011-06-18T05:32:35 i cant estimate 2011-06-18T05:32:57 antimatroid: As you can see you can have multiple pages per process and multiple layers on each page 2011-06-18T05:33:31 You can also define layer links. So your terrain from page 1 can be reused in other pages as the background image 2011-06-18T05:33:56 The grid is a STATIC layer. That means it is defined once in the first turn and never updated. 2011-06-18T05:35:31 mcstar: define drag&drop. from where do you want to drop what onto the html? 2011-06-18T05:35:58 i wrote drag&drag 2011-06-18T05:36:06 no droppping involved 2011-06-18T05:36:21 what is drag&drag then? 2011-06-18T05:36:35 i just want to drag the ants, and maybe to group them with holding ctrl down or something 2011-06-18T05:36:43 and so that i can manually change their positions 2011-06-18T05:36:59 and see how the squares change colors 2011-06-18T05:37:27 or, not colors, rather intensity or some. else 2011-06-18T05:37:37 hmm, that would probably take you a day to get the drag & drop of ants done right :) 2011-06-18T05:37:51 really? 2011-06-18T05:37:57 thats too much :( 2011-06-18T05:38:03 and again, no dropping 2011-06-18T05:38:14 take a statically sized canvas and loop x and y and call fillRect 2011-06-18T05:38:16 ok, lets call it push 2011-06-18T05:38:26 or pull&pull 2011-06-18T05:39:16 looping through all the elements of the grid? 2011-06-18T05:39:30 I wont say you are done in an hour. That's probably what it looks like, but that is never the case. 2011-06-18T05:39:43 alright 2011-06-18T05:39:59 ill kill some bugs first, and then ill give it a try 2011-06-18T05:40:06 *** chris__0076 has joined #aichallenge 2011-06-18T05:40:45 how do i get the size of the list enemies_a in python? 2011-06-18T05:40:51 size(enemies_a)? 2011-06-18T05:40:53 if you just use the left mouse button to set/remove an ant for example as a first step it will be done very fast, but you will want to add ants of different players, so you need to select them somehow 2011-06-18T05:41:02 list.len() 2011-06-18T05:41:13 enemies_a.len() 2011-06-18T05:41:52 well, yeah, later, but first i only want grouping 2011-06-18T05:42:05 so that it would be easier to move them together 2011-06-18T05:42:10 *** chris___0076 has quit IRC (Ping timeout: 258 seconds) 2011-06-18T05:42:15 http://ai-contest.com/forum/viewtopic.php?f=25&t=1411&p=9075#p9075 2011-06-18T05:42:21 what do you guys think of my description there? 2011-06-18T05:43:05 dont comment out the a dies line, it wont have any effect 2011-06-18T05:43:07 i just changed it 2011-06-18T05:43:25 and again 2011-06-18T05:43:48 better 2011-06-18T05:44:21 ergh, fixed errorness stuff 2011-06-18T05:44:21 enemies_a change this too 2011-06-18T05:44:25 yep 2011-06-18T05:44:57 btw i think in python you should use enemies.a 2011-06-18T05:45:02 for example 2011-06-18T05:45:32 since probably its object oriented, so enemies is a class 2011-06-18T05:45:39 or just call it enemies.a() 2011-06-18T05:46:11 hmm yeah 2011-06-18T05:46:22 i'm not really keen on that or how i've done it :\ 2011-06-18T05:46:26 *** boegel has joined #aichallenge 2011-06-18T05:46:46 what about a.enemies()? 2011-06-18T05:47:14 kind of implies the location has access to the grid though :\ 2011-06-18T05:47:17 ok 2011-06-18T05:47:37 grid.enemies(a)? 2011-06-18T05:47:50 ants(0).enemies() 2011-06-18T05:48:09 or ants can be a list 2011-06-18T05:48:13 ants[0].enemies() 2011-06-18T05:48:39 but since you said its pseudocode, just use common english as far as possible 2011-06-18T05:48:52 enemies of player a 2011-06-18T05:48:55 i think the message is conveyed with it as current 2011-06-18T05:49:47 with the current my problem is that what is a? since its python code, a has to be of type what? 2011-06-18T05:50:00 a number? string? 2011-06-18T05:50:14 its an arguments, i dont like it 2011-06-18T05:50:17 -s 2011-06-18T05:50:19 a is probably a tuple (int, int) 2011-06-18T05:50:22 it's a location 2011-06-18T05:50:31 you see? its problematic 2011-06-18T05:50:32 and enemies(a) is a list of locations 2011-06-18T05:50:54 i said if for each ant location x, you generate the list of enemy ant locations in range, say enemies(x) 2011-06-18T05:52:42 btw instead of kill(a) there should be some like add_to_kill_list(a) 2011-06-18T05:53:03 i mean, before looping over all the ants i wouldnt actually kill any of them 2011-06-18T05:53:22 i would personally, but i understand why it could confuse people 2011-06-18T05:54:29 there can be nasty side effects when you destructively change a structure, that you are relying on 2011-06-18T05:54:56 but yeah, as a pseducode, its alright 2011-06-18T05:55:37 oh, thx :) 2011-06-18T05:56:06 *** nann has joined #aichallenge 2011-06-18T05:59:12 *** Apophis_ has quit IRC (Ping timeout: 240 seconds) 2011-06-18T06:07:26 ok I understand the forum post, but I knew what I was up to 2011-06-18T06:08:50 But I prefer a simple line of text like "You kill an ant if your ant has less enemies in range than the other ant." 2011-06-18T06:09:11 *** Redgis has joined #aichallenge 2011-06-18T06:10:42 *** chris__0076 has quit IRC (Ping timeout: 255 seconds) 2011-06-18T06:18:59 to our attention that it is which has always... can you put a , in it? like this: 2011-06-18T06:19:04 to our attention that it is, which has always bee 2011-06-18T06:20:10 i like when an eng. sentence is properly "comma-d"(dunno how to say this, maybe stressed?), its easier to read for foreigners 2011-06-18T06:23:42 *** Chris_0076 has joined #aichallenge 2011-06-18T06:27:46 btw im quite sure that the most interesting battles only would be possible if the fate of an ant wouldnt be decided in one turn 2011-06-18T06:28:03 im thinking of multi-turn battle rersolution, with fractional damage 2011-06-18T06:29:02 it might be hard to implement, but i think it would lead to some sort of "dance", it would take a couple of turns for one hive to kill off another in one battle-scene 2011-06-18T06:30:14 *** george1914 has joined #aichallenge 2011-06-18T06:37:15 lol, people who want to take away our little puppy, call him negro 2011-06-18T06:44:51 *** Apophis_ has joined #aichallenge 2011-06-18T06:48:30 *** nann has quit IRC (Ping timeout: 255 seconds) 2011-06-18T07:04:53 *** FireFly has joined #aichallenge 2011-06-18T07:06:31 mcstar: Peristent heath points solves problems, but is hated 2011-06-18T07:06:51 And it changes so much :-( 2011-06-18T07:09:20 how about this? an ant can accumulate in one turn only a given amount of damage, say 1/2, if it isnt in a battle situation in the next turn, it regains its health 2011-06-18T07:10:11 no matter how many attackers, it will always take 2 turns to kill an ant? 2011-06-18T07:10:34 yep 2011-06-18T07:10:54 its closer to reality, not that it would matter 2011-06-18T07:11:50 attacking ants can block each other, and their commulative damage is not the simple sum of each of them capable of 2011-06-18T07:12:02 giving 2011-06-18T07:12:20 in a real battle, this is the case i would say 2011-06-18T07:12:34 oh my, that's too complicated for what we intend 2011-06-18T07:12:40 hehe, alright 2011-06-18T07:13:07 don't even go into explaining how the damage is spread :p 2011-06-18T07:14:09 I have another proposal: Ants chose their targets. 2011-06-18T07:14:29 mcleopold mentioned that 2011-06-18T07:14:41 an ant could concentrate his damage 2011-06-18T07:15:21 i said that ants could team up, you know, like 2 ants merge, accupy 1 square, and they attack with combined force 2011-06-18T07:16:00 so it would require a balance between the number of ants a player has, the ability to keep the explored regions, 2011-06-18T07:16:16 and between the battle force 2011-06-18T07:16:55 *** olexs has joined #aichallenge 2011-06-18T07:18:06 with the current rules it is possible i think, that a trained neural network would win 2011-06-18T07:18:14 two ants on the same square is difficult to visualize, you know 2011-06-18T07:18:41 they'd be merged, and could give 1.x damage 2011-06-18T07:18:49 and this guy, Frontier, would have to work on that 2011-06-18T07:19:21 yeah, lets not tell him, keep it as a surprise 2011-06-18T07:19:26 mcstar: hmm yes, we had that in the early prototpy antimatroid and I created 2011-06-18T07:19:55 ants could merge (basically their helath points) 2011-06-18T07:20:05 *** chris__0076 has joined #aichallenge 2011-06-18T07:20:14 why didnt you pursue it any further? 2011-06-18T07:22:20 *** Chris_0076 has quit IRC (Ping timeout: 276 seconds) 2011-06-18T07:24:18 i dont remember. people decided on other rules. health points were something Jeff wouldn't agree on. 2011-06-18T07:25:36 The map was about 30x30 squares and it was graphical with terrain ranging from sand over grass to stone. The ants were real little ants that moved smoothly across the map harvesting food and bringing it back to their hive, where new ants spawned from it 2011-06-18T07:25:55 It looked great :) 2011-06-18T07:26:10 ive seen it 2011-06-18T07:26:23 *** chris__0076 has quit IRC (Read error: Operation timed out) 2011-06-18T07:26:47 once you posted a link to your web server i think, and i was exploring the folders... 2011-06-18T07:27:51 yeah, right now the old links don't work any more. I changed the layout a bit and the old visualizer versions broke 2011-06-18T07:29:26 oh, when i started to get to know the contest, i read about a prog. implementing a similar ant-problem with the use of genetic algorithm 2011-06-18T07:29:37 he had the idea that ants could go into water 2011-06-18T07:30:04 the ant that stepped into water would die, but other ants could step right onto it 2011-06-18T07:30:22 and thus get to the other side of a river 2011-06-18T07:30:53 the algorith found it out, made a couple of bridges from dead ants, and the others could bring back the food 2011-06-18T07:31:38 maybe, blocking woudl also be solves this way, the opponent only had to sacrifice 1-2 ants, and could get behind the block or something 2011-06-18T07:31:44 solved 2011-06-18T07:32:19 of course the dead ant woudl disappear from water after a couple of turns 2011-06-18T07:32:42 but this would be easy to implements, only add another kind of square 2011-06-18T07:32:58 (i hate my extra letters) 2011-06-18T07:33:20 ants could also survive water, just not be isolated on water 2011-06-18T07:33:38 no, to complicated on the engine side 2011-06-18T07:33:52 really? 2011-06-18T07:34:02 i think its quite easy 2011-06-18T07:34:03 dead ants on water sounds interesting to me. 2011-06-18T07:34:19 that would solve blocking for good :) 2011-06-18T07:34:22 i want them to die in water for sure 2011-06-18T07:35:16 you see, the engine would simply delete your ant, like as if it was about to step on the same square as a friendly ant 2011-06-18T07:35:36 mcstar: yes it makes sense. lets implement this. 2011-06-18T07:35:39 and change the particular square for a couple of turns toland 2011-06-18T07:36:07 sure, now wait for mcleopold to agree 2011-06-18T07:36:08 oh wait... the poor visualizer guy 2011-06-18T07:36:27 why? Frontier likes the idea i think, doesnt he? 2011-06-18T07:37:35 in deed, but it means work all the way from the parser over keyframe generation to drawing 2011-06-18T07:38:56 lets say, the engine sends another kind of square, which has priority over the old ones, when the visualizer receives it from the replay file, it would simply mask the old square 2011-06-18T07:39:34 but are you willing to discuss this with the others at all? 2011-06-18T07:39:37 mcstar: this is totally not how the replay file looks like. there are no 'squares' 2011-06-18T07:39:56 there are moves, right? 2011-06-18T07:40:06 a stream of directions 2011-06-18T07:40:07 no 2011-06-18T07:40:09 yes 2011-06-18T07:40:28 there are ants as the basic structure 2011-06-18T07:40:36 and each ant has a stream of directions 2011-06-18T07:41:02 so add a "ghost-ant" that can only appear and disappear 2011-06-18T07:41:20 Yes I'm willing to discuss this. If this turns out to be the best option I'll modify the visualizer. 2011-06-18T07:41:21 hey, i shut up now, i dont know whats the easiest for you 2011-06-18T07:42:26 *** chris__0076 has joined #aichallenge 2011-06-18T07:43:30 we could add a new 'direction' to the stream. now it is n, s, e, w and -. We could add f for floating on water or something 2011-06-18T07:44:34 then again the ant is supposed to be dead so it breaks the validation of the replay or the calculated ant count. hmm... let's go for the ghost ant :) 2011-06-18T07:45:56 ghost ant it is 2011-06-18T07:46:22 *** olexs has quit IRC (Quit: Leaving.) 2011-06-18T07:51:05 btw, in my engine i also have a direction :c 2011-06-18T07:51:14 short for center, as in stay 2011-06-18T07:51:20 handy for debugging 2011-06-18T07:51:22 *** chris___0076 has joined #aichallenge 2011-06-18T07:54:39 *** chris__0076 has quit IRC (Ping timeout: 276 seconds) 2011-06-18T07:57:58 *** stocha has joined #aichallenge 2011-06-18T07:58:19 hi my homecoded starter c bot timeout when i try to playgame.sh How do i debug that ? 2011-06-18T07:58:41 i mean there is no output. i don't even know what commands or exact text was feed into the bot etc ... 2011-06-18T07:58:44 -e -E 2011-06-18T07:58:59 i there a command script i can run also (feeding my bot with it ) 2011-06-18T07:59:15 there is one on the wiki 2011-06-18T07:59:27 i mean a short file with inputs for your bot 2011-06-18T07:59:52 isnt it playgame.py? 2011-06-18T08:00:44 inderectly it is 2011-06-18T08:01:11 so it accepts -e for showing stderr, and -E for logging into files i think 2011-06-18T08:01:16 where do i put the -e ? what should i expect from it ? i mean i puted -e in there. i does nothing more 2011-06-18T08:01:29 in the file which runs playgame.py 2011-06-18T08:01:37 i want to see what commands are fed into my bot 2011-06-18T08:01:55 yeah, you can do that by sending those commands to your bot's stderr 2011-06-18T08:01:58 -e didn't change a thing 2011-06-18T08:02:03 just printf them 2011-06-18T08:02:15 how do i printf to stderr in c ? :p 2011-06-18T08:02:18 hehe 2011-06-18T08:02:27 printf("toto",1) ? 2011-06-18T08:02:34 fprintf(stderr,"asdasds") 2011-06-18T08:02:55 okay not "toto" then 2011-06-18T08:02:58 i'll try just that 2011-06-18T08:03:21 aw, now you woke up toto 2011-06-18T08:03:26 toto back to sleep! 2011-06-18T08:03:58 it doesn't work :'( 2011-06-18T08:04:13 stderr is not recgnoized or something 2011-06-18T08:04:21 hm 2011-06-18T08:04:32 its been i while i used c 2011-06-18T08:04:37 a 2011-06-18T08:04:47 ah okay it works now 2011-06-18T08:04:55 asdasd was the format string 2011-06-18T08:05:14 fprintf(stderr,"$s","asdasds") 2011-06-18T08:05:49 works for me 2011-06-18T08:06:31 like printf, only the first arg is the output stream, stderr, or file-stream, or stdout 2011-06-18T08:07:30 i beleive in c they dont call them streams though 2011-06-18T08:07:44 sy could enlighten me 2011-06-18T08:07:55 mm now i have a message : bot 3 timed out 2011-06-18T08:07:59 still no output though 2011-06-18T08:08:04 *** chris___0076 has quit IRC (Ping timeout: 252 seconds) 2011-06-18T08:08:08 i guess don't even reach then end of the first scanf 2011-06-18T08:08:20 so i still don't know what's fed into the bot :'( 2011-06-18T08:08:24 try to run your bot, and type in ready 2011-06-18T08:08:28 it should say go 2011-06-18T08:08:33 this work yes 2011-06-18T08:08:51 and do you see the input as well? 2011-06-18T08:08:58 i mean does it spit it back? 2011-06-18T08:09:03 yeah 2011-06-18T08:09:08 it says go 2011-06-18T08:09:12 then stderr works 2011-06-18T08:09:18 it echo ready too 2011-06-18T08:09:25 so it does this 2011-06-18T08:09:26 ready 2011-06-18T08:09:27 readygo 2011-06-18T08:09:42 yeah, you should use \n 2011-06-18T08:10:09 in the fprintf ? okay. 2011-06-18T08:10:15 still i have no idea what is going wrong 2011-06-18T08:10:26 its only aesthetic 2011-06-18T08:10:36 because i don't even get an echo with the play_onegame.sh 2011-06-18T08:10:39 i cant help wo seeing it 2011-06-18T08:10:52 can you dcc it over? 2011-06-18T08:11:12 what is dcc ? 2011-06-18T08:11:25 irc file transfer 2011-06-18T08:11:45 i don't think so :p 2011-06-18T08:11:49 i don't have irc 2011-06-18T08:11:59 webchat? 2011-06-18T08:12:02 alright 2011-06-18T08:12:48 test 2011-06-18T08:12:53 ... 2011-06-18T08:12:55 huh? 2011-06-18T08:13:07 i tryed to write the launch command in there. but i see nothing showing 2011-06-18T08:13:16 to see if the -e is correct 2011-06-18T08:13:30 do you output something when you read a command ? 2011-06-18T08:13:35 can you pastebin it then? 2011-06-18T08:14:11 well, watch out that you shouldnt print anything to stdout, cause it goes to the server which wont understand it 2011-06-18T08:14:11 i simply do scanf("%80s",s); fprintf(stderr,"%s",s); 2011-06-18T08:14:15 in a loop. 2011-06-18T08:14:30 server->engine 2011-06-18T08:14:34 and i see jsut nothing 2011-06-18T08:15:16 nevertheless pls pastebin it 2011-06-18T08:15:28 i'm in the ant rep 2011-06-18T08:15:34 ants 2011-06-18T08:15:37 i see no server in there 2011-06-18T08:15:55 i meant engine 2011-06-18T08:16:13 http://pastebin.com/6YNuf0DU 2011-06-18T08:16:18 thx 2011-06-18T08:17:22 where is the script to test the bot 2011-06-18T08:17:29 (the same that run on the server ?) 2011-06-18T08:17:29 *** locutus2 has joined #aichallenge 2011-06-18T08:18:12 test_bot.sh 2011-06-18T08:18:15 right there 2011-06-18T08:18:38 look, when i add -e to playgame.py, it shows all my output to stderr 2011-06-18T08:18:39 it's like scanf never end 2011-06-18T08:18:54 maybe my first scanf doesn't end 2011-06-18T08:19:01 so i never get to see the output 2011-06-18T08:19:02 but what i meant you to pastebin is your c code, not the script that runs it 2011-06-18T08:19:09 ah :) 2011-06-18T08:19:11 i'll do that 2011-06-18T08:19:39 http://pastebin.com/MEfXK4Ck 2011-06-18T08:20:07 *** chris___0076 has joined #aichallenge 2011-06-18T08:21:30 maybe the engine never send any \n 2011-06-18T08:22:06 it sends whole lines 2011-06-18T08:22:15 with \n ? 2011-06-18T08:22:16 in the meantime can i get natbot.h? 2011-06-18T08:22:20 yeah 2011-06-18T08:22:28 natbot.h ? 2011-06-18T08:22:43 those are the abstract functions to my bot. 2011-06-18T08:22:51 my bot is working fine in my framework 2011-06-18T08:23:08 it's the input from the real engine that goes wrong 2011-06-18T08:23:15 if i send command manually it works fine 2011-06-18T08:23:26 well i didn't found anything wrong i mean 2011-06-18T08:23:41 it sends order and such 2011-06-18T08:26:26 well, scanf("%s",buffer) only scans till the first whitespace 2011-06-18T08:27:21 in console both the hunter bot, and mine behave the same though 2011-06-18T08:27:37 what should i used instead of scanf then ? 2011-06-18T08:27:51 the goal was to scan the first word of input 2011-06-18T08:28:35 one moment 2011-06-18T08:28:48 is the end keyword use at other places than the end ? 2011-06-18T08:30:07 here are some console log for both hunter and my bot http://pastebin.com/rUrpL2ch 2011-06-18T08:31:11 i'll try to upload the bot on the server and see what happen 2011-06-18T08:31:43 dont bother, if it doesnt run locally, no chance it will online 2011-06-18T08:31:55 maybe there will be output though 2011-06-18T08:32:17 btw, there is switch, you know 2011-06-18T08:32:28 those if-elses are kind of wtf 2011-06-18T08:32:29 *** carlop has joined #aichallenge 2011-06-18T08:32:46 you can switch on strings ? 2011-06-18T08:32:52 in c ? 2011-06-18T08:39:10 i beleive you can switch on anything 2011-06-18T08:39:39 or you can at least enumerate them 2011-06-18T08:41:26 maybe im wrong, im not sure if you can switch on other than single variables 2011-06-18T08:41:40 you can switch on int in c. 2011-06-18T08:41:50 as far as i know 2011-06-18T08:42:32 *** onensora has joined #aichallenge 2011-06-18T08:43:32 i uploaded it to the server. to see if it gives usefull output. 2011-06-18T08:44:38 does it? 2011-06-18T08:44:49 don't know yet 2011-06-18T08:45:20 it doesn't compile :p 2011-06-18T08:45:58 what i would do, is to put the strings i compare against, into an array, so its an array of char*, and then put it in like: switch(mycompare(string)) 2011-06-18T08:46:06 the cases are numbers 2011-06-18T08:46:08 case 1: 2011-06-18T08:46:10 case 2: 2011-06-18T08:46:22 and mycompare does a while loop, over the array 2011-06-18T08:46:41 i don't understand. but the main problem i have is not that it look bad. It is that it doesn't work. 2011-06-18T08:46:55 strcmp the string with those in it, returning the number of the iteration the match occurs in 2011-06-18T08:47:07 well get to that too :D 2011-06-18T08:47:54 right now im commenting out your java lines 2011-06-18T08:49:05 becarfull of the number of orders 2011-06-18T08:49:12 it should be 0 if you comment the java line 2011-06-18T08:49:23 it is working 2011-06-18T08:49:25 (the bot response) 2011-06-18T08:49:30 im mean i can run it 2011-06-18T08:49:32 it is working on your system ? 2011-06-18T08:49:41 does it time out ? 2011-06-18T08:49:52 when you give it the play_onegame.sh 2011-06-18T08:50:22 stderr turn 2011-06-18T08:50:24 stderr loadtime 2011-06-18T08:50:25 stderr turntime 2011-06-18T08:50:27 stderr rows 2011-06-18T08:50:29 stderr cols 2011-06-18T08:50:32 stderr turns 2011-06-18T08:50:34 stderr 1000 2011-06-18T08:50:35 stderr viewradius2 2011-06-18T08:50:38 stderr attackradius2 2011-06-18T08:50:39 stderr spawnradius2 2011-06-18T08:50:41 stderr player_seed 2011-06-18T08:50:44 stderr None 2011-06-18T08:50:46 stderr ready 2011-06-18T08:50:47 and then times out 2011-06-18T08:51:37 you have similar output? 2011-06-18T08:52:20 if you dont have those stderr lines, it means that somewhere one of your java funcall is blocking, its erroneous, or simly takes too long for them to return 2011-06-18T08:52:37 i dont think the problem is with the c part 2011-06-18T08:52:59 there is no java between the scanf and the first stderr. 2011-06-18T08:53:10 i mean no java_ call 2011-06-18T08:53:44 i tryed to comply with the server for scanf, let's see if i get more usefull output now 2011-06-18T08:53:59 it can take up to five minutes 2011-06-18T08:54:02 *** Zaphus has joined #aichallenge 2011-06-18T08:54:29 stocha: do you have the same lines that i just pasted here?? 2011-06-18T08:55:18 Evening all 2011-06-18T08:55:44 (the io is buffered usually, so it might be that fprintf returns, java blocks, and the test isnt shown) 2011-06-18T08:55:58 but pls answer my questiuon otherwise i have nothing to go on 2011-06-18T08:56:07 -u 2011-06-18T08:56:26 what's up with OlexandrT - it was playing a game every 2 minutes ?! (but none against me). 11 games in 18 minutes, incredible 2011-06-18T08:56:41 that you pasted where ? 2011-06-18T08:57:16 no i don't have them 2011-06-18T08:57:49 thats a problem, you should have them 2011-06-18T08:57:57 at least try to reproduce them 2011-06-18T08:57:57 yeah i agree 2011-06-18T08:58:08 i can simply comment the function like you did 2011-06-18T08:58:10 are you sure that you add -e to playgame.py? 2011-06-18T08:58:20 i pasted you the exact command 2011-06-18T08:58:25 Zaphus: its nice how it circulates around water 2011-06-18T08:58:26 -e is first one 2011-06-18T08:59:02 *** chris___0076 has quit IRC (Ping timeout: 252 seconds) 2011-06-18T08:59:55 aham 2011-06-18T09:00:06 how old is your environment? 2011-06-18T09:00:19 there was a time when stderr didnt work 2011-06-18T09:00:37 the engine simply blocked it 2011-06-18T09:01:11 ah 2011-06-18T09:05:51 The FOREX*PAMM is headed by Olexandr Topchylo, a professional trader, Ph.D. in Physics and Mathematics, the First Winner of the Automated Trading Championship 2007 2011-06-18T09:06:19 Zaphus: are you up for him? 2011-06-18T09:06:22 :D 2011-06-18T09:07:11 mm i have the stderr now 2011-06-18T09:07:21 i have use a 1024 buffer 2011-06-18T09:07:26 so maybe my buffer was too small 2011-06-18T09:07:32 i'll try with an even bigger one. 2011-06-18T09:07:34 actually, I just checked his most recent game, he took out me and locutus2 pretty convincingly... but I still want to know how he got 11 games in 18 minutes :-) 2011-06-18T09:08:32 stocha: wtf? an 1024 char buf is more than adequate 2011-06-18T09:08:40 a line is only like 20 chars long 2011-06-18T09:08:47 80 was not enough 2011-06-18T09:08:48 and he took out Parsley, GreenTea and Leviathan in previous games - ok, he deserves #1 for now 2011-06-18T09:08:49 who know why 2011-06-18T09:09:06 Zaphus: well beat him, dont worry .) 2011-06-18T09:09:29 stocha: do you still need help? 2011-06-18T09:09:46 (btw do something with that buffer, its crazy long) 2011-06-18T09:10:14 i don't know. but at least i will have some output it seems 2011-06-18T09:10:33 alright, ill hunt my own bugs now 2011-06-18T09:10:38 stocha, maybe this helps http://pastebin.com/L1Xz7uHk 2011-06-18T09:11:15 *** Accoun has quit IRC (Ping timeout: 260 seconds) 2011-06-18T09:11:41 berak: it looks easier to use for me than the current c starter bot for sure :) 2011-06-18T09:11:45 *** Accoun has joined #aichallenge 2011-06-18T09:11:51 let my try to understand what's going on with mine though 2011-06-18T09:12:00 thanks a lot for the help berak 2011-06-18T09:12:04 ;) 2011-06-18T09:12:09 is berak from "break" keyword ? :p 2011-06-18T09:12:23 other day i typed break wrong, and ended up thinking about you :pp 2011-06-18T09:12:43 my favourite typo 2011-06-18T09:13:23 my fav. typo nowadays is decody-byte 2011-06-18T09:13:54 i write y instead of e in like 80 percent of the time 2011-06-18T09:14:11 it seems my stuff doesn't answer go 2011-06-18T09:14:16 let me check that 2011-06-18T09:14:24 it said go to mea 2011-06-18T09:14:26 -a 2011-06-18T09:15:04 berak: fgets with if-else? 2011-06-18T09:15:08 *** Chris_0076 has joined #aichallenge 2011-06-18T09:15:23 i mean wtf why? how? lol 2011-06-18T09:15:24 should work 2011-06-18T09:15:51 sry, im trying to not to bash anyone but it seems odd, and nausiating 2011-06-18T09:16:15 ahh, shure, nice that you spotted that 2011-06-18T09:16:41 *** Chris_0076 has quit IRC (Read error: Connection reset by peer) 2011-06-18T09:17:45 *** Chris_0076 has joined #aichallenge 2011-06-18T09:20:27 *** fagocitosis has joined #aichallenge 2011-06-18T09:21:41 berak: you are suposed to make a move after the first "ready" ? without receiving any go ? 2011-06-18T09:22:14 *** fagocitosis has quit IRC (Client Quit) 2011-06-18T09:22:50 *** olexs has joined #aichallenge 2011-06-18T09:23:36 you answer ready with a go, yes 2011-06-18T09:23:43 after you initialize everything 2011-06-18T09:24:01 go\n only ( no ants yet ) 2011-06-18T09:26:44 you can send comments like # haha, i'll get you! to stdout, too. it just has to start with '#'. shows up in the output log, so that's another channel for debugging 2011-06-18T09:28:12 oh, yeah, i fing forgot about that, but its on the wiki right? 2011-06-18T09:30:57 *** Chris_0076 has quit IRC (Ping timeout: 255 seconds) 2011-06-18T09:31:34 it seems my bot receive nothing after the ready. 2011-06-18T09:31:46 but when i type the exact same sequence in the console, it issues a go. 2011-06-18T09:32:02 so it would mean that after the ready go exchange, it recieves nothing more. 2011-06-18T09:32:29 ah on the server i had more usefull data ! 2011-06-18T09:32:43 it seems there is an undocumented command that crash my bot :p 2011-06-18T09:32:52 stderr 1 player_seed stderr 1 -7071849184568392803 2011-06-18T09:32:56 this seems dubious 2011-06-18T09:33:00 yeah, try to handle everything savely 2011-06-18T09:33:06 f 2011-06-18T09:33:23 I handled everything without error that i didnt understand, but I assumed an 32-bit int was enough 2011-06-18T09:33:43 as you see above for -7071849184568392803 you need 64-biz 2011-06-18T09:33:46 what's that player_seed doing exactly ? 2011-06-18T09:33:55 int are 64 bits are hope. 2011-06-18T09:33:59 i hope. 2011-06-18T09:34:05 what programming language? 2011-06-18T09:34:08 c 2011-06-18T09:34:19 hm... maybe 2011-06-18T09:34:30 yeah, first i wrote that it would error out, if it were to encounter an unknown command, specs changed, i didnt know, and my bot just didnt work on the server, cause it received player_seed, it didnt expect 2011-06-18T09:34:40 even so, why does my thing crash i still wonder 2011-06-18T09:34:58 it's not in the spec 2011-06-18T09:35:12 thats long isnt it? 2011-06-18T09:35:17 int is 32 bit 2011-06-18T09:35:30 i think i simply ignores those lines 2011-06-18T09:35:39 so why do my thing time_out i wonder 2011-06-18T09:35:48 long int 64 long long int if theres such 128 2011-06-18T09:35:58 oh 17 rows, 19 cols 2011-06-18T09:35:58 you can always check with sizeof(int) 2011-06-18T09:36:02 i don't know if i can handle that 2011-06-18T09:36:21 i canot handle to small map i think 2011-06-18T09:36:21 im sure int is the size of float which is 32 bit 2011-06-18T09:37:43 ah right it was long that changes size, right? 2011-06-18T09:38:46 yeah, long or long int 2011-06-18T09:45:32 *** Accoun has quit IRC (Read error: Connection reset by peer) 2011-06-18T09:45:49 *** Chris_0076 has joined #aichallenge 2011-06-18T09:50:40 *** Zaphus has quit IRC (Quit: Page closed) 2011-06-18T09:51:20 why do i time out, when i do issued a go grrrr 2011-06-18T09:52:20 what the hell is wrong with my go ? 2011-06-18T09:53:58 sorry, my eyelids are heavy, so i go now to mow lawn 2011-06-18T09:54:03 good luck 2011-06-18T09:54:24 *** locutus2 has quit IRC () 2011-06-18T09:56:21 *** chris__0076 has joined #aichallenge 2011-06-18T09:57:45 *** Chris_0076 has quit IRC (Ping timeout: 264 seconds) 2011-06-18T10:00:32 why can't i output a go, what's going wrong, heeeeelllll ! 2011-06-18T10:00:42 it works when i used the console 2011-06-18T10:00:50 and doesn't when the engine is used 2011-06-18T10:00:55 it renders me mad 2011-06-18T10:01:01 or 2011-06-18T10:01:05 or i have to flush it ? 2011-06-18T10:01:07 maybe 2011-06-18T10:01:10 what do you think ? 2011-06-18T10:02:46 that was it !!!!! arrrrr 3h hours for a damn flush. why don't the engine flush it. 2011-06-18T10:04:20 * berak facepalms 2011-06-18T10:12:47 *** chris___0076 has joined #aichallenge 2011-06-18T10:12:51 *** chris__0076 has quit IRC (Ping timeout: 246 seconds) 2011-06-18T10:16:48 *** Accoun has joined #aichallenge 2011-06-18T10:19:38 stocha: :) 2011-06-18T10:19:56 i still wonder what's caused all the timeouts/crashes on the beta server before 2011-06-18T10:19:57 *** chris___0076 has quit IRC (Ping timeout: 264 seconds) 2011-06-18T10:20:01 are games actually running atm? 2011-06-18T10:20:06 i thought janzert stopped it? 2011-06-18T10:20:32 stocha: did you notice I added a forum post as per your suggestion? 2011-06-18T10:21:59 mleise: i think your "you kill an ant if..." description is less clear as to how to actually process battles well, but i could be wrong? 2011-06-18T10:23:19 antimatroid: no i didn't notice yet, but i think it was a good thing to do. Now we have to convice people to read the forum :p 2011-06-18T10:23:25 (wich i don't do anymore) 2011-06-18T10:23:48 yeah i don't anymore either, but there is a note on the main page of the beta site, a forum post and i've updated the specs page 2011-06-18T10:23:58 so not much more we can really do to indicate that change 2011-06-18T10:24:09 not being clear enough has always been one of hte contests problems 2011-06-18T10:24:17 antimatroid: i don't find your post 2011-06-18T10:24:28 it's in the development and tools part 2011-06-18T10:24:45 do i have access to that ? 2011-06-18T10:24:52 i think so 2011-06-18T10:25:05 http://ai-contest.com/forum/viewforum.php?f=25 2011-06-18T10:25:49 http://aichallengebeta.hypertriangle.com/visualizer.php?game=27374&user=16 2011-06-18T10:26:28 yeah they seem to run quite fine lately. 2011-06-18T10:26:50 to bad i just finished my c bot rewrite :p 2011-06-18T10:27:21 did you guys do something about the java crash ? 2011-06-18T10:27:30 or is it only a lucky roll 2011-06-18T10:27:40 i don't think anything was done about it 2011-06-18T10:28:24 i have at least the statifaction of running the only c bot. 2011-06-18T10:28:28 single c bot. 2011-06-18T10:28:45 erm? 2011-06-18T10:29:02 it's supposed to be some kind of superbuggy stocha_light_ref written in bad C :p 2011-06-18T10:29:07 you are paratrechina? 2011-06-18T10:29:20 (it doesn't use the greedy food collection) 2011-06-18T10:29:49 stocha: I still think you should give my c++ bot a go 2011-06-18T10:29:53 paratrechina ? can it be eaten ? 2011-06-18T10:30:06 your c++ bot a go ? what does that mean ? 2011-06-18T10:30:08 http://aichallengebeta.hypertriangle.com/language_profile.php?language=C 2011-06-18T10:30:17 stocha: as in have a play with it yourself 2011-06-18T10:30:27 i think you will find it's much easier to write a bot with that than c 2011-06-18T10:30:57 c++ is one of the first langage i tryed to learn along with pascal and 68000 assembly. 2011-06-18T10:31:10 if i don't write in, trust me, it's because i don't want to :) 2011-06-18T10:31:35 i'm quite happy with java most of the time 2011-06-18T10:31:47 when i'm not, C is as good as C++ if not even better. 2011-06-18T10:32:15 yeah you are right. there are TWO c bots :'( 2011-06-18T10:32:36 i thought it was just you after your comment cause of the country :P 2011-06-18T10:33:13 mmm seems to have a problem with water my poor litle boy 2011-06-18T10:35:35 mcstar: imo if we were to do something like the above with water, i'd be inclined to have an ant walking on water die but for that to turn the square into land 2011-06-18T10:35:44 so you can suicide your bots into water to clear it out 2011-06-18T10:36:09 simple rules are good 2011-06-18T10:40:56 i could be happy with this rule 2011-06-18T10:41:03 although one ant is maybe not enougth 2011-06-18T10:41:10 it has to cost really quite a lot 2011-06-18T10:41:21 maybe 2 ants ? (and certainly an int value in there) 2011-06-18T10:41:35 then wen can start trying with 1 2011-06-18T10:41:51 i don't like how complicated that would have to be 2011-06-18T10:41:52 i'd rather it be 2. Then random moving bots won't destroy water to quick :p 2011-06-18T10:42:11 even if we had disappearing water that would be a pretty big change needed for all bots 2011-06-18T10:42:17 i don't see if happening this late 2011-06-18T10:42:36 you would need to change the protocol communication somehow 2011-06-18T10:42:44 send water information each turn 2011-06-18T10:43:01 it might almost actually need no change to the actual bots 2011-06-18T10:43:01 you can send destroyed water also 2011-06-18T10:43:11 that's quite messy 2011-06-18T10:43:15 it's like the 'r' lines 2011-06-18T10:43:30 and they were considered too hard to explain if i recall correctly? 2011-06-18T10:44:13 stateless is way better. But arguable, seen water will cost quite something to send. 2011-06-18T10:44:15 george1914: have you noted the change to battle resolution? 2011-06-18T10:45:26 *** UncleVasya has joined #aichallenge 2011-06-18T10:47:35 i also updated the values on the specs page (on github) for whoever mentioned a while ago there were heaps of errors on there 2011-06-18T10:47:58 i think all parameters given in places are correct for current settings 2011-06-18T10:50:53 *** onensora has quit IRC () 2011-06-18T10:54:40 antimatroid: i had a look at your post. I think people that reads it will hardly disagree. Maybe you should go to politics :p 2011-06-18T10:55:44 let's wait and see how it goes. It will be quite a shock for people that tryed to have a basic solver for damage battle resolution. if there are any. 2011-06-18T10:55:52 stocha: i wouldn't last in poltics more than a week without killing myself from infuriation :P 2011-06-18T10:56:04 stocha: it shouldn't be too bad for such people 2011-06-18T10:56:19 provided they did it intelligently, they out to be able to just change the function used for that part 2011-06-18T10:57:00 i sure am happy not to have tryed anything. 2011-06-18T10:57:09 because you most probably would call me an idiot. 2011-06-18T10:57:24 i wrote state iteration functions a while ago 2011-06-18T10:57:35 and i could flick which battle option it used by changing a function call 2011-06-18T11:00:11 my c bot works locally. it doesn't seems to work on the server :p 2011-06-18T11:00:40 there were unknown problems on the server before 2011-06-18T11:00:59 they seemed to show up around when janzert updated the battle resolution, but we don't think that should have really affected the current bots 2011-06-18T11:01:10 well it behaves like the water is not spoted 2011-06-18T11:01:11 he tried reverting it and still had the same timeout/crash issues 2011-06-18T11:01:21 stocha: are you clearing water information each turn? 2011-06-18T11:01:32 not that i know 2011-06-18T11:01:42 who knows what's happening 2011-06-18T11:01:46 what about looking for 'w'? 2011-06-18T11:01:53 make sure it's not '%' or 'W' 2011-06-18T11:01:58 i could see myself screwing that up 2011-06-18T11:02:00 otherwise no idea :P 2011-06-18T11:02:12 it seems to behave okay on my local games, both in my framework and the official (from a few weeks ago) 2011-06-18T11:02:30 *** sigh has joined #aichallenge 2011-06-18T11:02:56 sigh: we've gone back to power (which we're renaming occupied) with attack2 = 5 2011-06-18T11:03:59 mm i see strange thing on the local official stuff too :p 2011-06-18T11:04:15 such as? 2011-06-18T11:19:26 *** stocha has quit IRC (Ping timeout: 252 seconds) 2011-06-18T11:31:11 *** smiley1983 has joined #aichallenge 2011-06-18T11:33:07 go go go Ukraine! ;) 2011-06-18T11:33:09 smiley1983: we changed the battle resolution :P 2011-06-18T11:33:44 antimatroid: on the server too? 2011-06-18T11:33:58 i think it's still the new one on the server 2011-06-18T11:34:01 antimatroid: is there documentation? or should I read IRC logs to find out how? 2011-06-18T11:34:04 *** Naktibalda has joined #aichallenge 2011-06-18T11:34:07 we had some weird problem when we changed it over that we think was unrelated 2011-06-18T11:34:17 smiley1983: http://ai-contest.com/forums/viewtopic.php?f=25&t=1411&sid=299b43a8adb912c8db6d87408b409a04 2011-06-18T11:34:21 smiley1983: there's a post in the forums and a comment on the main page of beta 2011-06-18T11:34:36 and i've updated the specs page on github 2011-06-18T11:35:17 Thankyou for telling me :) I'll go and read about it now 2011-06-18T11:38:10 i wish programmers knew more maths 2011-06-18T11:38:44 it's easiest to understand it as a dies if there exists b in enemies(a) st |enemies(b)| >= |enemies(a)| 2011-06-18T11:40:09 erm, <=** :P 2011-06-18T11:43:19 antimatroid: i feel so stupid, cause few days ago you ask me to try to find block for "occupied method" and I say "should be blockable also" without further investigating... 2011-06-18T11:44:25 antimatroid: i feel that the current change can work, the only problem that i can see is that kill/death ratio is near to 1 (so positioning in battle have less importance), but way better that kill/deah = 0 against perfect blocking 2011-06-18T11:46:48 carlop: it was blockable with attack2 = 4 2011-06-18T11:48:27 yeah, i've done some experimenting, with attack2=4 4 corridor are blockable, with attack2=5 only 2 corridor 2011-06-18T11:48:57 compared to the 6 (or 7) corridor of the damage method seem work great 2011-06-18T11:49:56 i always liked occupied way more than damage anyway 2011-06-18T11:50:05 i'm actually pretty stoked we've come back around to it 2011-06-18T11:52:50 *** |UncleVasya| <|UncleVasya|!kvirc@31.144.214.128> has joined #aichallenge 2011-06-18T11:53:44 http://www.codelord.net/2011/06/18/statistics-of-62k-passwords/ :D 2011-06-18T11:54:46 *** UncleVasya has quit IRC (Ping timeout: 260 seconds) 2011-06-18T11:54:52 *** sigh has quit IRC (Quit: This computer has gone to sleep) 2011-06-18T11:55:24 lol @ 1 char passwords 2011-06-18T11:56:19 roflmao "123456 [...] followed by it’s “more secure” cousin 123456789" 2011-06-18T11:56:24 hehe 2011-06-18T11:56:29 the whole article is hold 2011-06-18T11:56:31 gold* 2011-06-18T11:58:28 *** sigh has joined #aichallenge 2011-06-18T12:00:40 ok i fail... i have the same password all over and get informed daily that another web service with my user data has been cracked (SEGA, most recently) 2011-06-18T12:02:10 i have the same 2 passwords all over the palce 2011-06-18T12:02:16 i pasted one of them in here a month or two ago 2011-06-18T12:02:27 i think i've changed the password for anything someone on here could think of though 2011-06-18T12:02:30 *** sigh has quit IRC (Client Quit) 2011-06-18T12:02:53 most importantly for git :P 2011-06-18T12:20:06 java has invaded the top 10 2011-06-18T12:20:15 that should be a bannable offense 2011-06-18T12:28:17 has anyone considered actually using a graph instead of a grid? 2011-06-18T12:29:25 I've been thinking about it, yes... don't know if it'll get implemented though 2011-06-18T12:29:47 or if the benefits would be worth it, but they probably would (I think) 2011-06-18T12:29:54 i think they would be 2011-06-18T12:30:01 i might try making it graph now 2011-06-18T12:30:18 would be great for path finding 2011-06-18T12:30:22 it's not a subject I'm very familiar with, though, so I'll be learning as I go 2011-06-18T12:30:33 yes, indeed 2011-06-18T12:30:37 i'm not great with graphs, but i can usually work it out 2011-06-18T12:30:57 and strategic decisions :) 2011-06-18T12:31:35 *** locutus2 has joined #aichallenge 2011-06-18T12:31:38 *** Chris_0076 has joined #aichallenge 2011-06-18T12:34:25 i think i'm sold 2011-06-18T12:35:46 smiley1983: i worked out how to "update" my heuristic information for my a* with multiple targets, but i don't think it's going to be any faster than just using bfs :( 2011-06-18T12:35:57 update it when i remove a target that is 2011-06-18T12:36:21 you could polygons work good for pathfinding, but here we have a lot of edges and the manhatten distance which creates multiple shortest paths 2011-06-18T12:37:00 antimatroid: bfs is still the fastest really? I don't want to believe that :( 2011-06-18T12:37:13 *** chris__0076 has joined #aichallenge 2011-06-18T12:37:32 mleise: i haven't programmed it, but this is for iteratively finding multiple targets 2011-06-18T12:37:47 the problem is with generating the heuristic information at squares 2011-06-18T12:38:03 i have h(x) := min_T mdist(x, T) where T are target locations 2011-06-18T12:38:42 i can either iterate through the set of targets for every square added to the search queue, or paint the information out for the entire grid at the start and update it every time i remove a target 2011-06-18T12:39:31 updating requires a bfs out from the removed target to information that isn't from it, then having those other squares on a priority queue which updates the information back in 2011-06-18T12:40:21 *** Chris_0076 has quit IRC (Ping timeout: 264 seconds) 2011-06-18T12:40:31 it's neat and all, but i think bfs will end up just being faster anyway 2011-06-18T12:42:30 *** chris___0076 has joined #aichallenge 2011-06-18T12:43:57 *** chris__0076 has quit IRC (Ping timeout: 264 seconds) 2011-06-18T12:49:54 antimatroid: did you see the comment the other day about it being possible to get the order of ant assignment to food from the order in which it's encountered during the search? It looks like that should be able to do it in one pass 2011-06-18T12:50:27 smiley1983: doesn't work that easily when you use updated ant location information 2011-06-18T12:50:46 once i collect a piece of food, the ants future location and availability along with the future new ant become sources for my search 2011-06-18T12:51:43 I've been thinking about that - wouldn't it be possible to add the extra sources during the search, and mark them as having a greater distance due to the lag? 2011-06-18T12:51:46 i think you'd need to be willing to collect the same piece of food with more than one ant to be able to do it in one pass 2011-06-18T12:52:00 smiley1983: hmm, dunno about that 2011-06-18T12:52:05 not if you mark the food as being collected during the search 2011-06-18T12:52:09 because you've already marked off squares that have been visisted? 2011-06-18T12:52:13 i think you need to start the search over 2011-06-18T12:52:46 *** chris___0076 has quit IRC (Read error: Operation timed out) 2011-06-18T12:53:06 graph is a bit messy 2011-06-18T12:53:10 ... yes... you're right, but it feels like it's so close to being possible. :) 2011-06-18T12:54:01 like, do i store vector > to make fast access? but then when i go to reset it i need to iterate over the water nodes 2011-06-18T12:54:03 *** chris___0076 has joined #aichallenge 2011-06-18T12:54:18 and similarly do i use vectors or sets when storing neighbour locations in GNodes 2011-06-18T12:54:25 when you say graph, do you mean grouping collections of grid locations as single nodes? 2011-06-18T12:54:33 sets are easier to remove information with water, vectors are faster 2011-06-18T12:55:14 yeah, I would have vector > grid, then each GNode is basically a square with "edges" to neighbours 2011-06-18T12:55:51 so you can remove the neighbours to water and never even have to worry about water 2011-06-18T12:56:06 yes, that makes sense 2011-06-18T12:56:59 if you used something like set grid, then you could just delete water nodes 2011-06-18T12:57:03 but it wouldn't be as fast 2011-06-18T12:57:29 erm, map grid*** 2011-06-18T12:58:02 would probably want GNode* then 2011-06-18T12:58:07 I've been wondering if there might be a better data structure for the graph, maybe some sort of tree, but I'm guessing that this is premature optimization :) 2011-06-18T12:58:21 *** boegel has quit IRC (Quit: Leaving) 2011-06-18T12:58:22 hmmm 2011-06-18T12:58:48 you basically get a tree when doing the search 2011-06-18T12:58:53 i don't think it would help much 2011-06-18T12:59:29 yes, so storing it that way would just be more difficult to implement without offering much 2011-06-18T13:06:11 without offering much? 2011-06-18T13:06:31 oh, nevermind 2011-06-18T13:06:36 i was thinking you were referring to the graph 2011-06-18T13:06:56 *** _flag <_flag!~flag@69-165-173-172.dsl.teksavvy.com> has joined #aichallenge 2011-06-18T13:06:57 no, just the over-engineering I was thinking of :) 2011-06-18T13:07:13 not having to call getLocation or search water squares sounds very appealing to me 2011-06-18T13:08:01 a problem is optimizing bfs (or a*), is that one have to optimize the whole process, so if for bfs you create an array of visited cell, set each cell to false, than do bfs, you already have complexity O(cell), so there is no reason to optimize other thing 2011-06-18T13:08:41 *** Naktibalda has quit IRC (Remote host closed the connection) 2011-06-18T13:09:05 the best that you can reach is still O(cell), instead of O(# cell <= than least distance food-ant) 2011-06-18T13:10:58 *** Naktibalda has joined #aichallenge 2011-06-18T13:16:38 a solution can be having a counter X of the number of times that you have run bfs, and update the visited matrix such a cell if visited iff the cell is set to X, in this way you don't have to initialize each time 2011-06-18T13:20:23 *** chris__0076 has joined #aichallenge 2011-06-18T13:23:06 *** olexs1 has joined #aichallenge 2011-06-18T13:23:33 *** chris___0076 has quit IRC (Ping timeout: 264 seconds) 2011-06-18T13:24:26 what's a better(shorter) name than neighbours 2011-06-18T13:27:37 <|UncleVasya|> nebrs? 2011-06-18T13:29:08 I used "neighbors" recently, but it's not much shorter :) 2011-06-18T13:29:41 I think |UncleVasya|'s is better 2011-06-18T13:30:04 perhaps "adj" would be clear enough, or perhaps not 2011-06-18T13:33:55 *** thib_ has joined #aichallenge 2011-06-18T13:34:02 hi 2011-06-18T13:34:33 *** chris___0076 has joined #aichallenge 2011-06-18T13:35:33 I've just learned this challenge was ongoing ! When is the deadline ? 2011-06-18T13:35:41 *** chris__0076 has quit IRC (Ping timeout: 240 seconds) 2011-06-18T13:36:45 is there someone here ? 2011-06-18T13:36:57 <|UncleVasya|> thib_: it's not even started yet. 2011-06-18T13:37:33 oh cool ! thank you, that's why there is no deadline on the website :) 2011-06-18T13:37:38 <|UncleVasya|> beta-test is ongoing. 2011-06-18T13:37:52 okay I understand now ! 2011-06-18T13:38:02 so when does it starts ? 2011-06-18T13:38:04 <|UncleVasya|> good lick 2011-06-18T13:38:07 <|UncleVasya|> *luck 2011-06-18T13:38:25 it starts when its done 2011-06-18T13:38:25 <|UncleVasya|> I hope in 3-6 weeks. 2011-06-18T13:38:42 sounds funny in this context 2011-06-18T13:38:44 ok thank you for the informations ! 2011-06-18T13:39:10 <|UncleVasya|> mleise: isn't it very optimistic? 2011-06-18T13:39:33 thib_: feel free to participate in the beta test, but languages with a virtual machine may crash 2011-06-18T13:40:12 <|UncleVasya|> thib_: we are very kind and fast-replying community. Do not afraid to ask more here or on the forums :) 2011-06-18T13:40:12 |UncleVasya|: I will wait for the final word on battle resolution. 2011-06-18T13:40:33 okay ! so it better to forget about java and come back to good c++ :) 2011-06-18T13:40:55 yes, we are actually nice to newbies. that's not something i know from a lot of other sites and chats 2011-06-18T13:41:53 that's cool ! 2011-06-18T13:42:10 thib_: once the challenge starts you can use Java of course, but I guess then you already have put so much work in a C++ bot that you don't want to switch. I'm using D by the way. 2011-06-18T13:43:16 I heard good things about D but I havn't tried it yet ! 2011-06-18T13:43:55 *** |UncleVasya| is now known as UncleVasya 2011-06-18T13:43:58 how long is the beta running ? 2011-06-18T13:44:41 From April 24 or something like that. 2011-06-18T13:44:42 *May 2011-06-18T13:45:16 nbors 2011-06-18T13:45:36 nbors? 2011-06-18T13:45:44 ah, ok 2011-06-18T13:45:47 yep, in physics we commonly use that 2011-06-18T13:45:53 neighbours -> nbors 2011-06-18T13:46:08 thib_: Unfortunatly the qualities of D are hidden. Without Alexandei's book on D2 you can get lost. There isn't much free documentation yet. 2011-06-18T13:47:17 For example there is a synchronized keyword, but you are supposed to use it on the whole class, not method by method. 2011-06-18T13:49:27 *** chris__0076 has joined #aichallenge 2011-06-18T13:50:34 antimatroid: stupid bots might not avoid water, they would make the life of stronger bots even easier, if water had disappeared permanently 2011-06-18T13:50:47 and i dont want 1 hive to help with another 2011-06-18T13:51:22 good bye all ! 2011-06-18T13:51:31 *** thib_ has quit IRC (Quit: Page closed) 2011-06-18T13:51:32 bye 2011-06-18T13:51:41 mcstar: i'm turning my grid into a graph :P 2011-06-18T13:51:47 *** chris___0076 has quit IRC (Ping timeout: 250 seconds) 2011-06-18T13:51:57 see, if land'd be placed in place of the water square, later in the game it would help other hives too, but i think its only fair if this is on for a couple of turns, while the scarificed ant's hive makes its move 2011-06-18T13:52:28 hm 2011-06-18T13:52:41 got a pretty high connectivity 2011-06-18T13:53:04 yes, i am doing it so i don't search water squares or have to call getLocation when path finding 2011-06-18T13:53:17 are you really representing the grid as a graph ???? why? its structure is soo simple, it can easily be generated 2011-06-18T13:53:32 the graph structure can still give me access like a grid 2011-06-18T13:53:46 i store food and alike as hashtables 2011-06-18T13:54:00 the row is the key, and the columns are the values 2011-06-18T13:54:04 i don't even know what hash tables are :\ 2011-06-18T13:54:20 so i can easily look up the row, and search a bit for the col 2011-06-18T13:54:39 come on, you must know them :D 2011-06-18T13:54:55 do you know python dictionaries? 2011-06-18T13:54:59 antimatroid: that's easy. it can be an array of linked lists 2011-06-18T13:55:03 do you know what are hash functions? 2011-06-18T13:55:11 not really 2011-06-18T13:55:24 would a map be a hash table? 2011-06-18T13:55:28 you can emulate it, but hashtables have some special properties 2011-06-18T13:55:37 when you look up an entry you compute the array index, called the hash (for example value % 13) for an hash array of length 13 2011-06-18T13:55:41 2011-06-18T13:55:51 then you iterate the list to find the concrete element 2011-06-18T13:55:54 or replace string with anything really 2011-06-18T13:55:59 okay, i think my tensor strategies use a type of hash function to work out the index 2011-06-18T13:56:07 although i have iteration functions to update the index value 2011-06-18T13:56:19 hash functions are a sort of compression 2011-06-18T13:56:24 like md5 2011-06-18T13:57:00 given a big chunk of data, it guarantees, that for a given number of bits it can represent N different objects 2011-06-18T13:57:17 its like lossy compression 2011-06-18T13:57:54 in cl hashtables are built in, and python's dictionaries according to my knowledge are really hashtables 2011-06-18T13:58:29 the point is, that its very fast to index them, i mean to retrieve any of its elements by key 2011-06-18T14:01:08 antimatroid: but you didnt answer me, did i convince you that water should disappear only for a couple of turns? 2011-06-18T14:01:27 mcstar: it's too late to make any kind of changes like that 2011-06-18T14:01:30 ALL bots would have to change 2011-06-18T14:01:37 the input format would have to change 2011-06-18T14:01:43 changes to the engine would need to be made 2011-06-18T14:02:15 *** chris___0076 has joined #aichallenge 2011-06-18T14:02:29 *** olexs1 has quit IRC (Quit: Leaving.) 2011-06-18T14:02:44 nonono, im interested regarding the part ONLY A COUPLE OF TURNS 2011-06-18T14:02:44 *** olexs has quit IRC (Quit: Leaving.) 2011-06-18T14:03:26 to implement it or not to i... is a whole diff. question 2011-06-18T14:03:35 *** Kingpin13 has joined #aichallenge 2011-06-18T14:04:47 *** chris__0076 has quit IRC (Ping timeout: 250 seconds) 2011-06-18T14:08:01 *** chris___0076 has quit IRC (Read error: Operation timed out) 2011-06-18T14:16:08 *** carlop has quit IRC (Ping timeout: 240 seconds) 2011-06-18T14:17:43 *** carlop has joined #aichallenge 2011-06-18T14:22:01 *** chris___0076 has joined #aichallenge 2011-06-18T14:28:36 mcstar, and remember, that you should only send your second best bed to the beta-server 2011-06-18T14:29:14 *** chris__0076 has joined #aichallenge 2011-06-18T14:29:17 *** chris___0076 has quit IRC (Read error: Operation timed out) 2011-06-18T14:29:35 bah, i my graph bot seems to work when i feed it input 2011-06-18T14:29:37 i think that comment is not titled to me 2011-06-18T14:29:49 but it crashes before it even gets to the first turn when i run it with the engine :( 2011-06-18T14:29:55 antimatroid: pl pretty pls can you answer my question? 2011-06-18T14:30:16 very said, my heart breaks 2011-06-18T14:30:16 no i don't think water should disappear :P 2011-06-18T14:30:32 aham 2011-06-18T14:30:36 ok 2011-06-18T14:31:15 berak: did you really said that to me? 2011-06-18T14:31:37 ahh, more stupid shaespeare jokes, ignore that 2011-06-18T14:32:23 alright, sry, havent seen any of his works, but i know i will watch Hamlet sometimes 2011-06-18T14:39:55 smiley1983: graph bot works now :) 2011-06-18T14:41:08 like in: a connected graph of locations ? 2011-06-18T14:41:35 yeah, i've just added vector neighbours to each square struct 2011-06-18T14:42:04 then added all the stuff to create the information and update it with water information, then also to not use getLocation except when creating the neighbour vectors :P 2011-06-18T14:42:16 sizeof(vector) 2011-06-18T14:42:55 <= 4 Locations which is just a struct with two ints 2011-06-18T14:43:46 yeah but the vector adds like 30 bytes more 2011-06-18T14:43:55 *** smiley1983 has quit IRC (Quit: leaving) 2011-06-18T14:44:01 i can live with that 2011-06-18T14:45:17 *** UncleVasya has quit IRC () 2011-06-18T14:47:07 how do you deal with the redundancy of it ? 2011-06-18T14:47:16 redundancy? 2011-06-18T14:47:34 think about path finding 2011-06-18T14:47:46 i never look at water squares and i never have to call getLocation 2011-06-18T14:48:18 and i can use the start up time to generate most of the information, i just have to update it when i get water information 2011-06-18T14:53:13 clearly over-engineering, but the pic reminds me somehow: http://www.cs.umd.edu/~mount/ANN/ 2011-06-18T15:00:37 i thought its gonna be Artificial Neural Networks, damn abbreviations 2011-06-18T15:01:03 *** chris___0076 has joined #aichallenge 2011-06-18T15:01:30 yeah dragged that in accicentally when browsing for neural networks lately 2011-06-18T15:02:29 *** chris__0076 has quit IRC (Read error: Operation timed out) 2011-06-18T15:03:15 pic reminds me, that there's quadtrees, space partitioning as well 2011-06-18T15:03:26 hattrick time! 2011-06-18T15:08:55 *** amstan has joined #aichallenge 2011-06-18T15:08:55 *** ChanServ sets mode: +o amstan 2011-06-18T15:10:37 look at those java bots shoot up the rankings ;) 2011-06-18T15:11:35 and seems sir_macelon has some actual tactics with his battles 2011-06-18T15:12:40 shat, time to put up something of value there 2011-06-18T15:16:16 *** chris__0076 has joined #aichallenge 2011-06-18T15:16:21 *** olexs has joined #aichallenge 2011-06-18T15:19:11 *** chris___0076 has quit IRC (Ping timeout: 240 seconds) 2011-06-18T15:26:17 *** chris___0076 has joined #aichallenge 2011-06-18T15:26:35 *** olexs1 has joined #aichallenge 2011-06-18T15:28:21 *** chris__0076 has quit IRC (Ping timeout: 276 seconds) 2011-06-18T15:28:52 <_flag> My bot gives a compilation error saying it cannot find "MyBot.c", however there is a MyBot.c in the archive. Any ideas anyone? 2011-06-18T15:29:11 *** olexs has quit IRC (Ping timeout: 276 seconds) 2011-06-18T15:32:05 there's something other named MyBot.* in your archive ? did you remove the *.o files before zipping ? 2011-06-18T15:32:16 <_flag> no and yes 2011-06-18T15:32:25 <_flag> I'm trying again with a .zip file 2011-06-18T15:32:29 ;( 2011-06-18T15:32:36 <_flag> And it worked 2011-06-18T15:32:42 <_flag> Apparently it doesn't like tar :( 2011-06-18T15:33:49 *** Accoun has quit IRC () 2011-06-18T15:35:11 <_flag> What's the timeout value on the server? I was about to beat sir_macelon and I timedout 2011-06-18T15:35:36 1 sec 2011-06-18T15:35:44 <_flag> Hmm... shouldn't be a problem then 2011-06-18T15:35:55 <_flag> Do you know what the system specs are of the worker? 2011-06-18T15:36:19 _flag: pretty weak 2011-06-18T15:36:36 <_flag> okay, I'll add more timeout checks to faster parts of the code then 2011-06-18T15:37:11 _flag: http://www.sshvm.com/ $14 plan 2011-06-18T15:37:33 <_flag> What's the plan for the actual contest? 2011-06-18T15:39:33 _flag: we don't have one yet 2011-06-18T15:39:44 we'll use ec2, ask janzert for more details 2011-06-18T15:44:31 *** Accoun has joined #aichallenge 2011-06-18T15:46:19 *** Naktibalda has quit IRC (Quit: ChatZilla 0.9.87 [Firefox 4.0.1/20110518052719]) 2011-06-18T15:48:44 _flag: was it a straight tar or gzipped tar (.tar.gz or .tgz)? 2011-06-18T15:50:09 <_flag> It was a straight tar 2011-06-18T15:50:17 also the current worker running (and most likely one that will be used for the contest) is an Ec2 High Memory Extra Large instance described at http://aws.amazon.com/ec2/instance-types/ 2011-06-18T15:50:30 _flag: ok, yeah it doesn't handle straight tar 2011-06-18T15:50:46 needs to be compressed as well 2011-06-18T15:50:57 <_flag> janzert: You should probably try to give a different error, rather than MyBot.c missing 2011-06-18T15:51:23 what was the extension on the file, just .tar? 2011-06-18T15:51:29 <_flag> yup 2011-06-18T15:51:31 I'm actually surprised it accepted it at all 2011-06-18T15:51:40 *** chris___0076 has quit IRC (Read error: Operation timed out) 2011-06-18T15:51:51 that code was completely rewritten since I last looked at it though 2011-06-18T15:55:48 _flag: your beta username is FlagCapper? 2011-06-18T15:55:54 <_flag> janzert: yes 2011-06-18T15:58:12 <_flag> has the worker been stopped? I was playing a ton of games and now nothing 2011-06-18T15:58:30 nope 2011-06-18T15:58:55 *** sigh has joined #aichallenge 2011-06-18T15:58:56 might have be in the midst of a few long games 2011-06-18T15:58:59 *** amriedle has joined #aichallenge 2011-06-18T15:59:35 also I seem to recall something about the scheduler is currently messed up and seems to go in streaks 2011-06-18T15:59:40 not sure if that was fixed yet 2011-06-18T16:00:05 <_flag> okay I'll just wait a bit 2011-06-18T16:00:17 <_flag> When I upload a new bot, is the old code replaced -- that is, deleted from the server? 2011-06-18T16:00:33 antimatroid: hi - battle resolution? i saw your thread on the forum, have not thought about it yet ... - have been writing a few map helper functions, etc recently ... 2011-06-18T16:00:43 <_flag> Because I'd like to test my bot briefly and then take it offline until the contest starts and I'm being paranoid 2011-06-18T16:00:51 *** sigh has quit IRC (Client Quit) 2011-06-18T16:01:14 the old submissions are left on the server 2011-06-18T16:01:42 so yes, you shouldn't really upload anything that you want to be sure remains secret 2011-06-18T16:02:00 although I think the chance of anything leaking is pretty low 2011-06-18T16:02:20 <_flag> Oh well, I guess it's a little late for that then. Probably won't matter though 2011-06-18T16:02:40 *** carlop has quit IRC (Read error: Connection reset by peer) 2011-06-18T16:02:56 I'm actually investigating your plain tar file now 2011-06-18T16:05:34 *** chris___0076 has joined #aichallenge 2011-06-18T16:06:20 *** amstan has quit IRC (Ping timeout: 246 seconds) 2011-06-18T16:06:36 gah, the unpacking code logs the return code of the command to unpack the archive it is given but doesn't actually check it to see if it succeeded 2011-06-18T16:06:40 *** amstan has joined #aichallenge 2011-06-18T16:06:40 *** ChanServ sets mode: +o amstan 2011-06-18T16:08:39 *** carlop has joined #aichallenge 2011-06-18T16:08:43 *** sigh has joined #aichallenge 2011-06-18T16:12:09 *** chris___0076 has quit IRC (Ping timeout: 264 seconds) 2011-06-18T16:25:56 aichallenge: janzert epsilon * rc45c50d / worker/worker.py : Check for and return any error when unpacking entry - http://bit.ly/lmHPFe 2011-06-18T16:27:41 *** Chris_0076 has joined #aichallenge 2011-06-18T16:32:33 *** zeLark has joined #aichallenge 2011-06-18T16:33:31 *** Chris_0076 has quit IRC (Read error: Operation timed out) 2011-06-18T16:36:53 contestbot: later tell McLeopold Unfortunately I think this probably needs to be a launch issue https://github.com/aichallenge/aichallenge/issues/179 2011-06-18T16:36:53 janzert: As you wish. 2011-06-18T16:40:00 amstan: is the beta server having some intermittent network connection problems right now? 2011-06-18T16:40:18 janzert: not sure, i'm having network problems myself, so i can't tell 2011-06-18T16:40:30 :/ ok 2011-06-18T16:40:52 but yeah, i can't ping it 2011-06-18T16:41:23 and actually just after I asked the ec2 worker script also died with a "no route to host" while trying to talk to it 2011-06-18T16:41:32 :) 2011-06-18T16:41:55 i see a red dot.. 2011-06-18T16:41:56 lol 2011-06-18T16:42:04 next to the host 2011-06-18T16:42:05 in the cp 2011-06-18T16:42:35 not a good sign generally 2011-06-18T16:42:44 and clicking it results to a long wait 2011-06-18T16:44:20 looks like it's back again 2011-06-18T16:44:42 now it's green 2011-06-18T16:44:50 but i still can't click i 2011-06-18T16:45:03 it didn't reboot 'cause my ssh session survived 2011-06-18T16:45:24 yeah, no, the only time it did a boot is when we brought it 2011-06-18T16:46:32 i think the vps guys are having some problems, the network graph shows 0 for about 20 minutes 2011-06-18T16:46:52 * janzert nods 2011-06-18T16:48:32 *** Chris_0076 has joined #aichallenge 2011-06-18T16:49:25 reddit now 404s 2011-06-18T16:49:37 * amstan panicks 2011-06-18T16:50:07 amstan: WFM 2011-06-18T16:50:07 looks like the beta server is unreachable again too 2011-06-18T16:51:03 WE ARE ALL GOING TO DIE! ITS HAPPENING NOW! 2011-06-18T16:51:20 * jbroman is raptured. 2011-06-18T16:51:27 reddit is back 2011-06-18T16:51:31 one of the ant reached the internet 2011-06-18T16:54:07 *** sigh has quit IRC (Quit: This computer has gone to sleep) 2011-06-18T16:54:44 Status: Offline 2011-06-18T16:54:46 wtf? 2011-06-18T16:55:08 now it's online 2011-06-18T16:56:23 <_flag> Workers are still not doing anything as far as I can see 2011-06-18T16:57:00 it seems like they're having network problems 2011-06-18T16:57:34 aichallenge: janzert epsilon * r2535177 / worker/jailguard.py : Catch IOError in jailguard when child stdin closes while writing to it - http://bit.ly/mlo9yH 2011-06-18T16:57:50 janzert: did you stop the worker? 2011-06-18T16:57:53 _flag: it is when it can connect to the main server 2011-06-18T16:58:02 amstan: the one running on the server itself yes 2011-06-18T16:58:10 it was timing out all bots last night 2011-06-18T16:58:15 oh, not cool 2011-06-18T16:58:21 *** Chris_0076 has quit IRC (Ping timeout: 264 seconds) 2011-06-18T16:58:21 yeah :( 2011-06-18T16:58:37 no idea why though 2011-06-18T16:59:25 _flag: you should only be getting a game about once an hour, those 13 games in a row are the scheduler bug 2011-06-18T17:00:16 of course it also means you might now be on the flip side of that bug and it isn't scheduling you for a while :( 2011-06-18T17:01:07 the good thing about having shut down the worker on the server itself is that java bots are doing much better now ;) 2011-06-18T17:01:11 <_flag> janzert: does resubmitting affect the bug? 2011-06-18T17:01:39 I really don't know, it shouldn't, but it also shouldn't happen in the first place :/ 2011-06-18T17:01:58 and no one has tracked down what is actually causing it yet 2011-06-18T17:16:15 *** Chris_0076 has joined #aichallenge 2011-06-18T17:16:53 *** berak has quit IRC (Remote host closed the connection) 2011-06-18T17:24:10 *** Chris_0076 has quit IRC (Ping timeout: 260 seconds) 2011-06-18T17:31:38 *** qacek has joined #aichallenge 2011-06-18T17:33:37 mleise: what do you think, should i even mention the water-land idea to the guys? 2011-06-18T17:40:51 *** Chris_0076 has joined #aichallenge 2011-06-18T17:41:10 mcstar: what would that be? water evaporating, water growing, ants step onto water to turn it into land, or something else? 2011-06-18T17:42:23 oh, its among them: ants could sacrifice themselfes, stepping onto water, forming bridges, and after a couple of turns the square would turn back to water 2011-06-18T17:42:46 thereby avoding the blocking problem 2011-06-18T17:43:36 I don't really mind it, but it was rejected quite a while ago 2011-06-18T17:43:52 not sure what the reason was 2011-06-18T17:44:28 antimatroid told me this late in beta a change like that would be infeasible 2011-06-18T17:45:00 i didnt know that you discussed it before, this bridging thing 2011-06-18T17:45:16 frontier thought it would be nice too 2011-06-18T17:45:20 it would require some small changes to the bot communication protocol I suppose 2011-06-18T17:45:24 *** Chris_0076 has quit IRC (Ping timeout: 240 seconds) 2011-06-18T17:45:42 I think it was mainly viewed as unnecessary complexity though 2011-06-18T17:45:48 *** stocha has joined #aichallenge 2011-06-18T17:45:59 but in the light of the recent events it might worth it 2011-06-18T17:46:07 yeah I don't think there really isn't much chance of it happening 2011-06-18T17:46:16 ok 2011-06-18T17:46:22 mcstar: recent events? 2011-06-18T17:46:30 too many negatives in that sentence but... :} 2011-06-18T17:46:32 you know, blocking 2011-06-18T17:46:50 argh, im confused 2011-06-18T17:46:55 what did you mean :D 2011-06-18T17:46:57 ? 2011-06-18T17:47:13 there is or isnt any chance? 2011-06-18T17:47:20 isn't 2011-06-18T17:47:30 is aichallengebeta down? 2011-06-18T17:47:49 qacek: it has been having network connectivity issues for a few hours 2011-06-18T17:48:28 so the java crash bug solved itself through ghost in the shell it seems. 2011-06-18T17:48:42 (love that one) 2011-06-18T17:49:06 stocha: remember I switched the main server worker off last night 2011-06-18T17:52:04 i had a bot to upload though :p 2011-06-18T17:52:40 a java one that is. i stoped my try at c bot, because java seems to work now. It might be only for a time though. 2011-06-18T17:55:03 hm, stocha without c is only stoha 2011-06-18T17:55:10 you want that? 2011-06-18T17:55:47 to clarify switching the main server worker off is why java bots work now, not why the beta server doesn't have network connectivity 2011-06-18T17:55:50 ;) 2011-06-18T18:00:21 what does the main server worker do ? 2011-06-18T18:01:08 workers run games and compile submissions, the main server worker is the one that happens to run on the same server as the website and database 2011-06-18T18:01:52 and has been the only worker running for most of the beta 2011-06-18T18:03:31 i totaly don't get it. if it is off, why do games run then ? 2011-06-18T18:03:41 and bot compiles 2011-06-18T18:04:00 because I started a worker on an Ec2 instance 2011-06-18T18:04:25 uh ? 2011-06-18T18:04:30 what's an Ec2 ? 2011-06-18T18:04:35 *** Palmik has quit IRC (Remote host closed the connection) 2011-06-18T18:04:39 amazon cloud servers 2011-06-18T18:04:57 oh 2011-06-18T18:05:06 that sound good then. 2011-06-18T18:05:49 time to find some dinner :) 2011-06-18T18:06:18 hopefully the beta server network stabilizes by the time I'm done 2011-06-18T18:08:01 i have made a bot stocha_greed_002. running the public bot some people already used for local testing. 2011-06-18T18:08:41 you can find the url with the jar for local testing in the user info. 2011-06-18T18:13:42 *** mceier has joined #aichallenge 2011-06-18T18:17:39 the ranking system is hard to figure out. 2011-06-18T18:18:10 we need stats on bot vs bot, to judge the pertinences 2011-06-18T18:18:57 for example, with games between sir_macelon and OlexandrT, see in how many sir_macelon ranked better. 2011-06-18T18:19:33 i mean games involving both, 2011-06-18T18:21:07 can i put more than one experiment on the test server ? or would that be bad ? 2011-06-18T18:21:46 (i already have a fun behavior in the stocha), i'd like to put the averaged of the behavior (between the ref greedy, and the the fun one) 2011-06-18T18:22:07 my local testing show both should be weaker than the ref_greedy_stocha 2011-06-18T18:22:36 well it's a beta server after all, stressing it up a bit can't hurt does it ? 2011-06-18T18:22:56 *** amstan has quit IRC (Read error: Operation timed out) 2011-06-18T18:22:58 i'll see that tomorow i guess 2011-06-18T18:29:50 *** amstan has joined #aichallenge 2011-06-18T18:29:50 *** ChanServ sets mode: +o amstan 2011-06-18T18:34:33 *** onensora has joined #aichallenge 2011-06-18T18:34:48 sto_greed_002 is third over 77 at this time :p 2011-06-18T18:41:02 fun thing : new account are at 30.0 But old account resubmission are at 0.0 2011-06-18T18:42:30 *** Zaphus has joined #aichallenge 2011-06-18T18:44:27 *** amstan has quit IRC (Remote host closed the connection) 2011-06-18T18:44:50 *** amstan has joined #aichallenge 2011-06-18T18:44:50 *** ChanServ sets mode: +o amstan 2011-06-18T18:45:01 zaphus: zaphus bot was pushed down by the java bots :p 2011-06-18T18:46:45 <_flag> The C bot will start pushing the java bots down as soon as the server allows it to play :/ 2011-06-18T18:47:05 wich c bot ? 2011-06-18T18:47:22 <_flag> Mine 2011-06-18T18:47:36 <_flag> See the rankings, the one that's dead at the top 2011-06-18T18:47:39 bah c is not good. i stoped it to get back to java :p 2011-06-18T18:47:47 <_flag> C > Java :) 2011-06-18T18:48:27 do you think you'll push sir_macelon down ? 2011-06-18T18:48:48 <_flag> I was beating him before until I timed out some games (which is a bug I just fixed), so yes 2011-06-18T18:49:22 have you looked at info of olexandrT. it's like he is making advertising :p 2011-06-18T18:49:29 *** amstan has quit IRC (Ping timeout: 250 seconds) 2011-06-18T18:49:58 _flag: would that be french or english canada ? 2011-06-18T18:50:03 <_flag> Might as well link to your work -- if you're good people will notice 2011-06-18T18:50:04 <_flag> english 2011-06-18T18:50:31 <_flag> stocha: http://aichallengebeta.hypertriangle.com/visualizer.php?game=27704&user=7 2011-06-18T18:50:48 yeah. i only hope company won't start puting a team on the ant project, only for advertising purpose :p 2011-06-18T18:51:13 mmm, c is too slow :p 2011-06-18T18:51:21 <_flag> haha 2011-06-18T18:51:32 how do you manage name space in c ? 2011-06-18T18:51:42 i had trouble with functions having the same name. 2011-06-18T18:51:55 it doesn't seems to use the signature to resolve the call or anything 2011-06-18T18:52:05 <_flag> My solution: don't name functions the same name 2011-06-18T18:52:14 <_flag> C doesn't have namespaces 2011-06-18T18:52:25 so i i have rand(int a) and rand (struct *t) i'll have name collision 2011-06-18T18:52:42 yeah, but how do you do with large number of functions ? 2011-06-18T18:52:56 or you just do it so you never have more than a few function in an application ? 2011-06-18T18:53:17 what about multiple implementation of the same function ? 2011-06-18T18:53:26 and overloading 2011-06-18T18:53:33 <_flag> Add prefixes to function names 2011-06-18T18:53:51 <_flag> Basically, if you need it then you should be using C++ 2011-06-18T18:53:52 that's what i though too. So you manually do the namespace i guess 2011-06-18T18:54:09 so you would only use C for small projects then ? 2011-06-18T18:54:22 <_flag> Small projects like the linux kernel :) 2011-06-18T18:54:49 do they have namespace in there ? 2011-06-18T18:55:35 <_flag> I don't think so, but I'm not a kernel developer so I can't be sure 2011-06-18T18:55:45 <_flag> It's all written in C though 2011-06-18T18:56:37 <_flag> You can also write libraries and call functions from libraries to avoid namespace problems 2011-06-18T18:57:04 what do you mean ? 2011-06-18T18:57:08 <_flag> So code can have divisons that aren't built into the language itself but still divide up the overall project 2011-06-18T18:57:12 don't libraries share the global namespace ? 2011-06-18T18:57:52 <_flag> Read this: http://stackoverflow.com/questions/2732555/overcoming-c-limitations-for-large-projects 2011-06-18T18:58:51 not that i really intend to make large project using c, mind you. i'm just curious :p 2011-06-18T19:00:19 <_flag> For me, the problem just never really comes up, however I agree for most things C++ is more practical. However, I like tinkering with low-level code, so if it was at all pratical I'd write programs in assembler :P 2011-06-18T19:01:46 what about Verilog then ? 2011-06-18T19:02:06 i was like : let's try to write my bot using Verilog ! 2011-06-18T19:02:09 then i can learn it. 2011-06-18T19:02:20 Assembly is both high level, and non standard. 2011-06-18T19:02:31 stocha: nice to see the Java bots being allowed to play - I assume someone fixed things ? 2011-06-18T19:02:35 <_flag> Never heard of it, could be interesting 2011-06-18T19:02:53 <_flag> Zaphus: I think the worker was upgraded to an EC2 one 2011-06-18T19:03:00 Verilog and VHDL are low level langages :p 2011-06-18T19:03:18 and you can find work if you know them well. 2011-06-18T19:03:30 _flag: Excellent, was waiting for that... now I can go do some more coding :-) 2011-06-18T19:03:34 i wich i was 15 year old. i would just dig into them :p 2011-06-18T19:04:00 Zaphus: why ? you don't do java do you ? 2011-06-18T19:04:26 I think the high-water mark (>")> should be removed, or only shown for your own bot or something, it's a bit annoying with lots of bots 2011-06-18T19:04:48 maybe it should be an option then. i find them fun though. 2011-06-18T19:04:51 stocha: No, but I didnt want to keep working on my C++ bot while it's opponents weren't getting a game 2011-06-18T19:05:37 Zaphus: it seems OlexandrT is strong enougth, to live without you, (la la la) 2011-06-18T19:05:53 stocha: they are fun, but they never time out and if opponents get stronger then the top watermarks will stay for ever 2011-06-18T19:06:08 <_flag> yay, the server is letting me play :) 2011-06-18T19:06:39 my poor ref bot droped from 3rd to 6th place 2011-06-18T19:06:48 stocha: My code is doing "barely enough" to win - now I have to do some smarts in there :-) 2011-06-18T19:06:50 i really find the ranking quite noisy. to say the least. 2011-06-18T19:07:05 combat rules is changing every day :p 2011-06-18T19:07:20 i have a few stuff i could work on though 2011-06-18T19:07:20 stocha: yeah, ranking should be reset on rules changes 2011-06-18T19:07:38 especially the tracking of ant ids could be welcome addition to my framework. 2011-06-18T19:08:02 Zaphus: i think the problem lies more in the ranking algorithm. 2011-06-18T19:08:31 when i can judge the bot strength looking at the game rank data, the algorithm seems to confuse itself. 2011-06-18T19:08:34 stocha: I totally disagree with you, the algorithm (TrueSkill) is a very good model for ranking (assuming it's been implemented correctly) 2011-06-18T19:08:56 I don't undertand why we don't use something more statistical. 2011-06-18T19:09:01 stocha: like what 2011-06-18T19:09:10 like an assume probability of being ranked higher in a game. 2011-06-18T19:09:20 ? 2011-06-18T19:09:24 so you have a value for each pair of bot then. 2011-06-18T19:09:30 <_flag> Zaphus: Does TrueSkill tend to stabilize over time? I get the impression the rankings are slight erratic 2011-06-18T19:09:38 <_flag> s/slight/slightly 2011-06-18T19:09:45 you try to find the best value for the probability that A will be ranked higher than B if they play in the same game. 2011-06-18T19:10:00 *** filter has quit IRC (Ping timeout: 276 seconds) 2011-06-18T19:10:31 it seems straight forward, and i don't thing it will break down worst than trueskill. It's dead simple to understand and agree for. 2011-06-18T19:10:43 somewhat objective. 2011-06-18T19:10:45 _flag: Yes, if the bots play consistently - but it's all about probabilities, and when two bots have similar ranking the odds are 50-50 on who will win, so then when they play one wins and goes up and the other goes down 2011-06-18T19:11:12 see probability is the way to go :) 2011-06-18T19:11:24 stocha: please show me how that works - I've done ranking algorithms for nearly 25 years, but I dont really understand what you are saying 2011-06-18T19:11:38 you don't ? 2011-06-18T19:11:50 to be fair, I've only just woken up :-) 2011-06-18T19:12:23 it sounds like you want Elo ranking, but to show the percentage rather than the number... ? or something... 2011-06-18T19:12:36 well, just asume that given two bot A and B that can play in the same game, their exist a probability P that gives the probability that A will be ranked higher than B in a game they both play. 2011-06-18T19:12:40 that's about it. 2011-06-18T19:12:56 the rest is math :p Wich i can't do, but i'm sure we can find everything already ready. 2011-06-18T19:13:05 yep, so thats both Elo and Trueskill, they both work that way 2011-06-18T19:13:25 *** mcstar has quit IRC (Quit: WeeChat 0.3.5) 2011-06-18T19:13:39 I'd like to see the pairs of probabilities then. 2011-06-18T19:13:47 BayesElo works in this way. 2011-06-18T19:13:48 With Elo, the difference in the score can be converted into the probability of A beating B 2011-06-18T19:13:58 *** filter has joined #aichallenge 2011-06-18T19:14:00 i don't know that Elo and TrueSkill do; 2011-06-18T19:14:09 stocha: then stop saying they are wrong :-) 2011-06-18T19:14:17 (from what i have read on this chat :p ) 2011-06-18T19:14:52 Show me the pairs of probabilities then. 2011-06-18T19:15:06 if they are based on that, it should be accessible. 2011-06-18T19:15:17 but i doubt the current trueskill ranking would be. 2011-06-18T19:15:32 from looking at the stats by nude eyes. it doesn't seems to make sense. 2011-06-18T19:15:54 stocha: can you give me a real example of what you'd see, and what it would mean ? 2011-06-18T19:16:12 the data is quite hard to find 2011-06-18T19:16:19 e.g. if we had Zaphus, Stocha and Greedy - what numbers would it show ? 2011-06-18T19:16:38 then you have to look at all games that involved a pair of them. 2011-06-18T19:16:45 yep 2011-06-18T19:17:01 and deduced pairs of probability (or here simply pairs of stats maybe :p ) 2011-06-18T19:17:05 yep 2011-06-18T19:17:13 but what are the pairs ? 2011-06-18T19:17:34 you A, B, C 2011-06-18T19:17:38 so pairs are A,B 2011-06-18T19:17:39 AC 2011-06-18T19:17:41 BC 2011-06-18T19:17:53 how does that boil down into a single ranking number though ? 2011-06-18T19:18:04 this game:http://aichallengebeta.hypertriangle.com/visualizer.php?game=27714&user=7, turn 221, position 59-118, seem that the visualizer don't draw correcty kill between opposide side of the map 2011-06-18T19:18:16 it give the probability that a bot will rank higher than another in a game they both play. 2011-06-18T19:18:48 so let's say from row stats you find that A>B in 50% of the cases 2011-06-18T19:18:50 so... would we see: Zaphus 93%, Stocha 92%, Greedy 10% as the scores ? 2011-06-18T19:18:55 and if you select an ant don't draw the ant attacking range on the other side of the map 2011-06-18T19:19:01 and B > C 78% 2011-06-18T19:19:07 and C > A 95% 2011-06-18T19:19:53 Zaphus: well, i think this pair ranking is good to have, from raw stats. Then you can build a linear ranking adding some hypothesis 2011-06-18T19:19:56 ah, I think I see - you dont want a ranking table, you want a ranking grid ? i.e. not a ranking but a table of stats 2011-06-18T19:20:07 for example that their exist a transitive ranking and such. 2011-06-18T19:20:32 i'd like the ranking grid to exists yes. And be accessible through queryes. 2011-06-18T19:20:40 then you can apply bayeselo and get a ranking. 2011-06-18T19:20:56 bayeselo i'm somewhat confident into. 2011-06-18T19:21:08 really, I feel the exact opposite about it :-) 2011-06-18T19:21:35 well even then, i'm confident that the ranking grid is a good starting point. 2011-06-18T19:21:49 with the pairs of probabilities. 2011-06-18T19:21:52 so if there were a ranking grid you'd probably be happy 2011-06-18T19:21:59 yeah. 2011-06-18T19:22:28 even if it doesn't agree with the ranking. i'd be happy to access the ranking grid through raw stats :p 2011-06-18T19:22:31 I'm sure someone with skill could code one up. maybe not a ranking of 5000x5000 but youx5000 2011-06-18T19:22:54 *** olexs has joined #aichallenge 2011-06-18T19:22:55 for example, ask how many time zaphus ranked higher in game played with sir_macelon 2011-06-18T19:22:57 in fact I have one in the local test code I use 2011-06-18T19:23:12 this game:http://aichallengebeta.hypertriangle.com/visualizer.php?game=27714&user=7, turn 221, position 59-118, seem that the visualizer don't draw correcty kill between opposide side of the map 2011-06-18T19:23:17 sorry 2011-06-18T19:23:40 i've some problem interacting with chatzilla... 2011-06-18T19:23:47 you maybe need to have queries. And calculate only those that are actually queried. 2011-06-18T19:24:08 e.g. http://pastebin.com/0wbUhYFZ (ignore the Elo, I havent converted my test code to TrueSkill) 2011-06-18T19:24:30 So for example if i end up being 56, i can show that i beat the 55 up to 51 with a good margin in the game local rankings most of the time :p 2011-06-18T19:25:44 yeah that"s the spirit :) Although you need to do that per version obviously. 2011-06-18T19:26:30 or was that local testing ? or only random generated hypothesis ? 2011-06-18T19:26:36 real local testing 2011-06-18T19:26:43 but yeah i would like that to be accessible 2011-06-18T19:26:49 man you have a lot of local bots :p 2011-06-18T19:27:22 every ranking methods have huge problem (cause is hard to sort a set that have only a partial order), but can be fun having a lot of statistic to watch 2011-06-18T19:27:22 *** locutus2 has quit IRC (Ping timeout: 240 seconds) 2011-06-18T19:27:32 yeah, that would be good. people will still argue that their score is wrong, see how z-019 does pretty well against stocha (better than 50-50) but is ranked way down, because it struggles against other lower bots 2011-06-18T19:28:23 yeah. but at least they would use the pair probabilities values, wich strangely very few people will argue about. 2011-06-18T19:28:37 and if the ranking is consistent with them, everyone will bend to it. 2011-06-18T19:28:47 yes, the main problem is people that don't understand that doen't exist a "true ordering", so complain cause they don't win the contes 2011-06-18T19:28:59 if they are not available, i'll never trust that someone else actually won the contest :p 2011-06-18T19:29:30 carlop: the idea of pairs, is to be outside of the ordering problem 2011-06-18T19:29:33 carlop: completely correct... there is no true ordering. 2011-06-18T19:29:52 you got a pair comparison problem. Which is less likely to be argued against 2011-06-18T19:29:54 stocha: but is hard that the ranking is contistent with every possible statistc 2011-06-18T19:30:11 best way to do the finals is actually not to use rankings but to do a swiss-draw or round-robin and tally wins, but thats not practical 2011-06-18T19:30:16 carlop: it doesn't need to be. but the statistics should be accessible 2011-06-18T19:30:20 (AFK for a few minutes) 2011-06-18T19:30:40 in a convenient way. 2011-06-18T19:31:04 the grid zaphus use are pretty good imho 2011-06-18T19:31:06 I think that the statisic should be accessible, and maybe later can be added this functionality 2011-06-18T19:32:06 and i think that a round-robin or swiss tournament at the end could be a good solution 2011-06-18T19:32:44 i only say i want to have access to a ready zaphus like statistics :p 2011-06-18T19:33:01 rather than being fed with a opaque trueskill judgement :p 2011-06-18T19:33:05 or maybe do all the contest with random opponent, then select the best four bot, and play a lot of games against each other, to find the "winne" 2011-06-18T19:33:10 ->winner 2011-06-18T19:33:26 the ranking can be used for wise pairing 2011-06-18T19:33:42 *** olexs has left #aichallenge 2011-06-18T19:33:43 you need less game between stronger and weakest bot, if they are always consistent 2011-06-18T19:34:03 than you would need for first and second rank bot for example. 2011-06-18T19:34:14 so uniform pairing is hardly the way to go. 2011-06-18T19:34:26 especially with 4000 bots 2011-06-18T19:34:32 stocha: totally agree, access to the statistics is the key to giving people what they want to see 2011-06-18T19:34:35 *** Kingpin13 has quit IRC (Quit: this used to be the life, but I don't need another one) 2011-06-18T19:35:27 so i say : let the ranking be used for helping improved pairing. But gives people something to schew on for determining which bot is good (ie : zaphus like statistics) 2011-06-18T19:35:27 yes, what i mean that can be a good thing to do the normal contest, then after a while do "the cut" and choose only top X bot (4-10), then play a lot of games only in this small group 2011-06-18T19:36:01 carlop: their would exists a lot of strategy for "efficient" pairing. I'm sure we can find official paper on the subjects. 2011-06-18T19:36:46 one wich will based upon probabilitie of pairs would be best obviously :p 2011-06-18T19:37:08 stocha: yes, it wouldnt be hard to figure things out. I have a set of numbers that gets all combinations of 3 bots played once, in matches with 6 bots, for the top 21 (it's actually a way of choosing lottery numbers, but it maps across) 2011-06-18T19:38:07 Zaphus: can you be more specific ? i'm not sure i understood. Although it sound good :p 2011-06-18T19:39:54 stocha: it's a coverage where every triple (1-2-3, 1-2-5, 7-9-10) exists only once, even though the games involve 6 bots (1-2-3-4-5-6) - very efficient 2011-06-18T19:40:02 or... do something like 400 games of 10 (swiss-draw style choosing, ranks 1,400,800,1200,...,4000) per match) - then take the top 5 from each game, now you have 2000, do it again, etc - until 10 remain 2011-06-18T19:41:05 stocha: in fact, it means every pair exists the same number of times (18 I think) - so it's pretty good 2011-06-18T19:41:09 ah so it's all about pairing then. i'm too woryed about pairing, strangely. Although obviously it theortically can break the contest. I simply doubt it will be the problem (unless trueskill is severly broken) 2011-06-18T19:41:48 Zaphus: but as i said, good pairing shouldn't be equi-probabilitie for each pair of bot 2011-06-18T19:42:06 because there will exists some kind of transitivity 2011-06-18T19:42:14 stocha: I just meant for finals, take the top 21 and play lots of games 2011-06-18T19:42:56 you could go for take 21 play lot of game. Then only go with 20 first. then 19 first. until only two left. 2011-06-18T19:43:20 it's all about exploring the important branches more 2011-06-18T19:43:54 i'm certain the confidence between 1st and 2d is more important than the confidence between 51st and 56th 2011-06-18T19:44:10 or there 15th and 21th 2011-06-18T19:44:14 yeah, the "problem" with any ranking system is that it's hard to understand the maths... finals are better played by just awarding points for wins (or position) and seeing who gets the most, given that everyone played the same number of games 2011-06-18T19:44:56 but the ranking system has two functions : one is good pairing (or not to bad one), and the other is bot ordering. Wich is not the same. 2011-06-18T19:45:02 although it's related :p 2011-06-18T19:45:24 i.e. everyone accepts the ranking systems in Chess or Go, but when they try to choose the world champion they actually see who wins a set of matches, not who had the highest ranking 2011-06-18T19:47:04 http://aichallengebeta.hypertriangle.com/visualizer.php?game=27763&user=107 2011-06-18T19:47:13 you know... I have the sql dump from a few days ago, with all match results (I assume) - in theory I have the data to generate those tables of "you vs everyone else" - if I only knew SQL :-) 2011-06-18T19:47:26 look at this game. The overwhelmingly leading bot score wise, end up loosing :p 2011-06-18T19:49:29 stocha: nice battles in that one, pity you couldnt keep alive.. need to find a perfect blocking corner and leave a couple in there so that you dont get eliminated and they dont get the bonus! 2011-06-18T19:49:48 lol :p 2011-06-18T19:50:08 or, i'll just advocate for more 1vs1 games :p 2011-06-18T19:50:40 although i end up agreeing that seeing the multiplayer game is fun a lot of the time. if fustrating. 2011-06-18T19:52:00 this map have a lot of possibility for perfect blocking and survive.... row 49, col 59, you can just block the 3 corrior (1 width) and survive forever with 6 ant 2011-06-18T19:52:11 anyone know SQL ? 2011-06-18T19:52:23 i knew it some time ago 2011-06-18T19:52:28 shoot if you have a question :p 2011-06-18T19:53:06 look at tunr 357 in that game i gave you the link 2011-06-18T19:53:36 the winner bot has 37 ant, and 162 score 2011-06-18T19:54:02 the first eliminated and last ranked at the end has 11 ant and 156 score 2011-06-18T19:54:13 but he fights better (the winner) 2011-06-18T19:54:25 and the second ranked has 35 ants and 215 score 2011-06-18T19:54:39 stocha: I want to find out who played in the game, and what order they finished in 2011-06-18T19:54:43 leviathan winning is just so unfair ! 2011-06-18T19:55:08 what's your data base like ? 2011-06-18T19:55:13 you have only one table ? 2011-06-18T19:55:25 what is the relational structure you use ? 2011-06-18T19:55:25 it's massive, it's the one from the Beta site 2011-06-18T19:56:37 i think the first step, would be to be more specific. About what table and relation you have available, and what synthesis you'd like to make specifically :p 2011-06-18T19:56:48 that would require understanding :-) 2011-06-18T19:57:28 yeah. your request is a standard user request : i don't know where i want to go, but i'd like you to point me the shortest way please. 2011-06-18T19:57:37 exactly ! 2011-06-18T19:57:38 :-) 2011-06-18T19:57:57 all the info is in Git in the SQL directory, if that would help 2011-06-18T19:58:06 Lewis Carol was a computer analyst was he not. 2011-06-18T19:58:17 i'm not a digger or hacker. 2011-06-18T19:58:44 maybe i had the potential when i was young. i don't think i'm that young anymore :p I want to do easy stuff now 2011-06-18T19:58:54 I'll bet I'm older than you :-) 2011-06-18T19:58:59 i'd rather learn Verilog if i had courage. 2011-06-18T19:59:06 yeah, let's bet. 2011-06-18T19:59:23 if you win, you give me credits. And if i do, i do. bet ? 2011-06-18T19:59:37 how do we compare your ages ? 2011-06-18T19:59:47 which decade were you born in ? 2011-06-18T19:59:50 do we ask historicall question or ? 2011-06-18T19:59:57 ah decade. what century first no ? 2011-06-18T20:00:02 lol 2011-06-18T20:00:10 60's for me 2011-06-18T20:00:10 i mean i could be 10. or 112 2011-06-18T20:00:28 mm, okay i think you won that fight, but not the war. 2011-06-18T20:00:44 lol. got to go play with my kid for a bit, back soon 2011-06-18T20:00:54 let's talk about the least meaningfull number then 2011-06-18T20:01:20 it's 2 o clock in there. For once my little girls actually sleep. And so does my fiancé 2011-06-18T20:01:25 i'm free ! 2011-06-18T20:01:27 (and tired) 2011-06-18T20:02:06 i'm from the 70's by the way. 2011-06-18T20:02:25 it's only one decade. could be as low as a few days of differences. 2011-06-18T20:14:53 *** stocha has quit IRC (Quit: Page closed) 2011-06-18T20:29:14 *** stocha has joined #aichallenge 2011-06-18T20:29:42 i want more 256x256 4 players maps, with 4 food spawn per turn. To see how the bot do then :p 2011-06-18T20:30:18 *** stocha has quit IRC (Client Quit) 2011-06-18T20:45:54 *** Redgis has quit IRC (Quit: ... mains libres) 2011-06-18T21:02:15 *** mceier has quit IRC (Quit: leaving) 2011-06-18T21:03:34 *** olexs1 has quit IRC (Quit: Leaving.) 2011-06-18T21:04:23 does the flag for ukraine not load for others? http://aichallengebeta.hypertriangle.com/flags/ua.png 2011-06-18T21:06:40 aichallenge: janzert epsilon * r446e9e8 / setup/worker_setup.py : Use ghc package for haskell language - http://bit.ly/ivwGVS 2011-06-18T21:07:28 aichallenge: janzert epsilon * r7b0d1e9 / (240 files): Remove executable bit from flag images - http://bit.ly/jUOLik 2011-06-18T21:07:33 *** Zaphus has quit IRC (Quit: Page closed) 2011-06-18T21:11:26 *** FireFly has quit IRC (Quit: swatted to death) 2011-06-18T21:12:14 *** onensora has quit IRC () 2011-06-18T21:24:38 *** amstan has joined #aichallenge 2011-06-18T21:24:38 *** ChanServ sets mode: +o amstan 2011-06-18T21:49:47 *** nux67 has quit IRC (Quit: Page closed) 2011-06-18T22:19:27 *** computerwiz_222 has joined #aichallenge 2011-06-18T22:21:11 *** computerwiz_222 has quit IRC (Remote host closed the connection) 2011-06-18T22:24:35 *** antimatroid has quit IRC (Read error: Connection reset by peer) 2011-06-18T22:24:51 *** antimatroid has joined #aichallenge 2011-06-18T22:35:33 bwark! 2011-06-18T22:43:23 *** amriedle has quit IRC (Ping timeout: 276 seconds) 2011-06-18T22:55:11 *** Fr4n has joined #aichallenge 2011-06-18T22:56:58 george1914: I made a graph :P 2011-06-18T23:04:35 *** antimatroid has quit IRC (Quit: Leaving.) 2011-06-18T23:04:59 *** antimatroid has joined #aichallenge 2011-06-18T23:09:30 *** antimatroid has quit IRC (Ping timeout: 255 seconds) 2011-06-18T23:13:06 *** Fr4n has quit IRC (Quit: Page closed) 2011-06-18T23:18:56 *** Accoun has quit IRC (Read error: Connection reset by peer) 2011-06-18T23:26:01 *** antimatroid has joined #aichallenge 2011-06-18T23:31:12 *** Accoun has joined #aichallenge 2011-06-18T23:32:25 janzert: have you looked at the pseudo code in my forum post about the change of battle resolution? 2011-06-18T23:32:35 i'm not very happy with the enemies(location) syntax 2011-06-18T23:43:24 antimatroid: not really 2011-06-18T23:43:40 http://ai-contest.com/forum/viewtopic.php?f=25&t=1411 2011-06-18T23:43:40 I glanced through it but didn't really study it at all 2011-06-18T23:44:05 i'm just trying to think of some syntax for the enemies(a) thing that will make it easier on people when they go to implement it 2011-06-18T23:44:11 I really don't think pseudo code or formulaic presentation is going to be a way to get new people to understand it 2011-06-18T23:44:26 really? 2011-06-18T23:44:31 yes, really 2011-06-18T23:45:00 we need something definitive for the specification of course 2011-06-18T23:45:31 but I doubt that most people will really understand it easily from that 2011-06-18T23:46:25 btw, does this load for you? http://aichallengebeta.hypertriangle.com/flags/ua.png 2011-06-18T23:46:36 Yes, I see a flag. 2011-06-18T23:46:39 yes 2011-06-18T23:46:55 (specifically, that of the Ukraine) 2011-06-18T23:47:09 ok, weird. my windows firefox refuses to load it 2011-06-18T23:47:16 ffail 2011-06-18T23:47:17 linux firefox loads fine