2011-03-24T00:16:25 *** Accoun has quit IRC () 2011-03-24T00:31:16 *** Accoun has joined #aichallenge 2011-03-24T00:35:35 *** Ttech has quit IRC (Read error: Operation timed out) 2011-03-24T00:35:49 *** janzert has quit IRC (Read error: Connection reset by peer) 2011-03-24T00:37:35 *** janzert has joined #aichallenge 2011-03-24T00:41:58 *** Ttech has joined #aichallenge 2011-03-24T01:44:51 The version of Rhino that ships with the JRE, runs in interpreted mode. Parsing a replay took >20 seconds. After optimizing a subroutine it went down to 14 seconds. The separate release from Mozilla contains a JavaScript-to-Java compiler, that cannot compile to 100% clean Java because of the dynamic nature of JS, but does a fairly good job! The parsing takes only 3 seconds now. This is faster than Opera JS engine with 5 sec. 2011-03-24T01:48:32 So *technically* it works, but this compiler is a big blackbox that takes js files, adds a main method and compiles to a class with the same name. It also needs attributes and methods of objects defined before first use. I'm not sure yet if it is flexible enough. 2011-03-24T01:53:36 *** Anders__ has joined #aichallenge 2011-03-24T02:09:22 *** janzert has quit IRC (Read error: Connection reset by peer) 2011-03-24T02:11:08 *** janzert has joined #aichallenge 2011-03-24T02:19:35 ah, my fault. it doesn't need stuff defined before use; at least not more than any other implementation. 2011-03-24T02:20:25 *** delt0r___ has joined #aichallenge 2011-03-24T02:21:55 *** delt0r_ has quit IRC (Ping timeout: 264 seconds) 2011-03-24T02:35:09 *** janzert has quit IRC (Read error: Connection reset by peer) 2011-03-24T02:36:30 *** janzert has joined #aichallenge 2011-03-24T02:36:35 *** antimatroid has quit IRC (Ping timeout: 246 seconds) 2011-03-24T02:39:08 *** sigh has quit IRC (Ping timeout: 252 seconds) 2011-03-24T02:44:35 *** andy_ has joined #aichallenge 2011-03-24T02:45:57 *** amstan has quit IRC (Ping timeout: 250 seconds) 2011-03-24T03:21:36 *** Cyndre has quit IRC (Quit: Leaving) 2011-03-24T03:49:24 *** antimatroid has joined #aichallenge 2011-03-24T03:52:18 *** sigh has joined #aichallenge 2011-03-24T03:54:34 *** boegel has joined #aichallenge 2011-03-24T03:57:28 *** boegel has quit IRC (Client Quit) 2011-03-24T04:09:30 *** num1 is now known as num1_ 2011-03-24T04:13:27 *** Eruonen has joined #aichallenge 2011-03-24T04:16:30 *** boegel has joined #aichallenge 2011-03-24T04:27:37 *** espes has quit IRC (Ping timeout: 246 seconds) 2011-03-24T04:28:35 *** iFire has quit IRC (Ping timeout: 246 seconds) 2011-03-24T04:29:17 *** iFire has joined #aichallenge 2011-03-24T04:37:16 *** aerique has joined #aichallenge 2011-03-24T05:00:42 *** espes has joined #aichallenge 2011-03-24T05:00:58 McLeopold: you there? 2011-03-24T05:07:50 janzert: you there? 2011-03-24T05:08:23 i think i found a neat little solution to an issue i had with game trees 2011-03-24T05:15:14 sigh: you will do 2011-03-24T05:15:28 you know how in a game tree you don't link two nodes to the same child? 2011-03-24T05:15:45 what will i do now? 2011-03-24T05:15:58 do instead of janzert 2011-03-24T05:16:38 what do you mean, don't link two nodes to the same child? 2011-03-24T05:16:46 you mean, create a DAG? 2011-03-24T05:16:52 hang on, i'll do a paint drawing 2011-03-24T05:20:03 http://i.imgur.com/8X45j.png 2011-03-24T05:20:23 the first is the main way to do it, but if it lead to the same "state", then you're really calculating the same stuff twice 2011-03-24T05:20:38 you can still perform backward induction on the second tree somewhat like you would the first and always get the same result 2011-03-24T05:21:06 yup, so you have a DAG instead of a tree 2011-03-24T05:21:27 directed acyclic graph? 2011-03-24T05:21:34 yes 2011-03-24T05:21:39 yep 2011-03-24T05:21:55 you need to make sure a node doesn't preceed yours before adding the link for that 2011-03-24T05:21:56 in games like chess you use a transposition table to detect repeated positions 2011-03-24T05:22:00 otherwise it wouldn't be acyclic 2011-03-24T05:22:09 sure 2011-03-24T05:22:28 alpha-beta becomes a tad more complex too, but not much 2011-03-24T05:22:37 although you could do such a game and it'd be like a game on a graph with terminal nodes indicating the end of the game 2011-03-24T05:23:18 depends what the rules are on the game if there is a repeating board position 2011-03-24T05:23:27 *** computer1iz_222 has quit IRC (Ping timeout: 252 seconds) 2011-03-24T05:23:34 yeah 2011-03-24T05:23:45 *** computerwiz_222 has joined #aichallenge 2011-03-24T05:23:52 but if i was going an implementation generally, i'd want to make sure 2011-03-24T05:23:56 but what is your question? 2011-03-24T05:24:08 if it's acyclic then you get a partial order from a preceeds relation on nodes 2011-03-24T05:24:12 i have no question 2011-03-24T05:24:16 i just thought it was neat :P 2011-03-24T05:24:27 lol 2011-03-24T05:24:54 :) 2011-03-24T05:25:34 antimatroid: just be aware that you can't apply alpha-beta naively, because you won't have the same window when coming form two different paths 2011-03-24T05:26:04 sigh: i don't use alpha beta 2011-03-24T05:26:11 it doesn't work for the way i do game trees in this contest 2011-03-24T05:26:23 ok, then you don't need to worry :) 2011-03-24T05:26:31 i shall play around with it anyway though 2011-03-24T05:26:40 if i do a library, it'd be nice to include such functions 2011-03-24T05:27:14 i could use alpha beta for my evaluation at the end of my turn actually, i should do that 2011-03-24T05:27:25 ideally one would like to use it while making the tree, but that just doesn't work 2011-03-24T05:27:42 heh 2011-03-24T05:28:01 *** iFire has quit IRC (Read error: Connection reset by peer) 2011-03-24T05:28:21 I'd be surprised if transposition tables helped in this game 2011-03-24T05:28:22 *** iFire has joined #aichallenge 2011-03-24T05:29:54 It looks like its going to be a challenging game to write an ai for 2011-03-24T05:30:25 but I've never written an ai before 2011-03-24T05:30:56 well, except for hunting the wumpus 2011-03-24T05:32:50 phirenz: i expect some pretty good bots in this 2011-03-24T05:32:57 and a tight contest in the top 100 2011-03-24T05:33:29 Yeah 2011-03-24T05:33:56 it's a much more penetrable game than planet wars was i think 2011-03-24T05:34:10 Right now I haven't decided if I should use python or c 2011-03-24T05:34:32 i suspect you may want the speed boost for this one 2011-03-24T05:34:36 it didn't matter so much with planet wars 2011-03-24T05:34:52 but that's just my opinion, and a very biased one on that :P 2011-03-24T05:34:56 Yeah, I'm getting the same feeling 2011-03-24T05:35:14 why not c++? 2011-03-24T05:35:27 i wrote the c++ starter bot, although i need to clean it a bit 2011-03-24T05:36:08 sigh: it's not that much harder to do alpha beta (sorry didn't think about it) 2011-03-24T05:36:18 *** iFire has quit IRC (Read error: Connection reset by peer) 2011-03-24T05:36:20 just store the number of parents to a child 2011-03-24T05:36:29 or links 2011-03-24T05:36:32 *** iFire has joined #aichallenge 2011-03-24T05:37:01 antimatroid: not that simple 2011-03-24T05:37:09 yeah it is 2011-03-24T05:37:13 because the search window is different 2011-03-24T05:37:26 so you can't just use the eval that you got from a different branch 2011-03-24T05:37:50 you have to store if you got the exact eval, or if you hit the alpha or beta cutoff 2011-03-24T05:37:53 ahh yeah 2011-03-24T05:38:04 I like c better as a language 2011-03-24T05:38:05 wait nah 2011-03-24T05:38:08 it works fine 2011-03-24T05:38:12 if you don't have the exact, then you stil need to search a bit mow 2011-03-24T05:38:13 the tree below is the same tree 2011-03-24T05:38:36 same tree, but different search window 2011-03-24T05:38:51 if you mark a child to be deleted, when deleting if the number of parents goes to zero, delete that section of the tree 2011-03-24T05:39:13 otherwise just remove the child link 2011-03-24T05:39:14 ok, I don't know what deleting has got to do with it 2011-03-24T05:39:31 well, you could just skip over it 2011-03-24T05:39:44 no, you can't 2011-03-24T05:39:48 in a game like tron, you wanted to recycle your tree across turns 2011-03-24T05:39:59 just because you searched it, doesn't mean you got the exact eval out of it 2011-03-24T05:40:14 because you might have terminated early by hitting an alpha or beta cutoff 2011-03-24T05:40:18 if you have a tree that's not going to change for the decision you make 2011-03-24T05:40:26 yes, it will 2011-03-24T05:40:30 :P 2011-03-24T05:40:48 no, you reach the end of your turn, so you stop generating and evaluate your tree 2011-03-24T05:40:53 because if you use alpha-beta you did NOT search the entire subtree 2011-03-24T05:41:06 no, but you will search it later if necessary 2011-03-24T05:41:15 sure, but then you can't delete 2011-03-24T05:41:27 you don't need to 2011-03-24T05:41:34 you just don't go searching down there now 2011-03-24T05:42:16 you're still avoiding searching sections of the tree that are not going to change your decision 2011-03-24T05:43:55 the only parts of the tree you can avoid searching down are the ones where you got an exact eval out of, or the alpha-beta window was tighter than the current one (with some qualifications) 2011-03-24T05:44:33 yes, but if you have a large tree, that might be lots 2011-03-24T05:45:15 sure, but my point is that you still need to remember what the previous window was 2011-03-24T05:45:33 techinically, only one side of the window, the side that caused the early termination 2011-03-24T05:45:59 if you don't remember that, then you can't prune at all 2011-03-24T05:46:12 i don't need to prune the tre 2011-03-24T05:46:27 prune/skip/whatever 2011-03-24T05:46:57 take that example image i gave you, but suppose player 2's second node linked to the middle node 2011-03-24T05:47:10 ok 2011-03-24T05:47:13 it might need to be bigger :\ 2011-03-24T05:47:39 *** woudshoo has joined #aichallenge 2011-03-24T05:47:44 but yeah, suppose you got to that node, and from evaluating the first (old second) child you realised 1 wouldn't move there, then you don't need to search the common path 2011-03-24T05:47:56 which might not have linked to one you've already searched 2011-03-24T05:48:03 so you could just move on yeah? 2011-03-24T05:49:02 but that decision was a function of the alpha-beta window you were using 2011-03-24T05:49:25 if you come from a different path, you will have a different window, and might come to a different decision 2011-03-24T05:49:50 hmm yeah okay 2011-03-24T05:50:13 antimatroid: here's a page describing how to update alpha-beta to deal with this: http://web.archive.org/web/20070822204120/www.seanet.com/~brucemo/topics/hashing.htm 2011-03-24T05:50:41 as you can see, the changes are huge, but certainly not trivial 2011-03-24T05:50:48 *changes are NOT huge 2011-03-24T05:51:19 (scroll down to the part where there's code) 2011-03-24T05:51:41 So, I'm looking over the rules from the planet wars competition... 2011-03-24T05:52:06 And it says that the usage of multiple threads and processes is prohibited 2011-03-24T05:52:17 yes 2011-03-24T05:52:26 Is that just kernel threads? 2011-03-24T05:52:42 or userspace threads too? 2011-03-24T05:53:44 phirenz: you realise that is the old contest yes? 2011-03-24T05:53:51 yes 2011-03-24T05:54:01 if i recall correctly, they aren't actually checking whether people are using multiple threads 2011-03-24T05:54:13 antimatroid: this contest will likely have the same rules :P 2011-03-24T05:54:13 and "green threads" (whatever they are) are allowed 2011-03-24T05:54:17 i don't really know much about that stuff 2011-03-24T05:54:30 sigh: yeah, was just making sure :) 2011-03-24T05:55:37 although you would be up for disqualification if they realised 2011-03-24T05:55:43 so one would advise against it :P 2011-03-24T05:55:54 plus, it's more fun to do well fairly 2011-03-24T05:56:26 yes 2011-03-24T05:56:30 yeah, userthreads should be alright 2011-03-24T05:57:02 but either way that should be clarified in the rules 2011-03-24T05:57:16 yep 2011-03-24T05:57:54 sigh: want to do that for me at some point? 2011-03-24T05:58:03 i don't really have half a clue of what i'm talking about with processes 2011-03-24T06:00:02 not me, go tell amstan 2011-03-24T06:01:25 quoting jmcarthur: "You can't use multiple operating system threads, but you can use as many green threads as you want." - http://www.ai-contest.com/forum/viewtopic.php?f=18&t=662&p=3861&hilit=threads+green#p3861 2011-03-24T06:07:26 I'm tempted to write my own treading library 2011-03-24T06:07:36 *** iFire has quit IRC (Read error: Connection reset by peer) 2011-03-24T06:07:50 just so I have control over the scheduler 2011-03-24T06:08:12 *** iFire has joined #aichallenge 2011-03-24T06:08:18 *** iFire has joined #aichallenge 2011-03-24T06:12:52 antimatroid: did you figure out how alpha-beta works with repeated positions yet? 2011-03-24T06:13:13 didn't really look at the moment, i will at some point :P 2011-03-24T06:13:21 i have a quick browse at what he was doing 2011-03-24T06:13:24 had* 2011-03-24T06:18:30 *** iFire has quit IRC (Ping timeout: 246 seconds) 2011-03-24T06:19:09 *** iFire has joined #aichallenge 2011-03-24T07:03:34 *** Accoun has quit IRC () 2011-03-24T07:27:19 *** Accoun has joined #aichallenge 2011-03-24T07:34:49 *** iFire has quit IRC (Read error: Connection reset by peer) 2011-03-24T07:35:08 *** iFire has joined #aichallenge 2011-03-24T07:37:18 wtf, how did I not know about the -S option for git log 2011-03-24T07:40:04 *** boegel has quit IRC (Ping timeout: 248 seconds) 2011-03-24T08:00:26 hmm, do i need a threading library 2011-03-24T08:01:22 phirenz: any particular reason you want threads? 2011-03-24T08:01:33 i don't think people have ever really needed them 2011-03-24T08:01:47 Hmm, can't remember 2011-03-24T08:01:54 lets just backtrack my thoughts 2011-03-24T08:02:52 sigh: i just realised i've become a lazy evaluater of advice for things :P 2011-03-24T08:02:56 oh right, I was thinking about making use of the spare time between turns to do long term strategy 2011-03-24T08:03:11 i used to go look stuff up when pointed to it and go through, but then i went through lots of stuff i never actually use 2011-03-24T08:03:24 now i make a mental note of "if i get frustrated with this, go do that" 2011-03-24T08:04:02 what did you do this time? 2011-03-24T08:04:19 it reminded me of you sending me that link before 2011-03-24T08:04:34 *** iFire has quit IRC (Ping timeout: 246 seconds) 2011-03-24T08:04:34 i don't really care for implementing it now, but i know where to go later when i do 2011-03-24T08:04:46 a similar thing happened with real work haskell advice 2011-03-24T08:05:01 heh 2011-03-24T08:05:13 I just read stuff if it seems interesting at the time, don't if it doesn't 2011-03-24T08:05:45 *** fdsgfdsg has joined #aichallenge 2011-03-24T08:05:54 yeah, if it's super interesting there and then i'll read it, but if i know it might be useful later, i'll try to make some kind of mental note 2011-03-24T08:06:20 *** iFire has joined #aichallenge 2011-03-24T08:07:02 *** FireFly has joined #aichallenge 2011-03-24T08:07:20 *** amstan has joined #aichallenge 2011-03-24T08:07:20 *** ChanServ sets mode: +o amstan 2011-03-24T08:08:13 hi amstan 2011-03-24T08:08:18 hi 2011-03-24T08:08:26 i have time for a chat about wiki/packaging stuff etc. if you do 2011-03-24T08:08:36 nah, i have to leave for school 2011-03-24T08:08:42 that's cool 2011-03-24T08:08:49 i'll keep programming 2011-03-24T08:26:57 *** robbs has joined #aichallenge 2011-03-24T08:28:13 *** FireFly has quit IRC (Remote host closed the connection) 2011-03-24T08:28:41 *** FireFly has joined #aichallenge 2011-03-24T08:45:54 *** p4p4p4 has joined #aichallenge 2011-03-24T08:57:33 *** fdsgfdsg has quit IRC (Quit: Page closed) 2011-03-24T09:04:52 *** sigh has quit IRC (Remote host closed the connection) 2011-03-24T09:22:16 *** UncleVasya has joined #aichallenge 2011-03-24T09:23:09 *** boegel has joined #aichallenge 2011-03-24T09:26:11 *** phirenz has quit IRC (Ping timeout: 264 seconds) 2011-03-24T09:37:53 *** Accoun has quit IRC () 2011-03-24T09:45:31 *** Accoun has joined #aichallenge 2011-03-24T09:57:35 *** needsch has joined #aichallenge 2011-03-24T10:05:06 *** moongrass has quit IRC (Read error: No route to host) 2011-03-24T10:08:31 *** boegel has quit IRC (Ping timeout: 250 seconds) 2011-03-24T10:09:30 *** Accoun has quit IRC () 2011-03-24T10:20:33 *** delt0r_ has joined #aichallenge 2011-03-24T10:21:58 *** delt0r___ has quit IRC (Ping timeout: 252 seconds) 2011-03-24T10:29:21 *** Stocha has joined #aichallenge 2011-03-24T10:47:54 *** needsch has quit IRC (Ping timeout: 252 seconds) 2011-03-24T10:50:23 *** needsch has joined #aichallenge 2011-03-24T10:58:37 *** andy___ has joined #aichallenge 2011-03-24T11:06:50 *** Accoun has joined #aichallenge 2011-03-24T11:06:53 *** needsch1 has joined #aichallenge 2011-03-24T11:07:42 *** needsch has quit IRC (Ping timeout: 252 seconds) 2011-03-24T11:10:27 *** McLeopold has left #aichallenge 2011-03-24T11:17:36 *** |UncleVasya| <|UncleVasya|!kvirc@178-133-68-153.dialup.umc.net.ua> has joined #aichallenge 2011-03-24T11:18:32 *** UncleVasya has quit IRC (Ping timeout: 260 seconds) 2011-03-24T11:33:42 *** McLeopold has joined #aichallenge 2011-03-24T11:47:36 jmcarthur: ping 2011-03-24T11:47:53 *** janzert has quit IRC (Read error: Connection reset by peer) 2011-03-24T11:49:24 *** janzert has joined #aichallenge 2011-03-24T11:49:38 McLeopold: pong 2011-03-24T11:50:07 update for everybody on the haskell lib... i haven't been able to work on it in a while :\ 2011-03-24T11:50:26 so, can you talk trueskill? 2011-03-24T11:50:42 in fact, i might not be able to even participate at all this time. looks like i might be moving around the time i expect the contest to start :( 2011-03-24T11:50:49 yeah sure 2011-03-24T11:51:04 so, the new york interview went well? 2011-03-24T11:51:37 yes it did. i have an offer. all the other interviews i have planned are for out of town places, too 2011-03-24T11:52:04 We've now created an ants game, that may or may not need skill to win. How do we pick a value for beta? 2011-03-24T11:52:24 *** KP13 has joined #aichallenge 2011-03-24T11:52:48 I'd also like to double the xbox live default values to mu=50 and sigma=16.6666 2011-03-24T11:52:48 *** aerique has quit IRC (Quit: ...) 2011-03-24T11:53:33 beta probably needs to be determined dynamically 2011-03-24T11:53:43 not automatically, but by our observations of how things are going 2011-03-24T11:54:03 best i can say for now is to guess :\ 2011-03-24T11:54:40 If you had to guess what it was for planet wars, what would that guess be? 2011-03-24T11:55:04 whether ants is high-skill or low-skill might depend on the combat resolution we choose 2011-03-24T11:55:09 hmm 2011-03-24T11:55:18 janzert provided a list of how far up or down the rankings you were likely not to win when expected. 2011-03-24T11:55:34 *** Kingpin13 has quit IRC (Ping timeout: 250 seconds) 2011-03-24T11:56:13 mine was, I could beat 10 rankings up and lose to 20 rankings down 2011-03-24T11:56:35 by what probability? 2011-03-24T11:56:46 and what was the point distance for these? 2011-03-24T11:56:52 I don't remember 2011-03-24T11:56:57 I need to find the list 2011-03-24T11:57:22 The list should have had the bayeselo scores on them 2011-03-24T11:57:25 was this probability of superiority? 2011-03-24T11:57:37 quote unquote 2011-03-24T11:57:43 I think it was something like that 2011-03-24T11:58:06 likelihood of* 2011-03-24T11:58:29 http://ai-contest.com/forums/viewtopic.php?f=3&t=1208 2011-03-24T11:58:31 *** mceier has joined #aichallenge 2011-03-24T12:00:53 yeah, there it is 2011-03-24T12:00:58 i'm trying to parse this likelihood-of-superiority output. looks like the values range from 0 to 1000. i guess i'll check the bayeselo docs 2011-03-24T12:01:20 trueskill wants an 80/20 value 2011-03-24T12:01:32 i'm not sure these results are exactly applicable 2011-03-24T12:01:54 this is likelihood of superiority, but for coming up with the beta value we want to have a ratio 2011-03-24T12:02:02 wins:losses 2011-03-24T12:02:05 no, but if we can figure out a way to get a beta out of this, we can run initial results through beyeselo and get one for ants 2011-03-24T12:02:30 we might be able to estimate one 2011-03-24T12:02:56 I was thinking we wanted to try to get the average bayeselo score different between each players high and low mark 2011-03-24T12:03:08 *** p4p4p4 has quit IRC (Remote host closed the connection) 2011-03-24T12:03:31 and that would be the beta if we had trueskill ranking on whatever scale this list is on 2011-03-24T12:05:50 LOS is calculated using some given draw ratio, normally 2011-03-24T12:06:15 so, for my bot, if I go up 8, the rating difference is 30, if I go down 18, the rating difference is 33 2011-03-24T12:06:30 so, beta could be about 30 for this scale 2011-03-24T12:06:52 *** andy___ has quit IRC (Ping timeout: 252 seconds) 2011-03-24T12:07:35 ah i see what you mean 2011-03-24T12:07:59 *** Eruonen has quit IRC () 2011-03-24T12:08:05 but this is still for a given draw ratio. maybe janzert used the statistics from the tournament to come up with that though? 2011-03-24T12:08:32 the list shows draw percent 2011-03-24T12:08:36 if it was given a high percentage for the draw ratio then the numbers on the table would generally be lower, i think 2011-03-24T12:08:39 oh? /me checks 2011-03-24T12:09:38 i see draws % for each bot, but not overall 2011-03-24T12:09:46 i guess it could be inferred too 2011-03-24T12:10:18 that 2011-03-24T12:10:35 that's probably high due to being a 2 player game with some bad maps 2011-03-24T12:10:59 I would think ants would be a 0 draw chance 2011-03-24T12:11:37 very small chance, at least 2011-03-24T12:12:16 If I scale this list to 0-100, that makes the 30 beta scale down to 0.075 2011-03-24T12:12:21 which seems a bit small 2011-03-24T12:12:46 maybe we could do the scale as 0-1000 2011-03-24T12:13:27 if we make the scale too large then people might mistake it for elo points 2011-03-24T12:13:39 does that matter? 2011-03-24T12:13:44 i guess not much 2011-03-24T12:14:16 *** FireFly has quit IRC (Quit: swatted to death) 2011-03-24T12:14:23 you get to "climb the ladder" rungs faster :) 2011-03-24T12:14:24 but elo has more absolute meaning than trueskill, and people in the know might try to infer information that isn't really there. i guess it's not a big deal though 2011-03-24T12:14:53 absolute as in your skill value doesn't change if you keep the same ability? 2011-03-24T12:14:56 *** Stocha has quit IRC (Ping timeout: 252 seconds) 2011-03-24T12:15:33 absolute as in if you are X points above another player then that means you beat that player Y% of the time (which of course is maybe an overly liberal assumption on elo's part) 2011-03-24T12:15:36 I though elo and glicko high water marks depended on the number of players in the pool 2011-03-24T12:15:47 oh 2011-03-24T12:15:59 that's what the beta should be 2011-03-24T12:16:02 right 2011-03-24T12:16:09 it's basically fixed in elo, not in trueskill 2011-03-24T12:16:21 beta is fixed, isn't it? 2011-03-24T12:16:31 i mean it's not even configurable in elo 2011-03-24T12:16:36 because the range is free 2011-03-24T12:17:01 but they always saw 200 elo is a 75% chance? 2011-03-24T12:17:04 say 2011-03-24T12:17:11 yeah something like that 2011-03-24T12:17:15 ello 2011-03-24T12:17:17 whereas in trueskill it depends on the parameters 2011-03-24T12:17:39 okay, yes, we have an epsilon as well 2011-03-24T12:17:51 that is the draw percentage 2011-03-24T12:17:52 antimatroid: ping 2011-03-24T12:17:57 antimatroid: i'm available now if you are 2011-03-24T12:17:59 but like you said earlier, i think it's not a huge deal if somebody mistakes it for elo anyway 2011-03-24T12:18:06 ok 2011-03-24T12:18:38 so, in planet wars, the likely hood of superiority is a very small piece of the rankings 2011-03-24T12:18:54 i'm concerned, though, that if we add more precision to the scale then people might assume that it means the scores are more accurate than they actually are 2011-03-24T12:20:22 the implementation stores a higher precision anyway. i think it's fine if we just scale to 100 and round to ones 2011-03-24T12:20:32 *set the scale to 2011-03-24T12:20:44 round to ones for display, i mean 2011-03-24T12:20:50 ok, I'll stick with 100 2011-03-24T12:21:10 actually, the los is really small at the top and bottom of the pw rankings 2011-03-24T12:21:23 beta for that would probably be much higher 2011-03-24T12:21:37 yeah, i was noticing that as well 2011-03-24T12:21:47 seems to be a downside for having a global beta 2011-03-24T12:22:20 upside is that if you know the parameters to trueskill and have a relative score difference then it's a meaningful value, though 2011-03-24T12:23:33 have you guys seen this? http://ai-contest.com/forum/viewtopic.php?f=21&t=1361 2011-03-24T12:23:41 emphasis on 1st and 3rd post 2011-03-24T12:23:42 hmm, in the center, the range is still about 30-40 elo 2011-03-24T12:24:02 *** jmpespxo1eax has joined #aichallenge 2011-03-24T12:24:22 *** jmpespxoreax has quit IRC (Ping timeout: 248 seconds) 2011-03-24T12:24:34 amstan: nice 2011-03-24T12:24:48 another game with it's creator support 2011-03-24T12:24:57 cool! 2011-03-24T12:25:12 how about warlight+communication for next contest? 2011-03-24T12:25:13 I'm emailing him now... 2011-03-24T12:25:20 i like basing our games on existing ones, especially with support :) 2011-03-24T12:25:21 nah.. let's keep it on the forums 2011-03-24T12:25:30 email him with a ping 2011-03-24T12:25:50 or.. use the mailing list! 2011-03-24T12:25:55 that would be appropirate too 2011-03-24T12:25:55 that looks cool 2011-03-24T12:26:07 amstan: i'm here 2011-03-24T12:26:08 *** woudshoo has quit IRC (Remote host closed the connection) 2011-03-24T12:26:18 antimatroid: so.. how's it going? 2011-03-24T12:26:38 alright... i wanted to know what the plans are for packaging? 2011-03-24T12:26:46 a lot of the wiki is hard to fix up without that 2011-03-24T12:26:59 like quick start guides, how to improve your bot etc. 2011-03-24T12:27:24 antimatroid: as a contestant, you'll have to download 2 zips 2011-03-24T12:27:28 - your starter package 2011-03-24T12:27:37 - the tools(visualizer, playgame.py, ...) 2011-03-24T12:27:48 tools will be os specific? 2011-03-24T12:28:02 probably not, since they're in python, html and so on 2011-03-24T12:28:35 we're including the shell/bat scripts for running a game? 2011-03-24T12:28:45 we can just include both, just it needs to be mentioned etc. 2011-03-24T12:28:50 i think we'll make the python part better 2011-03-24T12:28:56 that way there's no need for bat or sh 2011-03-24T12:29:13 ah okay, i'll leave the "getting a game running" stuff for the moment 2011-03-24T12:29:41 McLeopold, jmcarthur: btw, if you're looking at the actual LoS output from bayeselo the likelihood's are given as percentages 2011-03-24T12:29:41 can you put something on the wiki about not using new os processes but green ones are fine too? 2011-03-24T12:29:46 i don't really know what i'm saying there 2011-03-24T12:30:02 antimatroid: the README.md file from tools.zip should be the same as Using the Tools page on the site 2011-03-24T12:30:03 but bayeselo never includes the decimal point (for formatting reasons I believe) 2011-03-24T12:30:31 antimatroid: oh... right.. what page? i can do it now 2011-03-24T12:30:39 specs would be best 2011-03-24T12:30:42 janzert: yeah that's the assumption i was running with. thanks 2011-03-24T12:30:46 but not really sure where to put it either :P 2011-03-24T12:30:57 antimatroid: specs is game specific, this is more about rules 2011-03-24T12:31:09 it's a rule regarding the sandbox 2011-03-24T12:31:10 janzert: did you see my conversation with sigh about doing extensive form games with a DAG? 2011-03-24T12:31:18 also as far as draw percentage, yes I was having bayeselo calculate it from the actual game data 2011-03-24T12:31:19 amstan: perhaps there needs to be a rules page? 2011-03-24T12:31:25 there is a rules page 2011-03-24T12:31:35 :P 2011-03-24T12:31:36 antimatroid: yes, I skimmed over it at least 2011-03-24T12:31:37 idk if on the wiki or not 2011-03-24T12:31:39 lol 2011-03-24T12:32:02 janzert: any though on what beta should be for ants, with a scale of 0-100? 2011-03-24T12:32:02 one thing, generally when doing alpha-beta the tree isn't actually built at any time 2011-03-24T12:32:10 McLeopold: no idea 2011-03-24T12:32:20 blizzard.com? hmm 2011-03-24T12:32:24 if it were planetwars? 2011-03-24T12:32:29 I think we'll probably have to just watch what happens 2011-03-24T12:32:29 isn't that warcraft blizzard? 2011-03-24T12:32:49 it is... we have someone from blizzard join the mailing list, interesting 2011-03-24T12:32:50 oh come on, make a guess :P 2011-03-24T12:32:58 not really there either, since I'd have to go back and read what beta actually meant :P 2011-03-24T12:33:03 3.1415926535 2011-03-24T12:33:15 I remember it has something to do with the available skill range 2011-03-24T12:33:18 I think 2011-03-24T12:33:28 beta is the difference in skill that give you an 80% chance of winning 2011-03-24T12:34:19 so it sets the equivalent of 241 elo 2011-03-24T12:35:12 look at what 241 elo gets you in the PW rankings then remembering that the elo differences aren't linear accross the rankings though :) 2011-03-24T12:35:17 are we using this? https://github.com/aichallenge/aichallenge/wiki/Ants-Dependencies 2011-03-24T12:35:25 or should that be in the worker install? 2011-03-24T12:36:16 yes, the worker installs sbcl 2011-03-24T12:36:26 so i can delete that page then 2011-03-24T12:36:40 I would think so 2011-03-24T12:37:28 specifically it's there at line 97 of worker_setup.py 2011-03-24T12:38:12 McLeopold: so beta is just a scaling factor right? 2011-03-24T12:38:25 contestbot: seen Frontier 2011-03-24T12:38:25 amstan: Frontier was last seen in #aichallenge 10 hours, 18 minutes, and 50 seconds ago: ah, my fault. it doesn't need stuff defined before use; at least not more than any other implementation. 2011-03-24T12:38:41 * janzert should really go look at the trueskill paper again 2011-03-24T12:41:21 contestbot: later tell Frontier About your replay format: i'm pretty impressed. 2 questions: Can i get who won in that json, or the scores(for contestbot and scrapers)? What happens to replaydata when replayformat is streaming? 2011-03-24T12:41:21 amstan: As you wish. 2011-03-24T12:42:52 antimatroid: https://github.com/aichallenge/aichallenge/wiki/Ants-Game-Specification shouldn't bot i/o be on the other page? 2011-03-24T12:44:10 amstan: sigh wanted to keep the specs all on one page 2011-03-24T12:44:33 antimatroid: so what's happening with the other page then? is it up to date or.. ? 2011-03-24T12:45:05 looks up to date to me 2011-03-24T12:45:16 well.. shouldn't it be deleted then? 2011-03-24T12:45:26 i personally think it might be a bit easier if it was broken up like that, but sigh disagreed 2011-03-24T12:45:29 i dunno what others think 2011-03-24T12:45:50 it's not easy to add a table of contents to the specs page 2011-03-24T12:45:56 you pretty much have to do it manually 2011-03-24T12:47:41 antimatroid: we can figure something out, i think there's a way to do it automated(outside github, on the main site) 2011-03-24T12:47:58 yeah okay cool 2011-03-24T12:48:10 apparently it's a requested feature for github wikis 2011-03-24T12:48:27 i imagine it'll happen eventually, it'd be a pretty common want 2011-03-24T13:16:58 *** |UncleVasya| <|UncleVasya|!kvirc@178-133-68-153.dialup.umc.net.ua> has quit IRC (Ping timeout: 260 seconds) 2011-03-24T13:20:17 *** |UncleVasya| <|UncleVasya|!kvirc@178-133-68-153.dialup.umc.net.ua> has joined #aichallenge 2011-03-24T13:30:30 *** asdf1234 has joined #aichallenge 2011-03-24T13:38:06 *** asdf1234 has quit IRC (Quit: Page closed) 2011-03-24T13:39:42 *** Eruonen has joined #aichallenge 2011-03-24T13:47:01 amstan: Any meta data can be added to the meta data section. McLeopold is, I think, the one who is going to add this metadata to the engine's output. "streaming" format is what the engine stores in .stream files. I don't currently support it. It would also defeat the purpose of the streaming format if it was wrapped into a JSON object first, as you need the complete object first to be able to simulate a single turn. 2011-03-24T13:48:28 I don't think we need json 2011-03-24T13:49:04 McLeopold: look at how much data we already have, why would we not use json? 2011-03-24T13:49:24 we don't gain anything 2011-03-24T13:49:50 McLeopold: At first I disagreed with JSON, but I think this could be the future proof way to add meta data to aichallenge replays. 2011-03-24T13:49:56 we make it easier for tools to work with it 2011-03-24T13:50:05 McLeopold: we don't need to do all our own parsing in the visualizer? 2011-03-24T13:51:49 janzert: we would still need to parse the replay data 2011-03-24T13:52:08 our custom format is essentially a key/value store 2011-03-24T13:52:09 yes, but not everything else that is being sent 2011-03-24T13:54:01 *** needsch1 has quit IRC (Quit: Leaving.) 2011-03-24T13:58:32 *** perror has joined #aichallenge 2011-03-24T13:59:02 *** Eruonen has quit IRC (Read error: Connection reset by peer) 2011-03-24T13:59:09 *** Eruonen has joined #aichallenge 2011-03-24T14:02:37 Frontier: we could still wrap the streaming format in json if needed. 2011-03-24T14:03:01 you would just need to be able to display a turn as soon as you received the turn info. 2011-03-24T14:04:10 another reason I would ignore json is that we really don't want to make our information set so complicated that we need nested layers of info 2011-03-24T14:04:20 *** EruooNenningly has joined #aichallenge 2011-03-24T14:04:24 McLeopold: I don't think I'll get around to writing a streaming visualizer. I'm happy if I get the current thing into a standalone jar. And the JSON parsers in browsers process all at once. 2011-03-24T14:05:17 *** needsch has joined #aichallenge 2011-03-24T14:05:19 *** Eruonen has quit IRC (Ping timeout: 240 seconds) 2011-03-24T14:05:42 you would essentially need to open up a web socket and get once turn at a time, then adding that data to the list a frame you currently have. 2011-03-24T14:06:09 McLeopold: To get the raw data you just need to "JSON.parse(json).replaydata". That's not all that complicated 2011-03-24T14:07:58 McLeopold: I want the browser to cache the replays and the streaming format is ~10 times bigger. I really see it's use in local runs. 2011-03-24T14:08:17 where you just pipe the output of the engine into a visualizer 2011-03-24T14:08:39 And hopefully the tcp server as well 2011-03-24T14:09:10 I wouldn't cache streaming. 2011-03-24T14:09:48 no, just the sotrage format. streaming formats are volatile. 2011-03-24T14:10:37 *** Eruonen has joined #aichallenge 2011-03-24T14:10:43 *** EruooNenningly has quit IRC (Ping timeout: 250 seconds) 2011-03-24T14:15:12 Streaming playback is just not my priority and I doubt I get it done. I signed up for the html canvas renderer that naturally shows completed games. (Although it sounds fun to watch games in progress ^^). The slow situation in IE and the browser security issues with offline.html made me look into running the whole JavaScript inside Java (applet or standalone). At the end I want to have a good looking reference implementation. 2011-03-24T14:15:32 *** EruooNenningly has joined #aichallenge 2011-03-24T14:17:18 *** Eruonen has quit IRC (Ping timeout: 255 seconds) 2011-03-24T14:20:31 *** Accoun has quit IRC () 2011-03-24T14:23:36 *** EruooNenningly has quit IRC (Ping timeout: 255 seconds) 2011-03-24T14:31:55 *** Eruonen has joined #aichallenge 2011-03-24T14:40:38 *** perror has quit IRC (Quit: Bye all !) 2011-03-24T14:44:15 *** Accoun has joined #aichallenge 2011-03-24T14:50:37 *** EruooNenningly has joined #aichallenge 2011-03-24T14:52:37 *** Eruonen has quit IRC (Ping timeout: 264 seconds) 2011-03-24T14:57:33 *** Eruonen has joined #aichallenge 2011-03-24T14:59:01 *** EruooNenningly has quit IRC (Ping timeout: 246 seconds) 2011-03-24T15:02:21 *** EruooNenningly has joined #aichallenge 2011-03-24T15:04:03 *** Eruonen has quit IRC (Ping timeout: 240 seconds) 2011-03-24T15:09:56 *** Eruonen has joined #aichallenge 2011-03-24T15:11:16 *** EruooNenningly has quit IRC (Ping timeout: 246 seconds) 2011-03-24T15:14:49 *** Eruonen has quit IRC (Ping timeout: 260 seconds) 2011-03-24T15:15:04 *** Eruonen has joined #aichallenge 2011-03-24T15:17:02 *** Anders__ has quit IRC (Quit: Page closed) 2011-03-24T15:29:46 *** Anders____ has joined #aichallenge 2011-03-24T15:31:57 lol, i broke my git :( 2011-03-24T15:33:34 http://pastebin.com/Pi7fHVi2 2011-03-24T15:33:41 anyone know what i've done? :P 2011-03-24T15:35:56 antimatroid: try pulling first 2011-03-24T15:35:58 then pushing 2011-03-24T15:36:14 will that change my files back to old versions? 2011-03-24T15:36:26 depends on what you're merging 2011-03-24T15:36:34 also.. so what? 2011-03-24T15:36:46 anythin that you commit is not going to be lost 2011-03-24T15:38:16 i get a conflict with a file 2011-03-24T15:38:31 http://pastebin.com/GwaZ1BQm 2011-03-24T15:38:55 so open the file and solve the conflict 2011-03-24T15:40:46 what's a conflict? 2011-03-24T15:40:48 *** robbs1 has joined #aichallenge 2011-03-24T15:40:56 isn't the point up pushing that i'll have updated? 2011-03-24T15:41:16 like, surely i'm not meant to go through that file and find everything that was different 2011-03-24T15:42:56 *** robbs has quit IRC (Ping timeout: 252 seconds) 2011-03-24T15:43:13 ugh 2011-03-24T15:43:14 hold on 2011-03-24T15:43:45 antimatroid: can you gitlog for me? 2011-03-24T15:44:41 http://pastebin.com/McUMBmEm 2011-03-24T15:45:39 antimatroid: so you have commit 5e48653e390dc3e8778e: added in tools 2011-03-24T15:45:51 both local and remote have that 2011-03-24T15:46:18 then you added updated things to the remote one 2011-03-24T15:46:25 however the local one was not aware of this 2011-03-24T15:46:50 :| 2011-03-24T15:46:57 so it let you commit just fine, but when you wanted to push... you either have to create a branch, or merge with the current master branch in remote 2011-03-24T15:47:26 because your new commit can't really be added to the end of the history, since the current end of the history is not a descendant of what you want to push 2011-03-24T15:47:38 what's the easiest/cleanest? 2011-03-24T15:47:43 merge? 2011-03-24T15:47:50 just git merge? 2011-03-24T15:47:59 the pull already did that 2011-03-24T15:48:01 (i am still learning wtf i'm doing with git :P) 2011-03-24T15:48:02 you're supposed to merge it now 2011-03-24T15:48:20 basically.. you need to merge the commit from remote, with the commit from your local repo 2011-03-24T15:48:38 sometimes there's conflicts.. because git is not a human, so you have to solve it manually 2011-03-24T15:49:07 ... how do i do that? 2011-03-24T15:49:23 or is there a page that explains git? 2011-03-24T15:49:32 there intro pages go through a couple of things then stop :\ 2011-03-24T15:49:37 their*** 2011-03-24T15:49:41 antimatroid: http://progit.org/book/ is pretty good 2011-03-24T15:50:11 antimatroid: The error message explains it: "Automatic merge failed; fix conflicts and then commit the result." 2011-03-24T15:50:23 antimatroid: you fix conflicts by oppening the file and looking for <<< >>> lines 2011-03-24T15:50:43 and what? deleting my new code? 2011-03-24T15:51:00 antimatroid: that's up to you.. 2011-03-24T15:51:07 how else do you fix a conflict? 2011-03-24T15:51:09 http://progit.org/book/ch3-2.html > Basic Merge Conflicts 2011-03-24T15:51:37 it's up to you... a conflict is nothing more than 2 modifications to the same data, that git doesn't know how to make them back to one 2011-03-24T15:51:38 for conflict, you can choose old, new, or fix it yourself 2011-03-24T15:52:03 antimatroid: read that page.. it explains stuff 2011-03-24T15:52:04 fixing it yourself onlys *sounds* hard 2011-03-24T15:52:19 antimatroid: open the file, then put it on pastebin 2011-03-24T15:52:32 i can guide you through if you're that scared... but like.. it's pretty obvious 2011-03-24T15:53:10 amstan: as someone who was once afraid of this... it's only obvious once you've done it once 2011-03-24T15:53:40 then, of course, it's easy 2011-03-24T15:54:13 http://pastebin.com/WnfPfn94 2011-03-24T15:54:44 dwchandler: i went through this too 2011-03-24T15:54:53 antimatroid: ok, let's start from the begining 2011-03-24T15:55:09 antimatroid: you probably edited this code from 2 comps at once, correct? 2011-03-24T15:55:29 no 2011-03-24T15:55:35 it's all been done on this machine 2011-03-24T15:56:04 i'm confused.. how did you get a merge then? did you go back to a previous version or something? 2011-03-24T15:56:31 oh crap, maybe 2011-03-24T15:56:47 antimatroid: did you do something like git reset HEAD^1? 2011-03-24T15:56:52 i did, but i thought it was from after my previous commit 2011-03-24T15:57:16 antimatroid: ok.. that's the problem then 2011-03-24T15:57:35 you sent that version to github already, so it's there 2011-03-24T15:57:37 let me think.. 2011-03-24T15:57:47 :) 2011-03-24T15:57:58 i try my best to get your retarded situations :P 2011-03-24T15:58:10 *** sigh has joined #aichallenge 2011-03-24T15:58:34 antimatroid: ok... so.. you don't care about these changes then: https://github.com/antimatroid/GTL/commit/269c7693f05d2dc885f40bbbd7fca8eb72f05041 2011-03-24T15:59:01 *** silenthunter has joined #aichallenge 2011-03-24T15:59:52 let's say no 2011-03-24T16:00:00 i have a zip of my current stuff worst comes to worst 2011-03-24T16:01:09 antimatroid: you can still retrieve those changes, if you make a note of that hash 2011-03-24T16:01:24 *** choas has joined #aichallenge 2011-03-24T16:01:50 anyway, in your repo, do this: git reset --hard(cleans your folder of the merge stuff) 2011-03-24T16:02:05 git pull :master(deletes the remote branch), git push master(uploads it back again) 2011-03-24T16:02:11 wait.. 2011-03-24T16:02:15 you need origin in there 2011-03-24T16:02:23 git pull origin :master and so on 2011-03-24T16:03:44 ergh, things might be even more messed up :P 2011-03-24T16:04:10 i'm thinking i should delete the repo and make a new one, this is just turning into a ball of mess 2011-03-24T16:05:03 i'll see if i can fix it from ^^ first 2011-03-24T16:05:36 antimatroid: no need, that should fix it 2011-03-24T16:05:56 nah, i did more stuff locally that's given it another branch or something :P 2011-03-24T16:06:50 git branch pls 2011-03-24T16:07:31 whatever i've done it just uploaded stuff 2011-03-24T16:08:35 what's branch? master? 2011-03-24T16:08:57 ok... i'm going blind here, i need "git branch", "git log", "git status" from you 2011-03-24T16:09:49 http://pastebin.com/bwD0iBuv 2011-03-24T16:10:05 it committed with those extra lines, but i assume i can now delete those, commit and it'll be fixed? 2011-03-24T16:11:42 oh.. ok 2011-03-24T16:12:10 git reset 33549eb24759e20382b32e9b4ee809921283c7c4 2011-03-24T16:12:17 that'll clean your log 2011-03-24T16:12:25 make your last commit to be 33549eb24759e20382b32e9b4ee809921283c7c4 2011-03-24T16:13:45 then push :master, then push master 2011-03-24T16:14:20 antimatroid: http://pastebin.com/R0Hyiur1 2011-03-24T16:14:22 that ^ 2011-03-24T16:18:52 http://pastebin.com/PpdY3kau 2011-03-24T16:18:59 a similar thing happens if i add origin :\ 2011-03-24T16:20:20 antimatroid: paste me the output of git remote 2011-03-24T16:20:32 and yes.. origin is required 2011-03-24T16:21:34 git remote is just origin 2011-03-24T16:21:43 *** robbs1 has left #aichallenge 2011-03-24T16:21:57 so.. git push origin :master should work 2011-03-24T16:22:31 oh wait, do i want to pull? 2011-03-24T16:23:03 no 2011-03-24T16:23:14 pulling would bring those changes you don't want 2011-03-24T16:23:22 *** |UncleVasya| <|UncleVasya|!kvirc@178-133-68-153.dialup.umc.net.ua> has quit IRC (Read error: Connection reset by peer) 2011-03-24T16:25:01 http://pastebin.com/bmdW2ruT :\ 2011-03-24T16:25:42 wait, i might have needed a space 2011-03-24T16:27:28 *** robbs has joined #aichallenge 2011-03-24T16:28:48 http://pastebin.com/zzxPhffV 2011-03-24T16:28:54 it wont delete the current stuff 2011-03-24T16:31:31 antimatroid: oh man.. lol 2011-03-24T16:32:44 amstan: can i just fork to a new one? otherwise i can just delete the whole thing and make a new repo 2011-03-24T16:32:54 it's probably less effort and leaves everything clean 2011-03-24T16:33:08 antimatroid: i can still leave stuff clean, working on it.. 2011-03-24T16:34:00 antimatroid: the problem is exactly that.. you can't delete the current branch 2011-03-24T16:34:26 git branch temp 2011-03-24T16:34:28 git push origin temp 2011-03-24T16:35:00 https://github.com/antimatroid/GTL > admin > default branch > temp 2011-03-24T16:35:12 then do the git push origin :master; git push origin master 2011-03-24T16:35:19 then change the default branch to master again 2011-03-24T16:35:26 git push origin :temp 2011-03-24T16:35:31 git branch -D temp 2011-03-24T16:37:15 antimatroid: all good? lol 2011-03-24T16:38:04 i see you got till git push origin master.. 2011-03-24T16:38:11 :p 2011-03-24T16:39:44 awesome, thanks heaps :D 2011-03-24T16:39:56 * antimatroid will try not to break things that badly again 2011-03-24T16:40:47 antimatroid: git time travel is like real world time travel 2011-03-24T16:41:03 antimatroid: you can view stuff in the past just fine, but everything fucks up if you try to change it 2011-03-24T16:41:32 antimatroid: next time use git revert for stuff like this 2011-03-24T16:41:39 i shall start reading through that git book 2011-03-24T16:41:41 yep 2011-03-24T16:41:53 it's a good read, very useful 2011-03-24T17:02:30 *** sigh has quit IRC (Remote host closed the connection) 2011-03-24T17:08:48 *** Cerealklr has joined #aichallenge 2011-03-24T17:08:56 *** Cerealklr has left #aichallenge 2011-03-24T17:11:39 *** robbs has quit IRC (Read error: Connection reset by peer) 2011-03-24T17:32:47 antimatroid: I find that working in topic branches keeps me from having too many headaches 2011-03-24T17:33:34 but if you read that book I'll have nothing much to add ;-) 2011-03-24T17:52:13 Fun fact: in trueskill, you are not always your own best matchup. 2011-03-24T17:55:29 Hello 2011-03-24T17:56:19 McLeopold, sorry for disturbing, but did you figure out why I can't connect to your site? 2011-03-24T17:56:35 I can telnet to your host and port 2011-03-24T17:56:41 no 2011-03-24T17:56:55 from my end it looks like you are not establishing a connection 2011-03-24T17:57:33 ok 2011-03-24T17:58:59 I'm going to try a local test, hold on 2011-03-24T17:59:47 *** mceier has quit IRC (Quit: leaving) 2011-03-24T18:00:27 Anders___: I'm running a game right now with JBotManager from a different location, so the server is running and the firewall is setup correctly. 2011-03-24T18:00:40 Maybe check that your port 995 isn't being blocked. 2011-03-24T18:01:34 Holy Crap, And I'm beating mega1?! 2011-03-24T18:02:18 that makes me want to cry now 2011-03-24T18:02:50 didn't know of JBotManager 2011-03-24T18:03:01 I tried the tcp.c 2011-03-24T18:03:05 it works the same 2011-03-24T18:03:54 *** sigh has joined #aichallenge 2011-03-24T18:05:12 Anders___: I can watch the incoming connections, and I don't see one from you. Are you trying to connect right now? 2011-03-24T18:07:34 Anders____ 2011-03-24T18:09:48 just did an attempt 2011-03-24T18:10:10 same as before 2011-03-24T18:10:11 aluminium:planet_wars_java anders$ ./tcp tcp.zeroviz.us 995 a1 -p a1a1 ./runjava.sh connect: Permission denied 2011-03-24T18:10:14 hmm, nothing, did you get permission denied? 2011-03-24T18:10:17 yeah, ok 2011-03-24T18:11:18 It might be my password file already has an "a1" user. Try a different name. 2011-03-24T18:11:33 ah! look 2011-03-24T18:11:45 I changed to your IP instead! 2011-03-24T18:11:52 and then it connected! 2011-03-24T18:11:58 oh, cool 2011-03-24T18:11:58 (IP instead of hostname) 2011-03-24T18:12:06 looks like mega! spanked you though :) 2011-03-24T18:12:29 of course thats because I use the default bot! ;) 2011-03-24T18:12:49 ah, do you have anything that you wrote yet? 2011-03-24T18:13:23 not yet, I wanted to see that I could actually connect first 2011-03-24T18:14:25 your server set up is kind of handcrafted right, it is not something that is easily replicated is it? 2011-03-24T18:16:34 It could be. 2011-03-24T18:17:02 it runs off of apache, I think 2011-03-24T18:17:03 I just wonder if is OK to have it running, or if it is a pain 2011-03-24T18:17:33 I guess the user support is the biggest pain 2011-03-24T18:17:35 I can keep it up. Let me know when you hit critical mass and I'll see if I can get you a setup. 2011-03-24T18:17:47 cool 2011-03-24T18:19:53 it's a basic cgi server running off apache 2011-03-24T18:20:20 there are some scripts running in the background to calc ratings and accept connections 2011-03-24T18:20:25 I'm running gentoo 2011-03-24T18:21:06 *** delt0r___ has joined #aichallenge 2011-03-24T18:21:18 *** delt0r_ has quit IRC (Read error: Operation timed out) 2011-03-24T18:24:06 I run OSX but I have an Ubuntu in VMWare, perhaps it is easier to get running 2011-03-24T18:24:11 McLeopold: the same as dhartmei's stuff? 2011-03-24T18:28:41 yes 2011-03-24T18:28:52 it is his stuff, with a few tweaks 2011-03-24T18:28:58 ok. shouldn't be too hard to make work on OS X 2011-03-24T18:29:11 as long as it compiles 2011-03-24T18:29:23 he wrote in on bsd, so I had to make some changes to the source 2011-03-24T18:29:37 it compiled out of the box on openbsd, but needed tweaks for linux, iirc 2011-03-24T18:30:00 so maybe even less tweaks for osx 2011-03-24T18:50:59 3 month late, but weee! http://tcp.zeroviz.us/canvas.cgi?game_id=39978 2011-03-24T18:54:46 :) 2011-03-24T19:08:15 McLeopold: how is the data from parse_orders in ants.py supposed to be used... from what I can see engine.py and ants.py? 2011-03-24T19:08:36 *engine.py and ants.py use hte data inconsistantly 2011-03-24T19:18:50 *** choas has quit IRC (Quit: leaving) 2011-03-24T19:22:20 *** niemela has quit IRC (Quit: niemela) 2011-03-24T19:28:26 *** FireFly has joined #aichallenge 2011-03-24T20:03:53 sigh: I think parse orders was to take in from string data to tuples 2011-03-24T20:05:48 *** FireFly has quit IRC (Quit: swatted to death) 2011-03-24T20:05:57 McLeopold: sure, but how are the "invalid" and "valid" list supposed to be used by the engine and Ants 2011-03-24T20:06:06 Ants kills the player if there are any invalid moves 2011-03-24T20:06:22 the engine processes it if there are any valid moves 2011-03-24T20:06:24 I saw that 2011-03-24T20:06:43 then I thought, darn sigh, then I checked the blame in git and realized I did it 2011-03-24T20:06:50 :P 2011-03-24T20:07:10 I still think it was you, just that I did the merge and didn't notice :P 2011-03-24T20:07:24 I haven't touched that part of the code 2011-03-24T20:07:29 dang 2011-03-24T20:07:40 I've commented and tweaked a lot of the code to make it clearer though, because other people are starting to look at it 2011-03-24T20:07:48 well, for any given game, a parse error is different from an invalid order 2011-03-24T20:08:36 ok, firstly, is the current functionality right? 2011-03-24T20:08:41 for recording game replays, I separated valid lines from invalid lines for the engine to record, regardless of parse/invalid status 2011-03-24T20:08:51 No 2011-03-24T20:09:01 bots should not be killed for bad orders 2011-03-24T20:09:34 is that the only change required? 2011-03-24T20:09:39 Yes 2011-03-24T20:10:06 bad orders are what? badly formatted? invalid moves? 2011-03-24T20:10:14 when I hook up the tcp server, I want it to report all invalid and parse orders to the bot 2011-03-24T20:10:56 bad orders are both 2011-03-24T20:11:37 ok cool, I will fix it up later to do that, and either comment or reorg code to make that clear 2011-03-24T20:12:12 I did keep do_orders separate from do_moves, to keep a clear separation from the "interface" and the ants game specific stuff 2011-03-24T20:12:44 and I kept parse_orders separate from do_orders to keep parsing logic separate from checking for logical error in the orders 2011-03-24T20:12:44 I'm thinking of getting rid of do_orders and moving it into resolve orders 2011-03-24T20:13:04 yes, keeping parse_orders separate is good 2011-03-24T20:13:17 yeah, at the time I "resolved" orders as they came in, but I think you cache them all now, then resolve later. 2011-03-24T20:13:49 yeah, now do_orders and resolve_orders are heavily coupled 2011-03-24T20:14:00 anyway, thanks for your input... gtg now, got to interview people to see if they can code or if they are noobs 2011-03-24T20:14:11 ask the fizzbuzz question 2011-03-24T20:14:22 actual, binary search is my favorite question 2011-03-24T20:14:45 I'm asking a simple question involving callbacks 2011-03-24T20:15:06 half the fun is making them skirm... 2011-03-24T20:15:15 squirm? 2011-03-24T20:15:25 haha... this question makes people squirm more than I imagined it would 2011-03-24T20:15:26 it's a good thing I'm a programmer and not an author 2011-03-24T20:15:43 :) 2011-03-24T20:16:18 *** niemela has joined #aichallenge 2011-03-24T20:16:44 *** McLeopold has left #aichallenge 2011-03-24T20:18:37 aichallenge: McLeopold epsilon * r1f7bee4 / sql/matchups.sql.txt : More matchup sql (in progress) - http://bit.ly/fs5X2R 2011-03-24T20:18:38 aichallenge: McLeopold epsilon * rc13c498 / (42 files in 10 dirs): Merge branch 'epsilon' of github.com:aichallenge/aichallenge into epsilon - http://bit.ly/e5a7vo 2011-03-24T20:30:54 *** Stocha has joined #aichallenge 2011-03-24T20:37:06 *** davidjliu has joined #aichallenge 2011-03-24T20:43:36 *** Stocha has quit IRC (Quit: Page closed) 2011-03-24T20:48:08 *** Cyndre has joined #aichallenge 2011-03-24T21:32:09 *** needsch has quit IRC (Quit: Leaving.) 2011-03-24T21:38:56 *** moongrass has joined #aichallenge 2011-03-24T21:46:54 *** phirenz has joined #aichallenge 2011-03-24T21:52:33 ok, something completely unrelated to the contest and off the wall: if i do a google image search for a random common noun (e.g. "pencil"), and i scrape the thumbnails of the first few thousand image results, apply some generic pattern recognition algorithms on them (feature extraction etc.), do i have a chance of obtaining something of semantic relevance to said search query? 2011-03-24T21:54:41 how are succesful are known methods of doing stuff like this? 2011-03-24T21:55:11 *(how are succesful -> how succesful) 2011-03-24T21:55:52 moongrass: If get it working, please write the AI I'm always dreaming of. That understands how a horse or a beach ball looks like. 2011-03-24T21:56:34 lol ...i wont give up on those same dreams though ;) 2011-03-24T21:58:57 but in the case of simple objects (like a pencil), looking for basic spatial proportions should go a long way though, right? 2011-03-24T22:02:23 ...i imagine finding a proper "spatial grammar" onto which natural langauge grammars can be mapped, and which is designed with probabilistic learning algorithms in mimd, would be crucial... 2011-03-24T22:02:52 *mind... 2011-03-24T22:02:54 how do we learn to distinguish the horse from the dog in our childhood? I guess a first we recognize a pencil as something "about the size of a hand" which is "lengthy", "with a flat surface" and has "details on one end" 2011-03-24T22:03:07 right 2011-03-24T22:03:29 *** phirenz has quit IRC (Ping timeout: 264 seconds) 2011-03-24T22:04:02 which is not that hard to express in logical/mathematical notation i think 2011-03-24T22:04:14 but is the human grammar the best for a computer, or do we ultimately /have/ to use it to avoid constand misunderstandings 2011-03-24T22:05:06 computers need to be able to parse human grammars in order to do what we want them to do, right? 2011-03-24T22:06:16 how else will it understand "make me a million bucks!" or "take over the world!"? :P 2011-03-24T22:06:18 yeah, but maybe a computer would like to learn pencil as something with 100x more yellow pixels than gray pixels or something 2011-03-24T22:06:46 but that's insignificant in (our human) semantic sense 2011-03-24T22:06:47 *would like* ... man I need to stop personalizing AI. 2011-03-24T22:08:06 using the internet, software agents should be able to filter out what properties of image or other media we humans consider important and which not 2011-03-24T22:08:16 moongrass: The 'pattern recognition' may be a black box, optimized for speed. All the human observer needs from the machine is to recognize the pencil *somehow*. 2011-03-24T22:09:05 yes, but humans are the "jury", when it comes to deciding which blob is a pencil and which isn't 2011-03-24T22:09:53 therefore software agents need to be able to approximate human semantic models, no? 2011-03-24T22:10:03 *** jmpespxo1eax is now known as jmpespxoreax 2011-03-24T22:10:08 And you think that is only possible if we create a reference implementation of human pattern recognition, ok. 2011-03-24T22:10:09 *** jmpespxoreax has quit IRC (Changing host) 2011-03-24T22:10:09 *** jmpespxoreax has joined #aichallenge 2011-03-24T22:10:30 i suppose, yes 2011-03-24T22:12:09 It may be fun to try modularize the human brain and extract the basics of semantic in speech, pattern recognition, etc without touching motivations, introspection etc. 2011-03-24T22:12:54 it's essential i believe ...but probably only for basic vocabulary 2011-03-24T22:13:52 the rest of our vocab could be deduced recursively from "primitive semantics", perhaps 2011-03-24T22:14:56 like a dictionary, yes. but somehow i feel that we learn differently. it is not definition by definition, but more sort of a refinement and differentiation process 2011-03-24T22:15:23 i'm think about something WordNet-like, but on an entirely probabilistic basis open to unsupervised learning 2011-03-24T22:15:42 never heard of that 2011-03-24T22:16:30 WordNet is like a hierarchical net of english vocabulary 2011-03-24T22:16:47 a tree, basically 2011-03-24T22:19:01 a tree is not sufficient to store "transport", "flying", "duck", "car" and "airplane" :) 2011-03-24T22:20:16 have a look yourself then how they are classified: http://wordnetweb.princeton.edu/perl/webwn :) 2011-03-24T22:20:21 when I think "wing" will I think of the duck or of the plane? it depends on the current context of thoughts in my task or short term menory 2011-03-24T22:21:08 which is why a dictionary will have multiple entries for some words 2011-03-24T22:21:13 aka: homonyms 2011-03-24T22:21:27 * antimatroid sucks enough at good english already 2011-03-24T22:21:39 let alone trying the reverse engineer how i do it 2011-03-24T22:22:26 when you have multiple options, you assign probabilities to each option that are altered depending on context 2011-03-24T22:22:54 it's complex, but mostly readily solveable with known algo 2011-03-24T22:22:57 i have my own problem 2011-03-24T22:23:30 i need a concise name for a function that iteratively removes pure strategies that are strictly/weakly dominated by a pure/mixed strategy 2011-03-24T22:23:48 there will possibly be 4 functions per game with the /s 2011-03-24T22:24:01 per type of game* 2011-03-24T22:25:33 nevermind got one 2011-03-24T22:25:56 [P/M]IE[S/W]DS 2011-03-24T22:26:15 So I know your problems now. thx. I have just solved my problem: Rhino can compile and execute single JavaScript files one at a time and I can trigger the process from within my own Java class. 2011-03-24T22:35:47 antimatroid: is [P/M]IE[S/W]DS supposed to be a function name? 2011-03-24T22:36:15 :P 2011-03-24T22:37:25 ...i was too scared to ask :P 2011-03-24T22:38:15 no, he's giving a pattern for 4 functions, but I wouldn't put it past him to want to name a function [P/M]IE[S/W]DS 2011-03-24T22:39:03 and he started off with "i need a concise name for"... 2011-03-24T22:40:03 well, PIESDS is pretty concise, although completely opaque 2011-03-24T22:40:31 hence my fear :P 2011-03-24T22:40:43 :) 2011-03-24T22:50:00 *** phirenz has joined #aichallenge 2011-03-24T22:51:55 sigh: it is 2011-03-24T22:52:11 it's like "pure iterated elimination of strictly dominated strategies" 2011-03-24T22:52:56 although i may not do the weak versions, they don't really do much for you (it can eliminate nash equilibria and is not independent of the order in which you remove strategies) 2011-03-24T22:55:00 i have PSNE, MSNE etc. for pure/mixed strategy nash equilibria 2011-03-24T22:55:51 why do they have to be four letter names? 2011-03-24T22:56:02 i don't want them to be multiline names 2011-03-24T22:56:08 and can't think of anything in between 2011-03-24T22:56:09 *** KP13 has quit IRC (Quit: You're a kitty!) 2011-03-24T22:56:29 it will be standard across game types 2011-03-24T22:58:58 i'd make sure to at least precede the first instance of the var with a comment containing the unabreviated name 2011-03-24T22:59:01 *** janzert has quit IRC (*.net *.split) 2011-03-24T22:59:01 *** computerwiz_222 has quit IRC (*.net *.split) 2011-03-24T22:59:02 *** genericbob has quit IRC (*.net *.split) 2011-03-24T22:59:03 *** delt0r___ has quit IRC (*.net *.split) 2011-03-24T22:59:03 *** smellyhippy has quit IRC (*.net *.split) 2011-03-24T22:59:03 *** Sunhay has quit IRC (*.net *.split) 2011-03-24T22:59:03 *** Zepp has quit IRC (*.net *.split) 2011-03-24T22:59:04 *** num1_ has quit IRC (*.net *.split) 2011-03-24T23:02:07 *** janzert has joined #aichallenge 2011-03-24T23:02:08 *** computerwiz_222 has joined #aichallenge 2011-03-24T23:02:08 *** genericbob has joined #aichallenge 2011-03-24T23:02:14 *** znutar has quit IRC (Excess Flood) 2011-03-24T23:04:04 moongrass: none of the words at the front are very descriptive :P 2011-03-24T23:05:09 *** delt0r___ has joined #aichallenge 2011-03-24T23:05:10 *** smellyhippy has joined #aichallenge 2011-03-24T23:05:10 *** Sunhay has joined #aichallenge 2011-03-24T23:05:10 *** Zepp has joined #aichallenge 2011-03-24T23:05:10 *** num1_ has joined #aichallenge 2011-03-24T23:05:43 oh, ok... o_o; 2011-03-24T23:41:36 so, uhm, nobody have an idea how (spatial) knowledge is commonly represented in the field of computer vision? 2011-03-24T23:42:13 like, what would data structure would you use to represent the shape of the capital letter "R"? 2011-03-24T23:42:59 ugh, i can't even type a single sentence correctly 2011-03-24T23:45:58 i'm just looking for a link or something to an entry text that covers this kind of thing... the chapter in russell/norvig's book seems to gloss over things a bit... 2011-03-24T23:46:04 *** twinshadow has joined #aichallenge 2011-03-24T23:48:59 moongrass: you usually identify it by a list of "features" 2011-03-24T23:49:42 simple examples of features are corners and edges, but feature detection can get pretty sophisicated 2011-03-24T23:50:09 hm, right 2011-03-24T23:50:54 in short, you match your unknown sample to the best match in your training sample in the "feature space" 2011-03-24T23:51:50 if you want to experiment with computer vision try OpenCV: http://opencv.willowgarage.com/wiki/ 2011-03-24T23:52:21 cool, thanks 2011-03-24T23:52:54 maybe i just need to experiment more 2011-03-24T23:53:06 ...to see what the features really boil down to 2011-03-24T23:53:42 start by learning how to detect edges and corners 2011-03-24T23:54:07 will do :) 2011-03-24T23:54:58 without getting more into detail, features don't get much more complex than that, it's just figuring out which ones are representative that becomes complex 2011-03-24T23:55:36 oh look, a quick google brought up this: http://blog.damiles.com/?p=93 - Basic OCR in OpenCV 2011-03-24T23:56:05 i was thinking along the lines of how to express how different kinds of features combine to make more complicated shapes/patterns 2011-03-24T23:57:15 nice links, thx 2011-03-24T23:57:22 hmmm... in that example he talks about feature extraction, but doesn't actually do it 2011-03-24T23:58:17 anyway, opencv has a whole module dedicated to feature detection, so have a look at that: http://opencv.willowgarage.com/documentation/cpp/imgproc_feature_detection.html 2011-03-24T23:58:33 it's open source so you can see the implementation too 2011-03-24T23:59:28 definitely will, i guess the python version is as complete as the others?