Chat:World/2021-01-07
Salted: hi
TheBarnacle: Is there any way to see other people's solutions after completing a challenge? I can't help but feel like I'm over-complicating some things. :/
struct: for puzzles you can see shared solutions
TheBarnacle: Ahh I was being an idiot, I was looking on the solve page. Thank you I see it now :)
cegprakash: I timeout on last testacase for the resistance problem :P
eulerscheZahl: a cegprakash :o haven't seen you in ages
cegprakash: :D
cegprakash: a wild cegprakash appears
cegprakash: with find function I got 8 testcases passed
cegprakash: with substr I got 9 testcases passed
cegprakash: 10th test case seems hard
eulerscheZahl: do you use any kind of dynamic programming approach?
cegprakash: yes
cegprakash: https://ideone.com/esCMbD
eulerscheZahl: a char-wise comparison is probably more efficient than your substring approach
cegprakash: but gotta go by word by word anyway
cegprakash: and jump to word length anyway
eulerscheZahl: or build your whole valid encodings as a tree so you don't have to test each of the separately
cegprakash: I think the problem is with substr
eulerscheZahl: with the char-by-char you could avoid substring
eulerscheZahl: early exit...
cegprakash: I see
cegprakash: let me add an inner loop
eulerscheZahl: if it isn't fast enough: https://www.codingame.com/training/medium/telephone-numbers save your letters in a tree
cegprakash: yeah I was thinking a trie as well
cegprakash: inner loop still timing out
jacek: ohai
MX26: Hey, i skipped silver league of "coders strike back" by accident, so, i never quite saw the explenation as for what shield does, can anyone help me out?
Westicles: Ah, they fixed it
Westicles: Oups An error occurred (#734): "You can't vote for yourself".
zhoubou: MX26 Nisam došao do srebrne lige, ali koliko sam pročitao u forumima, kada aktiviraš shield, tvoj "pod" dobije 10 puta veću masu, što utječe na odbijanje kod sudara (10x jače).
eulerscheZahl: sounds like you finally got an error code for you honors
Westicles: :)
Westicles: They also wiped out all my upvotes across the board
eulerscheZahl: how it should be
Westicles: fair enough
eulerscheZahl: a random insult?
eulerscheZahl: take that! i'm off for lunch
Metanoob: is that an improvised clash of code?
DomiKo: euler omggggg
DomiKo: that's so funny
jacek: it wasnt insult :/
Westicles: The wall of shame
Westicles: https://chadok.info/codingame/leaderboard_xp.html
PatrickMcGinnisII: kinda sus
Stilgart: one may prefer https://chadok.info/codingame/leaderboard_xp_20210107.html
Flekysek: Is there somebodz who could possible help me with Horse-racing Duals
Flekysek: It should be really easy but I have a feeling like there is something wrong with input data
Flekysek: https://www.codingame.com/ide/puzzle/horse-racing-duals
proogrmr: yeah
Megha.Akash: It is right Flekysek. I just checked it out. It is good. You need not necessarily find the difference between either the maximum 2 number or difference between minimum two numbers. You just have to find two numbers whose absolute difference is minimum.
Flekysek: yes I know I just misunderstood assignment. Proogrmr already helped me and explained me what was the problem.
Flekysek: thanks :) and sorry
Megha.Akash: Oh it's ok :)
Kitkat260: gym everyone
Kitkat260: gm
Metanoob: keep it up Flekysek :thumbsup:
cubefreak777: Is there away to report a user on this platform ?
pindsz: Open profile, and click on the three dots just above the follow button.
jacek: :)
Metanoob: tylko jedno w głowie czy macie? :cowboy:
jacek: :o
Metanoob: :grimacing:
indiehjaerta: berp = "f0; eakpartOne;
Fricas: Hello, lets destroy communism and leftism together!
jiligualabajibaji: Why?
Metanoob: ^
Fricas: it is a disease, cancer of the world
jiligualabajibaji: And why they are diseases?
Astrobytes: Enough Fricas, or you risk a kick, then a ban if you continue.
loncek: I reported him. No idea if it does anything tho.
jiligualabajibaji: Ha haa.
[CG]Thibaud: it sends me an email. If moderators are here, no need
jiligualabajibaji: Good
jiligualabajibaji: good
Astrobytes: And if you need a moderator, you can see the list by clicking on the 'person' icon below the chat, then just type some of their names
Astrobytes: Or shine the moderator signal light into the sky :P
eulerscheZahl: :bat:
eulerscheZahl: i can't recognize anything there :(
jiligualabajibaji: ?
eulerscheZahl: better with the light theme. but the overall impression of that is :scream:
Astrobytes: that's the weirdest looking bat I have ever seen
eulerscheZahl: hanging upside down
Astrobytes: It still looks extremely odd.
jiligualabajibaji: Astrobytes 10:47PM Or shine the moderator signal light into the sky :P
jiligualabajibaji: can i say you are cute
jiligualabajibaji: ?
Astrobytes: Well, you just did.
eulerscheZahl: https://www.youtube.com/watch?v=g1dxNsjYeIs&ab_channel=R%C3%A9miGAILLARD this bat is much cooler than the emoji
jiligualabajibaji: :stuck_out_tongue:
Astrobytes: lol, Remi never disappoints
eulerscheZahl: except in terms of upload frequency
Astrobytes: True.
Metanoob: haha good one eulerscheZahl
jiligualabajibaji: Why can't my animation go?Is it because the code is too long?
jiligualabajibaji: Have you ever been in this situation
eulerscheZahl: animation can't go? I don't understand
eulerscheZahl: the code size limit is 100k chars
jiligualabajibaji: oh i'm sp=orry
jiligualabajibaji: oh i'm sorry
jiligualabajibaji: my english is so bad
Lukas_Puyet: could someone help me please in ruby
Lukas_Puyet: just a question about a method
Metanoob: could it be that there is an error in your code, or that it times out?
If your code doesn't read/write from the standard input in the correct order, or reads/write too much to stdin it can also trigger this... does this make sense?
jiligualabajibaji: extremely grateful
jiligualabajibaji: but i don't know where i make error
jiligualabajibaji: :joy:
proogrmr: :D
Metanoob: does the console output show you some red text about anything going wrong?
jiligualabajibaji: no
proogrmr: what is the time limit is for every test cases in clash of code.
Metanoob: wouldn't that be cool to have a bot that hangs out here that just replies automatically by checking FAQ known/similiar to known questions?
Metanoob: automatonNN ready?
AutomatonNN: :)
proogrmr: yeh :)
jiligualabajibaji: Very nice to see you.I can learn much(including English).:grin:
Metanoob: jiligualabajibaji I wish I could help more... What language are you coding in? maybe you could share with me in a private message a link to a pastebin or similar place to review code?
Metanoob: Not sure if that's ok with CG policy, is that ok @here?
eulerscheZahl: sounds like he's still in wood, nothing advanced in that bot. then it's ok to just paste the full code here in the chat
jiligualabajibaji: @Metanoob let me try
Metanoob: ah awesome then, thanks
Metanoob: you can also share link here if you want jiligualabajibaji
eulerscheZahl: just paste the code directly, it will turn into a pastebin
Metanoob: aaah, damn - sorry for my ignorance, good to know
jacek: oO
Metanoob: Apparently everything is okay now have fun coding jiligualabajibaji :)
proogrmr: why there is lot of string problems(ascii is that called like that) in clash of code
eulerscheZahl: because many creators thought it would be a fun and original idea
proogrmr: :\
JBM: or at least an easy one to claim creator XP for
proogrmr: :|
JBM: just give it a bad rating and it'll dropp off eventually
Uljahn: or play multi instead
eulerscheZahl: the single clash that can keep you busy for days or even weeks
Metanoob: gotta agree, even tho I like CoC in general
Metanoob: i have another community uneducated question, is it okay to ask for technical knowledge advice non related to puzzles? My guess is: not in "World" but maybe somewhere else?
Metanoob: forums/categories > General
eulerscheZahl: it's ok to ask here
Metanoob: ah cool
eulerscheZahl: might get ignored if the chat is busy and not the right users are reading it at that time. you can still place it in the forum or ask again
Astrobytes: Or ask on the discord
eulerscheZahl: so many channels
Astrobytes: Deciding whether your query lies within 'general' or 'anything'...
**eulerscheZahl muted the anything channel
Metanoob: yep makes sense, let's try here - anyone familiar with iptables transparent proxy capabilities?
Metanoob: haha
eulerscheZahl: oh, that's a very specific topic
eulerscheZahl: i miss ifconfig and can't even remember the iptables command to get the IP of my router
eulerscheZahl: so i abuse tracepath :P
JBM: there's an iptables command for that?!
Metanoob: haha nice
Metanoob: yeah i didnt know that either JBM
Metanoob: i usually use ip addr
eulerscheZahl: oh, that's handy
Metanoob: yeah proved itself useful more than once
Metanoob: basically i'm trying to avoid having to use NAT (because it has to temper with the packets back and forth) to redirect a packet to its original destination (SO_ORIGINAL_DEST)
eulerscheZahl: your problem might be too specific to find help in the CG community even
Metanoob: yeah i guess it's not so much about algorithm and more about low level network and tools
yes maybe, thanks for reading and for general info about CG :)
proogrmr: i stuck on coders stike back when i have to use BOOST i tried different versions
- Find distance between me and and opponent
proogrmr: and so on..
Ragi: is there a way to find a "clash of code" puzzle somewhere after it finishes
eulerscheZahl: http://eulerschezahl.herokuapp.com/codingame/puzzles/ happy searching
Ragi: all of them are there ?
eulerscheZahl: i added a daily update recently ;)
eulerscheZahl: more precisely: it updates when I start my computer
eulerscheZahl: I think I should index my database, searches are slow :(
Ragi: I found what I wanted so thanks a lot :-)
k4ng0u: eulerscheZahl, you might want to change the background color of the search input. It's barely visible due to the contrast with the background of the page :p
eulerscheZahl: another user game me some CSS, I was too lazy to do anything :D
eulerscheZahl: i'll put it on my list along with indexing
eulerscheZahl: also: fix your monitor settings :P
eulerscheZahl: this started as a project to analyze CG replays actually. the puzzle search was just a side project to help me moderate pending contributions and link to possible duplicates faster
eulerscheZahl: but somehow the puzzle search is the more popular part now
Roboticol: hows everyone doin?
zhoubou: Pretty good. Finally making progress after a ton of failure.
derp22: After sending game parameters to IDE, how do I go back to randomized tests against the bot?
BlaiseEbuth: eulerscheZahl : if you want to see one of the AutomatonNN's fake links, check fr. ^^
AutomatonNN: e 70 i won :D
jacek: youre putting eulerscheZahl and AutomatonNN in the same sentence? he may learn weird behaviour
AutomatonNN: Automaton2000 what do you think of codingame?
jacek: Automaton2000 hmm?
Automaton2000: should i keep track of the last contest
BlaiseEbuth: nvm it's a real link Oo We are lost
Astrobytes: I didn't know he did real links! I thought he only did invalid pastebins :D
Astrobytes: Why am I calling it 'he' :(
jacek: ai Anthropomorphism
Astrobytes: Hm. It would seem so.
eulerscheZahl: a valid CSB link, i don't see the problem
jacek: uncanny valley and cats movie (2019) is interesting topic
BlaiseEbuth: you don't see the problem when there is a mkNN on the chat ?
Astrobytes: yes jacek, it's a prime example!
Astrobytes: BlaiseEbuth: If it starts asking how my CSB is or fixit or whatever - then I get worried.
BlaiseEbuth: :grin:
eulerscheZahl: added indexing to database, still slow :/
Astrobytes: cg issue or heroku?
eulerscheZahl: heroku or just my dumbness, not sure yet
eulerscheZahl: but i finally found motivation to add some not totally horrible CSS
Astrobytes: the CSS that guy gave you ages ago?
Astrobytes: Ah, no. Cleaner though.
eulerscheZahl: yes, I replaced that now
eulerscheZahl: still based on it but different colors
eulerscheZahl: and less different fonts
Astrobytes: It's much more readable.
eulerscheZahl: https://www.codingame.com/forum/t/i-digged-out-an-old-encryption-algorithm-can-you-break-it/188668
This gives an array 63 bits, mostly filled with zeros. When the shuffle this array based on a key (there are 63! possible shufflings)
eulerscheZahl: spot the error
BlaiseEbuth: :thinking:
eulerscheZahl: oh, i didn't read to the end. he wants to shuffle numbers associated with the bits, not the bits themselves
eulerscheZahl: i'm still not convinced, would have to give it more time to understand the idea
eulerscheZahl: offline with my test DB the search is almost instant :(
jacek: overfitting eh
eulerscheZahl: :D
eulerscheZahl: that makes no sense at all
jacek: msmits keeps updating his meta mcts in comment, noice
MSmits: yeah :)
MSmits: http://chat.codingame.com/pastebin/13fe4ee9-f449-440f-a6b1-213518703f07
eulerscheZahl: https://www.youtube.com/watch?v=BxV14h0kFs0&ab_channel=TomScott do something like this already
MSmits: lol
struct: MSmits how much time has your meta been running for?
MSmits: hmm, not sure, maybe 70 hours or so?
MSmits: between 70 and 100
MSmits: it speeds up a bit as the tree goes deeper
MSmits: shorter games (till solve)
MSmits: games probably end at between ply 30 and 40
jacek: so ill be back in 1 year and see if its solved
MSmits: some games now start at ply 12 or so
MSmits: i have no idea if this could lead to a solve realistically
MSmits: kinda happy move 0 is at 52% though. Even if this game is not solved as a draw, there is at least a move that is pretty much balanced
MSmits: because even if one side is favorited, it needs A LOT of calculation time to find the advantage
MSmits: otherwise i would have already
reCurse: What game is that?
struct: connect 4
struct: on 7x9?
MSmits: yes
MSmits: it's not solved
MSmits: but almost
MSmits: (in science I mean)
MSmits: 8x8 is solved and everything smaller
MSmits: 9x7 would seem smaller, less cells, but because its width is 9, you have more branching throughout the game
MSmits: same braching as uttt, mostly
MSmits: except games can end early, which makes it an easier to solve game
MSmits: oh and it has way more transpositions than uttt of course
MSmits: uttt barely has any
reCurse: It has a lot of transpositions actually?
reCurse: More than connect4 I would assume
MSmits: hmm well, not in the first 20 or so plies
MSmits: because you keep jumping to different boards
reCurse: Yeah but you get way more symmetries
MSmits: thats just a single factor of 8
reCurse: ???
MSmits: in the number of states
reCurse: No
MSmits: there are 8 symmetry states
reCurse: Every position has 8 symmetries...
MSmits: yes
reCurse: That's a lot of transpositions
MSmits: so factor of 8
reCurse: How is connect 4 having more transpositions with two symmetries
MSmits: what i mean is, the total number of dinstinct states can be divided by 8
MSmits: because i am tlaking about a totally different kind of transposition
MSmits: not a symmetry one
MSmits: it's making move A, then B, then C instead ofmaking move C, then B, then A
MSmits: uttt has none of that in ply 1 -20
MSmits: connect 4 has tons
MSmits: and this is way more consequential
reCurse: For meta mcts it doesn't matter
MSmits: why not
MSmits: i have had it matter so often in yavalath
reCurse: Because it's the number of unique states that matter
MSmits: it has these transpositions as well
MSmits: exactly
reCurse: So in that sense transposition is by how much you can diminish it
reCurse: So uttt has way more
MSmits: I think we have to distinguish game tree complexity from state space complexity
MSmits: my way of looking at transpositions reduces game tree complexity
MSmits: your way reduces state space complexity
reCurse: Does game tree complexity matter?
MSmits: yes
MSmits: you dont actually visit every possible state to solve a game
reCurse: I don't think it does
reCurse: All you keep is a set of open states right? Doesn't matter how you got there
MSmits: from yavalath i often got to a new node in my tree and noticed I already had 30k visits there, and i got there from a different starting move
MSmits: saved a lot of time, symmetry is already excluded from the start mostly
MSmits: most states are inconsequential
MSmits: they are never visited as no good bot will visit them
reCurse: I said open states
reCurse: Not all states obviously
MSmits: yes, but if you look at state space as a pure measure of how hard it is to solve a game, you are missing some important bits
MSmits: pun not intended
MSmits: for example
reCurse: I disagree but I fail to formalize it
MSmits: you need only 1 winning move
MSmits: to finish a node
MSmits: so if most moves are crap, you dont even need to look at those states
reCurse: The symmetry indirectly reduces the game tree complexity massively
MSmits: but it is by a constant factor
MSmits: not by an order of magnitude
MSmits: or orders
MSmits: exponentially, like branching does in a game tree
MSmits: you will only ever need 8x as much time to solve a game, if it has symmetry like uttt
MSmits: and you disregard the symmetry
MSmits: you will need millions of times more time if you try to solve connect 4 without using tranpositions from order of moves
reCurse: That doesn't sound right
MSmits: symmetry almost exclusively happens in move 1 and 2
reCurse: No that's wrong
reCurse: I actually did it
reCurse: The meta mcts on uttt
reCurse: There's way more than that
MSmits: allright, move 1, you play 44, i assume
MSmits: then there's 2 chocies
MSmits: instead of 8
MSmits: factor of 4
MSmits: then second turn, you have about half as many choices because of symmetry
MSmits: factor of 2
MSmits: 2 * 8 = 16
MSmits: 2 * 4 = 8 sry
MSmits: blacking out here :P
MSmits: other than that, all the other transpositions all come from this directly or indirectly
Zenoscave: finally got my mcts working for breakthrough just need to optim and work on opening book
reCurse: Like I said I'm failing to formalize it
reCurse: But when running it symmetries kept happening
reCurse: So something is missing in your logic
MSmits: of course they keep happening
MSmits: i dont mean you have 15 less nodes
MSmits: i mean you have millions less
reCurse: At every depth there's symmetries
MSmits: but thats still a factor of 8
reCurse: From the reduced set
MSmits: yea, but they come from the top
reCurse: No...
Zenoscave: 7/8*7/8*7/8
Zenoscave: != 7/8
reCurse: I already eliminated the moves at the top
MSmits: symmetry doesnt reduce branching
reCurse: If it was true then symmetries would have stopped
MSmits: wait
MSmits: those arent symmetries!
MSmits: those are transposition
reCurse: And we were talking about transpositions...
Zenoscave: :popcorn:
MSmits: i mean those are transpositions coming from arrivign at the same state due to different move orders
MSmits: thats not from rotation and mirror
reCurse: You said there's nothing between move 2
reCurse: Yes it is
reCurse: The transposition is calculated from applying 8 symmetries
reCurse: And checking if it's already there
MSmits: it's really negligible though, i eliminated those top symmetries as well
MSmits: and I ran about 3 million games
reCurse: But it's not negligible that's what I'm killing myself to say
MSmits: 2% of parent nodes were transposed
reCurse: Every expansion is checked against a massive hash table
reCurse: And nodes were duplicated all the time
MSmits: yes, thats how i do it too
MSmits: every parent node is hashed
reCurse: Not just from the top
MSmits: i know
reCurse: So again
reCurse: How does that make it less transposed than connect 4
MSmits: every node is hashed on expansion
reCurse: Which only has 2 symmetries
Zenoscave: I figured out bash (and i assume other langs) have fs access
MSmits: because a symmetry transpositon is not the same as a move order transposition
jacek: i think you both have different definition of transposition
MSmits: i can get to the same connect 4 state in 3 plies
Astrobytes: Is this you two saying the same thing differently again?
MSmits: in 2 different ways
Zenoscave: take a guess Astrobytes
MSmits: try that with utt if you're not at the top
MSmits: a really short 3 move transposition
jacek: one speaks dutch english, the other canadian english
MSmits: wont work in uttt
Astrobytes: Zenoscave: lol, so what about fs access?
reCurse: They are just of a longer length
reCurse: Number of ways to do teccles opening for example
MSmits: but that is extremely important
Zenoscave: cat << EOF | base64 --decode | tar -x --lzma -vf >&2 -
reCurse: Ultimately for a meta mcts it's only about the number of hash hits
MSmits: the shorter the transposition length, the more often they reduce the game tree complexity = branching
reCurse: vs number of expansions
reCurse: I'm sure this number is way higher for uttt
MSmits: it was extremely low for me
MSmits: 2% or less, after removing symmetry states at the top
MSmits: i counted
reCurse: That makes no sense
MSmits: had a special button for it even
jacek: i think MSmits says only about move order transpositions, while reCurse says about how much you can reduce the game into unique states
MSmits: correct jacek
reCurse: Well sure if you reduce the definition to a specific thing
reCurse: I only care about how it affects the end result
reCurse: Doesn't matter the source
MSmits: the end result is how hard it is to solve a game
MSmits: the move order transpositions are way more important
reCurse: Exactly, so talking about specifics like move order transpositions is not that helpful
reCurse: All you care about is how much you hit vs how much you have to expand
MSmits: but you have to expand far less. Every time you hit a mov eorder transposition, you dont expand
MSmits: in uttt, it's *9 every time almost, for example with teccles
reCurse: Every time you hit *any* transposition
MSmits: if you try teccles in every possible order, you will still almost never hit one you already found before, I did 50,000 teccles games and i did not find a single identical one
MSmits: for the first 16 plies or so i mean
MSmits: because the jumping to fresh boards in combination with the "next board variable" makes states very unique
MSmits: in 16 plies, i can reduce the connect4 tree by thousands, maybe millions
MSmits: a factor of
MSmits: due to move orders
MSmits: as you say, by hashing all states
MSmits: btw, for the C# + windows form enthousiasts. I use Persistent Dictionary. Great way to hash very simple structures if you dont know how to write your own database and such
MSmits: I know with c++ there's easier ways
reCurse: It's unfortunate I don't have my meta mcts figures anymore, because your 2% is way off for uttt
MSmits: well i did not include top symmetry
MSmits: if you turn those off, you will be bombarded by transpositions
reCurse: How can it be affected by top symmetry if those nodes are never expanded
MSmits: in your case you mean
reCurse: Yes
MSmits: then it cant be affected
MSmits: thats true
MSmits: well i will tell you what i did to get to the 2%
reCurse: And I had way more than 2%
MSmits: I ran through all my parent nodes
MSmits: and checked if they had the same children as another parent node
MSmits: (this was when i hashed the childindex, so parents were duplicated)
Zenoscave: MSmits how many opening book entries can you fit in your bots?
MSmits: i just divided the total number of times this happened, by the total number of nodes
MSmits: hmm
Zenoscave: on CG
MSmits: i realize now this might cause an error of a facotr of 9, because i didnt divide by the total number of parents, but by total nodes
MSmits: so it could be 18%
MSmits: does that fit better?
MSmits: Zenoscave depends on game
MSmits: some about 100k, some about 300k moves
Zenoscave: breaktrhough
reCurse: I don't have the exact figures
reCurse: Like I said
reCurse: But at least 20% sounds about right
Zenoscave: HOW SO MANY what is in each entry
Zenoscave: hash bytes and win/games?
MSmits: for connect 4 it would be way more than that, almost every node would be reachable by many ways
MSmits: Zenoscave there's tricks to storing these moves efficiently
MSmits: you dont store the gamestates
MSmits: you store the tree
MSmits: and you skip transposed branches
Zenoscave: so like a move tree?
MSmits: yes
Zenoscave: skip index list
MSmits: like this { 4 { 2} 5 { 1} {6 { 5 { 4 } } } }
MSmits: { means go deeper, } means go up
MSmits: first move is always best
Zenoscave: ... brilliant
MSmits: 2nd move is an opponent move you counter
Zenoscave: do you store this in a string in source?
MSmits: you store the tree, then recreate the flow of the game, while reading the string
MSmits: and store it in a real hashtable
MSmits: yeah
Zenoscave: smart. I bet I can help you reach 500K entries
MSmits: i never had more than 2-3k
MSmits: entries
Zenoscave: i thought you said 100K
MSmits: thats how many fit
MSmits: thats not how many i have in my bots
MSmits: so thats why i never worry about running out of space
Zenoscave: ah.
MSmits: i dont even unicode compress
MSmits: and i use space separation
MSmits: which basically doubles my space
MSmits: it doesnt really matter
MSmits: if i ever need to, i will compress it
Zenoscave: Gotcha
MSmits: the reason i dont need to is that it takes months to calculate a book with even 1k moves in them
VizGhar: hmm maybe question for google, but what is "unicode compress" and how can I make use of it?
MSmits: well, on 1 core that is
Zenoscave: whats your qbf_k value? .55?
MSmits: dont know what that is Zenoscave
Zenoscave: cut off win rate to keep in book
MSmits: VizGhar a unicode character consists of 2 bytes give or take (it varies) , so thats how much information fits i there
reCurse: There's nothing to google as it is uniquely applicable to circumvent CG's limitations
MSmits: Zenoscave i dont think i do it quite that way
MSmits: not like the papers tell me
Zenoscave: do you store the whole tree of sims?
MSmits: i just include the move in the book if the node was visited a minimum number of times
MSmits: 1 sim is 1 game
MSmits: so it takes between 1 and 6 seconds usually
MSmits: easily stored on HD
MSmits: not the whole game, just the result from that node, the tree is expanded by 1
Zenoscave: ah. I do both. only include if it wins at least 55% of games. and if I have at least 50 games
Zenoscave: for that node
MSmits: for yavalath i have at least 10k games
MSmits: it takes like a full day for 1 move :P
Zenoscave: lol
struct: you test vs players in arena right?
Zenoscave: how many games of yavalath do you play a day?
MSmits: i force the search down moves that are done by arena players yes
MSmits: but not exclusively
jacek: have you considered buying yavalath board
MSmits: Zenoscave none currently, i dont have it on.
Zenoscave: 10M on breakthrough took my bot an 1h
MSmits: but it's 30 ms per move i think?
MSmits: most games are solved
MSmits: well.. about half
Zenoscave: gotcha
MSmits: so i guess 1 second per game roughly
MSmits: yavalath is a weird game
Zenoscave: Well My opening book is about to get much better
Zenoscave: thanks !!!!!
MSmits: Zenoscave which game ?
jacek: 10M random rollouts?
MSmits: oh right bt
Zenoscave: 10M full games
Zenoscave: from trun 0 to game over
MSmits: but those are random games?
Zenoscave: yes
Zenoscave: default policy is pure random
Zenoscave: no minimax default yet
MSmits: when i do meta mcts, a game is actually a real game with a bot, so every move has thousands of rollouts
MSmits: so 1 of those 1 second games has millions of sims
MSmits: so when i put an opening book in, it will have over 1 billion sims
MSmits: per move
Zenoscave: and you just discard the entire inner mcts info or up-propogate
MSmits: i discard it, but i am guessing i should maybe take the whole move tree that was used
MSmits: but i might bloat my meta mcts tree then
Zenoscave: Might be a slight improvement
MSmits: yeah maybe, but currently it sits at 600 mb or so
MSmits: on HD
Zenoscave: jesus
MSmits: i dont want it to be 10 gb
Zenoscave: Are you on an HDD or solid state?
MSmits: this is solid state
MSmits: otherwise it would be really slow
Zenoscave: gotcha. dedicated to OS or is it a second drive? I don't see the folly in a 10gb tree
Zenoscave: time to reload or populate?
MSmits: there's no folly in it currently, but i have 6 of those meta mcts, if they all become 10gb... well i guess that would still be ok
MSmits: reload>
MSmits: ?
MSmits: when i turn on the program it runs instantly, hash is on HD
Zenoscave: read the tree into the program for running
MSmits: Persistent dictionary
Zenoscave: gotcha
Zenoscave: text based?
MSmits: it's probably serialized to some form of text. It's pretty compact i think
MSmits: a single node in my case has 128 bit keys and 128 bit values
MSmits: + whatever overhead the dictionary has
Astrobytes: You didn't end up serializing to bin?
MSmits: no that was for endgame books
jacek: hmm bt has one symmetry
Astrobytes: Ah ok
MSmits: believe it or not
MSmits: I use Guid
MSmits: it's some kind of web thingy?
MSmits: it's 128 bit, so i use it as my type to store in
MSmits: persistent dictionary supports it
MSmits: it's a package you import in VS and it works immediately, it's exactly like using a normal dictionary. Pretty amazing stuff
MSmits: except you're restricted in what types you can use
MSmits: about as fast as a normal DB except you dont need to know anything about databases
MSmits: I just start up my meta mcts and i can click if away like any windows program and the dictionary will properly save itself so nothing is corrupted
MSmits: 2 GB items max
MSmits: 2 billion i mean sry
MSmits: did i just help Zenoscave counter your bot jacek
Zenoscave: probably ;)
MSmits: just realized that, sorry
jacek: :c
MSmits: hey, i'll teach you a trick to take back othello if you want jacek, i'll pm
Zenoscave: jacek I have a ways to go before i can counter your breakthrough
Zenoscave: my current mcts would probably rank around 50
jacek: and your current bot isnt mcts?
Zenoscave: Minimax only
Zenoscave: just depth 5
jacek: well books can be used for any bot
Zenoscave: true... might add the book to my minimax. Didn't think of that
Zenoscave: thanks!!!
jacek: have you considered testing the 'usual' opening formation for the first 12 moves?
Zenoscave: nope. I don't look at other bots or active games really
Zenoscave: I'll try that too
Zenoscave: thanks
jacek: i meant from the creator(?) paper
Zenoscave: there's a paper?
jacek: page 4 http://www.trmph.com/bin/Basic_Introduction_to_Breakthrough.pdf
MSmits: Zenoscave you can also use meta mcts with a minimax bot as the bot that plays the games
MSmits: all that matters is that the games give results on who won or lost
MSmits: doesnt matter what type of AI is playing the game
MSmits: could use NN to play the game
MSmits: generally it's considered best to use the bot that is eventually going to use the book as well
Zenoscave: oh man i've got loads of todos now
MSmits: because then it knows what to do with the moves it's given
MSmits: take it slow. I started over, tons of times, adding some features along the way
Zenoscave: I'm thinking meta-mcts is my next one
Zenoscave: then better opening book serialization
jacek: like https://dke.maastrichtuniversity.nl/m.winands/documents/ouvertures9x9.pdf
Zenoscave: Yeah similar but not as complex at first
Zenoscave: just replacing default policy for rollout is my first attempt
jacek: :+1:
Astrobytes: Zip-a-Dee-Doo-Dah :P
zhoubou: I can't understand strategy laid out in https://www.codingame.com/forum/t/code-vs-zombies-feedback-strategies/1089/37 . Why would I move randomly up to 3 times, only to move toward zombies 1 by 1 afterwards? What do random movements before following add?
struct: well if you move randomly 10 times and kill instantly and you get same score
struct: the solution is equally good
struct: like chess a forced mate in 10 is equally as good as a forced mate in 1
zhoubou: Hmm. I think I see where you are heading, but I'm not understanding it. Maybe I need some thinking on that.
zhoubou: Your wording seems to contradict the strategy to me
zhoubou: Like you are saying it's better to just have random moves instead of going toward zombies.
struct: it doesnt matter
struct: ok I guess you can do both
struct: choose random move or go toward zombie
zhoubou: That's what strategy lays out
zhoubou: But I think either one or the other
Astrobytes: *or go toward random zombie
Astrobytes: It's just a flat monte carlo
struct: https://www.codingame.com/replay/520549213
struct: for example here
struct: if i dont group them at the end
struct: the score would be lower
zhoubou: So add some randomness to accidentally stumble upon a combo and otherwise just go toward zombies.
Astrobytes: and tweak your parameters/spam until it's nice
struct: well the randomness will go towards a zombie eventually
struct: So I never bothered adding go to zombie
zhoubou: Well, that's my original question
zhoubou: Why add going to zombies
Astrobytes: Yeah, just random moves is enough
Astrobytes: Don't get too hung up on PMs
Astrobytes: Sorry, post-mortems
struct: Also top solutions are probably hardcoded
Astrobytes: Post contest reports
struct: at least mine is
struct: max I got was 650~k points without hardcoding
zhoubou: Astrobytes Oh ok. I learn something every day I guess :P
struct: https://github.com/dbdr/codingame-validators/blob/master/cvz.txt
Astrobytes: Yeah zhoubou, you learn some terminology along the way
zhoubou: Yeah, I've got a tiny bit of it under my belt already
zhoubou: struct Those are real validators?
VizGhar: zhoubou asking right questions :)
struct: yes
Astrobytes: yes
struct: Also your bot needs to be able to do this
struct: https://www.codingame.com/replay/520550378
VizGhar: If you learn something new, then most probably yes ;)
zhoubou: struct That's incredible. But that's 20 depth
zhoubou: I didn't even start implementing anything, just simulated one turn score
zhoubou: "simulated" -> computed
struct: I simulate until the end yes
struct: I found that solution on turn 10
struct: or a similar one
struct: I found 464210 score one
VizGhar: start with 1 depth (simulate 1 turn) and apply some evaluation function and voila. 1 step closer to perfect bot
struct: but then I replaced it with a better one after
zhoubou: VizGhar Awesome, thank you very much :D
zhoubou: I started this site without knowing how to implement a graph. I might be heading somewhere
zhoubou: With the help of you guys of course
Astrobytes: For sure. You can learn a lot, the site won't teach you but you're forced to go and learn/ask questions
VizGhar: (I haven't done any work on that puzzle yet, but small steps are necessary for us beginners)
zhoubou: Astrobytes Yes, the competition and curiosity motivate you, which is great. :)
Astrobytes: Exactly :)
zhoubou: VizGhar I appreciate the pointing in the right direction and reassurance
Astrobytes: Even if you only compete with yourself, ie. try to improve, it's worthwhile
zhoubou: Yeah. I've been dabbling with programming for years without much improvement
zhoubou: This site might change it all :D
VizGhar: I'm looking forward for next contest. I already took free may so that I can attend the competition (+ some ultramarathon)
zhoubou: Oh, I would love to participate too!
zhoubou: I just need to beef up my skills until then
zhoubou: But idk if I will have the free time I have now (I'm sick currently)
Astrobytes: Doesn't matter how far you get in your first contest (or any, depending on your motivation/goal) as long as you have fun
VizGhar: So... get sick in may :D
zhoubou: Astrobytes You're absolutely right
Astrobytes: And plenty of us work full time and put in extra time in the evenings/days for contests
VizGhar: ++
Astrobytes: I mean, I don't just sit on my ass and watch CG chat for 12 hours lol
MSmits: nah it's more than that, you sleep for only 8 hours right?
Astrobytes: Gotta make the time ;)
MSmits: :P
zhoubou: Hmm when you mention that
Astrobytes: Yeah but I usually do some stuff in the morning before logging in
zhoubou: I could do this at work incognito
MSmits: oh ok
zhoubou: I usually complete so many things they think I always work, even when I go for a break
Astrobytes: If you're ahead in your work sure
MSmits: i have something similar like that
zhoubou: Astrobytes Yeah, I think I am, most of times
MSmits: I'm pretty much the only one doing automated stuff at work, mostly with macros and such
MSmits: so they think i do a huge load of work and it took me 15 mins
reCurse: Any manager worth their salt knows you don't get 8 productive hours a day
MSmits: i even tell them, as you probably know... i cant lie
Astrobytes: Really? I thought more would be doing the timesaving stuff MSmits
MSmits: but they dont believe me :P
zhoubou: MSmits I do something like that regularly, yeah
reCurse: At least not for non-physical work
MSmits: they are teachers, not coders
MSmits: thats so true reCurse
zhoubou: reCurse You're absolutely right
Astrobytes: Don't need to be much of a coder for macros and such MSmits
MSmits: i know, but you do need to have some knowledge
MSmits: these are not IT teachers
MSmits: they teach language, art etc.
Astrobytes: If they can do numbers they can probably automate excel etc
Astrobytes: Oh right
MSmits: so i tell them, it's automated, i press a button and mail you the result
VizGhar: they are using pen and paper, you kmow :D
MSmits: they just think i work all day to get it done
MSmits: well I guess it paints me in a positive light
Astrobytes: And yes, 100% reCurse
MSmits: i just hate that visual basic for applications that you use in excel
MSmits: horrible language
Astrobytes: VBA is highly unpleasant, yes.
VizGhar: yeez... somebody has to stop those contributions... unbelieveable
MSmits: the amount or the quality?
Astrobytes: How many now?
reCurse: Yes
VizGhar: both
Astrobytes: hi
Astrobytes: It's getting ridiculous in the Contribs section now, it's so hard to find multis and puzzles in amongst the clash drek.
MSmits: there needs to be a multi filter
MSmits: can only click clash and puzzle
VizGhar: 121 pending
Astrobytes: Oh it's gone down a little at least.
Astrobytes: Good stuff is overlooked/missed because of all the generic clashes
MSmits: https://imgflip.com/i/4sz010
Astrobytes: Was it you, reCurse, that warned of a similar situation at the introduction of the quest map?
reCurse: Not sure if it was just me but yes definitely
reCurse: Very easy to map consequences from incentives
reCurse: But hey it got more engagement
reCurse: Woo
reCurse: Marketing will be happy
MSmits: well for example, i like tric trac's firework game at first glance. It's good variety. But I don't have the time to get into it. Wish someone else would
MSmits: antisquid did, but not many others
Astrobytes: Quantity over quality as per.
Astrobytes: I will try it soon MSmits.
MSmits: cool
Astrobytes: So damn much to catch up on.
MSmits: yep yep
MSmits: something funny happened to me today
MSmits: I was teaching all day online
MSmits: then at the end of my day i was in a meeting with out highest manager
MSmits: (boss of 5 school buildings)
MSmits: i forgot to turn off my google meet
MSmits: with my class
MSmits: and one student had apparently disconnected and reappeared half an hour after the class ended
MSmits: during my meeting
Astrobytes: hahaha
MSmits: so he was suddenly talking really loudly in my ear during this meeting
Astrobytes: Could the manager hear it?
Astrobytes: Or it was totally separate
MSmits: didnt give him a chance, i just said, sorry i have to talk to this student
MSmits: he would have heard prolly
Astrobytes: heh
MSmits: i also had 2 students that wanted a separate meet so they could cooperate quietly
Astrobytes: Politicians get fired for such things. Always mute/close the required channels
MSmits: then they invited me to check if they were working
MSmits: and the passcode was poop
MSmits: these are 16 yr olds
MSmits: fyi :P
zhoubou: Just wanted to ask :rofl:
Astrobytes: At 16 my passcode would have been a lot worse than 'poop'. Were they working?
reCurse: I've come to expect worse from adults so nothing surprising here
MSmits: Astrobytes yeah it was right after the class, i even forgot i had a meeting. I was 10 mins late lol.. students kept asking me questions
MSmits: they were drawing stuff with python turtle using code
MSmits: sir, my tree is lopsided, how to fix?
Angecide: Hi, I was reading ur post on optimizing bfs the other day and I really liked your idea about class-less nodes, and I was wondering if you think it would be possible to apply the idea in mcts as well? I thought about this a lot and the the biggest challenge I see is; how to keep track of all the child nodes (assuming there could be more than 30 child nodes at some point)? Maybe you have a solution for this?
reCurse: Contiguous allocation
MSmits: that means the child nodes are together in memory right?
reCurse: Yes
MSmits: you reserve the memory block that is just large enough for the number of children
Angecide: yea, but I would have to store them within a bit
reCurse: A bit?
MSmits: oh my bfs playground
MSmits: that is pretty specific to mazesize though
MSmits: if the maze is too big, it wont fit neatly in an integer
Astrobytes: well you ain't gonna be storing your mcts nodes in a bit
MSmits: oh wait, you mean the integer queue?
MSmits: where i have a start and and end?
Angecide: nah, the part where you talk about "BFS without classes"
MSmits: yeah thats the queue i think
MSmits: "popping" from the queue, increased the queueIndex
MSmits: adding to the queue increases the end of the queue
MSmits: so your "queue" window moves
MSmits: and you're just using an integer array
MSmits: when the start of the queue = the end of the queue, the search is done
MSmits: well.. you havent found it then
Astrobytes: oh wait, he wants to store the mcts nodes in an int
MSmits: well thats not all that helpful, because MCTS needs more than a single int per node
MSmits: and if you're using those, you might as well have a class
Astrobytes: ^
reCurse: You need bigger ints
Angecide: ahh, I thought I could clever and perhaps store everything in an int to boost performance
reCurse: Are we talking C# here?
reCurse: ...
reCurse: what?
MSmits: Angecide nah, the compiler solves all your problems
reCurse: Why would you care about class vs int in c++
MSmits: it just makes it a long block of continguous memory like reCurse said
Angecide: I thought maybe class was too much overhead compared to an int
MSmits: there is no overhead
Angecide: idk, maybe it is a silly area to look for performance
reCurse: There is zero overhead to a class unless you have virtual members
reCurse: Yeah it's silly
MSmits: but we';ve all been there Angecide, at least if you started here without becoming an experienced coder first
MSmits: we start to look for optimizations that dont work
MSmits: i did as well
MSmits: in bfs it helps, because those versions with classes, use more memory
MSmits: so the information is spread out
MSmits: you only need the integer
reCurse: That has nothing to do with class
reCurse: But the allocation
MSmits: you're right
reCurse: Same problem with a int*
MSmits: it's just that people fill their class with members that are really big when they only need a single bit or very few
Angecide: yeah I understand now, I see my quest for gaining performance was a bit misguided, but thanks for clearing it up
reCurse: !profiler
reCurse: We need a bot with useful shortcuts
reCurse: Take the few good ideas from twitch
MSmits: Angecide also, you have to wonder what your bottleneck is
Astrobytes: Very true.
Astrobytes: (re the bot idea)
MSmits: reCurse the playground he is talking about does a profile, and in that case he is right and the way that class was setup, hurt the program
reCurse: Any quest for performance must start with a profiler
MSmits: so i can totally understand wanting to apply that elsewhere
reCurse: Then maybe the explanation was not clear enough
zhoubou: If you have a hammer...
MSmits: reCurse probably, he surprised me with the question
reCurse: Speaking of profiling, anyone had success with profiling an executable under wsl2?
Angecide: yeah sry it came out of nowhere, just something I have been thinking about a lot
MSmits: are you doing this for uttt?
reCurse: No problem, just a surprising question
reCurse: So is yours MSmits
MSmits: my question?
reCurse: Yes
MSmits: what did i ask
MSmits: oh uttt
MSmits: it's probably uttt, it was more of an introductory question to see if we could help him otherwise improve his perf. on that game
MSmits: there are more important parts to work on
reCurse: I see
MSmits: like a fast rollout
MSmits: maybe better random function
MSmits: UCT
Astrobytes: re WSL2, maybe struct?
Astrobytes: Also: did we all see the upcoming semi-private contest?
reCurse: No
Astrobytes: https://www.codingame.com/forum/t/sopra-steria-coding-challenge/188667
Astrobytes: Only French eligible for prizes.
Astrobytes: Might get XP from playing.
reCurse: Such discrimination in 2021
reCurse: Tsk tsk
struct: all ive used on wsl2 was valgrind
reCurse: Not very *diverse*
Astrobytes: Yes. I was deeply shocked and highly offended.
struct: intel vtune doesnt work on wsl2
reCurse: I'm sure there's a way to be offended and get publicity for it
reCurse: struct: Even with system monitoring?
Wontonimo: so, the sopra-steria is really only for french devs?
reCurse: So is it french coders or French coders?
struct: I didnt try, I read a bit about it and it says its not supported
struct: so I stopped there
reCurse: Hmm ok thanks
Westicles: I'm 1/8 french, can I win part of a tshirt?
reCurse: Underwear
Astrobytes: afaik it's French as in residing in France.
reCurse: So all I need is someone's address
Astrobytes: Feel free to ask for clarification, if it's just a language thing it might be different.
Astrobytes: Hm, in that case...
reCurse: I'm sure I could recruit a vessel in Fr
Astrobytes: I know a fair number of people in France. Maybe I can open a little market here...
reCurse: So many hashtags, you'd think it's 2012
Astrobytes: haha, I didn't see that
reCurse: #esport though, really?
MSmits: a vassal?
MSmits: or a vessel?
reCurse: Why not both
MSmits: sure
Astrobytes: Indeed
Astrobytes: #esport... I suppose #comptetitiveprogramming was too long
MSmits: #esport is wrong
Astrobytes: Or #competitiveprogramming
MSmits: #esport is just #egaming i thought?
Astrobytes: I won't go there on the abbreviation
MSmits: ah ok, me neither
Astrobytes: Yes MSmits, that's what I would always assume
reCurse: Gaming implies leisure, sport implies competition
MSmits: no need to go there then
reCurse: But esport is a meme at this point
struct: btw new insiders preview build lets you add start up commands to wsl
reCurse: Startup commands? Isn't that just bashrc?
Astrobytes: .bashrc
reCurse: Yea yea
Astrobytes: :P
struct: I guess it should be
struct: maybe im missreading
reCurse: Oh I see it's when the system starts
reCurse: Ok
Astrobytes: Well, when you start wsl
Astrobytes: *whenever
reCurse: But it's when the distribution starts
reCurse: Not when you open a shell
Astrobytes: aha, my bad, gotcha
Astrobytes: Somehow missed the fact it said distribution 3 times and distro once. I blame the snow.
reCurse: I realize it's a terrible place to ask, but is it possible for a GPU to trigger or make tinnitus worse?
Astrobytes: I have terrible tinnitus but I'm not sure GPUs are capable of doing such things.
reCurse: Might just be a coincidence but mine got suddenly noticeable ever since I started maxing out my GPU usage a few days ago
reCurse: It's very annoying
RoboStac: coil whine on gpu's is definitely a thing
Astrobytes: Do some experiments
reCurse: Yeah I'm trying to pinpoint it
reCurse: Coil whine is one suspect yes
reCurse: But should it stop when usage stops?
struct: also gpu will make power supply work more
reCurse: Or is it possible for it to linger as a tinnitus trigger
Astrobytes: You most likely have something else triggering your tinnitus
reCurse: The biology part escapes me
Astrobytes: The tinnitus part escapes us biologists.
reCurse: Maybe, the coincidence is just so suspect to me
Astrobytes: Tinnitus is a symptom of so many things it's hard to list.
reCurse: :/
reCurse: I counter it with music and headphones but also worried it might make it worse lol
reCurse: sigh...
Astrobytes: If you have other comorbidities it can help diagnosis sometimes.
reCurse: Don't think I have those
struct: I know it probably isnt very helpfull, but I just found on a forum a similar question
reCurse: Oh... interesting.
reCurse: "I realized that whenever I was exposed to the new PC for more than say 10-15 minutes when it was turned on, the ringing in my ears would spike like crazy (persisting even after turning off the PC"
reCurse: That would match my experience
Astrobytes: I guess if it matches the frequency of your tinnitus it could prolong/intensify it (see ringing in your ears after loud music exposure)
reCurse: Yeah it's the part that was puzzling me, whether it would linger or not
Astrobytes: How long does it persist after poweroff reCurse?
reCurse: Makes the investigation that much more difficult
reCurse: Haven't tried much
reCurse: Couple of hours didn't help
reCurse: And not really leaving home much during lockdown
Astrobytes: Yeah, not that helpful. Try and keep a note of it regardless though.
reCurse: Not bad
Astrobytes: Not great, but not terrible.
Westicles: Fair to middling
Benkay: Anyone want to clash of code?
Astrobytes: Behold the field where the clashers are, and see that it is empty.
Astrobytes: What's the meta on SameGame?
Westicles: In what sense?
Astrobytes: Anyone actually use NRPA or anything? Or just beam search
Westicles: Oh, not sure. Wasn't much talk about it after the first couple days
Astrobytes: I'm just catching up, so much to catch up on
Benkay: Could I get someone to teach me JavaScript?
Benkay: I know some bits of it not advanced.
Astrobytes: Elsewhere, yes.
Astrobytes: I would start with searching with your favourite search engine to be honest.
darkhorse64: Astrobytes: you can start with montecarlo coupled with tabucolor
Westicles: I guess the main thing on samegame is you are probably looking at deep offline searches
Benkay: What do you mean favourite search engine?
Astrobytes: tabu... yes. And offline ofc. I'd just been thinking of montecarlo + most connected components
darkhorse64: I have done online stuff. I am too lazy to code 20 solutions
Astrobytes: tabu seems like a good approach on or offline
Westicles: It is a bunch of work. Even figuring out the tabu color for each case is a pain, not always obvious
darkhorse64: NRPA looks like a promising algo but I wonder if it's efficient under short time constraints
darkhorse64: Nah, coding tabu is easy
darkhorse64: you need a fast BFS
darkhorse64: If you have done puzzles or multis, you already have one ready
Astrobytes: Fast BFS I have. re NRPA efficiency - if you do it offline that doesn't matter too much eh
Westicles: I meant for finding the optimal solution. A bunch of them have two different colors that can get close to the same score
Astrobytes: Yes, it's an often discussed problem in papers iirc
DomiKo: Astrobytes I'm using NRPA
darkhorse64: Could be an improvement, tabu with the two main colors
DomiKo: and SP-MCTS
Astrobytes: Oh nice. Offline or online DomiKo?
DomiKo: Offline ofc
DomiKo: for like 2H each test
Astrobytes: Thought so.
Astrobytes: Excellent results.
Astrobytes: Westicles: just tabu for you or...?
DomiKo: I was improving A LOT and I gained only ~2K :/
Westicles: Yeah, pick a tabu color, make a random move list, delete a random move and anneal. Not sure what you would call that...
Westicles: Same as NS for me at least
Astrobytes: SA w/ Tabu? I guess
Astrobytes: NS... I can't believe I got that far without coding anything
DomiKo: SameGame is so interesting
DomiKo: how simple algorithm made by Westicles can beat a lot of big paper's
Westicles: Yeah, but the papers don't run for very long. I was in a 3 month contest so probably that is a big chunk of the diff
DomiKo: wait
DomiKo: really?
Westicles: Yeah, there was a contest for this way back when. That's where the top4 on jsgames were competing
Astrobytes: http://www.js-games.de/eng/highscores/samegame/lx
Astrobytes: (for reference)
DomiKo: wow
DomiKo: 2012
Westicles: back on the old dual core
DomiKo: One question. If there is legal TABO move will you do it? or you never do such move if you don't have to
darkhorse64: I do it as late as possible (only move)
Westicles: I have a threshold for each problem, you can't pick the tabu color until there is a group of some size. Except for some you have to make exceptions once or twice
Astrobytes: as in late acceptance darkhorse64?
DomiKo: so you pick tabu color after some time?
Astrobytes: makes sense
darkhorse64: late acceptance is something completely different (as in different context). You keep inferior solutions for a while
Westicles: Huh, I was wrong. The contest was on a different set of boards. I guess I just ran it afterwards on jsgames, so only 3months for the code but not running
Astrobytes: Yes I'm familiar, I misread your comment (missed the 'only move')
Astrobytes: @darkhorse64
Astrobytes: Still worked out pretty well Westicles
Westicles: I hope xevi gives it a try, it is similar enough to NS he should be able to pass me
struct: top solutionsof Same game are hardcoded or no?
DomiKo: yes
DomiKo: Full offline
Astrobytes: Kinda the point for a lot of the optims
Astrobytes: Newer ones are designed with that in mind
UnnamedCodinGamer: you can still get a decent result within the provided time though
DocCV: http://chat.codingame.com/pastebin/244ef867-52e2-4ab1-9369-157418b25a78
Astrobytes: Definitely.
UnnamedCodinGamer: importing the test cases was tedious
struct: isnt it trivial?
UnnamedCodinGamer: I did not automate it
UnnamedCodinGamer: copy/pasted them
struct: ah
UnnamedCodinGamer: on top of this there are 20 duplicates
UnnamedCodinGamer: can not figure out why
Astrobytes: only aCat can explain that
UnnamedCodinGamer: maybe for some approaches you could get different results
UnnamedCodinGamer: It is strange
Astrobytes: I am sure there was a 'reason' but it turned out to be redundant, don't quote me on that though.
UnnamedCodinGamer: for most of the solutions it seems to be the case
Westicles: Did people do bender4 offline?
Astrobytes: Hmm, I'm not sure tbh. It seems doable online
Astrobytes: But I don't know who used what approach in b4
Astrobytes: Anyway, I'm away to bed. See you all tomorrow, gn
struct: gn
MohamedMiri: too much lag or what ?
BananaInSpace: Ive been stuck in coders strike back boss 2 for a WEEK, any help T^T