2011-11-05T00:01:50 ok - I'm totally confused now, should I do A* from food perpective or ant perspective, does that even matter or doesn't matter at all? 2011-11-05T00:02:26 *** mnstrspeed has quit IRC (Quit: Page closed) 2011-11-05T00:02:44 doesn't matter 2011-11-05T00:02:54 only matters if you want to do like.. 2011-11-05T00:03:03 path from one to everything.. 2011-11-05T00:03:20 to eg. figure out which ant is closest to the food: or figure out what target, is closest to the ant 2011-11-05T00:03:43 *** Larose has quit IRC (Quit: Leaving.) 2011-11-05T00:06:01 *** sigh has quit IRC (Remote host closed the connection) 2011-11-05T00:11:04 *** rebelxt has joined #aichallenge 2011-11-05T00:11:09 *** u_ has joined #aichallenge 2011-11-05T00:11:59 *** rebelxt has quit IRC (Client Quit) 2011-11-05T00:11:59 *** AndrewBC has joined #aichallenge 2011-11-05T00:13:42 if i save during a local game 2011-11-05T00:13:46 my bot responds lol 2011-11-05T00:13:54 by timing out though 2011-11-05T00:17:30 *** paulwal has quit IRC (Quit: Page closed) 2011-11-05T00:17:50 *** maysam has joined #aichallenge 2011-11-05T00:18:11 hi all 2011-11-05T00:18:59 *** treeform1 has joined #aichallenge 2011-11-05T00:19:13 how to distinguish anthill? 2011-11-05T00:19:30 for hill_loc in ants.my_hills(): 2011-11-05T00:19:36 for hill_loc, hill_owner in ants.enemy_hills(): 2011-11-05T00:21:06 how do i identify a specific ant 2011-11-05T00:21:11 *** praveen has joined #aichallenge 2011-11-05T00:21:37 ants are only kept track of by their coordinate 2011-11-05T00:21:46 yes 2011-11-05T00:21:57 ants.my_hills does not exist, are you sure 2011-11-05T00:21:58 ? 2011-11-05T00:22:22 Your starter bot should have code to identify hills 2011-11-05T00:22:45 for hill_loc in ants.my_hills() 2011-11-05T00:22:48 sorry 2011-11-05T00:22:48 i am looking at ants.php 2011-11-05T00:23:11 so if i want to keep a list of last moves 2011-11-05T00:23:16 i need to put my ants next turns coord into that list 2011-11-05T00:23:24 local variable in ur bot class 2011-11-05T00:28:34 ok? 2011-11-05T00:30:21 l 2011-11-05T00:30:40 *** praveen has quit IRC (Ping timeout: 265 seconds) 2011-11-05T00:32:22 *** yoden has quit IRC (Quit: Leaving.) 2011-11-05T00:32:47 *** analyst74 has joined #aichallenge 2011-11-05T00:35:48 I feel weird if something works straight after extensive modifications 2011-11-05T00:36:47 *** mwang has joined #aichallenge 2011-11-05T00:37:27 Right now I'm feeling very weird 2011-11-05T00:38:42 i got my script running pretty decent now i think 2011-11-05T00:38:47 my version before this got ranked 40 2011-11-05T00:39:02 skill 40* 2011-11-05T00:44:26 antimatroid: do you know why in C# System.Drawing isn't accessible? Would it be an hazard to enable it? We have Point, Lines, Circle, Rectangles with many interesting functions to design algo in the contest. 2011-11-05T00:47:10 sending my bot to fluxid 2011-11-05T00:47:20 see how bad i get creamed 2011-11-05T00:56:17 *** mwang has quit IRC (Ping timeout: 265 seconds) 2011-11-05T00:59:29 *** AVAVT has joined #aichallenge 2011-11-05T00:59:40 *** Ellos has quit IRC (Ping timeout: 265 seconds) 2011-11-05T00:59:48 whats a good way to get your ants to spread evenly away from the base 2011-11-05T00:59:55 mine all spread in the same general direction 2011-11-05T00:59:58 @tcp 2011-11-05T00:59:59 AVAVT: tcp could be http://ants.fluxid.pl/howto. 2011-11-05T00:59:59 which is good for mazes but not for open maps 2011-11-05T01:00:54 *** Antimony has quit IRC (Ping timeout: 256 seconds) 2011-11-05T01:01:18 wow... never thought it'd be possible for my C++ bot to be worse than my python bot 2011-11-05T01:01:25 :> 2011-11-05T01:01:51 C++ bot keeps timing out at round 1 :( 2011-11-05T01:02:04 C++ is more difficult to manage resources 2011-11-05T01:02:12 i suggest use python but use the science data structs 2011-11-05T01:02:16 bad loops 2011-11-05T01:02:16 you can get good performance 2011-11-05T01:02:38 instead of a list of lists or a dict im using a numpy array and its way faster 2011-11-05T01:02:50 That doesn't matter if you're doing Bad things 2011-11-05T01:02:57 lol 2011-11-05T01:03:00 c++ vs python it does 2011-11-05T01:03:06 No, it doesn't 2011-11-05T01:03:54 my BFS (searching paths for food) is implemented the same in python and C++ (same algorithm), yet it fails to find the path fast enough in C++ 2011-11-05T01:05:17 bad, or wrong code? 2011-11-05T01:06:20 that's what I'm trying to figure out... that must be the case 2011-11-05T01:06:33 I can't run the tcp client, error: File "tcpclient.py", line 153 print USAGE ^ SyntaxError: invalid syntax 2011-11-05T01:07:00 anyone knows why? Maybe because I installed both Python 3.2 and 2.7? ._. 2011-11-05T01:08:20 *** amstan_ is now known as amstan 2011-11-05T01:08:25 Specify 3.2 2011-11-05T01:09:18 instead of python script.y do C:\python32\python.exe script.py or something 2011-11-05T01:10:22 *** ecarpenter84 has quit IRC (Quit: Page closed) 2011-11-05T01:11:00 LOL so I decided to output the data... Moving From 107,107 To 103,102... my BFS on C++ is checking >10,000 nodes/squares... pretty much going through the whole map x.x 2011-11-05T01:11:39 10 000? 2011-11-05T01:11:42 hmmm... maybe my queue is backwards 2011-11-05T01:13:23 yup, it times out at ~12,000 2011-11-05T01:14:25 hmm 2011-11-05T01:15:34 *** Saulzar has joined #aichallenge 2011-11-05T01:15:47 hm what's the username & password to use for tcp client? The same as on the site or created on first connetion like IRC? 2011-11-05T01:16:40 AVAVT: it's created on 1st connection 2011-11-05T01:16:52 definitely not the same one from the site. 2011-11-05T01:16:57 ok, thanks :D 2011-11-05T01:17:00 unless you want to give that out. 2011-11-05T01:23:33 is there a way to wipe bot's stats from fluxid? 2011-11-05T01:24:30 don't think so. most people just use a different name 2011-11-05T01:28:16 *** Fandekasp has joined #aichallenge 2011-11-05T01:31:38 *** DigitalNinja has joined #aichallenge 2011-11-05T01:32:18 I hope fluxid is running some fancy machine learning on this to make a super bot. 2011-11-05T01:38:00 *** Jak_o_Shadows has joined #aichallenge 2011-11-05T01:40:28 *** icefox has joined #aichallenge 2011-11-05T01:40:45 *** Rinum has quit IRC (Ping timeout: 265 seconds) 2011-11-05T01:43:11 *** u_ has quit IRC (Quit: u_) 2011-11-05T01:56:55 *** foxbit has joined #aichallenge 2011-11-05T01:58:07 *** svujic has left #aichallenge 2011-11-05T01:58:29 *** foxbit has left #aichallenge 2011-11-05T02:06:59 - 2011-11-05T02:07:10 *** sigh has joined #aichallenge 2011-11-05T02:07:45 *** JorgeB has joined #aichallenge 2011-11-05T02:08:10 *** csdserver has joined #aichallenge 2011-11-05T02:12:52 *** Jak_o_Shadows1 has joined #aichallenge 2011-11-05T02:15:42 *** Jak_o_Shadows has quit IRC (Ping timeout: 256 seconds) 2011-11-05T02:15:57 *** smiley1983 has joined #aichallenge 2011-11-05T02:16:27 *** Chirmaya has joined #aichallenge 2011-11-05T02:18:11 *** twymer has joined #aichallenge 2011-11-05T02:18:33 Drinking + rewriting ant AI = fun times 2011-11-05T02:20:35 Oh... now I see what I have been doing wrong 2011-11-05T02:21:10 *** Extrarius has quit IRC (Ping timeout: 260 seconds) 2011-11-05T02:22:50 led moment 2011-11-05T02:24:26 Gotta love those =D 2011-11-05T02:27:55 *** xar0l has quit IRC (Quit: Page closed) 2011-11-05T02:28:20 *** djr__ has quit IRC (Quit: Leaving) 2011-11-05T02:35:50 *** cyphase has quit IRC (Ping timeout: 258 seconds) 2011-11-05T02:36:13 *** AVAVT has quit IRC (Quit: Page closed) 2011-11-05T02:36:17 *** Chirmaya has quit IRC (Quit: Page closed) 2011-11-05T02:37:02 *** smiley1983 has quit IRC (Ping timeout: 276 seconds) 2011-11-05T02:37:07 *** icefox has quit IRC (Quit: icefox) 2011-11-05T02:38:37 *** smiley1983 has joined #aichallenge 2011-11-05T02:40:29 *** icefox has joined #aichallenge 2011-11-05T02:40:57 *** DanielLC has joined #aichallenge 2011-11-05T02:41:12 Where's the documentation? 2011-11-05T02:41:30 I can't seem to figure out how ants.enemy_ants() works. 2011-11-05T02:43:40 *** icefox has quit IRC (Client Quit) 2011-11-05T02:43:49 Hello? 2011-11-05T02:44:51 Is there any way I can print data? 2011-11-05T02:46:00 just monitor error loh 2011-11-05T02:46:03 log* 2011-11-05T02:47:55 *** cyphase has joined #aichallenge 2011-11-05T02:48:34 How do I see the error log? 2011-11-05T02:48:45 All I've figured out how to do is see when it crashes. 2011-11-05T02:50:41 *** maysam has quit IRC (Ping timeout: 276 seconds) 2011-11-05T02:52:53 *** avdg1 has joined #aichallenge 2011-11-05T02:53:31 DanielLC: add -E to playgame.py arguments, and send your bot's log data to stderr 2011-11-05T02:53:31 Nevermind. I found it. 2011-11-05T02:54:32 *** ChrisH has joined #aichallenge 2011-11-05T02:55:24 @later tell janzert LOL about not being able to resubmit. ;) 2011-11-05T02:55:24 ChrisH: OK 2011-11-05T02:55:29 I was just running it from the command line and reading the errors from there. 2011-11-05T02:55:38 Being able to print would still be helpful. 2011-11-05T02:55:44 As would having documentation. 2011-11-05T02:55:51 *** avdg has quit IRC (Ping timeout: 260 seconds) 2011-11-05T02:56:10 janzert: ping I've got an idea for the game pairing code. 2011-11-05T02:56:20 DanielLC: what sort of printing do you want? 2011-11-05T02:56:54 What do you mean? 2011-11-05T02:57:03 Outputting it so I can read it. 2011-11-05T02:57:23 you can print data to stderr and read it in the game_logs dir if you use -E 2011-11-05T02:58:14 Will it be on the error thing on the terminal? 2011-11-05T02:58:25 no, just in the log file at the end 2011-11-05T02:58:31 I'm using Python, if that matters. 2011-11-05T02:58:53 *** grandiose has joined #aichallenge 2011-11-05T02:59:53 when you run playgame.py, it fills the screen with other data - if you add the -E flag, bot error streams are directed to game_logs/0.bot0.error (increment the second number for other bots) 2011-11-05T03:00:44 *** ccc has quit IRC (Quit: Textual IRC Client: http://www.textualapp.com/) 2011-11-05T03:01:07 *** twymer has quit IRC (Ping timeout: 255 seconds) 2011-11-05T03:01:07 so you can just begin every turn with printing "Turn %d" to stderr, followed by whatever other data you're interested in, and read the log to find out what's happening 2011-11-05T03:03:28 *** the-mgt has quit IRC (Read error: Connection reset by peer) 2011-11-05T03:03:45 *** the-mgt has joined #aichallenge 2011-11-05T03:04:20 *** acieroid has quit IRC (Read error: Connection reset by peer) 2011-11-05T03:04:32 *** acieroid has joined #aichallenge 2011-11-05T03:05:34 *** FlyinFish has joined #aichallenge 2011-11-05T03:05:55 How do I find the attack radius? 2011-11-05T03:06:19 *** analyst74 has quit IRC (Ping timeout: 260 seconds) 2011-11-05T03:06:20 *** FlyinFish is now known as analyst74 2011-11-05T03:06:59 *** sigh_ has joined #aichallenge 2011-11-05T03:07:20 *** DanielLC has quit IRC (Quit: Page closed) 2011-11-05T03:08:13 *** sigh has quit IRC (Ping timeout: 240 seconds) 2011-11-05T03:13:30 *** Jak_o_Shadows has joined #aichallenge 2011-11-05T03:14:49 *** treeform1 has quit IRC (Quit: Leaving.) 2011-11-05T03:16:10 @later tell janzert Here is an idea for game scheduling to consider: rather than pick one seed bot and the rest based on match quality, perhaps it would be better to pick one seed bot, then alternate between high match quality bots and bots that don't require a low sigma (but still have a similar mu). The idea would be to lower the sigma of more bots with one game, but still have half the bots have a low sigma to learn from. Other 2011-11-05T03:16:10 ChrisH: Aye, aye, sir 2011-11-05T03:17:18 *** ChrisH has quit IRC (Quit: Page closed) 2011-11-05T03:17:20 *** Jak_o_Shadows1 has quit IRC (Ping timeout: 276 seconds) 2011-11-05T03:23:30 *** replore_ has joined #aichallenge 2011-11-05T03:30:56 *** praveen has joined #aichallenge 2011-11-05T03:31:13 *** delt0r__ has quit IRC (Ping timeout: 245 seconds) 2011-11-05T03:38:05 *** tmandry has quit IRC (Ping timeout: 240 seconds) 2011-11-05T03:39:19 *** teriblus has joined #aichallenge 2011-11-05T03:39:33 hi 2011-11-05T03:39:48 i'm new to the challenge and i'm wondering what is the turn time limitation 2011-11-05T03:39:53 the website says 500 2011-11-05T03:40:01 but 500 what ? milisecond ? 2011-11-05T03:40:18 if it is milisecond, it depends on the pc you are using ... 2011-11-05T03:40:28 can someone explain or redirect me to the information ? 2011-11-05T03:41:37 *** grandiose has quit IRC (Quit: Leaving.) 2011-11-05T03:43:53 *** delt0r__ has joined #aichallenge 2011-11-05T03:51:08 *** bmh has quit IRC (Quit: bmh) 2011-11-05T03:51:18 *** a has joined #aichallenge 2011-11-05T03:51:44 *** a is now known as Guest25095 2011-11-05T03:52:21 *** Palmik has joined #aichallenge 2011-11-05T03:52:38 *** retybok_ has joined #aichallenge 2011-11-05T03:53:06 *** Guest25095 has quit IRC (Client Quit) 2011-11-05T04:00:52 *** foRei has joined #aichallenge 2011-11-05T04:00:53 *** cyphase has quit IRC (Ping timeout: 240 seconds) 2011-11-05T04:14:05 *** Jak_o_Shadows1 has joined #aichallenge 2011-11-05T04:14:13 *** cyphase has joined #aichallenge 2011-11-05T04:16:54 *** Jak_o_Shadows has quit IRC (Ping timeout: 244 seconds) 2011-11-05T04:17:21 *** Jak_o_Shadows1 has quit IRC (Remote host closed the connection) 2011-11-05T04:18:34 *** epicmonkey has joined #aichallenge 2011-11-05T04:21:14 *** JorgeB has quit IRC (Quit: Computer has gone to sleep.) 2011-11-05T04:22:07 *** Fandekasp has quit IRC (Ping timeout: 255 seconds) 2011-11-05T04:22:25 *** LouisMartin is now known as LouisMartinAway 2011-11-05T04:23:05 *** amstan has quit IRC (Ping timeout: 260 seconds) 2011-11-05T04:23:09 *** praveen has quit IRC (Ping timeout: 265 seconds) 2011-11-05T04:24:48 *** Fandekasp has joined #aichallenge 2011-11-05T04:25:51 *** retybok_ has quit IRC (Ping timeout: 248 seconds) 2011-11-05T04:28:11 *** bobbydroptable has joined #aichallenge 2011-11-05T04:28:37 *** smiley1983 has quit IRC (Ping timeout: 240 seconds) 2011-11-05T04:31:10 *** smiley1983 has joined #aichallenge 2011-11-05T04:36:03 teriblus: 500 miliseconds 2011-11-05T04:36:14 teriblus: those take 500milliseconds on every PC 2011-11-05T04:36:27 hum 2011-11-05T04:36:40 but some pc make more things in 500miliseconds than other 2011-11-05T04:37:05 depending on cpus 2011-11-05T04:38:18 *** retybok_ has joined #aichallenge 2011-11-05T04:40:49 sure. so be prepared for any range of speeds 2011-11-05T04:40:57 teriblus: true, but you're going to be using the same hardware as everyone else on the official servers. so the way to go is to have your bot recognize when it needs to stop crunching numbers and make do with what it got up to that point, regardless of the actual amount of operations it managed to squeeze into the time limit. 2011-11-05T04:40:59 though it will be very approximately a mid-range modern PC 2011-11-05T04:42:20 I just assume that if it doesn't time-out on my low end notebook, it won't on the server... So far it has worked pretty well :) 2011-11-05T04:42:43 and there is no information about this pc ? ok :) thanks for the answers 2011-11-05T04:43:04 teriblus: it will be a sandbox on an EC2 instance 2011-11-05T04:45:20 *** dvladim has joined #aichallenge 2011-11-05T04:47:51 *** retybok_ has quit IRC (Read error: Operation timed out) 2011-11-05T04:49:02 *** LouisMartinAway has quit IRC (Quit: Page closed) 2011-11-05T04:49:04 I have a few mechanics questions: What happens if I pick up 2 food in the same turn, will my ants spawn simutaniously (and 1 will die) or will it be queued for the next 2 turns? 2011-11-05T04:50:16 *** paulwal has joined #aichallenge 2011-11-05T04:50:38 foRei: it will be in your "hive", just like ants that cannot spawn because there is an ant sitting on your hill. so yes, they queue up. 2011-11-05T04:51:17 Perfect. thx =) 2011-11-05T04:51:53 just gonna jump in and state the obvious. next 2 turns: assuming you only have 1 ant hill 2011-11-05T04:52:17 :o 2011-11-05T04:52:22 You can have more than 1 ant hill? 2011-11-05T04:52:36 yes 2011-11-05T04:53:46 From the specs: For maps with multiple hills, 1 ant can be spawned at each hill if there is enough food in the hive. If there is less food in the hive than there are hills, each hill is given a priority. The last hill to have an ant on top is chosen last or the hill to have been touched the longest ago is chosen first. In case of a tie, a hill is chosen at random. 2011-11-05T04:54:34 *** antimatroid has quit IRC (Quit: Leaving.) 2011-11-05T04:54:35 *** antimatroid1 has joined #aichallenge 2011-11-05T04:54:50 I see, where do you find the specifics? I have only readen http://aichallenge.org/problem_description.php 2011-11-05T04:55:02 http://aichallenge.org/specification.php 2011-11-05T04:55:14 ty :) 2011-11-05T05:00:05 *** smiley1983 has quit IRC (Ping timeout: 240 seconds) 2011-11-05T05:05:29 *** Murashka has joined #aichallenge 2011-11-05T05:06:29 *** epicmonkey has quit IRC (Ping timeout: 240 seconds) 2011-11-05T05:07:07 *** xgetc25 has joined #aichallenge 2011-11-05T05:07:25 *** smiley1983 has joined #aichallenge 2011-11-05T05:08:46 I see in the bot input that "turntime" is passed each game. Is the turntime always 500 ms or can it vary? (To allow for more complicated calculations to occur) 2011-11-05T05:09:41 *** retybok_ has joined #aichallenge 2011-11-05T05:10:17 *** conor_f has joined #aichallenge 2011-11-05T05:10:26 i thought turntime was 1.5 seconds? is it really half a second? 2011-11-05T05:11:25 Yea 2011-11-05T05:11:29 I saw this earlier: [09:36:02] teriblus: 500 miliseconds 2011-11-05T05:11:32 So I assumed it was the turntime 2011-11-05T05:11:49 All the specs are on the site if you bother looking 2011-11-05T05:11:59 http://aichallenge.org/game_settings.php 2011-11-05T05:13:00 But it says that some of the settings may be changed, which is why I ask if that is true for turntime aswell? 2011-11-05T05:16:02 *** xoposhiy has joined #aichallenge 2011-11-05T05:17:43 foRei: yes 2011-11-05T05:17:47 foRei: it was 1s at the start 2011-11-05T05:17:51 *** xoposhiy has quit IRC (Client Quit) 2011-11-05T05:18:55 kk =) 2011-11-05T05:22:23 *** retybok_ has quit IRC (Ping timeout: 248 seconds) 2011-11-05T05:35:54 is fluxid down? 2011-11-05T05:46:31 *** SP_ has joined #aichallenge 2011-11-05T05:50:15 *** SP_ has quit IRC (Client Quit) 2011-11-05T05:52:35 *** Redgis has joined #aichallenge 2011-11-05T05:55:25 Garf: I seem to be connecting to fluxid (no game yet), if you retry you might get a game now 2011-11-05T05:58:18 no games 2011-11-05T05:59:21 *** kilae has joined #aichallenge 2011-11-05T05:59:58 *** Jak_o_Shadows has joined #aichallenge 2011-11-05T06:01:19 213.88.39.97 works, I get games instantly. Nothing on fluxid 2011-11-05T06:02:22 for(food_objectives_iter=food_objectives.begin(), int j=0; food_objectives_iter!=food_objectives.end(); food_objectives_iter++, j++) 2011-11-05T06:02:28 *** Fandekasp has quit IRC (Ping timeout: 255 seconds) 2011-11-05T06:02:48 where food_objectives is a list of Location structs 2011-11-05T06:03:04 error: expected primary-expression before ‘int’ 2011-11-05T06:04:06 *** pedrosorio has joined #aichallenge 2011-11-05T06:04:28 *** Murashka has quit IRC (Quit: Page closed) 2011-11-05T06:12:20 *** the-mgt has quit IRC (Ping timeout: 260 seconds) 2011-11-05T06:12:45 *** conor_f has quit IRC (Ping timeout: 260 seconds) 2011-11-05T06:14:30 *** overmind has joined #aichallenge 2011-11-05T06:15:25 *** Jak_o_Shadows1 has joined #aichallenge 2011-11-05T06:18:07 *** dvladim has quit IRC (Quit: Konversation terminated!) 2011-11-05T06:18:10 *** Jak_o_Shadows has quit IRC (Ping timeout: 260 seconds) 2011-11-05T06:18:12 *** yoR has joined #aichallenge 2011-11-05T06:20:01 Hi everybody, I'm new to the contest but have a question, is running all the games (online) deliberately slow? (it is maybe twice a day right now), or just a problem with resources? 2011-11-05T06:20:40 resources 2011-11-05T06:21:53 That is too bad, it is pretty hard if you currently start.. I don't have a lot of ideas on how most bots work, so I keep updating (which means I never get a decent I idea on where my real rank is) 2011-11-05T06:22:15 play on the one of the tcp servers... 2011-11-05T06:22:17 @tcp 2011-11-05T06:22:18 bugnuts: tcp could be http://ants.fluxid.pl/howto. 2011-11-05T06:22:28 Cool. thanks for the link 2011-11-05T06:22:48 Hadn't seen those yet :) 2011-11-05T06:22:52 although it looks like that might be hung right now. 2011-11-05T06:23:06 Play locally, watch some of the top replays 2011-11-05T06:23:24 *** Samuel_ has joined #aichallenge 2011-11-05T06:24:29 *** retybok_ has joined #aichallenge 2011-11-05T06:24:46 Obviously I'm also playing locally, but then I need some good bots, and writing those takes time 2011-11-05T06:27:22 *** paulwal has quit IRC (Ping timeout: 265 seconds) 2011-11-05T06:29:18 *** Samuel_ has quit IRC (Ping timeout: 265 seconds) 2011-11-05T06:32:17 *** fasteddie_ has joined #aichallenge 2011-11-05T06:36:54 *** grwip has joined #aichallenge 2011-11-05T06:36:59 *** olexs has joined #aichallenge 2011-11-05T06:39:13 *** choas has joined #aichallenge 2011-11-05T06:42:07 *** dvladim has joined #aichallenge 2011-11-05T06:43:06 *** csdserver has quit IRC (Read error: Connection reset by peer) 2011-11-05T06:43:08 here's another tcp server that was set up yesterday http://ants.emptybox.org/ 2011-11-05T06:43:15 cuz fluxid went down 2011-11-05T06:44:00 *** olexs has quit IRC (Quit: Leaving.) 2011-11-05T06:52:28 *** g0llum has joined #aichallenge 2011-11-05T06:56:42 *** eashoka has joined #aichallenge 2011-11-05T06:58:33 a close shave! http://aichallenge.org/visualizer.php?game=59340&user=66 2011-11-05T06:59:37 *** kaemo has joined #aichallenge 2011-11-05T06:59:39 *** antimatroid has joined #aichallenge 2011-11-05T06:59:44 *** antimatroid1 has quit IRC (Quit: Leaving.) 2011-11-05T07:01:02 what happens if you accidentaly leave logging code in and do attempt to create a file? 2011-11-05T07:02:23 *** xoposhiy has joined #aichallenge 2011-11-05T07:03:55 *** Ionic_Groove has joined #aichallenge 2011-11-05T07:05:38 *** avdg has joined #aichallenge 2011-11-05T07:09:25 *** avdg1 has quit IRC (Ping timeout: 240 seconds) 2011-11-05T07:12:27 tcp restarted. i've put pdb in case the same error happens again 2011-11-05T07:17:26 Fluxid : what's the url and client script ?. 2011-11-05T07:17:43 *** ikaros has joined #aichallenge 2011-11-05T07:19:18 @tcp 2011-11-05T07:19:19 Fluxid: tcp could be http://ants.fluxid.pl/howto. 2011-11-05T07:20:51 FluxId : thanks 2011-11-05T07:23:09 *** dvladim has quit IRC (Read error: Operation timed out) 2011-11-05T07:23:56 *** marijnfs has joined #aichallenge 2011-11-05T07:29:08 *** replore_ has quit IRC (Remote host closed the connection) 2011-11-05T07:31:36 *** ikaros has quit IRC (Quit: Ex-Chat) 2011-11-05T07:31:41 Yeah, nice to see the TCP game servers working 2011-11-05T07:32:21 Any free advice for somebody who just started? :-) What is the first thing I should improve...? I think it'll be interaction with enemy ants (because I have none atm) 2011-11-05T07:34:00 yor : work on food collection first 2011-11-05T07:36:06 I've already done quite a lot about that (I think) 2011-11-05T07:38:04 yoR : working on razing hills ? 2011-11-05T07:38:23 *** ikaros has joined #aichallenge 2011-11-05T07:39:02 Ah, now I know where my biggest problem is, getting stuck hehe: http://ants.fluxid.pl/replay.21356 2011-11-05T07:39:05 i played my first tcp game, this is great, instant feedback 2011-11-05T07:43:57 *** ikaros has quit IRC (Quit: Ex-Chat) 2011-11-05T07:44:25 i'd actually concentrate on exploration 2011-11-05T07:44:45 right now your bots are just walking about with no clear directive 2011-11-05T07:44:50 Yeah, that is more important :) 2011-11-05T07:45:30 yes you seem to have two or so ants exploring 2011-11-05T07:45:33 let them all do it 2011-11-05T07:46:04 lol i think those 2 ants just got lucky enough to get out of that part of the maze 2011-11-05T07:46:30 but they walk pretty directed 2011-11-05T07:47:15 *** mviel has joined #aichallenge 2011-11-05T07:47:42 Yes, I'll go with little bobbydroptables on that one :) 2011-11-05T07:47:58 *** kaemo has quit IRC (Ping timeout: 260 seconds) 2011-11-05T07:49:34 *** marijnfs has quit IRC (Quit: leaving) 2011-11-05T07:49:55 i've made a fork of berak's repo and pushed my changes... https://github.com/fluxid/ants-tcp if anyone's interested 2011-11-05T07:50:01 *** marijnfs has joined #aichallenge 2011-11-05T07:50:17 it includes local changes for my server like ip and host, sorry about that 2011-11-05T07:50:47 But no credit card details? 2011-11-05T07:51:12 nope ;) 2011-11-05T07:52:31 *** retybok__ has joined #aichallenge 2011-11-05T07:54:00 is there any admin here? 2011-11-05T07:54:16 *** BYDESIGN has quit IRC (Remote host closed the connection) 2011-11-05T07:54:16 *** nickjohnson has quit IRC (Remote host closed the connection) 2011-11-05T07:55:42 *** retybok_ has quit IRC (Ping timeout: 256 seconds) 2011-11-05T07:57:59 These servers are great indeed, you can already see I've improved exploration here: http://ants.fluxid.pl/replay.21381 2011-11-05T07:58:21 *** Migi32 has joined #aichallenge 2011-11-05T07:59:37 *** DataWraith has joined #aichallenge 2011-11-05T08:01:08 *** mviel has quit IRC (Ping timeout: 244 seconds) 2011-11-05T08:05:03 cool spread. how did you do it? 2011-11-05T08:07:34 *** ikaros has joined #aichallenge 2011-11-05T08:08:54 *** olexs has joined #aichallenge 2011-11-05T08:10:18 *** BYDESIGN has joined #aichallenge 2011-11-05T08:11:26 *** nickjohnson has joined #aichallenge 2011-11-05T08:12:18 *** mleise has joined #aichallenge 2011-11-05T08:16:39 I like BenJacksons idea with having 4 ants idling around his hill for protection 2011-11-05T08:18:24 foRei: I think I have seen it in other bots too 2011-11-05T08:19:04 would anyone like to do a matlab/octave bot? 2011-11-05T08:24:24 pedrosorio: as far as i have been able to gather, this challenge is supposed to be fun; why would anyone write matlab code _for fun_? 2011-11-05T08:26:46 *** dvladim has joined #aichallenge 2011-11-05T08:27:04 great now my script starts timing out :( 2011-11-05T08:27:28 :-/ 2011-11-05T08:29:56 *** mviel has joined #aichallenge 2011-11-05T08:31:20 *** Jak_o_Shadows1 has quit IRC (Remote host closed the connection) 2011-11-05T08:31:50 bqf: a matlab like language might actually be pretty good for this contest 2011-11-05T08:32:17 The only problem I see is for search algorithms like BFS 2011-11-05T08:32:49 bqf: xD 2011-11-05T08:32:59 I am using C++ which also isn't fun 2011-11-05T08:33:07 but some people actually enjoy matlab 2011-11-05T08:35:18 pedrosorio: to quote douglas adams: that bunch of mindless jerks will probably be the first against the wall when the revolution comes. 2011-11-05T08:35:49 seriously though - if you enjoy writing matlab code, more power to you! i for one cannot stand it and i would take C++ over it any day. 2011-11-05T08:36:37 sorry, gtg. i hope i didn't just start a language flamewar that i now cannot take part in. :) 2011-11-05T08:36:40 *** srk_gone is now known as sorki 2011-11-05T08:36:57 *** epicmonkey has joined #aichallenge 2011-11-05T08:37:17 xD 2011-11-05T08:37:32 someone was asking about matlab in the forums and there's no support for it 2011-11-05T08:37:35 Is there something like A* already implemented in the starter bots, or is that for me to optimize :D 2011-11-05T08:37:40 that's the only reason I asked 2011-11-05T08:37:49 foRei: nope there isn't 2011-11-05T08:37:52 foRei: there's a BFS in some of the starter bots 2011-11-05T08:38:00 used to mark tiles as visible each turn 2011-11-05T08:38:19 for A* you'll have to implement it yourself :) 2011-11-05T08:38:25 kk :) 2011-11-05T08:38:38 you can use BFS in a smart way though 2011-11-05T08:38:50 run it from a target across the whole map and you can get distances and pathfinding to it from every tile 2011-11-05T08:41:06 i.e.: everyone is using BFS 2011-11-05T08:41:22 or collaborative diffusion 2011-11-05T08:41:30 Like an influence map? 2011-11-05T08:42:59 yes 2011-11-05T08:43:25 ...hm, or maybe more like a brushfire algorithm. I'm fairly new to this stuff. 2011-11-05T08:44:41 can't get my diffusion to work properly ==" 2011-11-05T08:44:49 or, rather, it times out 2011-11-05T08:45:08 Are you already using a queue for it? 2011-11-05T08:47:15 *** Murashka has joined #aichallenge 2011-11-05T08:47:53 *** retybok__ has quit IRC (Ping timeout: 245 seconds) 2011-11-05T08:48:06 *** HaraKiri has joined #aichallenge 2011-11-05T08:48:14 *** Ellos has joined #aichallenge 2011-11-05T08:48:53 me? no bfs for diffusion 2011-11-05T08:49:23 So you do it all at once? 2011-11-05T08:49:29 yeh every turn 2011-11-05T08:49:32 probably why it's failing 2011-11-05T08:49:39 hard to do diffusion for things that move about 2011-11-05T08:49:45 Yeah. 2011-11-05T08:49:50 and for multiple targets 2011-11-05T08:49:56 with different scores 2011-11-05T08:50:05 You could use a queue to store the next field to expand, and check between fields if you have time left. 2011-11-05T08:50:15 That's not optimal, but at least you won't time out 2011-11-05T08:50:33 ...then again you could do that without a queue, too. %) 2011-11-05T08:51:15 I think I need to start timing different approaches 2011-11-05T08:51:30 well actually my original exploration routine was basically a diffusion of unexplored areas which worked well 2011-11-05T08:51:43 now i'm trying to make it such that explored areas "expire" after a while 2011-11-05T08:52:16 Interesting. I'm trying to work my way up from A* to more interesting searches such as D* Lite 2011-11-05T08:52:16 guys, got a little problem here, and can't seem to find the solution... 2011-11-05T08:52:34 I removed all the searhes for goals to check if my dispersion works 2011-11-05T08:52:43 Ellos: go we'll try to help 2011-11-05T08:52:53 pairofdice: mine does the death shuffle often :) 2011-11-05T08:52:55 play_one_game_live.cmd doesn't really work as it is supposed to 2011-11-05T08:53:07 the java app crashes 2011-11-05T08:53:15 Ellos: many people have said that, and they've often found out that they were using it wrong :) 2011-11-05T08:53:17 Exception IOError: IOError(22, 'Invalid argument') in <_io.TextIOWrapper name='< stdout>' mode='w' encoding='cp1252'> ignored 2011-11-05T08:53:17 bobbydroptable: I think I'm going to divide up the map into "rooms" and then only send 1 ant to re-explore an area 2011-11-05T08:53:24 Ellos: That usually means a bot crashed 2011-11-05T08:53:32 nope 2011-11-05T08:53:39 bobbydroptable: I've been watching the top bots and they seem to leave an event spread of ants that just wander around in a set area 2011-11-05T08:53:42 Ellos: Try adding the --capture_errors option in the cmd-file 2011-11-05T08:53:47 because when i run it without the java app then it does work 2011-11-05T08:53:48 even* 2011-11-05T08:54:12 thestinger I'm trying to achieve the same thing, but i don't like the square grid due to how maps can be laid out 2011-11-05T08:54:17 i'll try 2011-11-05T08:54:28 Ellos: paste the command you're using to run it 2011-11-05T08:55:26 i'm going to try a distance method : put waypoints at X distances from hills 2011-11-05T08:55:40 then figure out a way to push ants around the graph 2011-11-05T08:55:47 oh 2011-11-05T08:55:49 that's a good idea 2011-11-05T08:55:53 bobbydroptable: I'll eventually try to minimize fog-of-war around the hill 2011-11-05T08:56:03 bobbydroptable: that should automatically give me patrolling ants 2011-11-05T08:56:14 thestinger: it is a good idea, except that currently i don't know how to reduce the density of waypoints 2011-11-05T08:56:21 you can put a first tier of waypoints at X distance from your hill, then a second tier 2011-11-05T08:56:23 etc. 2011-11-05T08:56:26 that's actually a great idea 2011-11-05T08:56:28 :) 2011-11-05T08:56:52 i'll pastebin it 2011-11-05T08:56:57 Ellos: good idea. 2011-11-05T08:57:05 thestinger: Once you find an enemy hill, you can use that distance; the map symmetry will automatically place other hills at the same distance often :) 2011-11-05T08:57:24 thestinger: nice in concept, no idea how that would work in reality 2011-11-05T08:57:33 because it'd essneitlaly be a tree 2011-11-05T08:58:06 http://pastebin.com/ZdnDaThU 2011-11-05T08:58:08 and also waypoints will line up together into a circular shape 2011-11-05T08:58:32 Ellos: paste us the full command you use to run .cmd 2011-11-05T08:58:34 well, I'd be using BFS to measure the distance 2011-11-05T08:58:39 not the error message 2011-11-05T08:58:47 thestinger: oh, okay. 2011-11-05T08:58:52 so the layout would be based on the map 2011-11-05T08:59:07 python "%~dp0playgame.py" -So --engine_seed 42 --capture_errors --player_seed 42 --end_wait=0.25 --verbose --log_dir game_logs --turns 1000 --map_file "%~dp0maps\maze\maze_04p_01.map" %* "python ""%~dp0sample_bots\python\HunterBot.py""" "python ""%~dp0sample_bots\python\LeftyBot.py""" "python ""%~dp0sample_bots\python\HunterBot.py""" "python ""%~dp0sample_bots\python\LeftyBot.py""" | java -jar visualizer.jar 2011-11-05T08:59:31 DataWraith: this is just for foraging basically, I don't re-explore areas I haven't seen for a while atm 2011-11-05T08:59:36 currently just the standard command 2011-11-05T08:59:37 I do actually keep track of last_seen for each tile 2011-11-05T08:59:52 but just re-exploring them after a while made my bot suck 2011-11-05T08:59:53 because i also thought it could have been my bot 2011-11-05T09:00:34 strange, no? 2011-11-05T09:01:20 Ellos: "TypeError: 'NoneType' object is not iterable" I think this is the problem 2011-11-05T09:01:34 Ellos: The command-line looks good to me. 2011-11-05T09:01:36 uhuh, thought so too 2011-11-05T09:01:45 but i don't know where it comes from 2011-11-05T09:02:01 i even used the standard command-line 2011-11-05T09:02:03 *** grandiose has joined #aichallenge 2011-11-05T09:02:42 well, python gives you the line it happened on 2011-11-05T09:02:45 *facepalm* okay let's try this again. 2011-11-05T09:03:19 wait, maybe it is a bad map file? 2011-11-05T09:03:28 can you change the map to a different map? 2011-11-05T09:03:34 it is crying about width/height thingie 2011-11-05T09:03:49 hmm how come it does visualize afterwards when i use the non live version 2011-11-05T09:03:53 bobbydroptable: That's the visualizer, it does that when the engine doesn't give it good data because there was a problem 2011-11-05T09:03:59 oh 2011-11-05T09:04:10 yeah, there was a python traceback before that 2011-11-05T09:04:13 well Ellos: what i meant was paste the command you use to run the thingie 2011-11-05T09:04:20 you can ignore the visualizer stuff because the engine screwed up first 2011-11-05T09:04:22 bobbydroptable: He did above. 2011-11-05T09:04:33 did he? i just see error messages and the python command 2011-11-05T09:04:47 bobbydroptable: In the chat 2011-11-05T09:04:54 i mean what goes after "play_one_game.cmd" 2011-11-05T09:05:02 not what is inside play_one_game.cmd 2011-11-05T09:05:25 eh i just run play_one_game.cmd 2011-11-05T09:05:26 bobbydroptable: Something goes after "play_one_game.cmd" ? 2011-11-05T09:05:35 well for me i pass it the bot i want to play with 2011-11-05T09:05:44 and i pass command line arguments etc. 2011-11-05T09:05:51 well that is in the cmd already.... 2011-11-05T09:06:01 ./play_one_game.sh -e -I "python MyBot.py3" 2011-11-05T09:06:27 i know my way around windows, but this seems to be a python problem oid not something with cmd... 2011-11-05T09:06:38 well it is a python problem 2011-11-05T09:06:44 its a python exception at line 12 2011-11-05T09:06:45 because when i don't pipe it to the visualizer it worsk fine 2011-11-05T09:07:08 basically a null pointer exception 2011-11-05T09:07:18 Ellos: Hm. You could try upgrading to the latest tools package; Other than that I have no idea. 2011-11-05T09:07:21 error_logs variable is None 2011-11-05T09:07:31 so the java app is a bit picky (can't blame him) and the python engine gives wrong data 2011-11-05T09:07:57 just started with this, yesterday so i guess i have the latest version 2011-11-05T09:08:06 can't it be my python version? 2011-11-05T09:09:03 *** analyst74 has quit IRC (Ping timeout: 248 seconds) 2011-11-05T09:09:37 Ellos: Maybe. Python3 did not work when I tried, so I had to tell it to use python 2.7, but that's on Linux. 2011-11-05T09:10:07 Ellos: But a newer tools-package solved that, so yeah... :/ 2011-11-05T09:10:34 hmm i do have python 3.2 so that could be it.. 2011-11-05T09:10:40 and what is the command for that? 2011-11-05T09:11:43 and how do you guys, sort of target me in irc? so that i see your usernames in red.. 2011-11-05T09:11:56 By writing your name :-) 2011-11-05T09:11:58 Ellos 2011-11-05T09:12:09 your irc client will probably autocomplete names with tab 2011-11-05T09:12:14 ah 2011-11-05T09:12:32 ah lookey here 2011-11-05T09:12:41 DataWraith: i like this :) 2011-11-05T09:12:44 *** NotABug has joined #aichallenge 2011-11-05T09:12:47 ok i'm not sure why it is not working 2011-11-05T09:12:48 ^^ 2011-11-05T09:13:01 but take away --capture_errors argument 2011-11-05T09:13:12 bobbydroptable: 13 years old mode, told you so it was not my fault 2011-11-05T09:13:24 and that should avoid the error popping up 2011-11-05T09:13:35 bobbydroptable: I suggested adding that to see if a bot crashed 2011-11-05T09:13:45 bobbydroptable: Helped me with debugging immensely. 2011-11-05T09:14:13 bobbydroptable: the java app just totally crashes because it gets the wrong data so removing --capture_errors doesn't really work 2011-11-05T09:14:16 well that exception he pasted in pastebin came as a result of that command line argument. 2011-11-05T09:14:29 Ellos: its getting the wrong data because the python app is crashing 2011-11-05T09:14:29 bobbydroptable: Hm. Works for me. 2011-11-05T09:14:41 ehhh i will post the other exception 2011-11-05T09:15:16 and yes i'm leaning towards your suspicion that it is a python version issue 2011-11-05T09:15:46 bobbydroptable: thinking so too yes 2011-11-05T09:16:19 bobbydroptable: well here the error without --capture_errors http://pastebin.com/q1ChbaTx 2011-11-05T09:17:28 wait a minute 2011-11-05T09:17:38 the visualizer isn't meant to be run locally is it? 2011-11-05T09:17:41 its a applet 2011-11-05T09:17:48 bobbydroptable: Uh, no? 2011-11-05T09:17:55 no? 2011-11-05T09:17:59 bobbydroptable: It's a java app that loads the javascript visualizer IIUC 2011-11-05T09:18:14 huh. 2011-11-05T09:18:28 bobbydroptable: So it's perfectly valid to run it locally 2011-11-05T09:18:31 i'm just confused because i view my replays in the browser 2011-11-05T09:18:42 i'm just not sure if it is meant to get piped input like so 2011-11-05T09:18:53 well its in the tools.. 2011-11-05T09:18:56 The entire point of the play_one_game_live thing is to visualize it locally 2011-11-05T09:19:02 ye 2011-11-05T09:19:28 so were no step closer to an answer? 2011-11-05T09:19:30 well my play_one_game.sh scripts on unix don't pipe it 2011-11-05T09:19:38 bobbydroptable: Mine does? 2011-11-05T09:19:39 i'll try python 2.7 then 2011-11-05T09:19:59 bobbydroptable: Oh, wait. 2011-11-05T09:20:10 bobbydroptable: We're talking about play_one_game_live.sh 2011-11-05T09:20:15 ye 2011-11-05T09:20:32 *** teriblus has quit IRC (Quit: Page closed) 2011-11-05T09:20:40 bobbydroptable: Which is the visualized version of play_one_game.sh 2011-11-05T09:20:59 play_one_game_live 2011-11-05T09:21:27 ah we already knew that, nvm 2011-11-05T09:21:50 well alright then. 2011-11-05T09:21:54 so conclusion? 2011-11-05T09:21:58 try with a different python version 2011-11-05T09:22:02 k 2011-11-05T09:22:03 Ellos: What he said. 2011-11-05T09:22:13 i'm on os x so hard to tell 2011-11-05T09:22:42 could it be a 64bit problem? 2011-11-05T09:22:50 Unlikely. 2011-11-05T09:22:51 playgame.py should open up the visualizer anyway 2011-11-05T09:22:56 at least, my version doesn't 2011-11-05T09:23:05 i've never used play_game_live 2011-11-05T09:23:11 *does 2011-11-05T09:23:16 I just installed python and try to run play_one_game.cmd - I get the error "Python is not a recognized command", I assume that means python was not installed correctly? 2011-11-05T09:23:16 so, sorry. 2011-11-05T09:23:18 ah, well i like the visual feedback 2011-11-05T09:23:24 The live version is identical, except that it pipes the output to "java -jar visualizer.jar" 2011-11-05T09:23:32 you need to add it to the path env var 2011-11-05T09:23:32 i get the visual feedback too, just in a browser 2011-11-05T09:23:39 well how? 2011-11-05T09:23:42 ye afterwards 2011-11-05T09:24:04 well fair nuff 2011-11-05T09:24:06 sorry couldn't help then 2011-11-05T09:24:09 i'm off to bed 2011-11-05T09:24:10 night all 2011-11-05T09:24:13 n8 :) 2011-11-05T09:24:16 *** bobbydroptable has left #aichallenge ("Leaving") 2011-11-05T09:24:18 off to bed? 2011-11-05T09:24:24 ah .au 2011-11-05T09:24:27 Different time zone. :) 2011-11-05T09:24:30 that explains it :P 2011-11-05T09:24:47 holland here so no bed time soon :) 2011-11-05T09:24:56 ^^ 2011-11-05T09:25:55 Any clues =)? 2011-11-05T09:26:26 foRei: Your OS doesn't find python, not sure why not 2011-11-05T09:26:52 *** olexs has quit IRC (Quit: Leaving.) 2011-11-05T09:26:56 The icons in the tools folder changed to python looking >.< Maybe a reboot will help? 2011-11-05T09:27:14 *** Murashka has quit IRC (Quit: Page closed) 2011-11-05T09:27:41 foRei: Sorry, I don't really know anything about Python on Windows. :/ 2011-11-05T09:27:48 kk :) 2011-11-05T09:28:08 *** xgetc25 has quit IRC (Ping timeout: 265 seconds) 2011-11-05T09:30:14 foRei 2011-11-05T09:30:22 they are supposed to be "python looking" 2011-11-05T09:30:32 since there are a lot of python scripts in the tools folder 2011-11-05T09:31:04 yep, I took that as "python is installed properly"... But yet cmd.exe wont accept "python" as a command (which play_one_game.cmd sends) 2011-11-05T09:31:24 because you need to have the python directory 2011-11-05T09:31:37 on your environment PATH variable 2011-11-05T09:31:42 and probably you need to reboot 2011-11-05T09:31:48 for windows to recognize that change 2011-11-05T09:32:00 *** Ellos has quit IRC (Ping timeout: 265 seconds) 2011-11-05T09:32:09 (i.e. typical windows sh**) 2011-11-05T09:33:55 Hmm, how do I set my environment PATH variable to the python directory (C:\Python27) ? 2011-11-05T09:35:42 *** dvladim has quit IRC (Read error: Operation timed out) 2011-11-05T09:35:59 settings, system, advanced, environment 2011-11-05T09:37:05 you dont have to reboot, just start a new instance of cmd.exe 2011-11-05T09:42:02 pairofdice are u refering to regedit or somewhere in the control panel? 2011-11-05T09:42:35 *** Ellos has joined #aichallenge 2011-11-05T09:44:24 *** yoden has joined #aichallenge 2011-11-05T09:44:49 you need to go to my computer and right click on it 2011-11-05T09:44:58 then go to properties and follow his path 2011-11-05T09:45:30 hmm so great... i leave my room for 5MINs to go to the bathroom... my sister barges in with the vacuum cleaner, managed to hit my powerstrips on-off switch and thus bye to all my open apps... then after that i try to boot it again, keeps hanging on usb controllers, great!! more agitation... ah day is going splendid 2011-11-05T09:46:41 gotta use a laptop ellos ;) they can survive without cords 2011-11-05T09:49:21 no she got to be less stupid.. its a GIANT red button which she knows not to hit.... but ah well haters gonna hate, i'm a lucky man that has most of its apps on autosave or open previous work etc. but still kinda pissed off 5MINS thats all she needs to wreak imense havock xD 2011-11-05T09:49:43 immense 2011-11-05T09:50:10 *** mviel has quit IRC (Ping timeout: 256 seconds) 2011-11-05T09:50:14 DataWraith: used py 2.7, still those same crashes 2011-11-05T09:51:47 *** Migi32 has quit IRC (Quit: bye) 2011-11-05T09:52:24 Found it, not sure exactly what to add/modify tho, trying a reboot 2011-11-05T09:52:27 *** foRei has quit IRC (Quit: Bye) 2011-11-05T09:59:30 *** foRei has joined #aichallenge 2011-11-05T09:59:31 Ellos: :( 2011-11-05T09:59:36 *** ftPeter has joined #aichallenge 2011-11-05T10:00:00 Ellos: http://www.geeks.com/products_sc.asp?cat=839 2011-11-05T10:00:07 =) 2011-11-05T10:00:14 DataWraith: Then I don't really know a solution. Maybe ask on the Forums? 2011-11-05T10:00:25 s/DataWraith/Ellos/ 2011-11-05T10:00:40 Ellos: can't you configure her to not vacuum your room? 2011-11-05T10:00:41 *** pedrosorio_ has joined #aichallenge 2011-11-05T10:00:56 *** fasteddie__ has joined #aichallenge 2011-11-05T10:02:56 *** eashoka has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:02:56 *** nmalbran_ has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:03:14 *** Ellos_ has joined #aichallenge 2011-11-05T10:03:22 OMG it works! 2011-11-05T10:03:25 *** NotABug has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:03:25 *** xoposhiy has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:03:25 *** fasteddie_ has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:03:25 *** yoR has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:03:25 *** ccc_ has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:03:30 removed the --capture_errors switch 2011-11-05T10:03:31 yeehaw 2011-11-05T10:03:42 and used python 2.7 2011-11-05T10:03:54 *** overmind has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:03:54 *** userjjb has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:04:05 Ellos_: Oh. Sorry 'bout that. At least it's working now... 2011-11-05T10:04:23 *** ftPeter has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:04:23 *** Ellos has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:04:45 hmm well its all a bit strange that those things create the problem but it works now 2011-11-05T10:04:52 *** pedrosorio has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:05:12 Ellos_: Happy hacking, then! ^^ 2011-11-05T10:05:47 well i now also know why it isnt working in combo with my bot... 2011-11-05T10:06:42 the debugger reroutes the stderr and stdin&outs to itself, this decouples the visualizer from the process and renders it useless, it then gets the nullpointer exception.. 2011-11-05T10:06:56 Huh. 2011-11-05T10:07:19 *** grandiose has quit IRC (Quit: Leaving.) 2011-11-05T10:07:26 yeah i have my visual studio debugger plugging in on it 2011-11-05T10:07:34 that helps a lot too :P 2011-11-05T10:07:37 ^^ 2011-11-05T10:08:33 well just have to switch from time to time then... from debug to release in visual studio that is, then the debugger wont attach and i can use the visualizer... 2011-11-05T10:09:05 Or just use the stuff in game_logs/ with the visualizer 2011-11-05T10:09:30 aftewards you mean? 2011-11-05T10:09:34 y 2011-11-05T10:09:53 But then you don't get to debug it live. %) 2011-11-05T10:09:54 afterwards is not a problem, even when i have my debugger attached that works fine 2011-11-05T10:10:09 Eh, okay. 2011-11-05T10:10:42 but i'm happy now, i can finally start to do something about this terrible pathfinding algorithm 2011-11-05T10:10:50 ^^ 2011-11-05T10:11:02 I just finished my A* implementation. Now to actually make the bot use it... 2011-11-05T10:11:37 think i'm going for a data-oriented approach with of course collaborative diffusion at least, gonna try that 2011-11-05T10:11:39 *** twymer has joined #aichallenge 2011-11-05T10:12:27 A* is a good start too i think 2011-11-05T10:12:38 Yeah. 2011-11-05T10:12:52 I'll eventually extend it to D* Light, which seems a good fit for the contest 2011-11-05T10:13:16 Once you have fast path-finding you can start to think about clever strategies :) 2011-11-05T10:13:47 ellos: using c#? 2011-11-05T10:13:57 ye 2011-11-05T10:14:26 *** choas has quit IRC (Ping timeout: 244 seconds) 2011-11-05T10:14:45 fasteddie__: and what is your problem with that?! :P 2011-11-05T10:14:52 is the command simply the exe, replacing "java -jar mybot.jar" with "mybot.exe"? 2011-11-05T10:15:14 yep its as easy as that 2011-11-05T10:15:25 and then you can attach to the running process with VS? 2011-11-05T10:15:36 well you need to trigger it in main 2011-11-05T10:15:58 how do you trigger it? 2011-11-05T10:16:07 already working on it :P 2011-11-05T10:16:10 fasteddie__: http://pastebin.com/NaCt3SSU 2011-11-05T10:16:12 Finally I got a game running! 2011-11-05T10:16:41 just keep in mind that the visualizer uses the same method when its trying to do it live, so you can't use both 2011-11-05T10:17:17 ok thanks 2011-11-05T10:17:23 i might switch from java then 2011-11-05T10:19:04 why? 2011-11-05T10:19:20 easier to work with? 2011-11-05T10:19:23 well c# is my language of choice 2011-11-05T10:19:41 but i decided not to use it yet because the tutorial was in java and im working on a mac 2011-11-05T10:20:01 *** mcstar has joined #aichallenge 2011-11-05T10:20:02 but right now im running into issues where debugging would be so nice.. 2011-11-05T10:20:22 pffffffff 2011-11-05T10:21:04 although there is probably a way to debug with java too.. lol.. but im too lazy to figure all that out 2011-11-05T10:21:16 In play_one_game.cmd I want to modify "python ""%~dp0sample_bots\python\RandomBot.py""" to be my bot, Im coding in C#, what do I write instead of "python "" ? 2011-11-05T10:21:33 ahh yeah i do love my debug capabilities, and there must be a way to attach a java debugger indeed, maybe a google search could do the trick :P 2011-11-05T10:21:36 *** kaemo has joined #aichallenge 2011-11-05T10:21:52 foRei: just the path to your bot.exe 2011-11-05T10:21:59 foRei: Path\To\MyBot.exe 2011-11-05T10:22:04 *** bochi_ has joined #aichallenge 2011-11-05T10:22:08 kk ty 2011-11-05T10:22:11 DataWraith: Ninja 2011-11-05T10:22:14 XD 2011-11-05T10:22:38 graah, last place 2011-11-05T10:23:41 ive got bad news 2011-11-05T10:23:50 *** DataWraith has quit IRC (Read error: Connection reset by peer) 2011-11-05T10:24:08 well spit it out 2011-11-05T10:24:30 *** DataWraith has joined #aichallenge 2011-11-05T10:24:36 i took 1.3 secs to generate a brute-force 3-turn game-tree of a 2 vs 1 battle scenario 2011-11-05T10:24:46 hah lol 2011-11-05T10:25:13 why so long, you don't have that many options right? 2011-11-05T10:25:21 1968876 evaluations of the focus battle resolution, an dthe generation of the possibilities of course 2011-11-05T10:25:31 oh damn.... 2011-11-05T10:25:40 c++, -O3 2011-11-05T10:25:56 i->it 2011-11-05T10:26:22 time to go back to the drawingboard then... 2011-11-05T10:26:36 time for an earl grey 2011-11-05T10:26:51 Well, never thought minmax would be viable anyway 2011-11-05T10:26:52 "Earl Grey, Hot." :P 2011-11-05T10:27:17 I just add up the number of ants in range for each field and just don't walk where I would die 2011-11-05T10:27:23 *** jcdjcd has joined #aichallenge 2011-11-05T10:27:27 yeah 2011-11-05T10:27:37 easiest indeed 2011-11-05T10:27:57 to baldy go where no man has gone b4 2011-11-05T10:27:59 and already some kind of teaming built in? 2011-11-05T10:28:40 well, my point of view is, the simplest is not always the best 2011-11-05T10:28:46 True. 2011-11-05T10:28:50 But sometimes it is 2011-11-05T10:28:57 :> 2011-11-05T10:28:57 Also true. ^^ 2011-11-05T10:28:58 *** fpgsevan has joined #aichallenge 2011-11-05T10:29:00 and i only need to speed up several hundred times 2011-11-05T10:29:05 cant be that hard 2011-11-05T10:29:07 how do you guys handle the fact that the map wraps around.. 2011-11-05T10:29:09 :D 2011-11-05T10:29:13 Well, I stick with the simplest until I figure out something better. :P 2011-11-05T10:29:22 Ellos_: The starter package does that for me. 2011-11-05T10:29:30 grr 2011-11-05T10:29:34 what do you mean "handle"? 2011-11-05T10:29:36 the c# package can't do shit 2011-11-05T10:29:37 I stick with the simplest because that's all I can do 2011-11-05T10:29:47 Ellos_: But you just need to add/subtract Rows/Cols from your coordinate if its outside the map 2011-11-05T10:30:04 *** bugnuts has quit IRC (Read error: Operation timed out) 2011-11-05T10:30:05 yeah already thought of something like that indeed 2011-11-05T10:30:17 just don't look at the absolutes but more at the relative radius 2011-11-05T10:30:22 the c# doesn't come with a function to compute the location when you move in one direction? 2011-11-05T10:30:23 i have a custom wrapper, that doesnt use modulo 2011-11-05T10:30:37 *** Rithy58 has joined #aichallenge 2011-11-05T10:30:50 because i would like to have my ants pick up food at the top if they are close to the bottom edge for instance 2011-11-05T10:31:23 Ellos_: the only "tricky" part is determining the direction from touching start-end locations 2011-11-05T10:31:38 yeah 2011-11-05T10:31:39 while row > Rows; row -= Rows; while row < 0; row += Rows 2011-11-05T10:31:42 Same for col. 2011-11-05T10:31:56 DataWraith: while? 2011-11-05T10:32:13 Go's Modulo doesn't work as nicely for this. 2011-11-05T10:32:14 there cant really be more than 1 tile offset 2011-11-05T10:32:21 you dont need while imo 2011-11-05T10:32:23 mcstar: Yeah, true. 2011-11-05T10:32:38 mcstar: But if generalizes to while, so why not be general? 2011-11-05T10:32:51 general usually implies slower 2011-11-05T10:32:56 but its marginal 2011-11-05T10:32:59 ^^ 2011-11-05T10:33:18 Yeah. But I'd rather use a different algorithm than fiddle with things adding/removing single assembly instructions... 2011-11-05T10:33:59 oh, im not fiddling on the instruction level, only on the algorithmic abstarction level 2011-11-05T10:34:17 Besides that's just how the starter package does it, and I haven't bothered to change it. 2011-11-05T10:34:32 so 2011-11-05T10:34:37 2 turn it is 2011-11-05T10:34:40 change all the things 2011-11-05T10:34:40 turns* 2011-11-05T10:34:51 but did your starter package work aka do more than repeat two movements over and over again 2011-11-05T10:35:10 I'm using Go. It has a fairly high quality starter package. 2011-11-05T10:35:17 thats what the c# one does.... 2011-11-05T10:35:27 It included collision detection and makes the ants move randomly otherwise. 2011-11-05T10:35:53 hmm so you've already got tons of extra code to work with... 2011-11-05T10:36:00 Yeah. 2011-11-05T10:36:17 It even has a DoInRadius function. You pass in a closure and it executes it once for every square in a given radius. 2011-11-05T10:36:39 could be interesting to analyze the go package then 2011-11-05T10:36:50 I'm mostly using it to learn Go. ^^ 2011-11-05T10:36:58 haha 2011-11-05T10:37:03 Be warned though, the Go language is still young and changes weekly. 2011-11-05T10:37:33 yeah i seem to be seeing that a lot here, people just using the challenge as an excuse to learn a new language :P 2011-11-05T10:37:52 ^^ 2011-11-05T10:37:58 *** fpgsevan has quit IRC (Quit: Leaving) 2011-11-05T10:38:05 i think 80 percent of the uploads are below 50% skill 2011-11-05T10:38:19 *** GeorgeSebastian has joined #aichallenge 2011-11-05T10:38:19 *** GeorgeSebastian has joined #aichallenge 2011-11-05T10:38:22 I think it's more like 25%. 2011-11-05T10:38:38 My first bot was barely better than the starter packages, and it hovered around rank 1000. 2011-11-05T10:38:44 ah i thought about it too... i wanted to start with c++ but i just love the powerfull ide + c# combo 2011-11-05T10:38:52 It got a ton of games because it was useful to measure starter packages against. ^^ 2011-11-05T10:38:57 *** sigh_ has quit IRC (Remote host closed the connection) 2011-11-05T10:39:10 *** Rithy58 has quit IRC (Quit: Page closed) 2011-11-05T10:39:18 number 978 is currently 50 skill 2011-11-05T10:39:32 there are 5076 bots 2011-11-05T10:39:49 Eh. 20% is still closer to 25% than 80%. ^^ 2011-11-05T10:40:17 422 vs 8000+ 2011-11-05T10:40:17 81 % are below 50 skill 2011-11-05T10:40:18 ...eh, wait. With 50% skill you meant the TrueSkill rating. 2011-11-05T10:40:20 its even worse 2011-11-05T10:40:37 thats for 60% 2011-11-05T10:41:15 974 vs 8000+ for 50% 2011-11-05T10:41:34 yep, the skill 2011-11-05T10:41:38 Well, almost all bots below rank 1000 are starter packages. 2011-11-05T10:42:00 a version number > 1 is not a starter 2011-11-05T10:42:14 wth, the page is showing wo stylesheets 2011-11-05T10:42:21 white background etc. 2011-11-05T10:42:25 Reload? 2011-11-05T10:42:30 ctrl-f5 is a hard reload iirc 2011-11-05T10:42:34 I'm getting it unstyled too 2011-11-05T10:42:38 but the data is there 2011-11-05T10:42:40 Lemme check 2011-11-05T10:42:48 data ok, but fonts are standard... 2011-11-05T10:42:54 its a server error 2011-11-05T10:43:04 Hm, maybe it's still cached for me, I see it normally. 2011-11-05T10:43:18 cya guys later :) 2011-11-05T10:43:19 *** thestinger has quit IRC (Quit: WeeChat 0.3.6) 2011-11-05T10:43:38 991 people has 1st version 2011-11-05T10:43:51 hmm think i'm going for the collaborative diffusion way, changing the priority for a radius of tiles, based on things like enemy ants there, how much food, etc 2011-11-05T10:43:52 so the majority is not a starter bot 2011-11-05T10:44:12 mcstar: Hmkay. 2011-11-05T10:45:36 Certainly felt like it though, playing against them. 2011-11-05T10:46:27 *** IS has joined #aichallenge 2011-11-05T10:46:30 mcstar: they may not be starter bots, but the difference in playing ability is not noticeable 2011-11-05T10:46:42 its tricky, cause some people upload frequently, others only after major changes 2011-11-05T10:47:14 yeah, many of the bots at low levels are just recently uploaded 2011-11-05T10:47:59 my java tutorial bot modified to forget razed hills got to about rank 360 2011-11-05T10:48:18 :D 2011-11-05T10:48:27 It has to forget hills? Heh, I have to modify my code to remember them... 2011-11-05T10:48:52 well in the tutorial you can copy/paste the code to remember them ;) 2011-11-05T10:49:28 my newly built a* bot doesn't get very far.. times out or crashes.. so the tutorial bot is a lot better than my own crap right now 2011-11-05T10:49:44 hahaha know what you mean, sadly.... 2011-11-05T10:49:48 The Go starter doesn't keep track of them, because they are sent every turn anyway. But I want to extrapolate hill positions based on map symmetry. 2011-11-05T10:51:00 you are advised to track them, cause you can easily lose sight of enemy hills 2011-11-05T10:51:48 Yeah, will have to add that to my ToDo list. 2011-11-05T10:52:30 right now im building in code to track my ants over multiple turns so i wont have to recalculate paths all the time and they don't get stuck between two equally important goals 2011-11-05T10:52:39 Yup, still need to do that myself. 2011-11-05T10:52:59 The Ruby starter package makes that easy, but it's non-trivial for Go. 2011-11-05T10:56:06 *** IS has quit IRC (Ping timeout: 265 seconds) 2011-11-05T10:57:17 *** DataWraith has quit IRC (Ping timeout: 240 seconds) 2011-11-05T10:57:31 *** hjax has joined #aichallenge 2011-11-05T10:58:16 *** Extrarius has joined #aichallenge 2011-11-05T10:59:05 *** DataWraith has joined #aichallenge 2011-11-05T10:59:20 well the time has come to get my antbot to solve mazes and use a queue system, 2011-11-05T10:59:50 these are not real mazes 2011-11-05T11:00:03 *** u_ has joined #aichallenge 2011-11-05T11:00:27 *** bochi_ has quit IRC (Ping timeout: 265 seconds) 2011-11-05T11:00:56 hm, valgrind + kcachegrind are nice applications 2011-11-05T11:01:11 mcstar, i know that but inorder to explore properly i need my bot to realize that it has to go in straight lines without turning back 2011-11-05T11:01:27 poor bot :( 2011-11-05T11:01:28 xD 2011-11-05T11:01:46 hjax: and not all maps are "maze" maps, you have to decide which is which 2011-11-05T11:01:49 it's just afraid of the dark.. 2011-11-05T11:02:22 mcstar: true, ill need to detect maze maps possibly 2011-11-05T11:02:54 i was thinking of establishing some base-line, that ants push outwards, succesively, as they pass it, and it will stop if it gets too thin, or encounters an enemy 2011-11-05T11:03:03 and to the base line the ants would rush 2011-11-05T11:03:07 up to* 2011-11-05T11:03:30 mcstar, thats clever, and then maybe have ants patrol around withing the border to get food 2011-11-05T11:03:52 ithin* 2011-11-05T11:03:54 I was thinking about actually doing choke-point detection. 2011-11-05T11:03:55 within* 2011-11-05T11:04:04 Then your ants can rope off the area and everything inside is safe. 2011-11-05T11:04:17 that works too 2011-11-05T11:04:30 DataWraith: you need that especially if your really want to control battles 2011-11-05T11:04:35 -r 2011-11-05T11:04:45 Yeah. 2011-11-05T11:06:40 using stl vectors for this game tree stuff is a bad idea 2011-11-05T11:06:42 controlling choke points is the future of this game 2011-11-05T11:06:55 mcstar vs STL once again 2011-11-05T11:06:57 pedrosorio_: it was done before 2011-11-05T11:06:57 :P 2011-11-05T11:07:11 controlling choke points? 2011-11-05T11:07:14 by whom? 2011-11-05T11:07:18 thinking 2011-11-05T11:07:39 It's kinda non-trivial to even detect choke-points. 2011-11-05T11:07:55 mcstar: thinking about it? 2011-11-05T11:08:04 I have thought about many things =P 2011-11-05T11:08:07 i think it was flagcrapper 2011-11-05T11:08:41 he nicely hold the choke points, and from them, applied pressure to the ants in the open area 2011-11-05T11:10:00 DataWraith: not that hard, i had an algorithm, that partitioned the water into separate chunks 2011-11-05T11:10:11 and i had access to the skirts of these ponds 2011-11-05T11:10:32 and from that you can easily calculate "chokes" 2011-11-05T11:10:38 Hmyeah. 2011-11-05T11:10:55 I was thinking along the lines of a brushfire from the water outward, and find the minimum value. 2011-11-05T11:11:01 that was my very first way of navigation 2011-11-05T11:11:21 mcstar: Cool. 2011-11-05T11:11:36 my ants would go straigt lines to whereever they wanted, if they hit water, they would slide on the edge of it 2011-11-05T11:12:19 the usefulness of the method was not proportional to the time i spent on it 2011-11-05T11:12:32 Heh. 2011-11-05T11:14:07 *** Extrarius has quit IRC () 2011-11-05T11:14:19 *** Extrarius has joined #aichallenge 2011-11-05T11:15:45 *** geekchimp has joined #aichallenge 2011-11-05T11:17:53 *** pairofdice has quit IRC (Quit: Just keep breathing) 2011-11-05T11:19:49 *** zorun has joined #aichallenge 2011-11-05T11:20:33 found a bug that made my bot crash after 2 turns, fixed it, now it crashes after 1 turn 2011-11-05T11:20:35 *** DataWraith has quit IRC (Read error: Connection reset by peer) 2011-11-05T11:20:50 fasteddie__: what language? 2011-11-05T11:21:06 java 2011-11-05T11:21:20 *** DataWraith has joined #aichallenge 2011-11-05T11:21:21 hmm cant help there 2011-11-05T11:21:24 i forgot to instantiate a class variable in the constructor 2011-11-05T11:21:59 mine is in python :D 2011-11-05T11:22:09 *** ChrisH has joined #aichallenge 2011-11-05T11:22:24 I just found a bug that would make my bot miscalculate pretty much everything - I had two symmetrical for loops for updating pathfinding and I forgot to set an important variable in one, so it was always using the last value from the previous loop 2011-11-05T11:22:36 *** ChrisH has quit IRC (Client Quit) 2011-11-05T11:23:07 no instead of scoring 0 every ttime, I score 1 every 10 games or so =-P 2011-11-05T11:23:43 ^^ 2011-11-05T11:23:49 Extraruis: i had mine doing that with food a while ago, if it got a food and there were no more around it would think that the food was still there because it would forget to reset its list of wanted foods 2011-11-05T11:25:09 is there an ocaml coder here? I'm trying to run my bot with the interpreter instead of compiling it 2011-11-05T11:25:13 heh, I had been wondering why my pathfinding was taking 60+ passes to conveerge when before it was usually taking at most 5 - turns out having one loop stepping things forward and another corrupting everything makes convergance difficult 2011-11-05T11:26:11 *** Antimony has joined #aichallenge 2011-11-05T11:26:22 zorun: smiley1983 2011-11-05T11:27:06 everybody seems to be using BFS - anybody else out there just using potential fields / influence maps? seems that it's pretty much the same result but much easier and faster to calculate once/round 2011-11-05T11:27:41 mcstar: thanks ;) 2011-11-05T11:27:55 smiley1983: ping 2011-11-05T11:28:26 smiley1983: have you successfully run a bot with the ocaml interpreter? 2011-11-05T11:28:46 zorun: unclevasya is using ocaml too, but he isnt here atm 2011-11-05T11:28:57 'k 2011-11-05T11:29:18 *** sigh has joined #aichallenge 2011-11-05T11:31:56 *** delt0r__ has quit IRC (Ping timeout: 244 seconds) 2011-11-05T11:31:59 *** BamX has joined #aichallenge 2011-11-05T11:32:32 Hello, everybody!) 2011-11-05T11:32:34 Extrarius: I'm planning to use distance maps as a better A* heuristic 2011-11-05T11:33:03 *** Murashka has joined #aichallenge 2011-11-05T11:33:15 cool 2011-11-05T11:33:35 jix: is A* much better than bfs? 2011-11-05T11:34:00 hjax: It will expand equal or fewer nodes per path 2011-11-05T11:34:01 hjax: i think so 2011-11-05T11:34:05 hjax: I havent implemented either yet... but if you only look at the nodes expanded yes, a lot 2011-11-05T11:34:20 especially if your heuristic gives you good estimates 2011-11-05T11:34:31 bfs and dfs are the brute force graph searches 2011-11-05T11:34:44 jix: A* is probably going to take longer though, and python is slow, so i think ill end up just using bfs 2011-11-05T11:35:40 I've been using BFS but I plan to give influence maps a try 2011-11-05T11:35:51 Well, technically A* should always be faster than bfs 2011-11-05T11:35:58 antimoney, how is it working for you? 2011-11-05T11:36:01 why would a* be slower than bfs? 2011-11-05T11:36:04 well 2011-11-05T11:36:14 Really datawraith? O.o 2011-11-05T11:36:18 only if calculating the heuristic takes a lot of time? 2011-11-05T11:36:19 hjax: If you're using python, you'd probably do better to rewrite the final version into C. That is my plan, anyways. Python is great for prototyping and when time doesn't matter, but since there is a time limit... 2011-11-05T11:36:19 my old bot got ranked 130 with only BFS 2011-11-05T11:36:24 but my new bot sucks 2011-11-05T11:36:38 Extraruis: but i dont know C >.> 2011-11-05T11:36:40 A* is BFS with fewer nodes expanded. 2011-11-05T11:36:43 use C++ 2011-11-05T11:36:45 So you have to do less work. 2011-11-05T11:36:51 it's nicer to code in and just as efficient 2011-11-05T11:37:08 i dont know C++ either 2011-11-05T11:37:12 oh well 2011-11-05T11:37:20 and what about c#? 2011-11-05T11:37:24 one of the top bots is Python 2011-11-05T11:38:01 python isn't bad, it's just slower. 2011-11-05T11:38:07 true 2011-11-05T11:38:08 I think the main problem with my current bot is that the defence strategy I implemented leads to many ants sitting idle around the mound 2011-11-05T11:38:11 ^_^ 2011-11-05T11:38:31 so it always gets out expanded 2011-11-05T11:38:34 antimony whats your ants username? 2011-11-05T11:38:39 Parasprites 2011-11-05T11:39:00 *** BamX has quit IRC (Quit: Page closed) 2011-11-05T11:40:29 *** GeorgeSebastian has quit IRC (Ping timeout: 240 seconds) 2011-11-05T11:41:34 Antimony: yeah, you defense is really hurting your expansion http://aichallenge.org/visualizer.php?game=59254&user=3845 2011-11-05T11:41:35 *** yoden-cloud has joined #aichallenge 2011-11-05T11:41:39 your* 2011-11-05T11:41:42 *** capa has joined #aichallenge 2011-11-05T11:42:33 yeah, that's one thing I'll definitely get rid of when I start working on a new version 2011-11-05T11:42:38 the game rate is worse than terrible 2011-11-05T11:42:45 Speaking of heuristics, what have people been using? I'm using manhattan distance but it's not doing so well. 2011-11-05T11:43:00 twymer: 3*m 2011-11-05T11:43:03 try that 2011-11-05T11:43:03 grrr, I hate index out of range errors... 2011-11-05T11:43:24 mcstar: That doesn't look admissable to me. 2011-11-05T11:43:43 it doesnt guarantee optimality but usually it is faster 2011-11-05T11:43:50 Hmtrue. 2011-11-05T11:43:58 *reads up on that* 2011-11-05T11:44:00 I haven't needed to use A* at all yet 2011-11-05T11:44:06 im using straight line times 5 2011-11-05T11:44:27 *** Larose has joined #aichallenge 2011-11-05T11:44:28 Have you tried jump point pruning? 2011-11-05T11:44:29 Hm... apparently there's an A* variant that uses an inflated heuristic. 2011-11-05T11:44:30 *** delt0r__ has joined #aichallenge 2011-11-05T11:44:37 It makes A* much faster when going across large open areas 2011-11-05T11:44:44 i wonder if i could use this to turn python directly into C++, http://sourceforge.net/projects/py2cpp/ 2011-11-05T11:45:11 yeah that's what i use antimony.. its not guaranteed optimal but who cares ;) 2011-11-05T11:45:13 it wouldn't be idiomatic C++ though 2011-11-05T11:45:19 assuming it doesnt break something in my bot it might work 2011-11-05T11:45:24 C++ and Python have different philospohies 2011-11-05T11:45:30 so a straight port will produce terrible code 2011-11-05T11:45:36 hjax: why dont write directly c++? 2011-11-05T11:45:51 it isnt hard believe me 2011-11-05T11:45:56 mcstar: because idk C++? 2011-11-05T11:46:00 maximum memory is 1GB, correct? 2011-11-05T11:46:01 i didnt either 2011-11-05T11:46:10 it's 1.5GB now 2011-11-05T11:46:15 hjax: just open a file and start coding 2011-11-05T11:46:27 does that mean i can expect to get the correct -Xmx for the java heap? 2011-11-05T11:46:30 if something doesnt compile, look it up 2011-11-05T11:46:34 hello,whats the turn time limit? 2011-11-05T11:46:39 and multiple source files/header files/etc annoy me 2011-11-05T11:46:41 it's assed to the bot 2011-11-05T11:46:48 *** marijnfs has quit IRC (Quit: leaving) 2011-11-05T11:46:52 geekchimp: You get told the limit everytime the bot starts 2011-11-05T11:46:53 verb of the day: to ass 2011-11-05T11:46:56 geekchimp: Usually 1 second 2011-11-05T11:47:01 geekchimp: your bot is informed when the game starts, currently it's 500 ms 2011-11-05T11:47:16 Oh, they changed it, then. 2011-11-05T11:47:28 hjax, while it does have pitfalls, it is useful because it gives more freedom in arranging your code 2011-11-05T11:47:31 unlike say, Java 2011-11-05T11:47:39 and it gives more performance than Python's method 2011-11-05T11:48:16 hjax: you dont split python sources? 2011-11-05T11:48:17 very true, ill think about writing in C++ after my code starts running out of time 2011-11-05T11:48:43 I wrote mine in C++ and it still runs out of time, though to be fair, I was trying soem fancy stuff 2011-11-05T11:49:04 mcstar: i do for longer programs, but C makes it confusing, right now my bot is one source file 2011-11-05T11:49:20 *** Mooloo has quit IRC (Ping timeout: 260 seconds) 2011-11-05T11:49:38 rule one of programming, regarding language choice... use the language that lets you design it, the way you think of it 2011-11-05T11:50:21 rule 2: Don't use Java 2011-11-05T11:50:34 java isn't a language :P 2011-11-05T11:50:40 is turn time language dependent or is it same for everyone in a specified game .... i use python 2011-11-05T11:50:51 same for everyone 2011-11-05T11:50:52 im just below 1000 loc 2011-11-05T11:50:55 *** Rinum has joined #aichallenge 2011-11-05T11:51:23 my bot works well... it just keeps timing out :( http://aichallenge.org/visualizer.php?game=61088&user=3469 2011-11-05T11:51:40 geekchimp: python gets 5 seconds handicap each turn 2011-11-05T11:51:43 if you're timing out, you probably have bugs :P 2011-11-05T11:51:45 do you have timeout return code? 2011-11-05T11:51:53 yeah 2011-11-05T11:52:00 in my first version, I kept getting timeouts 2011-11-05T11:52:14 and I eventually traced it down to a subtle bug that caused infinite loops 2011-11-05T11:52:16 timeout return code? 2011-11-05T11:52:19 hmm... 2011-11-05T11:52:37 you need to check how much time is left and if there's not much time left, return early 2011-11-05T11:52:41 Rinum: yeah just quit addressing ants if you start to get low on time 2011-11-05T11:52:45 i had some dumb bugs causing some turns to suddenly take over 5 seconds while most only took 50ms 2011-11-05T11:52:46 *** ccc has joined #aichallenge 2011-11-05T11:52:47 to be safe, leave at least 30ms 2011-11-05T11:52:49 at the top of my pathfinding code, I check against remaining time and return null if it's less than 20% 2011-11-05T11:53:14 I guess I could give that a tr 2011-11-05T11:53:15 My bot is set to return after 95% and it's timeouted once on the server 2011-11-05T11:53:16 try* 2011-11-05T11:53:26 Rinum: your bot is really smart, i love hot it makes formations to capture hills and then quickly disperses 2011-11-05T11:54:01 hjax: thanks, I still have yet to create a better offensive strategy (right now they just attack in single file lines) 2011-11-05T11:54:27 That only helps if teh formatiosn formed are actually any good 2011-11-05T11:54:33 writing good attack logic is hard... 2011-11-05T11:54:38 yeah 2011-11-05T11:54:42 i'm just making my ants run away and forage more for now :X 2011-11-05T11:54:51 single file lines are the worst possible,, but they happen naturally in most algorithms 2011-11-05T11:54:52 Rinum: lines work fine in many cases 2011-11-05T11:55:09 even 2 ants can defeat an entire line without losses 2011-11-05T11:55:10 until someone puts two defensive ants in front of your line 2011-11-05T11:55:14 2ants can defend against an infinitely long single file line 2011-11-05T11:55:14 Antimony: only if another bot can counter lines 2011-11-05T11:55:17 that's true 2011-11-05T11:55:23 most bots do though 2011-11-05T11:55:24 *** bmh has joined #aichallenge 2011-11-05T11:55:25 If I want to know how much time has elapsed (in C), should I use clock() or gettimeofday() ? That is, which time is used to know if a bot timeout ? 2011-11-05T11:55:27 even my bot counters lines 2011-11-05T11:55:32 *** bmh has quit IRC (Changing host) 2011-11-05T11:55:32 *** bmh has joined #aichallenge 2011-11-05T11:55:37 mine doesnt >.> 2011-11-05T11:55:46 so our current vision radius is aprox 8 tiles? 2011-11-05T11:55:48 *** DigitalNinja has quit IRC (Ping timeout: 245 seconds) 2011-11-05T11:55:51 mine does a lot of lines also 2011-11-05T11:55:52 xD 2011-11-05T11:55:53 te C++ starter bot uses clock() on windows and gettimeofday on Linux 2011-11-05T11:55:56 gettimeofday has usec precision 2011-11-05T11:56:01 ellos: sqrt(55) 2011-11-05T11:56:17 its 77 according to the game settings page 2011-11-05T11:56:20 though it really should be using QueryPerformanceCOunter on windows 2011-11-05T11:56:50 Yes, but clock return the processor time used, gettimeofday, the real time elapsed, isn't it different ? 2011-11-05T11:57:02 well the actual timing is in the python code 2011-11-05T11:57:07 why not go check which it is 2011-11-05T11:57:15 I think it's engine.py 2011-11-05T11:57:21 you want wall time 2011-11-05T11:58:31 mcstar: ok, thank. 2011-11-05T11:58:44 *** choas has joined #aichallenge 2011-11-05T11:59:04 *** geekchimp has quit IRC (Quit: Page closed) 2011-11-05T11:59:27 what could cause a bot to be eliminated? 2011-11-05T11:59:31 playing locally, I mean 2011-11-05T11:59:55 this is why i need a queue system, exploration, and pathfinding really badly http://aichallenge.org/visualizer.php?game=60937&user=7816 2011-11-05T12:00:40 zorun: the ants ran into each other and all died? 2011-11-05T12:00:57 *** Mooloo has joined #aichallenge 2011-11-05T12:01:19 Avoiding collisions in the one thing my bot does well 2011-11-05T12:01:26 that and creating squares 2011-11-05T12:01:41 Even though it isn't perfect, I really like parasprites' defense strategy http://aichallenge.org/visualizer.php?game=58481&user=3845 2011-11-05T12:01:54 i'm having a lot of trouble getting my ants to work properly in a group.. 2011-11-05T12:01:54 *** Harpyon has joined #aichallenge 2011-11-05T12:02:18 Rinum: lol, bot is scared~ 2011-11-05T12:02:27 *** lowerlogic has joined #aichallenge 2011-11-05T12:02:50 parasprites has some trippy bot behaviour 2011-11-05T12:03:07 Rinum: I like how he held such solid defense for most of the game then bolted to get captured by one ant 2011-11-05T12:03:22 *** savaron has joined #aichallenge 2011-11-05T12:03:27 The problem is that it decides the level of defence based on how many ants it has 2011-11-05T12:03:34 twymer: lol, indeed 2011-11-05T12:03:35 twymer: lol exactly, it isn't a perfect strat since it requires a lot of ants 2011-11-05T12:03:37 when it has only a few ants left, it sends thme out to try to get more food 2011-11-05T12:03:45 it's a bit silly 2011-11-05T12:03:49 in my opinion 2011-11-05T12:04:00 it is silly, but it's still cool =P 2011-11-05T12:04:02 i think he kept way too much defense there for most of the game 2011-11-05T12:04:02 he needs to adapt it so that he'll have more ants gathering in the beginning 2011-11-05T12:04:13 and when he has a massive force 2011-11-05T12:04:14 THEN 2011-11-05T12:04:15 i've seen some pretty good success to keeping 4-5 hanging around 2011-11-05T12:04:18 he can worry about defense 2011-11-05T12:04:35 which mostly just stops a couple ants from coming in like happened to him 2011-11-05T12:05:04 *** burny has quit IRC (Ping timeout: 260 seconds) 2011-11-05T12:05:05 yeah, my brilliant defence ideas turn out to not work in the real world 2011-11-05T12:05:06 i think you should calculate threat based on number of enemy ants moving in direction of nest or in vicinity of nest 2011-11-05T12:05:32 I'm planning to create a system where a hill sends an alarm when enemy ants get near 2011-11-05T12:05:37 and all nearby ants rush to defend 2011-11-05T12:05:41 that's nice also 2011-11-05T12:05:55 but may not be enough 2011-11-05T12:06:04 if too many ants 2011-11-05T12:06:08 attack you suddenly 2011-11-05T12:06:10 at least it will probably be better than the current system 2011-11-05T12:07:05 hmmm i think that my cool queue system that im building will end up being really slow and garbage 2011-11-05T12:07:30 it deals with creating long strings, and manipulating them, and storing them in lists 2011-11-05T12:07:51 strings? 2011-11-05T12:07:59 hjax: are you using python? 2011-11-05T12:08:06 Rinum: yes 2011-11-05T12:08:10 use collections,deque 2011-11-05T12:08:10 *** exezive has joined #aichallenge 2011-11-05T12:08:24 hjax: yup, it'll be pretty slow... try not to use python lists 2011-11-05T12:08:53 Rinum; maybe store the strings in the real queue module then? 2011-11-05T12:09:26 what strings? 2011-11-05T12:09:36 strings of ants? 2011-11-05T12:09:49 because the queue needs to have 4 peices of data for each ant in the queue, but im only using the queue for exploration/maze solving 2011-11-05T12:10:47 pedrosorio_: a string consisting of an ants current location, where it is headed, which direction it is coming from, and any moves that are in the queue 2011-11-05T12:11:09 but why would you use a string to store that kind of information? 2011-11-05T12:11:29 because i need to store it between turns and dont want to nest lists 2011-11-05T12:11:38 * hjax is a noob 2011-11-05T12:13:25 *** Antimony has quit IRC (Ping timeout: 240 seconds) 2011-11-05T12:13:52 im not so up to date with pyton but cant you store all that stuff in a class instead of a string? 2011-11-05T12:14:32 still working on my priomap.... 2011-11-05T12:14:34 *** caution has joined #aichallenge 2011-11-05T12:14:43 quite the bitch 2011-11-05T12:14:51 exactly what fasteddie__ said 2011-11-05T12:14:57 isn't this what classes are for? 2011-11-05T12:15:17 isn't that where objects are for... 2011-11-05T12:17:16 * hjax well im doing it within a class.... but idk how to dynamicly make classes based on my number of ants, or how to keep track of ants besides with their current location 2011-11-05T12:17:21 isn't that what structs are for? 2011-11-05T12:17:27 (lol) 2011-11-05T12:17:37 * hjax is doing it wrong 2011-11-05T12:18:51 hjax: Assign ants and ID when you're first told about them, and store two dictionary mapping location to id and id to location, then in your 'give order' function, update both. When you see a dead ant, if it is in the location of one of yours, delete it from your dictionaries 2011-11-05T12:19:24 hjax: a class is a template for objects 2011-11-05T12:19:42 hjax: so what you want is not to make a new class for each ant, but a new object of the ant class for each ant 2011-11-05T12:20:19 i have one class, and ti just keeps a list of the strings, im not reinitializing the class for each ant 2011-11-05T12:20:54 well you might want to consider making an ant class and instantiate it for each ant 2011-11-05T12:21:17 the strings contain info on each ant that has something it should be doing, and any other ants are processed after moves are assigned to the queued ants 2011-11-05T12:21:27 ant the location is indeed the only way to track ants, but you need to take into account that they move around and die now and then 2011-11-05T12:21:42 Minthos: wouldnt that be just as slow as using my strings method? 2011-11-05T12:22:15 hjax: you want a class something like "SingleAnt" and make a new instance each time you get a new ant, and that class manages a single ant 2011-11-05T12:22:18 hjax: I don't know, storing data in strings is usually slower than storing it in object properties 2011-11-05T12:22:36 hjax: manipulating numbers as strings is much slower than manipulating them as integers 2011-11-05T12:23:35 but how would i keep creating new instances of a class? because when i initialize it i have to give it a name that i refer to it as, and idk how to come up with a dynamic one for each ant 2011-11-05T12:24:11 class -> instantiation -> object 2011-11-05T12:24:14 hjax: what language? 2011-11-05T12:24:17 python 2011-11-05T12:24:38 hjax: You likely want to use a list or some other data structure. 2011-11-05T12:25:08 The docs are here: http://docs.python.org/tutorial/datastructures.html but any Python tutorial will give you a nicer explanation. 2011-11-05T12:25:17 when i initialize it dont i have to do name = class(), the do name.function(stuff) to do stuff 2011-11-05T12:25:20 anyway, from watching ST: TNG 2x21: Peak Performance can anyone greatly profit 2011-11-05T12:25:57 well here is my (unfinished) queue system http://pastebin.com/pavR3HK3 2011-11-05T12:27:16 i was about to write something to update the strings as ants move 2011-11-05T12:28:01 mcstar: http://www.youtube.com/watch?v=goDrSnTc6ag 2011-11-05T12:29:00 yep 2011-11-05T12:29:04 hjax: the main thing here is that manipulating strings that contain data is far from optimal in terms of efficiency 2011-11-05T12:29:17 and if you are using python you have to take that into account 2011-11-05T12:29:34 but that voice is annyoing 2011-11-05T12:29:46 fasteddie__: the narrator's voice i mean 2011-11-05T12:29:46 pedrosorio_: that is roughly half of my code atm, and idk how to do it the right/fast way 2011-11-05T12:30:07 terribly annoying makes me think of starship troopers 2011-11-05T12:30:47 well, as long as you have high-level functions which are independent of your underlying representation of ants 2011-11-05T12:30:51 (in this case strings) 2011-11-05T12:31:00 you can rewrite the low-level functions later 2011-11-05T12:32:19 so this code should work, but just not efficiently? 2011-11-05T12:33:29 *** ygao2008 has joined #aichallenge 2011-11-05T12:33:58 *** choas has quit IRC (Quit: leaving) 2011-11-05T12:34:08 *** ygao2008 has quit IRC (Client Quit) 2011-11-05T12:34:08 meh why can moves be blocked by spawning food 2011-11-05T12:34:32 yes, hjax 2011-11-05T12:35:41 for fuck sake, why do people keep using crlf... or rather keeping crlf in git repositories 2011-11-05T12:36:32 i honestly dont know, but Picard+Data almost beats JackOneill 2011-11-05T12:36:54 hjax if you need it to be more efficient you can then implement ants as classes instead of strings 2011-11-05T12:37:33 pedrosorio: i need to learn how to do that first 2011-11-05T12:37:37 *** capa has quit IRC (Ping timeout: 265 seconds) 2011-11-05T12:38:52 *** praveen_ has joined #aichallenge 2011-11-05T12:43:02 *** hjax has quit IRC (Quit: Page closed) 2011-11-05T12:43:04 *** userjjb has joined #aichallenge 2011-11-05T12:44:30 are those extra TCP ants servers still around? 2011-11-05T12:44:59 http://ants.fluxid.pl/ 2011-11-05T12:45:21 ty, bookmarks not on laptop ^^ 2011-11-05T12:47:15 *** fasteddie__ has quit IRC (Quit: Page closed) 2011-11-05T12:51:31 *** bmh has quit IRC (Quit: bmh) 2011-11-05T12:53:17 *** sigh has quit IRC (Remote host closed the connection) 2011-11-05T12:55:20 *** moises has joined #aichallenge 2011-11-05T12:56:40 *** praveen_ has quit IRC (Quit: Page closed) 2011-11-05T12:57:46 *** Rinum has quit IRC (Quit: Page closed) 2011-11-05T13:05:13 *** icefox has joined #aichallenge 2011-11-05T13:07:09 *** nplus has quit IRC (Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 1.9.0.17/2009122204]) 2011-11-05T13:10:20 *** dvladim has joined #aichallenge 2011-11-05T13:13:06 *** grwip has quit IRC (Quit: Leaving) 2011-11-05T13:14:03 *** lowerlogic has quit IRC () 2011-11-05T13:17:51 *** kaemo has quit IRC (Ping timeout: 244 seconds) 2011-11-05T13:22:09 *** Fandekasp has joined #aichallenge 2011-11-05T13:22:09 *** kaemo has joined #aichallenge 2011-11-05T13:30:15 *** kaemo has quit IRC (Ping timeout: 244 seconds) 2011-11-05T13:31:00 *** bmh has joined #aichallenge 2011-11-05T13:31:00 *** bmh has joined #aichallenge 2011-11-05T13:31:09 *** mviel has joined #aichallenge 2011-11-05T13:31:15 *** userjjb has quit IRC (Ping timeout: 265 seconds) 2011-11-05T13:36:55 *** nplus has joined #aichallenge 2011-11-05T13:39:54 finally I can track data along my ants without getting confused when getting stuck on food 2011-11-05T13:45:23 jix: gratz! 2011-11-05T13:47:17 *** jcdjcd has quit IRC (Ping timeout: 252 seconds) 2011-11-05T13:47:26 *** jcdjcd has joined #aichallenge 2011-11-05T13:53:13 *** anon has joined #aichallenge 2011-11-05T13:54:23 *** twymer has quit IRC (Ping timeout: 248 seconds) 2011-11-05T13:54:40 *** Guest6756 is now known as ajf 2011-11-05T13:55:11 Does anyone know if RandomBot is compatible with Python 3? 2011-11-05T13:56:06 anon: well 2011-11-05T13:56:17 I think the default starter pack is basically random bot 2011-11-05T13:56:20 so I'd think so 2011-11-05T13:57:21 Well RandomBot crashes for me when I use the play_one_game.cmd script 2011-11-05T13:57:52 *** kilae_ has joined #aichallenge 2011-11-05T13:59:06 When running it with playgame.py instead with verbose mode I get a traceback of an error in the shuffle library: dict_keys object does not support indexing 2011-11-05T14:00:01 *** kilae has quit IRC (Ping timeout: 260 seconds) 2011-11-05T14:00:24 *** tmandry has joined #aichallenge 2011-11-05T14:00:32 *** tmandry has joined #aichallenge 2011-11-05T14:00:54 pfff 2011-11-05T14:01:13 after a rewrite, with less stl, 1.4->0.9 secs 2011-11-05T14:01:20 not much gain 2011-11-05T14:02:37 mcstar vs STL: part 3 2011-11-05T14:02:38 xD 2011-11-05T14:03:47 *** praveen_ has joined #aichallenge 2011-11-05T14:04:11 i have to avoid using copy constructors 2011-11-05T14:04:19 it is convenient but i think its slow 2011-11-05T14:04:38 anyone using the Go starter bot and can explain the WriteDebugImage function to me? 2011-11-05T14:05:21 *** amstan has joined #aichallenge 2011-11-05T14:05:23 mcstar: try C :P 2011-11-05T14:05:33 *** ChanServ sets mode: +o amstan 2011-11-05T14:05:37 why exactly? 2011-11-05T14:05:52 you don't have to worry about any constructors at all 2011-11-05T14:05:59 lol 2011-11-05T14:06:00 =) 2011-11-05T14:06:02 and certainly not about STL 2011-11-05T14:06:02 its not a worry 2011-11-05T14:06:06 =P 2011-11-05T14:06:06 maan 2011-11-05T14:06:09 you get it wrong 2011-11-05T14:06:14 it is convenieent 2011-11-05T14:06:16 I'm playing 2011-11-05T14:06:24 and faster to write than using plain c 2011-11-05T14:06:40 but I did all the stuff for algorithms/datastructures in plain C 2011-11-05T14:06:44 (university) 2011-11-05T14:06:51 but, i want to know how much convenience i can keep 2011-11-05T14:06:54 of course it is 2011-11-05T14:07:26 and anyway, im not going to write my whole bot in c 2011-11-05T14:07:53 i didnt leave common lisp so that C will eat my brain and nerves 2011-11-05T14:10:45 ikaros: The DebugImage thing is broken 2011-11-05T14:10:58 ikaros: I had to make quite a few changes to get it to work 2011-11-05T14:11:38 ikaros: Or at least write out an image, that's still kind-of wrong 2011-11-05T14:11:52 ok 2011-11-05T14:12:09 because im new to Go and didnt understand that function 2011-11-05T14:12:18 i guess ill skip that for now 2011-11-05T14:12:25 ikaros: It's quite elegant, actually, if it works as supposed. 2011-11-05T14:12:52 i believe that :) just dont get it hehe 2011-11-05T14:13:04 ikaros: It basically makes a PNG of the map as your bot sees it, by defining a color for every item in the map you can currently see 2011-11-05T14:13:18 *** praveen_ has quit IRC (Ping timeout: 265 seconds) 2011-11-05T14:13:26 ikaros: But it even fails parsing the commandline-flag needed to enable it... 2011-11-05T14:13:37 yea i recognized that 2011-11-05T14:13:48 wanted to hardcode it for now just to test 2011-11-05T14:14:02 I did the following: 2011-11-05T14:14:02 but i didnt get that function parameter and where i need to create the image 2011-11-05T14:14:17 var imageOutPrefix string 2011-11-05T14:14:18 func init() { flag.StringVar(&imageOutPrefix, "imgprefix", "", "image prefix") flag.Parse() 2011-11-05T14:14:39 } That correctly parses the commandline option. 2011-11-05T14:14:58 as replacement in the function? 2011-11-05T14:15:30 Basically this code binds the command-line flag "./MyBot --imgprefix=foo" to the imageOutPrefix variable. 2011-11-05T14:15:43 After that the function sort-of works if you call it in DoTurn() 2011-11-05T14:15:46 so i call this in main? 2011-11-05T14:15:52 ok 2011-11-05T14:16:03 ill just try it 2011-11-05T14:16:11 I think you had to change one declaration from Color to NRGBAColor too, but after that it kind-of works. 2011-11-05T14:16:26 do you call init() in main once? 2011-11-05T14:16:34 How should I go about writing C:\Users\MuTa\Google AITest.exe in play_one_game.cmd? It fucks up with "space" in Google AITest.exe 2011-11-05T14:16:34 No, init is called automatically by go. 2011-11-05T14:16:39 oh 2011-11-05T14:16:44 good to know :) 2011-11-05T14:16:48 :) 2011-11-05T14:17:40 hm 2011-11-05T14:18:52 *** dvladim has quit IRC (Ping timeout: 258 seconds) 2011-11-05T14:19:15 i dont understand how to call that WriteImage... function 2011-11-05T14:19:23 ikaros: Looked up the diff: You need to change the At-function from image.Color to image.NRGBAColor 2011-11-05T14:19:57 ok moment 2011-11-05T14:20:40 ikaros: And in DoTurn: s.WriteDebugImage("bla", func(row, col int) image.NRGBAColor) { return s.Map.At(row, col) }) 2011-11-05T14:21:06 ikaros: whoops, it's ... image.NRGBAColor { ... 2011-11-05T14:21:19 *** mviel has quit IRC (Ping timeout: 260 seconds) 2011-11-05T14:21:52 ikaros: The function WriteDebugImage takes another function (closure) that tells it what color to use. 2011-11-05T14:22:32 ah its an anonymous function.. but then why is At in the function header 2011-11-05T14:23:21 hm something is still wrong here 2011-11-05T14:23:22 That's just the parameter name for the anonymous function it takes 2011-11-05T14:23:31 *** exezive has quit IRC (Quit: Leaving) 2011-11-05T14:23:41 ah so thats not the same At as the ImageHelper At 2011-11-05T14:23:42 doh 2011-11-05T14:23:47 yup 2011-11-05T14:23:50 :) 2011-11-05T14:24:01 ok first hurdle taken.. understood the definition 2011-11-05T14:24:02 lol 2011-11-05T14:24:02 thx 2011-11-05T14:24:11 ^_^ 2011-11-05T14:24:16 now i need to get the code working 2011-11-05T14:24:38 MyBot.go:27: syntax error: unexpected return, expecting } 2011-11-05T14:24:43 Heh, Go is nice in theory, but you run into a surprising amount of hurdles along the way 2011-11-05T14:24:53 Although usually it has nice error messages 2011-11-05T14:25:09 happens when i copy the s.Write ... from above to the DoTurn() func 2011-11-05T14:25:39 one sec 2011-11-05T14:26:06 Fluxid: have you spotted your mistake in this game http://aichallenge.org/visualizer.php?game=61658&user=757 turn 119? 2011-11-05T14:26:32 110, 139 2011-11-05T14:26:42 ikaros: s.WriteDebugImage("bla", func(row, col int) image.NRGBAColor { return s.Map.At(row, col) }) 2011-11-05T14:26:57 Might've mistyped that before. 2011-11-05T14:26:59 i got that 2011-11-05T14:27:00 yea 2011-11-05T14:27:03 just discovered it 2011-11-05T14:27:21 something is still wrong with the color.. but i think ill find that 2011-11-05T14:27:23 hopefully 2011-11-05T14:27:31 thx so far DataWraith 2011-11-05T14:27:38 Did you change the At at the bottom of debugging.go 2011-11-05T14:27:47 to return image.NRGBAColor 2011-11-05T14:28:43 *** paulwal has joined #aichallenge 2011-11-05T14:29:18 I've a very stupid question, at each turn when you get the input it is not ordered, then how are you guys maintaining the id's for your ants 2011-11-05T14:29:24 Oh god, I just did something very very very stupid... I made my bot run play_one_game.cmd -.- 2011-11-05T14:29:27 *** Ionic_Groove has quit IRC (Ping timeout: 252 seconds) 2011-11-05T14:29:35 oh ok i changed the wrong one 2011-11-05T14:30:16 could it be that there are missing some type assertions after that change? 2011-11-05T14:30:18 *** cafaro has joined #aichallenge 2011-11-05T14:30:29 Hm, it compiles for me.. 2011-11-05T14:31:00 Oh, yeah, you need to delete the old imageOutPrefix := ... line 2011-11-05T14:31:07 ccc: I track the ants 2011-11-05T14:31:33 do i need to change the pixel function too? to NRGBA 2011-11-05T14:31:46 Don't think so. 2011-11-05T14:31:51 Is there a convenient way for debugging or printing text without interfering with the playgame tool? I'm using python 2011-11-05T14:31:54 Wait a minute, I'll just upload the patch 2011-11-05T14:32:00 log to file cafaro? 2011-11-05T14:32:08 caution: yeah was thinking about that 2011-11-05T14:32:14 ccc: if an ant isn't known, I create a new instance of my Ant class and then I track the movement after that 2011-11-05T14:32:16 caution: that seems to be the easiest 2011-11-05T14:32:30 cafaro: I'm considering making a GUI 2011-11-05T14:32:42 caution: thanks, i'll try to think about it 2011-11-05T14:32:52 too much work for me ;) 2011-11-05T14:33:22 I assign different roles to my ants, like defender and explorer and it'd be handy to be able to see that graphically 2011-11-05T14:33:23 ikaros: http://pastie.org/2816446 2011-11-05T14:33:47 the changes to the visualizer here http://aichallenge.org/forums/viewtopic.php?t=1633&p=10582 are really awesome for that 2011-11-05T14:34:20 *** moises has quit IRC (Remote host closed the connection) 2011-11-05T14:34:54 thx DataWraith 2011-11-05T14:34:59 but still assertion problem 2011-11-05T14:35:04 hm. 2011-11-05T14:35:14 what go version do you use? i just pulled the last release afaik :) 2011-11-05T14:35:23 The latest stable one 2011-11-05T14:35:26 hm 2011-11-05T14:35:34 ok guess we have the same =) 2011-11-05T14:36:06 *** analyst74 has joined #aichallenge 2011-11-05T14:36:22 do you have by any chance an idea regarding the output: http://pastebin.com/DfeEk9ER 2011-11-05T14:37:19 *** ztfw has joined #aichallenge 2011-11-05T14:37:46 *** oprs has joined #aichallenge 2011-11-05T14:37:46 Weird. 2011-11-05T14:38:30 Maybe you changed the wrong At-function? 2011-11-05T14:38:55 ikaros I have r60.3 9516 and graphing works for me. 2011-11-05T14:39:04 i got it 2011-11-05T14:39:12 yea i changed another at function too 2011-11-05T14:39:19 thank you for helping :) 2011-11-05T14:39:33 You're welcome. :) 2011-11-05T14:39:43 jcdjcd: Out of the box? 2011-11-05T14:39:54 soo.. testing images :) 2011-11-05T14:40:14 :) 2011-11-05T14:40:18 *** GeorgeSebastian has joined #aichallenge 2011-11-05T14:40:25 and there were bitmaps 2011-11-05T14:40:27 great 2011-11-05T14:40:27 *** delt0r__ has quit IRC (Ping timeout: 260 seconds) 2011-11-05T14:40:49 so close to my goal of rank 1000 2011-11-05T14:41:08 tempting to upload a new version and go back to rank 5000 though 2011-11-05T14:41:23 hi, is adding a library in C# allowed? 2011-11-05T14:42:11 think you can get it to work on the gameserver? 2011-11-05T14:42:56 caution: do you mean me? 2011-11-05T14:43:03 *** Saulzar has quit IRC (Ping timeout: 258 seconds) 2011-11-05T14:43:06 yes 2011-11-05T14:43:38 well, for now I get a compile error 2011-11-05T14:43:54 missing assembly reference 2011-11-05T14:44:45 Java developers might want to check out http://www.eclipse.org/Xtext/xtend/ 2011-11-05T14:45:16 *** bmh has quit IRC (Quit: bmh) 2011-11-05T14:45:31 DataWraith, is the method intended to not write the whole map? first 50 turns are grey only 2011-11-05T14:45:58 ikaros: That's where I gave up on it... 2011-11-05T14:46:14 ikaros: The image seems to show part of the map only, and I can't figure out why. 2011-11-05T14:46:19 oh i think its kind of a scaling down 2011-11-05T14:46:23 hm 2011-11-05T14:46:27 ill try :) 2011-11-05T14:46:30 ^^ 2011-11-05T14:46:34 have fun. :) 2011-11-05T14:46:35 *** anon has quit IRC (Quit: Page closed) 2011-11-05T14:46:37 thx 2011-11-05T14:46:39 *g 2011-11-05T14:47:09 *** GeorgeSebastian has quit IRC (Ping timeout: 252 seconds) 2011-11-05T14:49:48 *** paulwal has quit IRC (Quit: Page closed) 2011-11-05T14:50:00 DataWraith, try this: http://pastebin.com/Zy6rExZT 2011-11-05T14:50:35 sec 2011-11-05T14:51:35 I was just reading the C# "GetDirections" which I thought was a BFS that I could use to move my ants around, this is what it looks like: http://pastebin.com/KXpnRJrX 2011-11-05T14:51:42 Seems very..... useless to me 2011-11-05T14:52:06 ikaros: Cool, that does it. 2011-11-05T14:52:19 I thought that was for making every square four tiles in width. 2011-11-05T14:52:55 It says it's suppose to return the directions from loc1 to loc2, maybe I misunderstand 2011-11-05T14:53:37 foRei: It seems to just calculate the distance, not actually find a path 2011-11-05T14:53:57 since the function just returned a color . i think it kinda scaled .. also y,x were exchanged what turned the map 2011-11-05T14:54:04 foRei: So the ant using that would run into a wall. 2011-11-05T14:54:09 in combination with having it exchanged in the pixel func 2011-11-05T14:54:33 ikaros: I think y,x is correct, because the map is indexed by rows first an then cols. 2011-11-05T14:55:00 If it just wants to calculate the distance, then whats the point of saving directions instead of just increasing an variable >.< 2011-11-05T14:55:00 no because it is exchanged in pixel(..) again 2011-11-05T14:55:07 (i think) 2011-11-05T14:55:11 I suppose it works in big open areas with no water/walls 2011-11-05T14:55:27 foRei: Yup. 2011-11-05T14:55:34 ikaros: Hmkay. 2011-11-05T14:55:49 ikaros: I'll look into it some more once I get this #@!$& A* working... 2011-11-05T14:55:56 sorry 2011-11-05T14:55:59 not the pixel function 2011-11-05T14:56:03 but the imagehelper.at 2011-11-05T14:56:11 hehe A* 2011-11-05T14:56:20 ikaros: ^^ 2011-11-05T14:56:30 ikaros: Just a first step on the way towards D* Light. :P 2011-11-05T14:56:30 think about just dropping it in favour of bfs :) 2011-11-05T14:56:36 oh ok 2011-11-05T14:56:41 have alot of fun :) 2011-11-05T14:56:46 thanks. ^^ 2011-11-05T14:57:16 D* light better than A*? 2011-11-05T14:57:23 im trying to understand go further.. so i can finally try my new ideas 2011-11-05T14:57:46 foRei: Yeah, it reuses previous searches to speed up searching. 2011-11-05T14:58:00 Im trying to google it but no luck, where can I read about it? 2011-11-05T14:58:22 http://en.wikipedia.org/wiki/D* 2011-11-05T14:58:30 *** delt0r_ has joined #aichallenge 2011-11-05T14:58:30 as a starting point 2011-11-05T14:58:33 What he said. ^^ 2011-11-05T14:58:35 ty 2011-11-05T14:59:16 :) 2011-11-05T15:01:29 ah right, cus A* wouldn't be good in ants, cus u dont have full view of the map from the beginning, but D* can path while running when exploring new obstacles cool :D 2011-11-05T15:03:34 Actually, A* can too, using the Free Space Assumption, it's just a lot less efficient. 2011-11-05T15:05:12 I really need my debugger in visual studio to work, if im going to implement this >.< Is there any way to make it work when running ant ai locally? 2011-11-05T15:06:04 I think someone talked about that before, but I don't remember anything about it. 2011-11-05T15:06:39 what's the fastest path finding algo even if it doesn't find the shortest path? 2011-11-05T15:07:03 *** retybok_ has joined #aichallenge 2011-11-05T15:07:28 I think a simple BFS will be the fastest, since it doesnt search the same node twice 2011-11-05T15:07:37 foRei: Neither does A* 2011-11-05T15:07:50 true, but it can make bad moves because of heuristics 2011-11-05T15:08:00 Well, not if the heuristic is admissable. 2011-11-05T15:08:16 so it may end up finding the path last, if the map is designed in a certain way :D 2011-11-05T15:08:19 A* is pretty much the fastest algorithm (for a single search!) if you have an admissable heuristic. 2011-11-05T15:08:28 true 2011-11-05T15:08:51 what's an example of an admissable heuristic? 2011-11-05T15:09:16 Admissable means optimistic. An optimistic heuristic *never* overestimates the distance to the goal. 2011-11-05T15:09:17 manhattan distance 2011-11-05T15:09:22 *** bmh has joined #aichallenge 2011-11-05T15:09:22 *** bmh has joined #aichallenge 2011-11-05T15:09:33 *** mviel has joined #aichallenge 2011-11-05T15:09:44 Because if you overestimate the distance, A* is not guaranteed to find the optimal path (I think) 2011-11-05T15:09:48 making the A* pesimistic/non-admissible may speed it up a lot at the sacrifice of accuracy 2011-11-05T15:09:54 Yup. 2011-11-05T15:10:11 wikipedia has a pretty good disussion on the subject 2011-11-05T15:10:19 There is a variant of A* that uses a parameter to scale the heuristic. 2011-11-05T15:10:46 First searches with a inadmissable heuristic to find *any* path at all, and then again with more and more admissable heuristics to find a better path. 2011-11-05T15:10:56 It's all a trade-off of speed vs accuracy. 2011-11-05T15:10:59 *** bochi_ has joined #aichallenge 2011-11-05T15:11:09 And then there are the variants that re-use past searches, such as LPA* or D* Light. 2011-11-05T15:11:25 Which are slower for a single search, but faster for multiple ones. 2011-11-05T15:13:48 *** icefox has quit IRC (Quit: icefox) 2011-11-05T15:14:33 another upside to supporting pypy could be faster games for everyone 2011-11-05T15:15:19 the tutorial and sample bots run in pypy without modification 2011-11-05T15:15:41 *** retybok_ has quit IRC (Ping timeout: 240 seconds) 2011-11-05T15:15:54 *** icefox has joined #aichallenge 2011-11-05T15:17:18 *** Antimony has joined #aichallenge 2011-11-05T15:22:48 I'd love to see pypy support too 2011-11-05T15:24:21 I heard that janzert was the person to petition 2011-11-05T15:26:33 *** ChristianK has joined #aichallenge 2011-11-05T15:30:27 *** DataWraith has quit IRC (Quit: Lost terminal) 2011-11-05T15:30:48 *** DataWraith has joined #aichallenge 2011-11-05T15:32:34 *** zsds has joined #aichallenge 2011-11-05T15:35:56 *** exezive has joined #aichallenge 2011-11-05T15:36:18 *** djr_ has joined #aichallenge 2011-11-05T15:37:25 *** ccc has quit IRC (Quit: Computer has gone to sleep.) 2011-11-05T15:38:39 *** cyphase has quit IRC (Ping timeout: 256 seconds) 2011-11-05T15:41:53 *** olexs has joined #aichallenge 2011-11-05T15:42:42 *** praveen_ has joined #aichallenge 2011-11-05T15:45:33 *** Accoun has quit IRC () 2011-11-05T15:46:26 *** praveen_ has quit IRC (Client Quit) 2011-11-05T15:46:56 *** amanforindia has joined #aichallenge 2011-11-05T15:47:02 *** savaron has quit IRC (Quit: Page closed) 2011-11-05T15:47:59 does anyone know of any resource for finding good heuristics?? 2011-11-05T15:48:50 X * manhattan should work well, where X is some relaxation factor, the higher the faster A*, the lower the more accurate. 1 for admissible 2011-11-05T15:49:43 *** Fandekasp has quit IRC (Ping timeout: 255 seconds) 2011-11-05T15:49:59 *** dvladim has joined #aichallenge 2011-11-05T15:51:19 i know of that but actually i am looking to solve the clear-map pacman problem (collect all food in a maze with no ghosts at minimum cost)... this is quite similar to the thing i am thinking of implementing in my bot 2011-11-05T15:52:55 so if i could adapt manhattan distance for multiple targets.... 2011-11-05T15:53:56 *** DataWraith has quit IRC (Read error: Connection reset by peer) 2011-11-05T15:54:20 *** Fandekasp has joined #aichallenge 2011-11-05T15:54:48 *** DataWraith has joined #aichallenge 2011-11-05T15:55:00 *** AnJoMa has joined #aichallenge 2011-11-05T15:55:07 Hi 2011-11-05T15:55:20 I need help with the erlang submission 2011-11-05T15:55:39 *** ajf has quit IRC (Ping timeout: 256 seconds) 2011-11-05T15:56:11 How do the scripts try to run the erlang code ? 2011-11-05T15:57:06 I submitted a escript my_bot.erl but that fails 2011-11-05T15:57:08 *** ajf has joined #aichallenge 2011-11-05T15:57:34 *** ajf is now known as Guest89204 2011-11-05T15:58:10 AnJoMa: There is a test_bot script in the tools package 2011-11-05T15:58:22 AnJoMa: That runs the same test the servers run 2011-11-05T15:58:33 AnJoMa, what about MyBot.erl ( i think they are looking for MyBot + ext ) 2011-11-05T15:58:48 AnJoMa: pretty sure Erlang needs to be mybot.erl 2011-11-05T15:59:03 (erlang apparantly couldn't handle a camel cased named IIRC) 2011-11-05T15:59:13 ok. ;) 2011-11-05T15:59:54 oops, nope you do have it right 2011-11-05T15:59:57 my_bot.erl 2011-11-05T16:01:11 " i know of that but actually i am looking to solve the clear-map pacman problem (collect all food in a maze with no ghosts at minimum cost)... this is quite similar to the thing i am thinking of implementing in my bot" 2011-11-05T16:01:19 I've actually worked on that problem quite a bit 2011-11-05T16:01:27 *** djr_ has quit IRC (Read error: Connection reset by peer) 2011-11-05T16:01:48 for small amoutns of food, (<= 15), Dynamic programmign works well 2011-11-05T16:01:54 beyond that you have to do graph decompositions 2011-11-05T16:01:55 *** djr_ has joined #aichallenge 2011-11-05T16:02:06 and if the graph has large width, it's impossible to get an exact solution quickly 2011-11-05T16:02:18 AnJoMa: looks like it just calls "erlc " on every .erl file 2011-11-05T16:02:36 then runs them with an erl line 2011-11-05T16:02:43 *** Belerafon has joined #aichallenge 2011-11-05T16:02:45 DataWraith: thanks for the reply. 2011-11-05T16:02:50 *** Belerafon has quit IRC (Client Quit) 2011-11-05T16:02:53 amanforindia: Wouldn't that be traveling salesmen problem + A*? 2011-11-05T16:02:56 but from the error you have it's not making it past erlc 2011-11-05T16:03:38 If the cost between the cities are based on shortest A* path length and then solve TSP with those values, should tell you in which order to move to the targets 2011-11-05T16:03:40 *** erla has joined #aichallenge 2011-11-05T16:04:04 Then simply A* from A to B, B to C, C to D, etc 2011-11-05T16:04:13 There might be a smarter way tho :P 2011-11-05T16:04:24 AnJoMa: You're welcome. Have you seen janzerts and g0llums answers? 2011-11-05T16:04:32 foRei: Good point. 2011-11-05T16:04:34 DataWraith: I run the test script but not sure if it is working. I run it like "./test_bot.sh ../erlang/my_bot.erl" and I get some output that I don't know what is it 2011-11-05T16:05:11 AnJoMa: Oh, sorry. The test script assumes an already compiled executable. 2011-11-05T16:05:26 AnJoMa: janzert explained how the servers compile erlang. 2011-11-05T16:07:14 *** cyphase has joined #aichallenge 2011-11-05T16:08:09 *** Accoun has joined #aichallenge 2011-11-05T16:09:19 *** jcdjcd is now known as bugnuts 2011-11-05T16:10:45 *** erla has quit IRC (Ping timeout: 265 seconds) 2011-11-05T16:11:08 *** wasili has joined #aichallenge 2011-11-05T16:11:14 hello everyone 2011-11-05T16:11:47 AnJoMa: hm, interesting, my alg. worked very fast 2011-11-05T16:11:51 sry 2011-11-05T16:11:53 Antimony: 2011-11-05T16:11:53 could anyone please tell me if teams may have 3 people in them ? 2011-11-05T16:12:11 the FAQ states that teams are allowed 2011-11-05T16:12:51 what was the problem size? 2011-11-05T16:12:58 and what algorithm were you using? 2011-11-05T16:13:03 AnJoMa: i think i could do 500x500 cost matrix perfect matching a 1000 times in a sec 2011-11-05T16:13:08 bt i could be off 2011-11-05T16:13:11 *** Guest89204 is now known as ajf 2011-11-05T16:13:12 shit 2011-11-05T16:13:17 Antimony: of course 2011-11-05T16:13:24 perfect matching != traveling salesman 2011-11-05T16:13:55 Well, travelling salesman is NP-complete, so yeah. 2011-11-05T16:13:58 i am talking about assigning ants to food 2011-11-05T16:13:59 janzert: so I'll submit every src in the root of the zip. but the question is how does it start the code running? 2011-11-05T16:14:03 the most effective way 2011-11-05T16:14:16 It may be NP Complete, but there are many cases that can be solved efficiently 2011-11-05T16:14:18 wasili: a team of three or any size is fine, just be sure to only use one account for the whole team 2011-11-05T16:14:30 for example, graphs with bounded branchwidth can be solved in polynomial time 2011-11-05T16:14:35 True, but it does tend to get much more difficult with problem size 2011-11-05T16:14:42 and PAcman mazes often have a small branchwidth 2011-11-05T16:14:44 perfect matching in sort of n^3 2011-11-05T16:14:45 okay, thank you very much janzert 2011-11-05T16:14:46 AnJoMa: yes and the command is erl -hms"+ str(MEMORY_LIMIT) +"m -smp disable -noshell -s my_bot start -s init stop 2011-11-05T16:14:52 and you dont need better 2011-11-05T16:14:57 since everything is too dynamic 2011-11-05T16:15:08 So in most cases, Pacman can be exactly solved 2011-11-05T16:15:19 where the MEMORY_LIMIT part is replaced of course with the actual limit in megabytes 2011-11-05T16:15:30 Antimony: you can iterate perfect matching 2011-11-05T16:15:34 which is 1.5GB on the server 2011-11-05T16:15:58 I'm talking about the problem of finding the shortest path visting every food 2011-11-05T16:16:03 it's exponential in teh general case 2011-11-05T16:16:12 but you dont have 1 ant usually 2011-11-05T16:16:16 I know 2011-11-05T16:16:20 but someone asked about Pacman 2011-11-05T16:16:27 it's not applicable to Ants 2011-11-05T16:16:43 yep, but the environment is changing soo dynamically, that you are better off re-solving perfect matching as you go 2011-11-05T16:17:45 *** dvladim has quit IRC (Ping timeout: 256 seconds) 2011-11-05T16:18:32 well, if you knew the whole map and food wouldnt spawn after the start, traveling salesman would make perfect sense :D 2011-11-05T16:18:45 and if there were no enemies and only a single ant 2011-11-05T16:19:01 and you had to walk onto food 2011-11-05T16:19:19 and it's not technically TSP anyway, it's a variation 2011-11-05T16:19:30 aichallenge: janzert epsilon * ra9fa932 / worker/compiler.py : Set correct memory limit for dynamic languages - http://git.io/-2e7LA 2011-11-05T16:19:30 aichallenge: janzert epsilon * rff7a460 / (5 files): Merge branch 'epsilon' of github.com:aichallenge/aichallenge into epsilon - http://git.io/H-x44w 2011-11-05T16:19:31 standard TSP is a cycle and forbids repeated visits 2011-11-05T16:20:43 what? salesman got to get home? 2011-11-05T16:21:01 in the standard rpoblem, yes 2011-11-05T16:21:18 it makes things much simpler coding wise 2011-11-05T16:21:18 i would rather garbage collect my salesman 2011-11-05T16:21:26 but it doesn't affect the compelxity much 2011-11-05T16:21:38 *** amstan_ has joined #aichallenge 2011-11-05T16:21:38 *** ChanServ sets mode: +o amstan_ 2011-11-05T16:21:48 contestbot: seen mcleopold 2011-11-05T16:21:48 amstan_: mcleopold was last seen in #aichallenge 3 days, 0 hours, and 5 seconds ago: gtg 2011-11-05T16:22:06 whoa 2011-11-05T16:23:45 foRei: yup.... 2011-11-05T16:23:47 *** retybok_ has joined #aichallenge 2011-11-05T16:24:02 forei: any idea what to do then 2011-11-05T16:24:03 contestbot: seen Antomony 2011-11-05T16:24:03 Antimony: I have not seen Antomony. 2011-11-05T16:24:13 contestbot: seen Antimony 2011-11-05T16:24:13 Antimony: Antimony was last seen in #aichallenge 9 seconds ago: contestbot: seen Antomony 2011-11-05T16:24:19 lol 2011-11-05T16:26:09 what do u mean amanforindia? 2011-11-05T16:26:41 how do i get a good heuristic for travelling salesman with A* 2011-11-05T16:26:51 you don't 2011-11-05T16:27:02 use branch decomposition and dynamic programming 2011-11-05T16:27:55 "thank you, i'll do that" 2011-11-05T16:29:15 This should get you started. http://web.eecs.utk.edu/~langston/projects/papers/tmerge.pdf :) 2011-11-05T16:29:25 *** ChristianK has quit IRC (Remote host closed the connection) 2011-11-05T16:30:28 Antimony: cool...sorry, i didnt see ur replies earlier 2011-11-05T16:31:47 janzert: Thanks. it works now :D 2011-11-05T16:32:19 amanforindia if you dont have more than 10 targets then im sure my solution will work just fine.. A* with manhattan distance (1) as heuristic to get the weight between each node and simply bruteforce tsp to find the order in which you move to the targets... Thats how I'd do it :) 2011-11-05T16:32:36 But as I said, Im sure there are more elegant ways of solving it 2011-11-05T16:32:45 dynamic programmign is better than bruteforce 2011-11-05T16:33:05 but for large graphs, it's still too slow wihtout decomposition 2011-11-05T16:33:50 i still dont get why people are pushing this 2011-11-05T16:34:18 I'm not 2011-11-05T16:34:22 I'm just asnwering teh question 2011-11-05T16:34:24 no you 2011-11-05T16:34:26 t* 2011-11-05T16:34:36 lol... its not for the ant problem... 2011-11-05T16:34:42 the question i mean 2011-11-05T16:34:46 It's a problem I'm interested in since I was researchign it for a while before I started working on Ants 2011-11-05T16:37:20 *** yoden-cloud has quit IRC (Ping timeout: 265 seconds) 2011-11-05T16:37:27 janzert: any idea what's going on with the mapgen folder? 2011-11-05T16:37:36 janzert: what are we actually using from it? 2011-11-05T16:41:05 *** conor_f has joined #aichallenge 2011-11-05T16:41:31 *** mintsoup has joined #aichallenge 2011-11-05T16:42:17 *** epicmonkey has quit IRC (Read error: Operation timed out) 2011-11-05T16:42:23 why do none of the starter packages have hills implemented? 2011-11-05T16:42:38 they do 2011-11-05T16:42:40 mintsoup: Many of them were upgraded with hills 2011-11-05T16:43:02 it'd be cool if the visualiser showed the number of deaths per player 2011-11-05T16:43:04 so the starter packages page just isn't updated? 2011-11-05T16:43:31 http://aichallenge.org/starter_packages.php 2011-11-05T16:44:14 *** retybok_ has quit IRC (Read error: Operation timed out) 2011-11-05T16:45:11 mintsoup: Some of them have, maybe the one for your programming language wasn't. 2011-11-05T16:46:29 woot, no longer the worst in my country :) 2011-11-05T16:46:54 conor_f: gratz. ^^ 2011-11-05T16:48:06 peskoj has a great rank for all the timeouts 2011-11-05T16:48:13 hmm.. is there a place that links to the starter package code repos rather than zipped releases? 2011-11-05T16:48:43 mintsoup: Most of it should be on GitHub... one sec 2011-11-05T16:49:22 mintsoup: https://github.com/aichallenge/aichallenge/tree/epsilon/ants/dist/starter_bots 2011-11-05T16:50:51 DataWraith: @topic 2011-11-05T16:50:52 *** wasili has quit IRC (Ping timeout: 265 seconds) 2011-11-05T16:51:01 mcstar: Hm? 2011-11-05T16:51:05 try it 2011-11-05T16:51:20 @topic 2011-11-05T16:51:20 DataWraith: AI Challenge (sponsored by Google): http://aichallenge.org || Channel Logs: http://contestbot.aichallenge.org || Code Repo: http://github.com/aichallenge/aichallenge || About the game (Ants): http://aichallenge.org/problem_description.php || Submission deadline: December 18 23:59 EST 2011-11-05T16:51:24 http://aichallenge.org/visualizer.php?game=58815&user=8217 2011-11-05T16:51:38 not even funny how much I need exploration :P 2011-11-05T16:51:43 mcstar: Yeah, but that doesn't link to the starter packs 2011-11-05T16:51:50 mcstar: At least not directly. 2011-11-05T16:51:52 DataWraith: /topic too :P 2011-11-05T16:51:53 no, but its handy 2011-11-05T16:52:02 mcstar: Thx for the tip. ^^ 2011-11-05T16:52:03 depending on your client 2011-11-05T16:53:29 haha 2011-11-05T16:53:33 i found a nice game 2011-11-05T16:53:45 try to find your country by its code 2011-11-05T16:53:50 yeah 2011-11-05T16:54:04 as in go through every country until you find your one? :P 2011-11-05T16:54:05 i reached cambodia 2011-11-05T16:54:14 that's just stupid lol 2011-11-05T16:54:42 i thought i remembered 120, but its 108 2011-11-05T16:54:42 why are all your opponents going straight up? 2011-11-05T16:54:46 106 2011-11-05T16:54:58 caution: because they must be really stupid :P 2011-11-05T16:55:11 all of them using the same bot though 2011-11-05T16:55:29 must be one of the example bots 2011-11-05T16:56:03 cool Ireland 2011-11-05T16:56:09 ? :P 2011-11-05T16:56:14 only 20 people lol 2011-11-05T16:56:17 if I joined Ireland I'd be 3rd haha 2011-11-05T16:56:44 :P I want to get in the top 5 in .ie :) 2011-11-05T16:56:46 I dunno. Emigration seems like a lot of hassle just for improving one's rank... :P 2011-11-05T16:56:47 my goal lol 2011-11-05T16:57:03 hm, faking citizenship? 2011-11-05T16:58:15 ^^ 2011-11-05T16:58:29 or you could just write the bot in D: http://aichallenge.org/language_profile.php?language=D 2011-11-05T16:58:42 my bot doesn't even have pathfinding conor 2011-11-05T16:58:43 not much competition on that list 2011-11-05T16:58:46 you'll easily get top 3 2011-11-05T16:59:01 caution: hopefully :) I'm not the best coder though :/ 2011-11-05T16:59:29 looks like you just need to make the ants target different foods instead of all the same 2011-11-05T16:59:33 wait, how'd you get so high with no pathfinding?!? 2011-11-05T16:59:48 I'm top 1000, wouldn't call that high 2011-11-05T16:59:58 pretty good 2011-11-05T17:00:36 ants spasming around randomly is enough apparently 2011-11-05T17:00:45 I'd be happy enough with top 1000 2011-11-05T17:01:01 *** Antimony has quit IRC (Ping timeout: 240 seconds) 2011-11-05T17:03:12 *** GeorgeSebastian has joined #aichallenge 2011-11-05T17:03:12 *** GeorgeSebastian has joined #aichallenge 2011-11-05T17:03:16 can you control your ants individually? 2011-11-05T17:04:01 can you not? 2011-11-05T17:04:57 caution: if that was for me, yeah I can 2011-11-05T17:05:11 well, I'm implementing it now along with pathfinding which is nearly done :) 2011-11-05T17:05:19 I can Minthos 2011-11-05T17:05:27 I thought it was quite the accomplishment 2011-11-05T17:05:48 caution: I scrapped the starter bot really 2011-11-05T17:05:52 you mean tracking state for individual ants between turns? 2011-11-05T17:05:57 correct 2011-11-05T17:05:58 created an ant class, and everything works from that 2011-11-05T17:09:24 for(food_objectives_iter=food_objectives.begin(), int j=0; food_objectives_iter!=food_objectives.end(); food_objectives_iter++, j++) 2011-11-05T17:09:31 *** Antimony has joined #aichallenge 2011-11-05T17:10:09 someone mind telling me whats wrong with that? food_objectives is a list of ints 2011-11-05T17:10:21 MyBot.cpp:582:55: error: expected primary-expression before ‘int’ 2011-11-05T17:10:29 one of the errors I'm getting for that line 2011-11-05T17:10:48 You can't put a declaration in the middle of a statement. 2011-11-05T17:11:13 I thought you could with a for loop. 2011-11-05T17:11:13 The comma is actually an operator; it doesn't create separate statements as the semicolon does. 2011-11-05T17:11:14 ok 2011-11-05T17:11:17 conor_f, the thing behind the comma has to of the same type as the first 2011-11-05T17:11:31 g0llum: yeah, so int i=0, j=0; works 2011-11-05T17:11:37 but that doesn't. gotcha 2011-11-05T17:11:40 If you put "int j;" beforehand, it should be fine (assuming food_objectives_iter) is defined. 2011-11-05T17:11:50 yeah 2011-11-05T17:11:57 stupid mistake >_< 2011-11-05T17:14:05 *** mviel has quit IRC (Ping timeout: 240 seconds) 2011-11-05T17:15:05 yipppppie 2011-11-05T17:15:15 *** g0llum has quit IRC (Read error: Connection reset by peer) 2011-11-05T17:15:30 what took 20ms before, now takes < 6ms 2011-11-05T17:15:37 *** Loesje has joined #aichallenge 2011-11-05T17:15:38 *** g0llum has joined #aichallenge 2011-11-05T17:15:47 now a 2-ply game tree is feasible 2011-11-05T17:16:50 Question: I've submitted my bot and it played one game. Now for the second game, I have to wait more then two hours still. 2011-11-05T17:17:06 TCP server Loesje 2011-11-05T17:17:10 fluxid 2011-11-05T17:17:16 nono, its even better, what took 0.9 sec, now takes 0.07 secs 2011-11-05T17:17:21 But the bot that I have fighted against, has now already done four games after the game against my bot? 2011-11-05T17:17:22 ants.fluxid.pl iirc 2011-11-05T17:17:34 Loesje: yeah, it's a mess of a system :P 2011-11-05T17:17:52 conor_f, so that's normal? 2011-11-05T17:18:01 yup 2011-11-05T17:18:07 I waited a day without playing a game 2011-11-05T17:18:24 I won that fight, but that other both has a much higher ranking than mine, now. ;( 2011-11-05T17:18:25 your opponent was randomly picked for other games, no doubt 2011-11-05T17:18:58 Loesje: The players take turns; some bots get a lot of games because they get chosen as opponents often. That's a property of the ranking algorithm. 2011-11-05T17:19:11 Loesje: your bot will get its deserved rank within a few days 2011-11-05T17:19:19 it took something like 5 days from submission for my rank to stabilize 2011-11-05T17:19:26 my current favorite typo: for i,food in m.cows { ... wait, that was m.rols, wtf ;) 2011-11-05T17:19:31 So when are you chosen as opponent? 2011-11-05T17:19:52 when others need bots to fill a game 2011-11-05T17:19:54 Loesje: TrueSkill tries to match a bot against equally strong opponents. 2011-11-05T17:20:05 which means you're going to beat up on a few more starter bots 2011-11-05T17:20:29 Loesje: And if your bot has a certain strength, and the algorithm is fairly sure that it has that strength, it tends to get chosen often as opponent for bots with similar strength. 2011-11-05T17:20:32 And all the starter-bots have a lot of games, because there are many others on that level? 2011-11-05T17:20:54 That plays a role too. 2011-11-05T17:21:17 Basically the algorithm tries to maximize the information it can gain from the outcome of a match. 2011-11-05T17:21:41 That means that bots with low uncertainty in their skill, somewhat close to the skill of the bot that starts the game are chosen. 2011-11-05T17:21:42 So now I have to wait. Too bad, I hoped that submitting would show me some weak point that I could work on tonight. Now I have nothing to do. 2011-11-05T17:21:52 There's a TCP server. 2011-11-05T17:22:24 TCP server? (Are there servers on the net that does not use TCP?) 2011-11-05T17:22:31 (Yes there are, I know...) 2011-11-05T17:22:36 lol 2011-11-05T17:22:44 Loesje: The games are played over TCP, as opposed to locally over a pipe. 2011-11-05T17:22:47 There's a server were you can play your bot against other people also connecting to that. 2011-11-05T17:22:56 Instead of waiting for the official servers. 2011-11-05T17:23:07 (This is unofficial, and runs the bot on your computer, but can't be used for ranking because it isn't completely fair.) 2011-11-05T17:23:37 ants.fluxid.pl 2011-11-05T17:23:43 (Finally found the link...) 2011-11-05T17:24:10 @tcp 2011-11-05T17:24:11 jbroman: tcp could be http://ants.fluxid.pl/howto. 2011-11-05T17:24:17 (this is the easy way to recall it) 2011-11-05T17:24:22 22:22:24 < Loesje> TCP server? (Are there servers on the net that does not use TCP?) ← UDP? 2011-11-05T17:24:29 oh wait 2011-11-05T17:24:35 *** exezive has quit IRC (Remote host closed the connection) 2011-11-05T17:24:47 Fluxid, not only UDP, but also GRE and others... 2011-11-05T17:24:49 Fluxid did you see my remark about one of your games earlier? 2011-11-05T17:25:27 one of your ants looked to be one tile away from raising a hill but changed its mind 2011-11-05T17:25:36 *** JorgeB has joined #aichallenge 2011-11-05T17:25:44 caution: looking now 2011-11-05T17:25:53 @seen roflmao 2011-11-05T17:25:53 conor_f: roflmao was last seen in #aichallenge 20 hours, 44 minutes, and 41 seconds ago: what's up pair? 2011-11-05T17:26:03 I'd be interested to hear the explanation 2011-11-05T17:26:13 a1k0n: recursive generation proved to be the fastest for me 2011-11-05T17:26:24 mcstar: when doing minimax? of course 2011-11-05T17:26:31 anyone know if roflmao will be around later? 2011-11-05T17:26:33 *** cyphase has quit IRC (Ping timeout: 252 seconds) 2011-11-05T17:26:34 how are you generating moves? 2011-11-05T17:26:36 caution: oh shit... it was too scaried of coming closer to the enemy 2011-11-05T17:26:50 I'll try the fluxid server 2011-11-05T17:26:53 what do you mean? 2011-11-05T17:26:54 Thanks for the tip 2011-11-05T17:27:05 yeah i had a recent game where i had one ant chase off an attacker on my hill, haha 2011-11-05T17:27:21 a1k0n: this is benchmarking, so im just checking every possibility 2011-11-05T17:27:36 mcstar: of every ant in the combat area? 2011-11-05T17:27:41 ah no 2011-11-05T17:27:44 of course not 2011-11-05T17:27:51 *** djr_ has quit IRC (Quit: Leaving) 2011-11-05T17:27:58 well, there's the rub and thats what i'm asking about :) 2011-11-05T17:28:09 ok, what do you mean by combat area? 2011-11-05T17:28:21 my test case is 2 vs 1 ant 2011-11-05T17:29:05 and i can generate 2 turn possible futures in less than 6 ms 2011-11-05T17:29:21 its 2ms rather 2011-11-05T17:29:30 interpolating from a larger run 2011-11-05T17:29:32 well, the ants within the, let's call it "light cone", of the time horizon you're searching over 2011-11-05T17:29:38 aren't larger battles more realistic? 2011-11-05T17:30:07 a1k0n: well, there are 3 ants involved 2011-11-05T17:30:12 yeah in that case nevermind 2011-11-05T17:30:16 so its a very limited region 2011-11-05T17:30:24 ant light doesnt travel far in 2 turns 2011-11-05T17:31:00 yeah, you just have to consider peripheral ants that could enter combat in the general case 2011-11-05T17:31:19 i just told you this, because i remember you said something yesterday along the lines that recursive generation is not feasible? 2011-11-05T17:31:26 i could have misunderstood you 2011-11-05T17:31:34 definitely infeasible in general. 2011-11-05T17:31:53 i'm just.. considering the ideal case before optimizing it away :) 2011-11-05T17:31:58 but while the tree is shallow.... 2011-11-05T17:32:13 its a depth-first search 2011-11-05T17:32:19 so the stack isnt that big 2011-11-05T17:32:39 i mean technologically its not a problem 2011-11-05T17:32:44 right. 2011-11-05T17:33:59 *** mintsoup has quit IRC (Quit: Page closed) 2011-11-05T17:35:54 amstan: I haven't done much of anything with the map generators but I know only mapgen.py and symmetric_mapgen.py were working (the one makes the maze maps maps and the other random walk) 2011-11-05T17:36:11 I already end my turn 50ms early and still got a timeout I can't replicate locally, gah 2011-11-05T17:39:06 *** exezive has joined #aichallenge 2011-11-05T17:39:26 The csharp example bot "greedybot" is not compiling, is anyone maintaining it? 2011-11-05T17:40:24 *** cyphase has joined #aichallenge 2011-11-05T17:40:35 I've had lots of trouble with timeouts too 2011-11-05T17:40:42 it's a nasty problem 2011-11-05T17:41:14 The only real solution is to end even earlier just to be safe 2011-11-05T17:41:19 which is definitely annoying 2011-11-05T17:42:13 how much time_remaining before you end? 2011-11-05T17:42:17 Antimony: which is your bot? 2011-11-05T17:42:35 I'm PArasprites 2011-11-05T17:42:42 lol, I take it as a minor achievement that I did all the ai-class.org homework 4 without watching any of the unit 8 videos and in the last 30 mins got it all done :P 2011-11-05T17:42:44 currently it returns after 95% of time is used up 2011-11-05T17:42:54 it's only timed out once in 16 games on the server 2011-11-05T17:43:06 anyone know if roflmao will be around later? 2011-11-05T17:43:12 wow Go's rand.Perm function is awfully slow. 2011-11-05T17:43:36 *** fff_ has joined #aichallenge 2011-11-05T17:43:42 A lot of Go stuff still has the simplest possible implementation 2011-11-05T17:44:26 *** GeorgeSebastian has quit IRC (Ping timeout: 276 seconds) 2011-11-05T17:44:40 *** HaraKiri has quit IRC () 2011-11-05T17:45:09 bugnuts: try mathematica for permutations, really fast, just as for factorization 2011-11-05T17:45:20 i couldnt match its speed with my sieves 2011-11-05T17:45:38 How would factorization help with an ant bot? 2011-11-05T17:45:40 =) 2011-11-05T17:46:02 well, the other ant will be amazed how well you factorize 2011-11-05T17:46:11 and you get behind it to its hill 2011-11-05T17:46:21 I just generated the table of all permutations and draw from it with 1 random # 2011-11-05T17:46:27 *** fff_ is now known as mote 2011-11-05T17:46:35 mcstar uses confuse with factorization! It's Super Effective! 2011-11-05T17:46:38 *** IS has joined #aichallenge 2011-11-05T17:46:41 :D 2011-11-05T17:46:43 *** mote is now known as mote___ 2011-11-05T17:47:07 bugnuts: You could just use the first entry if the permutation is random anyway 2011-11-05T17:47:10 i'm getting an engine crash.. could somebody check this paste? http://pastebin.com/AL4ewQVH 2011-11-05T17:49:01 mote___: remove the --scenario option when using normal maps 2011-11-05T17:49:02 I don't think that's an engine crash 2011-11-05T17:49:08 *** g0llum has quit IRC (Read error: Connection reset by peer) 2011-11-05T17:49:11 huh? the first entry is {0,1,2,3} 2011-11-05T17:49:22 hill_aims[0][0] KeyError: 0 2011-11-05T17:49:23 we should really make the engine spit out a better error message for that though 2011-11-05T17:49:28 *** g0llum has joined #aichallenge 2011-11-05T17:49:41 oh my mistake 2011-11-05T17:49:51 bugnuts: Ah, sorry, misread what you wrote. 2011-11-05T17:49:51 caution: its' not my code in those files.. 2011-11-05T17:49:57 yes, sorry 2011-11-05T17:50:03 *** twymer has joined #aichallenge 2011-11-05T17:50:16 *** bmh has quit IRC (Quit: bmh) 2011-11-05T17:50:33 bugnuts: Oh, I think I get it now. That's supposed to speed up the choice vs generating the permutation on the fly. 2011-11-05T17:50:37 caution: am i passing a invalid option in the shellscript? 2011-11-05T17:50:44 mote___, you're running the game on an old map ? 2011-11-05T17:50:58 mote___: see my first answer above :) 2011-11-05T17:51:08 yeah - I am doing some stuff with montecarlo and it turns out 2/3 of the time was shuffling 4 numbers. 2011-11-05T17:51:09 remove the --scenario option when running regular maps 2011-11-05T17:51:15 janzert: didn't see that.. thanks! 2011-11-05T17:51:42 also, when you run the game with no options there's no information about what the scenario option means... 2011-11-05T17:52:51 hmm, yeah. Looks like someone never wrote the explanatory help message 2011-11-05T17:53:28 unfortunately I don't really know exactly ;) 2011-11-05T17:53:53 janzert: lol.. okay.. well thank you anyway, it's running now.. :) 2011-11-05T17:53:55 bugnuts: D'aw. You just trounced me on the server. 2011-11-05T17:54:05 *** Antimony has quit IRC (Ping timeout: 240 seconds) 2011-11-05T17:54:06 I'm pretty sure it uses the existing food and ants on the map instead of starting ants on the hills and spawning random initial food 2011-11-05T17:54:17 I think Mcleopold made it for the tutorial 2011-11-05T17:55:17 # for scenarios, the map file is followed exactly 2011-11-05T17:55:50 *** yoden-cloud has joined #aichallenge 2011-11-05T17:56:41 looking at the code I think you're right 2011-11-05T17:56:41 heh. My bot gets tired in long matches and gives up if it had lasted longer you would have won I think :) 2011-11-05T17:57:00 meh all my ants are sticking together 2011-11-05T17:57:12 Probably not. My bot has no exploration/razing code yet. 2011-11-05T17:57:28 I generate a set of targets around the map so the ants will explore but when they run out of explore points I don;t do anything special 2011-11-05T17:57:37 *** Palmik has quit IRC (Remote host closed the connection) 2011-11-05T17:57:41 worst is the ant sits on the hill too 2011-11-05T17:57:49 Heh. 2011-11-05T17:57:59 In the process of fixing it. 2011-11-05T17:58:28 I considered putting exploration points into the largest unknown area, but I'll just wait until I've got D*, which makes exploration easy. 2011-11-05T17:58:32 *** AnJoMa has quit IRC (Ping timeout: 265 seconds) 2011-11-05T18:02:00 *** mote___ has quit IRC (Quit: Page closed) 2011-11-05T18:03:32 *** epicmonkey has joined #aichallenge 2011-11-05T18:04:36 at least, now this part amuses me 2011-11-05T18:05:00 seemed like a chore to write the bot so long 2011-11-05T18:05:29 *** Antimony has joined #aichallenge 2011-11-05T18:05:40 *** Demox has joined #aichallenge 2011-11-05T18:06:34 *** bochi_ has quit IRC (Quit: Page closed) 2011-11-05T18:08:58 anybody has experience in graphing? 2011-11-05T18:09:10 i.e. visualizing graphs? 2011-11-05T18:09:35 something scriptable? 2011-11-05T18:10:21 *** bmh has joined #aichallenge 2011-11-05T18:10:32 *** bmh has joined #aichallenge 2011-11-05T18:10:38 http://www.gnuplot.info/ 2011-11-05T18:10:40 *** Murashka has quit IRC (Quit: Page closed) 2011-11-05T18:11:06 Gnuplot can read in files containing additional commands during an interactive session, or it can be run in batch mode by piping a pre-existing file or a stream of commands to stdin. 2011-11-05T18:11:20 i didnt know gnuplot does graphs 2011-11-05T18:11:25 *** Loesje has quit IRC (Quit: Leaving) 2011-11-05T18:11:53 maybe we have a different understanding of what a graph is 2011-11-05T18:11:56 mcstar: Some people misinterpret "graph" as "plot" 2011-11-05T18:12:07 caution: A graph as in a set of nodes and edges, with attributes. 2011-11-05T18:12:09 yeah, not the "graph" of a function 2011-11-05T18:12:16 i said visualizing graphs 2011-11-05T18:12:22 caution: Not the kind of graph as a graphing calculator would produce. 2011-11-05T18:12:40 mcstar: I'd say something around graphviz, probably. 2011-11-05T18:12:53 Zao: have you tried it? 2011-11-05T18:13:17 With its tools, you can either have it layout graphs, or render them to assorted output formats. 2011-11-05T18:13:47 Kind of depends what needs you have, I guess. 2011-11-05T18:14:17 well, i just want to explore battle resolutions 2011-11-05T18:14:35 i know mathematica has very nice graphs, but its not very scriptable :D 2011-11-05T18:14:41 http://www.graphviz.org/Gallery.php is an example of the kinds of things it does. it's fun to play with 2011-11-05T18:15:07 seems very sophisticated 2011-11-05T18:15:35 mcstar: Emit their text representation, then let dotty/lefty/etc. lay them out in a pleasing manner. 2011-11-05T18:15:42 Some of those tools are graphical. 2011-11-05T18:16:33 aham, it makes sense now 2011-11-05T18:16:47 has a dsl 2011-11-05T18:18:25 what do you know 2011-11-05T18:18:29 i have it installed 2011-11-05T18:18:48 :/ my bot crashes after 1 turn. why isn't there something in the engine that gives you an idea of what went wrong :/ 2011-11-05T18:19:07 conor_f: are you testing it offline? 2011-11-05T18:19:10 yeah 2011-11-05T18:19:19 did you use debug messages? 2011-11-05T18:19:22 just says status crashed 2011-11-05T18:19:26 yup, nothing in it 2011-11-05T18:19:28 conor_f: Adjust the setup/turn limits way high, let your bot wait for a bit on startup, and attach a debugger in the meantime. 2011-11-05T18:19:32 I got some noob questions: 1st, where do i change my email address? I cant see it under my profile page. 2011-11-05T18:19:52 That's what I did, anyway, before I gave the bot network capabilities :D 2011-11-05T18:19:53 conor_f: try to add debug messages between the crash, so you can locate it 2011-11-05T18:20:12 and later why 2011-11-05T18:20:16 Zao: true, seems excessive though :/ 2011-11-05T18:20:17 Demox: probably you cant 2011-11-05T18:20:32 conor_f: You're crashing. Crashes are easiest to handle through a debugger. 2011-11-05T18:20:39 conor_f: Or make it dump core and post-mortem debug. 2011-11-05T18:20:52 printf-debugging is a very poor substitute. 2011-11-05T18:20:53 avdg: yeah, I have isolated it. something happens between the turn end (which is ok) and the next turn's start 2011-11-05T18:21:05 as in gdb? :/ 2011-11-05T18:21:12 Oh, k thx mcstar 2011-11-05T18:21:14 I hate that 2011-11-05T18:21:29 Demox: talk to amstan or janzert 2011-11-05T18:22:26 wtf, I've two scripts, game.sh and tutorial.sh 2011-11-05T18:22:40 crashes in tutorial.sh, runs in game.sh.... 2011-11-05T18:23:33 granted it dies naturally straight away 2011-11-05T18:23:35 but still 2011-11-05T18:25:35 Is the name/password for fluxid the same as aichallenge.org? 2011-11-05T18:25:41 o 2011-11-05T18:25:42 *no 2011-11-05T18:25:42 bergmark: no 2011-11-05T18:25:56 bergmark: You just choose them when you connect for the first time 2011-11-05T18:26:08 bergmark: i.e. just use whatever you want and as many as you want 2011-11-05T18:26:20 DataWraith: I see, thank you 2011-11-05T18:26:28 bergmark: You're welcome 2011-11-05T18:27:08 how does matching on the tcp server work? 2011-11-05T18:29:38 jix, no matching there, simple fifo 2011-11-05T18:30:12 *** bmh has quit IRC (Quit: bmh) 2011-11-05T18:32:34 bergmark: NOOOOO 2011-11-05T18:32:39 don't use real password 2011-11-05T18:32:46 just whatever comes to mind 2011-11-05T18:33:12 Fluxid: Thanks, probably on the wire plain txt so not sure what I was thinking. 2011-11-05T18:34:27 my password is just a short repeated sequence of letters 2011-11-05T18:34:52 if someone wants to brute force it and pretend to be me on the server go right ahead, probably you'll just increase my score :p 2011-11-05T18:35:18 (on fluxid that is, not the real server ofc) 2011-11-05T18:35:58 my password to my briefcase is 12345 2011-11-05T18:36:08 lol 2011-11-05T18:36:11 actually the combination to my lock 2011-11-05T18:36:13 briefcase ;) 2011-11-05T18:36:24 do you get the reference? 2011-11-05T18:36:25 you classy, upstanding man :P 2011-11-05T18:36:27 jk jk 2011-11-05T18:36:34 nope, not a clue lol 2011-11-05T18:36:39 spaceballs 2011-11-05T18:36:54 Comb the desert! 2011-11-05T18:36:57 "hey, that is my combination for my briefcase too, clever!" 2011-11-05T18:37:03 never saw it :/ 2011-11-05T18:38:09 imdb has it in memorable quotes for it :P 2011-11-05T18:39:06 *** ztfw has quit IRC (Read error: Connection reset by peer) 2011-11-05T18:40:27 quotes in text form is not really the same as seeing the film 2011-11-05T18:40:55 I'm a mog: half man, half dog. I'm my own best friend! 2011-11-05T18:41:03 *** Buttons840 has joined #aichallenge 2011-11-05T18:41:11 but if you memorize them you can still go "oh that's from spaceballs, that film is sooo funny!" whenever someone drops a reference 2011-11-05T18:41:19 *** olexs has quit IRC (Quit: Leaving.) 2011-11-05T18:41:20 :P 2011-11-05T18:41:28 when you see john candy smile, you do too 2011-11-05T18:41:35 lol at the length of anchorman's memorable quotes page 2011-11-05T18:41:46 it's about 50 screens I'd say 2011-11-05T18:41:55 *** Esak has joined #aichallenge 2011-11-05T18:42:18 someone with photographic memory watched it and wrote down all the dialogue they remembered? :) 2011-11-05T18:42:34 nah, you just get them :P 2011-11-05T18:42:39 did you ever see anchorman? 2011-11-05T18:42:46 don't remember 2011-11-05T18:42:47 I can quote most of that movie lol 2011-11-05T18:43:01 is there a way to print debug messages from a bot on my own computer? 2011-11-05T18:43:22 anchorman? whats that? 2011-11-05T18:43:22 *** bmh has joined #aichallenge 2011-11-05T18:43:23 *** bmh has joined #aichallenge 2011-11-05T18:43:24 sure 2011-11-05T18:43:29 i know 2011-11-05T18:43:41 :P 2011-11-05T18:43:47 I nearly had a hear attack lol 2011-11-05T18:43:47 Buttons840: yeah, write to stderr and tell the scripts to show stderr output 2011-11-05T18:43:50 i mean i think i know the actor 2011-11-05T18:43:57 farell? 2011-11-05T18:44:00 run it with turminal 2011-11-05T18:44:07 terminal* 2011-11-05T18:44:14 will farrel? 2011-11-05T18:44:28 maan, my brain is slow at night 2011-11-05T18:44:29 ferrel :P 2011-11-05T18:44:34 *however you spell it 2011-11-05T18:44:39 Minthos: thanks 2011-11-05T18:44:45 conor_f: its on my to watch list 2011-11-05T18:44:54 good 2011-11-05T18:44:57 he has a big beard in it 2011-11-05T18:45:02 it's the funniest movie I've ever seen 2011-11-05T18:45:05 no, mustache 2011-11-05T18:45:33 are you students? 2011-11-05T18:45:38 or just some hobbiests? 2011-11-05T18:45:44 *** epicmonkey has quit IRC (Ping timeout: 240 seconds) 2011-11-05T18:45:58 this is a hobby 2011-11-05T18:46:02 *hobbey? 2011-11-05T18:46:04 Esak: are you asking 8500 people? 2011-11-05T18:46:07 no, hobby 2011-11-05T18:46:10 hobbyists* 2011-11-05T18:46:34 I am asking only the ones who react :) 2011-11-05T18:46:44 oh, now i must answer 2011-11-05T18:47:09 hobbey 2011-11-05T18:47:27 which programming languages do you use? 2011-11-05T18:47:38 hard to say 2011-11-05T18:47:44 ? 2011-11-05T18:47:50 i just switched 2011-11-05T18:47:54 one that's just an increment better then all the rest :P 2011-11-05T18:47:58 *for me 2011-11-05T18:48:27 i switched to a worse language actually 2011-11-05T18:48:33 for practical reasons 2011-11-05T18:48:35 you changed again? 2011-11-05T18:48:42 no, only once 2011-11-05T18:48:52 which language? 2011-11-05T18:49:00 from common lisp to c++ 2011-11-05T18:49:48 ouch 2011-11-05T18:49:50 Esak: I'm a professional, but I'm just doing this for fun 2011-11-05T18:50:04 is a 'low level' language really necessary or is a interpreter like php also fine? 2011-11-05T18:50:11 ah ok :) 2011-11-05T18:50:51 i bet there is php for the jvm :D 2011-11-05T18:50:52 I am a web developer so the low level languages are pretty hard to use for me :( 2011-11-05T18:51:30 I meant more for the speed 2011-11-05T18:52:04 it could be faster than a php to c compiler 2011-11-05T18:52:07 or i dont know 2011-11-05T18:52:07 for some things I think you want at least half-decent performance 2011-11-05T18:52:13 i mean im not familiar with php 2011-11-05T18:52:28 pathfinding and combat specifically 2011-11-05T18:52:43 true 2011-11-05T18:53:02 multiple languages is not allowed/possible right? 2011-11-05T18:53:09 it's possible 2011-11-05T18:53:11 *** cherio has quit IRC (Quit: Page closed) 2011-11-05T18:53:35 C _asm_() :P 2011-11-05T18:54:02 *** miczkhd has joined #aichallenge 2011-11-05T18:54:18 well, depends what you mean by multiple 2011-11-05T18:54:18 not sure how it works exactly, but I think you can upload compiled libraries that your program links against if you can fit it within the 2 MB limit 2011-11-05T18:55:32 *** JorgeB has quit IRC (Quit: Computer has gone to sleep.) 2011-11-05T18:55:37 Good night. :-) 2011-11-05T18:55:39 *** DataWraith has quit IRC (Quit: leaving) 2011-11-05T18:56:05 *** amstan_ has quit IRC (Ping timeout: 240 seconds) 2011-11-05T18:56:05 *** amstan has quit IRC (Ping timeout: 240 seconds) 2011-11-05T18:56:37 I thought I read that it was not allowed 2011-11-05T18:57:25 I don't know whether it's allowed or not, just that it is possible 2011-11-05T18:57:46 two different questions :) 2011-11-05T19:01:16 hm, my battle resolution is faulty 2011-11-05T19:02:05 *** Esak has quit IRC (Quit: Page closed) 2011-11-05T19:03:47 *** IS has quit IRC (Ping timeout: 265 seconds) 2011-11-05T19:06:06 catched the bastard 2011-11-05T19:06:18 i havent initialized an array on the stack 2011-11-05T19:06:50 ah, really c++ gurus 2011-11-05T19:07:03 win, I think pathfinding works for me now XD 2011-11-05T19:07:08 is there a C++ idiomatic way of doing memset? 2011-11-05T19:10:16 mcstar: I would help, but I can't :P 2011-11-05T19:10:19 *** Antimony has quit IRC (Ping timeout: 252 seconds) 2011-11-05T19:10:32 that was a useful comment 2011-11-05T19:10:34 wow, he _really_ needs a new chat client 2011-11-05T19:10:55 *** g0llum has quit IRC (Read error: Connection reset by peer) 2011-11-05T19:11:02 mcstar: you always help me, so I felt it only polite to acknowledge you 2011-11-05T19:11:12 *** g0llum has joined #aichallenge 2011-11-05T19:11:21 and i found out an empty initialization list 0's out the array 2011-11-05T19:11:41 huh? 2011-11-05T19:11:44 oh 2011-11-05T19:11:47 gotcha 2011-11-05T19:11:56 ah well, it all works now :) 2011-11-05T19:12:21 oh, fluxid added a feature, search for a player 2011-11-05T19:12:29 if you're using C++, trying to follow its policies seems like a bad idea 2011-11-05T19:13:16 Minthos: wtf? 2011-11-05T19:13:20 anyway, its bad 2011-11-05T19:13:22 still 2011-11-05T19:13:34 it's nice to want to learn the tools you're working with, but at some point it's better to just C everything that can be C-ed and C++ the rest 2011-11-05T19:13:39 since my stack-allocated array has run-time determined length 2011-11-05T19:13:59 *** zsds has quit IRC (Quit: Page closed) 2011-11-05T19:14:18 *** exezive has quit IRC (Remote host closed the connection) 2011-11-05T19:14:21 Minthos: well, i try using as little c-headers as possible 2011-11-05T19:14:21 I just vectored everything because it made everything easier 2011-11-05T19:14:23 yeah by all means use std::vector for all it's worth 2011-11-05T19:14:29 nooo 2011-11-05T19:14:40 i dont want stl vectors 2011-11-05T19:14:44 just don't go overboard with C++ mindset when you're writing C++ 2011-11-05T19:14:46 i dont need dynamic sizes 2011-11-05T19:15:24 fair enough, I do 2011-11-05T19:15:31 same 2011-11-05T19:15:34 *** delt0r_ has quit IRC (Ping timeout: 258 seconds) 2011-11-05T19:15:36 for other stuff, yes 2011-11-05T19:15:50 but this is the game tree generation, and it needs to be fast 2011-11-05T19:16:07 and the size is contant all along, when the alg runs 2011-11-05T19:16:13 Has anyone tried reinforcement learning (Q-learning) for spreading out on the map? Im wondering how well it would do :P 2011-11-05T19:16:37 slendidly 2011-11-05T19:16:41 splendidly 2011-11-05T19:16:57 unfortunately we dont have time to spend on bad ideas 2011-11-05T19:17:00 :D 2011-11-05T19:17:01 conor_f: i merged it from upstream 2011-11-05T19:17:20 good idea :) it's a nice feature 2011-11-05T19:17:35 were you involved with the python script for accessing the TCP servers? 2011-11-05T19:17:43 berak's work 2011-11-05T19:17:48 no, i just fixed few things 2011-11-05T19:17:51 and hosted 2011-11-05T19:17:54 nothing else 2011-11-05T19:18:02 most work was already done 2011-11-05T19:18:14 it just happened my server got popular ;P 2011-11-05T19:18:16 :/ the python client doesn't exit cleanly. no biggie, just something 2011-11-05T19:18:28 you have a hostname, not just an ip :P 2011-11-05T19:18:38 it does now wait for child 2011-11-05T19:18:53 and leaves hanging bot children under init? 2011-11-05T19:19:06 maybe i'll look into it later 2011-11-05T19:19:10 it's grand 2011-11-05T19:19:19 was just saying I'd mention it 2011-11-05T19:19:31 also, what do the numbers after your name mean on fluxid? 2011-11-05T19:19:32 *** mleise has quit IRC (Ping timeout: 260 seconds) 2011-11-05T19:20:05 where? on main page? 2011-11-05T19:20:15 how many points in a game you got 2011-11-05T19:20:22 ah 2011-11-05T19:20:31 exactly the same as in visualizer at the end of game 2011-11-05T19:20:32 that'd explain all my zeros then ;) 2011-11-05T19:20:48 ;) 2011-11-05T19:21:27 bleh 2011-11-05T19:21:41 I dunno what's wrong with my bot, thought I got it working but I didn't :/ 2011-11-05T19:21:53 foRei: there was supposed to be a whole class of students doing some evolutionary algorithms 2011-11-05T19:22:11 but i didnt see their teachers come back 2011-11-05T19:22:46 ow 2011-11-05T19:23:30 foRei: i think it's a good approach (though i'd learn the value function instead of the Q function, since the transition is pretty trivial) 2011-11-05T19:23:47 *** miczkhd has quit IRC (Quit: Page closed) 2011-11-05T19:24:30 except i guess for the unknown locations of food and enemy ants 2011-11-05T19:24:54 I'll give both a try and see what happens :) 2011-11-05T19:25:10 foRei: contest ends on dec 28 2011-11-05T19:25:15 *** Larose has quit IRC (Quit: Leaving.) 2011-11-05T19:25:41 yeah? 2011-11-05T19:25:42 yep, 18th 2011-11-05T19:26:09 *** caution has quit IRC (Read error: Connection reset by peer) 2011-11-05T19:26:35 I dont follow :P 2011-11-05T19:27:32 i dont know how much work is envolved in developing such a bot 2011-11-05T19:27:40 but i guess much 2011-11-05T19:27:54 and im just saying, dec 18th is not that far away 2011-11-05T19:28:17 much can be done in a weekend 2011-11-05T19:28:33 very much depends on your experience level 2011-11-05T19:28:34 Q learning is easy 2011-11-05T19:28:52 *** delt0r_ has joined #aichallenge 2011-11-05T19:28:54 you can sit and think and daydream, or you can program the whole time 2011-11-05T19:28:58 depends on your representation i suppose. in fact.. wow. 2011-11-05T19:29:08 my bot is around 1000 SLOC 2011-11-05T19:29:17 mine two 2011-11-05T19:29:20 and I think that's a fairly common size 2011-11-05T19:29:22 shouldn't take long to implement reinforcement learning, not too complicated 2011-11-05T19:29:37 mine's 1304 2011-11-05T19:29:38 yeah, i dont know nothing about it 2011-11-05T19:30:09 a1k0n: what language? 2011-11-05T19:30:14 C++ 2011-11-05T19:30:28 i don't use reinforcement learning per se, but i do use the theory it's based on already 2011-11-05T19:30:28 you did tron with c++? 2011-11-05T19:30:31 i did 2011-11-05T19:30:34 http://paste.pocoo.org/show/503572/ -- My bot contains only print statements in the setup and do_turn; yet these print statements are not logged, can someone check the code and launch script i'm using? 2011-11-05T19:30:55 im coming to realize that my bot's evaluation is extremely buggy 2011-11-05T19:30:56 *** conor_f has quit IRC (Quit: leaving) 2011-11-05T19:30:57 i guess i will be visiting wikipedia soon 2011-11-05T19:31:52 a1k0n: so could this q-learning be used to evaluate the leafes? 2011-11-05T19:31:57 -e 2011-11-05T19:32:04 *** marijnfs has joined #aichallenge 2011-11-05T19:32:05 *** g0llum has quit IRC (Ping timeout: 240 seconds) 2011-11-05T19:32:06 Buttons840: http://stackoverflow.com/questions/5574702/how-to-print-to-stderr-in-python 2011-11-05T19:32:40 mcstar: ehh... i guess so. the state space of a leaf is too huge. it'd only be useful for local tactics 2011-11-05T19:32:56 or, i guess with a different representation it could work. dunno 2011-11-05T19:33:07 first i apply the battle res. to it 2011-11-05T19:33:29 and somehow i need to map (live, dead...) values to a flaot 2011-11-05T19:33:37 i mean a tuple to a flaot 2011-11-05T19:33:58 i thought i could use it here 2011-11-05T19:34:35 Minthos: do you know what the log stdout option for the playgame.py is? it doesn't appear to log stdout? 2011-11-05T19:35:00 Buttons840: stdout is used for communication between the game and the bot 2011-11-05T19:38:29 janzert: 2011-11-05T19:39:44 @later tell janzert http://aichallenge.org/specification.php has a bug, the first paragraph implies the bot sould send a "ready" after initialization 2011-11-05T19:39:44 mcstar: I come to serve. 2011-11-05T19:45:45 *** Jak_o_Shadows has joined #aichallenge 2011-11-05T19:47:33 *** icefox has quit IRC (Quit: icefox) 2011-11-05T19:54:14 *** kilae_ has quit IRC (Quit: ChatZilla 0.9.87 [Firefox 7.0.1/20110928134238]) 2011-11-05T19:54:36 *** caution has joined #aichallenge 2011-11-05T19:55:51 *** amstan_ has joined #aichallenge 2011-11-05T19:55:51 *** ChanServ sets mode: +o amstan_ 2011-11-05T19:57:16 antimatroid: ping 2011-11-05T19:57:23 antimatroid: i'm rewriting the mapgen 2011-11-05T19:57:28 amstan_: http://aichallenge.org/specification.php 2011-11-05T19:57:30 antimatroid: how do i make translational symmetry work? 2011-11-05T19:57:38 read the first paragraph 2011-11-05T19:57:51 mcstar: yes? 2011-11-05T19:57:52 *** amstan_ is now known as amstan 2011-11-05T19:58:04 see the error? 2011-11-05T19:58:12 nope 2011-11-05T19:58:19 After the bot has processed this data, it should return a 'ready'. 2011-11-05T19:58:21 *** twymer has quit IRC (Ping timeout: 252 seconds) 2011-11-05T19:58:32 yes? 2011-11-05T19:58:39 the never sends ready 2011-11-05T19:58:40 it might be wrong, idk 2011-11-05T19:58:46 only go 2011-11-05T19:58:51 the bot* 2011-11-05T19:58:51 ok, fix the docs? 2011-11-05T19:59:02 i didnt find it 2011-11-05T19:59:07 it was Demox 2011-11-05T19:59:14 still applies 2011-11-05T19:59:54 ah, ok, if it was a question, then yes, please fix it 2011-11-05T20:00:05 it's not a question, it's an invitation 2011-11-05T20:00:39 amstan: if it will be there tomorrow, ill try a pull thingy 2011-11-05T20:00:47 im too tired now to think git 2011-11-05T20:00:53 it's just a wiki edit 2011-11-05T20:01:05 *** danielharan has joined #aichallenge 2011-11-05T20:01:06 you can do it from the browser 2011-11-05T20:01:13 *** tobiassjosten has quit IRC (Ping timeout: 245 seconds) 2011-11-05T20:01:23 ok 2011-11-05T20:01:38 hm, chromium kept me logged in 2011-11-05T20:02:56 *** tobiassjosten has joined #aichallenge 2011-11-05T20:02:58 amstan: done 2011-11-05T20:03:11 is it possible for viewradius2 to == attackradius2 ? 2011-11-05T20:03:27 danielharan: i don't think we'll be changing those any time soon 2011-11-05T20:03:40 ok. same with spawnradius2? 2011-11-05T20:03:46 yes 2011-11-05T20:03:48 that wont never change 2011-11-05T20:03:57 but be assured that viewradius will be much bigger than attack 2011-11-05T20:03:57 it's 1 now, right? 2011-11-05T20:04:12 yep, gmt+1 2011-11-05T20:04:27 the only way any of radii will change at this point is if we find a major problem with the current settings, which should be pretty unlikely by now 2011-11-05T20:04:46 *** amanforindia has left #aichallenge ("Leaving") 2011-11-05T20:04:46 cool. certainly makes things easier 2011-11-05T20:04:57 and not likely to be fixed by a simple radius change anyway :( 2011-11-05T20:05:18 but the standard disclaimer still applies ;) 2011-11-05T20:05:28 yeah, it *could* happen 2011-11-05T20:05:32 if it does change and it breaks your bot it's not our fault/problem :P 2011-11-05T20:05:32 ? :) 2011-11-05T20:05:37 amstan: so how is the site updated from github? 2011-11-05T20:05:39 oh, of course 2011-11-05T20:06:19 mcstar: see wiki 2011-11-05T20:06:37 mcstar: manually by doing git pulls 2011-11-05T20:06:46 oh.. you mean that, yeah 2011-11-05T20:06:47 k 2011-11-05T20:08:13 janzert: do you know anything about the mapgen? how was this generated? http://aichallenge.org/map.php?map=maze/maze_02p_02.map 2011-11-05T20:08:40 *** icefox has joined #aichallenge 2011-11-05T20:08:41 only a very little bit, did you see my response on what I knew earlier? 2011-11-05T20:09:06 janzert: nope, i think i missed it 2011-11-05T20:09:17 basically only mapgen.py and symmetric_mapgen.py work 2011-11-05T20:09:29 what's the diff 2011-11-05T20:09:30 one is random walk and one is mazes 2011-11-05T20:09:36 *** yoden-cloud has quit IRC (Quit: Page closed) 2011-11-05T20:09:43 I'd have to look at them again to figure which is which 2011-11-05T20:09:47 ok 2011-11-05T20:09:52 *** icefox has quit IRC (Client Quit) 2011-11-05T20:10:19 I just manually tweaked the limits to generate the maps for the start of the competition 2011-11-05T20:10:27 i do have this question about the viewradius2 is the sqrt of the radius truncated or rounded? because there is no such thing as half a tile of vision right? 2011-11-05T20:11:03 Ellos_: if the tile distance is < the radius it is in range 2011-11-05T20:11:22 distance is the euclidean distance 2011-11-05T20:12:46 janzert: ehm so that means it is truncated then.. 2011-11-05T20:13:58 it's an arbitrary number. not sure how truncated is relevant 2011-11-05T20:15:05 and actually it is <= 2011-11-05T20:15:30 I suppose truncating it would give the same result as far as I can think of offhand 2011-11-05T20:15:40 yeah thats what i meant 2011-11-05T20:15:46 but neither is done :} 2011-11-05T20:15:56 you go from double precision to an int 2011-11-05T20:16:10 actually pretty sure radius^2 is just used everywhere 2011-11-05T20:16:17 saves doing a sqrt anywhere 2011-11-05T20:16:53 yeah but using it in my code to ease the calculation of my prio map 2011-11-05T20:17:50 a sort of collaborative diffusion but a bit more advanced than how most people implement it 2011-11-05T20:18:20 still have to find out if it is going to do magic or be around the same as a standard CD alg. 2011-11-05T20:27:14 *** McLeopold has joined #aichallenge 2011-11-05T20:28:04 amstan: can you add more forums areas? 2011-11-05T20:28:16 McLeopold: what forum areas? 2011-11-05T20:28:31 Development & tools has 1598 posts 2011-11-05T20:28:39 *** orange3 has joined #aichallenge 2011-11-05T20:28:40 that is way too high, it's too much to wade through 2011-11-05T20:28:48 ok, so what do you propose? 2011-11-05T20:28:53 One per language 2011-11-05T20:29:02 plus the tools 2011-11-05T20:29:15 that's about 20 forums 2011-11-05T20:29:21 yes it is 2011-11-05T20:29:21 more 2011-11-05T20:29:30 :( 2011-11-05T20:29:39 and a ton of languages don't even have posts about them 2011-11-05T20:29:46 so they'll be empty 2011-11-05T20:29:52 and many of those language specific questions really aren't 2011-11-05T20:30:03 Im in doubt, if I create 2011-11-05T20:30:03 List RLL = new List(); 2011-11-05T20:30:09 it's still to much in one area 2011-11-05T20:30:10 Argh, sorry wasn't done typing 2011-11-05T20:30:12 *** Antimony has joined #aichallenge 2011-11-05T20:30:52 how do i declare a custom exception in python, where i can do something like SymmetryException("2 players") and it outputs: This symmetry type only supports 2 players. on error? 2011-11-05T20:31:03 Im in doubt, if I create List RLL = new List(); inside class MyBot : Bot {, will the List be re-created each turn or will it exist for the whole game? (Im thinking whole game) 2011-11-05T20:31:05 amstan: Just extend Exception 2011-11-05T20:31:17 okay, how about this, tools, issues with website, issues with starter packages, testing... 2011-11-05T20:31:19 jbroman: what else do i need in there? 2011-11-05T20:31:33 McLeopold: which one is ants only? 2011-11-05T20:31:34 amstan: same as a normal class 2011-11-05T20:31:44 amstan: Just create the class, and call the superclass constructor as you wish. 2011-11-05T20:32:00 forgot the superclass constructor 2011-11-05T20:32:03 *** marijnfs has quit IRC (Quit: Lost terminal) 2011-11-05T20:32:06 In your example, the superclass constructor may simply make the error message more verbose. 2011-11-05T20:33:46 amstan: those are all ants only 2011-11-05T20:35:30 McLeopold: issues with the website? 2011-11-05T20:35:55 *** ha has joined #aichallenge 2011-11-05T20:36:53 amstan: I'll take suggestions, but it *needs* to be split up 2011-11-05T20:37:31 you're gonna make me bust out etherpad... 2011-11-05T20:37:57 *** marijnfs_ has joined #aichallenge 2011-11-05T20:38:01 *** mcstar has quit IRC (Quit: WeeChat 0.3.6) 2011-11-05T20:38:10 McLeopold: i'm currently working on a mapgen 2011-11-05T20:38:19 http://ietherpad.com/O2cfCoy28r 2011-11-05T20:38:28 amstan: be sure to extend the map class in map.py 2011-11-05T20:39:06 McLeopold: i already made my own map subclasses, i wasn't sure how to use map.py 2011-11-05T20:39:20 from what i saw, no mapgen used map.py 2011-11-05T20:39:39 amstan: we I get around to enforcing map constraints, I'm going to need to re-write the current generators to use them 2011-11-05T20:39:54 amstan: heightmap is an example of how to use it 2011-11-05T20:40:03 I think random might be too 2011-11-05T20:40:07 McLeopold: heightmap was just infinite looping last time i tried it 2011-11-05T20:40:26 * janzert nods 2011-11-05T20:40:54 amstan: look at random_map.py 2011-11-05T20:40:56 how likely are the settings like attackradius to change? 2011-11-05T20:41:05 i'm making my own because I failed at adding stuff to mapgen.py, it seemed like the symmetry was too intermingled with the maze logic 2011-11-05T20:41:10 caution: very, very unlikely 2011-11-05T20:41:19 caution: we hope not to change them and would only do so if a problem arose 2011-11-05T20:42:25 McLeopold: do you know how the translational symmetry works? 2011-11-05T20:42:32 in theory 2011-11-05T20:43:23 amstan: about the foums :), let get them split, see the etherpad link 2011-11-05T20:43:33 I notice in the visualiser, up two, left or right one square, doesn't always show the attackradius circle. Is this accurate or a display error? 2011-11-05T20:43:49 *** Apfel has joined #aichallenge 2011-11-05T20:46:38 yay, fixing a single line bug brought me up 100 places 2011-11-05T20:46:50 *** Redgis has quit IRC (Ping timeout: 244 seconds) 2011-11-05T20:46:51 Im going insane >.< It's so hard to debug a large code without breaking points, does anyone know if it is possible to debug properly in C# visual studio? 2011-11-05T20:47:30 *** bmh has quit IRC (Quit: bmh) 2011-11-05T20:51:12 foRei: what do you mean by 'debug properly'? 2011-11-05T20:51:54 Set a break point and see the values of all data while the code is running, slowly stepping forward to trace the code and find the error 2011-11-05T20:52:32 yes you can do that in visual studio. youu'll need to manually attach to your running process if you are using the scripts to start your game 2011-11-05T20:52:52 debug -> attach to process.... 2011-11-05T20:53:44 McLeopold: the more i think about it the more we should be using the forums instead of the mailing list 2011-11-05T20:53:53 I agree 2011-11-05T20:54:05 so i'll keep that 2011-11-05T20:54:06 I don't see "attach to process", it's suppose to be under "Debug" in the Visual C# (File, Edit, View, etc) ? 2011-11-05T20:54:10 actually, I don't care, I just want 1 place 2011-11-05T20:54:33 i believe so. i'm going by memory. i don't have visual studio on this machine 2011-11-05T20:55:01 I dont see it in there >.< 2011-11-05T20:55:02 McLeopold: i'll just stop posting there 2011-11-05T20:55:17 I don't think jeff will ever switch :( 2011-11-05T20:55:22 doesn't seem like anyway 2011-11-05T20:57:43 amstan: okay, did 2 changes to new layout, marked which ones would be monitored by admins 2011-11-05T20:58:16 I'm willing to move posts around if you get it setup 2011-11-05T21:00:04 *** danielharan has quit IRC (Remote host closed the connection) 2011-11-05T21:02:23 *** bobbydroptable has joined #aichallenge 2011-11-05T21:03:01 McLeopold: what's the diff between bot devel and starter packages? 2011-11-05T21:05:30 oh man I had a very stupid bug in my "am I moving ants to the same point" logic 2011-11-05T21:05:38 didn't clear everything inbetween turns 2011-11-05T21:08:12 *** ikaros has quit IRC (Quit: Ex-Chat) 2011-11-05T21:08:12 *** ajf is now known as ajf|offline 2011-11-05T21:11:26 *** bmh has joined #aichallenge 2011-11-05T21:11:27 *** bmh has joined #aichallenge 2011-11-05T21:15:02 *** cyphase has quit IRC (Quit: http://www.cyphase.com/) 2011-11-05T21:18:53 *** Antimony has quit IRC (Ping timeout: 240 seconds) 2011-11-05T21:20:45 grrrrr 2011-11-05T21:20:51 the askscience crowd is so god damn annoying 2011-11-05T21:22:13 *** Extrarius has quit IRC (Ping timeout: 260 seconds) 2011-11-05T21:23:12 *** Garf has quit IRC (Read error: Connection reset by peer) 2011-11-05T21:23:51 *** Garf has joined #aichallenge 2011-11-05T21:24:19 *** smiley1983 has quit IRC (Ping timeout: 256 seconds) 2011-11-05T21:26:30 antimatroid: so.. how does your translation symmetry work? 2011-11-05T21:26:36 antimatroid: i assume you need a specific map size 2011-11-05T21:26:43 *** bobbydroptable has quit IRC (Quit: Leaving) 2011-11-05T21:26:57 amstan: http://www.reddit.com/r/Algebra/comments/j27dt/generating_tessellations_on_a_discrete_torus/ 2011-11-05T21:26:58 and then you calculate deltax and deltay for between players? 2011-11-05T21:27:58 basically you define translate(loc) := ((loc.row + row_translate)%rows, (loc.col + col_translate)%cols)m then pick n = no_players, rows, cols, row_translate and col_translate such that translate^n(x) = x for all locations x 2011-11-05T21:28:25 *** marijnfs_ has quit IRC (Remote host closed the connection) 2011-11-05T21:28:36 n = lcm(rows/gcd(rows, row_translate), cols/gcd(cols, col_translate)) 2011-11-05T21:28:55 janzert came up with a way of picking out row_translate and col_translate for a given n and rows, cols too i think 2011-11-05T21:29:06 using coprimes 2011-11-05T21:29:39 can't i do rows/players*random,columns/players*random? 2011-11-05T21:29:49 what's n? number of players? 2011-11-05T21:29:52 yeah 2011-11-05T21:29:54 i already have n and the size 2011-11-05T21:30:02 i need to find the translate values 2011-11-05T21:30:11 and give an error when it's not possible 2011-11-05T21:30:23 which i assume it's just a divisor test 2011-11-05T21:30:24 i think janzert could help you better with that 2011-11-05T21:30:48 *** smiley1983 has joined #aichallenge 2011-11-05T21:30:52 i don't have time to go back through waht he did, although i think it's it mapgen.py somewhere 2011-11-05T21:31:18 *** twymer has joined #aichallenge 2011-11-05T21:31:56 antimatroid: not sure what to look for, but i'll fiddle with my thing until i get it 2011-11-05T21:34:26 i can't fidn the bit :\ 2011-11-05T21:34:34 janzert will know where it is after 2011-11-05T21:38:56 *** Demox has quit IRC (Ping timeout: 265 seconds) 2011-11-05T21:41:05 *** bmh has quit IRC (Quit: bmh) 2011-11-05T21:41:36 *** ChrisH has joined #aichallenge 2011-11-05T21:44:15 aichallenge: Alexandru Stan amstan_mapgen * r4621ae2 / (13 files): started work on new mapgen - http://git.io/3d1Oig 2011-11-05T21:46:26 *** amstan_ has joined #aichallenge 2011-11-05T21:46:26 *** ChanServ sets mode: +o amstan_ 2011-11-05T21:47:56 *** Extrarius has joined #aichallenge 2011-11-05T21:48:29 *** amstan has quit IRC (Ping timeout: 240 seconds) 2011-11-05T21:49:36 *** babadaba has joined #aichallenge 2011-11-05T21:50:44 *** XjSv24 has joined #aichallenge 2011-11-05T21:50:56 so how can u target a unseen 2011-11-05T21:51:20 *** swinejihad has joined #aichallenge 2011-11-05T21:51:36 anyone? 2011-11-05T21:51:39 ? 2011-11-05T21:52:18 I'm here 2011-11-05T21:52:35 might u happen to know 2011-11-05T21:52:40 how u can target a unseen part or the land 2011-11-05T21:53:07 what do you mean? telling if a specific tile is unseen? 2011-11-05T21:53:28 *** ChrisH has quit IRC (Quit: Page closed) 2011-11-05T21:53:37 like getting an array of the unseen tiles around u 2011-11-05T21:53:51 in order to move towards that direction 2011-11-05T21:53:57 *** babadaba has quit IRC (Client Quit) 2011-11-05T21:54:27 determining whether a tile is seen or unseen is a complicated procedure 2011-11-05T21:54:36 *** sigh has joined #aichallenge 2011-11-05T21:54:40 it's probably just easier to have your ants move away form each other 2011-11-05T21:55:09 yea thats easyer lol but its not about whats easy 2011-11-05T21:55:24 its even easyer to not do it at all lol 2011-11-05T21:56:11 there are simpler alternatives but if you insisted on going that way you'd have to be able to figure out whether a tile is seen or unseen 2011-11-05T21:56:19 then apply it to every tile on the map 2011-11-05T21:56:38 unless you did something like approximated 2011-11-05T21:57:44 well im just trying to get the closest tiles around and move towards that direction 2011-11-05T21:58:16 that is the fallback event when there are no other targets around 2011-11-05T21:59:36 *** Antimony has joined #aichallenge 2011-11-05T22:01:34 *** XjSv24 has quit IRC (Quit: Page closed) 2011-11-05T22:05:18 *** Ellos_ has quit IRC (Quit: Page closed) 2011-11-05T22:06:38 *** cafaro has quit IRC (Remote host closed the connection) 2011-11-05T22:09:59 meh my bot is good enough to not die fast... but not good enough to win... so games on tcp take aaages 2011-11-05T22:11:38 aichallenge: Alexandru Stan amstan_mapgen * rad637cd / (ants/mapgen/symmetricmap.py ants/mapgen/terrain.py): All symmetries working - http://git.io/gJkraA 2011-11-05T22:12:32 a slow and painfull death... 2011-11-05T22:16:05 *** Jak_o_Shadows1 has joined #aichallenge 2011-11-05T22:16:27 *** NefariousZhen has joined #aichallenge 2011-11-05T22:16:50 What's the easiest way to build the visualizer from the aichallenge repo? 2011-11-05T22:18:50 *** Jak_o_Shadows has quit IRC (Ping timeout: 258 seconds) 2011-11-05T22:19:13 =)=)=) my bot is about to play a game! moment of truth 2011-11-05T22:33:10 *** bobbydroptable has joined #aichallenge 2011-11-05T22:33:11 aichallenge: Alexandru Stan amstan_mapgen * r6b4113f / (3 files): added cavemaps algorithms - http://git.io/P78nUQ 2011-11-05T22:34:29 *** caution has quit IRC (Quit: caution) 2011-11-05T22:34:47 *** eashoka has joined #aichallenge 2011-11-05T22:35:00 *** swinejihad has quit IRC (Ping timeout: 265 seconds) 2011-11-05T22:35:19 *** hjax has joined #aichallenge 2011-11-05T22:35:34 hello 2011-11-05T22:36:00 ahoy 2011-11-05T22:36:07 hey bobby 2011-11-05T22:36:18 *** hjax has quit IRC (Client Quit) 2011-11-05T22:36:32 *** hjax has joined #aichallenge 2011-11-05T22:36:39 get 2011-11-05T22:36:42 grrrrrr 2011-11-05T22:36:59 *** hjax has quit IRC (Client Quit) 2011-11-05T22:37:11 *** hjax has joined #aichallenge 2011-11-05T22:37:25 stupid irc client 2011-11-05T22:37:49 amstan_: did you figure out how to generate a valid row and col translation? 2011-11-05T22:37:51 my bot might get into some working order tomorrow :-) 2011-11-05T22:37:57 janzert: yep 2011-11-05T22:38:14 janzert: self.translation=Point(size.x/num_players*translation_factor.x,size.y/num_players*translation_factor.y) 2011-11-05T22:38:37 amstan_: yep where translation_factor has to be coprime 2011-11-05T22:38:44 to the number of players that is 2011-11-05T22:38:45 janzert: where translation_factor can be any point that's integer actually 2011-11-05T22:38:52 no 2011-11-05T22:38:54 you sure? 2011-11-05T22:38:55 http://aichallenge.org/visualizer.php?game=63290 - Is some of my ants not moving because of time running out? my algorithm is very small and simple 2011-11-05T22:38:57 yes 2011-11-05T22:39:13 janzert: why? 2011-11-05T22:39:16 *** hjax has quit IRC (Client Quit) 2011-11-05T22:39:26 or you will end up with hills in the same row and/or col 2011-11-05T22:39:35 and why is that bad? 2011-11-05T22:39:54 *** hjax has joined #aichallenge 2011-11-05T22:39:54 the maps look more grid like then 2011-11-05T22:39:57 ask antimatroid or mcleopold I just know it was one of the requirements 2011-11-05T22:40:07 :} 2011-11-05T22:40:18 you could have a map where 2 players are side by side, it looks like a mirror but it's not 2011-11-05T22:40:44 there's no reason other than aesthetics for why that's the case (as far as I know) 2011-11-05T22:40:50 so you're welcome to get rid of that requirement 2011-11-05T22:40:55 ok :) 2011-11-05T22:41:13 foRei: what language? 2011-11-05T22:41:16 C# 2011-11-05T22:41:24 after I went through all the thought and work to figure out the coprime method too :/ 2011-11-05T22:41:31 what's your ants username? 2011-11-05T22:41:40 what's wrong with a map like this for example: http://paste.aichallenge.org/APaaI/? 2011-11-05T22:41:44 mutalisk 2011-11-05T22:41:51 my translation_factor=Point(1,0) for that 2011-11-05T22:42:12 foRei: play Starcraft? 2011-11-05T22:42:21 :p ofc ^^ 2011-11-05T22:42:39 less of the map will probably end up being important in general but I can't really think of a big problem offhand 2011-11-05T22:43:00 *** Jak_o_Shadows1 has quit IRC (Remote host closed the connection) 2011-11-05T22:43:12 except with more players you're likely to end up with staggered back and forth allignments 2011-11-05T22:43:46 toRei: try playing on a TCP server, then you can test for timeouts 2011-11-05T22:43:52 janzert: like this? http://paste.aichallenge.org/Nlpw5/ 2011-11-05T22:44:03 hjax good idea, I'll do that :D 2011-11-05T22:44:06 janzert: or on a diagonal? 2011-11-05T22:44:08 not what I meant no 2011-11-05T22:44:09 no 2011-11-05T22:44:12 :) 2011-11-05T22:44:27 try 6 players with a 3, 1 2011-11-05T22:44:42 or 3, 0 2011-11-05T22:45:22 http://paste.aichallenge.org/mAqyl/ 2011-11-05T22:45:34 6 with 3,1 2011-11-05T22:45:37 yes, that's more what I mean 2011-11-05T22:45:49 anything wrong with it? 2011-11-05T22:45:50 *** Antimony_ has joined #aichallenge 2011-11-05T22:46:09 amstan: the leftmost hills 2011-11-05T22:46:19 well.. anyway, the important thing is that i have that factor in the SymmetricMap constructor and can always be overridden 2011-11-05T22:46:33 it splits the players into odds and evens 2011-11-05T22:46:46 janzert: exactly 2011-11-05T22:46:51 but yeah, if it needs to be fixed just pick the factors the way it is done in symmetric_mapgen now 2011-11-05T22:47:01 lines 83-85 2011-11-05T22:47:09 janzert: i experimented with translation_factor=Point(1,num_players-1) 2011-11-05T22:47:12 janzert: it looks pretty good 2011-11-05T22:47:19 janzert: or that.. 2011-11-05T22:47:36 *** danielharan has joined #aichallenge 2011-11-05T22:47:54 now.. how do i reproduce the mazemaps? 2011-11-05T22:48:09 run mapgen.py? 2011-11-05T22:48:20 as in.. how do i recode it? 2011-11-05T22:48:34 ahh :) 2011-11-05T22:48:36 no idea 2011-11-05T22:48:47 *** Antimony has quit IRC (Ping timeout: 248 seconds) 2011-11-05T22:49:00 *** Antimony_ is now known as Antimony 2011-11-05T22:49:19 i should probably write a getopt frontend for this 2011-11-05T22:50:44 optparse is better 2011-11-05T22:50:46 *** goffrie has joined #aichallenge 2011-11-05T22:50:50 Extrarius: right.. that 2011-11-05T22:51:49 I just wish they'd make a version of the optparse module for windows (eg / for parameters instead of - etc) 2011-11-05T22:52:30 how long per day do you guys spend working on aicontest itself? 2011-11-05T22:53:07 hjax: depends on our mood 2011-11-05T22:53:09 define working. I spend a lot of time thinking about possible algorithms and approaches etc, but probably an hour a day (at MOST) actually at the keyboard doing anything 2011-11-05T22:53:41 extrarius: I didn't mean on boys 2011-11-05T22:53:44 bots* 2011-11-05T22:54:06 ah 2011-11-05T22:54:28 hjax: i 've spent > 2 weeks every day just thinking/staring at code/writing stuff down. 2011-11-05T22:54:37 although im 4 hours at least into my bot and it cannot even gather food 2011-11-05T22:54:38 i haven't done any paying work at all during that time 2011-11-05T22:54:43 which is kind of a worry... 2011-11-05T22:55:10 hmm 2011-11-05T22:55:16 how should i organize these filling methods 2011-11-05T22:55:20 should i keep them in classes? 2011-11-05T22:55:56 in a way, this challenge scratches several itches: learn AI stuffs, learn a new language, and do something interesting and productive 2011-11-05T22:55:57 that's probably what I would do but I guess it depends on how the rest of the code works 2011-11-05T22:56:02 my bot is garbage, mostly because I don't apply any ai concepts, I just write it to play the game, plus I'm bad at python 2011-11-05T22:56:06 I assume they're more than a simple function 2011-11-05T22:56:38 janzert: so far i nested the classes: symmetricmap(symmetry) inherets map(players) inherets terrain(land vs water) 2011-11-05T22:56:41 well once you realise that you don't apply any AI concepts you'll eventually research some 2011-11-05T22:56:59 and then you realised that you probably accidentally implemented 1 or 2 AI related stuff 2011-11-05T22:57:25 idk how things like minimax work, and the first thing I am putting in is BFS 2011-11-05T22:57:38 janzert: i guess i could just make all the filling methods inheret from symmetricmap, since there's not much point to inheret just map 2011-11-05T22:57:53 bobbydroptable: This is definitely the best AI challenge I've ever seen - most of them are either way too simple or way too complicated, whereas the ants thing seems to be just enough to make the game itself interesting while still also having room for any amount of AI you want to apply 2011-11-05T22:58:02 amstan_: hmm... I don't particularly like deep inheritance chains myself 2011-11-05T22:58:12 but I'm not writing it so go for the style you like :) 2011-11-05T22:58:35 BFS is a fundamental algorithm in AI. 2011-11-05T22:58:40 janzert: i wrote it like that because it was easy to test 2011-11-05T22:58:46 bobbydroptable: my bot can't even explore or gather food yet.... 2011-11-05T22:59:23 bobby: I know, I need it for pathfinding, I actually reinvented it and had someone tell me it already exists 2011-11-05T22:59:31 instead of the fill class inheriting from the map class can it just be given a map to fill? 2011-11-05T22:59:52 yeh 2011-11-05T23:00:04 I'm not really sure the fill class API looks like though 2011-11-05T23:00:08 so in a way you're probably just treading a path others have already passed through 2011-11-05T23:00:12 janzert: it's not made yet 2011-11-05T23:00:32 but I haven't started coding it yet, I can't even implement a good queue (the one I'm writing ATM is soooo slow) 2011-11-05T23:00:39 yeah, with classes, the important question is which makes more sense: "A is a B", "A has a B", or "A has many Bs" 2011-11-05T23:00:41 yeah, I meant more what it should like/ what role it is exactly filling 2011-11-05T23:00:45 *** Antimony has quit IRC (Ping timeout: 260 seconds) 2011-11-05T23:00:51 so go write it and see what comes out ;) 2011-11-05T23:01:16 janzert: my goal is to do print CaveMap(size=Point(10,10),players=2,"horizontal_reflection") and recieve a map 2011-11-05T23:01:42 but no.. there's other things that have to go in, sigh 2011-11-05T23:02:26 it'd be neat to have hybrid maps, eg maze-like bases with random walk fields between bases or somesuch 2011-11-05T23:02:44 bobbydroptable: my queue deals with manipulating long strings and holding them in a list, in python = slow 2011-11-05T23:04:00 probably could be done better then? 2011-11-05T23:04:04 why strings 2011-11-05T23:04:31 *** hjax has quit IRC (Quit: hjax) 2011-11-05T23:04:43 *** hjax has joined #aichallenge 2011-11-05T23:05:06 because idk a better way of doing it 2011-11-05T23:05:26 what's the long strings representing? 2011-11-05T23:05:54 ants current location, destination, origin, and queued moves 2011-11-05T23:06:03 all packed into one string 2011-11-05T23:06:09 why not store them in lists? 2011-11-05T23:06:49 yeh putting them all into 1 string doesn't provide much benefit 2011-11-05T23:06:51 because I thought nesting lists in lists would be slower 2011-11-05T23:06:58 in fact it probably increases memory usage 2011-11-05T23:07:04 string overhead is much higher 2011-11-05T23:07:48 ill rewrite it with lists then, it will still be slow >.> 2011-11-05T23:08:00 lol 2011-11-05T23:10:23 now i feel stupid 2011-11-05T23:10:37 nrb 2011-11-05T23:10:40 brb 2011-11-05T23:10:45 *** hjax has quit IRC (Remote host closed the connection) 2011-11-05T23:10:57 i'd been banging my head away at something for ages, it's really easy to unreasonably assume commutativity of . when expanding (a+b)^2 in a ring :\ 2011-11-05T23:11:29 *** hjax has joined #aichallenge 2011-11-05T23:12:12 will ants.passable() work on locations outside of my ants sight? 2011-11-05T23:12:16 *** Antimony has joined #aichallenge 2011-11-05T23:12:25 hjax: if the tile hasn't been explored, it says yes 2011-11-05T23:12:37 hmm ok 2011-11-05T23:12:37 if it has been explored, and there is a water tile, it says no 2011-11-05T23:13:15 note that ants.passable() isn't enough to know you can move somewhere - you can't move on top of food (eg if it spawns in front of you) but passable will return true 2011-11-05T23:13:44 true 2011-11-05T23:14:28 tomorrow I'm finishing my queue, stopping my ants from suisiding, and adding exploration 2011-11-05T23:14:57 suicide is also not prevented by passable 2011-11-05T23:15:12 Extrarius but if food spawns next to you, it will get collected anyway so i don't understand that assertion 2011-11-05T23:15:56 bobbydroptable: It will get collected during the next turn, but if you try to move over it, the move will fail, so you'll be in the same spot as last turn 2011-11-05T23:16:25 if you're keeping track of your ants by location and updating location after each order, you'll lose track of your ants if you don't take that into account 2011-11-05T23:16:45 huh. interesting 2011-11-05T23:16:50 that will destroy my queue code 2011-11-05T23:17:03 I'll need to add a check for that 2011-11-05T23:17:44 *** danielharan has quit IRC (Remote host closed the connection) 2011-11-05T23:17:45 *** hjax has quit IRC (Remote host closed the connection) 2011-11-05T23:19:00 yeah, took me a long time to figure out why I was losing track of my ants and startign to get invalid orders over time 2011-11-05T23:19:17 *** pedrosorio_ has quit IRC (Quit: Page closed) 2011-11-05T23:19:59 *** foRei has quit IRC (Read error: Connection reset by peer) 2011-11-05T23:20:34 *** Saulzar has joined #aichallenge 2011-11-05T23:21:43 i'll keep that in mind 2011-11-05T23:23:55 urgh do i really want to redo my bot again? ==" 2011-11-05T23:24:16 i'm using a diffusion model at the moment, and the swarming behavior isn't working really well. 2011-11-05T23:24:30 doesn't achieve the kind of spread that i want 2011-11-05T23:25:01 I got much better spready in mine by making them seek unseen areas when they don't have a nearby target 2011-11-05T23:28:56 *** danielharan has joined #aichallenge 2011-11-05T23:31:34 *** hjax has joined #aichallenge 2011-11-05T23:31:49 amstan_: you still here? 2011-11-05T23:31:54 hjax: yes? 2011-11-05T23:32:06 bahah. there's something seriously wrong with my combat logic, but at least it's vaguely aware of what's going on 2011-11-05T23:32:10 http://ants.fluxid.pl/replay.22417 2011-11-05T23:32:46 is it possible to get something like pypy running on the server? its do much faster than regular python a large amount of the time 2011-11-05T23:33:00 it's so much faster* 2011-11-05T23:33:12 hjax: please talk to janzert or post on the forums about this 2011-11-05T23:33:49 *** hjax has quit IRC (Remote host closed the connection) 2011-11-05T23:34:07 *** hjax has joined #aichallenge 2011-11-05T23:34:18 janzert you still here? 2011-11-05T23:34:42 *** Saulzar has quit IRC (Ping timeout: 252 seconds) 2011-11-05T23:35:13 awww he is afk 2011-11-05T23:36:08 hjax: I'm hoping to add it yes, it's just a time issue when I can get to it 2011-11-05T23:36:53 janzert: how much effort is it to add? It would help ease the time constraints off of python players 2011-11-05T23:37:56 I believe their latest release fixes the issues I had with it last time I tried so hopefully not too much 2011-11-05T23:38:37 good :-), the regular python starter not should run fine in pypy, and I'll write a new one if it doesn't 2011-11-05T23:38:58 bot* 2011-11-05T23:39:01 btw have you actually tested your bot with it, or just think it will be magic elixir to speed your bot up? 2011-11-05T23:39:19 I've been playing with it 2011-11-05T23:39:32 how much speed up do you see? 2011-11-05T23:39:46 and have you had any problems with stdio speed? 2011-11-05T23:39:49 I'll write a real benchmark using timers and the tcp server tomorrow 2011-11-05T23:39:58 ok 2011-11-05T23:40:57 Ill be able to tell by the numbers what differences it makes, that should be fun. I'll do that tomorrow morning 2011-11-05T23:41:08 I know they just fixed a problem with very slow stdin in the last few days, obviously that's not in their previous release so I'm hoping that it's not something that will effect bots too much 2011-11-05T23:41:43 I also know they're just finishing a sprint up so I'm half holding out hoping they'll cut another release as well 2011-11-05T23:42:11 *** eashoka has quit IRC (Ping timeout: 265 seconds) 2011-11-05T23:42:37 if I find anything that will really mess with bots I'll tell you 2011-11-05T23:42:54 thanks 2011-11-05T23:43:28 np, 2011-11-05T23:44:00 Once you've uploaded to the official servers, is there any way to cancel it? I just realized I left a logger in place. 2011-11-05T23:44:30 bergmark: wait 10 min and reupload? 2011-11-05T23:44:38 bergmark: not really, you can deactivate it right away so it won't use up your seed slot 2011-11-05T23:44:47 Thanks, I can't believe I was so boneheaded. 2011-11-05T23:44:51 then re-upload 2011-11-05T23:45:03 *** hjax has quit IRC (Remote host closed the connection) 2011-11-05T23:45:07 I think the wait is only a minute or two now as well 2011-11-05T23:47:39 *** McLeopold has quit IRC (Quit: Leaving.) 2011-11-05T23:48:11 *** twymer has quit IRC (Ping timeout: 244 seconds) 2011-11-05T23:50:49 *** ccc has joined #aichallenge 2011-11-05T23:52:38 *** danielharan has joined #aichallenge 2011-11-05T23:57:36 *** Rinum has joined #aichallenge