2012-04-30T00:03:17 *** foRei has quit IRC (Read error: Connection reset by peer) 2012-04-30T00:04:33 *** smiley1983 has quit IRC (Ping timeout: 245 seconds) 2012-04-30T00:05:35 *** smiley1983 has joined #aichallenge 2012-04-30T00:05:43 *** foRei has joined #aichallenge 2012-04-30T00:11:23 *** foRei has quit IRC (Quit: Bye) 2012-04-30T01:09:15 *** dvladim has quit IRC (Ping timeout: 252 seconds) 2012-04-30T01:20:39 *** thestinger has quit IRC (Quit: WeeChat 0.3.7) 2012-04-30T01:44:46 *** replore_ has joined #aichallenge 2012-04-30T02:03:50 *** KP13 has joined #aichallenge 2012-04-30T02:05:42 *** Kingpin13 has quit IRC (Ping timeout: 245 seconds) 2012-04-30T02:38:25 *** amstan has quit IRC (Ping timeout: 246 seconds) 2012-04-30T02:44:24 *** HaraKiri has joined #aichallenge 2012-04-30T02:45:00 *** KP13 is now known as Kingpin13 2012-04-30T03:00:32 *** pairofdice has joined #aichallenge 2012-04-30T03:00:49 *** smiley1983 has quit IRC (Ping timeout: 246 seconds) 2012-04-30T03:01:37 *** smiley1983 has joined #aichallenge 2012-04-30T03:08:43 *** dvladim has joined #aichallenge 2012-04-30T03:09:55 *** smiley1983 has quit IRC (Ping timeout: 246 seconds) 2012-04-30T03:10:57 *** smiley1983 has joined #aichallenge 2012-04-30T03:12:12 *** NoxiaZ^ has joined #aichallenge 2012-04-30T03:31:39 *** epicmonkey has joined #aichallenge 2012-04-30T03:37:03 *** dvladim has quit IRC (Ping timeout: 245 seconds) 2012-04-30T04:10:46 *** replore_ has quit IRC (Remote host closed the connection) 2012-04-30T04:46:09 *** UncleVasya has joined #aichallenge 2012-04-30T05:00:29 *** smiley1983 has quit IRC (Ping timeout: 260 seconds) 2012-04-30T05:01:54 *** smiley1983 has joined #aichallenge 2012-04-30T05:15:47 *** X-Scale has quit IRC (Ping timeout: 272 seconds) 2012-04-30T05:17:35 *** coeus has joined #aichallenge 2012-04-30T05:22:30 *** X-Scale` has joined #aichallenge 2012-04-30T05:24:39 *** cyphase has quit IRC (Ping timeout: 272 seconds) 2012-04-30T05:24:58 *** coeus has quit IRC (Read error: Operation timed out) 2012-04-30T05:40:12 *** cyphase has joined #aichallenge 2012-04-30T06:01:43 *** smjms has joined #aichallenge 2012-04-30T06:01:43 *** smjms has joined #aichallenge 2012-04-30T06:05:11 *** X-Scale` has quit IRC (Ping timeout: 272 seconds) 2012-04-30T06:05:32 *** smiley1983 has quit IRC (Ping timeout: 265 seconds) 2012-04-30T06:06:07 *** smiley1983 has joined #aichallenge 2012-04-30T06:19:04 *** replore has joined #aichallenge 2012-04-30T06:43:49 *** smiley1983 has quit IRC (Ping timeout: 272 seconds) 2012-04-30T06:43:55 *** smiley1983 has joined #aichallenge 2012-04-30T06:46:11 *** mcstar has joined #aichallenge 2012-04-30T06:46:42 i just compiled numpy with acml 2012-04-30T06:47:07 matrix inverting on a 2000*2000 matrix is 6 secs instead of 27 2012-04-30T06:53:41 *** delt0r_ has quit IRC (Ping timeout: 252 seconds) 2012-04-30T07:00:22 *** Jak_o_Shadows has joined #aichallenge 2012-04-30T07:01:02 *** replore has quit IRC (Remote host closed the connection) 2012-04-30T07:04:51 *** Jak_o_Shadows has quit IRC (Client Quit) 2012-04-30T07:06:25 *** delt0r_ has joined #aichallenge 2012-04-30T07:15:19 *** replore has joined #aichallenge 2012-04-30T07:18:32 *** mceier has joined #aichallenge 2012-04-30T07:27:09 *** smiley1983 has quit IRC (Ping timeout: 256 seconds) 2012-04-30T07:27:49 *** smiley1983 has joined #aichallenge 2012-04-30T07:35:31 *** |UncleVasya| <|UncleVasya|!kvirc@178-133-136-204.dialup.umc.net.ua> has joined #aichallenge 2012-04-30T07:35:47 *** foRei has joined #aichallenge 2012-04-30T07:36:22 *** UncleVasya has quit IRC (Read error: Connection reset by peer) 2012-04-30T07:40:30 mcstar: did you get my message? 2012-04-30T07:40:42 yes 2012-04-30T07:40:47 make sense? 2012-04-30T07:40:51 was obvious in the end 2012-04-30T07:41:05 well, i was expecting some elaborate construction 2012-04-30T07:41:11 *** |UncleVasya| <|UncleVasya|!kvirc@178-133-136-204.dialup.umc.net.ua> has quit IRC (Read error: Connection reset by peer) 2012-04-30T07:42:16 antimatroid1: what doesnt make sense to me, is what are the sets, which contain only a finite number of raitonals? 2012-04-30T07:42:40 the rational point sets 2012-04-30T07:42:46 ie {q} st q is rational 2012-04-30T07:43:12 i dont get it 2012-04-30T07:43:27 so your sequence is basically {I, {q_1}, {q_2}, ...} where I is the set of irrational numbers 2012-04-30T07:43:39 since the rationals are countable the can be arranged into a sequence like that 2012-04-30T07:43:45 ok, but you dont say explicitely, how do you construct q_i 2012-04-30T07:43:56 doesn't matter 2012-04-30T07:44:05 it's doable 2012-04-30T07:44:16 ok 2012-04-30T07:44:36 there's a bijection from the natural numbers to the rationals 2012-04-30T07:44:40 hence why they are countable 2012-04-30T07:44:47 yes 2012-04-30T07:44:51 so you would do it with such a bijection 2012-04-30T07:45:11 if f:N->Q then q_i = f(i) 2012-04-30T07:45:22 where f is a bijection 2012-04-30T07:45:47 but |q_i| must be finite 2012-04-30T07:46:23 so f's domain is only N' \subset N 2012-04-30T07:46:26 *** Palmik has joined #aichallenge 2012-04-30T07:46:36 no, the measure of each set in the sequence must be finite 2012-04-30T07:46:46 meaning each set in the sequence must have a finite number of rational numbers in it 2012-04-30T07:46:55 and the union of the sets in the sequence must be R 2012-04-30T07:47:58 but if f is a bijection, then N will be transformed to a set of similar cardinality 2012-04-30T07:48:02 i.e. inf 2012-04-30T07:48:25 but each set in the sequence is either I or {q_i} 2012-04-30T07:48:28 and that means each q_i's measure(the number of raionals in it) will be too 2012-04-30T07:48:38 and u(I) = 0 and u({q_i}) = 1 for all i \in N 2012-04-30T07:48:56 there is only 1 rational number in the set {q_i} 2012-04-30T07:49:14 oh 2012-04-30T07:49:38 antimatroid1: ah ok, so f is bijection between N and ALL the rationals 2012-04-30T07:49:43 yeah 2012-04-30T07:50:17 such a bijection exists because i've been told so :P 2012-04-30T07:50:24 i can't remember how to construct one 2012-04-30T07:51:26 there is a famous construction that does that 2012-04-30T07:51:36 i cant remember after whom it is named 2012-04-30T07:51:46 there's the diagonalisation argument to show the reals aren't countable 2012-04-30T07:51:58 and that is from whom? 2012-04-30T07:52:01 euler? 2012-04-30T07:52:16 doest matter 2012-04-30T07:52:44 n 2012-04-30T07:54:35 cantor 2012-04-30T07:54:36 i think 2012-04-30T07:55:27 i really ought to know this stuff better 2012-04-30T07:55:29 but i don't :P 2012-04-30T07:55:45 i easily get confused once things become infinite 2012-04-30T07:56:17 but then some people refer to finite problems as trivial :P 2012-04-30T07:56:32 antimatroid1: then only consider an infinitely small subset of infinite :D 2012-04-30T07:56:44 there was a prof, he said he can see everything well, up to 7 dimensions, but he gets confused around 8 2012-04-30T07:56:47 obviously ignoring computational constraints 2012-04-30T07:56:57 that prof is an idiot imo 2012-04-30T07:57:02 ahah 2012-04-30T07:57:05 yeah 2012-04-30T07:57:08 it is bs 2012-04-30T07:57:18 you can 2012-04-30T07:57:23 t "see" in more than 3 2012-04-30T07:57:33 you understand the analogous concepts for higher dimensions 2012-04-30T07:57:41 but to then get tripped from 7 to 8 is retarded 2012-04-30T07:57:42 antimatroid1: the mathematics can... 2012-04-30T07:57:46 (i heard it second-hand, but he really said something like that) 2012-04-30T07:58:04 and if you can understand that... etc... it can be argued to be the same as seeing 2012-04-30T07:58:26 delt0r__: yeah I mean you can't visualise something in a 4d graph, only projections of that into 2-3 dimensions 2012-04-30T07:58:47 i'm using a stricter notion of seeing 2012-04-30T07:58:51 well i deal with problems with many more than 3 parameters... and i understand them well... 2012-04-30T07:58:54 i think he meant some higher dimensional geometry where seeing meant seeing, and not algebraic structure manipulation 2012-04-30T07:58:56 but i can't plot it 2012-04-30T07:58:59 yes so do i 2012-04-30T07:59:03 that's what i mean though 2012-04-30T07:59:14 you can't actually "see" a 4 dimensional surface 2012-04-30T07:59:21 you can know a lot about the surface 2012-04-30T07:59:28 but you can't see the surface in it's entirely 2012-04-30T07:59:55 entirety 2012-04-30T08:00:10 :P 2012-04-30T08:00:40 antimatroid1: ml is dead simple soo far 2012-04-30T08:00:41 delt0r__: you'd have to agree that getting tripped from 7 to 8 makes no sense 2012-04-30T08:00:52 mcstar: fun? 2012-04-30T08:00:55 no 2012-04-30T08:01:01 nawww 2012-04-30T08:01:08 you dont need to think 2012-04-30T08:01:14 not half as good as crypto 2012-04-30T08:01:15 my probability and measure classes are pretty cool 2012-04-30T08:01:28 i had to think to solve crypto(and to follow it) 2012-04-30T08:01:33 i haven't been to classes for probability since like the second week though, oops 2012-04-30T08:01:41 antimatroid1: perhaps... but this is exactly the sort of thing these guys usually say 2012-04-30T08:01:58 of course if i get the job in NZ... i will be one of these guys : 2012-04-30T08:01:59 :D 2012-04-30T08:02:07 he sounds like one of the people who makes those videos on youtube about "visualising n-dimensions" 2012-04-30T08:02:08 they're bs 2012-04-30T08:02:20 which job? 2012-04-30T08:02:26 the commonwealth bank 2012-04-30T08:02:33 only australians will get that 2012-04-30T08:02:37 he is going to be a prof again 2012-04-30T08:02:40 right? 2012-04-30T08:02:48 nz would be sweet 2012-04-30T08:02:58 antimatroid1: Senior lecture in Statistics 2012-04-30T08:03:04 being paid to do research and teach would be awesome 2012-04-30T08:03:15 it is what a postdoc is 2012-04-30T08:03:16 i am being paid to do that now, but for longer 2012-04-30T08:03:19 only with less teaching 2012-04-30T08:03:31 it been 9 years for me now 2012-04-30T08:03:40 time to get a real job 2012-04-30T08:03:57 hehe, i thought we refer to academic jobs as not real? 2012-04-30T08:04:19 well this is a real job in that there is no finish date on the contract 2012-04-30T08:04:34 right now i never have a job for longer than a year at a time 2012-04-30T08:04:45 PITA really 2012-04-30T08:05:07 is it near queenstown? 2012-04-30T08:05:12 yes 2012-04-30T08:05:18 Christchurch 2012-04-30T08:05:19 one of my friends said he might be moving there this year 2012-04-30T08:05:28 to quake zone? 2012-04-30T08:05:32 the other earthquake town 2012-04-30T08:05:32 delt0r__: you move every year? 2012-04-30T08:05:38 i would move there in a heartbeat 2012-04-30T08:05:38 mcstar: no 2012-04-30T08:05:50 have been in vienna for 6 years now 2012-04-30T08:06:46 but never with a fixed job for that long... only for one more year ... at a time 2012-04-30T08:06:47 any idea how many they've narrowed it down to? 2012-04-30T08:06:52 3 2012-04-30T08:06:52 and when they'll decide etc? 2012-04-30T08:06:56 i assume it's for starting next year? 2012-04-30T08:07:13 or next semester? 2012-04-30T08:07:14 i have a interview talk on the 21st may 2012-04-30T08:07:18 flying me over 2012-04-30T08:07:22 nice 2012-04-30T08:07:29 do well :) 2012-04-30T08:07:33 hope so 2012-04-30T08:07:40 i feel weird wishing people good luck when i don't believe in luck 2012-04-30T08:07:44 but i think you get what i mean :P 2012-04-30T08:07:55 it not about me being good... it is about the others not fitting as well as me 2012-04-30T08:07:58 i hope 2012-04-30T08:08:07 unfortunately too true 2012-04-30T08:08:42 we are all good or they wouldn't foot the bill for flights 2012-04-30T08:08:45 i have been running an informal "seminar" at uni which has gained me brownie points 2012-04-30T08:09:20 *** smiley1983 has quit IRC (Read error: Operation timed out) 2012-04-30T08:09:33 is nz high on where you'd like to live? I assume one doesn't end up with much choice these days 2012-04-30T08:09:43 not really 2012-04-30T08:09:44 so it's a bonus if where you get offered a job is somewhere you'd like to live 2012-04-30T08:09:49 not yet anyway 2012-04-30T08:09:55 I am a NZer of course 2012-04-30T08:10:00 yeah 2012-04-30T08:10:04 but i just LOVE it here 2012-04-30T08:10:11 in EU and vienna in particular 2012-04-30T08:10:20 yeah i would like to spend some time in europe 2012-04-30T08:10:45 i might save up holiday time and head over at the end of next year or something 2012-04-30T08:10:55 make an effort... it is worth it and pretty cheap if you want it too be. Consider Couch surfing 2012-04-30T08:11:01 my bank account is finally going upwards rather than sitting near 0 2012-04-30T08:11:04 * delt0r__ is CS member 2012-04-30T08:11:15 Ironically mine is negative 2012-04-30T08:11:27 technically i owe the government $35,000 2012-04-30T08:11:32 Ha 2012-04-30T08:11:38 148k NZD 2012-04-30T08:11:43 one of the largest in NZ 2012-04-30T08:11:51 but it's hecs debt, so don't have to pay anything back till i'm earning like $50k/year and only interest is inflation 2012-04-30T08:12:07 i have to pay 3k EU per year 2012-04-30T08:12:22 the new job it will be 8k NDZ 2012-04-30T08:12:25 NZD 2012-04-30T08:12:35 both is *below* interest 2012-04-30T08:12:45 my maturity date is infinity! 2012-04-30T08:12:50 i'm currently on 24k/year tax free scholarship and whatever i make taking tutes 2012-04-30T08:13:02 but i get like $115 to take a 50 minute economics tute 2012-04-30T08:13:03 same as in NZ 2012-04-30T08:13:04 less for maths 2012-04-30T08:13:06 *** MagiCrazy has joined #aichallenge 2012-04-30T08:13:14 hi everybody 2012-04-30T08:13:23 * delt0r__ coffee time... 2012-04-30T08:13:25 brb 2012-04-30T08:13:40 it might be a while before i can top that wage rate 2012-04-30T08:14:29 mcstar: has your friend found a job yet? 2012-04-30T08:15:41 we talk rarely these days 2012-04-30T08:15:49 id guess not 2012-04-30T08:16:05 couple of weeks ago he didnt have one 2012-04-30T08:21:17 i need to somehow convince someone rich to just pay me a livable wage to do research 2012-04-30T08:21:20 that would be my dream job 2012-04-30T08:21:26 i could be a travelling mathematician 2012-04-30T08:22:08 like Erdos? 2012-04-30T08:22:13 yep 2012-04-30T08:22:22 watch, out, he did amphetamines 2012-04-30T08:22:30 yeah i was gonna say, without the speed 2012-04-30T08:22:51 i have yet to read Proofs from the Book 2012-04-30T08:22:59 same 2012-04-30T08:23:21 i thought to myself i will prove every theorem before i read them 2012-04-30T08:23:28 well, i proved some prime number theorem 2012-04-30T08:23:32 *** Garf has joined #aichallenge 2012-04-30T08:23:43 but after that i didnt feel like doing it again 2012-04-30T08:23:57 when i want to really understand something i tend to need to construct it from scratch anyway 2012-04-30T08:24:08 once i've done that though i can treat things as black boxes 2012-04-30T08:24:14 and tend to understand stuff better than others 2012-04-30T08:24:20 *** Garf has quit IRC (Client Quit) 2012-04-30T08:24:25 but without that i get lost while others seem to have some kind of working knowledge 2012-04-30T08:24:32 probability and stats are a good example 2012-04-30T08:24:37 i'm lost in the "basic" classes 2012-04-30T08:25:00 (i made a mistake at uni, of reading much, but not working through problems) 2012-04-30T08:25:03 grave mistake 2012-04-30T08:25:06 i don't read 2012-04-30T08:25:15 don't buy textbooks, don't do readings, etc. 2012-04-30T08:25:27 i can't take stuff in reading 2012-04-30T08:25:30 *** dici has joined #aichallenge 2012-04-30T08:25:34 what do you mean? 2012-04-30T08:25:45 do you hear maths cassetts? 2012-04-30T08:25:47 if i read something i'll get to the end of the page and forget what i did at the start 2012-04-30T08:25:53 *** Garf has joined #aichallenge 2012-04-30T08:25:55 pff, i meant are you listening to... 2012-04-30T08:26:01 no, i work through problems making sure i understand everything i write down 2012-04-30T08:26:23 half the time i'll just do a proof myself during a lecture 2012-04-30T08:26:26 with my own notation 2012-04-30T08:26:38 antimatroid1: sometimes happens for me too, but it is simply impossible not to read for me 2012-04-30T08:26:42 you're already told the result, it usually works out 2012-04-30T08:26:56 i do read, but not just pick up a book and read 2012-04-30T08:27:01 i read concepts then play around with them 2012-04-30T08:27:10 answer any questions i can come up with to do with their structure 2012-04-30T08:27:21 until i understand what's going on, what implies what and what doesn't etc. 2012-04-30T08:28:14 Yeah, stuff just goes in and right back out again if you just read 2012-04-30T08:29:39 * mcstar is being lectured again that he is doing things the wrong way, whatever 2012-04-30T08:29:49 i'm not lecturing 2012-04-30T08:29:55 whatever 2012-04-30T08:29:56 note i specifically said that's what i've found for myself 2012-04-30T08:30:01 whatever 2012-04-30T08:30:04 XD 2012-04-30T08:30:06 i don't doubt that some people learn better using different methods 2012-04-30T08:30:14 antimatroid1: you basically described non teaching post doc 2012-04-30T08:30:21 15:24 < mcstar> (i made a mistake at uni, of reading much, but not working through 2012-04-30T08:30:24 problems) 2012-04-30T08:30:33 and if you can't teach it, you don't really understand it 2012-04-30T08:30:35 who said what again 2012-04-30T08:30:37 delt0r__: i'm now a phd student, it's sort of the baby post doc no? 2012-04-30T08:30:43 no 2012-04-30T08:30:51 post is about 1000x better 2012-04-30T08:30:54 more pay 2012-04-30T08:30:56 i've actually found what should be my easiest class to teach is the hardest 2012-04-30T08:30:58 only papers 2012-04-30T08:31:05 because the students know almost no mathematics 2012-04-30T08:31:06 no thesis 2012-04-30T08:31:15 so i need to explain it in terms they can understand, which is hard without the maths 2012-04-30T08:31:15 antimatroid1: yep 2012-04-30T08:31:24 first year is the worse to teach 2012-04-30T08:31:32 they're all first year units 2012-04-30T08:31:36 but 2 are better than 1 2012-04-30T08:31:42 pairofdice: i was kidding 2012-04-30T08:31:51 mostly because they are idiots and only are there because it is a prerequisite 2012-04-30T08:32:30 i'm only taking tutes too 2012-04-30T08:32:32 not lectures 2012-04-30T08:32:47 right .. so TA? 2012-04-30T08:32:52 yeah pretty much 2012-04-30T08:33:08 although i'm the only person the students interact with for one unit, so i have a lot more freedom there 2012-04-30T08:33:18 it's via video conference to people in launceston and burnie 2012-04-30T08:33:34 so i sort of half teach during those tutes 2012-04-30T08:33:39 rather than just working through set problems 2012-04-30T08:33:40 sounds remote 2012-04-30T08:58:37 *** amstan has joined #aichallenge 2012-04-30T08:58:45 *** amstan has joined #aichallenge 2012-04-30T08:58:45 *** ChanServ sets mode: +o amstan 2012-04-30T09:15:41 *** smiley1983 has joined #aichallenge 2012-04-30T09:16:56 the weather is wonderful outside 2012-04-30T09:19:13 It is 2012-04-30T09:19:30 *** choas has joined #aichallenge 2012-04-30T09:19:49 i hate you both 2012-04-30T09:19:55 it's cold ehre 2012-04-30T09:20:26 it is too bad i cant do what i do there 2012-04-30T09:20:30 i mean outside 2012-04-30T09:30:17 *** Kingpin13 has quit IRC (Read error: Operation timed out) 2012-04-30T09:36:40 *** SMJ has joined #aichallenge 2012-04-30T09:36:40 *** SMJ has joined #aichallenge 2012-04-30T09:39:02 *** smjms has quit IRC (Ping timeout: 245 seconds) 2012-04-30T09:43:53 *** Kingpin13 has joined #aichallenge 2012-04-30T09:43:59 *** thestinger has joined #aichallenge 2012-04-30T09:55:04 *** Kingpin13 has quit IRC (Ping timeout: 256 seconds) 2012-04-30T09:55:11 *** TheLinker has joined #aichallenge 2012-04-30T10:02:41 *** Garf has quit IRC (Read error: Connection reset by peer) 2012-04-30T10:03:45 *** TheLinker has quit IRC (Ping timeout: 260 seconds) 2012-04-30T10:05:49 *** TheLinker has joined #aichallenge 2012-04-30T10:06:22 *** Garf has joined #aichallenge 2012-04-30T10:06:53 *** choas has quit IRC (Ping timeout: 248 seconds) 2012-04-30T10:19:55 *** rwest has joined #aichallenge 2012-04-30T10:25:00 *** Kingpin13 has joined #aichallenge 2012-04-30T10:36:54 *** choas has joined #aichallenge 2012-04-30T10:37:39 *** UncleVasya has joined #aichallenge 2012-04-30T10:40:48 *** kaydorck has joined #aichallenge 2012-04-30T11:07:46 *** _NoxiaZ <_NoxiaZ!~noxi@87-104-29-39-dynamic-customer.profibernet.dk> has joined #aichallenge 2012-04-30T11:14:18 *** coeus has joined #aichallenge 2012-04-30T11:16:40 *** kaydorck has quit IRC () 2012-04-30T11:41:30 *** TheLinker has quit IRC (Remote host closed the connection) 2012-04-30T11:54:13 I just tried a trie and they are fast. in my use case 5* the speed of simple hash lookups :) 2012-04-30T11:54:36 mleise: what kind? 2012-04-30T11:54:44 prefix trie or a nice radix one? 2012-04-30T11:55:09 (gcc has a nice implementation included in libstdc++ btw) 2012-04-30T11:58:03 a prefix one 2012-04-30T11:58:34 I'm trying to find out if I have registred a handler for whatever my parser stumbles over 2012-04-30T11:59:07 so I do an eager matching of the prefix until the trie is out of data. the longest match counts 2012-04-30T12:00:30 i don't have much data in it, and no long words, so in this case the O(n) access time for long words doesn't count 2012-04-30T12:01:19 mleise: https://en.wikipedia.org/wiki/Radix_tree that's the optimized version 2012-04-30T12:01:33 I was trying to implement one but gave up after I discovered the gcc implementation 2012-04-30T12:02:07 *** |UncleVasya| <|UncleVasya|!kvirc@46-133-147-50.dialup.umc.net.ua> has joined #aichallenge 2012-04-30T12:02:08 *** UncleVasya has quit IRC (Read error: Connection reset by peer) 2012-04-30T12:02:21 ah, I need to write code for that one :D 2012-04-30T12:03:45 the part I was stuck on was the sort order 2012-04-30T12:03:56 for some reason the reverse traversal was messed up 2012-04-30T12:04:03 and I needed that for the use case 2012-04-30T12:04:29 it's so easy to implement with recursion but stupid C++ has no coroutines :( 2012-04-30T12:10:24 something is wrong, when i manually fill it it is fast, and when i write an insert routine it is 50% slower 2012-04-30T12:12:23 *** |UncleVasya| <|UncleVasya|!kvirc@46-133-147-50.dialup.umc.net.ua> has quit IRC (Ping timeout: 260 seconds) 2012-04-30T12:13:58 mleise: how do you store the child nodes? 2012-04-30T12:14:39 *** SMJ has quit IRC (Quit: Konversation terminated!) 2012-04-30T12:15:14 TrieNode*[256] :D 2012-04-30T12:15:28 not very space efficient :P 2012-04-30T12:15:31 the problem was that I aliased the node list with the node itself 2012-04-30T12:15:31 *** MagiCrazy has quit IRC (Quit: I'm an agent of chaos !) 2012-04-30T12:15:50 so some pointer arithmetic failed and the tree was magically faster 2012-04-30T12:16:27 in C++ I just ended up storing them directly rather than using pointers 2012-04-30T12:16:27 i.e. i wanted to use node['a'] instead of node.children['a'] 2012-04-30T12:16:35 directly? 2012-04-30T12:16:44 by-value 2012-04-30T12:16:55 how do you know how deep your tree will be? 2012-04-30T12:17:21 it's all on the heap anyway since the arrays are dynamically allocated in mine 2012-04-30T12:18:01 so the pointer is to an array, rather than an array of pointers 2012-04-30T12:18:18 for some reason it's a lot faster that way (at least in this case) 2012-04-30T12:18:20 ah, let me get that straight in my head 2012-04-30T12:19:03 I optimized it for lookups instead of inserts so there are little sorted arrays (up to 256 size at max, like yours) 2012-04-30T12:21:42 lol, how can I possibly allocate a new static array in D? I thinks it is dynamic, when I write new 2012-04-30T12:22:19 * thestinger has no idea :P 2012-04-30T12:22:30 sorted array? why when you can waste space and have direct array access? 2012-04-30T12:22:47 mleise: because I needed to store millions of things in it :P 2012-04-30T12:23:23 256 byte overhead per byte of string would be too much 2012-04-30T12:23:42 and you might be surprised by the performance due to CPU cache if you save space 2012-04-30T12:26:11 ok, it doesn't work that way, new can only allocate stucts, classes and dynamic arrays 2012-04-30T12:26:27 well a dynamic array is fine 2012-04-30T12:26:30 oh 2012-04-30T12:26:47 you mean you can't store the other structs by-value in a dynamic array? 2012-04-30T12:26:50 hmm 2012-04-30T12:27:31 I cannot have struct TrieNode { TrieNode[256]* children; } 2012-04-30T12:27:47 and then say node.children = new TrieNode[256]; 2012-04-30T12:27:58 ah 2012-04-30T12:28:34 *** UncleVasya has joined #aichallenge 2012-04-30T12:28:35 in D? 2012-04-30T12:28:40 * thestinger doesn't know D 2012-04-30T12:29:01 in C++ I just used std::vector instead of std::vector 2012-04-30T12:29:12 I'm pretty sure using std::array would explode the stack :P 2012-04-30T12:32:42 *** kilae has joined #aichallenge 2012-04-30T12:34:45 and the latter is what doesn't work for me 2012-04-30T12:35:40 anyway with 7000 samples of two letter words, I am now 10 times faster than the built-in hash. that's good enough. I don't know how much the cache likes it though 2012-04-30T12:36:58 or you can try #pragma comment(linker, "/STACK:%big_number_here%") This is for Visual Studion, don't know about other compilers. 2012-04-30T12:37:26 UncleVasya: POSIX lets you set the stack size 2012-04-30T12:37:39 iirc it's a bad idea but I forget why 2012-04-30T12:38:03 (to make it huge at least) 2012-04-30T12:38:06 just allocate blocks on the heap 2012-04-30T12:39:47 thestinger: have you tried intel mkl routines? 2012-04-30T12:40:08 nope 2012-04-30T12:40:09 i have an idea... i'll try a 3 level stack allocated Trie 2012-04-30T12:40:32 i compiled numpy with the amcl, and inverting a matrix was almost 5 times faster 2012-04-30T12:40:34 mleise: I think using a radix trie will speed up lookups a lot 2012-04-30T12:40:36 than standard vlas/lapack 2012-04-30T12:40:50 at the expense of more insert/deletion time 2012-04-30T12:41:10 vlas->blas 2012-04-30T12:41:31 you have to pay to use mkl sadly 2012-04-30T12:41:39 previously it was free for non commercial use 2012-04-30T12:45:19 * thestinger is making an awful little chess engine 2012-04-30T12:45:51 DeepStinger 2012-04-30T12:46:02 *** kurnevsky has joined #aichallenge 2012-04-30T12:46:44 http://sprunge.us/jNbX bishops implemented :P 2012-04-30T12:46:49 only took the longest line of code ever 2012-04-30T12:47:23 can definitely be cleaned up a lot but all I care about is that it works for now 2012-04-30T12:48:18 almost at the point where I can actually start on something related to the AI :P 2012-04-30T12:48:23 why dont you abstact out the coordinates? 2012-04-30T12:48:46 how? 2012-04-30T12:48:47 thestinger: remember, that chess in not AI anymore 2012-04-30T12:48:53 it is solved 2012-04-30T12:49:07 mcstar: not on a 4 core desktop CPU 2012-04-30T12:49:13 and it's not solved 2012-04-30T12:49:22 checkers was recently solved :P 2012-04-30T12:49:32 it was a joke on ai development... 2012-04-30T12:49:42 * thestinger is stupid 2012-04-30T12:50:29 http://sprunge.us/EVOU 2 player for now anyway as I test it... 2012-04-30T12:50:48 I have somewhere in dark corners of my hard drive chess program (with AI) written in ~1994 by 2 students for their diploma. 2012-04-30T12:50:53 I need to add color so I actually see it well 2012-04-30T12:51:48 or you could write a little gui 2012-04-30T12:52:11 nooooo never :P 2012-04-30T12:52:19 this makes it easy to feed with input 2012-04-30T12:52:26 ? 2012-04-30T12:52:35 and also c++ code of 5027 lines in one file - Gull chess engine (a strong one I suppose). 2012-04-30T12:52:36 i gui can only make it better 2012-04-30T12:52:42 you could still feed it data 2012-04-30T12:52:46 i->a 2012-04-30T12:52:58 UncleVasya: I bet it will be beaten by this IOCCC one that inspired me 2012-04-30T12:53:00 ofc it is your choice 2012-04-30T12:53:28 http://nanochess.110mb.com/chess1.html http://nanochess.110mb.com/chess2.html 2012-04-30T12:54:03 it someone does minimax in that :\ 2012-04-30T12:54:14 hehe: pragma(msg, Trie(Object, 3).sizeof) => 134744072LU 2012-04-30T12:54:26 nice 2012-04-30T12:54:32 :P 2012-04-30T12:55:02 the c++11 class enums are awesome 2012-04-30T12:55:14 can set the type of integer they use, and they're strongly typed 2012-04-30T12:55:35 Jari Arkko -- http://www.arkko.com Strangest abuse of the rules hahah, nice nomination. 2012-04-30T12:56:53 sort of feels like a ghetto algebraic data type 2012-04-30T12:57:13 could combine them with unions somehow and get exactly that... 2012-04-30T13:00:13 *** UncleVasya has quit IRC (Ping timeout: 260 seconds) 2012-04-30T13:04:07 *** jcdny has joined #aichallenge 2012-04-30T13:06:49 thestinger: the second one is absolutely crazy 2012-04-30T13:09:14 mcstar: it actually has a really high ELO score 2012-04-30T13:09:19 and it runs really fast... 2012-04-30T13:09:39 krazy... 2012-04-30T13:09:56 how much time must he have spent on it? 2012-04-30T13:10:26 he has a whole site dedicated to it 2012-04-30T13:10:35 and entered multiple IOCCC contests with different ones 2012-04-30T13:10:46 he probably spent actual years on that :P 2012-04-30T13:10:52 (the coding) 2012-04-30T13:11:15 and the chess is just the lower part 2012-04-30T13:11:17 mcstar: http://nanochess.110mb.com/chess.html 2012-04-30T13:11:22 won two IOCCC contests o_o 2012-04-30T13:12:09 i really DONT envy him 2012-04-30T13:12:23 *** mleise has quit IRC (Ping timeout: 245 seconds) 2012-04-30T13:12:24 but it is definitely spectacular 2012-04-30T13:12:30 I actually tried decoding what the hell what was going 2012-04-30T13:12:44 going on* 2012-04-30T13:12:48 but it's all bit magic underneath the obfuscation so it was impossible 2012-04-30T13:13:22 and he uses setjmp... 2012-04-30T13:15:01 *** Garf has quit IRC (Quit: Make a new plan, Stan!) 2012-04-30T13:15:19 *** antimatroid has joined #aichallenge 2012-04-30T13:15:58 *** kurnevsky has quit IRC (Ping timeout: 246 seconds) 2012-04-30T13:16:29 *** antimatroid1 has quit IRC (Ping timeout: 246 seconds) 2012-04-30T13:16:47 thestinger: the biggest problem with that is that it isnt useful, you should do something useful 2012-04-30T13:16:50 i mean it 2012-04-30T13:17:10 I can't think of anything useful to do 2012-04-30T13:18:18 *** mleise has joined #aichallenge 2012-04-30T13:18:46 *** Garf has joined #aichallenge 2012-04-30T13:19:45 hmm, the color and type of a piece can actually fit in one byte 2012-04-30T13:19:51 so that's just 64 bytes per board 2012-04-30T13:26:25 why does my try of 134 MB not use any physical memory? 2012-04-30T13:26:29 *trie 2012-04-30T13:27:05 I don't get it. It seems modern OSs have *really* good optimizations for zeroed out data blocks 2012-04-30T13:27:20 did you actually zero them out? 2012-04-30T13:27:44 no, but they... are zero. i don't have any members that would default to something different 2012-04-30T13:27:56 malloc uses no memory on linux until you actually start using it 2012-04-30T13:28:15 well, at the moment it is a global variable 2012-04-30T13:28:28 so the compiler puts it into .bss 2012-04-30T13:28:49 then linux loads the file and maps that stuff to the magic zero-page, obviously 2012-04-30T13:29:04 it must be that way 2012-04-30T13:29:25 that's pretty cool. it means i can waste memory like a maniac *g* 2012-04-30T13:29:31 iirc the nickname for the bss section is "better save space" 2012-04-30T13:30:24 mleise: until you actually start using the memory :P 2012-04-30T13:31:01 ah these few string elements ... 2012-04-30T13:33:41 *** dapplegate has joined #aichallenge 2012-04-30T13:38:02 *** kaydorck has joined #aichallenge 2012-04-30T13:39:00 implementing queen movement was easy :) 2012-04-30T13:44:48 I'll just pretend en passant, castling and pawn promotion don't exist for now 2012-04-30T13:44:59 *** kurnevsky has joined #aichallenge 2012-04-30T13:45:36 en passant is going to be an ugly thing to implement :\ 2012-04-30T13:46:39 *** dici has quit IRC (Read error: Connection reset by peer) 2012-04-30T13:47:46 what is that? 2012-04-30T13:49:03 pawns can kill a pawn that passes them with the initial 2 move jump 2012-04-30T13:49:08 https://en.wikipedia.org/wiki/En_passant 2012-04-30T13:49:26 ugly state between turns :( 2012-04-30T13:50:28 oh 2012-04-30T13:50:34 it's just a uint8_t 2012-04-30T13:50:37 well, two 2012-04-30T13:50:51 1 bit for each square in the row in front of the pawns 2012-04-30T13:51:28 it's convenient that the board is 8x8 and 64-bit ints are standard now... 2012-04-30T13:52:41 you see? this is whats wrong with the world 2012-04-30T13:52:47 you are implementing chess 2012-04-30T13:52:54 but you think in terms of uints 2012-04-30T13:54:09 thestinger: so if my pawn hasnt moved yet, and theres an enemy pawn in front of it, it can kill it by moving 2 squares? 2012-04-30T13:54:24 mcstar: no 2012-04-30T13:54:36 if it moves 2 squares, an enemy can kill it as if it had moved 1 2012-04-30T13:54:43 just the next turn 2012-04-30T13:55:03 weird 2012-04-30T13:55:05 mcstar: if I'm going to do millions of moves a second, uints are going to matter :P 2012-04-30T13:55:19 i never heard of this before, but im not a chess player either 2012-04-30T13:55:57 en passant is only possible for one pawn at a time 2012-04-30T13:56:01 in normal chess 2012-04-30T13:56:31 since it has to happen on the turn immediately after 2012-04-30T13:56:44 thestinger: I didn't know of that move 2012-04-30T13:58:43 there are also weird rules around draws 2012-04-30T13:58:55 50 moves without a piece capture is a draw 2012-04-30T13:59:15 there used to be exceptions allowing it to go on longer for certain positions but they were removed 2012-04-30T13:59:18 weird stuff 2012-04-30T13:59:52 these rules are specific for a contest then 2012-04-30T13:59:56 to* 2012-04-30T14:00:36 im browsing fftw's site but they dont seem to mention their ocaml magic code generation 2012-04-30T14:01:18 the unicode chess pieces look awful with monospace fonts 2012-04-30T14:02:23 ♔♕♖♗♘♙♚♛♜♝♞♟ barely visible 2012-04-30T14:02:35 thestinger: grab toledo's code, and you have instantly x11 2012-04-30T14:02:45 mcstar: lol, if I knew how it worked 2012-04-30T14:03:09 ah, yeah, it is barely commented 2012-04-30T14:03:12 XD 2012-04-30T14:04:07 the issue is the whole thing being implemented with bitwise ops 2012-04-30T14:04:28 at least that version has no setjmp 2012-04-30T14:04:53 oh, and it doesn't have a 20 line macro like the other 2012-04-30T14:04:58 it's a lot less obfuscated 2012-04-30T14:05:44 char *l="dbcefcbddabcddcba~WAB+ +BAW~ +-84HLSU?A6J57IKJT576,", 2012-04-30T14:05:47 >.< 2012-04-30T14:09:20 ok i found it 2012-04-30T14:09:37 now time to write a similarly fast discrete wavelet transform 2012-04-30T14:14:34 theses ocaml guys really went overboard with the use of let/and/in 2012-04-30T14:18:36 so, this guy in #archlinux asks where the 'words' dependency of bsd-games is 2012-04-30T14:18:53 I told him it's in community and it should just get installed as a dep 2012-04-30T14:18:57 lol, they have a likely_equal funtion to determine whether 2 expressions are the same, they evaluate then over 20 random inputs 2012-04-30T14:19:12 arcticmonkey | thestinger: ok i downloaded and extracted it. is there a way to transfer the entire folder to the /usr/share/dict location 2012-04-30T14:19:22 thestinger | arcticmonkey: why not use pacman? 2012-04-30T14:19:28 XD 2012-04-30T14:19:30 arcticmonkey | thestinger: Sorry, How would I use pacman? 2012-04-30T14:19:35 :\ 2012-04-30T14:19:47 thestinger: how did he install his system? 2012-04-30T14:20:25 I have no idea 2012-04-30T14:20:39 I'm assuming he must be misunderstanding me because it's unbelievable 2012-04-30T14:20:47 thestinger: if he wants tranfer, tell him about mv 2012-04-30T14:20:53 lol 2012-04-30T14:21:08 mv will blow his mind 2012-04-30T14:22:41 14:21:10 arcticmonkey | thestinger: it says target not found 2012-04-30T14:22:44 >.< 2012-04-30T14:22:52 mcstar: I have a feeling he's never run pacman -Syu 2012-04-30T14:26:06 i see 2012-04-30T14:28:55 thestinger: pacman -Sl community|grep words 2012-04-30T14:29:06 bleh 2012-04-30T14:29:18 he says 'i figured it out' 2012-04-30T14:30:37 *** iglo has joined #aichallenge 2012-04-30T14:31:32 he apparently didnt know about -U either 2012-04-30T14:31:47 or mv... 2012-04-30T14:32:17 it must be annoying, that you tell the possible reasons, but they seem to ignore them 2012-04-30T14:32:51 yup :P 2012-04-30T14:33:19 I mostly only talk in -offtopic and offtopic in #archlinux 2012-04-30T14:36:52 thestinger: http://www.kickstarter.com/projects/306316578/light-table 2012-04-30T14:37:03 heh 2012-04-30T14:37:03 i think they gonna make it 2012-04-30T14:37:50 i wonder if machine learning would be applicable for that ide 2012-04-30T14:37:53 If we hit $300k, Python will be the third language to be supported out of the gate. 2012-04-30T14:37:54 i bet it is 2012-04-30T14:37:57 :0 2012-04-30T14:38:15 The first two languages it will support are Javascript and Clojure, but the application will be written in such a way that adding new languages can happen through plugins. 2012-04-30T14:38:18 javascript :( 2012-04-30T14:38:35 stupid netscape. 2012-04-30T14:38:45 thestinger: you see? even if python wont be supported oob, you can still write a plugin for it for free 2012-04-30T14:39:12 * rwest is writing javascript code right now 2012-04-30T14:39:33 pypy is getting close to python3 support which will be awesome 2012-04-30T14:40:17 thestinger: pypy doesnt need py3k it needs numpy and scipy 2012-04-30T14:40:28 "Congradulations you are an official supporter of Light Table!" 2012-04-30T14:40:30 it's getting that too 2012-04-30T14:40:34 it should support first things, where speed matters 2012-04-30T14:40:37 i hope so 2012-04-30T14:41:04 rwest: how much? 2012-04-30T14:41:10 $15 2012-04-30T14:41:14 nice 2012-04-30T14:41:22 you dont get anything for that 2012-04-30T14:41:29 you get a license 2012-04-30T14:41:37 ah yeah, but its gonna be free 2012-04-30T14:41:53 then what is the point of a license? lol 2012-04-30T14:42:00 mcstar: are you sure? 2012-04-30T14:42:09 they said the core is going to be free 2012-04-30T14:42:23 as far as i can remember 2012-04-30T14:42:27 its in the text 2012-04-30T14:42:35 (its been a while since i read it) 2012-04-30T14:43:01 What's a license then? 2012-04-30T14:43:02 In order to download packaged distributions, you'll need a license. Preliminarily, we're thinking licenses will be based on a "pay what you can/what you believe it is worth" model for individuals. This gives everyone access to the tools to help shape our future, but also helps us stick around to continue making the platform awesome. We think what we build will be worth at least $50, and so that's what we've used for our rewards. 2012-04-30T14:43:52 mcstar: they're also working on implementing STM which will be awesome 2012-04-30T14:44:05 the ability to flip off the GIL 2012-04-30T14:44:24 maybe even get rid of it if they actually manage to make it as fast for single-threaded stuff 2012-04-30T14:44:48 rwest: i dont remember that part, when i first read it, the page was different 2012-04-30T14:44:50 too 2012-04-30T14:45:06 http://morepypy.blogspot.ca/2012/04/numpy-on-pypy-progress-report.html 2012-04-30T14:45:26 thestinger: and ofc, pypy needs ipython support 2012-04-30T14:49:24 mcstar: I think ipython might actually be pure python 2012-04-30T14:49:46 when i last checked it didnt support pypy 2012-04-30T14:49:52 things can change in a couple months 2012-04-30T14:50:30 mcstar: apparently it works from git 2012-04-30T14:50:45 yay for pypy then 2012-04-30T14:51:02 cpython was just developed in a stupid way 2012-04-30T14:51:11 x is too slow in python -> code it in C 2012-04-30T14:51:16 instead of making the language faster 2012-04-30T14:53:50 *** delt0r_ has quit IRC (Ping timeout: 248 seconds) 2012-04-30T14:59:00 why make something faster when you can just use c? 2012-04-30T14:59:31 why make c faster when you can just write asm? 2012-04-30T14:59:51 why make asm faster when you can write microcode 2012-04-30T15:00:22 why make microcode faster when you can take an axe to the computer and start from scratch with a better one? 2012-04-30T15:00:28 lol 2012-04-30T15:02:02 *** kaydorck has quit IRC () 2012-04-30T15:02:59 wrong premise 2012-04-30T15:03:32 python is for managing PITA 2012-04-30T15:03:42 but it is a PITA if it is too slow 2012-04-30T15:04:52 mcstar: I find it easy to translate python -> high level C++ though 2012-04-30T15:04:59 if speed actually matters 2012-04-30T15:05:42 i use python for things i coulnt do in c++ 2012-04-30T15:05:56 or other languages actully 2012-04-30T15:06:20 *** delt0r_ has joined #aichallenge 2012-04-30T15:06:28 you mean the standard library stuff? 2012-04-30T15:06:42 I absolutely hate having to deal with gmp 2012-04-30T15:06:47 ugh. :P 2012-04-30T15:07:10 i mean you can quickly type up things, if you want you can save it too, it replaces a matlab like application for me, while remaining general purpose 2012-04-30T15:07:45 thats my use case, it is a very limited use case 2012-04-30T15:08:21 *** replore has quit IRC (Remote host closed the connection) 2012-04-30T15:08:59 thestinger: did you do ml class before? 2012-04-30T15:09:04 nope 2012-04-30T15:09:07 and now? 2012-04-30T15:09:20 it just started 2012-04-30T15:09:25 but you know what 2012-04-30T15:09:35 hmm 2012-04-30T15:09:50 im takling ml and intro to logic 2012-04-30T15:10:08 taking* 2012-04-30T15:10:36 crypto is taking forever to get to week6 2012-04-30T15:11:09 well, i did ml week1/2 and logic week 1/2 because of lack of crypto 2012-04-30T15:11:49 the udacity courses are boring 2012-04-30T15:12:01 I've just skipped the lectures and done the homework, which is mostly just fun puzzles 2012-04-30T15:12:10 so that is barely using any time :P 2012-04-30T15:12:37 peter norvig's course there is really good but it's meant to be a follow-up to the cs101 so it's too simple 2012-04-30T15:13:27 and the programming languages course is good (regex, parsers, lexers, etc.) 2012-04-30T15:13:43 the web application one is awful :P 2012-04-30T15:14:21 and the crypto one has some nice tidbits of info and puzzles that weren't in crypto-class but not any new theory 2012-04-30T15:14:26 *** dvladim has joined #aichallenge 2012-04-30T15:14:28 thestinger: you see, there is something i dont understand with you at all 2012-04-30T15:14:38 you are in the age of attending to a real uni 2012-04-30T15:14:44 why dont you do that?? 2012-04-30T15:15:14 -to 2012-04-30T15:15:51 i think you are a young AI without a corporeal form 2012-04-30T15:16:00 so thats why you cant go to uni 2012-04-30T15:16:03 lol :P 2012-04-30T15:18:37 *** Accoun has quit IRC () 2012-04-30T15:26:30 *** replore has joined #aichallenge 2012-04-30T15:27:13 *** replore has quit IRC (Remote host closed the connection) 2012-04-30T15:45:49 *** kurnevsky has quit IRC (Ping timeout: 245 seconds) 2012-04-30T15:46:07 I didn't learn much in school 2012-04-30T15:46:26 learned almost everything from my internship that I got because I was in school 2012-04-30T15:47:11 I guess if I had gone to class that would have been different 2012-04-30T15:52:02 *** Accoun has joined #aichallenge 2012-04-30T16:07:46 When they soon find themselves in much deeper waters than 2012-04-30T16:07:48 they bargained for, the reactions vary. The easiest reaction, 2012-04-30T16:07:50 especially for someone with hubris, is to blame the language. 2012-04-30T16:07:52 A few were so psychologically scarred that they became 2012-04-30T16:07:54 pathological anti-Haskell trolls to this day. 2012-04-30T16:12:35 *** kilae has quit IRC (Quit: ChatZilla 0.9.88.2 [Firefox 12.0/20120420145725]) 2012-04-30T16:22:31 *** epicmonkey has quit IRC (Ping timeout: 246 seconds) 2012-04-30T16:27:25 *** dvladim has quit IRC (Read error: Operation timed out) 2012-04-30T16:29:31 http://www.reddit.com/r/haskell/comments/cs54i/how_would_you_write_du_in_haskell/c0uvqqo 2012-04-30T16:39:29 *** meem1029 has quit IRC (Quit: Leaving.) 2012-04-30T16:41:04 *** amstan has quit IRC (Ping timeout: 246 seconds) 2012-04-30T16:45:47 *** Garf has quit IRC (Read error: Connection reset by peer) 2012-04-30T16:58:02 *** NoxiaZ^ has quit IRC (Ping timeout: 246 seconds) 2012-04-30T17:03:51 *** pairofdice has quit IRC (Quit: in girum imus nocte et consumimur igni) 2012-04-30T17:21:18 *** thestinger has quit IRC (Quit: WeeChat 0.3.7) 2012-04-30T17:36:27 *** iglo has quit IRC (Remote host closed the connection) 2012-04-30T17:42:10 *** AlliedEnvy has quit IRC (Read error: Connection reset by peer) 2012-04-30T17:56:25 *** AlliedEnvy has joined #aichallenge 2012-04-30T17:59:59 *** KP13 has joined #aichallenge 2012-04-30T18:02:17 *** amstan has joined #aichallenge 2012-04-30T18:02:17 *** ChanServ sets mode: +o amstan 2012-04-30T18:02:58 *** Kingpin13 has quit IRC (Ping timeout: 260 seconds) 2012-04-30T18:09:39 *** HaraKiri has quit IRC () 2012-04-30T18:10:46 *** Palmik has quit IRC () 2012-04-30T18:23:18 *** mcstar has quit IRC (Quit: mcstar) 2012-04-30T18:31:23 *** alehorst has joined #aichallenge 2012-04-30T18:39:29 *** dapplegate has quit IRC (Quit: Ex-Chat) 2012-04-30T18:42:04 *** smiley1983 has quit IRC (Ping timeout: 244 seconds) 2012-04-30T18:43:09 *** smiley1983 has joined #aichallenge 2012-04-30T18:51:44 *** antimatroid has quit IRC (Ping timeout: 255 seconds) 2012-04-30T18:52:07 *** antimatroid has joined #aichallenge 2012-04-30T18:59:53 *** coeus has quit IRC (Ping timeout: 245 seconds) 2012-04-30T19:07:01 *** alehorst has quit IRC (Ping timeout: 246 seconds) 2012-04-30T19:13:53 *** mceier has quit IRC (Quit: leaving) 2012-04-30T19:14:57 *** alehorst has joined #aichallenge 2012-04-30T19:17:55 *** smiley1983 has quit IRC (Ping timeout: 252 seconds) 2012-04-30T19:19:54 *** smiley1983 has joined #aichallenge 2012-04-30T19:29:02 amstan you here? 2012-04-30T19:29:28 j3camero: we also had an attorney offering his help, so that might help 2012-04-30T19:29:58 Oh sick. Was he from Canddda or somewhere else? 2012-04-30T19:30:04 nah, us 2012-04-30T19:30:09 Cool cool 2012-04-30T19:30:14 j3camero: janzert is busy for the summer unfortunatelly 2012-04-30T19:30:19 contestbot: seen mcleopold 2012-04-30T19:30:19 amstan: mcleopold was last seen in #aichallenge 10 weeks, 6 days, 23 hours, 46 minutes, and 21 seconds ago: np 2012-04-30T19:30:35 j3camero: zannick and a few others feel like joining zeta though 2012-04-30T19:30:36 I will be living in the US soon so we also have the option of setting up there instead of Canada 2012-04-30T19:31:06 Or in addition to Canada 2012-04-30T19:31:53 Yeah I feel like building zeta now that I have more free time 2012-04-30T19:32:01 feel free 2012-04-30T19:32:16 I will have to update myself on what has already been built. I have been out of the loop for a while. 2012-04-30T19:32:32 see the zeta branch, i have a bunch of code from last year, i think i spent like an hour on it 2012-04-30T19:32:42 jbroman did some core stuff for the worker 2012-04-30T19:33:05 not sure how it compares to janzert's new worker that he made for epsilon2 2012-04-30T19:33:33 epsilon2 is so far out 2012-04-30T19:33:41 Zannick: hmm? 2012-04-30T19:33:54 Yeah I remember jbroman's work on that 2012-04-30T19:34:03 jbroman and i stopped working on zeta many months before ants launched 2012-04-30T19:34:20 Im sure there is stuff in zeta that can be used though 2012-04-30T19:34:22 well.. i'm calling it that because we evolved epsilon so far that it pretty much became its own thing 2012-04-30T19:35:11 i'm sure zeta is salvageable but i wouldn't attempt to merge epsilon in or anything 2012-04-30T19:35:45 Youre right. Iunderstood that zeta was meant as a rewrite anyways 2012-04-30T19:36:53 By the way Zannick, I left my old job in finance so I am no longer working insane hours. Much more time to build things now, as of last week. 2012-04-30T19:38:54 j3camero: cool. 2012-04-30T19:39:40 Wouldn't mind sitting down this week to build a fairly general distrobuted game-execution system. 2012-04-30T19:40:11 (Sorry for my horrible typing, I am on a very high latency connection on an inter-city train) 2012-04-30T19:40:25 we do need a good system for that, yeah 2012-04-30T19:40:37 I will have to see if jbroman already built on, and build on his. 2012-04-30T19:40:55 j3camero: we can use that highest number game for testing 2012-04-30T19:41:27 j3camero: oh.. in terms of trueskill mcleopold was working on that 2012-04-30T19:41:30 least unique positive integer? 2012-04-30T19:42:10 Yeah there were a lot of advanaceements in the scheduling and ranking areas, especially around handling multiplayer games. 2012-04-30T19:42:20 https://github.com/McLeopold/PythonSkills 2012-04-30T19:42:47 i have push access to that, but you might as well fork to aichallenge if you plan to add to it 2012-04-30T19:42:56 Yup sounds good 2012-04-30T19:43:11 the last python library for trueskill that we were first thinking to use didn't work, had a bunc of calculation bugs 2012-04-30T19:43:16 didn't match with the standard 2012-04-30T19:43:24 so we had to use a js one i think 2012-04-30T19:43:30 with a python wrapper around it 2012-04-30T19:43:44 impressive 2012-04-30T19:43:47 Node.js or something? 2012-04-30T19:43:59 Or V8? 2012-04-30T19:44:02 idk, but it was a hack 2012-04-30T19:44:12 Yeah for sure 2012-04-30T19:44:12 i think it's a git submodule in epsilon 2012-04-30T19:44:32 Sweet 2012-04-30T19:44:41 https://github.com/moserware/PHPSkills 2012-04-30T19:44:42 that 2012-04-30T19:44:46 not javascript, sorry 2012-04-30T19:44:52 Nice 2012-04-30T19:46:00 Did that go okay? People generally perceived the rankings and scheduling to be fair? Or not so much? 2012-04-30T19:46:14 it was fine, cpu time was the issue most of the time 2012-04-30T19:46:18 for the workers 2012-04-30T19:46:34 For playing the game themselves or for scheduling the games? 2012-04-30T19:46:41 games 2012-04-30T19:46:57 Yeah makes sense. This will probably always be the case 2012-04-30T19:47:11 we didn't have enough games for a while, so the rankings were a little wonky 2012-04-30T19:47:15 *** choas has quit IRC (Read error: Operation timed out) 2012-04-30T19:47:21 and people with more games would be ranked higher 2012-04-30T19:47:24 Unless we make people write their bots in JS and have them run in the people's browsers or something. 2012-04-30T19:47:27 so it was a better idea to not resubmit 2012-04-30T19:48:04 the main goal we would like is to have the ability to increase game count simply by increasing the number of workers 2012-04-30T19:48:37 Was that the case during ants? 2012-04-30T19:48:45 If we light up more servers during ants, were more games not getting played? 2012-04-30T19:48:47 idk, it was mostly ok 2012-04-30T19:49:24 i mean, as opposed to "increase number of workers, restart the manager, flip this flag, etc" 2012-04-30T19:49:27 at one point the main server started dying, it couldn't generate teams anymore 2012-04-30T19:49:38 so the workers were running out of games to play 2012-04-30T19:50:04 Zannick: gotcha. 2012-04-30T19:50:06 and that could be mitigated by paxos 2012-04-30T19:50:46 paxos? 2012-04-30T19:50:57 paxos is a consensus algorithm 2012-04-30T19:51:16 useful for having one master among a set of servers 2012-04-30T19:51:33 Sounds hardcore distributed 2012-04-30T19:51:38 it is 2012-04-30T19:51:53 but the idea is, that when the manager goes down, a worker takes its place 2012-04-30T19:51:58 and the games continue 2012-04-30T19:52:30 Sounds decent. I can see how that would work. 2012-04-30T19:56:25 paxos might be overkill 2012-04-30T19:56:32 but the idea is the same 2012-04-30T19:57:08 Single points of failure are terrible, haha 2012-04-30T19:58:08 I have this idea to treat game engines that same way bots are treated now. 2012-04-30T19:58:30 i know you do 2012-04-30T19:58:54 We would have a referee program that lights up the "engine" and communicates with it over stdout and stdin, as well as all the bots. 2012-04-30T19:58:55 and that is an interesting yet frightening idea 2012-04-30T19:58:59 hehe 2012-04-30T19:59:21 Well even if we dont let people submit them randomly, it could still be useful int erms of making it easier for us to create new contests quickly. 2012-04-30T19:59:22 but if we generalize the worker/manager enough, probably okay 2012-04-30T19:59:33 That way all the scheduling and ranking stuff gets decoupled from the game itself. 2012-04-30T19:59:41 yeah, don't let them be free for all 2012-04-30T19:59:48 Yup 2012-04-30T19:59:59 If we could do this, then creating new contests would be fairly trivial. 2012-04-30T20:00:24 Just gotta create the new game engine, create new content for the site, and you're done 2012-04-30T20:01:00 Oh and a visualizer for the site. I think that has to be game-specific. I cant even imagine how we would create a generalized visualizer. 2012-04-30T20:01:28 we still want the games to be an admin controlled thing, since otherwise we risk diluting the contests too much 2012-04-30T20:01:39 Yep I hear that 2012-04-30T20:02:00 as well as needing to sandbox the engine which is all sorts of problems 2012-04-30T20:02:05 The risk you get with too much generalization is that you never finish the completely general solution. 2012-04-30T20:02:07 Potentially we could get around this problem by "featuring" only one contest at a time, even if others are running in the background with small niche groups of users. 2012-04-30T20:02:25 jbroman: absolutely. 2012-04-30T20:02:33 Given that we haven't even had *a* contest in some time, I think trying to run O(n) contests would be far too ambitious. 2012-04-30T20:02:43 (I'm using "we" loosely" here.) 2012-04-30T20:02:44 Agreed 2012-04-30T20:02:53 right, but in creating the workers keep the engine code separate from the worker code 2012-04-30T20:03:03 I'm not saying no separation is necessary. 2012-04-30T20:03:08 separate enough that it will be easy later to decouple it 2012-04-30T20:03:11 Even if this gets built, we would only use it to run one contest at a time at the beginning. The end users wouldnt see these new features at first. 2012-04-30T20:03:22 that is how i am picturing it 2012-04-30T20:03:32 I'm just cognizant that my personal projects, at least, tend to devolve into the first 40% of a completely general solution rather than 100% of a smaller solution. 2012-04-30T20:04:21 jbroman: youre right. I also often have this problem. There is a lot to be said for just getting er done 2012-04-30T20:05:59 Anyhow, my project on zeta was somewhat stalled, but mostly because it suffers from the things-only-I-am-working-on syndrome (that is, without any other motivation I progressively make it unnecessarily complicated, then despair that it will never be done, then gradually stop working on it). 2012-04-30T20:06:19 haha 2012-04-30T20:06:24 haha 2012-04-30T20:07:08 i have been working hard on some projects only i am working on 2012-04-30T20:07:33 like what? 2012-04-30T20:07:35 they are sometimes very large in scope so i need to make lots of progress 2012-04-30T20:08:04 i am working on an antlr-based magic the gathering parser 2012-04-30T20:08:21 with the intent to build an engine later 2012-04-30T20:08:34 Oh sick. 2012-04-30T20:08:41 yes 2012-04-30T20:08:44 You mean in the context of an AI contest? 2012-04-30T20:08:45 it is very sick. 2012-04-30T20:08:58 no, not quite 2012-04-30T20:09:09 Or as a standalone game? 2012-04-30T20:09:21 i'm considering writing an ai for it 2012-04-30T20:09:37 but an ai contest for mtg is not a great idea for general mtg 2012-04-30T20:09:52 (i've thought about this) 2012-04-30T20:10:23 perhaps there is some way to strip away some of the details to leave only some core strategic nugget o the game 2012-04-30T20:10:49 I suspect the interesting parts of MTG are in the variation of the rules. 2012-04-30T20:10:55 kind of like how starcraft got boiled down to ants 2012-04-30T20:11:17 there's also ants with destructable terrain 2012-04-30T20:11:18 the interaction between cards is the interesting bit 2012-04-30T20:11:20 I am not overly familiar with MTG so I cannot yet speculate on this 2012-04-30T20:11:53 but mtg has many many many places where different types of choices must be made 2012-04-30T20:11:54 But it seems like there are shitloads of people out there who already know the rules so MTG definitely has that going for it 2012-04-30T20:12:19 amstan: Not actually having participated in the ants contest (so take appropriate grains of salt), it feels like ants was already near the max reasonable complexity level. 2012-04-30T20:12:32 Barrier to entry, etc. 2012-04-30T20:12:39 true that. I was worried about it. But participation grew anyways 2012-04-30T20:12:42 what card do you play now? what ability do you activate? which creatures attack? which creatures block and how? etc. 2012-04-30T20:12:51 and those are only the common ones 2012-04-30T20:13:10 Other side of the equation is that some games can be resolved in fewer CPU cycles (and thus fewer dollars). 2012-04-30T20:13:26 i am going to have an absolute blast writing a magic ai with any sort of genetic or learning element 2012-04-30T20:13:38 Zannick: Training against each other? 2012-04-30T20:13:41 Or against a human? 2012-04-30T20:13:44 Zannick: do you think its possible to strip down the rules to the point where only one of the several game-theoretic nuggets of the game remains? 2012-04-30T20:13:49 both, potentially 2012-04-30T20:14:04 j3camero: yes. i do not know how to do this but i could think for a long time. 2012-04-30T20:14:21 i am afraid it won't be quite as interesting 2012-04-30T20:14:46 No doubt 2012-04-30T20:15:15 jbroman: its true what you say about some games being cheaper than others CPU-wise. That's a big factor. We have finite money, so more games per dollar is a good thing. 2012-04-30T20:20:30 I should get my zeta work into a workable state and then at least push that to my GH so that people can have a look and consider all possible starting points for moving forward. 2012-04-30T20:20:42 Indeed 2012-04-30T20:20:54 I am considering putting some time into it this week 2012-04-30T20:21:10 My time will be highly variable as I'm starting work again this week. 2012-04-30T20:21:22 Should be able to do something on the weekend at the latest, though. 2012-04-30T20:21:25 * jbroman crosses his fingers. 2012-04-30T20:22:04 I was thinking about playing Risk on the Wikipedia graph. Each article is a territory, and two articles are connected if there is a link between them. 2012-04-30T20:22:18 As one huge game? 2012-04-30T20:22:26 Also, the full wiki graph is pretty damned big. 2012-04-30T20:22:35 This would be hilarious because people would start to edit articles to work in links that will benefit them. 2012-04-30T20:22:55 MAybe on some subset of the link graph 2012-04-30T20:23:02 Like articles that matter more than X 2012-04-30T20:23:22 j3camero: So, a few additional thoughts. (a) maintaining live synchronization with Wikipedia proper is probably more trouble than it's worth, and (b) Wiki editors might not like incentives for vandalism. :P 2012-04-30T20:23:29 Where the importance of an article is computed using pagerank or somesuch 2012-04-30T20:23:38 lol 2012-04-30T20:23:42 (Not to dump on your idea. Just thinking aloud.) 2012-04-30T20:23:49 jbroman: oh yes, this would definitelyt cuse conflict with wikipedia. 2012-04-30T20:23:52 vandalizing wikipedia to increase one's ranking 2012-04-30T20:24:05 or we could take a snapshot when the contest starts 2012-04-30T20:24:14 and use that for the rest of the contest 2012-04-30T20:24:21 Basically trying to think of games that are persistent or involve interacting with something out in the "real world" 2012-04-30T20:24:30 won't people get lost in the articles though? there's a lot of the 2012-04-30T20:24:32 them* 2012-04-30T20:24:54 Yeah probably. It's a terrible idea 2012-04-30T20:24:54 I suspect English wiki is too big to be reasonable. 2012-04-30T20:25:17 AI Contest 2012: Taking Back Catalan Wiki 2012-04-30T20:25:35 Actually, just picking one word out of that: 2012-04-30T20:25:41 How complicated is Settlers of Catan? 2012-04-30T20:25:45 (And is it a solved problem?) 2012-04-30T20:25:55 I have played once. People love it 2012-04-30T20:26:02 I know it's a fun game. 2012-04-30T20:26:07 I'm just wondering whether it's too easy/too hard. 2012-04-30T20:26:16 Otherwise I think it's a great candidate. 2012-04-30T20:26:21 (Oh, and copyright concerns I suppose.) 2012-04-30T20:26:28 It works on a hexaagonal grid right? We could probably simplify that by putting it on a square lattice instead 2012-04-30T20:26:43 Are hexagons that complicated, though? 2012-04-30T20:26:57 (I mean, you're always viewing it as a graph anyhow.) 2012-04-30T20:27:00 Hard to represent I think 2012-04-30T20:27:23 People like to think of things in terms of (x,y) rather than general graphs I would guess 2012-04-30T20:27:45 But yeah that's a side issue. It's a great game because so many people love it 2012-04-30T20:28:00 Main concern is whether there's a shortcut solution. 2012-04-30T20:28:12 Yeah or if it's degenerate 2012-04-30T20:28:36 Like, if computers are able to build impregnable defences or something 2012-04-30T20:29:33 hm, so ccgs are weird for our usage, since they are inherently unequal 2012-04-30T20:30:02 there's the deckbuilding aspect, then the orders of decks are randomized 2012-04-30T20:30:07 I will also throw in the idea of a MMO RTS. A persistent world where the bots can move their units about and attack each other, take resources, whatever. Whenever someone conquers the whole map the world resets and everyone gets a fresh start. 2012-04-30T20:30:15 hard to provide symmetry 2012-04-30T20:30:25 Also not conducive to evaluating progress. 2012-04-30T20:30:43 Hard to tell if your bot's performance is a result of it sucking or its predecessor getting into a bad spot. 2012-04-30T20:30:54 Games could last a few hours or a few minutes or a few days. Hard to say 2012-04-30T20:31:01 but the main element is resource management, both during deckbuilding and play 2012-04-30T20:32:00 Zannick jbroman: is there a way to take some of the randomness out of it? Or reduce the randomness? 2012-04-30T20:32:10 j3camero: Randomness of which? 2012-04-30T20:32:50 i'm talking about ccgs. 2012-04-30T20:32:51 jbroman: Magic the Gathering, right? 2012-04-30T20:32:58 Oh, CCGs? 2012-04-30T20:33:07 j3camero: MTG is a CCG 2012-04-30T20:33:11 Oh okay. 2012-04-30T20:33:12 (Collectible Card Game) 2012-04-30T20:33:35 Yeah thats what I mean. Can we take some of the randomness out of it? Make the games more fair? 2012-04-30T20:33:40 *** jcdjcd has joined #aichallenge 2012-04-30T20:33:40 You can reduce that by making deck assignment fair (e.g. opponents have the same deck, or bots can choose their own deck fairly). 2012-04-30T20:33:42 we could have the bots build decks from a fixed set *and* play each other 2012-04-30T20:33:51 but that is quite complex 2012-04-30T20:34:09 Or how about letting the players manually choose their decks on the website? 2012-04-30T20:34:23 Then their bots get that deck 2012-04-30T20:35:06 that could also be specified in game as part of the setup turn 2012-04-30T20:35:20 My bigger concern is that CCGs are in general too complicated for small bots to understand. 2012-04-30T20:35:24 As each card introduces rules. 2012-04-30T20:35:29 yes 2012-04-30T20:35:38 Oh yeah thats quite insane 2012-04-30T20:35:52 we could do an ordinary type of card game 2012-04-30T20:35:59 We cant do starcraft for this reason, but we can do ants. Its possible we could strip down MTG in this way 2012-04-30T20:36:25 I have heard poker suggested a lot. 2012-04-30T20:36:38 My suspicion is that poker has been heavily analyzed. 2012-04-30T20:36:45 *** jcdny has quit IRC (Ping timeout: 244 seconds) 2012-04-30T20:36:49 (i.e. it is likely possible to write an "optimal" bot given reasonable constraints) 2012-04-30T20:36:53 i think in general we can't strip mtg down enough without making it solvable. 2012-04-30T20:41:03 HEres an idea for a really simple poker game. I dont know if its degenerate or not. Each bot is dealt five cards that only they can see. The turn passes from bot to bot one after the other. The bot has the choice to either raise by one or fold. The hand ends when all but two bots fold. The winning hand keeps the whole pot. 2012-04-30T20:41:59 ITs simple and has really great "starter package" strategies. For example, if you have a pair bid up to 50 otherwise fold. Its not perfect but it would beat a random bot. 2012-04-30T20:42:43 degenerate 2012-04-30T20:42:43 Is it? 2012-04-30T20:42:43 Can a bot get ahead by lying every now and then? 2012-04-30T20:42:43 needs a max ;) 2012-04-30T20:43:35 needs a max bet, calls, and handling for equal hands 2012-04-30T20:45:17 a sort of liar's game would be interesting 2012-04-30T20:45:22 ever played liar's dice? 2012-04-30T20:45:42 Nope, should read about it 2012-04-30T20:45:50 similar to your suggestion 2012-04-30T20:45:51 Will wikipedia that shit 2012-04-30T20:46:00 but players are bidding on the collective total of the dice 2012-04-30T20:46:28 and each player has the option to raise the bid or call the previous bid as false 2012-04-30T20:46:53 each round one player loses a die, until one player still has dice 2012-04-30T20:47:53 actually it is simple enough and complicated enough to be interesting 2012-04-30T20:48:01 we won't exactly have maps for it, though 2012-04-30T20:48:20 though i suppose we could vary the types of dice given to each player 2012-04-30T20:48:40 liars' dice is usually 5d6 per player. 2012-04-30T20:49:17 it really ends up being mostly expectation, but there is some bluffing element to it 2012-04-30T20:50:17 Yeah definitely 2012-04-30T20:50:25 Especially if each player can only increase the bid by one 2012-04-30T20:50:50 Then some players might have no choice but to implicitly announce that their hand (or dice or whatever) are worth a certain amount 2012-04-30T20:50:58 Or they could be lying 2012-04-30T20:51:18 Then aa second palyer can raise the bid even if his hand is worthless just to make it more expensive for the first player 2012-04-30T20:51:33 But the first player may have deceived him 2012-04-30T20:51:37 etc etc 2012-04-30T20:53:11 The most successful bots would have to do some opponent modeling to figure out who is honest and who is not 2012-04-30T20:53:11 Or to find bots that are honest and exploit them like crazy 2012-04-30T20:53:11 g2g2 arriving at train station 2012-04-30T20:53:11 Will be around tomorrow likely 2012-04-30T20:53:11 good ideas all around 2012-04-30T20:53:24 o/ 2012-04-30T20:54:37 i think restricting raises by one narrows it too much 2012-04-30T20:55:45 i'll think about this some more 2012-04-30T21:15:21 *** Fandekasp has joined #aichallenge 2012-04-30T21:29:14 *** dmj111` has joined #aichallenge 2012-04-30T21:44:23 *** chris_0076 has quit IRC (Quit: Leaving) 2012-04-30T21:46:42 *** Fandekasp has quit IRC (Read error: Connection reset by peer) 2012-04-30T21:51:01 *** Fandekasp has joined #aichallenge 2012-04-30T22:24:37 *** Apophis_ has joined #aichallenge 2012-04-30T22:27:13 *** archdori has joined #aichallenge 2012-04-30T22:27:14 *** Apophis has quit IRC (Read error: Connection reset by peer) 2012-04-30T22:31:01 *** Fandekasp has quit IRC (Ping timeout: 260 seconds) 2012-04-30T22:42:28 *** jcdjcd has left #aichallenge ("Leaving") 2012-04-30T22:54:22 *** delt0r_ has quit IRC (Ping timeout: 248 seconds) 2012-04-30T23:05:43 *** foRei has quit IRC (Quit: Bye) 2012-04-30T23:06:46 *** delt0r_ has joined #aichallenge