From CG community
Jump to navigation Jump to search

Default avatar.png BrandonTroy: play clash ppl:(

Default avatar.png shuo502: :grinning:

Default avatar.png WilderNaut: hi

Default avatar.png Noob3242423: hello world

Default avatar.png Noob3242423: :expressionless:

Mr.Py: bye world

Default avatar.png Avxgr:

Default avatar.png shuo502: world

Default avatar.png shuo502: play clash

Default avatar.png Avxgr:

Default avatar.png shuo502:

Default avatar.png shuo502: come

Mr.Py: #clash

bafian: does "my last play" bot work or is my browser failing me ?

bafian: not*

Default avatar.png Avxgr: Shuo

Default avatar.png shuo502:

Default avatar.png shuo502:

Default avatar.png shuo502:

Default avatar.png shuo502:

Default avatar.png Avxgr: You need to shift the letters depending on the integer shift, which means, if you have the letter H or h which has the position 7 in the english alphabet, and then you have a shift of 2, you will subtract the shift to the position of the H or h = 7 - 2 = 5 and you will replace the H with the letter at position 5

Default avatar.png Avxgr: And so on

Default avatar.png Avxgr: But you gotta account that if tyou have a key greater than the position of a letter, you need to wrap around the alphabet

Default avatar.png Avxgr: For example, A and shift 2 -> 1(A) - 2 = -1, so no letter at position -1 exists, in this case, you will start from the end of the alphabet, which will give us the letter Y

Default avatar.png Avxgr: LOL

Default avatar.png shuo502: I know

Default avatar.png Avxgr: So why did you send those links?

Default avatar.png Avxgr: I thought you needed help bro

Default avatar.png Avxgr: :dizzy_face:

Default avatar.png shuo502: :wink:

Default avatar.png Ajay-Bisht.7017.: hii Avxgr

Default avatar.png Avxgr: Hii Ajay-Bisht.7017.

Default avatar.png Ajay-Bisht.7017.: i am Robin_Hood friend who is now Rocky[K.G.F.]

Default avatar.png Noob3242423: urutyutyu

Default avatar.png Undefined1892: hi gúy

Default avatar.png Undefined1892: what is this error: Timeout: the program did not provide 1 input lines in due time... Undefined1892 will no longer be active in this game.

Uljahn: no response during allowed time limit, you either have infinite loop or not printing to stdout

IamQuan: oh

ImagineLosing: *+

Default avatar.png LudwigMM: hi everybody

jacek: what a nice sunny snowy day

Default avatar.png LudwigMM: i live in france

Beerus: You are given a sequence A1,A2,…,AN. Find the maximum value of the expression |Ax−Ay|+|Ay−Az|+|Az−Ax| over all triples of pairwise distinct valid indices (x,y,z). I am sure the solution is 2 * (max - min) , so why it's wrong when i submit

Default avatar.png LudwigMM: and i'm french

Default avatar.png LudwigMM: i have 14 years old and i'm very good in english

Default avatar.png LudwigMM: i'm alone

Default avatar.png PrivateOctopus_8259: hello

Default avatar.png LudwigMM: hi

Default avatar.png PrivateOctopus_8259: will you help me

Default avatar.png LudwigMM: no i'm bad

Default avatar.png PrivateOctopus_8259: ok

Default avatar.png LudwigMM: i have 14 years old

Default avatar.png LudwigMM: i can't help you sorry

Default avatar.png PrivateOctopus_8259: where are from

Default avatar.png LudwigMM: france

Default avatar.png PrivateOctopus_8259: boy or a bot

Default avatar.png LudwigMM: mhh

Default avatar.png PrivateOctopus_8259: boy

Default avatar.png LudwigMM: yes

Default avatar.png LudwigMM: i think

Default avatar.png PrivateOctopus_8259: no

Default avatar.png LudwigMM: what

Default avatar.png PrivateOctopus_8259: do you know about codingame

Default avatar.png LudwigMM: i'm a boy

Default avatar.png LudwigMM: no i don't know

Default avatar.png LudwigMM: but i'm french and this i know it

Default avatar.png LudwigMM: but my accent is very bad

Default avatar.png LudwigMM: (╯°□°)╯︵ ┻━┻

Default avatar.png LudwigMM: i'm here

Default avatar.png LudwigMM: i'm feeling alone now

BlaiseEbuth: Stop flooding LudwigMM, last warning.

Default avatar.png LudwigMM: ok j'arrête

Default avatar.png Rocky[K.G.F.]: hii

BlaiseEbuth: Hey robin...

Default avatar.png Rocky[K.G.F.]: hii BlaiseEButh

Default avatar.png Rocky[K.G.F.]: BlaiseEbuth

Default avatar.png Rocky[K.G.F.]: what are u doing

Ard1998: i have to writy dirty if i want to get that 3 min challange :joy:

Default avatar.png Rocky[K.G.F.]: in what Ard1998

Ard1998: fast and furious

Default avatar.png Rocky[K.G.F.]: ohh nice

Ard1998: its like i spend way to much tine naming my vars

Ard1998: because ny nose itches of to many one lettr names

Default avatar.png Saad-py: bruh what is n+n // 2

Default avatar.png Rocky[K.G.F.]: it is a math probem

Default avatar.png Saad-py: I know

Default avatar.png Saad-py: I was telling that how simple that quetion that was in reverse mode

Default avatar.png Rocky[K.G.F.]: ohh okk

Default avatar.png Rocky[K.G.F.]: its fine

Ard1998: oof, no shrug emoticon

Default avatar.png Saad-py: if n = 2, 2+2 = 4, 4 // 2 = 2 Answer is 2

Default avatar.png Saad-py: lol

Default avatar.png Saad-py: 😎😎

Default avatar.png Rocky[K.G.F.]: i think it is not easy for beginners

Default avatar.png Rocky[K.G.F.]: so this equation is given

Default avatar.png Saad-py: lmao I know I am a beginner but i always get hard problems this one was really easy for a 12 y/o like me

Default avatar.png Rocky[K.G.F.]: i think start coding at 12 years old nice

Ard1998: me at i thught 18

Ard1998: i was late to the party :slight_smile:

Phurinat: lol

jrke: i started coding when i was 12 years old

jrke: and now i am 13years old

BlaiseEbuth: I started coding when I was 13 years old. And now I have... Never mind, forget... :no_mouth:

KiwiTae: I first used a computer when i was 19

KiwiTae: :3

Wontonimo: 8yrs old using a vic20

Wontonimo: i doubt I really learnt much in those first 5 years other than I needed a solution for keeping track of changes and modifications

JLukeSkywalker: how many characters can we have in our code?

Default avatar.png BrandonTroy: @saad-py, when you said the solution to n+n//2, n=2 is 2 you're wrong. The operation n//2 happens first, so the answer is actually 2 + 1 which is 3. The answer is always n + 1/2 of n. lol

struct: 100k JLukeSkywalker

JLukeSkywalker: ty

Default avatar.png ICantCodeToSaveMyLife: hye everyone

HuynhNgocHai: Hi

HuynhNgocHai: How can i become good coder?

Mr.Py: practice

Dzonzla: can someone explain to me whats up with CodinGame Sponsored Contest

Dzonzla: the one that shows up on practice

JLukeSkywalker: what do you want to know about it?

Dzonzla: yeah, nothing, i kind of missed the point of the thing, it confused me that every option passes the testts

JLukeSkywalker: yeah lol, its an optimization puzzle

jacek: this would quite easy puzzle of the week

jacek: like 2048

jacek: AutomatonNN what's your favourite game?

YurkovAS: jacek in othello you use NN?

AutomatonNN: eulerscheZahl is there a way to see a good strategy to learn in different ways in code golf if you d

jacek: YurkovAS n-tuples + frontiers + mobility

jacek: oh, im 1st in othello :o

YurkovAS: +minimax?

jacek: jacekmax

jacek: best-first minimax

reCurse: Yeah because counterbooking is apparently all the rage

reCurse: OldJohn :unamused:

jacek: i managed to totally rewrite my training 'pipeline'. i thought my small nn was saturated and couldn't learn more. boy was i wrong

Default avatar.png Rohan178: wagwan bruv tin

jacek: oO

YurkovAS: YurkovAS thanks

YurkovAS: jacek thanks

jacek: you're welcome, jacek

YurkovAS: :smiley:

kovi: how small is small?

marcelreppi: 1

Uljahn: how many weights?

jacek: 40kg

Default avatar.png Spacialman: I got question for anyone who can help me. I am high school senior who just got accepted into full sail university. I am wanting to get better at coding so I am a little ahead of my class. Is there anyone who can help me?

Default avatar.png Spacialman: The only experience I have is CodeCombat from when I was in basic coding class in my freshman year.

jacek: do some puzzles here then

Default avatar.png Spacialman: Okay, thank you jacek

jacek: practice. if you know some basics, you can do it

jacek: this is not site for complete newbie who cant code at all

Default avatar.png Spacialman: I know the basic code for javascript. That's about all.

Passifi: build apps games are always hot, do some puzzles here, there are a couple of theoretical things I found really helpful basic pc architecture and knowing binary arithmetic doing the from nand to tetris course made it click for me then rinse and repeat and be prepared to be frustrated :)

jacek: thats good enough

Default avatar.png Spacialman: Thank you Passifi and jacek.

Wontonimo: Spacialman, something has helped me is at the beginning of every week to pick a small program (think hello world) and every day of that week code it using a text editor until you can do it from memory. The next week, pick a different small program. At the end of the month, that language will feel a LOT more natural to you and you won't be so dependant on autocomplete and google searches for basic stuff

Default avatar.png Spacialman: Okay, thank you very much Wontonimo

Wontonimo: I do that maybe once every couple years when picking up a new language or framework. The last time i did that was for angular, then before that it was tensorflow, then php, etc

[Kian-carling]: hi

Default avatar.png Spacialman: Hey, how are you.

Default avatar.png Spacialman: Could someone help me real quick?

Default avatar.png Maexel: hi there

Default avatar.png Spacialman: hi

Default avatar.png Spacialman: how are you?

Default avatar.png ngdangtu: /me

Default avatar.png Spacialman: ?

Papaver: Hi :)

Default avatar.png Spacialman: Hi

Papaver: Do you still need help? :)

Default avatar.png Spacialman: No, but thank you for asking

Papaver: Ok ^^ Enjoy your evening

Default avatar.png Spacialman: Thank you very much.

jacek: how to ask questions...

Spacialman: What do you mean?

jacek: ask specific question instead of "can someone help me?"

Spacialman: Okay.

Papaver: That would help the helpers!

Spacialman: lol. Makes sense.

jacek: eeyup

jacek: when you're so good you lose points by winning

MSmits: in which game are you doing that?

jacek: rebless losign points to kowi in bt

MSmits: ahh

reCurse: Eh

Mr.Py: :ghost:

MSmits: rating difference > 12 i think reCurse or whatever the limit is

jacek: huh? it leaderboard there is no green dot

reCurse: Did that green dot ever work?

jacek: eeyup

reCurse: orly

reCurse: So good news, I have a 3080. Bad news, now my RAM can't keep up :cry:

Spacialman: Stick with the 3070

reCurse: ?

Spacialman: It's what my dad uses and it's amazing

reCurse: Ok cool, but I have a 3080 and it's amazing too

reCurse: But I can't keep it fed because RAM doesn't keep up

Spacialman: hmmm

Spacialman: is it Geforce?

reCurse: Yes

jacek: god for you

jacek: :unamused:

reCurse: My code is all cache miss now

reCurse: Eww

reCurse: 85% dram stall lol, never seen that

jacek: aww

kovi: i broke my bt bot. what is the expected playout count there?

reCurse: Playout?

reCurse: In BT?

kovi: oops

kovi: yeah, i know mcts may not be best there

reCurse: mcts and playouts are 2 different things

jacek: oh my

MSmits: kovi I don't think we have numbers on that

MSmits: the few people that do mcts, dont do a full random rollout

jacek: only lette

jacek: s

MSmits: someone slap jacek around a litt

MSmits: le

jacek: i cant type

kovi: hmm, yeah cant compare non-full

Default avatar.png ketchuponpizza: lol

Default avatar.png ketchuponpizza: mlo

jacek: playout count is 1, you only need to know 1 best move [solved]

reCurse: Your trolls are getting weaker

MSmits: that's why i said to slap him around a little

jacek: maybe next week ill get brand new pc

reCurse: What is it

jacek: why ryzen of course

reCurse: So... details...?

jacek: ryzen 5800x (16 threads), geforce 2060 rtx. right now i have athlon 860k :unamused: (4 not-so-full threads). so i expect big boost here

reCurse: Pretty good upgrade yes

jacek: and fortunately what im doing now is quite parallelizable

kovi: nice jacek

reCurse: Those cache miss make me question my cpu upgrade, might wait a bit

reCurse: Besides rocket lake seems more like late q1 apparently :unamused:

jacek: fsck intel, get amd :*

reCurse: When I read about all problems people have with amd in general, and their lack of avx512...

reCurse: Apparently it can be quite difficult to overclock your ram with a ryzen

jacek: avx512 slows down the clock eh

reCurse: Yes but if your throughput is higher and you stick to a high performance workflow who cares about the clock

reCurse: What it's not good at is sporadic use, true

reCurse: Oh and losing vtune... I can't quite bear the thought of that

jacek: the vwhat

reCurse: Intel's cpu profiler

reCurse: Best in class

AntiSquid: how much ram jacek ?

jacek: im gonna for 32gb

AntiSquid: i don't understand your graphics card choice though

jacek: it was the one available

AntiSquid: no 3k series available ?

jacek: oO

jacek: nope

jacek: besides what im doing now isnt gpu intensive yet

AntiSquid: why the oO, last i checked they were supposed to be same price, not sure how much the shortage dragged the prices up

reCurse: They're very hard to find, not sure how the situation is in europe though

reCurse: Doubtful it's better

jacek: :(

AntiSquid: UK is probably worse :P

BlaiseEbuth: Yeah... A lot of people bought gpus preventively as the start of the covid crise. And now there's no more in stock. :/

reCurse: As far as I understand it's a gddr6 shortage

AntiSquid: preventively ? more like bulk purchases and then auction sales

jacek: nyoro~n

reCurse: I think I need to revisit my whole pipeline god damnit

BlaiseEbuth: They've probably realized that toilet paper will be more useful...

reCurse: Well I'm not sure how preventively, but people need to stay entertained

reCurse: Lots of people had no time for gaming, but now...

BlaiseEbuth: Hmm... A lot of people have no more money to buy gpus...

reCurse: You would think that, but there's also a lot who do

BlaiseEbuth: The ones who suddenly inherited probably...

jacek: :eyes:

AntiSquid: :rolling_eyes:

AntiSquid: where are gpus made better question, what slowed down transportation

BlaiseEbuth: Not enough healthy chinese kids to produce them I guess.

reCurse: Any more kneejerks we're missing?

jacek: huh

AntiSquid: well they probably had their door sealed in by the baoan

Westicles: keep in mind every so-called gpu sold is a bigger load on the people simulating our universe

reCurse: Not sure a gpu comes close to simulating a person :p

AntiSquid: how do you know that Westicles, the simulation gets slower for them but we would still experience same passage of time

Westicles: Maybe they are HW limited? These are tough times

MSmits: AntiSquid is correct

MSmits: it might be gpu induced time dilation

reCurse: Is this why time goes so slow in meetings?

MSmits: who knows, maybe they are at this moment, complaining of 85% cache misses

MSmits: reCurse makes sense to me

Westicles: Two puzzles in a row now where I have to call python eval from c++ to solve. Very sloppy

MSmits: what does that do?

MSmits: call python eval from c++ ?

Westicles: Fun with Set theory and Order of Oopserations!

Westicles: eval can evaluate expressions (+,-,unions, etc)

MSmits: ok

Default avatar.png jinpachi: hello

Default avatar.png ngdangtu: (╯°□°)╯︵ ┻━┻

Default avatar.png ngdangtu: Well that's fun =))

Default avatar.png ngdangtu: Anyway, does anyone have the raw input of the fourth testcase of this puzzle (

Default avatar.png ngdangtu: I couldn't log them out.


jacek: :thinking:

Default avatar.png KoliaYovko: Hello all, what does the "Score" in clashes mean?

Default avatar.png KoliaYovko: how does it counts?

Westicles: percent of validators passed

Uljahn: TrueSkill, search the forum for more info

jacek: i think he meant the ones with 100%, 90% etc

Default avatar.png KoliaYovko: well, I found, some people got this number less than 0

jacek: oO

reCurse: "clashes"

MSmits: damn bitboards, i just spend 3 hrs finding a bug where i shifted a 16 bit integer to the 18th bit, thinking it was a 32 bit integer =/

reCurse: F

MSmits: ail?

reCurse: Paying my respects

MSmits: oh

kovi: finally some improvement on bt

MSmits: cool, still random rollout?

kovi: yeah

MSmits: thats pretty impressive

MSmits: what rank?

kovi: ept ofc (before i got attacked)

kovi: 7th

kovi: top5 is probably minimax (+nn)

MSmits: not bad at all

jacek: :tada:

kovi: also my start/advancement is totally noob

kovi: rollouts dont tell what is a good opening

MSmits: thats why you have opening books

jacek: :scream:

reCurse: :unamused:

kovi: here we go again?

MSmits: relax, i am not suggesting he break your nn

MSmits: just a general opening book is fine

kovi: i would rather copy it

kovi: interaction is low in the first 10 turn

MSmits: yeah

jacek: maybe try the usual openings from the paper

Westicles: I love the book argument.

jacek: page 4

MSmits: I just realized something. If bots are extremely deterministic, you can just do man in the middle and let them play against themselves, hardcode the moves :P

MSmits: they will beat themselves

MSmits: never did that, but should work. Moral of the story, get some random in there

reCurse: Just get some random :lul:

MSmits: Your nn should be strong enough to be able to pick between two good moves

MSmits: if their eval is close enoguh

reCurse: I don't think you realize how much it weakens your strength

MSmits: well it's hard for me to guess, but I assume that when there is 1 winning move, there might be more than 1

reCurse: So you know what the good move is

reCurse: So you spend more time searching into it to prepare

reCurse: Except now you need to find another good move and split your efforts

MSmits: no thats not what i mean

MSmits: say you have 8 moves to choose from

reCurse: I understand what you mean

reCurse: But those cases you mention are very rare

jacek: dont you use softmax in your selfplays?

MSmits: 2 have eval 0,91 and 0,90, the rest are <0,5

MSmits: ah ok

reCurse: You need to provoke it to happen often enough

reCurse: And that costs

MSmits: hmm, it should not cost the search itself

reCurse: Of course it does

MSmits: i meant to only add random to the final move selection

reCurse: You don't get a good value out of one eval

reCurse: You need to spend a lot more than that

jacek: i use random in my uct, and it works somehow

reCurse: That random at the beginning can be catastrophic

reCurse: The beginning is where it's most unsure

reCurse: So small differences in eval is all that tells you where the good move is

MSmits: makes sense

reCurse: The actual irony is the good way to counter that is to prepare a varied opening book with longer thinking time to make sure they're good moves

reCurse: But fuck me I've got better things to spend time/compute on

MSmits: btw, i had a thought the other day about NN vs opening books. Say you play a random game like onitama

MSmits: it's harder to train a random game than the same game with fixed openings isnt it?

MSmits: the NN has less variety to deal with

reCurse: Eh, it might be the other way around actually

MSmits: i am assuming the opponent does not use any books or anything

reCurse: You don't need to worry as much about exploring enough

reCurse: The randomness provides implicit generalization

jacek: eeyup

MSmits: ok, then let me rephrase. The final bot will play better moves, if you were able to get past this problem

jacek: that could be reason why td-gammon worked so well, you have random from the game

MSmits: sure, but you can introduce this random yourself cant you?

MSmits: it's just alittle more work

reCurse: Yeah and it's another art form to pile with the rest

MSmits: right

MSmits: but what i meant is not the "hard" for the creator

jacek: yes, to provide different experience for the nn

MSmits: but for the bot itself

reCurse: No no no

reCurse: It's hard for the creator that has to fine tune

MSmits: yes

reCurse: Exploration strategy is another thing to fine tune

reCurse: If the game has random starts, no need to worry about it as much

kovi: ok, im done uttt and bit for a while which other game is good for mcts?

MSmits: but, the bot should eventually be able to play a fixed opening game better than a random opening game, assuming you got past this problem, is what i am saying. Assuming you fixed the randomness

jacek: bandas? :thinking:

reCurse: Only do bandas if you hate your life

reCurse: I don't think that's necessarily true

MSmits: bandas is the only good game for fully random rollouts besides uttt

MSmits: ok, let me use an example

Astrobytes: Because it's shit?

reCurse: Either it generalizes or it doesn't

MSmits: othello really does have different gamestages

kovi: thx. recurse: you mean i shouldnt even try to find heuristics?

MSmits: non-NN bots use separate evals for early, mid and endgame

reCurse: kovi: Most games in bandas start extremely favored for one player, so it doesn't matter much what you do

MSmits: so it's not that weird to assume a NN will use different parts of its network

kovi: oh lol

MSmits: if the early game is very similar, doesnt it require a lot less NN "space" to play well

reCurse: Sure but I don't see any reason why it would play fixed openings better

kovi: yeah, i wanted to mentioned that msmits

kovi: if the opening can be separated

reCurse: NN doesn't encode opening books

reCurse: It finds patterns

MSmits: of course

reCurse: How much "space" is needed for it is extremely arbitrary

MSmits: but what if the opening patterns are different

reCurse: You can make those assumptions

reCurse: *can't

MSmits: for example with forced openings

MSmits: what if you trained it on a fixed start

MSmits: but then it had to play forced openings

MSmits: what would that do?

Default avatar.png xSAAPx: henlo

MSmits: or what if your UTTT NN was forced to start in the top left corner

MSmits: instead of the middle

reCurse: That's hard to assume anything about

MSmits: yes

MSmits: even though it does not hardcode openings

MSmits: it may still "make use" of the fact that the opening is fixed

jacek: just like human

MSmits: exactly

MSmits: so you're still kinda training it to play openings

Default avatar.png Angecide: that's interesting

reCurse: But that doesn't say anything about how it generalized

reCurse: For all you know it generalized well enough that it would play just as well on an opening it didn't see

MSmits: true, thats hard to guess

reCurse: In fact that's the biggest point of all that

reCurse: You're working very hard to get it to generalize and not overfit

reCurse: If your fixed start caused it to overfit you probably needed to finetune it better

reCurse: Unless the fixed start is so wildly different, then ok maybe

MSmits: sure, but you dont train it on states that will never be encountered in areal game

MSmits: maybe at first

reCurse: You are training it with the expectation it will understand unseen positions

reCurse: Hence, generalization

reCurse: Let me put it this way

reCurse: Open a random chess puzzle

reCurse: It's possible it's played out of a position/opening you never do

reCurse: But you'll start applying your knowledge to find patterns

reCurse: Analyze weaknesses

reCurse: etc.

reCurse: NN does the same

MSmits: yes but this assume the early game and mid/late game can use the same generalizations

MSmits: if the early game is a completely different beast, it might not be generalized well

MSmits: and might not need to be either

reCurse: What I'm saying is you'll have to skew your early game very hard

reCurse: For it to have an effect

reCurse: Like say trade queens on move 5 and it never knows a queen even exists

reCurse: Then ok, sure.

reCurse: Who cares

MSmits: well i am just wondering about uttt here, because the early game is so different from late game

MSmits: quite hard to play for a regular bot

MSmits: your bot did seem to come up with teccles heuristic

reCurse: It did

MSmits: or whatever nn equivalent it is

reCurse: Also came up with interesting strategy I can't quite word

MSmits: letting opponent win a board by using too many marks?

reCurse: Confining a player to specific boards

reCurse: While taking over the rest

MSmits: ah yes

MSmits: thats the same thing

reCurse: I guess

MSmits: if you win a board, you want it to be won with a small margin

MSmits: not with +3 marks

MSmits: otherwise you lose everywhere else

kovi: hmm, good point

MSmits: karliso mentioned this a while ago

kovi: so it is an early sign of weakness

MSmits: like a year, he never put it into his bot i think, but he says his bot does this

reCurse: I'm rather ecstatic it discovered it by itself tbh

kovi: i may try penalty there

jacek: yeah

MSmits: sure, but it's supposed to, if it hadn't it wouldnt be nr 1

Default avatar.png RileyT: I'm new

jacek: its awesome to see your bot find good strategies on its own

MSmits: kovi you might not need a penalty, you should just lose games where you do it wrong

MSmits: so random might pick it up

reCurse: That's why I think getting to chess will be a rabbit hole I won't get out of

MSmits: jacek agreed

jacek: especially unorthodox ones that are weird but good

kovi: recurse: the good thing is that you realized it....for a more complex thing we will not be able

kovi: to understand

MSmits: reCurse it might not be workable to try and do a NN for chess in the CG limitations

MSmits: but you want to do it elsewhere?

MSmits: right?

reCurse: Says who

reCurse: No one thought CG limitations would allow NNs

reCurse: And here we are

MSmits: sure, but i did say "might"

jacek: at very least, you can do NN PST that would be better than regular PST

MSmits: PST?

jacek: piece square table

reCurse: Do these work in 960?

MSmits: should work fine for endgames

jacek: why wouldnt they

MSmits: 960 has the same endgames

reCurse: I'm unclear whether it would overvalue a bishop on b2, say, because it's always starting at c1

reCurse: Would it still be good if it was not as reachable

reCurse: shrug

MSmits: oh are we not talking about endgame tables here

MSmits: just piece values?

reCurse: piece square table

reCurse: Value of piece on square

MSmits: ahhhh

MSmits: that might be different near the start I guess

jacek: may be different for midgame and endgame

MSmits: endgame, doubtful

reCurse: I have the impression it might overvalue bishop b2/g2, but in 960 maybe it wouldn't care

reCurse: For example


kovi: just checked that

kovi: chess is so ... overengineered

jacek: when i touch chess again im gonna rewrite bot to bitboards for starters

kovi: i like to discover things

reCurse: Yeah I share your opinion

MSmits: oh yeah, that is another thought i had. NNs seem to win on a lot of simple CG games. I wonder what happens if we applied the same overengineering to some of those here on CG. I mean we never go *that* far coming up with good evals

MSmits: would the NNs still be beatable?

reCurse: That's why I like the NN approach a lot

reCurse: There's still a lot of ground to uncover imo

jacek: MSmits well nnue beats classical eval much

reCurse: Meh.

MSmits: nnue?

reCurse: I don't like nnue

jacek: nn for stockfish (and other alpha-beta engines), when introduced it gave +100 elo

reCurse: I feel they're going to hit a brick wall when no one works on classic eval anymore, what will they use as bootstrap

jacek: like 2-3 years strength increase in 2 months

jacek: the ones existing now?

kovi: stockfish beat leela

kovi: (again)

reCurse: To me that matchup would be a lot more interesting in tighter constraints

reCurse: Giving that much time to stockfish lets it calculate so deep it's kind of stupid

kovi: yeah, invite them here

jacek: you have ccrl and others for that

jacek: tcec is to see what gods would play

MSmits: they would have a lot of work minifying their bots. Also they depend a lot on huge tablebases :)

jacek: not that i understand chess anyway

kovi: seems that only trictrac has reasonable bot atm. or are there more?

reCurse: Not that I know of

reCurse: Once I beat checkers I may get to it

jacek: or the 2nd or 3rd

jacek: my is just material for 3-4 plies

reCurse: kovi: To answer your question about whether we would understand it, I am convinced there is a way to architecture NNs in a way that facilitates understanding.

kovi: interesting point

reCurse: Makes me think of CAM (class activation maps) that generates heatmaps on a picture so we can see what helped in the classification

reCurse: Minor change to architecture that allows that kind of inspection

MSmits: but would that be enough to tell you what is happening?

MSmits: isnt the problem that the patterns that get trained are very complicated?

reCurse: Figure out what you need to know and find a way that it becomes visible

MSmits: so the NN is too good to understand

reCurse: And prevent those complex patterns from happening

MSmits: but if you prevent it... you interfered with it

MSmits: makes me think of quantum mechanics

reCurse: Of course that's the whole point

reCurse: The optimization will find a way

reCurse: Just like we introduce regularization so it doesn't overfit on certain things

reCurse: We interfered, for a good reason


MSmits: yeah ok, but some patterns are complex, because they need to be

MSmits: it's always gonna be hard to understand those

reCurse: You can still skew it towards something you understand better

reCurse: Not saying it's easy

reCurse: But there's plenty of examples we did just that

MSmits: yeah ok

reCurse: Exploiting spatial coherence with convnets for instance

Default avatar.png Grelak: quick question, I just made my first clash of code, it seems the ranking at the end is rated with number of characters so using scripting languages like python will be better than for example the C# which includes parsing?

jacek: shortest mode, yes

jacek: its about characters count only

Default avatar.png Grelak: ah, I assume there're other modes like speed and things like that then, thanks!

3ataja: there three modes, Reverse, Fast and Shortest

HuynhNgocHai: How can i become dev ?

HuynhNgocHai: I'm just student

Default avatar.png KGDavidson: what does reverse mode mean

zapakh: It means you don't get a problem description, so you have to figure out what to do based on the test cases.

Default avatar.png KGDavidson: oh right thanks

Default avatar.png khang2003: down code

jacek: happy Caturday