Chat:World/2021-04-19

From CG community
Jump to navigation Jump to search

**Smelty dies

PatrickMcGinnisII: RIP

bheemu: ola

jacek: wooo chess as potw \o/

jacek: KelvinAndHubbles you need to advance to league to complete it

epistemologist_: i cant write fast code for my life

MasterCoderxD: http://chat.codingame.com/pastebin/eaf2422e-4e9c-41be-a7fb-4f05c258d0a9

Default avatar.png ahthserhsluk: https://www.codingame.com/clashofcode/clash/17002497bb97d6d628f15b8cd3e3df6cfb50c36

MasterCoderxD: The above function still doesn't work for std::vector<std::string>

MasterCoderxD: Can someone make an edit?

MasterCoderxD: http://chat.codingame.com/pastebin/eaf2422e-4e9c-41be-a7fb-4f05c258d0a9

Default avatar.png kedarnath: hello

DCoderOP: hlo

DCoderOP: go to clash channel and join clash

MasterCoderxD: http://chat.codingame.com/pastebin/eaf2422e-4e9c-41be-a7fb-4f05c258d0a9

N00b_er: Hello

MasterCoderxD: Help!!!

MasterCoderxD: Some C++ pro help me!


jrke: whats the help?

MasterCoderxD: See the above texts.


jrke: sorry i am not handy with pointers

MasterCoderxD: Oh ok.

MasterCoderxD: Np.

MasterCoderxD: Anyone else?

philipplenk: What exactly are you trying to do?

philipplenk: http://chat.codingame.com/pastebin/f0c2fa3f-a996-43d3-b96c-acc61abdd6d9

Default avatar.png MXgms: hi

derjack: good morning

KiwiTae: MasterCoderxD looks like a mix with cpp and python lol

MasterCoderxD: Yeah that's what I was experimenting on lol.

derjack: cppython?

BlaiseEbuth: :nauseated_face:

derjack: (╯°□°)╯︵:upside_down:

BlaiseEbuth: :) ノ( º _ ºノ)

KiwiTae: BlaiseEbuth o/

BlaiseEbuth: \o KiwiTae

Thyl: Hi !

Uljahn: derjack: you mean cython?

derjack: dython!

Mr.pOoH: hey world yesterday i feel someone is controlling mouse then watched youtube and it says something problem with the touchpad :o

BlaiseEbuth: :thinking:

derjack: :mouse:

Mr.pOoH: :cat:

Default avatar.png Swetsen: hi guys!

Mr.pOoH: :wave:

Hackercodehp: hi

Default avatar.png sweety07: hii

Default avatar.png kkkkl: hi

Default avatar.png kkkkl: i just discovered this site

Default avatar.png Ketan_3108: https://www.codingame.com/clashofcode/clash/170056852d42e9ce62e87022d97010809cef17f #clash

derjack: yhm

Alex-1: hii

AntiSquid: Ketan_3108 #clash

Alex-1: hii AntiSquid

Uljahn: he was not afraid to die, oh, brave Sir Robin

Alex-1: what is Spring Challenge 2021

struct: The next contest

derjack: *leaked* the theme will be ponies

Astrobytes: What's that? The them is 'Throw the brony down the well"? :P

Astrobytes: *theme

struct: I wonder what the game will be :thinking:

struct: Do you usually join contest derjack?

Default avatar.png Prabahrn: hi

Default avatar.png kkkkl: hi

Astrobytes: Salt mining? :P

derjack: struct i join to see whats up but at most i get silver

Kitkat260: goooooooooood morning coders!

derjack: did you see the puzzle of the week this week

Default avatar.png Santjl: hello

Default avatar.png Santjl: good morning my worldwide friends

Astrobytes: Chees

Astrobytes: Chess even

derjack: :cheese:

struct: Should I even paste the move generation on slcc feedback?

struct: I think the main reason my bot failed is because I didnt work on my eval

Astrobytes: Sure, if you think it adds something

struct: How can we pm in the forum? I wanted to pm tbali

struct: to ask him if he wants to join

Astrobytes: Find a post by him and click on his username is the fastest way I guess

struct: done

Astrobytes: Cool, nice one

struct: Im not sure the move gen adds much

struct: The only difference is that it takes into account 2 angles

struct: instead of 1

Astrobytes: Well, just give it a mention if appropriate then

Therabidpanther: help me stop being so tired

BlaiseEbuth: Go to sleep

Therabidpanther: work and school makes that impossible for the next 6 hours :(

BlaiseEbuth: Sleep where you are

Therabidpanther: i mean, this is possible... its just a cubicle lol

Therabidpanther: a cubicle at work where i do codingame.... lol

KiwiTae: I am your boss... coming to your cubicle right now

Therabidpanther: time to wake up i suppose

Default avatar.png DonaldReza: hello everybody

struct: hi

sleepy-coder-101: hello world

sleepy-coder-101: i am sleepy

sleepy-coder-101: zzzzz.......zzzz......zzzzzz....

Kitkat260: hi

KiwiTae: o/

BlaiseEbuth: Oh. The break is over...

Kitkat260: ?

Kitkat260: i need help with coding

AntiSquid: we all do, ask Automaton2000

Automaton2000: but before i had a bad submit

Kitkat260: welll..... can u help

Mr.pOoH: :D

Mr.pOoH: Automaton2000 hi

Automaton2000: madknight i think you need to track the opponent

AntiSquid: https://www.education.com/magazine/article/fifth-grade-reading-comprehension/

struct: sry im also learning how to code

Marchete: Can someone help me with the descent?

Default avatar.png sanath-cousin: h

struct: solve it on paper first

struct: or press hints on the left

Marchete: good idea struct

AntiSquid: for descent write a simulation, also collect replay data and analyse it first

BlaiseEbuth: Hey! I found a bug in onboarding, where can I report it?

Marchete: just make a new forum post and PM moderators

KiwiTae: stop making fun of newcomers laaa they gonna walk out :p

AntiSquid: who you calling new comer ? 1 vs 1 me KiwiTae, see who's brest

derjack: breast?

BlaiseEbuth: Brest?

bready-to-code111111: funy

AntiSquid: best *

KiwiTae: its the city i live in atm

Astrobytes: Actually Brest is appropriate

Astrobytes: see

Astrobytes: So Kiwi is officially brest

AntiSquid: typo, the letters are next to each other and i have chubby sausage fingers, stop making fun

Astrobytes: No really, he moved to Brest, bretagne, France

derjack: fix your -2.29 chess bot

BlaiseEbuth: Brest is in Taipei ? I should review my geography...

Astrobytes: Tell them KiwiTae

bready-to-code111111: France and Taipei are easily confused, the names are very similar.

BlaiseEbuth: True

AntiSquid: he moved to europe he said so

Marchete: probably if you compare it on Javascript

struct: lol

Marchete: True or False on JS is a leap of faith

AntiSquid: woah ... the JS haters at it again

Astrobytes: It's true though! (or is it? :D )

struct: Give me a reason to love javascript

AntiSquid: you can't force love

bready-to-code111111: scratch is best language

AntiSquid: and haters gonna hate

BlaiseEbuth: That's fun, I just left a Js hate session on Fr...

KiwiTae: I am currently working abroad in France

KiwiTae: just moved there this quarter

struct: how is it?

bready-to-code111111: is it warm?

BlaiseEbuth: Kouign Amann never hurted anybody.

Astrobytes: ^

AntiSquid: don't get the reference

KiwiTae: its cold as f

struct: Really?

BlaiseEbuth: Of course, he's in Bretagne, not in France

Astrobytes: It's always cold and wet in Bretagne

KiwiTae: its like 11°C

AntiSquid: it's colder everywhere this year

BlaiseEbuth: Virus fault

struct: This winter was hell in portugal

AntiSquid: had snow in april

struct: Houses are not made for this

BlaiseEbuth: Just build other houses

JordyH: Winter a hell in Portugal? It can't be that cold. It's not Finland

**BlaiseEbuth is sorry for this easy one

Astrobytes: It may be cold and wet KiwiTae but always remember en Bretagne, il ne pleut que sur les cons

BlaiseEbuth: :3

KiwiTae: :joy:

AntiSquid: how good is your french from 1 to 10 KiwiTae

KiwiTae: 9 I guess

derjack: omelette du fromage?

AntiSquid: how well do you understand hard-syllable-skipping french speakers?

KiwiTae: c'est la vie le paing ohlala

KiwiTae: AntiSquid no clue I haven't interact with people so far, lockdown , no social circle

AntiSquid: lockdowns are the reason it's colder probably, less carbon emissions, less green house effect

Therabidpanther: i suppose that could make sense

Marchete: so are you telling me I need to burn oil and stuff to avoid an ice age?

Marchete: makes sense

KiwiTae: its due to la Nina in the pacific, cools down the surface a bit

BlaiseEbuth: https://www.youtube.com/watch?v=QJwIsBoe3Lg

struct: the girl?

KiwiTae: still gonna make it top 10 of warmest years since 1700s

Astrobytes: yeah struct you have la nina and el nino

struct: "You reached the limit of plays for a period of time."

struct: How long is this cooldown?

AntiSquid: i am sure blaise wears a garlic bulb necklace daily

KiwiTae: bout 1y or so

Marchete: niña y niño

AntiSquid: nino

BlaiseEbuth: Of course

Astrobytes: thanks marchete :)

Marchete: https://link.springer.com/chapter/10.1007/978-3-319-09165-5_5 what a bargain!

struct: does astro even has that key?

struct: ~

Marchete: at that price I buy the top player from CG

Astrobytes: No, could have looked it up but I didn't

Marchete: and it will have much better ideas

Astrobytes: lol Marchete, quick someone tell MSmits

BlaiseEbuth: Who pay for ebooks

struct: Msmits about to get scammed again

Astrobytes: Smits pays for papers

Marchete: only 39.58

BlaiseEbuth: :scream:

Astrobytes: Well, he paid for one. We're just never letting him forget it :P

Marchete: CGermint never forgets

AntiSquid: if you like the cover! buy it! then you can add it to your bookshelf, it helps you look smart

Marchete: "the code can beat humans!"

Marchete: did you read that!? huimans!

Marchete: humans*

struct: impossible

Marchete: like it was a f*king achievement with teraflops...

Astrobytes: what is this sorcery

struct: Just wait until you find that the secret to beat humans was to add a opening book

Astrobytes: hahaha

AntiSquid: you could invite the author to CG to advertise his book better

derjack: is this what reCurse bought to beat me at that game

BlaiseEbuth: reCurse bought nothing to beat you

derjack: except new PC

BlaiseEbuth: He bought a new pc to beat you ?

AntiSquid: are pc parts available again?

struct: no

struct: its even worse now

AntiSquid: GPUs nowhere to be found

BlaiseEbuth: Why do you need pc parts when you can have a complete one... :rolling_eyes:

struct: if I had a 3000 series I would sell it

AntiSquid: ya good profit struct

AntiSquid: because i am not paying extra for pre-built BlaiseEbuth

derjack: or preprint

BlaiseEbuth: You prefer don't pay at all and stay with your old pc.

AntiSquid: there are few companies that allow you to pick your parts and they build it for you, but even then i would be worried about them selectively leaving out parts that accidentally above average

lastshamp: :poop:

AntiSquid: it's like 6 months old geez, i don't know how i'll survive

BlaiseEbuth: :(

derjack: Marchete, bought it. fully recommend https://i.imgur.com/SHDIaQw.png

struct: o.o

Marchete: lucky you :D

Marchete: in fact I wasn't looking about breakthrough, but about MCTS-EPT

derjack: just replace the result of playout with eval, ezpz

Marchete: while(!winning()){ do_stuff_to_win(); }

Marchete: ezpz

derjack: for more, send $400 to 666-420-69-2137

inoryy: fyi: 0% of what you pay goes to the authors

struct: 0%?

Marchete: this can't be true

Marchete: no royalties at all?

inoryy: welcome to academia

Marchete: like almost 40eur for some paper and nothing for the authors?

BlaiseEbuth: Scientists are like artists, they're paid in visibility.

inoryy: it's quite literally 0.

Marchete: they are paid in prestige

Marchete: do you have a lot of prestige, inoryy?

Marchete: btw :)

inoryy: moreover sometimes you can get a free copy if you just email the authors, as they retain the rights

BlaiseEbuth: Or you can just use a downloader

inoryy: don't think so? how would I measure it : D

inoryy: I mean I'm not saying there's a simple way to bypass the paywall but I'm saying if you did use it then authors would literally lose nothing

Astrobytes: Yep. Researchers do the work so journals and sites can make money.

BlaiseEbuth: Pretty normal.

BlaiseEbuth: :money_mouth:

Marchete: I would never bother an author for a paper tbt

inoryy: https://twitter.com/hwitteman/status/1015049411276300289?lang=en

BlaiseEbuth: ez money

inoryy: also I'm not saying there's a simple way to bypass the paywall that you should use, but if there were then the book you linked would definitely be available through it

BlaiseEbuth: C'mon inoryy, everybody here knows the way. ^^

struct: Can confirm, I profited a total of 0€ from all the papers I published.

BlaiseEbuth: But how much prestige!

Marchete: prestige worldwide

struct: I think you are on to something

struct: you should buy that domain if its available

Marchete: https://www.youtube.com/watch?v=ciS914MaDl8

inoryy: Marchete not sure if you saw before, but I stumbled on your Mokka project -- nice work!

Marchete: I don't know what I was doing

Astrobytes: Well, if that's not high praise I don't know what is :)

Marchete: so I beg your pardon on stupid stuff I did in that repo

inoryy: pardon granted

BlaiseEbuth: Mokka is pretty good cake.

BlaiseEbuth: +a

Marchete: Convolution layers is a hell to do it in AVX2

Marchete: there seem to be some info around

Marchete: but damn

Marchete: are*

inoryy: yeah, can imagine

struct: I think re curse mentioned that avx512 is a little more friendly for NNs

Marchete: yes, I found a lot of info on higher AVX versions

Marchete: in most cases AVX2 is ignored

Marchete: even by Intel

Marchete: or it's overly complex

Marchete: so I gave up on that

MSmits: hey Marchete I am using your Mokka thingy to jumpstart my machine learning experimentation, so thanks a lot

MSmits: the fact that i know i can use it in a CG bot, means i can use TF

Marchete: I'm trying to use it, but still I'm working on the jacekmax

MSmits: ah ok, i've written jacekmax before

MSmits: it's very similar to mcts with ept

MSmits: except you backpropagate minimax style

Marchete: I'm trying to do a monster

MSmits: what monster?

Marchete: jacek+smitsi+max

MSmits: i am not sure that is possible

Marchete: hence the monster

MSmits: smitsi relies on statistics that are decoupled between agents. If you maximize, then you need exactness

MSmits: the whole idea about smitsimax is that the fuzzy statistics makes it work

MSmits: but if you maximize, you cant rely on that

Marchete: right now I don't trust the maximize part

MSmits: you can trust it if you have a single, exact game tree

Marchete: after N visits the code sees that another branch is much better

Marchete: and changes the whole max() part

MSmits: well I translated my mcts with ept to jacekmax in oware and got same rank

MSmits: as in above all non-nn, below the nn

Marchete: nice

Marchete: jacekmax without rollouts, right?

MSmits: mcts with ept seemed to be somewhat stronger, but eval was tuned for mcts with ept

MSmits: yes without rollouts, eval

Marchete: right now the jacekmax is about 30th, but my minimax is like 15th

MSmits: just eval children

Marchete: eval children is costly

MSmits: depends on the eval

Marchete: he takes out the policy part of the alphazero

Marchete: in exchange of more game simulations

MSmits: well its not really alpha zero

inoryy: > MSmits 04:30PM > i am not sure that is possible famous last words

MSmits: well in this case it just makes no sense to me inoryy, I didnt mean it is hard

Marchete: can't the negamax part suddenly find a trap and "invalidate" the best branch?

Marchete: like even if you have a lot of visits

MSmits: yeah, it can, but mcts can skip traps too

Marchete: I mean negamax inherently can fall in traps that change a lot the propagated score

MSmits: not really

Marchete: I thought it can happen the same on smitsi

MSmits: because it's min maxed

Therabidpanther: regex is the devil

BlaiseEbuth: No. I'm

Therabidpanther: oh

MSmits: so if it suddenly raises the score a lot, the parent will just not be picked

MSmits: so extremes will disappear

MSmits: the biggest problem is the horizon effect

MSmits: because the player who's turn it is might have an inherent advantage or disadvantage

MSmits: so if the dept between leafs is not the same

MSmits: some leafs may be p1 and some may be p2

MSmits: eval can correct this partially

MSmits: I usually have player-turn as part of my eval score

Marchete: do you prefer jacekmax or MCTS-EPT?

MSmits: but jacekmax, just like smitsimax has some features that makes you question why it would even work, but it does, I tested it for oware, jacek tested it everywhere

MSmits: mcts-ept

MSmits: because i know why it works generally

MSmits: jacekmax is a bit weird

Marchete: I don't like the negamax part

Marchete: I prefer sumScore/visits

MSmits: why not, mcts also has negamax

Marchete: the max() part

MSmits: oh ok

MSmits: well then it's just mcts with ept

MSmits: use that instead

MSmits: if you do sumscore/visit i mean

MSmits: it works fine if your eval is good

Marchete: fine?

MSmits: it's very simple to convert one way to the other, just a few lines of code

MSmits: similar i mean

MSmits: at least for oware

Marchete: fine doesn't mean good or excellent

MSmits: jacek says in some games, one was better and in other games, the other

Marchete: it's just okiish

MSmits: no, i mean i beat everyone with both algos

Marchete: top 30 or so

MSmits: except the NN's

MSmits: i can beat the NNs by cheating with a counter book though :P:

Marchete: do you save gamestates on MCTS nodes?

Marchete: or replay the whole thing

MSmits: in some games yeah

MSmits: actually in most

MSmits: if the state fits in 128 bit or less

Marchete: with an NN is harder to keep books

Marchete: no left

Marchete: no space left

MSmits: i doubt that, why not just make a smaller nn

Marchete: I was thinking that

Marchete: keeping in 128 bits

MSmits: which game is this?

MSmits: oware?>

Marchete: oware, yes

MSmits: my state is 64 bit :grin:

Marchete: oh :D

MSmits: well + score sry

MSmits: the board is 64 bit

MSmits: and then i have score also

MSmits: so another 16 bit

Marchete: I have tons of useless info on MCTS nodes

MSmits: my state is: 5 bit per pit = 60 bit

MSmits: then 4 bits left over

MSmits: for the max 1 pit that has > 30 seeds

struct: marchet you ever tried to calculate value of childs with avx?

struct: to get the best one

Marchete: hmm,no, not in boards

Marchete: maybe you can do it in sim games

MSmits: did you want to avx oware Marchete?

Marchete: noooo

Marchete: I wanted to do AVX for Convolution layers

MSmits: i think I have one of the fastest implementations for sim in oware, but no avx

Marchete: my sim is ugly and buffy

Marchete: buggy*

MSmits: I do a bunch of lookups, little ones (cache efficient)

inoryy: but does it slay vampires?

Marchete: I hate oware rules more than PCR sim

Marchete: oware = you can move, yes, but then it's invalid and game is ended

Marchete: you can sow but can't capture

Marchete: a lot of yes but no

MSmits: meh, i hate pcr more. But think about my boardstate and how i have 4 bits leftover for >31 seed pits, think about how complicated that sim becomes :P

Marchete: I prefer to use 128 bits for board + score

Marchete: 64+16 vs 128

Marchete: I don't know

MSmits: i like to have a cache of 40 million nodes :P

MSmits: and reuse tree, for the whole game

Marchete: how do you reuse nodes?

MSmits: i just check the state

MSmits: if it's the same as one of the children of the root, i take it as the new root

Marchete: you don't reuse nodes, then, no?

MSmits: yeah i do

MSmits: thats reusing nodes

Marchete: how do you keep track of that?

MSmits: the root is just the pointer to one of the nodes in my cache

Marchete: I splitted the big array of node on smaller parts

MSmits: when i play a move, i change the root

Marchete: like 1 per depth

MSmits: nah, why do that

MSmits: just make a nodes[40 million]

MSmits: or whatever fits

MSmits: let me share my node, sc

MSmits: sec

Marchete: I have like 6million nodes, without gamestate :)

MSmits: http://chat.codingame.com/pastebin/3522e412-71cc-4105-8b21-9524cedfa5c2

Marchete: Cache Manager. Size:347MB - 5700000 nodes splitted in 57 blocks

Marchete: you change turn, you search your move + enemy move

Marchete: have a match

Marchete: then you set that as root

Marchete: root->parent = nullptr;

MSmits: my nodes dont know their parents

MSmits: they dont need to

Marchete: how do you backpropagate?

MSmits: Node* selectedNodes[200];

MSmits: i store the pointer

MSmits: during selection

MSmits: http://chat.codingame.com/pastebin/183fb07b-3bdb-4893-8659-dca90372d5db

MSmits: i dont even backpropagate

MSmits: i forward propagate, if you mean the order in which i increment

MSmits: it doesnt really matter as long as you do the signs correctly

Marchete: it's a good idea

Marchete: I know

Marchete: but you don't "recycle" nodes,no?

MSmits: i think you overthink the tree reuse

MSmits: i do

MSmits: let me show you

MSmits: http://chat.codingame.com/pastebin/3d446e5e-f45d-4beb-b3ad-c11bd2a1ac09

MSmits: so i check all the children of the last root, see if any correspond with the current gamestate and then i set that node as the current root

Marchete: childMax is childCount right?

MSmits: yeah

Marchete: the current root I get it

MSmits: oh i also change the root when i play a move

Marchete: but you reorder or smth?

MSmits: so the root gets changed twice per turn

MSmits: no

MSmits: the nodes are just all over the cache

Default avatar.png dudeOnGitHub: spam

MSmits: until its full

MSmits: then the whole thing gets reset

Marchete: what reset means

Marchete: lost all infor?

Marchete: info?

MSmits: yes, this happens when the full object pool is used

MSmits: you can also start at index 0 again and not reset

MSmits: and hope it doesnt yet need nodes that have been overwritten

MSmits: thats risky

Marchete: no

Marchete: that doesn't work

Marchete: trust me

MSmits: i used it before in uttt

RoboStac: thats how all my mcts bots work

MSmits: the reset happened at ply 20-30

Marchete: without reset?

MSmits: yeah he restarts and doesnt reset

MSmits: as long as none of the older nodes are still in use, its fine

MSmits: and you dont get to ply 30 on turn 1

MSmits: so thats usually ok

Marchete: I was splitting all nodes in different arrays of nodes

MSmits: the faster your bot get the riskier it becomes

Marchete: then mark the arrays unused

MSmits: nah dont do that

Marchete: it works but probably slower than yours

MSmits: for one, the gain of tree reuse is marginal

MSmits: it helps more in games with low branching

MSmits: in oware admittedly it helps more

MSmits: but still, the game has branched twice since your last turn

MSmits: think of how few visits will still be in that branch

Marchete: between 8% and 90%

Marchete: I got stats

MSmits: yeah in oware it is a lot more

Marchete: on my buggy bot

MSmits: but in uttt its pretty crappy

Marchete: Visits:3130/11746 = 26%

Alshock: un UTTT my reuse was about a few percents

Marchete: Visits:45738/52013 = 87% --> At that time I already lost :)

RoboStac: theres still enough turns in UTTT with only 1 or 2 good moves that it makes a big difference

MSmits: well there's also a price to pay for tree reuse, that you may not realize

MSmits: you get cache efficiency for not reusing

Marchete: why

Marchete: contiguous?

MSmits: because if you reuse, your nodes are much more spaced out

MSmits: yes

RoboStac: not massively, it's still going to spread out very quickly

Marchete: then yes

MSmits: i have no idea how strong this effect is

MSmits: but there must be some

Marchete: neither me, I tried the fastest reuse with low precached nodes

MSmits: in any case, having to reset halfway through the game is no big deal

MSmits: if it's just 1 time

Marchete: splitting in "levels" seemed the faster to me

MSmits: never tried this, but as i said, the smaller your nodes become, the less of an issue you have to solve

Marchete: but probably raw power and 1 reset can be better long temr

Marchete: term

MSmits: there are only a few games that require a reset

MSmits: bandas is notorious for this

MSmits: you do so many sims, you might run out

Kitkat260: which lang is easier to code?

RoboStac: bandas is a pain because it has infinite cycles and always has 4 moves

Kitkat260: ....

MSmits: yeah, but if you use an endgame book, most of those cycles disappear

Marchete: python3

Kitkat260: thx

RoboStac: yeah, but then I'd have to write an endgame book

MSmits: yes, i thought it was fun though :)

MSmits: got up to 3x4

Marchete: I'm trying to do some more generic MCTS, not ultra tuned for certain game

MSmits: darkhorse always uses the same generic mcts

Marchete: I see the no parent interesting

MSmits: i always end up with a different mcts, because i somehow go with the input structure

Default avatar.png JBM: thor keeps going off the screen

struct: generic code is good if you want something coded fast

Default avatar.png JBM: this is too hard

MSmits: sometimes you're always p1, sometimes the index is given etc

Marchete: print -3*vel, it works fine for thor

Marchete: you can do overloads

Marchete: I'm trying to do that

ZERIH08: hi

Marchete: but for the most performance

Marchete: it's not the best

MSmits: btw Marchete, oware also has endgame books

MSmits: I go up to 9 seeds comfortably, 10 seeds with some crazy workarounds

MSmits: and they are not stored in codesize

MSmits: so goes easily with nn :)

Marchete: "and they are not stored in codesize"

MSmits: nope

Marchete: what that means?

MSmits: 500 ms

MSmits: for a 9 seed db

MSmits: fully calculated

Marchete: ahhhhh

MSmits: also including the game turn as a variable

MSmits: so we're talking like 10 million entries

MSmits: it may give a different result on turn 190 than turn 180

Marchete: but then you don't have space for MCTS nodes

MSmits: why not, I store 1 result in 5 bit

MSmits: -15 to +15 seeds

MSmits: so dont need more

Marchete: tbh I don't use endgame books at all

Marchete: and barely any opening book

MSmits: opening books arent that great really, unless you specifically counter a deterministic opponent and thats cheesy

MSmits: endgame books in bandas are strong and also help in oware

MSmits: i am doing a uttt opening book experiment now, doing cg bench test every 1 million meta mcts games

MSmits: so about once a week

MSmits: so far, 3 million games, no net gain

MSmits: except for 1 guy, who it turns out, also has an opening book :P

Marchete: I prefer to copy your openings :D

Marchete: just clone all your moves and good to go

MSmits: this works

Marchete: that's cheesier :D

MSmits: when i still had my othello counter book that always drew games against oldjohn, you could just copy 1 game of us and play the same moves vs me, guaranteed draw

Marchete: :thinking:

MSmits: basically perfect play from both sides

MSmits: but just for that specific line of play (and abount 1k other lines)

MSmits: about

MSmits: but as i said, i turned it off, now i am just generating the book by uct, to get rid of the guilt of this cheesy way of playing :)

struct: All the games I ported are bookable :(

struct: I need to move amazons from wip

struct: I think

Marchete: how do you tune C and FPU on MCTS, Smits?

Marchete: I struggle with these

MSmits: FPU?

Marchete: first play urgency

Marchete: visits == 0

MSmits: C is just 1.0 usually, very rarely it's 1.2 or so

Marchete: or do you just play any visit==0 child?

MSmits: i havent gotten any use from fpu, i dont think i did more than 1 experiment though

MSmits: yeah i tried random first

MSmits: or first first

MSmits: works the same unfortunately

MSmits: also, if you eval all children on every expansion, then there is never a visits = 0 child

MSmits: they all start at 1

Jeanpier: gaaa

MSmits: i eval all on oware, bandas, onitama, yavalath. Not on uttt though

Marchete: I put all those in visits ==0

MSmits: when i eval all children the children also get their own score

MSmits: thats technically a visit

MSmits: so it's visits = 1

Marchete: hmm, but it's not expanded

MSmits: no, so i expand at visits = 1

Marchete: ah, visits==1 expansion

MSmits: yeah

MSmits: btw you can take this further

MSmits: darkhorse in bandas, expands 16 children

MSmits: so he skips a layer

MSmits: because you have 4x4

MSmits: i tried this, no benefit for me

MSmits: also very messy

Marchete: like DUCT and similar

MSmits: yeah thats also messy

TRAFFICCONE: hello

MSmits: hi

TRAFFICCONE: how are you

MSmits: I'm good, you?

TRAFFICCONE: good

MSmits: great

struct: Astrobytes and Scarfield any of you here?

Marchete: Assertion `child->parent == this' failed.

Marchete: great!

Scarfield: yea

MSmits: huh, why would something be its own parent

struct: Tbali said he can join wednesday or thursday for escape

MSmits: isn't there a time travel movie about this

struct: How would it work MSmits?

Scarfield: kewl, i should be able either of the days

MSmits: struct, i dont mind explaining, but i dont want to ruin your innocence

BlaiseEbuth: "Predestination" MSmits

MSmits: it;s a really f-ed up movie

MSmits: yeah thats it

MSmits: google it if you want to struct

struct: oh its for 16+, I cant watch it

MSmits: better if you don't :)

Scarfield: Futurama Fry is his own grandfather iirc

DestinyBrown: hey

BlaiseEbuth: The guy is His own father and mother

MSmits: yeah

struct: spoilers

MSmits: well

MSmits: i guess so

MSmits: it's a pretty old movie though

MSmits: well 10 yrs maybe

AntiSquid: there's dota cartoons on netflix lol

BlaiseEbuth: Yeah. 8 years

MSmits: i saw that AntiSquid

MSmits: a few episodes

MSmits: they were ok

MSmits: if you're bored...

Default avatar.png a.fitzy98: Hey, where do you find details on the challenge?

MSmits: it's secret

MSmits: so you can't prepare

BlaiseEbuth: shhh

MSmits: you just know it's 10 days and its a bot game

Default avatar.png a.fitzy98: Ohh I thought it was already released

Default avatar.png a.fitzy98: ok cool thanks

MSmits: oh 11 days now

inoryy: I mean you can still prepare by doing multis if you've never participated before

MSmits: yeah, but dont pick the really simple multi games, contests are never that simple

struct: You should prepare :zipper_mouth:

MSmits: preferably pick the ones that need some pathfinding, like bfs

Astrobytes: struct and Scarfield: Thursday sounds good for me

struct: Same time as last time?


BlaiseEbuth: Ze time

MSmits: hey , what are you guys doing

Scarfield: sure, how about asking zeno, he seemed interested?

BlaiseEbuth: Pew pew!

Default avatar.png a.fitzy98: By multi do you guys mean multiplayer games? And the task is to create a bot to play the game? I have never taken part in anything like this before

struct: Sure, the new escape is 2-6 people

MSmits: a.fitzy98 yes

struct: MSmits Im doing bot programming

Default avatar.png Uxie: I have no idea how to code or read code... where do I start? I'm looking at the easy puzzles but I have no idea what I'm reading

Default avatar.png a.fitzy98: bf = battlefield? Thanks btw

BlaiseEbuth: ^^

inoryy: :joy:

Scarfield: bfs breadth first search ;)

MSmits: a.fitzy98 you could take a look at: https://www.codingame.com/multiplayer/bot-programming/fantastic-bits

BlaiseEbuth: battlefield is cute

Default avatar.png a.fitzy98: I am going to do well in this I'd say :joy:

MSmits: or https://www.codingame.com/multiplayer/bot-programming/spring-challenge-2020

Astrobytes: what time was last time struct? (I already forgot lol)

BlaiseEbuth: Ze time

struct: I think it was 8 CET

Default avatar.png a.fitzy98: Thanks guys lol

inoryy: don't worry, literally everyone you're talking to started from your position at some point, a.fitzy98

Scarfield: ^

Astrobytes: ^this

struct: or 20 GMT

MSmits: a.fitzy98 if you have some programming skill, just the basics, you can usually pass the first wood leagues and have some fun doing it

Astrobytes: Yes that's cool for me struct

Scarfield: me as well

BlaiseEbuth: Of course

Default avatar.png a.fitzy98: Cool will give it a go cheers

struct: ok I will ask tbali

Astrobytes: cool beans. I can do pretty much anytime that day if he can't make that time

ZarthaxX: howdy

MSmits: hey

ZarthaxX: hey smito :*

struct: hi ZarthaxX

ZarthaxX: many ppl today

KiwiTae: ZarthaxX and meeee

MSmits: zarthy

KiwiTae: o/

ZarthaxX: hellou guys

KiwiTae: MSmits hellou

Scarfield: Zarthoo

MSmits: hi KiwiTae

ZarthaxX: structo :* kiwo :*

ZarthaxX: scarfoooooooooooo

KiwiTae: that bear is famous

ZarthaxX: im a fox

BlaiseEbuth: What bear

BlaiseEbuth: Zarthouille!!!!!

MSmits: you were a bear before werent you?

KiwiTae: #bringbackthebear

ZarthaxX: BlaiseEeeeeeeeeee

ZarthaxX: i will bring it back for contest :P

ZarthaxX: yes smito :rofl:

MSmits: as if i needed yet another reason to be in this contest

MSmits: cant miss the bear

BlaiseEbuth: Yeah, the t-shirt lack was enough

Astrobytes: ZarthoxXy o/

ZarthaxX: :rofl:

ZarthaxX: hey AstroBit

Scarfield: AstroNibble

ZarthaxX: :rofl:


Astrobytes: BistroBytes

MSmits: Astrobytes, do we need to explain the game to you

MSmits: you're supposed to give *them* names

Astrobytes: Yeah I know, I like to compete

MSmits: mmh ok :)

Scarfield: trying to 1up a name is acceptable

Astrobytes: ^ see, Scarfupmanship here gets it

Scarfield: though the rules admittedly is unwritten

Scarfield: are*

Astrobytes: Who needs rules. Or statements :P

Scarfield: not ceg

MSmits: he does

H7: What kind of Spring Challenge 2021 contest?

MSmits: he has a rulearray

Astrobytes: :rofl:

MSmits: H7 unknown, just that it's probably a bot game

Astrobytes: H7: Bot programming is all we know for now

MSmits: you'll get maybe 1 or 2 hints from a trailer, the days leading up the 6 may

MSmits: up to

Smelty: o . o

struct: Can it be a optimization one?

MSmits: no idea

MSmits: usually it's bot game, i dont know if they would tell us if it was optim

MSmits: the last optim was a weekend contest

inoryy: you can treat bot contests as optim, don't let society limit you

Astrobytes: :grin:

MSmits: yeah, the opponent is just another variable

MSmits: just optimize them away

inoryy: this is the way

Astrobytes: The real Zen of botting.

MSmits: hey inoryy, are you involved at all with muzero?

MSmits: i thought it is quite cool

inoryy: MSmits nope, not involved at all

MSmits: ah ok. I really like how a paper gets shared with some pseudo code and then implementations pop up all over that you can just try out for yourself

MSmits: i get turned off by all those package requireements and such, but the fact that it's accessible at all is nice

inoryy: yeah, it's really cool to see community excited enough to re-implement it :)

MSmits: really shows you the power of an idea. The fact that something is possible is almost enough to recreate it

MSmits: tell someone x can be done and they will do it

jacek: but not enough power to do it :(

MSmits: well thats true, but you can do it on a smaller scale

MSmits: a small environment requireing a simple network to understand

MSmits: muzero is so special, because a muzero bot will actually sim the game in a way that's not consistent with the game rules and this may lead to better result

MSmits: just like when you throw a ball, you dont know the exact physics calculations, but you model of physics is good enough

MSmits: your

Scarfield: assuming i can hit something with a ball? :p

MSmits: yeah, sorry, i meant in general. There are exceptions

Scarfield: xD

Scarfield: but it has to at least indirectly learn the rules, to play by them? i could easily win at chess if i just ignored the rules i mean

MSmits: I think it knows the possible moves to play on the current turn

MSmits: it gets told that

MSmits: but it doesnt know what happens after thart

MSmits: the model is learned concurrently with the policy and value parts of the network

MSmits: so when it builds the tree, it will often not be entirely correct

MSmits: some moves will be so bad, it might consider them not part of the possible set of moves

MSmits: (or something...)

Marchete: do you think muzero has any use on CG?

Marchete: I think it's just for bigger environments

MSmits: might be too complex for cg, but we've been wrong before

MSmits: there's free implementations of muzero

MSmits: you can download them and test for connect 4

Marchete: I see alphazero

MSmits: and also othello i think

Marchete: for CG

Marchete: but not muzero

MSmits: i found some, let me refind sec

Marchete: but what NN size?

MSmits: https://medium.com/applied-data-science/how-to-build-your-own-muzero-in-python-f77d5718061a

Marchete: sometimes they have connect4, the 6x7 or whatever the standard size

inoryy: wrt compute / power requirements you might find this paper interesting https://arxiv.org/abs/2104.03113

Marchete: and 5MB NN

inoryy: scaling laws is pretty big topic in deep learning in general atm

MSmits: thats cool inoryy

jacek: could simple MLP be used instead of convnets in muzero?

Default avatar.png Shree007: I am new to coding game

Default avatar.png Shree007: How to play it

Marchete: free paper! :D

MSmits: dont know enough to answer that. But convnets are good because parts of your board interact with neighbours more strongly than with far away parts of the board, right?

MSmits: so you use filters similar to what is done with images?

MSmits: maybe i got this wrong

**Marchete looks at inoryy_

jacek: so far MLP is good for my purposes

MSmits: well MLP should be able to do anything, but it might not do some tasks as efficiently as convnets

inoryy: muzero isn't tied to NN architecture, though you'd probably struggle to reproduce image-based results like the Atari from pixels performance

MSmits: so it might work well with oware

jacek: just like alphazero i suppose then

MSmits: convnet does not make sense to me with oware

jacek: im using a0 like without policy anyway

Marchete: indeed

jacek: so maybe next step will be mujacek

Marchete: I don't really see the benefit on CG

MSmits: that's a jacek with no human input and no idea about the game rules

struct: By the time I learn NN the new thing will be released

Marchete: maybe put that muzero on a challenge, go to sleep and in 5 day you have a winning bot

MSmits: Marchete from what i understand from the papers, muzero has similar performance to azero on games where azero has been tested

Marchete: days*

MSmits: the strength is in other applications

MSmits: like, building a model of an unknown environment

MSmits: like a robot exploring a space

Marchete: that's what I'm trying to say

MSmits: yeah, you're right

Marchete: CG has strict, written rules

Marchete: no open spaces and that

inoryy: muzero shines as a model-based agent, e.g. where env simulation is very expensive or even impossible

Marchete: maybe as a proof of concept

Marchete: who knows

jacek: well its about seeing if it works

Marchete: I see muzero working on PCR

Marchete: tons of chips

MSmits: yeah might be nice

Marchete: where "image" is important

MSmits: or fantastic bits

jacek: you can do perfect tic tac toe with few ifs, but if the goal is to learn minimax, you'd use minimax there

Marchete: I learn what I can make use of it

jacek: greedy

Marchete: I think I can use alphazero, actor critic or similar

Marchete: for muzero I see little use

MSmits: in board games, yes

Marchete: in CG restrictions

MSmits: might be good for chaotic, hard to sim games maybe?

MSmits: maybe meanmax ?

Marchete: I think a0 does it

MSmits: yeah i guess so

ShortBaited: Automaton2000 say something funny?

Marchete: maybe better with Conv layers

Automaton2000: but u can get to a higher league

MSmits: I still have a nonworking smitismax for meanmax i never finished

MSmits: the algo should work

struct: Other player actions dont affect your possible actions?

Smelty: o.O

MSmits: they affect the result of your actions

MSmits: but not your possible actions

MSmits: like csb

struct: I see

MSmits: you can get pushed around but still get to use the same actions

struct: Yeah, I thought it was like FB

MSmits: its not 100% sure though

MSmits: there are some effects from special abilities

MSmits: so you make some assumptions

Marchete: the hard part are the "spells"

MSmits: yeah i would just allow them at depth 0

Marchete: yeah

MSmits: and not in deeper layers

Marchete: like me

MSmits: i do the same in csb

struct: you do smitsi on mean max marchet?

Marchete: I always have a different children creation

Marchete: for turn ==0

Marchete: no

Marchete: only on Xmas and PCR

MSmits: me in pcr, xmas, csb and an early version of it in kutulu

MSmits: should improve that version one day

MSmits: it's a C# bot with a bad eval, still got 4th :)

Marchete: kutulu was the first one, right?

MSmits: yeah

MSmits: i liked your post about the yoga mats btw

MSmits: i got the same search result

Marchete: based on a true history

MSmits: i was gonna say something about google thinking you're interested in yoga

MSmits: then i did the same search and it showed me that too

jacek: :?

MSmits: if you google uct forest jacek

MSmits: daporan used it in his contest win

MSmits: it's the same as smitsimax basically, but he calls it that, which is fine. It's more descriptive

jacek: University of Cape Town?

MSmits: just multiple uct trees

Marchete: that's you, jacek?

Astrobytes: Yeah, I kinda like the name. Descriptive as you say MSmits

jacek: uhm

Smelty: */kill Smelty

**Smelty dies

Astrobytes: But you could call it Johnny's Mega Thing or something, wouldn't matter much

MSmits: they have hotlines for that Smelty

MSmits: well it would matter a little bit. It would tell me johnny is insecure about the size of his thing

Astrobytes: Trust you to lower the tone :P

MSmits: :P

struct: "Premature optimization is the root of all evil." -- Donald Knuth :(

struct: Even Stackoverflow is making jokes to me

MSmits: yeah, you're probably the only one who does this even worse than i do struct :P

Astrobytes: And you live by it struct!

struct: I was googling something and that shows in the answer ...

Astrobytes: It's a sign

MSmits: yes, google is getting better

MSmits: it showed us yoga mats earlier

Astrobytes: Messages from Knuth.

MSmits: knuth will always be the dancing links guy to me

MSmits: what a great algo

jacek: or dancing sort

MSmits: dont

MSmits: dont link it

Andrew-H:

Andrew-H:

Andrew-H:

Andrew-H:

Andrew-H:

Astrobytes: Andrew-H: stop it or get kicked

jacek: :(

MSmits: oh fine, link it

MSmits: but i am not clicking it!!

jacek: https://www.youtube.com/watch?v=dQw4w9WgXcQ

MSmits: damnit

MSmits: i thought you were going to link the dancing folk sort thingy

MSmits: my colleague always makes links like that in our teaching materials

MSmits: it will say: "The answers to the next test: here"

jacek: id like to meet him

MSmits: he's fun

Astrobytes: Not very antisocial of you jacek

Busting: wasup g

MSmits: I can link a YT video of him explaining how to code a python TTT bot

jacek: :angry:

MSmits: i mean TTT game btw, not bot

Busting: what yall talking about

Astrobytes: That's better jacek

MSmits: various things

Busting: such as?/

MSmits: yoga mats

Astrobytes: Stuff. Things. Suchlike.

Busting: sheeesh

Busting: i had a yoga matt once but my fish ate it

MSmits: dont store yoga mat in fish tanks

MSmits: also i did not mean a yoga named matt

Busting: i didn't knew

Busting: i call my yoga mat matt

Andrew-H: Do you guys know Candice?

Busting: fuk u

Busting: no andrew

Astrobytes: Ban next time.

jacek: what a game https://www.codingame.com/share-replay/541648486

MSmits: nice one, I noticed games between good players last a lot longer

jacek: its somewhat bugged

Busting: ok im more civil

Busting: jacek wanna know my favorite tea?/

jacek: earl grey, hot?

Busting: you shawtea\

Astrobytes: Jeez.

MSmits: I didn't get it, but I guess thats good

Busting: ty

Busting: do u get payed good if u have a job to code

Astrobytes: I've never coded a job.

MSmits: better than most jobs, worse than some

MSmits: produced a lot of jobbies though

Astrobytes: :rofl:

Astrobytes: Well played sir, well played

MSmits: 1 jobbie a day keeps constipation away

Scarfield: xD

Busting: lol

Astrobytes: hahaha

Busting: hes not wrong

Kitkat260: hi

Busting: sup daddy

Kitkat260: how r uu

Busting: gybtfr5v486 79o


Kitkat260: ggjja78jgy

struct: stop spamming

Kitkat260: ???


Busting: its not spamming if i did it once

Astrobytes: Busting is already on a ban warning

struct: you were talking gibberish

jacek: Automaton2000 ?

Automaton2000: you dont even know what that means

Busting: astro y expose me like that

Kitkat260: actally

Busting: imaging being mod

helenabjalkovska: keysmashing isn't spam

Kitkat260: Lmao

helenabjalkovska: mod abuse

Busting: imagine*

MSmits: mmh you're going to unleash the astro soon =/

struct: oh no mod shaming

struct: What will I do

Astrobytes: ikr

Busting: can mod mute

MSmits: mod can ban

MSmits: which is the same

struct: yes I can mute you

MSmits: more or less

struct: ^

Busting: lol weak power

struct: not as weak as your bait

Astrobytes: ^

Busting: thats just sad

Busting: ur a mod how dare u

Scarfield: he already has a warning, why postpone it?

Busting: weres ur boss i need to talk to em]

Astrobytes: Go right ahead.

Default avatar.png kresteodymium: hello world

Busting: who yall boss

struct: Ill give you my boss email

Default avatar.png kresteodymium: hi Busting

struct: You should see it soon

Default avatar.png kresteodymium: hi struct

Default avatar.png kresteodymium: hi Astrobyted

Default avatar.png kresteodymium: *s

Default avatar.png kresteodymium: wassup

MSmits: kresteodymium, type ast then hit tab

Default avatar.png kresteodymium: o nice

Default avatar.png kresteodymium: didnt kno that

Default avatar.png kresteodymium: thx!

MSmits: np

Default avatar.png kresteodymium: :)

struct: Some soccer drama

struct: I guess I know what the news will be on the next few days on portuguese channels

Astrobytes: European Super League stuff?

struct: yes

Astrobytes: Saw that earlier. Glad I don't bother following the game any more.

jacek: soccer eh

struct: TLDR: top teams created a new league to milk money

Astrobytes: Yep. That's it in a nutshell.

struct: No German or French teams though

struct: Not sure if any will join or not

Default avatar.png kresteodymium: soccer is epic

Default avatar.png kresteodymium: *football

Default avatar.png kresteodymium: lol

Default avatar.png Myco: Hello?

ShannonNorris97: Has anyone got any decent resources about iterative deepening with minimax? The stuff that I'm finding seems completely different

jacek: hm?

jacek: what did you find

ShannonNorris97: I'm just skimming to find some decent resources, but it just seems like it's own algorithm completely, so I'm not sure if I'm looking at the right thing

jacek: well its more general for DFS search

ShannonNorris97: Ah okay, and then it combines with the minimax algorithm in some way?

jacek: yes, as minimax is some sort of DFS anyway

jacek: I dont know about decent resource for that

Astrobytes: doesn't Carolus have an ID section?

jacek: maybe page 16 https://homepages.cwi.nl/~paulk/theses/Carolus.pdf

Astrobytes: :)

ShannonNorris97: Thank you - I'll take a look :)

jacek: sounds trappy https://athena.ecs.csus.edu/~gordonvs/papers/trappy.pdf

Astrobytes: Oh, don't think I've read that paper jacek

jacek: neither did i, just found some random minimax things

jacek: yahoo, that gives some memories

Astrobytes: lol indeed

busting2: how do i get unban

jacek: delete system32

Default avatar.png SmallRad: how do i delete system32?

KiwiTae: SmallRad

Default avatar.png SmallRad: ye?

KiwiTae: open shell and : rd /s /q "path"

KiwiTae: but i dont recommand

Default avatar.png SmallRad: oh ok

Default avatar.png SmallRad: yolo

struct: o.o

KiwiTae: :innocent:

busting2: struct

busting2: unban busting

Astrobytes: /ban

busting2: no

busting2: dont ban me

busting2: ban yourself

struct: I tried

busting2: :rolling_eyes:

struct: You asked for the email I got you the email

BlaiseEbuth: Ah yeah. You're banning people without invite me !

Zenoscave: How's the ban hammer working

BlaiseEbuth: Pew pew!

Zenoscave: pewpew

Smelty: pewpew \===== - - - - - - - - -- - -

Default avatar.png Secret_sister2: ( う-´)づ︻╦̵̵̿╤── \(˚☐˚”)/

**Smelty was killed by Secret_sister2 using an assault rifle

Default avatar.png dannybai2020: pew pew pew hahaha

**Smelty respawns

Smelty: (⌐▀͡ ̯ʖ▀)︻̷┻̿═━一-

Astrobytes: wtf

Astrobytes: pewpewpew Zenoscave

Zenoscave: pewpewpew Astrobytes

Astrobytes: BlaiseEbuth: sorry dude, ping ya next time

KiwiTae: pezpez zeno

Zenoscave: zepzep KiwiTae

KiwiTae: failed

KiwiTae: xd

KiwiTae: you guys solved this one? https://www.codingame.com/ide/puzzle/divisibility-of-fibonacci-numbers-sum

Zenoscave: not yet

Zenoscave: 1st gold C4l

ZarthaxX: nice pewpew

Scarfield: https://youtu.be/fl0wIdGxfbQ?t=3

Zenoscave: thanks Zarthie

KiwiTae: noice

Astrobytes: oh cool zeno, what are you doing? Minimaxing approach?

Zenoscave: ok bye all I gotta work. Nope FSM

Astrobytes: Ah right, thought there was something special going on :D

Astrobytes: Laters man

Zenoscave: Not yet :) Might sim later in Legend

Astrobytes: Seems doable. Fiddly game it is.

ZarthaxX: scarfo LOL

Scarfield: xD

Astrobytes: StarWarsPewField

Astrobytes: PewthaxX

Scarfield: IncomeTax

Scarfield: copyPasteroBytes

Astrobytes: What did I copypasta?

Astrobytes: "IncomeTax" :rofl:

Scarfield: nothing(?) i just got the idea for the name

Astrobytes: It makes my teeth itch. PastaBytes I can live with

Astrobytes: Or PastryBites

Scarfield: PastryBites xD

Scarfield: i wish you could give others nick names, so you would see that instead of the actual name in chat, you would be PastryBites

Astrobytes: :rofl:

Sparky610: Hi

jacek: good evening

AntiSquid: itchy teeth? honey comb candy ?

Astrobytes: https://letmegooglethat.com/?q=makes+my+teeth+itch+meaning

AntiSquid: well it literally made my teeth itch whenever i tried it lol

jacek: those british teeth...

Default avatar.png Secret_sister2: (ノ-_-)ノ ~┻━┻

AntiSquid: european

Zenoscave: Damn European teeth

Zenoscave: WFH is hard

Astrobytes: lol, distracted much zeno

Astrobytes: AntiSquid: 30 second review from you please - Neon Genesis Evangelion

jacek: WFH?

AntiSquid: my first day of WFH after a while lol

Astrobytes: working from home

AntiSquid: working from home

jacek: its about puberty ~

**AntiSquid tumbleweeds and crickets

Astrobytes: That good eh

Astrobytes: Thanks. Someone recommended it.

Zenoscave: https://images.app.goo.gl/kNtuzw6bT2rA9FrAA

AntiSquid: ah was replying to jacek's puberty joke, Astrobytes

Zenoscave: just a little distracted

Sparky610: aaaaaaaaaaaaaaa

jacek: joke?

AntiSquid: as for the anime, it's some emo kid who gets bullied and for some reason has social anxiety even if not bullied, the ending kills all the story for me, they fight hard for nothing @_@ Astrobytes

Zenoscave: AntiSquid Cruel Angel's Thesis is playing in your head now

Zenoscave: yw

AntiSquid: ah you replied to neon genesis evangelion jacek ? sorry, thought you were refering to the WFH thing

Astrobytes: Sounds pointless. On my don't bother list

Zenoscave: Serial Experiments Lain is much better

Zenoscave: ^ Astrobytes

AntiSquid: i agree with what jack said btw, it's true, Astrobytes

AntiSquid: i don't get the point of serial experiemnts lain ... imo better watch Stein's Gate;

Astrobytes: Yeah, figures. Thanks for the opinions guys, knew I could trust you all

jacek: try boku no pico!

Smelty: . 0 .

AntiSquid: lol

AntiSquid: change avatar orientation so he doesn't recognize you after watching it, jacek

Astrobytes: eh naw, you're alright thanks

Zenoscave: jacek wtf are you mentioning piko here for

AntiSquid: if Automaton2000 made an anime it would probably have story elements from boku no piko

Zenoscave: we have *standards* here

Automaton2000: how many languages do you know when i will be

YaoKim: yo dudes if i wanna sort descending, should i use > or <

jacek: isnt this anime to introduce to people who have never watched anime

Zenoscave: depends on what is on which side of the >/< YaoKim

AntiSquid: i think the moe stuff is bad enough already

jacek: what language?

AntiSquid: what did you watch so far Astrobytes that you liked?

AntiSquid: and neon genesis evangelion has amazing opening for sure

AntiSquid: the theme song is all it has

jacek: opening? ms would love it

jacek: also, maybe youll find something here https://myanimelist.net/animelist/ashiren

AntiSquid: is that your MAL account?

Marchete: lol

jacek: eeyup

AntiSquid: where's your overthetop CSS styling ?

AntiSquid: they removed mine

jacek: the what

Astrobytes: Nothing really other than random mecha stuff, Akira, and er the Project A-Ko series thanks to an old friend back in the day (a programmer) I'm not into it really. But good is good.

AntiSquid: you didn't see many MAL lists did you? everyone has some outrageous flashy style added to their lists

jacek: meh

BlaiseEbuth: Mine was not flashy

AntiSquid: this one is mild for example : https://myanimelist.net/animelist/Cynder360

AntiSquid: (not mine)

AntiSquid: i gave lots of 1 ratings, kids would rage at me here too if i share mine

BlaiseEbuth: You did'nt like nothing

jacek: i dont rate, i just save for sharing

AntiSquid: Astrobytes watch Shokugeki no Souma and Yakitate Japan

Zenoscave: Has anyone suggested Gurren Lagan yet.

Zenoscave: Just to watch people shift uncomfortably

BlaiseEbuth: Kill la kill!

Astrobytes: Those look awful AntiSquid

BlaiseEbuth: Food anime... Why do I feel this is a little targeted ? :thinking:

AntiSquid: i thought so too until i've watched them Astrobytes

Astrobytes: Also I was exposed to Legend of the Overfiend

AntiSquid: haha

Zenoscave: I'd rather play code ala mode

struct: hard choice

BlaiseEbuth: tentacles...

struct: ah

struct: You could have said that first

AntiSquid: Mob Psycho 100 has awful graphics, but great story, so ..

Astrobytes: Urotsukidōji vs CalM? CalM, even if I have to play it for the rest of my life.

AntiSquid: Terra Formars has great graphics but one of the dumbest plots :D

AntiSquid: i rated 10 that one though :thinking:

Astrobytes: Anyway, enough of this weeb stuff.

Astrobytes: :P

AntiSquid: woah !!! let's come up with some slurs for western cartoons too, for equality

Astrobytes: whitey toons

AntiSquid: Aeon Flux was great btw

AntiSquid: ugly but good story

Astrobytes: Yeah I think I know that, even if I didn't watch it all

AntiSquid: Afro Samurai is about a black guy, created by jap studio and has western style to it

AntiSquid: 10/10

Astrobytes: sounds odd

Default avatar.png JBM: 10/10=1

Default avatar.png JBM: yup, it's odd

AntiSquid: lots of gore, great story imo

Scarfield: makes me think of Beverly Hills Ninja for some reason

Astrobytes: oh hey JBM, didn't see you for a bit. How's it going?

Default avatar.png JBM: same old

Default avatar.png JBM: maybe more bored

AntiSquid: your avatar is also a 10/10 JBM

Astrobytes: Yeah, I feel that

Default avatar.png JBM: been streaming the shit out of the inlaw's ISP

Astrobytes: Hah, visiting time is it

Default avatar.png JBM: how was sf42?

Astrobytes: was actually quite fun

Astrobytes: Wish I'd joined earlier

Astrobytes: Scarfield: respond to your forum tag

struct: It was good

struct: Just no time

AntiSquid: trying to better prepare for contest: staring at tryangle game and switching to different tab to do something else, been doing this for a while now, it's the graphics @_@

struct: Legend or delete?

AntiSquid: there is no legend

Astrobytes: Only memories.

Astrobytes: struct: When do we get Amazons boss

struct: no time atm

Astrobytes: Should I make one?

struct: Maybe after the contest

struct: If I dont have to delete

struct: if you want to

Astrobytes: What kind of boss do you want? Low depth alphabeta?

struct: Whatever beats random

Astrobytes: Cool. Will come up with something

struct: Thanks

Astrobytes: No worries

Astrobytes: Scarfield: Thankfield

Scarfield: np, didnt know of that feature, hardly ever use the forum, but nice

Astrobytes: Yeah, it's not the best forum system tbh, some things are less than obvious

Astrobytes: It works though I guess

struct: omg

struct: Im stuck in a loop

Astrobytes: A thought loop? You been at the LSD again?

Astrobytes: (kidding ofc)

struct: Cant answer

Zenoscave: When do you think a w/r is enough to ensure you'll beat the boss???

Astrobytes: Aha. Gotcha.

struct: 100%

Zenoscave: 55%? 60%?

Astrobytes: 50+ against the boss I thiiiink?

AntiSquid: depends on the bots that are below the boss too

Zenoscave: true Anti

Astrobytes: Yeah, you need that certainty above anything else

Astrobytes: Ohh on the LSD note, happy Bicycle Day

MSmits: Zenoscave, anything that is above 50% is enough. Mathematically, you will simply promote anyone else that you have <50% winrate against

Zenoscave: Makes sense

MSmits: but you have to actually be certain it is above 50%. 10 games in a submit means nothing

MSmits: do a 1000 game CG bench and have it be above 53% or so

MSmits: then you can be fairly certain

Zenoscave: So N > 100 at least?

MSmits: depends on the margin you have

Zenoscave: gotcha

MSmits: if in 100 games you have 60% WR thats pretty good also

Zenoscave: Binomial P values and what not

MSmits: yeah, i go by gut feeling here, done enough cg bench to know to be careful

MSmits: theres free confidence calculators though

Astrobytes: stahp

Zenoscave: I have a physical one too

Zenoscave: ti-34X

Astrobytes: It's like being in biology lectures again

MSmits: ti-30Xa

Zenoscave: maybe that's the one I have

MSmits: 7Euro 99

MSmits: when i got it

Zenoscave: 35 USD :/

MSmits: ripped off

MSmits: but you might have something different

MSmits: mine is not graphical

MSmits: just a simple scientific calculator

MSmits: it has sine and stuff

AntiSquid: maybe it's import tax for the US

MSmits: blame trump

Zenoscave: Mine has basic stats stuff

Astrobytes: hm, I have a TI graphical one somewhere but it needs a battery. Stuck with my 2 fx-83GT+

MSmits: ahh ok

MSmits: i had a TI graphical one from work. It died in a few weeks cuz the batteries leaked

MSmits: never got a new one

AntiSquid: geez just get some software with sci calc

MSmits: yeah, i dont need that shitty thing

Astrobytes: fx-83GT has some stats stuff but it's quicker to do it on the computer tbh

MSmits: you know, in my country we actually use graphical calculators on math exams

MSmits: it's mandatory curriculum

MSmits: i hate that, just let them use a plain calculator and draw their own graphs

Scarfield: its a good business for calculator producers

Astrobytes: Interesting. I was only allowed a basic non-graphing calculator without solving capabilities

MSmits: if you want to be fancy with tools, get a laptop and use real software

MSmits: Scarfield definitely is

MSmits: TI designed a calculator with buttons for physics constants

MSmits: like planck constant and stuff

MSmits: but physics commission made it illegal to use in exams, so we dont use it :(

MSmits: come on, who wouldnt want a light speed button

Astrobytes: Well, you are given all constants needed during the exam usually no

MSmits: they get a 200 page table book

Astrobytes: But yeah, the light speed button :D

MSmits: it's in table 7

Scarfield: i would, if it was a read one in my car

MSmits: but it's cooler when it's built in

Astrobytes: True

Marchete: "illegal to use in exams"ç

Marchete: like you need to know constants?

MSmits: it's too easy when they only press a button i guess

MSmits: they want to force students to use the table book thingy

MSmits: but I want my lightspeed button :(

Astrobytes: Sure. When I did my higher physics exam I had to actually recite the Planck length in 4 different ways

Zenoscave: "Smol"

Astrobytes: (I didn't)

MSmits: the planck length is something else. Also... recite, it's not a poem i dont think :P

Zenoscave: That's 1 way right?

Scarfield: lol zeno

Astrobytes: hah

Scarfield: making a poem out of it would help with memorizing it though

MSmits: probably, but why would anyone need the planck length

Astrobytes: recite it's numeric representation - better MSmits?

MSmits: dont you mean plancks constant?

Astrobytes: I pulled it out of the air for joking reasons!

Astrobytes: Jeez, never joke with physicists

MSmits: ohhh ok, well i take you seriously when you go quantum

Astrobytes: :D

MSmits: cuz you seem to know more than the average biologer

Scarfield: oof

MSmits: :P

Astrobytes: Yeah I do, it's true.

Marchete: I even google how to do a loop

MSmits: do a loop?

Astrobytes: I'll make a more educated joke next time :P

MSmits: quantum loop theory?

Marchete: for loop

MSmits: o

MSmits: I have a perfect solution for you Marchete

MSmits: use FP languages. No loops

Marchete: FP?

MSmits: functional programming

MSmits: haskell etc

Astrobytes: Forgettable Problems

Marchete: haskell? ugh

MSmits: well it's just one example

Astrobytes: Recursion recursion recursion recursion recursion...

MSmits: I wrote oware web app in elm :)

MSmits: got a 10/10 for it btw!

MSmits: maybe i mentioned that before

MSmits: don't care :P

MSmits: first time i am actually proud of anything i did during my studies. FP is hard to learn

Marchete: I prefer to learn from your bots rather than elm web apps

MSmits: sure, but this was not voluntary, i had to do it to pass the class :)

Zenoscave: Hey Marchete. How's your bot

Marchete: average

Marchete: it seems to win

AntiSquid: fix it

Zenoscave: ezpz

Marchete: ezpz

MSmits: Marchete is this a NN already or are you just using any old eval?

Zenoscave: Wait which bot are we talking about

MSmits: oware bot

Zenoscave: Gotcha

Marchete: just old eval from minimax, limited to -1..1

Astrobytes: Yes, I noticed it was improving Marchete

MSmits: maybe you just need a better eval then though

MSmits: it's not that easy to write a good one

Marchete: negamax was 15th, jacek around 20th

Astrobytes: In fact it's kinda painful

MSmits: the top 10, maybe 15 are pretty well fitted

Marchete: I think I have a bad simulation

Marchete: it's hard for me to know who wins when

MSmits: i think you underestimate the strength of the oware top players

Marchete: I need to reuse either referee or Agad_e arena code

MSmits: competition has been pretty fierce

Marchete: underestimate?

MSmits: yeah 20th is not weak

Astrobytes: It's a hardcore lb

Marchete: hmm

Marchete: 20th?

MSmits: there's a lot of guys with similar strengths

struct: top 20 ezpz

MSmits: between 5 and 15

MSmits: i think

Marchete: I don't think 20th+ are specially powerful

MSmits: no, i am not sure where the limit is

Marchete: my bot is negamax + some eval

MSmits: but top 10 is quite hard to reach

Marchete: like I tried two evals

Marchete: one mine and another from github

Marchete: and picked the best

Zenoscave: I think I finally have my C# Test-bed/Development policy ready for MAy

Astrobytes: Yeah, that's about right, maybe 5-10-11, I didn't look at scores recently

Marchete: I'd say top 15

MSmits: Marchete did you fit the values?

Zenoscave: Just need gitlab Devops now

MSmits: or did you just pick a few sets and kept the best?>

Marchete: only 2 sets

Marchete: one mine

Marchete: and another from internet

MSmits: ah well that makes a big difference

Marchete: no fitting

Astrobytes: Going in proper Zeno :)

MSmits: we spent weeks tuning these

Marchete: I won't tune that

Marchete: I'll put a NN to do the magic

MSmits: top 10 unreachable for a normal negamax with no tuning

Marchete: I need to tune CONSTANT_C

Zenoscave: Yup!

Marchete: I don't really now how to tune it

Zenoscave: to 440 Hz

Marchete: and this is a problem for training

MSmits: You don't even need to tune it if you use normal eval

Astrobytes: C is the least of your issues

MSmits: because you can set it to 1

MSmits: and fit all the others

Astrobytes: Isn't that A zeno

Marchete: what is my issue?

MSmits: then the C is a free parameter basically

Zenoscave: Oh yeah, whoops

Astrobytes: :grin:

YurkovAS: good eval example for oware http://www.joansala.com/auale/strategy/en/

MSmits: with any set of parameters, you can set one to 1 or some other value and fit the others in relation

Marchete: I think I used that eval

MSmits: so just set c to 1

MSmits: I used that eval for my web app

Astrobytes: Yes as YurkovAS says it's a good starting point

MSmits: exactly that one

Marchete: <NNvalue[-1..1]> + ConstantC * whatever

Marchete: first is limited to -1 to 1

MSmits: but its wayyyy weaker than my live bots eval

Astrobytes: I can hardly read mine

Astrobytes: It's due a full rewrite/refactoring tbh

Zenoscave: Here's a question. How many of you try to keep coding standards and readability during a contest?

MSmits: try is the operative word

Astrobytes: Not as much as I do for multis

Marchete: it's exactly that heuristic

Marchete: https://github.com/joansalasoler/aalina/blob/7c7d0b27388c58b84edc2028277a71c3447329be/src/com/joansala/oware/OwareGame.java#L436-L464

MSmits: I *tr*

Marchete: what I used

MSmits: y

Zenoscave: I even try to handle Liskov stuff too

Zenoscave: SOLID etc.

MSmits: how many rollouts do you get Marchete?

Marchete: little

MSmits: also matters a lot

Marchete: because I need to store the gamestate

MSmits: well i store the gamestate on the node too

Astrobytes: DURING A CONTEST Zenoscave. I tip my hat

Marchete: I'd say 54k sim

MSmits: in turn 2 right?

Marchete: yes

MSmits: lemme do a test, sec

Zenoscave: Well I woudn't be a good TA for a class on SDLC's if I didn't Astro

Marchete: according to visits

MSmits: it's good to compare

MSmits: as soon as this ide loads, slow as hell

Astrobytes: Zeno: This is indeed, very true :)

MSmits: maybe because of the 25 kb opening book :P

Marchete: ....

Marchete: anyways I won't have a lot of simcount

Astrobytes: No, the Oware IDE takes ages to open

Marchete: I imagine the NN will take a lot of it

MSmits: seems about 220k visits

MSmits: but i expand all children, so thats about 4-5 visits

MSmits: each rollout

Marchete: I'd expect that you have like 800k or similar :D

Marchete: ahh

Marchete: 1M then

MSmits: no

MSmits: divide to get your result

MSmits: so only like 50k rollouts, but i eval all so its a bit more work

MSmits: counts as 1 visit for every pit

MSmits: this is why iget 220k

MSmits: so i dont think you're actually that slow

Astrobytes: I get 60-70k

Marchete: I'm probably counting badly

Astrobytes: But this version expands one at a time

MSmits: oh, that makes sense

MSmits: my eval is also quite heavy btw, it even has loops

MSmits: counting stuff over all pits and such

Marchete: do you priorize capture in some way on selection?

Astrobytes: Yeah I have a loop too

MSmits: selection is just based on UCT Marchete

Astrobytes: You can sure give it preference in your ewal

Astrobytes: or your eval

MSmits: http://chat.codingame.com/pastebin/372bfcb6-3d9c-4aa8-b801-535bea5a0fae

MSmits: its the same as every other bot basically

MSmits: i always do them like this, more or less

Marchete: what status mean?

Marchete: yeah

Marchete: seems similar

MSmits: solved or not

MSmits: -1 loss, 0 draw, 1 win, 2 ongoing

Marchete: hmm fastlogf(fastsqrtf

Marchete: no more lookup?

MSmits: nah, not because this is faster, but because i really hate the lookups

MSmits: this is a few % slower

Marchete: yeah I've had some problems

Marchete: when I have more visits than lookup

MSmits: i would artificially limit the rollouts to fix this

MSmits: and i dotn want to

MSmits: I think it might also hurt cache efficiency combined with other stuff

MSmits: like endgame books etc. Not sure, but it would make sense to me

MSmits: funny thing: When I went from 9 seeds to 10 seeds endgame book, my bot became worse

MSmits: 10 seeds db is so slow that it hurt my cache efficiency, is my theory

MSmits: i might put it back in when i write a NN

Marchete: I'm on the edge of start training

MSmits: NN does so few rollouts that the lookups dont hurt

Marchete: like it seems it's working

MSmits: nice one

Marchete: but I don't feel confident at all about it

MSmits: you've got stiff competition in the NN department also

MSmits: several different approaches

Astrobytes: ^

Marchete: not really

Marchete: I mean

Astrobytes: They're tough cookies

Marchete: I play solo

MSmits: not to mention nearly perfect play, so it's all down to 1 bad move out of 100 and you lose

Marchete: like I usually choose multis with low activity

Marchete: I'm trying to learn

MSmits: yeah its good for that

Astrobytes: I think we've noticed that Marchete :)

Marchete: and eventually put it some skeleton on github

Marchete: but not a ready to play bot

MSmits: just try not to judge too much by the top 5 strength, it's all really very deterministic

Marchete: don't worry

MSmits: except ja cek

MSmits: his bot is great

Astrobytes: And be confident, just get on with it

MSmits: it's all over the place and it's still strong

Marchete: I haaaate oware

Marchete: the whole simulation

Marchete: so I'm not for top 4

Marchete: or nothing

MSmits: I dont mind it, it's a bit finnicky

Marchete: just a working NN bot

MSmits: not sure finnicky is a word

MSmits: but it fits

Astrobytes: I thought it was really easy simulation, one or two tricky bits

Astrobytes: It is MSmits

MSmits: good

MSmits: there's more than one or two

MSmits: my sim has 4 tricky bits

Astrobytes: Might have one n, I've always used 2

MSmits: the first 60 were easy

Astrobytes: Yeah but you bitboarded it

Marchete: wtf is that

Marchete: https://github.com/MaximeCheramy/cg-oware/blob/master/src/main/java/com/codingame/game/Referee.java#L223-L230

MSmits: oh right, probably wasnt necessary to bb it

MSmits: since you also got a good simcount

Marchete: like you have an endgame before sim?

MSmits: I guess so

Astrobytes: If you can't move

Marchete: why does it takes all?

Marchete: if you can't move?

MSmits: it gets complicated when the last move at 200 does this

MSmits: do you get the seeds or not?

Marchete: it makes no sense at all

Astrobytes: That's the tricky bit

Marchete: and grand slam

Marchete: it's just tricky

MSmits: yeah it is Marchete

MSmits: tbh i dont even know if mine does everything perfectly

Astrobytes: Yes, it's kindof annoying to write but once it's done - it never needs to be touched again :)

Marchete: oware? I agree :D

Astrobytes: hahaha

MSmits: it's really the perfect game to practice nn's with once you do have the sim though

Marchete: that's why I'm here

Marchete: but I'm not sure about sim

Marchete: even the damn score is tricky

MSmits: ah well my sim is unintelligible, so i cant really help you

MSmits: if unintelligible is a word

Astrobytes: it is

MSmits: good

Marchete: un intelligible, two words :P

struct: I cant understand

Astrobytes: not in English :D

struct: If I change a static variable

struct: It doesnt show what it wants...

Marchete: I know

struct: I tried with a local variable and it worked

MSmits: again, try FP, no variables

Astrobytes: only immutable thingies

Marchete: haskell is the PCR/oware of languages

MSmits: yeah, it's mental

struct: Anyone has any idea why?

MSmits: eh, if you're starting to wonder what your variables really want, then you might need a break

Astrobytes: Hah! I think Haskell is quite elegant. I am by no means what I'd consider proficient but it's pretty cool

Astrobytes: "It doesnt show what it wants..." What you want or what the variable wants?

Astrobytes: struct

MSmits: the resilience of a program coded in FP is amazing.

Marchete: yeah, if you know how to use it Haskell must be cool

struct: I think I know why

struct: I had a static array

Marchete: for non-FP

Marchete: it's hard

struct: That I was writing over his index

MSmits: tell me about it

struct: his max index

Astrobytes: Yeah I am very far from an FP expert

MSmits: for the first 2 sets of home work it took me almost a full day and was just as slow as the other students

MSmits: then you get used to it

MSmits: and you suddenly get to use all your coding skills again

struct: MSmits when can we expect a Yavalath paper?

MSmits: damn, there is so much to write up :(

Astrobytes: Well, when you have the time

MSmits: maybe I should just not try to come up with new stuff for a while and just do the things Marchete comes up with

Marchete: ok, smits says a C=1.0

Marchete: and these guys

Marchete: https://medium.com/oracledevs/lessons-from-alphazero-part-3-parameter-tweaking-4dceb78ed1e5

MSmits: then i have time to write up what i have

Marchete: put C=4.0

struct: Nah, you dont have to, I was just wondering, since you talked about it before.

MSmits: yes but Marchete, the C param is only meaninful in relation to your range of score

Marchete: range -1 to 1

Marchete: tanh

MSmits: even so, you have a st.dev, if your scores are in practice all between -0,02 and +0,02, it's different

MSmits: so you need to fit it

Marchete: I won't know how the NN will behave

MSmits: it is just 1 more param

Astrobytes: It's empirical MArchete

MSmits: I use 1.0 for two things

MSmits: when it's a loss/win thing like in uttt it is a good value

MSmits: so -1 to 1

MSmits: but also when i have all my eval params fitted in relation to c and i keep c at 1

MSmits: i did that in csb

MSmits: so my distance params are all super small

MSmits: 0.000001 and such

MSmits: in a nn it is going to be different

Marchete: I remember to reuse my ranges from xmas to PCR and they worked well

Marchete: like it's important to keep a good relationship

MSmits: yeah, you can always double your c and double all your eval params and you get the same bot

MSmits: it's all in relation

Astrobytes: Yes, as long as it's related

Marchete: ok, then I'd need to factor the NN output

Astrobytes: ah beat me again smits

Marchete: or adjust C

Astrobytes: yes

MSmits: thats it

MSmits: i would not worry so much about c

MSmits: if you pick it too low, all your nodes have the same visits

MSmits: no wait

MSmits: too high

MSmits: otherwise you will have 1 node with all visits, then c is too low

MSmits: somewhere between those two is ok

MSmits: worry about it when the nn starts getting better

Zenoscave: between all and neglible is ok

Marchete: I need to cache gamestates

Marchete: then I'll try to train

YurkovAS: Marchete i'm checked your eval function: 13-15 place with mcts ept depth 4, no solver, 25-30k rollouts second turn.

MSmits: at first i usually do a few tests in te ide, and if i see 100 visits, 100 visits 1000 visits 5k etc. It seems ok

Marchete: thanks yurkov

Marchete: then I need to improve the MCTS part

Marchete: negamax went like 15th with that

MSmits: i forgot to mention Marchete

Marchete: but my jacekmax won't go above 20th

MSmits: negamax did not do well on oware

MSmits: compared to mcts and similar

BlaiseEbuth: Fix your MCTS and go legend Marchete

Marchete: ezpz

MSmits: also Marchete, how come we dont hear from you for like a year and then you suddenly share all that brilliant stuff with us

Marchete: 30k rollouts is a lot

MSmits: first that NS monster and then that NN thigny

Marchete: I got tired and take some rest

MSmits: well it helped

Marchete: the NN is from months ago

Astrobytes: eh, my negamax was alright, my mcts+ept was way better. Doesn't tric still use ab nega?

Zenoscave: I think many of us needed a break for CG. I definitely did

MSmits: but thats tric

Marchete: NS was because xevi xevi got 700 with LAHC

MSmits: he is magical with that

Marchete: and I said wth

Astrobytes: It's not magic, I even got some tips from him after I helped him promote in Clobber

Marchete: in fact it was this kind of lucky shots

Marchete: after many trials

MSmits: well it's good to have you back again anyways

Marchete: with 12hrs solving time using 70vCPUs...

Marchete: I stalked a lot

Marchete: :eyes:

Astrobytes: Yeah, you used to pop up randomly at late European hours :)

Astrobytes: It is good to see you back

Astrobytes: (and all the other ones that seem to have returned)

Astrobytes: Why doesn't recar talk? I always see him online

Marchete: maybe in ru?

Astrobytes: hm, I don't spend much time in there, I always end up closing the chat window due to pms

Marchete: I have zero pm, but I didn't chat a lot because I haven't anything interesting to say

Marchete: except for NS, that I thought it was cool

Zenoscave: NS?

Marchete: number shifting

Zenoscave: negascout?

Zenoscave: ah.

Astrobytes: On the contrary Marchete, you clearly have lots of interesting things to say :)

MadKnight: #ru wants me to ban this guy who's been there for some time because he keeps spamming all kinds of random thoughts and his small updates for his coding project to the point where the entire chat is mostly filled with his junk, but for some reason i feel guilty.....

Marchete: I just wanted to reach 999 when the toad was online

MadKnight: Automaton2000 how do i fix me?

Automaton2000: i got to silver in uttt

Marchete: thx

struct: I also spam random thoughts

Marchete: so I just submitted when he was online and replying me :D

Marchete: damn toad and his damn puzzles

Zenoscave: I interject most of the time.

struct: Im just not spamming as much because I can't :zipper_mouth:

MadKnight: no struct it's so much worse with this guy

MadKnight: to the point where u get used to ignoring his messages by reflexes just like recus ignores Automaton2000

Automaton2000: in the pod racing game

Zenoscave: lol Which one Automaton2000?

Automaton2000: can i change my mind

Astrobytes: struct you always post your random thoughts

MadKnight: i mean i talked to this guy today and i felt like i got used to just ignoring what he says in such a short amount of time

struct: This time I cant

Marchete: me?

struct: its hard

Astrobytes: Ah right, ofc

Marchete: :*

Marchete: I'm going to sleep anyways, gn

Astrobytes: ConstantBolzmann MadKnight?

struct: gn

Astrobytes: gn Marchete

MSmits: gn, me too Marchete

MadKnight: ye, u gonna ban him right now?

MadKnight: lol

Astrobytes: Think I'm on my way too

struct: gn everyone

Astrobytes: gn all

BlaiseEbuth: Giant Noodle

Astrobytes: Tentacle

Astrobytes: bn satan :P

Marchete: is oware solved?

Astrobytes: not the abapa version

Astrobytes: It's complicated, ask again tomorrow

BlaiseEbuth: Big Noodle ?

Astrobytes: :grin:

MadKnight: wait who didn't go to sleep ?

RomanceDawn: you

Default avatar.png MrFruit: slep god

MadKnight: RomanceDawn well so since u are a dawn...

MadKnight: RomanceDawn what is your pair of words supposed to mean ?

RomanceDawn: its

RomanceDawn: "the beging of a great journey "

RomanceDawn: its the title of the first chapter of ONE PIECE

MadKnight: oooh like a dawn of a great romance?

RomanceDawn: yeah yeah

MadKnight: dammit Automaton2000 i almost spelled "damn" instead of - dawn

Automaton2000: wish i had a few bugs

MadKnight: RomanceDammit

RomanceDawn: :grin:

MadKnight: everything must have an end RomanceDawn

MadKnight: so looking forward for the Dusk version

RomanceDawn: romanceDusk

MadKnight: Tusk

RomanceDawn: maybe the very last chapter of one piece

MadKnight: expecting it to be dark and ambient

MadKnight: i only like that stuff

MadKnight: not depressing

MadKnight: don't get those confused

RomanceDawn: gn mk

MadKnight: RomanceDawnWhenItsDusk

MadKnight: going to sleep until the dawn

MadKnight: Automaton2000 pls stop

Automaton2000: i don't see the point in the game

Zenoscave: Anid GW=50.00% [36.34% ,63.66% ] [W=50.00% L=50.00% D=0.00% ] [56]

           kgautron    GW=50.00%  [36.34% ,63.66% ] [W=50.00%  L=50.00%  D=0.00%  ] [56]
            Dr. Dre    GW=50.00%  [37.02% ,62.98% ] [W=50.00%  L=50.00%  D=0.00%  ] [62]
     -- EVERYONE --    GW=50.00%  [42.34% ,57.66% ] [W=50.00%  L=50.00%  D=0.00%  ] [174 games]

Zenoscave: whoops sorry, thought that would pastebin

struct: which game Zenoscave?

Zenoscave: c4l

Zenoscave: I win exactly half my matches in against the next top players and the boss. I'm not sure if I should submit or wait

struct: you wont get pushed anytime soon

Zenoscave: true

Zenoscave: I'll tweak some params to match boss w/r and hope

MadKnight: Zenoscave pastebins are more than 4 lines of textg

MadKnight: u only had 4 lines

MadKnight: just remember that criteria

Zenoscave: Got it. thanks MK

MadKnight: Zenoscave anyway, what game is that ?

Zenoscave: Code4Life

MadKnight: and what is this data ?

Zenoscave: CG Benchmark

Zenoscave: Of my local bot

MadKnight: ooooh i need to re-solve this game

Zenoscave: You're wood still, yeah?

MadKnight: was almost legend during contest

MadKnight: i think it was my first contest where i couldn't reach legend

MadKnight: was sad

Zenoscave: WEPWEPWEP

MadKnight: need to reach legend everywhere now

Default avatar.png kkkkl: gello

Default avatar.png human37: your mom lol

Default avatar.png jcrepes: my shirt do this

Default avatar.png Upthea[n]ttic: that is my mom lol

MadKnight: guys guys calm down

MadKnight: this guy got a special channel for u guys

MadKnight: join it -> #hismom

MadKnight: struct are u working on any multi right now ?

struct: yes

MadKnight: oh, which one ?

struct: csb, im rewrinting my code

struct: Im doing avx for collisions

struct: instead of having 8x games with avx

MadKnight: oh i still need to make a super fancy template class that supports AVX natively

Default avatar.png OBenjOne: if I want to output for debugging how to I stop the game from recognizing my print statement as a command to move?

Default avatar.png OBenjOne: In Coders strike back*

struct: you print to stderr

struct: which language are you using?

Default avatar.png OBenjOne: Python 3

Zenoscave: print(..., file=sys.stderr)

MadKnight: there's a comment telling u how to do that

Zenoscave: make sure you import sys

struct: print("Debug messages...", file=sys.stderr, flush=True)

MadKnight: u can find it

Default avatar.png OBenjOne: where do I find that file to read it?

MadKnight: it's like a few lines abobe the main print()

Zenoscave: file just means where is it printing to

MadKnight: in a comment

MadKnight: it goes like

MadKnight:

  1. Write an answer using print
  2. To debug: print("Debug messages...", file=sys.stderr, flush=True)


Default avatar.png OBenjOne: ok thanks Im sorry

MadKnight: don't worry

MadKnight: oh and some interesting info struct

MadKnight: so in c# there's actually a way to run scripts while the code is being parsed so that u would be getting raw tokens from the code

Default avatar.png OBenjOne: hmmm maybe I should learn c++ then

MadKnight: and with all the cool c# features, u would be able to really beautify your c++ code by turning it in fancy c# code which just generates c++

MadKnight: OBenjOne wait why?

Default avatar.png OBenjOne: Well it seems like just knowing python isn't quite enough in the real world

Zenoscave: Depends on what area you work in OBenjOne

MadKnight: it all depends on the kind of field u wanna work in

MadKnight: fancy maths or rocket science? well c++

MadKnight: some scripts for a server? well python

Zenoscave: Or Typescript

MadKnight: Zenoscript

Zenoscave: or Javascript. Or Java, or C#. There's tons of tools to use (A language is a tool) There's no "one tool to rule them all"

Zenoscave: just gotta learn what you like best and what's best for the job

Default avatar.png OBenjOne: I don't exactly know what area I want to go into yet, and I think learning a variety of languages can't hurt

Zenoscave: ^ exactly

Zenoscave: but not Gloss over. Actually *learn* each one fairly well first

MadKnight: well just start with python and then switch to c#

MadKnight: that would be pretty much enough

Default avatar.png OBenjOne: Ok thanks for the advice

MadKnight: c# is actually getting popular

Zenoscave: :thumbs_up:

Zenoscave: 18:33:13,718 INFO Final results : http://chat.codingame.com/pastebin/58dfbea2-a510-4ab6-bdc2-991aa307f7f3

Zenoscave: Looks possible worthwhile to submit?

Smelty: woAh 0-0

mybk: hello everybody, I was wondering, do you think CG profile is a good reference for recruiters to evaluate the candidate ?

PatrickMcGinnisII: Anyone set to receive professional emails ever get one? i would say, drop a linkedin or a github in there. *shrug*

MadKnight: my headphones driver stopped working for some reason

MadKnight: but not entirely

MadKnight: only the part controlling the mic

MadKnight: now the mic gives me raw sound without background sounds cleared

MadKnight: so now any soft and distant sound sounds very loud and i can't get them to stop going back to the headphones without turning down the mic entirely

Westicles: I suspect Russian hackers

MadKnight: dude i'm a russian

MadKnight: are u saying i'm such a bad russian i can't protect myself from russian hackers?

MadKnight: Automaton2000 stop getting triggered

Automaton2000: that's a great way to learn more about the game

MadKnight: anyway Westicles

Westicles: I don't want to point fingers, but policemen usually suspect the victim

MadKnight: what's time now for u ?

Westicles: Early evening

Default avatar.png cViper971: how do i rank up in coders strike back

Default avatar.png cViper971: im in first and ive beat the boss in the arena

Default avatar.png cViper971: but im not ranking up

Default avatar.png OBenjOne: It ranks you up after youve been ahead of the boss for a while

Default avatar.png cViper971: ok

Default avatar.png cViper971: do i need to stay in arena>

Default avatar.png OBenjOne: At a certain time of day I think

Default avatar.png OBenjOne: I dont actually know Im new too

Default avatar.png cViper971: i can leave arena tho, right?


Default avatar.png OBenjOne: yes I believe so

Default avatar.png OBenjOne: My pod moved up In rank while I was coding a new one

Default avatar.png OBenjOne: Quick question to anyone who's high rank in coders strike back: do you eventually get a current speed variable or should I code one myself by comparing distance and time?

Zenoscave: It changes the inputs later OBenjOne

Default avatar.png OBenjOne: ok thanks then I won't waste time on that now

Default avatar.png cViper971: anyone know when exactly it promotes

PatrickMcGinnisII: wow Astrobytes https://www.codingame.com/replay/541737806

Zenoscave: usually once an hour

Default avatar.png cViper971: also how am i in first when i only did what the thing said

mybk: it should be displayed on top (I think)

Default avatar.png OBenjOne: It gets harder

Default avatar.png cViper971: like how come no one else out of thousands in my league can beat the boss

mybk: 1 hour to get from silver to gold league

Default avatar.png cViper971: im in wood 1

Default avatar.png cViper971: rn

mybk: isn't 5min or so

Default avatar.png cViper971: idk why not being promoted then

mybk: I don't really remember

Zenoscave: cViper971 did you beat the boss?

Default avatar.png cViper971: my first 2 promotions were like right after i beat boss

Default avatar.png cViper971: now this one is taking some time

Default avatar.png cViper971: yeah zeno

Default avatar.png cViper971: in arena

Zenoscave: The wood leagues go faster

Default avatar.png cViper971: the first 2 wood were like a minute

Default avatar.png cViper971: this one is taking very long tho

Zenoscave: *Much* faster

Default avatar.png cViper971: idk whats going on im still first

Default avatar.png cViper971: been so for over 10 mins\

Zenoscave: Itll be about an hour

Zenoscave: should be a timer at the top if you refresh

Default avatar.png cViper971: oooooooooof

Default avatar.png cViper971: where

Zenoscave: what game

Default avatar.png cViper971: coders strike back'

Default avatar.png cViper971: the pod racing one

Zenoscave: you're still doing matches

Zenoscave: Your matches have to complete as well

Zenoscave: you're at 23%

Zenoscave: The timer will show up if you're above boss after all matches are done

Default avatar.png cViper971: how do i see the matches i need to do

Zenoscave: click last battles

Default avatar.png cViper971: ohh i see it

Zenoscave: it'll say a battles in progress and a %

Default avatar.png cViper971: thx

Zenoscave: yw

PatrickMcGinnisII: Night of war is so wierd

PatrickMcGinnisII: 9th with a depth 1 eval

PatrickMcGinnisII: scared to up the depth

Default avatar.png NotSureWhyThisWorks: Anyone know how to track time per move for c++? I am using the high_resolution_clock but it seems off by a bit

Westicles: #include <chrono>

Westicles: You can see it used here

Westicles: https://www.codingame.com/forum/t/collisions-in-fantastic-bits/2369/2

Default avatar.png NotSureWhyThisWorks: I am new to C++ and that looks crazy lol

Default avatar.png NotSureWhyThisWorks: Not sure if it is a glitch but it seems like the bot is timing out even though it is taking less than the time limit

Westicles: Yeah, sometimes you have to lower the limit until that goes away

Default avatar.png NotSureWhyThisWorks: is that a thing that happens? or is my bot just dodgy

Westicles: I think last contest people had to set limits to 35ms intead of 50 to get it to work. But you might also have a bug, of course

Default avatar.png NotSureWhyThisWorks: ok, I think it is probably both lol. I have to set to like 10ms

Smelty: o . o

Default avatar.png cViper971: how do you make the best turns in coders strike back

Default avatar.png cViper971: rn i have it if over 90 degrees thrust 0

Default avatar.png cViper971: otherwise thrust 100

Default avatar.png cViper971: but i was thinking having thrust = constant/degrees might be better

Default avatar.png cViper971: its hard to tell tho

MadKnight: cViper971 still there ?

Smelty: wait how do we "solve" chess

Smelty: the weekly puzzle

davilla: write a program that never loses