Chat:World/2021-08-03

From CG community
Jump to navigation Jump to search

xxd: I wonder what types of strategies reCurse uses to get 1st place in bot programming challenges

xxd: like how sophisticated can one get? neural networks / GA? or is there more

martinpapa69: https://en.wikipedia.org/wiki/AlphaZero

eulerscheZahl: https://www.codingame.com/forum/u/recurse/summary just read his top posts

xxd: thanks

eulerscheZahl: https://www.youtube.com/watch?v=BU9b445CpaM he even streamed twice

xxd: woah, nice. thanks for sharing

reCurse: Mostly just a clown though

ericlovesmath: Why is my Clash of Code score *decreasing* as I win lol

Default avatar.png kobebryant: hi

Uljahn: ericlovesmath: to encourage you not to play against too low ranks

Default avatar.png kobebryant: hi

ericlovesmath: Got it

ericlovesmath: Hi

KiwiTae: ZarthaxX o/

Default avatar.png kobebryant: hi

Default avatar.png kobebryant: hi

Default avatar.png kobebryant: hi

Default avatar.png kobebryant: hi

Default avatar.png kobebryant: hi

Default avatar.png kobebryant: hi

Default avatar.png kobebryant: hi

derjack: ;s

Jumong: cat

Default avatar.png corei3: sudo

Default avatar.png ansh10121012: hi'

withab: ertuo

Default avatar.png ansh10121012: http://chat.codingame.com/pastebin/ebee005e-8de1-4fbf-8df4-1c120fef4eb9

Default avatar.png ansh10121012: hi howw are ya all doing

Dohmanlechx: How can I convert a char in C++ to binary? Trying to solve that Chuck Norris puzzle.

Dohmanlechx: i.e. 'C' = 1000011

KiwiTae: bitset<8>('C')

Olitoni: i actually tried to do the churck norris puzzle

Olitoni: But for some reason in the last thest one of the chars is weird in javascript

Olitoni: and it's wrong by one

Olitoni: and like it's impossible to debug

KiwiTae: i think bout 100k people solved it its possible hehe

Olitoni: but why is a random character different?

Olitoni: in the middle of the string?

Olitoni: 1 bit is wrong

Olitoni: im using the javascript ascii table

dbdr: debug it. print the steps on the console

KiwiTae: ^

Olitoni: yeah i'm doing that

Olitoni: when i put it into a binary to text converter it is correct

Olitoni: but when converted to unary 1 bit is wrong

Dohmanlechx: Thanks KiwiTae, bitset<8> binaryOf(c); worked fine. Next step is to find a way to iterate through it. I'm forcing me to practice on C++, I usually code in Kotlin and Dart otherwise :)

Default avatar.png Maxim251: Oh my god, I did achive tree search in Ultimate tictactoe, but timming is to low, and I cand do it everytime that search, then I get another problem, I try use only one leg to check if this is win, and my code sometimes get brake, I have there such a mes, because I was trying doing everything... and I feel that I dont have energy to trying more...

Default avatar.png Maxim251: This is that foulty code

Default avatar.png Maxim251: http://chat.codingame.com/pastebin/12a32e1b-b336-4a03-bcf6-94584fe9cd1c

Default avatar.png Maxim251: I think half of that code should be erased.. :/

Dohmanlechx: (note: had to change to 7 bit for the puzzle, i.e. bitset<7> binaryOf(c);)

derjack: whats your rank on UTTT

Default avatar.png Maxim251: With normal logic, I could get working, but not everytime I will win, with tree search I can predict the best moves, but thats my problem, I dont know how correctly write it :P

Default avatar.png Maxim251: I dont go to the rank... With that code, I don't have nothing to look there

Default avatar.png Maxim251: struct map is a helper class, I feel that writtening code should be simpler....

Default avatar.png Maxim251: Tree class is that main one, where supose should do tree search, but I had problems to corectly move back in that tree and chose next move to check if is win, and then move back to beginning to output that move. When on base map there are moves, I should memorise all moves from that game, and then do search tree to output the last moves. There are the most problems what I have, I cant go out more then 3 moves.

Default avatar.png Maxim251: and my head is hurting me :P

derjack: why memorize all moves from entire tree?

Default avatar.png Maxim251: This line "makeMove(_root.nodes.back(), _root.nodes.back().curentPlayer, another ) ; " is duing next level .. like next move, and going back from that function is muving back from that tree

Default avatar.png Maxim251: that line after while loop " _root.points += newNode.points; " is transfering back points which means that how many wins was in that tree

Default avatar.png Maxim251: No no, When program is going back from tree, is forgetting that moves, and only what I left is transferred points. What I mean is actual game, that actual moves should be recorded, to check another sort of moves

Default avatar.png Maxim251: My problem lies, that I cant record moves when on board is made 3 or more moves.

Default avatar.png Maxim251: 102 000 021

Default avatar.png Maxim251: game dont outputs board, only is outputing avaible moves... But on each step i should memorize moves step by step... Because game will not output me moves from the past.

Default avatar.png Maxim251: https://www.codingame.com/ide/puzzle/tic-tac-toe

Default avatar.png Maxim251: this is link to game

Default avatar.png Maxim251: I start with simple 1 board, because tree search is for me something new, and I want learn and practice that. thats why also I did stay in wood league.

derjack: are you trying minimax or mcts

Default avatar.png Maxim251: no, minimax is for search values in existing tree, I am earising tree because what I need is maximum points from move at the beggining

Default avatar.png Maxim251: to know what next move to do.

Default avatar.png Maxim251: But I was also concidering that.

Default avatar.png Maxim251: But transfering points from end of tree to the beggining, alows me to know what first move should be dthe best

Default avatar.png Maxim251: Yeah... I am thinking if is not better to sustain all tree in memory and use minimax insteed to check what next move should be made... Problem is that to make that tree is time consuming, and game have for first move only 1 sec.

Default avatar.png Maxim251: Hmmm...

Default avatar.png Maxim251: This is code what tree search was working, but without outputing move.

Default avatar.png Maxim251: http://chat.codingame.com/pastebin/3d9cf138-148c-4482-8819-3bbdc222f306

Default avatar.png Maxim251: Problem with this code is timeout, I have to hevy code to work fast

derjack: add pragmas above the includes

derjack: #pragma GCC optimize "Ofast,unroll-loops,omit-frame-pointer,inline"

  1. pragma GCC option("arch=native", "tune=native", "no-zero-upper")
  2. pragma GCC target("rdrnd", "popcnt", "avx", "bmi2")

Default avatar.png Maxim251: http://chat.codingame.com/pastebin/8446d21c-4d5c-4dc3-b3ac-c6943d3bcac0

Default avatar.png MaXsTyLe: фыафыа

Default avatar.png AZlMUT: Ку

Astrobytes: English in world chat please

derjack: Maxim251 write above the includes

derjack: Astrobytes dlaczego

Astrobytes: Because it's world chat. You are not helping.

derjack: im not a mod

Astrobytes: I know. Don't make me kick you.

TobiasA: :joy:

Wontonimo: good morning [system command: adjust to local timezone]

TobiasA: a good morning to you too

Wontonimo: how's it going TobiasA ?

TobiasA: I'm doing just fine hbu?

Wontonimo: yeah, good

Wontonimo: Astrobytes or derjack, either of you have any tricks for handling "ties" well in a mcts game?

Yasser: how to get buddy examiner badge?

Wontonimo: what's that?

RoboStac: after you complete a puzzle you on the results tab you can click to view other solutions and it lets you choose your favourite. Do that a few times and you get the badge

RoboStac: assuming you mean budding examiner

Wontonimo: oh

Wontonimo: i forgot about that

Wontonimo: hey Robo, do you handle ties in mcts in some special way like win/lose solver ?

RoboStac: yeah, though I'm still not sure on the best way

RoboStac: usually once a node is a solved draw I just ignore it during selection so it will send all the exploration to the moves that look worse to ensure there isn't a way to win. During backprop this lowers the parents overall scores though

Yasser: is it by upvoting RoboStac?

RoboStac: you can sort of work round this during backprop by checking if any of a nodes siblings are solved draws and backpropping a draw instead at that point but it's a bit slower

RoboStac: Yasser - no, you get two options and have to choose your favourite. It's separate to the old upvoting system

Yasser: Ah I see it's not possible to do on previous solved puzzles?

RoboStac: it is, you can just go back and open the results tab

RoboStac: you have to do it in the ide though

Yasser: Got it, thank you!

Yasser: mouse hovering in the chat on profiles doesn't work anymore? :/

RoboStac: nope, it's been reported as a bug on discord but no staff responses yet

Yasser: (╯°□°)╯︵ ┻━┻

Yasser: :sweat_smile:

Wontonimo: Thanks RoboStac. totally makes sense

Wontonimo: the part about ignoring solves during selection is interesting. I haven't implemented that.

RoboStac: without that it just selects the draw over and over and you just waste a lot of processing time not learning anything new

Dohmanlechx: Standard Output Stream: http://chat.codingame.com/pastebin/e15a0a78-d697-448a-8d0a-59a3cadf9988

Dohmanlechx: It should be 1,0,0,0,0,1,1

RoboStac: thats just the standard for indexing bits - bit 0 is the least significant bit

Dohmanlechx: Yeah just read about it. Gotta loop backward then.

AllYourTrees: the mcts solver paper talks about over/under estimation when skipping solved nodes, but they don't really do any actual analysis of it or show how much it affects things

AllYourTrees: skipping solved nodes seemed stronger when i tested it

Wontonimo: excellent, thanks

Wontonimo: i'm testing now on C4

MSmits: AllYourTrees skipping solved nodes is better, but there are ways you can control the bias

Wontonimo: oh, like what?

MSmits: say you're backpropagating a loss that was an alternative of a solved draw

Wontonimo: ah

MSmits: while going back up the tree, you check the siblings, if one of them is a solved draw, you change the result to 0

AllYourTrees: interesting

MSmits: thats one way to do it, but then you bias on wins

MSmits: the alternative is to keep backpropagating 0's until the weak nodes value exceeds 0

AllYourTrees: can you just replace values with the solution (if its better) as you back up?

MSmits: well thats one way to do it, but not necessarily

MSmits: what you can also do is for every layer, during backpropagation, check the node you went through, if it's below 0, just backprop 0

MSmits: but if it's above 0, backprop whatever result you found

MSmits: because apparently you're working on a better node now

MSmits: I'll make a picture in a sec, have to let dog out

Wontonimo: okay, so on C4 it looks like just ignoring solved wins pushed my Trueskill up about 1 point. Same ranking but a higher TS right off hop

MSmits: here's how you can deal with solved draw bias in a picture:

MSmits: https://imgur.com/a/WT2rvDU

MSmits: so only backpropagate results when it's a good node

MSmits: but do also backprop losses through that node. when you backprop, you backprop ALL

MSmits: until it becomes a bad node, then you turn off backpropagation through it, or at least, you backprop 0 to keep increasing visit count

AllYourTrees: interesting

AllYourTrees: ty for the pic!

MSmits: np, btw, i do not generally use this because there's performance overhead

AntiSquid: trademarked graphics

MSmits: and solved draw bias is almost non-existant in most games

MSmits: since draws usually solve last, except in games where early draws are possible

MSmits: so not in uttt, not in othello, not in C4 etc.

MSmits: not in yavalath either

AntiSquid: quite sure there are draw branches early on and through out the game in C4

MSmits: branches yes, but not terminal nodes

MSmits: these draw branches are very hard to solve

MSmits: so they solve last

AntiSquid: i mean once you go down that path best result will only be a draw

Wontonimo: great, thanks MSmits. nice drawing

MSmits: I guess it depends on your exploration parameter too

MSmits: from watching meta mcts too many times, i noticed draws always solve last in the games I mentioned

MSmits: unless exploration is low

MSmits: then you can dive deep into a drawn branch

AllYourTrees: i guess thats because draws need all children to be draws, whereas a a win requires 1 child to be loss, and a loss requires all children to be wins(which only require 1 child)

MSmits: thats it exactly

MSmits: well it's not 100% true due to ab pruning, but mostly true

AllYourTrees: do you have ab pruning in mcts solver?

RoboStac: that and many of these games can only draws due to no moves left so they're always the deepest branches

MSmits: i have an algorithm for ab pruning in mcts solver yes, but i dont often use it

MSmits: https://imgur.com/a/G7iT54b

MSmits: you never have to visit the pruned child

MSmits: as the top node is already a certain draw

MSmits: if the pruned child is a loss, then the top node is a draw, but if ti is a win, then the top node is also a draw

AllYourTrees: oh cool

MSmits: the middle unsolved draw never gets solved btw

MSmits: because you pruned the child

MSmits: but you can just skip it

AllYourTrees: yeah

MSmits: this is messy to code and can give problems when you reuse the mcts tree

MSmits: because you will get into situations where you're at a node that was never solved because you skipped it

BlackGriffin03: Can Some one help me , I am finding Silver league in CSB difficult

Wontonimo: sure, i'd be happy to help!

Wontonimo: i'll msg you directly

jacek: mk legacy?

MSmits: oh Wontonimo, when did you do csb?

MSmits: top 100 i see

Wontonimo: a while ago

MSmits: which is pretty good , considering the insane amount of players having done csb

Wontonimo: thanks

AllYourTrees: :eyes: jacek what you doing in C4

jacek: random resubmit

AllYourTrees: :spy:

Wontonimo: yeah, mk legacy jacek

eulerscheZahl: "when did you do" there are tooltips when you hover over the score points

eulerscheZahl: i'm getting random timeouts on submit. when i play each testcase in the IDE, everything works fine :(

eulerscheZahl: and it's always different cases that fail

eulerscheZahl: down to 25ms, now it's passing :/

jacek: optim?

eulerscheZahl: yes

jacek: sometime 30ms is too much for me

Im9: hi

woful: i forgor :skull:

altayayayay: i rember :smile:

woful: pls tell me

woful: cuz i forgor :skull:

Default avatar.png FIVE-CYCLE: holy shit,I think i should review my C++ class...

Default avatar.png FIVE-CYCLE: I have forgot everything...

Dohmanlechx: Someone did the Chuck Norris task recently?

I'm failing the third test, which uses the char %. The binary string is "100101" but the compiler wants "00 0 0 0 00 00 0 0 00 0 0 0". 00 in the beginning means the first letter is 0. It doesn't make sense!

Dohmanlechx: Aha, the length had to be 7...

Flaaamort: Yes: "ASCII characters (7-bit)"

MSmits: if you have problems with chuck norris, it probably has something to do with leading zeroes

MSmits: ah damn chat scrolling

Dohmanlechx: Thanks anyway :) I always have hard times with algorithms concerning binary. It's solved since a little while tho.

MSmits: hehe ok

Dohmanlechx: Quick question, can't I delete my own solutions? (When I corrected a minor error and published again...)

eulerscheZahl: others will only see your latest submitted solution (per language)

Dohmanlechx: Nice

eulerscheZahl: there was some visual bug i think. not sure if that got solved

eulerscheZahl: looked as if your old was still published but it wasn't

MSmits: eulerscheZahl, how do i fix this, if I want to open a file from a C# program:

MSmits: static string fileName = "resources\OwareSolver.exe";

MSmits: i wasn't using a folder before

reCurse: \\

MSmits: ahh ok, thanks

reCurse: or @"

eulerscheZahl: or @"string"

oxydowe: also @"resource

eulerscheZahl: (╯°□°)╯︵ ┻━┻

MSmits: thanks both :)

eulerscheZahl: or with / instead of \

MSmits: oh that works?

MSmits: I was wondering

eulerscheZahl: even works on windows

MSmits: though it was a linux thingy

eulerscheZahl: "resources" + Path.DirectorySeparatorChar + "OwareSolver.exe" :upside_down:

MSmits: lol

eulerscheZahl: i'm sure there is some Path.Join or similar as well

reCurse: ew

eulerscheZahl: so many options

reCurse: Path.Combine at least

MSmits: you know, 1 good answer would have sufficed :P

reCurse: No

MSmits: ok

eulerscheZahl: we still have to golf it and use hex codes

eulerscheZahl: i guess the / already is the golfed version

MSmits: now i have to figure out how to keep 36 filestreams open for my endgame books

MSmits: i know how to do it in c++

reCurse: The golfed version is to name it a.exe in the same folder

oxydowe: "There should be one-- and preferably only one --obvious way to do it."

reCurse: No

eulerscheZahl: do we need the .exe to pkeep it executable?

reCurse: Um.

MSmits: yes eulerscheZahl "{

oxydowe: that's python, i like to apply to other languages as well :-)

reCurse: I guess you can CreateProcess without the exe

reCurse: But that will be the only way

eulerscheZahl: that's bad golfing

MSmits: I am doubleclicking it

MSmits: oh right

reCurse: I don't think even cmd prompt will execute without

MSmits: that one i am not

MSmits: i could probably make it a dll anyways, if i knew how

eulerscheZahl: do chmod +x and run it with WLS

reCurse: ren OwareSolver.exe OwareSolver.dll

MSmits: does that work ?

reCurse: Technically yes

MSmits: never used a dll before, i figured the file would be different

reCurse: It will be mostly useless but it will work

MSmits: o

reCurse: They're both images so

eulerscheZahl: a .jar is a .iso is a .zip

MSmits: why ?

reCurse: Because sometimes you care about the format inside and sometimes you care about what is inside

MSmits: are their formats the same?

reCurse: Yes

MSmits: I see

MSmits: so the extension is just a way to tell the user what kind of content is in there

reCurse: Mostly

reCurse: But programs also use it to figure out what to do

reCurse: So not just user

reCurse: But that is also why you can have a png renamed as jpg and it still works

reCurse: Because the program may ignore the extension and just figure it out by itself

MSmits: I see

eulerscheZahl: and the file itself (at least some of them) indicate the type in the first few bytes

eulerscheZahl: like an exe starting with MZ and a zip with PK

MSmits: MZ?

eulerscheZahl: and then there is CAFEBABE as the first 4 bytes

reCurse: Well any image really

reCurse: dll start with MZ as well

eulerscheZahl: MZ after the inventor of the exe format

reCurse: Initials of some guy who did some DOS things

eulerscheZahl: mike something

eulerscheZahl: zabowski?

reCurse: shrug

reCurse: My bots start with WTF and me going /flip

eulerscheZahl: Mark Zbikowski

eulerscheZahl: (looked it up)

MSmits: you got the owski right

eulerscheZahl: you better take notes, this will be relevant in your next exam ;)

MSmits: ok, another question

MSmits: what is the C# equivalent of:

MSmits: ifstream infile; infile.open(cacheString, ifstream::binary); infile.read((char*)&(captureCache[0]), CAPTURE_CACHE_SIZE * sizeof(int8_t)); infile.close();

reCurse: Don't forget to make the exam on completely different questions

reCurse: euler that one is yours I'm lazy now

MSmits: wait thats wrong, thats reading the whole file, not really what i want

eulerscheZahl: File.ReadAllText

MSmits: infiles[seedsOnBoard].seekg(bits7 / 8, ios::beg); infiles[seedsOnBoard].read((char*)&(lookup), 2 * sizeof(uint8_t));

jacek: :thinking:

MSmits: this looks up a single result from the endgame db

reCurse: ReadAllBytes probably

reCurse: Doesn't seem like text

MSmits: it's binary

eulerscheZahl: my bad

reCurse: Though I doubt that's what he wants

eulerscheZahl: can't you just tell what you want to do without those C++ hyroglyphs?

reCurse: hieroglyphs

MSmits: i just need to read a little piece, 2 byes in some location in the file

eulerscheZahl: i'm illiterate

MSmits: i know where it is, the offset

reCurse: Open a FileStream

reCurse: Seek to the correct position

reCurse: And use that converter thing

reCurse: ugh it's been too long I did c#

MSmits: thats kind of the same as in C++, what converter thing?

reCurse: Nooot really

reCurse: using (var fs = File.Open(...))

reCurse: fs.Position =

reCurse: fs.Read the bytes

reCurse: BitConverter

reCurse: to convert bytes to type

reCurse: Fill in the blanks

MSmits: i can also just us ethe bytes directly right?

eulerscheZahl: sure

reCurse: You can also fix the array and use a pointer directly

reCurse: But I thought you'd want idiomatic c#

MSmits: meh, i dont mind, anything that works is fine.

eulerscheZahl: he doesn't even use List<T> he doesn't care about idiomatic

MSmits: i prefer working with C++ anyways, but i dont want to learn how to do a gui, so i am kinda stuck with this for now

reCurse: The state of gui sucks hard

MSmits: windows forms works and i want to spend as little time on stuff like that as i can get away with

reCurse: But qt might be worth it for you shrug

MSmits: qt?

reCurse: qt

eulerscheZahl: "cute"

MSmits: oh ok

MSmits: thanks reCurse

eulerscheZahl: notepad++ uses qt iirc

MSmits: https://www.qt.io/ ?

reCurse: yes

reCurse: I have a hard time figuring out if this or doing web through c++ rest is worse

MSmits: I have no idea, I only ever run massive 1 file programs i c++ for CG

eulerscheZahl: web has many approaches that i struggle to understand. i mean it works but why would anyone do this

reCurse: Because resources

reCurse: Still kind of debating how to do chess vis

reCurse: Web has tons of chess ui stuff

reCurse: BUT

reCurse: It's wewb

eulerscheZahl: like blazor. using C# instead of JS, great. but keeping the whole client state duplicated on the server?

MSmits: it's funny to what lengths coders go to avoid js :P

reCurse: Not even js but web in general

reCurse: It's a fucking zoo

MSmits: you make that sounds bad, but zoo's are fun

reCurse: But then I have a readymade chessboard instead of recoding it in qt

eulerscheZahl: and every year there's a dozen of new hyped frameworks

reCurse: sigh

jacek: qt? that thing made by trolltech company?

MSmits: is that where you work jacek

jacek: no :(

MSmits: aww :(

eulerscheZahl: today heise.de published an article how to write a SPA with object pascal. why would anyone want to do that?

jacek: delphi?

eulerscheZahl: pretty much. https://www.heise.de/hintergrund/Neue-Wege-ins-Web-mit-Object-Pascal-und-Visual-Studio-Code-6153125.html

eulerscheZahl: warning: German

jacek: :scream:

eulerscheZahl: https://www.codingame.com/replay/573828290 also i'm heavily overshooting at checkpoint 4 :/

MSmits: how are you approaching this optim euler?

eulerscheZahl: beam search

MSmits: is that effective here?

eulerscheZahl: dummy for scoring. -3v for the next few checkpoints to get a time

eulerscheZahl: you see how effective it is. 24th atm

MSmits: oh, not bad

eulerscheZahl: 11.2k while the top is 10.3k

MSmits: yeah thats cool

MSmits: are you hardcoding?

jrke: grt

eulerscheZahl: nope

eulerscheZahl: i'm still 1 behind jrke

jrke: :grimacing:

jacek: what test case is that

eulerscheZahl: 11 test15

jacek: oh https://www.codingame.com/replay/573841788

eulerscheZahl: that's way more convincing than what I do

jacek: youre using target x y and not degrees?

eulerscheZahl: just for output. was easier with my dummy actions -3v

eulerscheZahl: i use (-18,0,+18) x (0,200)

eulerscheZahl: do you test more options?

jacek: no just those

jrke: in that case i test less - {0, 200} and {-18, 18}

eulerscheZahl: "stdout": "EXPERT -11 200 467\n

eulerscheZahl: you lied jacek

jacek: hm?

eulerscheZahl: "in that case" you tweaked per testcase jrke?

eulerscheZahl: https://eulerschezahl.herokuapp.com/codingame/replays/analyze/?id=573841788 that's your outputs jacek

eulerscheZahl: you had a -11 degrees angle

jrke: no same for every testcase

jacek: whats wrong with that

jrke: constexpr int choice_thrusts[] = {0, 200}; constexpr int choice_angles[] = {18, -18};

jacek: you have only 2 choices?

eulerscheZahl: you told me that you test the same angles as I do jacek

eulerscheZahl: i'm confused

jrke: yeah i have only 2

jacek: (-18,+18) i thought its interval -18...18, no?

eulerscheZahl: i only test the 3 values -18,0,18

jacek: oO

jrke: i tried many choices

eulerscheZahl: jrke at least add 0?

jacek: i test all integers in that intervals

eulerscheZahl: which trusts?

jrke: i tried but not best score

jrke: lemme retry then

eulerscheZahl: EXPERT -18 173 510\

eulerscheZahl: you really have a lot of possible actions

jrke: even thrust also?

jacek: eeyup

eulerscheZahl: what algo?

jacek: GA

jacek: the number on display is generations

jacek: population 40 genomes, genome 15 actions

eulerscheZahl: and some static scoring I assume. no dummy movements

jacek: whats dummy movement

eulerscheZahl: my beam takes 1 action and then uses -3v until i've passed 4 checkpoints. measure time it takes as score

eulerscheZahl: then the standard beam thing: remove bad actions, go deeper

jrke: what depth you can go?

eulerscheZahl: no idea, let me test :D

jrke: oh

jrke: you said -3vel till 4 checkpoints right? so with what thrust always 200?

eulerscheZahl: mostly depth 5, sometimes 6

eulerscheZahl: width=50

jrke: ohk

jrke: thats grt for depth 5-6

eulerscheZahl: thrust = 200-something

jrke: mine goes 15-16 depth beam width 900

eulerscheZahl: that something depends on the angle difference

jrke: but less choice

jrke: ohk

darkhorse64: -3 might not be the best factor: depends a lot on the distance between checkpoints

eulerscheZahl: i know. but i'm bad at those heuristics :/

eulerscheZahl: for mars lander i could get some creative input from published puzzle solutions

eulerscheZahl: i even have 3 different dummies there

darkhorse64: Yeah, I should seed my GA at ML with an heuristic solution to improve convergence

jrke: do you eval at depth 1 also euler?

jrke: cause your choices are 6 and beam width 50

jrke: so you can ignore eval till depth 2

eulerscheZahl: but those are the cases where it's really few states anyways

eulerscheZahl: at the end it's 50*6. no need to cut off the initial 6 states in sim :D

jrke: is this time limit problem still there in SR?

Wontonimo: for mars lander, instead of -3v, i use -35v. it works really well

jacek: i use around 31ms and still can get occasional timeout

Wontonimo: This is -3v at work https://www.codingame.com/replay/573848553

Wontonimo: this is -35v at work https://www.codingame.com/replay/573848730

eulerscheZahl: i will stop the replay before it reaches the end

jacek: why doesnt nasa hire you

Wontonimo: :shrug:

jacek: or trolltech

Wontonimo: ah, sorry, i just jumped on the chat and thought we were talking mars lander

jacek: oh my

eulerscheZahl: :D

Wontonimo: looks like it was several different things

eulerscheZahl: mostly search race

eulerscheZahl: Illedan would be happy if he would read the chat

Wontonimo: ah. i didn't do great on that. just blindly applied my CSB bot which is optimized for chaos

Wontonimo: beam definitely sounds like a promising avenue

Illedan: hm?

Illedan: Search Race?!

Illedan: :D

jrke: :smiley: euler was correct!

jacek: master race!

Illedan: Euler doing Search Race?

eulerscheZahl: i'm ahead of you Illedan (just to make you less happy)

Illedan: :scream:

Illedan: Sogeti can wait

eulerscheZahl: we should rename it to ray-ce

jrke: btw is there any way i can make offline submit to see my score?

jrke: for optims

eulerscheZahl: download the game

eulerscheZahl: source is public

jrke: i know that

jrke: but i have to run each test case one by one?

Wontonimo: if your prediction is accurate, your code only needs the first round of input. totally run it offline

Wontonimo: no public source needed

Default avatar.png Maxim251: In Tictactoe, I did delete 80% of my code, and I will try start it one more time

Default avatar.png Maxim251: But this time, I will use functions bit more like on this movie : https://www.youtube.com/watch?v=IOo7UJuKsHs&list=PLTxllHdfUq4d-DE16EDkpeb8Z68DU7Z_Q&index=16

eulerscheZahl: search race has rounding. java doesn't even follow IEEE standard

Wontonimo: because it is for toasters

jrke: oh lol misread `toasters` `toaders` at first sight

Wontonimo: and someone way back in 1994 though it would be a great idea to put it in a browser. what could go wrong, a toaster controller for programming in the web

eulerscheZahl: there's even strictfp as a keyword

eulerscheZahl: if you really want to be IEEE complaint

BlaiseEbuth: lapsus

Default avatar.png Maxim251: I still want use vectors, because I can store different amount of nodes, but using pointers, could be a lot easier... I think.

eulerscheZahl: but i'm sure Illedan never heard about that one :imp:

Wontonimo: hey Maxim251, i'm trying to peddle my flat MC tic tac toe code https://tech.io/snippet/JOG9cSV

Wontonimo: it may help you with ideas for bitboarding your UTTT code

Wontonimo: I didn't use vectors at all for UTTT, and instead used pointers in my first version that got to legend

Wontonimo: that link is a demo of solving 3x3 TTT using MC (not MCTS)

darkhorse64: you can further improve the code by issuing moves as a mask and not as a bit to set (it saves two shifts)

Wontonimo: definitely

Default avatar.png Maxim251: #Wontonimo

darkhorse64: Another likely improvement is to replace the fancy avx wincheck by a table

Default avatar.png Maxim251: Nice code, is displaying probability of the best moves....

Wontonimo: i adopted that in my C4 code, but haven't backported it to my UTTT yet

Default avatar.png Maxim251: But You use concept of tree search?

Wontonimo: yes, that's a good note. The fancy avx is "for show". I personally don't use it and instead use a lookup.

Wontonimo: Maxim251 I use a tree search in my final bot yes. It's a Upper Confidence Tree with Monty Carlo rollouts , aka MCTS

Default avatar.png Maxim251: I see that Uou start play code from random choices, and see how it ends, and then from that random moves calculate how many times was win, and calculate percentage of it

Wontonimo: the link i sent isn't a final bot for UTTT, but just a demo for 3x3 TTT, that shows that Monte Carlo is quite useful, even without a tree. A UCT makes it much more powerful though

Default avatar.png Maxim251: Of cource, But that give mi another way to think about that.

Wontonimo: awesome, then it fulfilled its purpose

Wontonimo: ideas and connections

Default avatar.png Maxim251: Heh, Your code is much smaller, then my previouse one :D My one was gigantic at the first time. Now when I know what I have problems with tree, I have better wision how coding part two should look. Or what I want to do now :)

jrke: damn my clash bot is working!

Illedan: Nope, never heard about it euler :P

Default avatar.png Maxim251: I have now new concept... Probably it will take next 7 days to make it roon :P

jacek: mhm

Wontonimo: tell me about this clash bot jrke

FalINTOblivion0112: i am solving the puzzle of the week...

eulerscheZahl: you have a bot for clashing? great but don't use it

Astrobytes: Yeah, proof of concept achieved. Disable it.

ZarthaxX: clash of bot meaning smart one?

ZarthaxX: clash bot*

jacek: oh abalone approved

ZarthaxX: maybe it's just a bot that enters games

xxd: maybe its a twitch bot

eulerscheZahl: and then submits from a list of known solution i suppose. updating that list when someone else publishes a better one?

Wontonimo: oh, vry klvr

xxd: I'd appreciate any feedback on my Clash contribution: https://www.codingame.com/contribute/view/7206774f7c01f68b28b03316b5bca1a0a27b

ZarthaxX: oh no i just thought it got into a game and leave

Wontonimo: :D

Astrobytes: Extremely not-clever at this particular point in time.

Wontonimo: I like that

eulerscheZahl: using a clash bot is an easy way to get some new enemies. including the community manager

eulerscheZahl: enough said

Wontonimo: my plan is to just let my CoC score slowly die

eulerscheZahl: how to solve my overshooting in search race? :/

ZarthaxX: Astrobytes why?

ZarthaxX: did something new happen?

ZarthaxX: related to bots

Wontonimo: hey, have I told you about how I solved overshooting in mars lander eulerscheZahl ?

Wontonimo: haha

eulerscheZahl: we don't talk about that ZarthaxX

Astrobytes: Nothing public.

ZarthaxX: mods only?

Astrobytes: Just take it from us: don't write a clash bot and use it.

xxd: how can i see who else is from my school

ZarthaxX: nah im over with clash :P

xxd: on codingame, that is

Wontonimo: got to school

Wontonimo: i was too slow

Wontonimo: https://www.codingame.com/leaderboards/general/global?column=schoolcompany&value=SAME

Wontonimo: try that xxd

xxd: oh, through leaderboards, gotcha

Wontonimo: and then you can judge them at the same time you look them up

xxd: thanks

xxd: they're level 1 xD

jacek: a hex game approved and MSmits isnt there already? oO

KiwiTae: ZarthaxX u so nosyy :p

eulerscheZahl: and he's certainly not an ArthaxX. i haven't seen any usable dice yet ;)

eulerscheZahl: but don't worry, at the moment i'm way too lazy to touch the game anyways

ZarthaxX: i didnt get the arthaxx

ZarthaxX: we have been busy with gf :(

ZarthaxX: end of semester

Astrobytes: Art-haxX. The dice art.

eulerscheZahl: no problem

ZarthaxX: also some training camp for her

eulerscheZahl: Artistbytes can help

ZarthaxX: aaand her grandma died last week

eulerscheZahl: oh :(

ZarthaxX: and her whole family had covid too

ZarthaxX: everything has been bad

Astrobytes: Sorry to hear that Zartho, that's quite a run of bad luck. Wondered where you'd been.

eulerscheZahl: i was just nagging you a bit and you replied with a horror story

ZarthaxX: another family member died of covid three weeks ago

ZarthaxX: eulerscheZahl sorry :/

ZarthaxX: i didnt forgot tho :D

Astrobytes: Damn dude, really sorry to hear that

Wontonimo: is it really bad in South America?

ZarthaxX: Astrobytes well im personally busy with work haha

Astrobytes: :D

ZarthaxX: on top of all that

eulerscheZahl: are vaccines getting an option in Argentina already?

ZarthaxX: Wontonimo yep it sucks

ZarthaxX: i mean vaccines are being applied way more now, because we are on elections time

ZarthaxX: :D

ZarthaxX: also pfizer doses coming because we are on elections time

eulerscheZahl: here we already reached a state where we have more vaccines that people willing to get one

ZarthaxX: that has not happened here yet

ZarthaxX: government is still the problem

Astrobytes: I got my date for my second dose today, and sent off my PCR test to see if I'm covid positive or just have flu

ZarthaxX: sorry toad for the sad story, but wanted to make a summary of life

ZarthaxX: as i havent been here anyway

ZarthaxX: :P

ZarthaxX: Astrobytes nice and not nice

eulerscheZahl: i'm sorry for you. one day death will get all of us

eulerscheZahl: but that's a lot in a short timespan

ZarthaxX: but for now, we can cg

Astrobytes: :)

ZarthaxX: oh i also won a gift card for amazon

Astrobytes: #winning

eulerscheZahl: how did that happen?

ZarthaxX: there was a challenge here

eulerscheZahl: so you won by skill and not by luck?

ZarthaxX: i can win locally :rofl:

ZarthaxX: right

ZarthaxX: ended first

**eulerscheZahl is still waiting for the smart watch

eulerscheZahl: did you already receive your gift card?

ZarthaxX: still owe you that tshirt

ZarthaxX: on it

eulerscheZahl: whatwas the challenge about?

ZarthaxX: well that was the meme

ZarthaxX: chuck norris codegolf

ZarthaxX: but my solution sucked

eulerscheZahl: that's how you won the gift card?

ZarthaxX: yeah, sucks

ZarthaxX: lol

eulerscheZahl: have you seen this? https://clemg.github.io/pythongolfer/

ZarthaxX: yeah

ZarthaxX: i talked with wonto

ZarthaxX: got to 76 on contest

Astrobytes: which contest was this?

ZarthaxX: i mean challenge

eulerscheZahl: university contest?

ZarthaxX: nono

ZarthaxX: so last week was a special one

ZarthaxX: many specialized courses in uni

ZarthaxX: and many sponsors

eulerscheZahl: 76 isn't that bad. i'm at 86 on chuck norris

ZarthaxX: a sponsor did this challenge

ZarthaxX: the guy that proposed the challenge had 74 chars in cg

ZarthaxX: :rofl:

KiwiTae: im at 89 :( u guys too good

ZarthaxX: yeah 86 would have been 1st place too

eulerscheZahl: mauguignard

ZarthaxX: mine was 135 before, but with that compression could have won

ZarthaxX: yeah

ZarthaxX: i did the encoding locally with python anyway

ZarthaxX: i didnt believ in copy pasting with that tool

ZarthaxX: lol

ZarthaxX: btw toad a friend just left argentina and is now living in germany

ZarthaxX: he posted many pics, germany looks amazing

ZweiPunktFuenf: can anyone give me a pointer on how to solve "Folding a Note"? I am really lost : /

eulerscheZahl: that's a big change. completely new culture and language

ZarthaxX: totally, but i think its worth given current argentina state

eulerscheZahl: that puzzle is too new, haven't tried it. reading time

eulerscheZahl: even then i would probably opt for an English speaking country

KiwiTae: ZweiPunktFuenf just need to handle a big matrix

ZarthaxX: im pretty sure he studied german in school

ZarthaxX: i would obv opt for that alternative

ZarthaxX: :P

eulerscheZahl: wildum moved to germany too. without speaking german before

ZarthaxX: how did he manage to survive? haha

eulerscheZahl: afaik he still lives here. i've met him once. a bit before the code of ice and fire contest

ZarthaxX: oh nice!

ZarthaxX: cg meetings

BlaiseEbuth: About 75 years ago, that was some germans who lived germany for south america... :3

eulerscheZahl: *left?

BlaiseEbuth: Irregulars are for weaks.

eulerscheZahl: https://en.wikipedia.org/wiki/Adolf_Eichmann didn't help him much

eulerscheZahl: fled to argentina just to get kidnapped to israel and then executed

ZarthaxX: :/

BlaiseEbuth: Zarthou!!!

Astrobytes: Not sure that's the appropriate emoji Zartho, lol

ZarthaxX: hey blaaaais

ZarthaxX: Astrobytes wdym?

ZarthaxX: i meant to say like unfortunate

ZarthaxX: like wtf is wrong with people

ZarthaxX: :(

BlaiseEbuth: Everything?

Astrobytes: I mean you shouldn't feel sorry for a Nazi war criminal :D

ZarthaxX: oh

eulerscheZahl: you missed that part? :D

ZarthaxX: sorry i didnt read the link

ZarthaxX: im in "work"

Astrobytes: :D

ZarthaxX: haha

ZarthaxX: i take that back then

eulerscheZahl: you don't have to read the article to know what blaise was referring to

ZarthaxX: justice

ZarthaxX: i didnt understand blaise

eulerscheZahl: bad english

ZarthaxX: yeah lol

ZarthaxX: he popped randomnly and said that lol

BlaiseEbuth: Wasn't random.

ZarthaxX: sorry :(

KiwiTae: >< deeplabel is killin me gotta reinstall ocv

JoseRamonMendoza: I'm going to have a job interview in an hour. I'm here to distract myself while my interview start. I'm scary AF

KiwiTae: JoseRamonMendoza if u go for an interview u got the job. Just dont say or do anything that would make them wanna not hire u hehe

JoseRamonMendoza: Jejejeje

KiwiTae: how do you dezoom the code window lol dunno how i zoomed in

MSmits: oh I missed the daily nazi discussion

Bob_Rocks: Can someone help me with Shadows of the Knight - Episode 1

Bob_Rocks: Specifically the last test case

KiwiTae: nvm refreshed did it for me

Bob_Rocks: :|

KiwiTae: Bob_Rocks whats blocking?

FalINTOblivion0112: daily nazi discussion?

FalINTOblivion0112: whoa

MSmits: i was just kidding

FalINTOblivion0112: lol

MSmits: i scrolled up

Bob_Rocks: KiwiTae What do you mean "what's blocking" 🤔

MSmits: saw some weird shrt

MSmits: sht

FalINTOblivion0112: weird what?

KiwiTae: You need help for it

Bob_Rocks: Yes

MSmits: nvm FalINTOblivion0112 :)

Bob_Rocks: KiwiTae I was doing some testing with locating the bomb, but when I go to the bomb position it's not there.

MSmits: i wonder if the US intelligence agencies monitor this chat

KiwiTae: last testcase might be random dont hardcode the position

Bob_Rocks: I'

Bob_Rocks: I'm not hardcoding the position

Bob_Rocks: and even if it was random

Bob_Rocks: then I would be getting that position at least some of the tiem

Bob_Rocks: time

Default avatar.png BobLob: A bit off topic, but I really agree with your username, Bob_Rocks

Bob_Rocks: Thanks BobLob lmao

MSmits: Bob_Lobs

Astrobytes: BobLobsRocks

Bob_Rocks: bruh I dont understand

BlaiseEbuth: Astrobruh

Astrobytes: BlaiseEBruh

Bob_Rocks: I'm going insane over this

vulca: @Bob_Rocks: Note that the last test case has a very large field

Bob_Rocks: Um... okay.

Bob_Rocks: I dont really see how that helps

Astrobytes: the running time

Astrobytes: Big testcases will test the efficiency of your algorithm

Bob_Rocks: It's not the efficiency that is the problem though

Bob_Rocks: whenever I go to the exact spot where the bomb is

Bob_Rocks: it's not there

Astrobytes: . . .

Shorre: What do you mean by its not there? Cant you see whats happening in the video?

vulca: What is the game information output on the console at the step before the last step?

KiwiTae: Bob_Rock the bomb is just not where u think it is

Bob_Rocks: Yes I can but it's right inside of the circle

Astrobytes: Also, what is your approach to solving it?

Bob_Rocks: I tried two different algorithms that I made

Bob_Rocks: and one went to the square where the bomb was

Bob_Rocks: and that wasn't there

Bob_Rocks: and then another went to the square to the left (which was where the input said it was)

Bob_Rocks: and it wasn't there either

Bob_Rocks: Maybe it's in a quantum state in between the two squares

Bob_Rocks: Astrobytes my approach is basically just binary search but in 2 dimensions

Astrobytes: Binary search is all you need yes, you must be doing something wrong at some step

Bob_Rocks: Thanks

Bob_Rocks: I'll keep that in mind I guess

Astrobytes: Debug it step by step

KiwiTae: 9755 2521 the bomb is there last test

KiwiTae: if that helps

BlaiseEbuth: No

KiwiTae: :joy:

BlaiseEbuth: Bombs isn't fixed for a test

Bob_Rocks: 🤔Yeah I dont think that's where it is

Bob_Rocks: it's not because I just went there

Bob_Rocks: it's because I've been going to an entirely different spot

Bob_Rocks: and I know my code is right up until really close

Astrobytes: Then your code is wrong ;)

Bob_Rocks: Yeah I know it's wrong

Bob_Rocks: thank you for the input lmao

KiwiTae: its there cause the bomb doesnt explode for me

KiwiTae: hehe

Bob_Rocks: well yeah it's randomized though

KiwiTae: real? i replayed like 10 times always end up there

Astrobytes: Randomised?

Bob_Rocks: Yeah mine too

Bob_Rocks: that's what it does for me as well

Bob_Rocks: but that's not where my bomb is

BlaiseEbuth: "or some tests, the bombs' location may change from one execution to the other: the goal is to help you find the best algorithm in all cases."

BlaiseEbuth: *for

KiwiTae: on validator maybe

Astrobytes: Oh. Been a while since I did that one.

KiwiTae: same 2016 maybe :/

KiwiTae: 200lines of c# somehow lol

Astrobytes: lol, hey, you live and learn :)

Bob_Rocks: I have like 300 lines of java

Bob_Rocks: :pensive:

Bob_Rocks: I'm so bad

Astrobytes: No, you're just stuck for the moment.

BlaiseEbuth: Stop using java, stop being bad.

Astrobytes: Log everything to stderr and work through it to see where you're going wrong

Bob_Rocks: Astrobytes I've been doing that

Bob_Rocks: I did it nevermind 🤮 I'm actually terrible

Bob_Rocks: I shorted it down to 33 lines though

Astrobytes: what was the problem?

Bob_Rocks: Everything

Bob_Rocks: I just rewrote the entire thing and probably got lucky

Astrobytes: I see

Bob_Rocks: Being stuck on a medium puzzle yikes

Astrobytes: It happens, don't worry about it.

FalINTOblivion0112: you mean the puzzle of the week?

FalINTOblivion0112: i couldnt solve it either

Astrobytes: No, it was Batman.

Astrobytes: (Shadows of the Knight)

FalINTOblivion0112: ahhh

FalINTOblivion0112: i really need help on puzzle of the week lol

Astrobytes: Haven't done it, sorry

BlaiseEbuth: Useless mod...

FalINTOblivion0112: hey astrobytes is a good mod

BlaiseEbuth: What's a good mod...

BlaiseEbuth: Anyway, I wasn't. And Astrobytes looks too much like me to be one...

BlaiseEbuth: Astrobuth

AstroHydes: I'm a mood god.

BlaiseEbuth: That's true.

Astrobytes: And I'm the good mod.

FalINTOblivion0112: AstroHydes?

FalINTOblivion0112: funny lol

Astrobytes: Yeah, it's an alt account

Astrobytes: For testing things, testing contribs, etc etc

Astrobytes: And chatting during busy contests, cause the chat gets laggy af

BlaiseEbuth: Oh, the chat is faster with your alt ?

Astrobytes: Yeah, cause it's not got the moderator list of users

BlaiseEbuth: :o

Illedan: Nice jolindien

jolindien: thanks :)

jolindien: but far from pb

Illedan: Yeah, that is another level

jolindien: yep

Astrobytes: Nice. Good job jolindien. And you Illedan.

jolindien: yes gg Illedan

Illedan: Still 24 hours

Astrobytes: + possibility of dapo

Illedan: Let's just hope pb4 thinks he is safe

Astrobytes: Whether he can wreck pb4 is another story

Astrobytes: Yeah :)

jolindien: he isn't ?

Illedan: I'm having my hopes high!

Astrobytes: hehehe

Illedan: Maybe I find the magic eval all of a sudden.

KiwiTae: staying close to budgers?

KiwiTae: gg Illedan

Default avatar.png juma: hi! that was my first problem.

Default avatar.png juma: I want to practice Rust but I wrote zero code so I went for the python option

Default avatar.png papamaddax: how to change pfp

Default avatar.png CarlosAlbertoRibeiro: is the gravitaional acceleration 3.7m/s^2?

vulca: 9.8m/s/s I thought

luke123456: yes its 9.8

Default avatar.png heloche: hello guys

Default avatar.png Deathshotxxx: :wave:

Default avatar.png heloche: is anyone hiring ? I do HTML and my annual salary is USD150k

ZarthaxX: lmao, isnt that too much?

MSmits: *I do html *

MSmits: noone does html

MSmits: people code websites these days or use wordpress or something

MSmits: writing direct html seems relatively unimportant

Default avatar.png eemsnayr: yes

Default avatar.png eemsnayr: zarthaxx hit me up on nsa.gov

ZarthaxX: MSmits you can still do it anyway lmao

MSmits: well ok :P

ZarthaxX: eemsnayr aight, going buddy

ZarthaxX: i did it :c

MSmits: in fact I "do" html with my students

ZarthaxX: you see? :P

MSmits: but thats just so they know how websites work. If you do this professionally, I assume you'll always use some language to autogenerate the html

MSmits: but what do I know, I'm not a pro :P

MSmits: though if anyone is paying 150k for html, let me know

ZarthaxX: ah ye you would use a framework

ZarthaxX: like reactjs

ZarthaxX: which i still couldnt finish lol

ZarthaxX: IT salaries are high :P

Default avatar.png yamin2000: this very hard for me , i am 2 months in programming .is it normal ?

Peached: yes

Peached: im in for like 1 year now i also struggle