Page 1 of 1

Roller (just for fun)

Posted: Thu Apr 19, 2018 1:57 pm
by op12no2
A little ditty that plays by doing random rollouts from it's root position and nothing else :)

http://op12no2.me/toys/roller/play.htm

USES ONE CORE 100% FROM WITHIN YOUR BROWSER WHEN MOVING.

Will prob evolve mcts etc but keep strict 'absolutely no semantic knowledge' rule.

I'm getting about 3.5kr/s at the start of the game on my work pc, but as a one-evening hack of lozza i'm sure that can improved a lot!

ps: I'm including KK, KN, KB draws as 'rules'; debatable I guess.

pps: It's missing 3 fold rep. I cannot think of a way to do it without hash but want to KISS.

My niece loves it over Lozza :)

Re: Roller (just for fun)

Posted: Thu Apr 19, 2018 6:08 pm
by zullil
op12no2 wrote: i'm sure that can improved a lot!

[pgn]
1. e4 d5 2. exd5 h5 3. Nc3 Bg4 4. Nf3 Bd7 5. Bc4 b5 6. Nxb5 c6 7. Nc3 cxd5 8. Bxd5 Bg4 9. Ne5 Bxd1 10. Bxf7#
[/pgn]

Re: Roller (just for fun)

Posted: Thu Apr 19, 2018 8:09 pm
by AlvaroBegue
[pgn]1. e4 c6 2. d4 a6 3. Nf3 f5 4. exf5 h6 5. Ne5 a5 6. Qh5+ g6 7. Qxg6#[/pgn]

Re: Roller (just for fun)

Posted: Thu Apr 19, 2018 8:34 pm
by zullil
[pgn]
1. e4 b5 2. Bxb5 f5 3. exf5 c6 4. Qh5+ g6 5. fxg6 hxg6 6. Qxg6#
[/pgn]

Similar to yours. Finally, an engine I can defeat.

Re: Roller (just for fun)

Posted: Thu Apr 19, 2018 8:54 pm
by AlvaroBegue
[pgn]1. e4 g6 2. Qf3 Bh6 3. Bc4 Na6 4. Qxf7#[/pgn]

This particular game makes me feel like the engine is broken, not just weak. It went through 58.25 kr and it wasn't able to avoid mate in 1...

Re: Roller (just for fun)

Posted: Thu Apr 19, 2018 9:06 pm
by op12no2
lol, not quite ready for tcec yet then :) but it's a lot of fun avoiding semantics.

re: mate in 1 - yes i would expect it to handle that - i'll have a fiddle...

ps: you can also pass it a fen and play from there (interactively generate the fen using the debug button), e.g.:-

http://op12no2.me/toys/roller/play.htm? ... 0%201&t=10

good for testing.

it also locked up on me earlier - a stalemate thing i think - stalemate really slugs kr/s at the moment. i need to figure out a cleverer algorithm.

Re: Roller (just for fun)

Posted: Fri Apr 20, 2018 4:44 pm
by op12no2
I did a tweak to start with short rollouts (2 ply!) and exponentially increase (x1.00003) from there to a ceiling of 200. this allows it to avoid close mates a bit better. If the ply limit is reached before W/L/D it tosses a coin and returns W or L.

It's playing a true random mover now (called RollerRandom of course) in arena (1s/move) and other than falling for 3-fold now and again, always wins; yay for Roller!

The latest version should eloquently announce itself as 201804201350, if it doesn't, click ctrl+F5 a few times until it does.

It's really really hard to resist adding even simple semantics but that would be cheating. It needs a syntactically based goal other than mate but I don't think there is one...

http://op12no2.me/toys/roller/play.htm

source:-

http://op12no2.me/toys/roller/roller.js

:)