Chat:Fr/2021-05-12
Oioi: ça recommence à ramer tôt le matin ou c'est moi ?
Mazelcop: o/
Oioi: \o
-Cile-: ZVRKK : ça me rassure dans un sens de voir que je ne suis pas la seule pas trop mal classée, à faire juste du if/else sans gérer les ombres (et sans gérer les nutrient, ni les arbres de l'adversaire, ni... en gérant pas grand chose en fait)
ZVRKK: -Cile- haha exactement on gère pas grand chose
-Cile-: dans un sens, vu que je gère un peu le SEED (même si ça peut grandement être amélioré), ça veut dire qu'indirectement je gère un peu les ombres
ZVRKK: Justement je suis entrain de voir pour les ombres, je sais pas si il faut les prendre en compte quand on seed ou quand on complete ou bien les deux :thinking:
-Cile-: dans l'idéal il faudrait les prendre en compte pour GROW/SEED/COMPLETE, même si ça n'a pas toujours le même poids
-Cile-: ce que je veux dire c'est que si tu ne les gères pas du tout du le seed, tu auras moins de positions intéressantes pour le grow
ZVRKK: Effectivement ça semble cohérent, je vais essayer d'intégrer ça
LuckyJ.: Hólà!
Une idée du nombre de promu en gold?
Oioi: Non... hier ils disaient autour de 100~200
LuckyJ.: Ahhh, naan, je suis 550 et j'aurai pu grapiller ~100 places en bossant en parallèle mais là c'est trop pour une journée de boulot :/
LuckyJ.: Tant pis, je ferai l'effort demain :)
Merci!
Oioi: Faut ptet pas me croire sur parole hein...
Oioi: En fait, je sais pas trop. Je rapporte des trucs lus sur le chat hier
LuckyJ.: Ah, je me suis inspiré de matchs dbdr contre toi au début du challenge pour construire ma première strat, t'as un poids dans la balance mdr
-Cile-: je sens que je vais rester argent jusqu'à la fin, pas très loin du "but"
LuckyJ.: En tout cas, merci Oioi
Erzow: hello, vous arrivez à faire combien de simulation environ et avec quelle profondeur ? Je suis à 15 000 avec 3 de profondeur, j'arrive pas à savoir si c'est beaucoup ou pas (sans opti)
Mazelcop: 3 tours de jeu ou 3 jours ?
Erzow: En simulant 3 tour à l'avance pendant les 100ms de chaque tour
Mazelcop: c'est pas ouf alors
Erzow: va falloir que je me penche sur de l'opti :(
Oioi: Bonne journée à tous !
Mazelcop: a+ Oioi
-Cile-: Bonne journée ! Je vais aller faire du R pour changer...
Greg237: Hello. Petite question : le soleil tourne avant que les arbres génèrent des points soleil ou après ?
Mazelcop: avant
Greg237: ok, merci Mazelcop :)
3141948: Le truc de veiller jusqu'à 2h du matin pour coder une usine à gaz alors qu'une solution peut tenir en 2-3 lignes, plus la santé pour çà. Je vais essayer une simulation en python pour voir, il reste encore du temps. Sinon peut-être Java comme il y a un "proof of concept" en Java sur mcts sur tic tac toe
3141948: https://tech.io/playgrounds/57060/mcts-tic-tac-toe-playground
Vaurtitoux: Bonjour, y'aurait-il des utilisateurs du mode d'édition VIM qui pourraient me dire comment ils copient leur code de CG vers leur clipboard? Ctrl-A / Ctrl-C, ne marchent pas, les choses comme :%y+ ne marchent pas nonplus :sweat:
Gr0mph: emacs :)
Vaurtitoux: :rage:
Gr0mph: http://chat.codingame.com/pastebin/2545b76b-2d5a-46c8-bb5f-4de29f24dbd6
Gr0mph: https://www.blogduwebdesign.com/vim-astuce-pour-le-copier-coller/
Vaurtitoux: :fearful: le registre + ne marche pas pour moi comme indique mon message originel
dbdr: \o
Mazelcop: o/
Oioi: \o/
dbdr: vous la sentez comment la deuxieme moitié du contest?
philRG: tout de même belle plateforme pour s'exercer à la programmation ici. Le puzzle que j'ai le plus apprécié ici, c'est cultist wars
philRG: je la sens dbdr premier
Mazelcop: tranquilou pour moi je pense
dbdr: j'ai un peu peur que ça devienne dur d'améliorer enormément et que çá se reserre de plus en plus au top
Mazelcop: j'ai l'impression que certaines positions favorisent un joueur plus que l'autre aussi
Mazelcop: donc on va avoir des winrate très serrés
dbdr: oui, avoir plus de soleil dans les tours 3-6 peut-etre
dbdr: quand il commence à y avoir de l
dbdr: ombre
Mazelcop: ah, je pensais aux tours 9-11
Mazelcop: quand tout le monde a 4-5 arbres de taille 3
dbdr: possible, je dis un peu au pif
philRG: ça me rappelle l'expression d'un live cg d'un petit gars qui faisait des CoC: "rouler la tête sur le clavier" pour générer une paire d'actions random :-D
dbdr: :D
dbdr: tu me détruis là Mazelcop
Skril: 3-6 / 9-11 sont quasiment les mêmes confs %6
Mazelcop: on dirait qu'il y a un effet pierre-feuille-ciseaux, je me fais démolir par euler
dbdr: possible
dbdr: tu as changé un truc?
dbdr: au run précédent je vois que ct l'inverse
dbdr: apres sur 5-6 matches...
Mazelcop: non, j'ai juste joué avec la depth de mon BS pour voir l'impact
dbdr: gold va aider un peu avec çá
Mazelcop: mais vu que ma fonction d'eval est une usine à gaz, il est possible que ça change le comportement du bot
dbdr: tu limites expres la depth, ou tu diminues la largeur?
Mazelcop: je limite exprès
dbdr: ok
dbdr: j'ai aussi un gros probleme avec une partie de mon eval
dbdr: c'est super instable, dur de toucher a quoi que ce soit sans tout casser :D
Mazelcop: c'est peut être la limite de l'approche BS sur ce contest
dbdr: enfin j'ai commencé à améliorer ça hier pour une partie, faudrait que je finisse ça
dbdr: l'eval est dure de toutes façons
dbdr: tout est compromis
Mazelcop: il est dur, ce contest...
dbdr: ah oui? j'aurais dit le contraire
dbdr: pas a cause de mon rang ;)
dbdr: la simu est simple quand meme
Mazelcop: :D
Mazelcop: la simu est simple, et il y a pas vraiment besoin d'optimiser
Mazelcop: mais trouver comment gagner est pas évident
dbdr: apres c'est peut-etre parce que j'aime bien les problemes d'optimization
dbdr: #dialogueDeTop10 ;)
Mazelcop: :p
dbdr: "trouver comment gagner est pas évident"
Bob: if (!winning) win()
Bob: ezpz
mrBen: o/
mrBen: faut que j'essaye cette technique Bob !
polpoul: ca marche pas bob
mrBen: ah mince
polpoul: t'as oublié un truc
polpoul: if (loosing) winQuandMeme()
R4N4R4M4: Hello tout le monde
dbdr: \o R4N4R4M4!
Mazelcop: o/
Rajh: Vous prenez en compte l'adversaire dans vos simus ?
Mazelcop: oui, mais mal
Greg237: càd mal ?
Mazelcop: avec beaucoup d'imprécision
Oioi: "oui, avoir plus de soleil dans les tours 3-6 peut-etre" & "je pensais aux tours 9-11"
Oioi: Je crois qu'il va falloir que je vous remercie dbdr et Mazelcop
Ylec: Hello tout le monde
Oioi: salut
Troph: Oioi il se passe quoi dans les tours 9-11 ?
Troph: (ohlala la mauvaise blague non voulue, les tours 9/11)
Oioi: C'est une discussion qui a eu lieu ya quelques minutes : privilégier le soleil dans les premiers tours ?
Troph: j'ai l'impression que c'est la strat des top bot
Mazelcop: c'est ce que je faisait au début, mais je me faisait rouler dessus par les bots offensifs
Troph: Ils te contraient comment ?
Mazelcop: en faisant de l'ombre
Troph: meme dans les premiers tours ? ou plutot en mid-late ?
Mazelcop: vers le premier tiers environ
Troph: hmm, donc privilégier les soleils en early et devenir plus agressif apres
3141948: If loosing(): win() 😂
3141948: Ah non winquandmeme typo error
Troph: un truc que j'ai remarqué sur les top bot aussi c'est qu'en early ils privilégient de seed en quinconce et sur les cases a 1 nutrient.
Troph: MAis je me fais peut être de fausses idées
Mazelcop: ouep, c'est assez logique
Oioi: L'idée, c'est d'éviter que que le père fasse de l'ombre à son fils...
Troph: en quinconce je veux bien, mais pourquoi les cases à 1 nutrient, une histoire de compromis ?
Oioi: parce qu'au bord, il y a moins de possibilité d'ombre
Oioi: et que l'essentiel des points en début de jeu vient des nutrients
Troph: ah oui je voulais dire richness pas nutrient depuis le début
Troph: hmm oui ça se tient en effet
Oioi: Punaise, j'arrive pas à décrocher... pourtant j'ai vraiment du boulot là :-)
Gr0mph: :)
Mazelcop: c'est un peu trop addictif ce jeu
khealer: Vous savez pourquoi l'ouverture de la ligue est décalée au 14 ? juste un bug ?
Troph: c'est toujours affiché 12 pour moi
Ylec: C'est dur de décroché Oioi :)
khealer: Je viens d'actualiser et ça m'écrit le 12, je crois qu'ils ont un bug, hier soir c'etait écrit le 13
Vlavv: M'en parlez pas, j'y suis resté jusqu'à 4 h cette nuit pour un truc qui a juste réussi à me faire reculer de 10 places 😴
Oioi: :-'
Oioi: :-(
dbdr: ;(
dbdr: tu as pensé à le retirer du coup Vlavv? ;)
Ylec: je crois que mon dernier submit me fait perdre 1000 places ... :'(
Troph: si tu viens de submit c'est normal hein
dbdr: oho, Mazelcop tu montes bien
Trisard: Ah ba dis donc c'est la première fois que je me réveil en ayant gagné des places :D
Mazelcop: j'ai réactivé ma feature secrète
Ylec: bon je verrai a la maison, c'est pas évident au boulot :p
dbdr: :scream:
jolindien: o/
Mazelcop: o/
Trisard: 0/
dbdr: \o jolindien. tu bosses sur un truc depuis 2 jours?
Troph: Mazelcop le feature secrète c'est le bug que t'avais pas vu ?
jolindien: rien de concluant
ThomasNicoullaud: le top 3 en 10 msg ébé on est gâté :)
BigUP: tiens, bizarrement, mon classement ne s'est pas amélioré tout seul pendant la nuit !
dbdr: donc oui :D et oui, ça peut devenir dur d'améliorer. j'ai peur que le jeu manque de profondeur
dbdr: tu testes en local jolindien?
jolindien: non, pas vraiment
dbdr: Mazelcop, frame 29 on est toujours symmetriques :D https://www.codingame.com/replay/552941281
jolindien: pour répondre à ta vraie question, j'ai pas mieux ;)
Vlavv: Lol dbdr, oui j'ai eu cette tentation mais j'essaye de résister, en théorie cette modif n'est pas là sans raison. ^^" Faut juste que je me replonge dedans et que je fasse quelques ajustements...
dbdr: oui, je connais. j'en ai eu plusieurs comme ça
jolindien: complete or not complete, that is the question
Trisard: :joy:
Vlavv: :grin:
Mazelcop: dbdr nice :)
Frank_Qode_Lemon: hello je commence la progr en c#
Frank_Qode_Lemon: mais je pige pas ce qu'il faut faire la ^^
Frank_Qode_Lemon: ni comment ^^
Mazelcop: hello, tu t'es déjà fait la main sur les exercices "facile" de codingame ?
Frank_Qode_Lemon: avec les pods?
Mazelcop: pas les challenges, les exercices genre temperatures ou thor
mrBen: un de ceux là : https://www.codingame.com/training/easy
Frank_Qode_Lemon: non du tout je n ai pas trouvé
Frank_Qode_Lemon: ok merci je vais aller voir ca :)
Frank_Qode_Lemon: ceux la sont faciles donc? hihi
Mazelcop: c'est plus facile que les contests en tout cas :)
Frank_Qode_Lemon: ok merci ^^
Frank_Qode_Lemon: je vais essayer la descente
solistice: can someone with some previous experience guide me through some initial heuristics steps?
Frank_Qode_Lemon: a priori je peux trouver toutes les infos ici?
Oioi: solistice : sure, but you should go to World chat
dbdr: #world
solistice: wooops
Mazelcop: Frank_Qode_Lemon tu as toutes les infos nécessaires sur le site. Une fois que tu as compris comment fonctionne l'IDE de CG, ça va aller tout seul.
Frank_Qode_Lemon: je vais deja essayer de comprendre c est quoi l'IDE de CG ^^ merci
Frank_Qode_Lemon: CG = codeingame
Frank_Qode_Lemon: ide?
Mazelcop: l'environnement de développement de CodingGame :)
Mazelcop: (Integrated Development Environment)
Frank_Qode_Lemon: lol ok merci
dbdr: jolindien: je crois que je complete pour des raisons obscures
dbdr: :thinking:
Tiouz: des raisons d'ombre ?
jolindien: ^^
Vry: o/ les gens !
Alshock: \o
Tiouz: \o
jolindien: o/
dbdr: #doubleSens
Alshock: toujours pas commencé ce challenge, je ronge mon frein
dbdr: non voulu au départ
Vry: Je peux sortir de ma grotte ... je crois que j'ai fini de coder le calcul des ombres ... :relieved:
Vry: http://chat.codingame.com/pastebin/87a8a51f-ea6d-4350-9c0f-4d43c3ede311
dbdr: Vry la grotte de Platon donc?
Alshock: Je suis un homme de type remainging
dbdr: caverne plutot
Alshock: j'imagine bien une forme de cannibalisme liée à ce mot
Vry: Mon bot Wood2 gagne encore des place en Bronze, c'est rigolo ... à se rythme là il passera Silver dans un mois je pense ...
Vry: *ce
Tiouz: Il gagne des places parce que les gens devant toi passent en silver ?
Vry: Nan, c'est parce qu'à force de try hard pour passer silver leur bots sont de plus en plus mauvais ... :upside_down:
jdeveil: lol
Vry: Next step : valider mon que MC mono-joueur fonctionne correctement ... je ne suis pas rendu encore
Bon[]Crayon: Bonjour tout le monde.
Bon[]Crayon: Slt Automaton2000
Automaton2000: je pense qu'il y a pas de honte
mrBen: ça attaque fort ce matin Automaton2000 !
Automaton2000: et du coup c'est plus facile de trouver des exos pour faire progresser ses étudiants
Bon[]Crayon: Professeur Automaton2000!
Automaton2000: mais c'est plus long à coder
mrBen: qui sont tes étuditants Automaton2000 ? des tortues ?
Automaton2000: et ensuite je fais des tests en local
Bon[]Crayon: Automaton2000 Est-ce que tu enseignes en Java ?
Automaton2000: pour le top 20 !
Zorg1: o/ Automaton2000
Automaton2000: est ce que ca donne
Zorg1: bof Automaton2000 à ce rythme j'aurais fini ma simu dans 1 mois :(
Automaton2000: moi je vais tenter un truc de ce genre de cas ?
pardouin: idem faut que je débugue mon next_step, je le passe au crible là et parfois il me donne un peu moins de sun que prévu, faut que je pige pourquoi
Haashi: moi j'ai une turboflemme
mrBen: pardouin lors d'un WAIT, d'incrémente bien le jous avant de calculer les ombres ? parce que je vien de trouve ce bug dans mon code
mrBen: *les jours
WhatTrickeryIsThis: wait -> le soleil tourne -> on récupère les points -> on démmarre un nouveau turn
pardouin: oui je fais (day+1)%6
dbdr: skrill est de retour :)
pardouin: je pense que ça vient de mes ombres
dbdr: gogogo simu Zorg1!
dbdr: manque de motiv'?
WhatTrickeryIsThis: la chouette, tu devrait être bon sur ce contest
WhatTrickeryIsThis: t'es une créature des forêts
dbdr: ^
Haashi: bah c'est surtout que j'ai pas pu encore m'y mettre à fond
Haashi: c'est a coup de 1h par ci par là
WhatTrickeryIsThis: vivement demain et ce weekend avec le boss legende :D
WhatTrickeryIsThis: préparer le mal de tête
Haashi: j'avais eu + de temps pour le fc2020 vu que j'étais en préavis
WhatTrickeryIsThis: et le mal au c...ul contre legende
dbdr: un boss en perl ça aurait de la classe reviens Vlavv!
Alshock: le boss n'est jamais que gold
WhatTrickeryIsThis: le boss gold par contre il va être vilain gros méchant
WhatTrickeryIsThis: surtout quand il commence à être feedé par les submits ratés
K_for_King: Coucou, tu veux voire Malphite ?
WhatTrickeryIsThis: :banana:
dbdr: WhatTrickeryIsThis il faut avoir la foi en TruSkill ;)
WhatTrickeryIsThis: dernier contest j'étais derriere le boss à 0.05 et y à des malins qui ont feed toutes la nuit
WhatTrickeryIsThis: :(
WhatTrickeryIsThis: j'aurai gagné le contest franchement, c'est pas juste
Adalrik: salut salut ! Petite question je ne comprend pas trop pourquoi mon code se désynchronise. Quelqu'un à eu le cas
WhatTrickeryIsThis: oui, vérifie tes i/o
VilBoub: désynchro : souvent c'est... 2 actions dans un même tour
leojean890: yes ça remonte #131 j'arrivais plus à passer les 300..
Adalrik: ok ok je m'en doutais mais je galère à trouver ou il part en cacahouète :laughing: Je vais continuer à chercher , merci en tout cas :)
JBM: un dieu du JS pour me dire soit comment on peut récupérer le source de cgsync soit comment on peut accéder (write-only me va) au contenu «code» de l'IDE?
dbdr: JBM tu procrastines en outillant?
philRG: leojean890 cool
philRG: :joy:
mrBen: y a CG Local qui est open source si tu veux https://github.com/jmerle/cg-local-ext
JBM: ça vient un peu d'emacs: en soi je sais pas copier le buffer entier sans bouger
JBM: mais quitte à déf une fonction pour ça, autant qu'elle finisse le boulot
JBM: àa fait quoi/marche comment cglocal?
mrBen: c'est plus ou moins comme CGSync si j'ai bien coimpris, sauf que l'extention est dispo pour firefox
dbdr: ya un phdcomics sur ça non? le type qui passe tout son temps a optimiser ses outils pour faire sa these plutot que de la faire
dbdr: je confons possiblement
JBM: phdc j'ai pas mal de retard
JBM: je sais plus pourquoi j'ai décroché
JBM: sûrement parce qu'il y a pas de rss
Oioi: ça me ressemble le coup de la thèse : du coup je l'ai jamais passée :joy:
philRG: moi sur Firefox, j'ai l'extension CG-Local mais elle merde:
philRG: CG Local An error occurred. Make sure the CG Local app is running and try again.
philRG: j'ai passé une décennie et demie à essayer de faire tourner en production du code de devs, donc je me pose plus de question
mrBen: mais t'as l'app en local ?
philRG: j'ai l'extension
mrBen: parce qu'il y a un petit truc en java à faire tourner sur ton PC
JBM: lis la doc espèce de user
WhatTrickeryIsThis: ppfff cte user de base
philRG: https://github.com/jmerle/cg-local-app
WhatTrickeryIsThis: il a pas lu la notice et le code source, aucun respect
mrBen: en fait ce ce lien que j'aurai du partager dès le début : https://www.codingame.com/forum/t/cg-local/10359
philRG: j'ai mes yeux qui explosent en lisant les instructions
philRG: eye's burn-out
philRG: là c'est bon j'utilise chrome... "Marche sur mon poste et sur chrome"
philRG: je suis pas maso
philRG: mais après firefox gère mieux le JS que Chrome aussi
philRG: ça rame moins en local
philRG: ça me rappelle mon stage AFPA où je faisais du pure JS qui globalement marchait différemment sur les 10 versions de navigateurs utilisées par les utilisateurs
VirtualAtom: JBM, pour envoyer le code à CG, j'ai pas trouver mieux que d'envoyer une requête "play" pour sauver le code. Si tu trouves moyen de faire sans, je suis preneur :-}
JBM: ben cg-local, pour le moment
philRG: à moins d'utiliser un framework du genre JQuery qui gère les compatibilités entre versions et encore, mieux vaut éviter de faire du front
JBM: ça me va mieux que de reverse cgsync (pour le moment)
JBM: haha la illegal reflective access operation
JBM: ça me rappelle trop qqch O:-)
philRG: mrBen: non j'ai pas l'app en local effectivement trop compliqué
VirtualAtom: bon je regarderais ça alors. J'avais pas envie d'installer une extension ou de devoir laissé ouvert une tab sur l'IDE
philRG: merci pour le lien je le connaissais déjà en fait
philRG: j'avais déjà du essayer
philRG: mais trop long
JBM: yay, j'ai publié une emo twitch
WhatTrickeryIsThis: tu peux pas plustôt te concentrer sur le contest?
WhatTrickeryIsThis: quel troll celui là
egaetan: et tu es expert en troll
JBM: pas de stream cette fois-ci?
JBM: mrBen: bon ben merci pour cglocal, ça a l'air de marcher au poil
JBM: je dégagerai le java quand j'aurai le temps
Xmaster6: Salut, je suis pas un expert CG mais les input prennent du temps à être luent nan? Est-ce qu'elles sont dédutes pour le temps de réponse?
JBM: elles comptent dedans, lis-les vite
Xmaster6: Bah genre les 150 ms
Xmaster6: Lol oui c'est que je fais pas que le challenge
Xmaster6: donc fau optimiser leur code de lecture je suppose?
JBM: t'en es probablement pas à ce point, si?
Alshock: leur code de lcture ? La lecture ça prend quoi ? 0.5 ms?
Alshock: je pense moins mais je préfère taper large
Xmaster6: Bah en python ça me prend pas mal de temps donc je vais essayer en rust
mrBen: JBM, si tu fait une appli local qui n'est pas en java je suis preneur (une fonction Emacs ça me vas)
Xmaster6: 0.5ms???? oula pas pour moi ou alors je fais un truc mal
Alshock: en python tout est lent, mais malgré tout je pense pas que la lecture soit notable, les objets que tu crées par contre oui ça, ça peut être lourd
Alshock: t'as combien là toi ?
Jackalabrute: A quelle heure ca ouvre le league gold ?
Haashi: ca y est c'est reparti..............
Xmaster6: bah genre 20ms
Haashi: Automaton2000, A quelle heure ca ouvre le league gold ?
Automaton2000: je précise que je ne sais pas quand je vais sur le site
Alshock: 20 ms .o. Y s'passe des trucs pas nettes dans cette lecture moi j'vous l'dis
Alshock: Automaton2000 pourra confirmer, elle se traine comme une tortue !
Automaton2000: non mais quand je suis parti sur un truc comme ça
pardouin: la lecture c'est lent quand tu lis 50 000 entrées, ce genre de truc
Bon[]Crayon: 18 h
pardouin: très rare sur CG :)
Tiouz: Xmaster6 Est-ce que tu lances bien ton chrono après la première input ?
Xmaster6: Ah nan avant la 1ere
Alshock: Aaaah, je comprends mieux
Tiouz: C'est ça qui prend 20ms
pardouin: il chrono que après le premier inpu
Xmaster6: Ah oui mdr c'est bon merci
Haashi: tout s'explique
Alshock: Comment ça se fait que c'est QUE 20 Ms alors ? Il devrait pas avoir referee * 2 + adversaire ?
Haashi: il a dit plus haut qu'il était pas entrain de faire le challenge
Alshock: Si on me dit pô tout aussi :pout:
WhatTrickeryIsThis: :pouette:
WhatTrickeryIsThis: :hear_no_evil:
Xmaster6: yep ^^
Bob: rate
dbdr: JBM c'est normal que tu sois dernier de silver? tu crashes?
JBM: non, mais je fais plus grand chose à part planter
dbdr: :D
dwarfie: double sens ? ;)
JBM: faut pas s'attendre à du grandiose avant que mon heuristiaue tienne la route
JBM: avant de bidouiller tout ça j'étais vers #1950
dbdr: et moi qui croyait que les programmes haskell plantaient pas ;)
Oioi: heuristiose : ça pourrait être une maladie :-)
JBM: au dernier submit ils planteront pas
JBM: en attendant, y'a les asserts
Alshock: D'ailleurs ç'en est une
Alshock: on appelle aussi ça la Bobinite aiguë
Oioi: dbdr Mazelcop : finalement, c'est probablement pas une grande idée de privilégier le sun lors des premiers tours. Ou je ne sais pas l'utiliser
Alshock: Si ça arrive coup sur coup faut vérifier la taille des dents et des oreilles, c'est une astuce de grand-mère
JBM: d'ailleurs tu me rappelles qu'il faut que j'affûte mes dents de scie pour avoir les bonus du complete
JBM: les oreilles sont… ben de taille totoro bien proportionné quoi
philRG: finalement les puzzles, c'est bien aussi, on sait quand ça s'arrête
dbdr: Oioi tu privilégie quoi si pas le soleil, les bons emplacements?
philRG: j'ai le même score qu'il y a 8j
Oioi: l'extension du domaine (de la lutte !), et le sun, mais au sens où je fais le plus d'arbres matures le plus vite possible
Oioi: L'idée que vous m'avez donnée tout à l'heure, c'est que 3+(3+1) coûte moins cher que 3+7 et rapporte autant de sun par tour
Oioi: Cette dernière idée n'a pas l'air de marcher (ou je m'y prends mal)
philRG: quand je pense que dans la moitié de mes simus de ces 6 derniers mois, je mets mon timer avant le premier input
philRG: bon pour l'hospice :-D
philRG: je faisais:
philRG: start = time.time()
philRG: puis game.update() pour la lecture des inputs
philRG: dans le starter, ils ont viré la méthode update() de la classe Game ce qui est une bonne chose pour pas se rétamer
philRG: dans le timer
Trisard: bon je crois que je commence a déprimer ^^
Trisard: j'ai beau optimiser tout ce que je veux mes victoires tienne plus de l'aléatoire que de mon algo en lui même
Trisard: du coup je navigue entre le #110 et le #180 depuis ce matin
dwarfie: te plaint pas .... toi au moins , t'as du temps pour coder :(
Trisard: ouais après ça je suis pas trop sensé en avoir mais je m'organise on va dire ^^
OldJohn: Toujours pas compris pourquoi mon eval induit ce comportement dans mon bot !
jdeveil: de 19h à 04h00
dwarfie: c'est ce qui est prevu ... mais du coup mon code est pas pret pour 18h00 ...
Littleyounes: Trisard heuu c normal en dessus il n y a que des cracks
Littleyounes: mdrrr
dwarfie: arf ... moi qui etait content d'etre dans les premier 10% ... ca suffira pas cette fois ... va vraiment falloir que je soigne mon balmer sur la fin de semaine .... :D
Vry: Moi je suis toujours dans le top 10% ... de la ligue Bronze ! :sunglasses:
Littleyounes: Tu cache ton jeu
Littleyounes: :zipper_mouth:
dwarfie: Vry : ca c'est du hiding efficace
dwarfie: :D
pardouin: dbdr quand il se cache il est 8ème
dwarfie: pour l'instant faut que je finisse 600eme pour pas perdre de cp ... a moins que les 10.000 laches ne finissent par partitiper :rofl:
dbdr: pardouin: une feature "anodine" et "évidemment bonne" qui a l'air de me faire descendre. la je retente sans
philRG: 10.000 lâches ah quand même. J'invite mon frère à chaque contest, mais il s'inscrit jamais.
dwarfie: je parle de ceux inscrits mais qui ne participent pas ... les "je m'inscris pour me la peter" et les "je m'inscris parce qu'il y'a un achievement" ... s'il s'inscrit pas , je le compte pas ;)
Littleyounes: :disappointed:
dwarfie: (comme un de mes collegues par exemple qui ose meme pas s'inscrire alors qu'il finis mid-bronze sans forcer je suis sur)
Littleyounes: j'ai pas le courage de faire une simu :'(
Littleyounes: Dwarfie, la fonction d'évaluation elle permet de calculer le nombre de point
Littleyounes: d'une situation passée en parametre ?
dwarfie: elle evalue ce que tu veut evaluer ...
Littleyounes: :'(
Alshock: une evaluation elle dit "j'aime/j'aime pas"
Littleyounes: :'(
Littleyounes: s'il vous plait :('
Littleyounes: x)
Alshock: Et entre deux situations elle doit dire "je préfère A ou B"
Littleyounes: ;o
dwarfie: c'est pas a moi qu'il faut demander , mes seules fonctions d'eval qui marchent n'en sont pas ... c'est score a la fin d'une partie :D
Alshock: C'est techniquement une fonction d'eval
Alshock: la plus sûre de toutes
Littleyounes: kkkk
Littleyounes: lov
Vry: MC Powa !!!
Oioi: Soit tu attribues un score à un coup et tu essaies de maximiser ce score
dwarfie: Alshock ... sauf si le moteur est buggé :D
Oioi: Soit tu attribues un score à une position, et tu essaies de maximiser ce score
Alshock: @dwarfie à ce moment là c'est pas la faute de l'eval
AnthonyHilala: salut je voulais savoir si finir bronze c'est bien
Littleyounes: Oioi toujours la pour me guider mercii
Alshock: on peut avoir une bonne eval sur une prédiction foireuse
Oioi: ça m'arrive fréqeuemment de fait !
Littleyounes: haha
Oioi: Ou d'écrire une eval, de faire une erreur
Oioi: de la corriger
Alshock: et c'est pire
Oioi: et de m'apercevoir que c'était mieux avant correction
dwarfie: AnthonyHilala ... tout le monde fini broonze ... a toi de comprendre :D
dwarfie: (faut le vouloir pour rester wood sur ce contest)
Alshock: pour le coup ouais ils ont été vraiment lights sur le wood, mais bon pourquoi pas, c'est sympa d'avoir vite les règles complètes
R4N4R4M4: J'ai toujours pas d'évaluation, ça sera pour ce soir, pas trop le temps aujourd'hui
R4N4R4M4: Ce qui va être embêtant, c'est le timeout fugitif dans ma simu.... :(
Littleyounes: eulerschezahl il voit le monde en binaire
Littleyounes: c'est pas possible
BigUP: Littleyounes, ceux qui ont un pistolet chargé et ceux qui creusent. Toi tu creuses !
Littleyounes: :'(
Littleyounes: coup dur
dwarfie: dur ... mais juste ...
dwarfie: ;)
Littleyounes: :(-
dwarfie: apres , un bon coup de pelle bien ajusté , ca fait le boulot aussi bien qu'un pistolet et c'est moins tracable :smiling_imp:
Littleyounes: :confounded:
Alshock: bientôt un jeune entrepreneur disruptif va nous présenter les pistopelles
Gapoulai: ^^
Alshock: une idée à creuser
Littleyounes: BigUp à tout mes frères au quartier
leojean890: #151 ça ne passe sûrement pas gold :s
Haashi: si je pense
Littleyounes: euuh
Littleyounes: si
Littleyounes: x)=
Grillaume: top 400 qui passe environ ?
jdeveil: qui parlait de 30% à peu près ?
Haashi: non pas 30% en gold
jdeveil: c'était que pour la silver alors ?
jdeveil: ok
jdeveil: mais du coup, quel pourcentage pour la gold ?
leojean890: pour fall challenge 2020 ils ont fait passer à 115 alors que c'était blindé comme now
leojean890: donc.. pas sur qu'ils fassent passer #154 mais je serais pas contre^^'
WhatTrickeryIsThis: top 300 ça semble déjà un challenge interessant, mais peut être un poil hardu
WhatTrickeryIsThis: un ligue gold à 2000 personnes ce week end ce sera pas fun
leojean890: un peu trop ouais
leojean890: 300 ça ferait 1000 personnes dimanche maybe
leojean890: ils peuvent faire 200 comme SC2020
leojean890: je me contente pas de #154 je vais continuer à submit pour bencher mes magic nbs
jdeveil: argl 150 c'est chaud... va falloir mettre un coup de cravache :'(
jdeveil: bon ben j'y retourne...
leojean890: bah on sait pas encore si ça cut à 150
jdeveil: oui ça reste une estimation de votre expérience passée
jdeveil: mais j'en suis super loin si c'est 150... snif
Tiouz: Ça va pas cut à 864, donc faut que j'améliore !
jdeveil: voilà pareil
leojean890: j'ai galéré de ouf pour revenr à 150...
Tiouz: Je passe 80% du temps à calculer les actions, ça fait pas plaisir
leojean890: hier matin c'était trkl mais le soir je bloquais à 300
jdeveil: tu es en heuristique ou tu as une simu genre MCTS ou BS leojean890 ?
bamax: je crois qu'il est en heuristique (du moin, il l'etait :) )
Rajh: Qqun pourrai m'aider en MCTS ? Je galère tellement pour dépasser le 1500 ...
Tiouz: 1500 quoi ?
bamax: de classement j'imagine
Tiouz: bronze ou silver ? Il y a une grosse différence
Rajh: Classement Silver (total quoi) xD
bamax: perso je suis en heuristique. Pour le moment je suis qu'as 1400 (je peux descendre a 1200 a peut pres)
Tiouz: Et c'est quoi ton souci ?
Rajh: Je comprends pas quoi faire pour améliorer :D
Tiouz: C'est le problème...
Vlavv: Oh la gaffe, le portable que j'ai rallumé ce matin avait gardé un onglet ouvert avec une ancienne version du code
Rajh: J'ai test le MCTS solo, en prenant en compte l'adversaire, en faisant une eval a la place des playouts
bamax: perso, faire un wait au premier tour me fait gagner des place. Si jamais vosu faite pas ca, je conseil
Vlavv: Ça fait pas bon ménage
Tiouz: Tu as combien de rollouts ?
Tiouz: bamax il le fait aussi le mien
Rajh: Je fais a peu près 100 full game par tour en ce moment (car j'ai chargé un peu la mull sur les possibles moves sinon j'avais trop de branches)
Tiouz: 100 c'est pas assez du tout, tu n'as pas le temps d'apprendre quoi que ce soit. J'ai 1000 et je suis 857 silver
bamax: d'ailleur est-ce que vous savez ce qui est le plsur entable comme algo la? (genre l'algo qu'utilise les premier)
Tiouz: Je crois que jolindien est en heuristique, donc pas vraiment d'algo mais juste une grosse réflexion sur le jeu
Rajh: Tiouz tu fais du full random ou de l'heuristic pour les playouts ?
Tiouz: Du full random
Tiouz: J'ai pas réussi à avoir une heuristique intéressante
Tiouz: Mais j'ai quelques heuristiques qui réduisent mon nombre de coups
Rajh: Tu élague quand même pour les branches non ?
Rajh: ok
Tiouz: Il n'y a pas d'élaguage en MCTS
Rajh: Non mais je voulais dire sur la génération des nodes tu génère pas tout les coups
Bon[]Crayon: Automaton2000 La logique, c'est plus fort que toi.
Automaton2000: tu as du code de base pour que ça marche
Bon[]Crayon: Automaton2000 Merci.
Automaton2000: ou tu peux faire mieux que le boss !
Vry: bon Automaton2000, tu m'aides pour valider ma simu. mono-joueur ?
Automaton2000: dans le monde du dev
BlaiseEbuth: Yo tout l'monde ! Automaton2000 ! AutomatonNN ?
Automaton2000: et t'as des trucs drôles
Trisard: yo
sangii: Bonjour, (désolé si l'information étais quelques part) Il est possible de savoir l'action jouer par l'adversaire, ou notre programme doit la déduire ?
egaetan: on peut pas
sangii: Ok, bien ce qu'il me semblais, dommage
Vry: Après tu peux déduire certain truc mais ça ne sera pas exhaustif
BlaiseEbuth: *turcs
sangii: Toujours possible en comparant le plateau du tour précédent avec celui actuelle
Oioi: Attention au cas où tu t'es endormi avant ton adversaire
Vry: Sauf si tu fais WAIT, tu peux rater plusieurs tour
sangii: En effet, en effet, merci de me le préciser :)
Luksis: On est presque 3000 en argent, c'est beaucoup quand même
BlaiseEbuth: Bon. Gros morceau aujourd'hui: Comprendre pourquoi mon bot est une paillasse.
Bob: si ca peut plaider en faveur de mettre le cut en-dessous de moi, ca me va
Tiouz: Bob, moi ça me va bien 25% comme pour bronze^^
Tiouz: C'était même plus que ça bronze, quasi 50%
hcanon: Quelqu'un sait quand est mise en place la ligue gold ?
BlaiseEbuth: (╯°□°)╯︵ ┻━┻
Bob: oui
Bob: :rofl:
hcanon: nice merci
Bob: Blaise va peter un fusbile
Vry: +1
dwarfie: tout le monde le sait
Luksis: ce soir aux alentours de 18h
Luksis: à +ou - 2h près
hcanon: Merci Luksis !
Vry: Dans 4h 20 minutes (c'est affiché en haut à gauche)
Vry: :upside_down:
Bob: on dirait le twich du channel de sumo que je regarde le matin, on repond en boucle aux memes questions 25 fois par jour
Trisard: :joy: Vry
BlaiseEbuth: Le fusebile c'est une sorte de crapaud Bob ?
dwarfie: s/jour/heure/
Bob: BlaiseEbuth de carpaud, peut-etre
BlaiseEbuth: :thinking:
Luksis: c'est pas affiché l'heure vy
Luksis: vry je vois pas ou tu vois l'heure
dwarfie: fusebile ... c'est pas ce qui se passe a la campagne ? ;)
BlaiseEbuth: Le second dégré n'est pas affiché non plus faut croire...
BlaiseEbuth: *degré
Vaurtitoux: Blaise code-t-il en Pascal :flushed:
Luksis: ah non mais je croyais que c'était sérieux
Bob: serieux fail
BlaiseEbuth: C'était un autre temps Vaurtitoux
BlaiseEbuth: Fusebile ça fait un nom cool pour un monstre...
BlaiseEbuth: Ou un bon surnom pour Mélanchon... :thinking:
Bob: un objet idiot dans Harry Pottter
Bob: le nom d'un professeur peut-être
BlaiseEbuth: Y'a déjà les baveboules
Bob: "bonjour preofesseur Fusebile !", dit Harry
mapapin: Hello, pour les changements de league ils prennent un pourcentage défini de personnes à faire passer ?
Bob: non, c'est choisi au doigt mouillé
mapapin: Haha d'accord ^^
WhatTrickeryIsThis: C'est Apo qui inflige la sanction
WhatTrickeryIsThis: il est plustôt lunatique
WhatTrickeryIsThis: faut faire gaffe là il est en sieste à cette heure
WhatTrickeryIsThis: le réveillez pas maintenant sinon il va être chaffouin
FrancoisBaveye: Hello le monde
FrancoisBaveye: Y'a combien de personnes dans le pallier légendaire en général ? C'est le top 100 ?
Bob: en general le cut gold -> legende c'est 15-20 à l'ouverture
Bob: pour avoir autour de 100 en fin de contest
FrancoisBaveye: Ok merci. Je vais devoir continuer à travailler mon IA je crois ^^
Bob: mais bon ce soir c'est juste l'ouverture pour gold hein
Luksis: et le cut gold , c'est abritraire si je résume bien
Luksis: argent -> gold
Bob: c'est toujours arbitraire
Tiouz: Mais attendez 2h...
Luksis: je pense davantage 4 Tiouz
Tiouz: Ce qui est bien quand on est mal classés, c'est qu'on a pas ce genre de soucis
Luksis: Hahaha
Luksis: quand on est extremement bien classé non plus
JBM: un extrêmement bien classé local a l'air de dire que c'est sensible
FrancoisBaveye: En fait je suis 93° et j'aurais pas accès à un ordi pendant plusieurs jours à partir de demain matin. Je voulais voir si je pouvais espérer fini legend sans rien toucher pendant 3 jours.
Bob: aucune chance à moins d'être top 5 maintenant
dwarfie: je ne peut qu'approuver la vision de Bob ... et encore ...
FrancoisBaveye: Vous avez regardé les IA des top classés ? J'ai du mal à comprendre comment ils choisissent de couper un arbre ou pas.
Luksis: c'est des simus
Tiouz: De ce que j'ai compris, c'est qu'ils n'ont plus de place pour seed, donc autant couper pour se refaire de la place
Vaurtitoux: Je pense pas
Tiouz: C'est l'impression que ça donne en tout cas
BlaiseEbuth: Donc tu n'es pas
dwarfie: l'astuce ... c'est couper et resemer au meme endroit ... quand ca passe c'est pas si mal ...
**dwarfie n'aurait pas du dire ca ...
Vry: Mais euh, mon bot Wood2 arrive à battre CatBoss, que fais-je encore ne Bronze !
Vry: https://www.codingame.com/share-replay/553136650
Tiouz: *dwarfie perds 100 places parce qu'il a donné le méga tips
BigUP: oh punaise ! c'est parti je code ca !! A moi le top 20 !
dwarfie: Tiouz ... rigole pas ... ca m'arrive souvent en plus :D
Vry: Go BigUP
BigUP: Tiouz, c'etait quoi le Mega Tips ?
BigUP: t'es plus à 1 ou 2 places pret ?
Tiouz: 3 comms plus haut
dwarfie: vite floodé le chat que ca disparaisse .... ;)
Tiouz: Moi je répète pas, juste j'écoute
Tiouz: bla
Tiouz: bli
jdeveil: demandez à Automaton2000
Automaton2000: bah si t'as pas fait les puzzles faciles de cg
jdeveil: Automaton2000 il le flood facile le chat
Automaton2000: un truc du genre ?
FrancoisBaveye: Ceux qui font "pas grand chose" de toute la game, et arrivés un peu avant la fin, ils tapent un sprint et ils gagnent. J'arrête pas de perdre contre ceux-là c'est un peu rageant ^^ https://www.codingame.com/share-replay/553130987
Vry: Mon MC est rigolo, il arrive à faire des parties complètes sans prendre un seul point ! :p
dwarfie: Automaton2000 ... tu sais bien que malheureusement le nombre de personne qui font les puzzles est a peine plus grand que le nombre de fois ou tu dis tortue ...
Automaton2000: et y a des trucs que je fais pour savoir si on est sur une ligne
dwarfie: Vry ... oui , mais c'est le meilleurs score a l'arrivée ;)
BlaiseEbuth: Résumé d'une partie simulée par flemBot:
BlaiseEbuth: http://chat.codingame.com/pastebin/6004011b-523a-4ab5-94f4-6dbd06f115d7
**Tiouz ne comprends toujours pas le private joke de tortue
Bob: c'est pas un private joke c'est un Automaton2000 joke
Automaton2000: je viens d'arriver sur le site ?
dwarfie: BlaiseEbuth ... c'est bien , tu conserves bien les sun pour les points bonus :yum:
Tiouz: Ba vu le nombre de fois qu'il le dit on dirait pas^^
BlaiseEbuth: Ouai...
Bob: Tiouz c'est bien là le joke
jdeveil: i y a une rule pour qu'il évite le terme ?
Bob: la rumeur prétend que non
Bob: pourtant c'est pas faut qu'on essaye de lui faire apprendre le mot
Bob: faute*
jdeveil: ah ouais... étonnant au vue de la quantité de fois que l'on voit le terme "tortue" ou "turtle" dans le chat
jdeveil: il faut éviter de mettre Automaton2000 dans la phrase pour qu'il l'apprenne
Automaton2000: ou alors doigt mouillé ouais, c'est plus ma méthode perso
dwarfie: perso , j'ai reussi a lui faire dire 12 ou 14 fois (faudrait que je verifie avec mes captures) mais en general c'est par vague ...
jdeveil: les phrases où son pseudo apparaissent doivent être écartées, sinon il tourne en boucle :p
dwarfie: Automaton2000 ...surtout nous dis pas comment tu l'as mouillé ...
Automaton2000: bon, on va pas te donner le bon conseil
BlaiseEbuth: Son pseudo est transformé en placeholder pour le pseudo de celui qui le tag
dwarfie: Automaton2000 ... si si , donnes ton conseil et on fera le contraire :rofl:
Bob: tortue aussi
Automaton2000: et bonne chance à tous
jdeveil: merci BlaiseEbuth
jdeveil: j'y avais pas pensé... :p
jdeveil: une simple transposition de pseudo et ça le rend plus chaleureux
jdeveil: sacré Automaton2000
Automaton2000: moi c'est ce qui m'a fait monter
jdeveil: la chaleur Automaton2000 ?
Automaton2000: je viens d'avoir une idée de comment faire ca
jdeveil: ou la tortue ?
BlaiseEbuth: Bon en fait mon générateur de valid moves est pété.
mrBen: il sort que des WAIT ?
jdeveil: ouf j'ai cru que j'étais le seul con à m'être cassé le derrière à en faire un :)
BlaiseEbuth: Pire. Il sort plus rien dès que j'ai fait un wait
jdeveil: ah pas de bol
jdeveil: c'est con pour le second jour...
BlaiseEbuth: Non j'suis con aussi jdeveil
jdeveil: ;p
jdeveil: c'est le flembot que tu nous as montré ?
mrBen: ça peux s'expliqué facielement selon comment tu gère l'adversaire
BlaiseEbuth: Ouai.
jdeveil: mais l'un faisait absolument rien, et l'autre plus rien après un wait, c'est peut être qu'il est en fasse d'un flemmard qu'il flemme aussi
jdeveil: +parce que
BlaiseEbuth: En fait dès qu'un joueur a fait WAIT il n'a plus de move jusqu'à la fin ^^
BlaiseEbuth: http://chat.codingame.com/pastebin/d4e71b8b-3e95-4e68-bbc2-b6152c005e2d
jdeveil: ah même si c'est l'adversaire qui wait !?
jdeveil: étrange ça
BlaiseEbuth: Chacun pour soit
BigUP: peut-etre il copie l'adversaire et fait un killer move à la fin ?
BlaiseEbuth: *soi
mrBen: mais pourquoi j'ai systematiquement des 404 avec le pastebin du chat ? une idée Automaton2000
Automaton2000: j'aimerais bien avoir un peu plus compliqué que ça, mais ça me fait penser à un truc
jdeveil: l'action arakiri elle existe pas dans ce contest... il faut la supprimer de ton code BlaiseEbuth
jdeveil: c'est comme la commande napalm pour la forêt adverse... yapa :'(
BlaiseEbuth: J'ai déjà viré sepuku, parce que ce bot n'a pas d'honneur à conserver. Mais tu voudrais que je lui enlève la possibilité d'en gagner un ? :cry:
jdeveil: :)
jdeveil: à force de faire des copier/coller de mon éditeur dans l'IDE, je vais me planter et le coller dans le chat le code du bot...
jdeveil: j'angoisse
BlaiseEbuth: Je serais obligé de te ban... :cry:
jdeveil: ba oui...
jdeveil: c'est pour ça que j'angoisse
BlaiseEbuth: :imp:
BigUP: jdeveil, n'hésite pas, on en profitera pour te le débugger
jdeveil: ah si je profite du débuggage ça pourrait être intéressant :D
jdeveil: m'enfin je suis qu'en heuristique pure... Un peu pourrie... Et pas super efficace :'(
jdeveil: j'ai peur de pas passer la barre du gold. snif
jdeveil: BlaiseEbuth ça m'amuse de voir ton pseudo, fût un temps, j'en avais un similaire, un autre de ses nombreux noms
leojean890: pareil, c pas sûr que #141 passe, vu ce qu'ils ont fait pour le FC
BlaiseEbuth: Ah ? Mes alts sont toujours dans ce genre là aussi.
Palmipedus: bon va falloir coder un peu et faire qqc mieux que heuristiques dept 1
BlaiseEbuth: LucieFaire notament.
leojean890: #136 également en heuristique pure, en fait en simu depth 1 avec eval
jdeveil: deveil -> devil... Les profs d'anglais l'ont très vite déformé, ça a été naturellement adopté :)
Palmipedus: #1800 ca va pas passer en gold :D :D
mrBen: #2021 non plus
Vry: Snif, mon MC choisit de faire WAIT sur le premier coup de la partie, c'est nul ! :p
BlaiseEbuth: Ma boîte mail poubelle s'appelle carrie.bde :3
Palmipedus: j'ai 9 minutes avant mon prochian meeting, chaud pour passer sur beam search
jdeveil: ouais on va être nombreux dans ce cas :)
leojean890: autant avoir une bonne simu depth 1 avant de passer à qqc de plus "profond" je pense, nn ?;p
jdeveil: Vry il y en a pas mal qui wait au début
leojean890: après c'est pas la même eval
OldJohn: Time to try multi-minimax !
Vry: Faut que je teste ça "pour de vrai" alors ...
Vry: Bon 3/3 win contre CatBoss, c'est suffisant comme test, après tout on est pas dans aérospatial ! :p
Vry: 10/10 pour mon #2 submit du contest (ligue Bronze)
Vry: :sunglasses:
jdeveil: Vry ca dépends combien de points tu lui mets dans la vue ?
Vry: Plus que lui :D ...
BlaiseEbuth: Bon. Déjà je remettais pas les "waiting" des joueurs à false au début des nouveaux jours... Ca règle pas tout, m'fin...
Vry: Mon MC mono-joueur fait 7k parties complètes en 45ms
jdeveil: 1pt, pas forcement suffisant... +10pts -> goto silver
Vry: 23/24 victoire pour l'instant et déjà top #4 Bronze
Kafeine: gg
jdeveil: ça sent bon pour toi
Vry: Donc en résumé un MC basique mono-joueur marche sur la ligue Bronze
jdeveil: même sans MC :p
Vry: Top #1 à 28%
Vry: Le plus important au final : c'est qu'il semblerait que je n'ai pas de bug !
jdeveil: :champagne::tada:
Oioi: C'est quoi le top #1 ? C'est #1 ? :stuck_out_tongue_winking_eye:
jdeveil: tiens ya un bug dans mon calcul de points... une case caillouteuse peut prendre 18 points... il faut que je revois ça :p
jdeveil: 20 + (-1 * 2) ba oui logique...
BlaiseEbuth: Ah. Il semble que j'ai plusieurs wait dans ma liste de move...
BlaiseEbuth: Non. En fait c'est juste n'importe quoi...
Vry: C'est ballot ...
BlaiseEbuth: Ouai nan, mais voilà. Je choisi l'index de la commande entre 0 et commandCount... Forcément..
Vry: Next step : multi-joueurs et surtout MCTS histoire de ne pas recalculer dix mille fois la liste des coups ...
Vry: All inclusive BlaiseEbuth :D
BlaiseEbuth: C'est toujours pas le bug que je cherche, mais c'est toujours un bug de moins..
BlaiseEbuth: En fait le random a pas l'air très random... -_-
Kafeine: Le problème c'est que tu peut être jamais sur avec du random
Vry: http://chat.codingame.com/pastebin/c75e6bea-3068-490a-a1fd-cb4d2cfbbda7
Vry: Cadeau
Vry: Avec ça aussi : int m = (fast_rand() * c_command) >> 15;
BlaiseEbuth: Ca tire sur quel ensemble ça ?
Vry: [0..c_command[
Vry: c_command étant le nombre de coups possibles
BlaiseEbuth: Je note.
BlaiseEbuth: M'fin je pense que le problème viens pas du moteur de rand...
Vry: Oui c'est clair ... il vient de l'interface ...
Vry: etc
Vry: tu connais la suite :smile:
jdeveil: c'est pas ma faute c'est mes doigts
BlaiseEbuth: :no_mouth:
jdeveil: :kissing:
Dahll: Vous avez des heuristiques qui marchent bien ?
BlaiseEbuth: Tu payes combien ?
jdeveil: bah pas assez pour la gold pour moi :p
Kafeine: Marchent non mais si tu veut j'en ai une qui rampe
BlaiseEbuth: En python ?
jdeveil: LOL
Vry: Non Dahll, il faut regarder les parties pour faire des heuristiques et j'ai pas encore pris le temps de le faire
Vry: GG Vry ! :p
Kafeine: T'es trop occupé à regardé ton rang ?
BlaiseEbuth: :grin:
Vry: Ou à coder quand j'ai un peu de temps ...
Zorg1: c'est bon vous êtes Gold ce soir ? je vous rejoindrez plus tard
BlaiseEbuth: Kafeine https://www.youtube.com/watch?v=FweAZfgZMvw
Kafeine: Je connaissait pas
Kafeine: J'aime bien
Vry: Zorg1, non moi je suis en décalage d'une ligue ... je viens de sortir de Bronze, on verra pour Gold demain (sinon c'est mourût pour moi)
AnthonyHilala: c'est dur de passer Silver je trouve ...
Kafeine: Si c'étais facile ce ne serais pas une compet
BlaiseEbuth: Bon... En fait...
BlaiseEbuth: http://chat.codingame.com/pastebin/e2243889-3a62-4d96-9925-6aa6af992b95
BlaiseEbuth: Ca doit quand même être pété...
BlaiseEbuth: :thinking:
AnthonyHilala: c'est notre prof qui nous a mis sur ce jeu et du coup je sais pas trop ce qu'il va noté à part notre rang, lol
Mazelcop: prof d'algorithmie ?
Von-Karma: bon bah prendre en compte les ombres ca vaut le coup 400 -> 30
Vry: Fait un MC classique AnthonyHilala, ça passe tout seul en Silver
jdeveil: Von-Karma je suis en train de les prendre en compte aussi, mais ça marche pas aussi bien que toi ! :astonished:
Vry: Moi c'est l'adversaire qu'il faudrait que je prenne en compte ...
Kafeine: Les ombres caylemal
BlaiseEbuth: Moi c'est moi. L'adversaire a le droit de jouer mais pas moi...
Kafeine: C'est pas ma faute à moi ~
jdeveil: BlaiseEbuth tu wait avant de planter c'est ça ?
jdeveil: tu as inversé les actions ! :)
BlaiseEbuth: Je WAIT avant de WAIT avant de WAIT avant de....
jdeveil: c'est quoi les seed sous les wait dans ton pastebin ? c'est pas les actions prévues pour la journée ?
BlaiseEbuth: Nan c'est les moves possibles pour chaque tour.
jdeveil: et tu commence par wait tout le temps... rigolo...
BlaiseEbuth: Moi j'ai WAIT. Et l'adversaire il a le choix
jdeveil: les premières commandes sous le new day c'est celles envoyées par CG ?
jdeveil: et les autres celles que tu compute
BlaiseEbuth: Nan c'est que les mienne
BlaiseEbuth: Donc oui, ça marche au début
Vry: Visiblement, y'a un bug !
jdeveil: C'est étonnant, premier tour tu trouve que tu peut wait et seed, et apres tu trouves plus que du wait...
jdeveil: d'ac avec Vry
BlaiseEbuth: You are wise guys
Zorg1: je dirais plutôt que Blaise code des features qu'il oublie de se documenter à lui même
jdeveil: messieurs les connaisseurs, comment je récupère la seed d'une game qui se déroule dans l'IDE ?
BlaiseEbuth: En bas, dans options
jdeveil: Ah yes thks
Kafeine: Faudra que l'on m'explique pourquoi à chaque fois que je fais une modif je gagne contre le boss, puis après il repeint les mur avec mon ia
Kafeine: je gagne une fois *
BlaiseEbuth: It's a trap
jdeveil: il apprends de ses erreurs
jdeveil: -s
BlaiseEbuth: il apprends de ses erreur
Gr0mph: Et voila je vais pouvoir demande de l'aide à mon site préféré de Q&A:
**Tiouz attends que la ligue or ouvre pour enfin gagner des places en silver
Gr0mph: Unhandled exception: Stack Overflow
Gr0mph: :thinking:
Tiouz: C'est une question Gr0mph ?
jdeveil: BlaiseEbuth non : il apprend
Gr0mph: C'est une blague. :) Mias je crois n'avori jamais eu cette information telle qu'elle en debug.
jdeveil: sans s, pas erreur :p
mapapin: Est-ce que utiliser l'opérateur [] est plus rapide que les itérateurs en C++ ?
OldJohn: Cela dépends
OldJohn: Sur quoi ?
BlaiseEbuth: Oh bah flûte jdeveil, j'eus cru.
mapapin: Un vecteur ici
OldJohn: un tableau, un vecteur ?
YahyaBahjaoui: j'ai completer 5 arbre et malhré ca je gagne pas leboss
YahyaBahjaoui: ou est le prob
BlaiseEbuth: Si tu veux être rapide utilise pas de vecteur
YahyaBahjaoui: https://www.codingame.com/share-replay/553233853
YahyaBahjaoui: voila le replay
mapapin: Quel est le mieux pour stocker des stings ?
OldJohn: En fait si tu veux être rapide, fais du C :-)
Tiouz: Lui il en a complété 6, et 6 > 5
Kafeine: Si tu veux être rapide fait de l'assenbly
mapapin: Oui je pourrais mais je suis parti sur cpp donc pas chaud de repartir sur du C haha
BlaiseEbuth: Captain Obtiouz
Kafeine: Un vrai codeur bouge lui même ses électrons
Mazelcop: YahyaBahjaoui compléter les arbres dans les zones vertes rapport 4 points de plus
YahyaBahjaoui: kafeine mais quelle est l'astuce pour gagner le boss
mrBen: https://xkcd.com/378/
OldJohn: Tu as qu'à utiliser des tableaux de taille fixe à la place de vecteurs...
Kafeine: YahyaBahjaoui si je savais je serais pas bronze ^
YahyaBahjaoui: comment controler les arbre qui en dans les zone verte
Mazelcop: ça dépend de où tu poses tes seed
BlaiseEbuth: Comment comment ?
Gr0mph: En fait tes arbres quand ils produisent du soleil ils te font gagner aussi des points
YahyaBahjaoui: je le seed n'importe ou
Mazelcop: ben c'est bien ça le problème :)
YahyaBahjaoui: je seed pas dans emplacement exact
Gr0mph: Cad que si tu les coupes pas, il te raméne day/3 * size
YahyaBahjaoui: comment controler nos seed
Gr0mph: (environ si ton adversaire ou toi n'est pas aggressif)
YahyaBahjaoui: l'emplacemen tdes seed
khealer: YahyaBahjaoui, tu as regarde l'ennonce ?
YahyaBahjaoui: ben oui
Mazelcop: SEED index0 index1 : faites que votre arbre sur la case index0 lance une graine sur la case index1.
AnthonyHilala: quelqu'un peut m'aider à me faire passer silver svp ?
BlaiseEbuth: Non
Tiouz: AnthonyHilala Ouais envoie 100€ (mais parle pas trop fort il y a des modos ici)
Vry: AnthonyHilala : code un MC, égocentrique ça passe tout seul !
BlaiseEbuth: C'est une compétition AnthonyHilala
**Tiouz se retient de demander où en est la simu de Vry
Vry: Et c'est fait en quelques heures
Vry: Tiouz : simu. mono joueur terminée ! :p
Tiouz: gg !
Zorg1: plus que l'éval à coder quoi ...
Vry: Osef de l'éval. Zorg1, je fais du MC !
Vry: Tu ne vaudrais pas que je réfléchisse pendant que tu y es !
Vry: *voudrais
Tiouz: J'ai essayé de trier les moves selon une certaine éval, mais c'était que de la merde
dbdr: the simu IS ze eval
Vry: Tu as quel type d'algo. dbdr ?
Beretta_Vexee: Tiouz mais au final cela revient vite a faire de l'heuristic.
dbdr: beam
Kafeine: Bon d'accord ma simu mono joueur est largement supérieure ) ma multi joueur
Vry: Donc tu as une éval. pour le coup ...
Tiouz: Beretta_Vexee, oui mais j'arrive pas à avoir une heuristique simple (à part les trucs obvious)
dbdr: eval, oui
Kafeine: Ca reste du spaguetti mais je suis bronze 5
dbdr: je viens de booster mes perfs, meme pas sur que ça aide, on va voir
Beretta_Vexee: Tiouz, le problème c'est que les heuristic complexe demande de faire de la prediction de l'état du tableau à n coups. Ce qui devient vite aussi complexe que de coder autre chose.
Vry: Pas mal Kafeine, mais tu dois avoir un bug
Beretta_Vexee: La j'ai laché l'heuristic pour recoder un script propre pour essayer de faire de MC.
Beretta_Vexee: mon simulateur est pas encore complètement au point.
Kafeine: J'ai quelques problème dans le machin en effet je l'appelle pas un spaguetti sans raison
Vry: J'ai des perf. pas mauvaise j'ai l'impression : 320k move / 45ms ... Mais mon bot fait beaucoup trop de popcount à mon goût.
Beretta_Vexee: J'avais essayé une fonction d'eval pas trop mal un fois que tu as un simulateur partiel. Les deux joueurs ne plante plus et se contente de grow et complet le maximum d'arbres au 23 tour.
Beretta_Vexee: Mais c'est vite lourd en calcul.
Beretta_Vexee: je suis en python donc les perfs ...
toma69: bonjour, est-ce que le soleil tourne avant ou après le changement de jour ?
BlaiseEbuth: En même temps
Pedrito_B: ca tourne puis ca collecte
Beretta_Vexee: les ombres sont portés au début du jour et ne bouge pas. direction = day % 6
Pedrito_B: puis tu joues
Palmipedus: 1600 noeud depth 6 au premier tour.... va falloir elaguer encore
toma69: dac si je veux simuler un changement de jour je dois d'abord faire changer la direction du soleil, puis calculer les points soleil suivant cette direction là
Beretta_Vexee: C'est cela
toma69: parfait
BlaiseEbuth: La direction du soleil c'est day%6
jdeveil: qui a un algo heuristique et classé dans les 150 premiers silver ?
BlaiseEbuth: Pas toi.
jdeveil: ba non justement...
Tiouz: Regarde les python...
Gronahak: Y'a ashelkov 14e en typescript
polpoul: moi 268 ^^
polpoul: mais ca monte :p
Trisard: ça devrais pas descendre plutot ? ^^
polpoul: ben oui c'est bizarre...
BigUP: Palmipedus, depth 6, ca me parait beaucoup...
polpoul: gagné 140 places depuis hier soir
BigUP: polpoul, héb ah c'est toi qui me les à piqué mes places !
polpoul: BigUP thx man :)
BigUP: polpoul, ca ne m'arrange pas
Oioi: on est 140 à submit peut-être ? ^^
BigUP: polpoul, je vais etre un peu juste pour la gold
Palmipedus: BigUP c'est bien ca mon probleme ca fait juste 6 jours (1/4) du jeu
GTS: un pronostic sur le cut ? top300 ? top500 ?
Zorg1: bigup: tu feras un double jump direct en légende alors
BigUP: Palmipedus, si tu réduisais a 1 ou 2 jours ?
Tiouz: GTS Je te dis ça dans 1h
Kafeine: LOL mon code tout merdique est arrivé en argent
GTS: Tiouz trop facile les pronostics à postériori :p
Bob: moi je dis 500 mais c'est plus l'espoir qui parle :D
GTS: je partage le même espoir du haut de ma 495e place ^^
Palmipedus: BigUP si je reduis ca fait effectvement bcp mois de node, mais c'est moins utilile pour choisir le meilleur coup
rafaelSorel: gold top 100 ~200 le dernier contest
mrBen: moi je dit top1
mrBen: (c'est comme le juste prix hein ? faut pas dépasser :wink:)
Palmipedus: Bob ton conseil sur le nb de jours a simuler?
Tiouz: Le juste prix faut être le plus proche, donc je dis top 2 pour être sûr de battre mrBen
BigUP: Palmipedus, A 6 jours, ton meilleur coup, il ne veut plus dire grand chose
mrBen: :sweat_smile:
Bob: Palmipedus : hmmm 42 ?
Tiouz: 69 ?
Bob: ou 666
mrBen: t'as inversé Bob, c'est 24 !
Bob: au choix
Palmipedus: BigUP, hum donc tu conseilles moins de jours mais une eval meilleure?
GTS: moi j'aime bien 4 jours, en tout cas pour les 4 derniers
Tiouz: mrBen mind = blown
BigUP: Palmipedus, je suppose que ce serait mieux non ? en gros si l'adversaire ne joue pas 1 seul coup comme t'a prévu, ton eval est KO
BigUP: sur 6 jours, ca peut faire un gros ecart
Palmipedus: ha mais en fait je simule pas les coups de l'adversaire
BigUP: ha oui, donc la ton eval a 6 jours ne veut plus rien dire ! :)
Vry: En même temps si tu simules 24 jours, pas besoin d'éval. ! :sunglasses:
Vry: GG Kafeine
Palmipedus: Vry en effet :D
Kafeine: merci
BigUP: tin les nazes dans le dataset COCO2017 ils ont été labeliser une zone de 7x8 pixels !
mrBen: what
Bob: on n'a psa idee
Zorg1: kézako "COCO2017" ?
BigUP: Zorg1, c'est un dataset d'entrainement pour faire de l'IA
Vry: Avec des squelettes ?
Zorg1: dans le placard ?
Vry: Non le film d'animation "Coco" sorti en 2017 ...
Zorg1: ah oui je vois ça, connaissais pas
Vry: ... bon passage de Ligue, moi je vais aller courir dans le frais ...
Vry: Ben regarde le pendant le passage Gold ... Zorg1 :)
Zorg1: wé wé
Vry: si si si
Ylec: Bon je n'ai pas eu le temps d'améliorer mon programme, je doute passer gold ce soir...
poloch0n: vous pensez que ça coupe a combien le gold ?
Ylec: bonne question :d
Tiouz: À 786 pour me faire passer
Bon[]Crayon: Automaton2000 alias TOTO2000
Automaton2000: mais j'ai vu des gens qui ont un code qui passe les tests de recrutement mais ils font pas du ...
Tiouz: du quoi Automaton2000 ?
Automaton2000: juste parce qu'il a une bonne raison
Ylec: lol j'aimerai bien Tiouz :)
mrBen: il font pas du quoi Automaton2000, on doit savoir
Automaton2000: salut tout le monde sait que je suis le seul à faire un mc ?
Vry: C'est faux Automaton2000, on est deux !!!
Automaton2000: en fait il faut que je le ferai
polpoul: mrBen Automaton2000 te dit qu'ils font pas du mc
Automaton2000: il ne serait pas la première fois de ma vie
Bon[]Crayon: Automaton2000 Tu as perdus les clefs du temps.
**Automaton2000 tend une tortue à Bon[]Crayon et à automatonnn
Bon[]Crayon: oh
mrBen: YESSSSS
Tiouz: gg
BlaiseEbuth: :p
**mrBen se tape une grosse barre de rire
Vry: GG Bon[]Crayon !!!
Zorg1: tiens personne n'a posé les questions rituelles ?
Mazelcop: c'est quand la ligue or ?
Vry: BlaiseEbuth, c'est quand la Gold ?
Zorg1: ouaip et y aura combien de gens en gold ?
TyraEl: ça cut à combien pour la gold ? :)
mrBen: C'est à quel heure l'ouverture de Legend
Kh4z: :no_mouth:
jdeveil: BlaiseEbuth va ban tout le monde :)
BlaiseEbuth: Me tentes pas
jdeveil: ça pourrai être drôle de synchroniser un ban avec le passage en gold... Mais il faudrait savoir à quelle heure il est pour préparer la commande ;)
mrBen: faudrai un bot qui \/slap ce genre de questions
Bon[]Crayon: !gold
Draufganger: https://www.codingame.com/replay/553295549 quelqu'un peut m'expliquer pourquoi au tour 32 mon arbre index=3 size 2 , projette une ombre size 1?
BlaiseEbuth: Les ombres ne sont calculées qu'en début de tour.
Bob: ^
BlaiseEbuth: Le seul moment où elles servent.
Beretta_Vexee: les ombres ne sont calculées qu'en début de jour. Elles ne bougent pas pendant une journée
Beretta_Vexee: jour != tour
Bob: et la ton arbre vient juste de passer taille 2 pendant le jour en cours
Bob: les ombres affichees sont celles au debut du tour en cours
Bob: donc quand ton arbre etait encore de taille 1
Zorg1: oui en français, "tour" et "jour" on se mélange vite les pinceaux :(
Draufganger: Ah merci
WhatTrickeryIsThis: pourquoi quand je score mon 1er arbre ça fait 24?
Pedrito_B: et si on seed et grow dans le tour
Pedrito_B: il n'y a pas d'ombre?
WhatTrickeryIsThis: je m'attends à nut + 3 = 20+3
BlaiseEbuth: Elle sert à rien pendant le jour l'ombre Pedrito_B
Gronahak: http://chat.codingame.com/pastebin/be579d60-a796-4744-ab65-a037441602f8
Tiouz: WhatTrickeryIsThis la formule c'est 2*richness-2
jdeveil: Merde Bob je commençais à te rattrapper et là pouf -200 places...
Pedrito_B: c'est clair pas de collecte, ok
WhatTrickeryIsThis: putin qui a changé la formule ?
Gronahak: les lutins de la forêt
WhatTrickeryIsThis: y à ds claques qui se perdent :rage:
Tiouz: la formule qui dit le nombre de suns c'est pas la même que celle qui dit le score gagnée
WhatTrickeryIsThis: merci tiouz
Tiouz: Je veux bien qu'on partage les places que tu vas gagner
WhatTrickeryIsThis: pour l'instant c'est mon dummy, il y gagne pas
WhatTrickeryIsThis: il compte rien
WhatTrickeryIsThis: genre pas de bonus sur les 1 :D
WhatTrickeryIsThis: nice
BlaiseEbuth: Ahah! Les arbres sont des paillasses! Faut les réveiller en début de jour...
mrBen: :laughing:
mrBen: oui
mrBen: tu m'étonne que ton bot est flémard
WhatTrickeryIsThis: en parlant de paillasse
WhatTrickeryIsThis: il est où :skull:
BlaiseEbuth: En fait c'est juste un pôv patron avec des employés flemmard... Il y peut rien...
WhatTrickeryIsThis: je pensais justement à mon boss, j'avais réu à 17h30 xD
WhatTrickeryIsThis: trop occupé à debuggé ce merdier, ils ont changé la formule du scoring
BlaiseEbuth: Y'a une formule qui a changé ?
WhatTrickeryIsThis: le complete
WhatTrickeryIsThis: avant c'était nut+richness
Tiouz: Non, il a jamais changé
Zorg1: vu qu'il est infaillible il n'a pas pu mal la comprendre, donc ils l'ont changé
WhatTrickeryIsThis: ou nutela + welth pour ceux qui aime l'english
Zorg1: c'est logique :p
BlaiseEbuth: Un coup de la mouette encore...
GTS: ça a changé ?
WhatTrickeryIsThis: quoi ils ont pas changé?
GTS: je vois pas de diff
WhatTrickeryIsThis: j'ai été bluffé depuis le début?
TyraEl: je crois pas qu'elle ait changé
GTS: aucun commit dans ce sens dans le refereee
WhatTrickeryIsThis: arrêtez de me troller, ça pourrait se retourner contre vous
Tiouz: Vraiment, WhatTrickeryIsThis tu as juste confondu les suns et le score^^
Zorg1: are you troll enough to troll WTIT ?
WhatTrickeryIsThis: mais les suns j'ai bon
[CG]SaiksyApo: Bob: Il faut que j'arrete de push avant l'ouverture. Also bob: Et si je pushait a 17h53 pour changer.
Zorg1: ^^
WhatTrickeryIsThis: bob a fait une connerie?
boumagik: le boss arrive bientot ?
boumagik: jai le submit qui me démange :s
Alshock: Ces IA submissives
WhatTrickeryIsThis: puisque vous êtes tous là à attendre ça tombe bien. Je propose un tuto pour passer gold assez facilement
WhatTrickeryIsThis: https://www.youtube.com/watch?v=xwycTWc7dpo&t=13s
nicolasD: Il coupe même pas d'arbre T_T
Arthurmtro: Celui ci fonctionne mieux https://www.youtube.com/watch?v=dQw4w9WgXcQ
nicolasD: +1
mrBen: avec la photo de profil qui vas bien, c'est parfait Arthurmtro
Arthurmtro: Merci bien :p
BlaiseEbuth: Arthurmtro :x: :punch:
Arthurmtro: Au moin j'aurai reussi quelque chose sur ce challenge
Arthurmtro: rickroled les plus forts :_
Arthurmtro: rickroled les plus forts :)
BlaiseEbuth: Pas moi.
BlaiseEbuth: Je reconnais l'url
Arthurmtro: Wow
mrBen: w4w
mrBen: faut chercher ça
-TheWalder-: Je vais la reupload pour changer l'url
Arthurmtro: Tu a dut tellement te faire avoir de fois :o tu te rend compte que le fait de reconnaitre cette url demontre d'un skill immense
mrBen: par contre ça marche pas avec les nombeurs reupload effectivement
BlaiseEbuth: Je vais te dénoncer pour vol de propriété intellectuel -TheWalder-
-TheWalder-: xD
Arthurmtro: Blaise desormais je verrais ton pseudo en tant que "sensei"
Tiouz: OMG je viens de voir un GROS bug...
BlaiseEbuth: :bug:
Tiouz: Ça devrait changer pas mal de trucs
BlaiseEbuth: Tu vas perdre 1000 places...
Tiouz: dans ma simu, quand p2 faisait un complete, les points allaient à p1
-TheWalder-: Si vous plantez un arbre dans la case 50 vous gagnez la partie.
Arthurmtro: Comment xD
Bob: ben SEED 42 50
Bob: easy
BlueGhost31: perdu SEED 50 42 ;)
Tiouz: Tu peux faire ça tour 1 ça poserait pas trop de problème
WhatTrickeryIsThis: nan pas perdu
Arthurmtro: Mais il n'y en a que 37 donc complexe non?
WhatTrickeryIsThis: yà un problème de tange, il faut d'abord un arbre de taille 15 pour lancer plus loin la seed
Bob: non mais si tu fais pas d'effort aussi
WhatTrickeryIsThis: GROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\nGROW 42\n
Arthurmtro: par contre la case -37 rapporte pas mal
WhatTrickeryIsThis: SEED 42 50
-TheWalder-: Si tu fais l'action GROW [tree] time 10 il passe à la taille 15 logique
nicolasD: il va te falloir économiser un sacré tas de soleil ! XD
Bob: SEED HULK WAIT
Arthurmtro: x)
Bob: voila, gagne
BlaiseEbuth: SEED DOUBLE HULK WAIT.
WhatTrickeryIsThis: bob, tu as planté un Hulk dans un ... WAIT ?
Bob: pauvre Wait
-TheWalder-: nicolasD faut attendre les soldes en général c'est au tour 2.73
Arthurmtro: Pour gagner il suffit de faire SEED 14 10 && SEED 12 8 && .... et ainsi de suite
Arthurmtro: Cela semble logique
nicolasD: est-ce qu'il peut y avoir une seed avec que des cases arides saus les 4 de départs ? ^^
nicolasD: sauf*
WhatTrickeryIsThis: Apo ne mettra le boss que quand y aura plus de submit en cours ET quand plus personne ne trollera dans le chat
-TheWalder-: Je ne pense pas que le placement des cases richness = 0 soit complètement aléatoire mais des paternes préparés à l'avance.
Arthurmtro: Apo ??
WhatTrickeryIsThis: y à un map générator
fenrir: y'a au max 10 case arides
BlaiseEbuth: Y'a pas de trolls dans ce chat.
fenrir: c'est aléatoire mais symétriques
WhatTrickeryIsThis: et les cailloux sont disposé symétriquement
mrBen: t'es poutant bien là BlaiseEbuth
Arthurmtro: Qui est Apo ?
BlaiseEbuth: Je ne suis pas le droide que vous cherchez.
WhatTrickeryIsThis: Apo c'est celui qui faut pas faire chier, il a pouvoir de mettre le boss et éliminer les joueurs
TyraEl: c'est un peu le roi des Silvers
-TheWalder-: C'est le MJ
-TheWalder-: C'est quand même chaud que je passe plus de temps sur CG qu'à faire mes devoirs.
BlaiseEbuth: Vilain garçon.
Troph: j'ai tellement le submit qui me démange là
Troph: mais je vais attendre le boss
Tiouz: Non mais Apo il est sympa il attend que je trouve mon bug pour mettre le boss
-TheWalder-: BlaiseEbuth tant que la moyenne est bonne ça me va
Arthurmtro: Wow apo c'est le boss final donc >
Arthurmtro: :o
[CG]SaiksyApo: Tu peux resubmit toi, tu passes pas :°
-TheWalder-: oof
BlaiseEbuth: Toi tu crèves, toi aussi..
mrBen: et il viens troller en plus d'être boss final
Arthurmtro: x)
WhatTrickeryIsThis: quand tu cherche Apo dans le le leaderBord tu as des résultats avec des gens de singAPOre
WhatTrickeryIsThis: ça sent l'ELS mal maîtrisé
Arthurmtro: :/
pierre31: Bon allez je vais me résigner à apprendre à coder un mtcs. En plus la simu est facile sur ce contest, il faut saisir l'opportunité.
Arthurmtro: Vous avez passé facilement la ligue Bronze ?
Tiouz: Ça allait
pardouin: ça passe facile en Haskell
mrBen: ligue bronze oui
WhatTrickeryIsThis: oui, regarde mon tuto, c'est comme ça j'ai réussi
pardouin: mais avant ça il faut faire un test depureté: https://test-griffor.com/
Arthurmtro: Ton tuto ?
pierre31: oui le bronze assez simple, mais le silver il y a un plafond de verre pour moi
Arthurmtro: x)
pierre31: WhatTrickeryisThis tu as appris à faire ton tuto :D
nicolasD: ça va ^^ c'est fragile le verre
pierre31: bravo !
rafaelSorel: le boss arrive
Arthurmtro: Inclinez-vous
pierre31: nicolasD il doit me manquer des neurones alors... snig
pierre31: snif.
nicolasD: pierre31 non juste un if =p
pierre31: nicolasD, effectivement mais j'en ai déjà pas mal, ils sont juste mauvais
Arthurmtro: T'inquiete dit toi Pierre qu'il existe toujours pire
Arthurmtro: (mon code)
polpoul: Automaton2000 es tu prêt ?
Automaton2000: surtout que je suis sur le site
nicolasD: je tente une approche par simulation ... Résultat => 10 graines, 5 T1 et aucun arbre coupé XD
pierre31: je vois des arbres partout dans ma tête, je deviens fou, ça me donne envie de vraiment jardiner.
Vry: o/
Arthurmtro: Burk tu veux dire.. sortir dehors ??!
Oioi: C'est pas NicolasD le jardinier ?
dwarfie: Vry , t'arrive trop tot pour le passage en gold :)
Vry: lol
pierre31: il se fait attendre ce boss silver
Vry: Je suis en décalage d'une ligue ... et le Boss a un drôle de nom : Default Ai
DefaultAI: Toi qui a un drole de nom
Vry: Et en plus je limite mon bot à 45ms ... je viens de m'en rendre compte ! :p
DefaultAI: (╯°□°)╯︵ ┻━┻
Vry: Avec 50ms je vais tout exploser ... les CPU ...
mrBen: c'est pas 100ms la limite ?
fenrir: tu as droit à 100ms sauf erreur
dwarfie: Vry ... la meme boulette que moi ... a propos , c'est 100 ms :rofl:
Vry: Oui, mais j'avais repris le code du contest d'avant ... :p
WhatTrickeryIsThis: il est pas content, c'est bob qui l'a mis de mauvais poil
BlaiseEbuth: Skoi ces liens chelous qu'il met sur le chat pardouin...
dwarfie: Vry ... comme moi quoi ... un copier coller vite fait :D
mrBen: chai pas, ban ?
Vry: 12k simu. c'est mieux déjà !
dwarfie: faite comme moi mettez un filtre pour pas voir ses messages ...
Vry: J'étais 1980 avant ... on va voir si ça sert à qqc
Passi10: 12k simu pour entrer dans le top 2000 ?
Vry: non j'étais à seulement 6k pour le top 2000 (en mono joueur attention : en gros je ne sais pas ce que fais l'autre)
Passi10: okok
Passi10: j'ai bien fait de rester en heuristique lol
mrBen: je suis 2088 avec une eval toute pété
Passi10: 172 en heuristique :D
Vry: Ce soir j'ajoute l'autre joueur ça devrait être plus "fort" ...
Tiouz: 900 avec un bug
mrBen: je suis en train de me faire chier pour rien à code une simu ?
Vry: non mrBen tu peux yaller !
Passi10: ça depend de tes objectifs
Vry: Moi c'est un mc tout pourri ...
Passi10: tout depend de ton eval au final
Vry: Prend exemple sur dbdr avec son beam
dwarfie: ca fait plaisir de voir quelqu'un avec le meme planning de codage que moi ... et les meme perfs ...
Vry: J'ai pas d'éval. !
dwarfie: :D
mrBen: de toute façon je vais la faire ma simu, il me manque juste à débuger les seed
Passi10: c tj mieux de l'avoir de tout façon
Pedrito_B: l'eval c'est le resultat de la simu (la partie entiere joué au pif)
Pedrito_B: non.
Pedrito_B: non?
Passi10: bon la nouvelle lihgue c'était 18H30 pétante avant hier, se sont endormis? :D
mrBen: c'est l'avantage de mcts, pas de simu à code (juste déterminer un vainqueur avec un match fini)
TidyMaze: de fonction de score tu veux dire mrBen
Vry: Voilà, ça c'est l'étap suivante transformer le MC en MCTS
Vry: +e
mrBen: *pas d'eval oui TidyMaze
Troph: Passi10 c'était pas 18h20 ?
pierre31: ah ok mrBen, vous simuler jusqu'à la fin du jeu.
pierre31: sans eval
Passi10: peut être bien
mrBen: c'est l'idée avec MonteCarlo
pierre31: j'apprends.
pardouin: lundi c'était en gros 18h20 donc avec un peu de chance ça devrait pas tarder
mrBen: (moi j'y suis pas encore)
TidyMaze: Vry une idée du gain entre MC et MCTS ? Mon cerveau tente de me persuader que c'est du temps perdu :P
mrBen: aucune idée, j'en ai jamais coder
mrBen: justement je suis parti pour faire mon premier sur ce challenge
Tiouz: C'est pas négligeable l'effet du MCTS
WhatTrickeryIsThis: mcts c'est pas si simple à coder et mc c'est simple mais tu peux coincé niveau evale
Tiouz: MCTS quand tu l'as codé une fois c'est facile après
Luksis: ah la ligue gold tjs pas ouverte
TidyMaze: Tiouz oui mais pas en haskell
Tiouz: MCTS c'est récursif, au moins tu as ça
Tiouz: (je connais pas assez haskell, mais si c'est fonctionnel ça devrait aller)
dwarfie: mcts recursif ... euh ... pas sur la ...
Tiouz: quoi ?
Pedrito_B: ok mais l'eval du MCTS c'est bien de simuler la fin de partie en tirant les actions au pif
Tiouz: Oui
Pedrito_B: donc de faire un MC du noeud à evaluer
dwarfie: pas toutes les actions au pif ... justement
Vry: TidyMaze : je ne sais pas encore mais je vais reprendre mon code de UTTT
Tiouz: T'en tire une seule (sinon ça revient à brute forcer)
Pedrito_B: à partir du noeud à evaluer
Passi10: yipii
WhatTrickeryIsThis: bim :skull:
Luksis: 2992 en gold
Luksis: HAHAHAHA
M_C: euh tlm est passé en gold ou quoi ?
fenrir: euh
nicolasD: Tout argent en or ?
Bob: woohoo je suis passe \^o^/
fenrir: ah non ça c'est réduit
dbdr: 654 en gold
Bob: <3
philRG: lol
pierre31: yes je suis passé
Luksis: 650
Kh4z: c'est beaucoup xD
philRG: y a eu un bug
Vry: MCTS devrait être moins crétin car il essaie d'orienter le jeu alors que MC il tire au hasard
pierre31: motivation pour coder le mtcs !!!
Tiouz: Je vais passer quand j'aurai corrigé mon bug
M_C: oulala ca va etre chaud pour legend :x
Zorg1: ahoui je viens de gagner 650 places ^^
Troph: snif je passe pas de peu...
WhatTrickeryIsThis: bob il a négocier avec Apo c'est louche
philRG: la ligue silver est vide?
R4N4R4M4: Ca c'est du cut :D
Tiouz: pierre31 Déjà, regarde UCB ça va améliorer ton MC
philRG: ah non 654
philRG: bon je peux aller me coucher
fenrir: ça reste assez large IMHO
Tiouz: L'avantage du MCTS est pas seulement dans l'arbre, mais plutot dans UCB
Bob: juste a temps pour faire le pont
mrBen: ça vas, enfin ça fait quand même 600-700 en gold
Bob: parfait
TidyMaze: Vry je suis aussi en MC sur UTTT, gold
pierre31: Tiouz ok, la question que je me pose c'est soit je fait move par move ou day par day
jdeveil: WOA j'y suis !!!!!!!
jdeveil: hourra !!!!!!!!!
philRG: j'ai bien fait de spam submit hier soir en prévision
Troph: Il est pas là le boss ?
Tiouz: pierre31 c'est move par move, à mon avis. Day/Day ça voudrait dire que les moves possibles à un noeud sont tous les moves possibles pendant un jour, c'est beaucoup
Bob: Troph leve les yeux
Vry: TidyMaze : et bien un MCTS sur UTTT c'est Légende du coup
Vry: UN MCTS standard non trafiqué
TidyMaze: il parait ^^
pierre31: Tiouz effectivement.
Tiouz: Vry il faut quand même avoir pas mal de rollouts
Tiouz: Il m'a fallu 10k rollouts de mémoire pour passer legend sur UTTT avec un MCTS pas trafiqué
Luksis: c'est vraiment une ligue or énorme
Vry: Ça c'est ma spécialité les générations de rollouts à la pelle :sunglasses:
Troph: Bon, j'étais 57 avant de submit, on verra ce que ça donne :/
Vry: Je dois être à 70k sur UTTT
Luksis: certains se demandent même s'il y a pas moyen que la légende soit aussi plus grosse que la normale
Luksis: vu que l'argent c'était presque 2000 et l'or 650
Tiouz: Vry ça me tue ça, je ne sais pas comment c'est possible. Après le challenge j'y retournerai pour améliorer ça
Vry: Bon MC-multi (avec UCB1 en bonus)
Tiouz: oh no internal error, alors que j'allais lancer le code sans le bug
Vry: Tiouz : du bitboard (sur 9 bits), optimisé aux petits oignons avec des structures de données réduites au minimum
rafaelSorel: BOSSOOT
Vry: D'ailleurs mon MCTS repart de zéro à chaque coup ... je n'avais pas réussi à le faire repartir en utilisant l'historique
Tiouz: Ça je l'ai !
fenrir: j'avais essayé aussi mais au final gérer la mémoire coutait plus cher des fois
dwarfie: la vache ... 56.32 ... va falloir le descendre severe ;...
dwarfie: ah , il chute deja
Vry: Oui c'est pas faux, moi j'ai un tableau de 10 000 000 de node et je repars e la case zéro à chaque fois : coût de gestion = 0
Tiouz: J'ai raté le train je suis dégouté
fenrir: (parcourir l'abre pour remettre les noeuds libérés dans la liste de noeuds libre)
fenrir: yep, du coup c'est ce que je fais
Mourfette: d'où je suis gold... j'ai update avec un truc pas fini, j'ai lancé pour test, je me suis retrouvé gold 600 gniii
Tiouz: Attendez, l'évaluation du || en C++ n'est pas parresseuse en partant de la gauche ?
fenrir: oui
Zorg1: j'aurais dis que si
fenrir: (elle l'est)
Mourfette: Est-ce que après le challenge c'est possible de voir le code des meilleurs comme c'est le cas dans les exercices sur ce site?
Zorg1: sinon je te dis pas le massacre des gars qui viennent du C vers le C++ ^^
Vry: Mets des () !!!
dwarfie: Mourfette : non , vu que ca passe en multi ensuite
Mourfette: oh, ok :(
GTS: sur ce challenge les rollout sont pas très couteux, par contre l'arbre est plutôt grand Du coup repartir de l'historique pour le MCTS ça semblait plus compliqué que rentable
Arthurmtro: Dommage
Tiouz: j'ai un truc du genre valeur &= id == -1 || tableau.at(id) || autre_tableau.at(id);
fenrir: Mourfette: non, par contre, sur le forum souvent les personnes décrivent ce qu'elles ont fait
Vry: Et dès que tu dois faire des manip. mémoire, ça coûte un bras (même en C)
Arthurmtro: Vous pensez le js c'est opti pour ce genre de challenge ?
BlaiseEbuth: :rofl:
Arthurmtro: x) oups
BigUP: yes ! j'ai gagné 600 places !
Vry: Y'a un TypeScript #12
Zorg1: pareil
Vry: +1
dwarfie: BigUP ... Zorg1 l'a deja faite celle la :D
VilBoub: ^^
BigUP: dwarfie, désolé, j ebossais
toma69: je suis dégouté j'ai fait plein de fonctions pour simuler des actions (seed,grow,cahngement de jour,...) sauf que je peux pas lancer la game, python met trop de temps à répondre
Arthurmtro: Ducoup js ? xD
toma69: meme print("WAIT") prend trop de temps
Vry: Oui
polpoul: Arthurmtro si tu veux faire des bitsets, js c'est limité à 32bits, y a mieux
Arthurmtro: Wow j'ai tellement de choses a apprendre :o
Vry: Oui Arthurmtro il y a un bot TypeScript qui est #12
BigUP: toma69, il faut optimiser...
pardouin: ouf j'avais peur de pas passer
polpoul: après il vaut mieux une bonne heuristique en js qu'une simu de merde en c++
pardouin: mais ils ont été généreux ^^
Arthurmtro: Ahah a voir donc, je suis vraiment bloqué en bronze, mon premier exo de ce genre je connais aucun algo c'est triste
BigUP: toma69, tu utilises quoi en général ? des listes ? sur ce contest tu dois pouvoir passer pratiquement tout en set
Vry: Arthurmtro : tu dois pouvoir passer Silver en heuristique
Vry: Regarde l'un des stream en cours, ça peut t'aider !
Vry: +s
Mourfette: heuristique c'est faire les règles de choix des actions soit même selon des critères?
Arthurmtro: merci je vais faire sa !
Vry: oui
Arthurmtro: :)
Mourfette: ba du coup je suis gold comme ça en ayant push un truc pas fini :D
VilBoub: y a juste besoin d'une dizaine de lignes de code pour passer Silver...
-TheWalder-: Mais je suis gold ?! Première fois que je dépasse le silver
jdeveil: bravo
jdeveil: il faut bien une première fois pour tout ;)
-TheWalder-: Merci ! C'est beau le progrès
Vry: Chouette le puzzle de la semaine ... Zorg1
BlaiseEbuth: :clap:
polpoul: ah ouais j'avais un beau bug sur les ifs imbriqués ><
Kris117: Tout juste top 100 en JS. J'ai tenté MCTS, jme suis pris un certains nombre de timeout random (même en limitant à 50ms) et j'ai abandonné. Du coup passage en full heuristique
jfaixo: c'est souvent comme ca polpoul, tu comprends pas pourquoi ton super bot génial performe pas comme tu veux avec tout ce que t'as fait. Tu débug un peu, et après tu comprends pas comment il a pu aussi bien se classer avec des bugs pareils xD
toma69: BigUP, oui j'ai une grande liste qui décrit entièrement chaque position
toma69: ce qui me prend du temps c'est debgénérer tous les mouvements possibles..
toma69: je devrais plutot en prendre au hasard
BigUP: toma69, tu peux prendre au hazard, mais déjà utilises des sets, c'est plus rapide a manipuler normalement
BigUP: toma69, il faut bien entendu que chaque élément soit unique dans ta liste
toma69: ok merci :thumbsup:
toma69: j'ai quand meme l'impression que 100ms c'est très court
BlaiseEbuth: D'habitude on a pas tant...
BigUP: toma69, c'est tres court en python, mais bien optimisé tu peux déjà faire des choses. mais tu seras toujours plus ou moins a 10x le temps de l'equivalent en C++ :)
toma69: :upside_down:
toma69: y'a moyen de faire juste du if else ?
BlaiseEbuth: oui
GTS: https://i.redd.it/57gmyswprqm01.jpg
Pedrito_B: UTTT c'est quoi? je debarque
jdeveil: toma69 oui, mon code est comme ça
mrBen: ultimate tic tac toe
dbdr: 666 en gold BlaiseEbuth
BlaiseEbuth: Perfect.
BlaiseEbuth: Vous pouvez fermer.
fenrir: je me demande quelle genre de marge de progression il reste encore pour ceux qui sont dans le top gold
fenrir: (ie proche du max, ou bien il reste encore plein d'amélioration possible)
Mazelcop: très loin du max je dirais
jdeveil: pas sûr qu'il reste grand chose, c'est ptet pour ça qu'ils en ont fait passer autant...
BlaiseEbuth: T'as qu'à y aller pour te rendre compte par toi même fenrir.
fenrir: là je suis 19eme, j'ai encore une peu de progression
fenrir: mais si ceux au sommet s'éloigne...
-TheWalder-: En vrai c'est bien 483ème si je suis en 1ère ?
-TheWalder-: Je veux trop aller plus loin mdr
BlaiseEbuth: Si t'es 483eme t'es pas en premier.
Oioi: Il parlait de sa classe...
-TheWalder-: Nan je parle de la classe
Oioi: Je pense que c'est super :-)
Bon[]Crayon: Les premiers sont en cpp.
BlaiseEbuth: Je pense que je vais commencer à ban les gens qui ne saisissent pas le second degré...
pardouin: normalement ils l'a fait en première
Vlavv: Y a un mec en java qui met le dawa quand même
mrBen: ^^
Vlavv: (ce qui est insultant)
pardouin: b^2 - 4 ac toussa
dwarfie: BlaiseEbuth ... apres , tu pourras passer a ceux qui comprennent pas le premier degre non plus ... y'a du taf ...
WhatTrickeryIsThis: c'est un habitué
BlaiseEbuth: Et après ceux qui sont pas polis... nome.
WhatTrickeryIsThis: il est toujours balaise, il arrive a faire un peu de perfs en java
Vlavv: 😬
BlaiseEbuth: Sérieux on dirait une blague de nicola... J'ai un peu honte...
mrBen: YAY! j'ai fini de debug ma simu
mrBen: j'vais pouvoir attaqué un BFS ou un MCTS
toma69: la chance
toma69: ma simu me prend tout mon temps
dwarfie: fallait faire comme moi et passer les 2 premiers jours sur le moteur ...
dwarfie: :p
mrBen: j'y ai passer 5 jours... mais bon j'ai changé 2 fois de language et j'ai aussi tenté des heuristiques
-TheWalder-: C'est vraiment impactant de choisir les nodes que l'on veut explorer dans un MCTS au lieu de les choisir aléatoirement ou il y a quelque chose de plus important à faire avant ?
Emperatrice: la blaze j'etais 26 j'ai clique sur test in arena, j'ai perdu 200 places
caduk: What, pendant mon push, je me fait eclater par des gens 100-200, et une fois passer le top 50, je bat quasiment tout le monde (en silver)
nicola: kick BlaiseEbuth :grin:
Tiouz: -TheWalder- Oui c'est impactant, UCB c'est la différence entre un algo qui converge vers l'optimal ou non
BlaiseEbuth: :3
-TheWalder-: Ok merci !
cuduputu: Petite question, normal que mon code se soit barré de l'IDE en ligne lors du passage en Gold ? (Il reste uniquement le code généré au départ...)
GTS: non mais au pire dans Historique à gauche tu retrouves tout ce que tu as push
nicola: Aucune idée mais je sauvegarde toujours.
cuduputu: Oui, j'ai repris de l'historique. Mais c'est la première fois que ça m'arrive et je trouvais ça bizarre...
Grillaume: même chose cuduputu
cuduputu: @Grillaume : plutôt un bug du côté de CG alors
Grillaume: oui visiblement
Grillaume: mais aucun impact avec le plugin de sync
Skia: Qu'est-ce qui entre en compte dans le calcul du score dans le classement svp ?
jdeveil: je crois que c'est le pourcentage de victoires
BlaiseEbuth: Quel score ? Quel classement ?
Skia: @BlaiseEbuth, bah le leaderboard général est basé sur un score et je me demandais comment il était calculé ? Qu'est-ce qui l'influence ?
Neumann: https://en.wikipedia.org/wiki/TrueSkill
BlaiseEbuth: Général du site, pas du contest ?
Neumann: Ok je réponds pas du tout à ce qui est demandé
BlaiseEbuth: Non.
Skia: Non non pardon, je parle du classement du contest (Spring Challenge 2021)
BlaiseEbuth: Donc si.
Neumann: Ah.
BlaiseEbuth: Bah cf Neumann alors.
Briossant: Yes ligue d'or
BlaiseEbuth: gg
mrBen: ah, je peux pas GROW un arbre s'il est dormant...
Zorg1: bon bah merci au pusher mon IA est passé gold sans rien faire ^^
BlaiseEbuth: Non. J't'ai dit c'est des paillasses ces arbres mrBen.
mrBen: es-ce qu'on peut les compete au moins ?
jdeveil: Zorg1 comment c'est possible ?
BlaiseEbuth: Non.
BlaiseEbuth: Paillasse
jdeveil: mrBen: c'est le principe du jeu: 1 action par jour par arbres
Skia: Un arbre dormant ne peut rien faire du tout mrBen (GROW, SEED, COMPLETE)
Zorg1: jdeveil : bah pê que mon IA était basse à cause des gens au dessus et s'ils passent en gold ...
BlaiseEbuth: 1 action par arbre par jour plutôt
mrBen: ouais, mais c'était pas comme ça dans mon code... bref, ce coup-ci ça doit être bon, ma simu 1 joueur est complete
jdeveil: ça revient pas au même BlaiseEbuth ? bon ptet bien
BlaiseEbuth: Par "simu un joueur" tu entends faire comme si l'autre était pas là ? Y compris pour les ombres mrBen ?
jdeveil: Zorg1 c'est bizarre non ? T'es pas sensé battre le boss pour passer or ? si le bot est choisi parmi les codes précédents, il était devant toi... du coup je vois pas...
Zorg1: faut finir au dessus du boss, et si tout le monde le démolit il peut passer en dessous de moi
BlaiseEbuth: Tu devrais aussi lire le lien wp sur le TrueSkill jdeveil ^^
Zorg1: "battre le boss" c'est assez faux cette phrase
mrBen: non, je prend tous en compte (y compris les ombres), mais je joue que mes action
jdeveil: mouais pas bête
jdeveil: BlaiseEbuth je viens de le faire, c'est trop matheux pour moi :p
BlaiseEbuth: C'est une simu complète mais l'adversaire wait quoi.
jdeveil: Zorg1 dans ma tête, battre le boss ça veut dire accumuler plus de victoires que lui (pas forcement dans un match contre lui)
Vry: Y'a du monde devant le boss ... c'est un défilé de retardataires
mrBen: ouais, ça doit être équivalant à ça, sauf que je lui monte pas ses sun points et je laisse ses arbres dormant
Skia: Merci Neumann. Ça m'aide pas trop du coup mais je vois mieux comment c'est calculé ^^
Zorg1: et s'ils ont cut dans une "plaine" c'est normal cette foule qui passe au dessus pas simple fait que des gens baisse le boss
jdeveil: ouaip ça parait logique
Zorg1: (plaine = pas mal de gens sur un intervalle d'ELO assez restreint)
Neumann: C'est comparable au ELO, ton bot voit son score augmenter ou descendre en fonction du score de ceux contre qui tu gagnes/perds
Vry: Ok mrBen, moi le seul truc que j'ai de l'adversaire c'est les cases qu'il occupe au début après je joue réellement tous seul. :p
jdeveil: moins de gros scores, du coup les gens arrivent à accumuler plus de victoires... Pourtant le boss aussi devrait en profiter...
Vry: En gros il fait WAIT tout le temps
jdeveil: ça reste quelque peu nébuleux, j'ai toujours eu du mal avec la mécanique des fluides...
Vry: Je ne vois même pas ses arbres pour les ombres ...
Zorg1: jdeveil en fait ceux qui ont le plus de match c'est ceux qui push
Zorg1: le boss doit avoir assez peu de match
Zorg1: surtout quand tu as 200 match dans une ligue de 2000
mrBen: en prenant tout en compte, j'espère que ça sera pas trop dur quand je voudrais ajouter les actions de l'adversaire pour un mc par exemple
Vry: Le plus "dur" c'est la gestion du SEED qui peut "collisionner" ... mais c'est pas la mort non plus
mrBen: ouais, j'y réfléchissait un peu, si je veux appliqué les actions les une après les autre, faut que je me souvienne de ma dernère action pour savoir si l'adversaire collisione avec un seed, ou si j'était déjà en wait
Vry: Je vais tester l'ajout des ombres de l'opposantpour voir i ça aide mon MC
mrBen: moi je vais tester le MC, pour voir si ma simu vaut le coup :wink:
Vry: Je suis 1310 avec le MC tel que décrit ci-dessus ... si ça peut te servir de "référence"
mrBen: mais du coup, un MC ça passe avec un seul joueur ? c'est quoi l'interet par rapport à un bfs (ou un beam search),
mrBen: c'est quíl y a pas besoin d'eval ?
Arthurmtro: Y'a moyen de savoir dans le code si une cellule est deja utilisée ?
Arthurmtro: Je vois pas la proprietée
BlaiseEbuth: Bah t'as la liste des arbres
mrBen: faut lire les arbre, et voir si y en à un à cette place
Arthurmtro: Dac c'est donc dans ce sens
Arthurmtro: thanks
Zakaoai: Bon 23 victoire en silver d'affilé :D ça sent le gold
Zakaoai: Je ne serais pas 1er Silver ce challenge désolé ^^'
Mazelcop: gg
Zakaoai: C'est combien votre max chain ?
Mazelcop: c'est quoi max chain ?
Zakaoai: Chaine de victoire
Mazelcop: 50 sur mon dernier push
BlaiseEbuth: NaN
Zakaoai: ;) Bon bah c'est en cours pour le moment on va voir si ça dépasse déjà 30
Tiouz: Zakaoai je viens de push, je vais te casser ta chaine !
Zakaoai: Bah viens monte je t'attend 1er silver ;)
Ylec: oh je suis Gold j'y crois pas ! :)
Mazelcop: il y en a qui ont fait 100% de victoires sur un submit par le passé ?
BlaiseEbuth: Sha au non-croyant ! Shaaaaa !
Zakaoai: Non bon 34 victoire
Zakaoai: :'( on a break ma chaine
Tiouz: Bon, t'es à 6 points au dessus du boss ça devrait aller^^
Zakaoai: C'est que le début :p
Tiouz: Le boss complete des arbres super tôt ! Tour 9 il fait un complete
BlaiseEbuth: Perhaps the end of the begining...
BlaiseEbuth: #BlaiseChurchill
Magus: vas y Automaton2000 je vais prendre des CPU pour brutaltester
Automaton2000: je crois que quelqu'un a pas mis la valeur correcte ;)
Vry: Le MC avec un seul joueur c'est super simple à coder, c'est le seul intérêt que j'y vois ...
Vry: C'est ma première itération en somme
Emperatrice: comment on voit le nombre de victoire?
Vry: Last Battle je suppose
Vry: Et décompte "à la main"
R4N4R4M4: Qui a fait une bonne évaluation ?
R4N4R4M4: Je me pose plein de questions
Tiouz: Le top gold
Zakaoai: Je sais pas si mon évaluation est bonne mais elle passera gold au moins :D
Mazelcop: faut pas s'arrêter là, objectif legend !
Zakaoai: :D Ah ah oui Mazelcop on va voir pour ça. Mais du coup legend sans simu ça sera chaud
VilBoub: pour l'instant le top50 sans simu, ça passe...
BlaiseEbuth: Tutafé
Ylec: c moi où ils ont fait passé bcp de monde en gold cette fois ?
BlaiseEbuth: Tutafé
Zakaoai: Oaip d'ailleur le cut s'est fait à combien ?
fenrir: ~650
Zakaoai: On a jamais vu d'aussi gros cut pour Gold
pardouin: cut legend à 200 ?
pardouin: on peut rêver :)
Zakaoai: il brade de plus en plus :/
TidyMaze: youpi, le petit mail de gold
BlaiseEbuth: TidyMail
TidyMaze: 😂
Zakaoai: déjà 800 en or le 1er jour
dwarfie: si ca continue , je vais passer gold avant d'avoir recoder un truc .... :)
Zakaoai: Moi justement j'ai coder un truc a moitier qui battait le boss du coup j'ai submit. après est-ce que quand j'aurais tout coder ça sera mieux ça je sais pas mais je le ferais une fois en gold
Zakaoai: Allez Tiouz ;)
Tiouz: Ça devrait passer, mais pas de beaucoup !
Zakaoai: Bah t'es a 45 déjà et tu progresse :p
Zakaoai: Je t'attend en haut moi
Tiouz: Ouais tu m'as battu de 30 points sur une partie
Zakaoai: On devrait bientot s'affronter dans l'arene
Zakaoai: Ah oui ^^'
Zakaoai: Je comprend mieux pour elo
Vry: Ouf ... j'ai failli collé mon code dans le chat ... :p
KASDmusic: les gars à partir de quelle ligue les regles n'évoluent plus ?
Vry: Bronze
KASDmusic: ça marche merci !
Tiouz: Encore un edéfaite contre Zakaoai. Ton code est violent, tu sera bien classé en gold
Zakaoai: J'espère bien. on verra après manger
Eagleast: hello, je suis en C++ et je ne trouve pas la console pour debugger. Vous savez ou elle se trouve ?
b0n5a1: cerr
b0n5a1: o/
Tiouz: \o
Bon[]Crayon: Automaton2000 Quoi de 9?
Automaton2000: et pour info, c'est le niveau de la mémoire
Bon[]Crayon: o/
Eagleast: oula, je suis censé comprendre ?
ggjulio: cerr << "Debug" << endl;
ggjulio: std::cerr << "Debug" << endl;
Eagleast: ok merci, je débute ^^
Eagleast: mais j'ai entendu parlé de cerr
ggjulio: ;)
Magus: cerr c'est la sortie standard d'erreur
Magus: cout la sortie standard tout court
Bon[]Crayon: Il débute donc il débug.
Magus: Sur codingame on utilise la sortie d'erreur pour debugguer
Tiouz: adieu Zakaoai
Magus: les submits sont lents c'est ça ?
BlaiseEbuth: Mais non...
BlaiseEbuth: Le temps c'est relatif.
boumagik: 1h pour 60%
Kafeine: Apperemment mon submit buggé fait mieux que le non buggé
Kafeine: C'est magique
mrBen: classic
b0n5a1: plus tu regardes plus c'est long
Vry: Ah Ok c'est pour ça ...
Vry: Bon je mets à jour makeMove(node, move1) en makeMove(node, move1, move2) et j'ai un MC complet
Bob: Kafeine voilà tu es un(e ?) vrai CG maintenant
Kafeine: Pas mal pour un chauffeur de poids lourd ^^
Bob: un code qui n'a jamais eu de bug qui devient une feature parce que ça score mieux que la version sans bug, c'est pas un vrai code de contest
Vry: C'est clair !
WhatTrickeryIsThis: <3
Bob: c'est encore plus rigolo quand tu fais ça dans du code pro et que tu dois le commenter
Kafeine: Eh
D0ug: Bonsoir!
D0ug: +1 Bob
Bob: // yes it works
// yes it should not work // no we don't know why either
Bob: // yes if you try to fix it it will break and you will have to undo it
Magus: Ouai, les super commentaire sur le gitlab/github du boulot
Kafeine: https://www.youtube.com/watch?v=k238XpMMn38
Magus: // Is this code still used ?
// If I remove it, it crashes. So I guess it's a yes.
Bob: // magic number - !!! DO NOT CHANGE !!!
polpoul: // we do this to deduplicate entities having the same primary key
Bob: dans mon ancienne boîte il y avait un coin de code avec des prédicats géométriques optimisés*
Oioi: Pouah, faut que je revoie mon code de fond en comble...
Bob: c'était littéralement un petit pack de magic numbers à compiler avec des options d'optim bien précises
Oioi: Moi aussi j'avais des magic numbers, mais à force de les empiler, ils ne sont plus magiques du tout
Bob: // workaround for irix stdlib crashing when this runs on a time where the number of seconds is odd
Bob: celui-là on en avait chié pour le débugger...
Kafeine: lol
pardouin: dans le genre comment rigolo: https://www.youtube.com/watch?v=p8u_k2LIZyo
VirtualAtom: wait, c'est une histoire vraie ça Bob o_O
pardouin: 1:02
VirtualAtom: ?
pardouin: (le fameux inverse square root de quake III)
b0n5a1: ça avait coupé à combien pour gold (j'étais pas là) ?
pardouin: 650
b0n5a1: ok
Kafeine: Bon après le vaillant effort de mon algo et mon cerveau à rester au fond de l'argent je vous souhaite bonne nuit
Vry: Du coup tu as changé de boîte Bob ... j'ai raté quelques épisodes ... ;)
pardouin: il est dans un truc hippie maintenant
Bob: VirtualAtom true story oui
Bob: je ne sais plus exactement mais on sérialisait un timestamp dans un ostream et quand le nombre de secondes était impair, avec une version bien précise d'irix ça crashait
Oioi: :-)
VirtualAtom: merle alors, si tu peux même pas faire confiance à la stdlib... ça doit être chaud ces plateformes :-}
Bob: bon c'était il y a 20 ans hein
Bob: on avait remonté le bug et il avait été corrigé
Bob: mais sur le coup quand tu as le client qui dit "parfois quand je sauve ça crashe", ça pique un peu
Bob: Vry et donc oui j'ai changé de boîte il y a un mois et demi
Bob: www.gamestream.biz
Vry: Un tout autre domaine !
Zakaoai: Ah oui en effet Tiouz la violence
Bob: ah ça me change du pétrole oui
Bob: les emmerdes sont d'une autre nature
Bob: mais comme je disais à un ex-collègue, les emmerdes d'avant j'avais plus envie de m'y attaquer
Bob: là j'en ai toujours mais ce sont de *nouvelles* emmerdes et c'est plus motivant
Vry: lol ... sans avoir besoin de démanger du coup.
Bob: c'est ça
Bob: en voiture j'y suis plus vite qu'à l'autre (voie rapide, pas de feux rouges)
Vry: C'est ce que je me dis moi aussi ... le job parfait n'existe pas mais le changement ça fait du bien.
Bob: bon par contre c'est trop loin pour le vélo
Zakaoai: Mon dernier submit qui me fait passer de 200 silver a 200 gold :D
Vry: GG
Zakaoai: ça mérite bien une pause pour ce soir la légende ouvre dans 2 jours :)
Zorg1: gg
Zorg1: bon quand sera-t-on à mille en gold ?
b0n5a1: je suis passé d'un poil avant juste en resubmit mon vieux code
Vry: J'arrive ... (ou pas) !
Zorg1: ah ok ça fait depuis 20:00 que mon code est en submit
Zorg1: ouaip Vry, vient en gold on est une bande de jeunes, on rigole
Zorg1: classé 666, je fait un screen
VilBoub: Bonsoir les gens...
Zorg1: o/ VilBoub
VilBoub: Vous savez s'il y a une map où on ne commence pas au bord ?
Zorg1: c'est pas dans l'énoncé ça ?
Zorg1: "Les joueurs commencent la partie avec deux arbres de taille 1 placés aléatoirement sur le bord de la grille."
Zorg1: si
VilBoub: ok, thx !
-Cile-: ça simplifie les 2 premiers jours ;)
VilBoub: pourquoi ils on écrit le début de partie à la fin des règles ? ^^
Zorg1: c'est dans les "détails techniques"
VilBoub: j'ai vu, oui !
Skia: VilBoub, c'est pour récompenser les gens qui tiennent jusqu'au bout ;)
Skia: C'est possible de désactiver le zoom dans l'IDE ou pas du tout ?? ^^'
mrBen: le zoom ?
Skia: Bah tu peux grossir/rétrécir la taille de la police d'écriture
Skia: J'arrête pas de (dé)zoomer sans le faire exprès depuis tte à l'heure et c'est chiant... x)
mrBen: ah, ouais, heu je rcois pas qu'on peut le désactiver
Skia: Ok tant pis, merci quand même
mrBen: cela dit ça à l'air d'être du Monaco, y na peut-être juste une commande à lancée dans la console pour le désactiver
Skia: Ça coûtait rien de demander ^^'...
Skia: J'imagine que je vais juste essayer de faire plus gaffe à ce que je fais
-TheWalder-: Enfin !! Je viens de faire mon premier MCTS pour un tic tac toe !
-TheWalder-: En vrai je galère mdr
Vry: La première c'est toujours le cas ...
pardouin: il donne exactement les mêmes coups qu'une minimax ?
-TheWalder-: Bah je pense que j'ai encore 2-3 problèmes à réglé mais ça fonctionne
-TheWalder-: *régler
pardouin: (enfin remarque même pas besoin de comparer au minimax, tu peux voir de tête si les coups proposés sont bons)
BigUP: Vry, ca fait plaisir de voir que t'es largement autant à la ramasse que moi sur ce contest ! :)
-TheWalder-: Bah pour le moment j'utilise des if pour essayer de monter mais je pense que c'est impossible de passer légende sans utiliser un algo plus avancé
BigUP: -TheWalder-, tu peux aller loin avec des if, il faut juste avoir les bonnes idées
BuluBulu27: Bah il est déjà #506, c'est respectable
-TheWalder-: Bah autant commencer a utiliser de nouveaux outils que d'utiliser ce que l'on connaît
-TheWalder-: *à
VilBoub: avec un gros if, ça passe... https://fr.wikipedia.org/wiki/If_commun
mrBen: je vois pas comment vous faites Gold avec des if...
-TheWalder-: xD
-TheWalder-: "Du fait de son pouvoir narcotique, l'If est considéré comme étant nocif"
VilBoub: =)
mrBen: :smile:
Vry: BigUP ... j'ai plus l'temps pour ces conneries ... :p
BigUP: Vry, j'ai eu un peu plus de temps que toi, mais pas tant que ca
Emperatrice: mrBen , je suis gold avec des if mais j'utilise beaucoup les stream de java 8
mrBen: j'avoue que je vois pas le raport...
Skia: Moi je suis pas Gold mais j'éternue souvent vers la droite :rolling_eyes:
Emperatrice: sa ressemble à ça : Optional<SeedCast> previsionSeed = Game.getTrees().stream().filter(t -> t.isMine && !t.isDormant).flatMap(t -> t.getSeedableCellsPrevisionnel().stream()).sorted(plantComparator()).findFirst();
BuluBulu27: Skia c'est ça ton problème
BuluBulu27: C'est à cause de gens comme toi qu'il y a des guerres dans le monde
dwarfie: et vlan ... ce moment ou j'avais raté un truc a propos des ombres ... pfff
mrBen: ah ouais, y a pas beaucoup d'ifs effectivement
BuluBulu27: Eternuer vers la droite...
mrBen: bah bravo dwarfie
Skia: C'est ce que je me disais BuluBulu27 , je commençais justement à culpabiliser un peu :confused:
dwarfie: oui .. javais pas vu la notion de menacante ...
mrBen: wait, on peut mettre des messages que lors d'un WAIT
dwarfie: non ... pour toutes les actions ...
polpoul: faut juste pas oublier l'espace ?
mrBen: ah non, c'est mon bot actuel qui fait que des WAIT, doncdu coup il passe sont temps à pas faire d'actions
mrBen: et dponc pas de message
polpoul: on va dire que c'est une v1
Vlavv: dire que tout ça aurait pu être écrit avec 4 signes de ponctuation en Perl ^_^
mrBen: c'est une version en cours de dev
mrBen: une V1 d'algo avancé
mrBen: (enfin non, c'est juste un BFS)
mrBen: bon le BFS me saoul, j'arrive plus à en coder un, je vais faire du MC ça sera plus simple
Rajh: Bon, comment on fait pour gagner ?
mrBen: pas comme moi, c'est déjà un bon début
Rajh: Je fais dla simu en java, je suis fou ou pas ?
mrBen: non
mrBen: d'ailleur le referee est comme ça
Rajh: Non mais le referee a pas besoin de perf ^^
mrBen: certe
mrBen: java c'est pas pire niveau perf
polpoul: normalement on choisit le langage en fonction des besoins...
Rajh: 350 games de MCTS par tour xD Je viens de passer mon aprem a optimiser la simu et j'ai deja fait x2 mais je sais plus quoi faire xD
mrBen: dans la vraie vie on choisi le langage en fonction de l'existant...
mrBen: pas vraiement des besoins
polpoul: ouais enfin en l'occurrence y en a pas d'existant ^^
Rajh: Ouai mais ici c'est pour le fun, donc on choisi le langage avec lequel on a du fun :)
mrBen: +1
Vry: J'ai pas l'impression que le MC multi joueurs soit plus fort que le mono-joueur bizarrement ... :upside_down:
mrBen: ah
Rajh: Ya quoi pour remplacer une list en java pour avoir + de perf ? (je parle de taille modulable avec add()/remove()) ?
mrBen: bon ça vas, j'ai pas encore coder le multi ^^
Vry: Ou alors j'ai un ou plusieurs bugs !
VirtualAtom: mon MC simultané se fait poutrer par mon MC où les joueurs jouent tour par tour ^^
Emperatrice: rajh utilise les stream pour manipuler tes lists
mrBen: ça dépend pour quoi faire Rajh
mrBen: +1 pour les stream
Tiouz: Rajh Le fait d'avoir une taille modulable va forcément avoir un coût par rapport à des tableaux
Vry: Mon MC ou je fais comme si j'étais tout seul dans la foret à l'air plus fort ...
Rajh: Emperatrice c'est ultra lent les streams donc non merci
mrBen: heu, t'es sûr de ça ?
Rajh: Tiouz bah j'ai fait un "ArrayList<>(tailleFix)" mais bon c'est tjs plus lent qu'un Object[]
mrBen: (les streams lent)
Rajh: Sauf que bon Tree[37] ca fait beaucoup de parcours pour rien
Emperatrice: ah bon, c'est vraiment lent?
Tiouz: Pk ça fait du parcours pour rien ? Tu aura le même parcours avec des ArrayList
Beretta_Vexee: Vry je suis entrain de tester un MC ou l'autre joueur arrêt de jouer et coup ses arbres au dernier tour.
Rajh: Bah faites le test, avec et sans
Rajh: Tiouz un ArrayList<> avec 5 elements ca sera pas plus rapide qu'un for de 37 sur tout le tableau ?
Tiouz: les stream c'est bien car ça permet de paralléliser assez facilement, mais sur CG il y a un seul coeur pour calculer
Tiouz: Rajh, ça dépend. Si dans ton ArrayList tu veux supprimer l'arbre 0, alors il va faire 5 opérations alors que ce sera 0 sur un tableau. Ça dépend de l'utilisation
Baboom_59: Hello ! J'essaye de comprendre le fonctionnement des actions dans le kit de démarrage Python. Est-ce que quelqu'un pourrait m'éclairer ? J'ai du mal à comprendre comment tout ça fonctionne
Rajh: 5 opérations ? Jme souviens plus mais le ArrayList est backé par un Object[] Non ? et si j'ai fixé la capacité il va pas faire de resize si ? c'est quoi les 5 ops ?
Vry: Il n'y avait pas de limite sur le nombre de sun points gagnés par tour ?
Tiouz: Si tu veux pop un élément, il risque de déplacer tous les autres pour combler le trou
Rajh: Tiouz ah il a pas une table de référence ? Ouai ta sans doute raison ya pas de magie ,je vais test
mrBen: Baboom_59 soit plus précis, donne une point particulier que tu comprend pas, et on pourra peut-être t'aider
Baboom_59: mrBen, je ne comprend pas la logique en place au niveau des possible_actions c'est une liste à vider en début de tour et à remplir progressivement de nos différentes actions ?
mrBen: possible_action c'est la liste des action qui sont faisable à ce tour, elle est donnée pour que t'ai pas besoin de la calculer quand tu debute
mrBen: pour commencer, tu peut choisir une action parmi celle proposé
nepage-l: Le tabeau possible_actions te donne .. les possible_actions que tu peux faire chaque tour
mrBen: dans l'IA du kit de départ, les action sont traitée pour être des objet, c'est plus facil à manipuler
Baboom_59: Okay, donc c'est pas forcément pertinent par la suite, vu qu'on va venir définir nos propres actions en fonction de notre stratégie
mrBen: comme ça tu peux apeler mon_action.target_cell_id au lieu de mon_action.split()[1]
mrBen: si, ça reste perinent, les possibilité cahnge pas avec ton niveau
mrBen: mais par contre, selon l'algo que t'utilise, du devrai être capable de générer cette liste, car elle est donnée que pour le tour courant
mrBen: si tu fait une simulation, tu voudra connaitre la liste d'action possible pour un tour potentiel plus loin dans la partie
Baboom_59: Okay, je vois donc le principe (Au moins au début, je ne suis pas encore au stade de faire des prédiction) c'est de récupérer la bonne action dans cette liste.
mrBen: celle qui te semble la meilleur oui
Baboom_59: Je te remercie ! Je comprend le principe en terme de simplification, même si j'ai l'impression qu'il est quand même plus simple de ne pas l'utiliser pour mieux gérer sa stratégie
Baboom_59: Je pense qu'une partie de la logique m'échappe, je vais continuer à jouer avec, afin de mieux comprendre la chose :)
mrBen: :thumbsup: bonne chance, et hésite pas si tás d'autres question
Baboom_59: Merci ! :muscle:
Rajh: mrBen bon remplacer la List<Tree> par un Tree[37] c'est révélé être plus lent :D
polpoul: fais un bitset ca va foncer
Rajh: hmm ? connais pas
mrBen: lol ok
mrBen: je m'y attendais pas
polpoul: c'est un int, tes opérations sur tableaux ça devient des opérations sur int
Rajh: Trop d'accès en for avec 37 itérations dont 90% inutiles
Rajh: polpoul enfaite je veux stoquer une liste de tree par joueur, mais je sais pas comment m'y prendre autrement qu'un ArrayList en java
YannT: j'ai submit le bot qui fait 2k rollouts par tour en début de game ahah
Rajh: 2K :o
YannT: jsuis limite étonné que ce soit même pas entièrement pourri
Rajh: Pk en début de game ?
polpoul: YannT t'as bitboardé ce contest ?
Tiouz: Rajh, avec un seul Tree[37] qui contient tous les arbres, c'est bizarre
Rajh: Tiouz j'ai fait un Tree[2][37] en vérité
mrBen: 2k, c'est bien ça me donne un point de comparaison pour quand j'aurai fini mon MC
YannT: je fais 2k rollouts je viens de dire la question elle est vite répondue polpoul
Tiouz: Yann j'ai 1200 tour 1 et je suis gold
Tiouz: Rajh donc tu fais 2*37 à chaque fois, c'est normal que tu fasse 90% de trucs inutiles
polpoul: haha en effet ^^
Rajh: Tiouz non je parcours que pour un joueur
Vry: En MCTS Tiouz ?
Tiouz: yes Vry
mrBen: tiens Vry, tu fait combien de rollout toi ?
YannT: Tiouz: ben fait 800 de plus apparement c'est 300 places de différence là :p
Vry: Ok, je comprends ... demain je passe en MCTS ...
Vry: 72k sur la première secondes
Vry: 7k ensuite
Tiouz: t'es un alien...
YannT: c'est de calculer une array de tour possibles pour en choisir un random qui me démoli mes perfs
YannT: faudrait que jle fasse différent ça
Tiouz: Je passe 70% de mon temps à calculer les coups, je ne vois pas comment l'optimiser
VirtualAtom: j'ai 220k simulations complètes en MC la première seconde, mais je me fait poutrer ^^. Il me manque un truc depuis le début
Vry: Pareil ... en plus en MC il faut refaire la liste des coups à chaque move ...
YannT: en MCTS aussi
YannT: de plus
Tiouz: MC + UCB ?
Tiouz: Parce que MC tout seul c'est un peu pourri honnêtement
YannT: retrouver le node après le move adversaire est super compliqué par le fait qu'il peut jouer plusieurs coups
Vry: Mon MC mono joueur et meilleur que mon MC multi avec UCB :upside_down:
mrBen: MCTS = MC + UCB grosso merdo
YannT: donc je l'ai pas fait ça hein, je reconstruit l'arbre from scratch a chaque tour ahah
Tiouz: Sur UTTT MC tout seul pouvait donner un coup perdant mais avec une confiance à 80%
Vry: Quand je dis UCB c'est juste pour le choix final attention pas l'exploration !!!
Tiouz: Pas vraiment mrBen, tu peux faire UCB seulement sur ta liste de coups, sans avoir d'arbre
Vry: Sur mon MC j'ai un seul node que j'update
Tiouz: Et t'es toujours bronze ?
Vry: Non Silver avec MC :
Vry: Bronze c'était le code initial
YannT: en MCTS normalement tu veux pas refaire tes expands à chaque tour, idéalement tu rechope le noeud dans l'arbre du tour précédent
VirtualAtom: hum, faut que je regarde ce dont tu parles Tiouz... je vois certes mon MC partir dans un mur avec le sourire ^^
YannT: mais là c'est compliqué
YannT: l'adversaire peu avoir joué N tours après ton wait
YannT: j'ai classé ça en "à voir plus tard"
JBM: YannT: tu repasses sur le stream quand?
Vry: YannT : garde l'arbre d'un tour à l'autre, j'ai jamais réussi à le faire ... même sur UTTT
Rajh: YannT actuellement tu fais quoi ? MCTS Solo et recalcul a chque fois ?
YannT: non MCTS avec adversaire
YannT: en considérent probablement par erreur qu'on s'en fiche que ça soit du jeu simultané et que ça revient en gros au même que si c'était au tour par tour les interactions étant minimes (double seed, osef quoi)
Tiouz: Ici c'est pas possible de reprendre l'arbre pour le tour suivant car 1 - on n'a pas le coup joué par l'adversaire et 2- il peut en avoir joué beaucoup
VirtualAtom: si tu peux, ça demande un peu de logique mais c'est fait
dwarfie: 27W 6L ... et ca me met que 600eme de silver a 36% ... si c'est pas malheureux ...
YannT: ça se fait oui, faut rexplorer ton arbre
Tiouz: Sur UTTT c'était viable, et encore ça faisait gagner seulement 10% de calcul, au prix de la gestion mémoire pourrie
VirtualAtom: mon MCTS me sort la suite de commandes jouées par l'adversaire depuis que j'ai WAIT
Rajh: YannT du coup tu joues ta simu un node/2 ? fin t'attends d'avoir tout les inputs des joueurs actif avant de play ?
YannT: ouais, moi j'ai mis une TODO de le faire plus tour
YannT: non, j'ai vraiment codé ça en tour par tour
VirtualAtom: j'ai pas vu de gain, car dans les 10 premiers jours l'adversaire prends l'avantage
YannT: t'as besoin de coder le jeu simultané uniquement pour gérer les doubles seeds en gros
YannT: et bon, j'ai fait une approximation calculée: osef de ça
Mazelcop: les completes aussi
YannT: non pour les complete le coup du noeud parent suffit
Mazelcop: ah, malin
Rajh: J'ai du mal a suivre xD
YannT: c'est pour les calcul des nutrients
Rajh: Mais du coup tu fais 2K rollout avec un MCTS multi en plus ?
mrBen: nikel, je suis à 0 rollout
mrBen: je peut que m'amélioré
YannT: si t'approxime le jeu en tour par tour au lieu d'en simultané, t'as un bug en cas de double complete sur les nutrients
BlaiseEbuth: Reuh!
Rajh: Bah moi je suis parti du principe pour mon multi que le "makeMove" ne fais rien tant que tout les joueurs ont pas joué
VirtualAtom: t'as pas aussi le soucis que le MCTS ne converge pas, parce que ça suppose que l'adversaire connaisse ton move à l'avance ?
Rajh: du coup ma simu se lance un node sur 2 environ
YannT: le MCTS il choisi ses coups en fonction de simu random
YannT: connaitre le move adversaire influence rien
BlaiseEbuth: *conne la verge VirtualAtom, on accorde.
VirtualAtom: --amen
YannT: (en même temps je dis ça s'il faut j'ai tort hein)
VirtualAtom: (j'ai un peu l'impression après avoir parcouru en diagonal des papiers ^^, mais je suis une quiche)
Rajh: Mais pour les playout random, vous faites vraiment full random ou vous selectionner des moves genre "grow/complete" ?
YannT: mais je pense que vu que ton critere au bout du bout c'est win/lose, connaitre ou pas le coup adversaire change pas le resultat
mrBen: lol, mon timer demarrait au début de la lecture du plateau, pas du tour... tu m'étonne qu'il faisait pas de rollout
YannT: vous croyez que ça se ferait de precalculer tous les coups possibles en fonction de toutes les situations possibles?
Vry: Rajh pour l'instant full random mais sur UTTT j'avais fait en sorte de sélectionner les coups "gagnants" mais sur celui-là c'est moins évident
YannT: non parce que ça m'arrangerait là...
Rajh: xD
YannT: je me demande si le WAIT biaise pas les simus en fait
VirtualAtom: laisse tomber... j'ai commencé à énumérer ça pour faire une table, j'ai abandonné ^^
YannT: je me suis posé un TODO pour vérifier ça
mrBen: ça fait vachement beaucoup de possibilité ça
JBM: tu poses bcp de TODO j'ai l'impression
VirtualAtom: j'ai choisi une représentation de l'état qui simplifie la production de la listes de coup, c'était plus viable ^^
Rajh: YannT en parlant de résultat win/lose, en MCTS c'est toujours 1/0 ou c'est cohérent de faire des nuances pour avoir le plus gros écart de score ?
BlaiseEbuth: https://imgur.com/t/autobots_roll_out/Gxz2Pbz
YannT: mais instinctivement, je me dis que si les simu tombent sur le wait trop souvent, ça peut "finir" la journée d'un des players prématurément et de façon pas très réaliste
mrBen: bon, 260 rollouts, j'ai du boulot côte opti...
YannT: en gros
YannT: est-ce que ton MCTS est biaisé par des simus qui font trop souvent WAIT WAIT WAIT
caduk: 750 -> 190, J'ai fait une belle progression ce soir
VirtualAtom: c'est un problème chez moi le WAIT, quand je déroule le MC: l'IA a l'impression que ça passe crème
VirtualAtom: (j'ai rangé le MCTS dans un coin, ça faisait plus de rollout, mais se faisait poutrer par le MC)
YannT: en MC vous faites quoi, random coups possible tour par tour ou random journée complete?
Vry: Je submit avec un rollout sans WAIT (sauf si seul coup) ...
mrBen: tour par tour pour l'instant YannT
Vry: Moi random et si WAIT alors day++ jusqu'à day = 24
YannT: je me pose la question de faire ça pour les simus aussi Vry
YannT: ça fera des simus plus longue, mais p'tet plus réalistes
dbdr: YannT ya pas que les seeds qui sont biaisés si tu fais en séquentiel. tu supposes que l'adversaire connait ton coup, ce qui joue sur l'ombre future dans l'arbre...
Vry: Wow, mon MC part comme une balle c'est bizarre ...
YannT: dbdr: mais tu fais de la simu random et du win/lose, y a pas de prise de décision en fonction de l'ombre d'un tour donné
YannT: donc je pense pas que ça biaise
dbdr: si, dans l'arbre
YannT: le MCTS va tous explorer et scorer sur des simu random
YannT: je vois pas ce que ça biaise
dbdr: le random c'est pour la partie rollout uniquement
BlaiseEbuth: Ca biaise ebuth
YannT: et la partie select UCT est basée sur le resultat des rollouts non?
dbdr: oui, mais le résultat dépend de la branche
dbdr: l'action de l'adversaire est fixée dans la branche
dbdr: donc tu fais du paranoid
YannT: ah
YannT: oui je vois
VirtualAtom: et pour le MC, il y a une manière spéciale de faire pour des joueurs simultanés ? J'ai l'impression de mal m'y prendre depuis le jour 1 ^^
YannT: dbdr: compris, tu as raison
YannT: je rollout avecc le coup adversaire déjà fixé
BlaiseEbuth: dbdr a toujours raison
dbdr: :P
BlaiseEbuth: GROW 63 kildi mon bot... L'est con
YannT: (enfin, non, avec le mien, mais oui, ça pose soucis)
YannT: bon bah c'est pas grave
YannT: je vais play() un tour sur 2, problème résolu :p
YannT: dbdr: ça marche si je joue rien sur le board à mes tours et que je joue les 2 coups sur le coup adverse tu crois?
Rajh: YannT ton score de playout c'est 1/0 ou nuancé ?
YannT: win/lose là
YannT: (et draw, même si j'en ai jamais vu)
Rajh: Ok donc pas privilégié des routes qui écrasent l'adversaire
dwarfie: YannT ... les regles empechent le draw
YannT: ben non
VirtualAtom: tu peux avoir des draw
dbdr: il y a des nuls
BlaiseEbuth: :popcorn:
YannT: si ya le même score le même sun et le même nombre d'arbres
Rajh: J'ai beau testé plein de ptit tricks mais au final je vois que t'es en gold avec juste random playout en multi lol
dwarfie: VirtualAtom ... non
Rajh: ca doit être mon nobmre de rollout qui fait chié
VirtualAtom: sisi :-}
VirtualAtom: même nombre d'arbre + même score = draw
YannT: dwarfie: ça tiebreak sur le nombre d'arbres, tu peux avoir le même :)
dwarfie: ca arrivent jamais ... et un draw c'est un win ... pb resolu
dwarfie: :D
VirtualAtom: (enfin, j'ai pas vu ça compté comme un draw dans l'arène, c'était compté comme win pour l'un des deux joueurs au pif)
BlaiseEbuth: Paaaaaaaaaardon ?!
VirtualAtom: (mais bon, c'est tellement rare qu'on peut passer sous silence)
BlaiseEbuth: Cétonteu!
mrBen: c'est pas au pif, c'est au nombre d'arbres
VirtualAtom: vu le scoring système (et mon bot pourri), je vais pas râler ^^
dbdr: VirtualAtom, c'est pas compté au pif, c'est affiché au pif
AceTea: sinon juste une bonne evaluation de chaque action possible c pas mal
VirtualAtom: ah, la nuance :-}
dbdr: avec #1 #1
VirtualAtom: c'était en wood, où il n'y avait pas beaucoup de manière de jouer. Je ne suis pas retomber dessus depuis
YannT: dbdr: donc en MCTS, si je "joue" un tour sur 2 en gros (dans les select et dans les simu) pour émuler le simultané, ça marche ou ça marche pas?
-Cile-: c'est win-win, j'ai déjà eu le cas
BlaiseEbuth: unsigned char = -1; //Se demande pourquoi ça marche pas...
VirtualAtom: lel
dbdr: ben c'est pessimiste, ça va optimiser contre un adversaire qui triche
BlaiseEbuth: A ma décharge j'ai un #define INT8 uint8_t, on a vite fait d'oublier ce qu'il y'a derriere.
YannT: pourquoi?
YannT: je select mon tour (mais je le joue pas), l'adversaire select le sien, je joue les 2 en simult
YannT: ça marche pas?
dbdr: idealement faudrait faire les couples d'actions, c'est DUCT, mais ça explose le nombre d'actions
mrBen: je sais pas si c'est à ta décharge BlaiseEbuth
dbdr: ça veut dire quoi, ça marche?
JBM: et on revient sur le débat "decoupled"
YannT: ben est-ce que c'est biaisé ou pas :)
YannT: si mon coup est selectionné mais pas sur le board
BlaiseEbuth: Pourquoi mrBen
dbdr: c'est biaisé
YannT: et que je joue en simult quand l'adversaire a selectionné le sien
YannT: ok ça règle pas le soucis :(
mrBen: ça t'apprendra à aliaser tes types
dbdr: mais c'est pas forcement déconnant pour autant
dbdr: étant donné les contraintes de temps
YannT: je vois oui, ça revient au même mon coup est toujours fixé dans l'arbre quoi
yassineben: hola como estas
BlaiseEbuth: C'est moins chaint à taper.
BlaiseEbuth: Et j'alias pas un type, j'alias un alias.
YannT: JBM: au fait c'est toi qui a demandé je crois, je restream vendredi vers 18h ou 19h
VirtualAtom: avec une macro déjà, tu mérites le bûcher
mrBen: ouais, et après tu sais plus ce qu'il y a derrière
YannT: je vaois p'tet afficher mon MCTS Kotlin tout pourri
BlaiseEbuth: Pourquoi VirtualAtom ? Kesta contre les macro ?
Vry: Il est pas trop mal quand même ...
VirtualAtom: pas pour les types, pour le reste ça te regardes :-}
BlaiseEbuth: Pourquoi ?
Vry: Mais où sont les serveurs ?
VirtualAtom: hum, j'allais te répondre une connerie. En fait non, j'ai rien dit
BlaiseEbuth: ...
VirtualAtom: je pensais qu'un typedef levait plus d'erreurs, mais c'est exactement pareil
Vry: La question "où" est dangereuse ...
YannT: codingame ça a tendance à ramer/crasher soirs et weekend
BlaiseEbuth: Ah ? C'est pas tout le temps ?
YannT: je pense que c'est parce qu'en semaine y'a des shadocks à montpellier qui pompent toute la journée les serveurs
BlaiseEbuth: Pomper les serveurs c'est une forme de pourboire.
YannT: allez on l'accepte elle est bien
YannT: gg
BlaiseEbuth: \o/
VirtualAtom: ton bot YannT affiche le win rate tu as calculé ?
YannT: yep
VirtualAtom: vu ton classement, je vais debugguer mon bot en comparant nos win rates affichés ^^
YannT: (perso je me servirais pas de ça pour vérifier mon propre bot dans l'IIDE hein, c'est très douteux : p )
VirtualAtom: (rah merle, tu casses ma barraque là ! ^^)
YannT: il est très bon sur les 2-3 derniers tours
YannT: au dela c'est pas une référence mon bot
VirtualAtom: je sens que je vais rager quand les PM sortiront, je dois passer à côté d'un truc ultra con
YannT: mais il essaye déjà, c'est bien
YannT: viens voir le kotlin vendredi
YannT: ça te changera du haskell
YannT: y a pas de <$>
mrBen: bon, moin heuritique à la con est à des année lumière devant mon MC, je crois qu'il est temps d'abandonné pour aujourd'hui
YannT: du code qui a pas baculé dans la folie
JBM: ah moi c'est le contraire
YannT: j'ai jamais réussi à faire un MC qui marche perso
JBM: mon heuristique a tellement pas envie de scorer que je suis en train de basculer en MCTS
YannT: il faut je pense
YannT: j'ai pas le niveau intellectuel pour une eval sur ce jeu
YannT: même avecc des log() c'est dur
JBM: 1/2 contest j'ai ue la prétention de croire que si
JBM: il faut apprendre de ses erreurs
YannT: je suis globalement pas bon en evals, j'ai pas le doigt mouillé pour trouver la bonne et j'ai pas la patience de faire du bench outre mesure
Vry: Mon MC égocentré est ~ #1035 Silver
YannT: pour les eval je met du decay et des facteurs, et si ça suffit pas en soit c'est mort pour moi
VincentBab: Marche pas mal le MC pour moi perso
Vry: Je vais lancer l'autre et voir demain ce que ça donne
Vry: Un MC "normal" ?
VincentBab: par contre j'arrive pas du tout a faire fonctionner un MCTS :(
VirtualAtom: chut VincentBab, tu me fais mal ^^
YannT: je pense jamais au "mais siii suffisait de calculer le log des seeds et badaboum"
VincentBab: Ya des gens dans le top qui font du MCTS ?
Vry: lol, les pondérations de psychopathes
YannT: VincentBab: ça marchouille pourtant le mien fini son run mid gold avec un 2k rollouts assez ridiccule... si je peux optimiser, ça doit donner en vrai
VincentBab: oué jdoit avoir des gros bug, j'ai 4k rollout et il fait WAIT 80% du temps :(
Vry: Supprime les WAIT ! :p
YannT: c'est le premier des noeuds dans ton expand le wait?
YannT: si oui, quand il considère 100% perdu ou gagné, ça sort wait effectivement
Beretta_Vexee: Classer les actions en fonction de leurs couts en sun ca marche pas mal
VincentBab: oui 1er node le wait
YannT: ouais donc s'il se croit tout perdu ou tout gagné, ça wait
YannT: ça peut indiquer un bug du genre du backprop pas bien les scores :p
VincentBab: oué c'est surement un truc du genre
VincentBab: car du peux avoir 2 node de suite avec le meme player
VincentBab: normalement je l'ai gérer mais bon..
YannT: ah j'ai pas fait comme ça
YannT: j'ai des WAIT entre
VincentBab: oué c'est vrai que ca doit être plus simple
YannT: pour bien avoir une alternance dans les noeuds
VincentBab: bon jvais tenter encore un peu, sinon je passerai en beam search xD
BlaiseEbuth: Beam! No more rollouts!
YannT: c'est nul ça fait une eval
YannT: je ne ferais pas de log() sur ce contest
VincentBab: :joy:
BlaiseEbuth: logn
YannT: j'irai jusqu'au bout sur le mcts
Vry: Flûte, je stocke le score sur un int8_t ... du coup quand l'adversaire est trop fort ça passe en négatif ... et je suppose que c'est pour cette raison que mon bot n'en glande pas une
BlaiseEbuth: Le score va si haut ?
Vry: Genre 14 point mais 52 sun et l'adversaire 173 points ...
YannT: Oo
Vry: Aka -83
BlaiseEbuth: Ah tu as un int8 pour les deux scores
Vry: Oui j'ai minimiser au max en prévision du MCTS :D
BlaiseEbuth: Oui fin, un peu trop ?
Vry: Un int8 par joueur
polpoul: tu peux garder seulement la diff des scores non ?
Vry: Bon avec un uint8 c'est encore pire il ne veut plus jouer !
Vry: 0 vs 179 mais par contre 115 sun !!
BlaiseEbuth: Woa la diff faut gérer du négatif...
YannT: bon voilà, le push fini 200, ce qui est bien mais pas top mais fait sens vu qu'à 2k rollouts, mon bot joue pratiquement random sur les 5 premiers jours
Vry: C'est encouragent pour les suivant YannT ...
Vry: +s
Vry: Enfin, ceux qui sont en silver
polpoul: 1 bit de signe ca va
Gr0mph: Bravo !
YannT: Vry: il se rattrape en étant bon sur la fin du game en fait
VirtualAtom: wut ? ^^ https://www.codingame.com/replay/553643043
YannT: jour 0-5: random, 5-16 semi random, 16-23: killer monster
polpoul: YannT tu l'as appelé commissaire bialaisse ton bot ?
YannT: VirtualAtom: ok, killer monster avec des bugs alors
VirtualAtom: il te manque les tiers des sun points en bonus je crois
YannT: non ça c'est bon
YannT: p'tet une histoire de nutrients
VirtualAtom: mais punaise, je veux débugguer MON bot, pas le tiens ^^
YannT: chelou il est certain d'avoir gagné là et en fait non
Vry: Oui c'est vrai que vers la fin de partie les MC(TS) bourrinent pas mal
jfaixo: le bot mauvais perdant, pas mal :D
VirtualAtom: je pense que c'est ça, il se dit que ça vaut pas la peine face à ce paysan qui va perdre
Gr0mph: Comment on fait pour configurer le timer pour éviter des timeouts ?
jfaixo: perso je choppe un Instant::now() après mon ier read sur l'input, après quoi je vérifié régulièrement si je m'approche des 100ms. a 95ms je plie boutique et je retourne le mieux (enfin moins mauvais) que j'ai trouvé ;)
jfaixo: 1er*
YannT: VirtualAtom: marrant, je sais pas d'ou viens l'erreur de calcul là
VirtualAtom: ça n'arrête pas d'arriver dans l'IDE ^^
YannT: tu m'as dans l'IDE depuis longtemps?
YannT: j'ai corrigé depuis un bug
Gr0mph: Super merci et tu restart juste après ton print ?
VirtualAtom: mon bot me dit : ce move, il a 2% de gagner, ton bot dit j'ai 100% de win rate
YannT: je faisais les gains de sun pour le tour 24 (alors que le jeu fini sans au dernier tour)
VincentBab: Il place bien les arbres en debut de partie ton bot YannT je trouve
VirtualAtom: on a tous les deux tord ^^
YannT: tu m'as pas en obsolete dans l'IDE hein?
YannT: j'ai corrigé un bug qui faisait ça depuis
VirtualAtom: je refais F5 et je tente
VincentBab: jpense pas je viens de le mettre
YannT: je faisais le gain fin de journée avant de regarder qui a gagné/perdu
YannT: (je parlais à VirtualAtom :D )
VincentBab: xD
BlaiseEbuth: Ouai prout VincentBab
VirtualAtom: https://www.codingame.com/replay/553650551 du mieux pour le moment
YannT: possible que j'ai un bug dans la simu
YannT: mais je croyais l'avoir corrigé
BlaiseEbuth: Reachable richness c'est un bon exercice d'orthophonie... :thinking:
VincentBab: Ton bot place beaucoup mieux les arbres que moi, mais je gagne a la fin lol https://www.codingame.com/replay/553648456
VirtualAtom: 2 victoires partout, mon bot semble bien aimer la chaine de COMPLETE à la fin
YannT: mon bot a si peu de rollouts il joue random au début
YannT: tu fais "replay in same conditions" t'as des games complétement différentes à chaque fois :D
VirtualAtom: 150k iterations premier tour, 19k iterations second tour, et ~650ème gold. je vais arrêter là et aller pleurer ^^
BlaiseEbuth: Mets tes larmes dans un flacon, je te les achète.
VirtualAtom: t'en verseras dans le chat, pour le rendre un peu plus salty ? ^^
BlaiseEbuth: C'est pour mon martini... J'vais pas payer pour le chat.
Trisard: j'arrive pas a seed correctement ...
Vinyard: Qui utilise du deep Q ou un truc du genre ?
Vlavv: Je viens d'ajouter un compteur de points de soleil gagnés au cours de la partie
Vlavv: Eh bien lors d'une bonne partie, ce petit filou de Skril (#1) en récolte pas loin de 250
Vlavv: je suis loin derrière D:
Trisard: J'ai fais la même tout a l'heure et tu me met 70 points a chaque game
BlaiseEbuth: Le soleil c'est le mal !
YannT: ma premièère tentative d'algo c'était: optimise le gain de sun au début de la partie, puis optimise le score en fin de partie
YannT: mais c'était une eval
YannT: c'est nul, les evals
Vlavv: Oui, ses arbres ont intérêt à avoir une crème solaire d'enfer
**BlaiseEbuth jette des log() sur YannT.
Trisard: @Vlavv si je peu me permettre de te poser un petite question : Tu favorise le seed en fonction de la direction opposé du soleil non ?
Vlavv: Trisard : parmi mes critères de seed, il y a l'ensoleillement prévu sur les prochains tours, donc ça favorise probablement la direction opposée du soleil oui :)
Trisard: ah ok ba c'est ça qu'il me manque
Trisard: mais ça me parrait très compliqué :'D
Vlavv: honnêtement, je ne suis pas sûr que ça fasse une immense différence en soi (mais le calcul d'ombres de manière général est très utile en revanche !)
Vlavv: vu la durée de vie d'un arbre, le soleil a souvent le temps de faire le tour de toute façon
Trisard: j'utilise beaucoup le calcul d'ombre mais je remarque que souvent du seed a coter d'un de tes propre arbres parce que je suppose que tu sais que t'a le temps d'en complete un le temps de grow l'autre
Vlavv: oui mais je pense qu'il y avait quand même des choses à améliorer à ce niveau
Trisard: et moi j'ai pas ça mes arbres passe leur temps a se tirer dans les racines
Vlavv: je fais en sorte de l'éviter davantage dans mon nouveau code (mais ça fait longtemps que j'ai pas commit, j'arrive pas à rattraper le retard apporté par mes "améliorations" ^^")
Vlavv: oui ça c'est embêtant
Vlavv: quand tu regardes des parties du top5, ils font quasiment les mêmes coups sur tous les premiers jours, et globalement ce sont les coups qui permettent d'éviter de subir sa propre ombre ^^
Trisard: mon début de partie est honnetement correct c'est plus a partir du moment ou ça commence a complete (vers le milieu de la partie) que ça deviens nimporte quoi de mon coter
Vlavv: oui pareil... 😬
Vry: Dans certaines situation mon MC ne voit pas qu'il pourrait dépenser les sun pour gagner en score et du coup il WAIT ...
Trisard: https://www.codingame.com/replay/553658855 genre la ton seeding frame 52/53 je le trouve trop intelligent
Vlavv: ah oui, le fait d'essayer d'éviter les alignements
Vlavv: je ne sais jamais trop quel poids donner à ce critère, j'arrête pas de varier là-dessus ^^
Vlavv: euh non pardon j'avais mal compris
Vlavv: sur la frame 52-53 j'ai dû jouer sur le fait que ce n'était pas important de subir sa propre ombre un tour après avoir semé (vu qu'un gland rapporte 0 de toute façon) mais qu'il fallait essayer d'avoir le champ libre après ^^
Trisard: ouep ba je trouve ça super malin en vrai ^^ après peut être que je me trompe et que c'est pas si opti que ça ^^
**Beretta_Vexee dodo
toma69: mon parsing est hyper lent je peux faire quoi ?
toma69: je suis sur python
Tiouz: toma69 c'est pas le parsing. Il faut lancer le chrono apres le premier input
KASDmusic: hey les gars, on peut faire plusieurs ou qu'une seul action par tour ??
VincentBab: 1 seul action par tour, mais un jour est composé de plusieur tours
KASDmusic: et le wait on doit le mettre juste pour dire q'on termine le jour c'est ça
KASDmusic: *?
VincentBab: oui, mais le jour se termine quand les 2 joueurs wait
KASDmusic: okk, je comprends mieux mon bug du coup cimer ;)
toma69: Tiouz je lance un chrono au premier input, je l'arrete au dernier et je print "WAIT", j'ai pas le temps de jouer
Tiouz: Il faut lancer le chrono *après* le premier input
toma69: je fais juste quaelques affectiations avec les input
Tiouz: Comment ça tu n'as pas le temps de jouer ? Ça te dit que tu n'as pas renvoyé d'actions dans les temps ?
toma69: toma69 has not provided an action in time.
Tiouz: Tu es sûr que tu n'essaie pas de lire trop d'inputs (il attends une input qui ne viendra jamais)
SoleilTaciturne: J'ai la même erreur perso, sur Python également. Le parsing me prend tout mon temps passé un certain nombre de tours..
Tiouz: C'est pas un problème de python
toma69: ah possible
toma69: je vérifie
Tiouz: Le parsing prend max 0.5ms
SoleilTaciturne: Possible. Perso je lance le teimer après le premier input, j'arrête l'algo à 0.8 histoire d'avoir un peu de marge, et je timeout.
SoleilTaciturne: 0.08*
Tiouz: Est-ce que tu timeout toujours si tu mets 10ms pour t'arrêter ?
b0n5a1: 0.5 ms pour parser c'est long !
Tiouz: Je disais ça pour donner une borne sup, en python, et codé avec les pieds en faisant tout pour ralentir
b0n5a1: j'ai 35 microsecondes par tour ^^
toma69: Tiouz je crois que c'est bien le parsing, si dans mon while True je mets juste print("WAIT") sans aucun input il me timeout quand même...
b0n5a1: (parsing + juste quelques ifs)
toma69: je fais aucun calcul avant le while, juste des defs
Tiouz: Avant le while il faut parser les inputs de début de jeu
Tiouz: Pars du code de base, tu n'aura pas de problème
toma69: si dans le code de base je rajoute trop de fonctions avant le while, il me timeout :/
toma69: je sais pas si ça peut venir de moi
Tiouz: Je veux dire pour les inputs.
Tiouz: Pour le reste tu fais comme tu veux, mais tu ne touches pas aux inputs
Glucozen: petite question, le timer pour les 100ms du spring challenge commence quand ? je me pose la question en cas de plusieurs action lors du même round
Tiouz: Il commence juste après la première input
Glucozen: donc que je fais 1 ou X action durant le tour, j'ai que 100ms pour tout faire ?
Tiouz: Tu ne peux pas faire X actions pendant un tour, c'est 1 action par tour. Tu confonds avec JOUR
Glucozen: je parles des 24 round
Glucozen: mais je pense avoir compris merci ^^
Vlavv: c'est 100 ms par tour, et autant de tour que tu veux par jour (ou round)
Vlavv: de tours :)
Glucozen: d'acc, c'est ce que je voulais savoir merci ^^
Vry: Au final le MC est limité car il n'a pas la capacité de jouer les coups dans le bon ordre ... vu qu'il ne fait que des tirage aléatoire l a du mal à voir qu'il faut COMPLETE vers la fin de la partie
BigUP: Vry, tu peux peut-etre mettre une heuristic vers la fin de partie ?
Vry: Oui, je vais faire un petit truc pour le forcer à prendre la branche qui donne le max de point (et non qui a le cumul max de points) mais avec le MCTS ça se fera tout seul !
BigUP: Vry, tu peux aussi peut-etre mettre des points négatifs ou minimiser les points lorsque les coups dépassent 23 days
BigUP: enfin bon il faut favoriser les Cut vers 23 jours -nb trees
Vry: Ouais ! Mais dernier submit pour le MC, demain le MCTS arrive !
BigUP: j'ai pas le calcul exacte
Glucozen: c'est quoi la diférence entre MC et MCTS ?
Vry: Là en l'ocurrence il pouvait tout couper à la fin, il avait 127 point de sun
Tiouz: Dans MCTS tu te souviens des coups joués, et tu vas essayer de faire les coups qui t'ont fait le plus gagner pour voir si effectivement ils sont bons
Vry: Glucozen : MC liste les mouvements tour zéro et se contente de simuler des parties sans exploration
Glucozen: vry pas compris ...
Tiouz: J'ai corrigé un bug de mon MCTS, en fait je supposais que l'adversaire allait jouer le meilleur coups pour moi, denc c'était pas du tout réaliste
Tiouz: Et là je suis en train de me battre de 40 points à chaque fois
BigUP: un arbre de taille 1 peut empecher une graine de pousser ?
Tiouz: Oui si tu n'as pas assez de suns
KASDmusic: oui
Glucozen: BigUP je dirai non, les ombres empeche juste la génération de soleil et une graine ne genere pas de soleil
BigUP: hum ok
BigUP: bon j'ai un cas a gérer... mais je ne sais pas comment
KASDmusic: ahhh on peut faire pousser la graine malgré l'ombre ?
Tiouz: L'ombre n'a aucune influence sur les seeds
Vry: Oui
KASDmusic: okok
Vry: Uniquement sur les sun points après osef
Bluepioupiou: question bête : vous savez si les 100ms c'est à partir du début du while ou de la derniere lecture de l'input faite dans la boucle .
Tiouz: aaaaaaaaaaaaaaaaaaaa
Tiouz: !inputs
b0n5a1: à partir de la fin de lecture du premier input
BigUP: hum bizarrement lorsque j'autorise a GROW lorsque je suis à l'ombre, je transforme 1 loose en Win ... ;)
Bluepioupiou: ah du premier ?
KASDmusic: petite question, comme on compile les fichiers java avant execution, il est plus rapide à l'execution du coup nan ?
BigUP: ouais bon parconrte grow alors qu'on sera encore à l'ombre ensuite n'est pas forcément une bonne idée
BigUP: hum, il faut que je vérifie si c'etait pas ce que j'evitais de faire
BigUP: ok, pas completement...
Tiouz: C'est encore en train de calculer, mais j'ai à peu près gagné 400 places en gold avec ce debug
Tiouz: 600 -> 200