Very interesting engine "Sashimi"
Moderators: hgm, Dann Corbit, Harvey Williamson
Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Very interesting engine "Sashimi"
Thought you guys will be interested on this engine: https://github.com/zxqfl/sashimi
Just found it on Github and looks really interesting, even though it is quite weak.
Key features:
- implemented using the Rust programming language
- uses UCT (MCTS) based on the Alpha Zero paper.
Maybe engine testers will be interested on this one since it's very original.
Just found it on Github and looks really interesting, even though it is quite weak.
Key features:
- implemented using the Rust programming language
- uses UCT (MCTS) based on the Alpha Zero paper.
Maybe engine testers will be interested on this one since it's very original.
-
- Posts: 1766
- Joined: Tue Jun 02, 2009 10:14 pm
Re: Very interesting engine "Sashimi"
thanks, looks like it could be interesting to play against. anyone have a link to a windows compile?
-
- Posts: 1169
- Joined: Sun Mar 12, 2006 5:46 pm
- Location: Kelowna
- Full name: Tony Mokonen
- Contact:
Re: Very interesting engine "Sashimi"
I'd like to help with compiling, but I am having trouble with this particular project. I am using the latest nightly build of Rust, but when I try to compile I get the error messages below. I think it's some sort of dependency issue, but I am not sure how to solve this. Maybe someone more experienced with Rust can help.
Code: Select all
Compiling madvise v0.1.0
error[E0425]: cannot find value `MADV_NORMAL` in module `libc`
--> C:\Users\tosha\.cargo\registry\src\github.com-1ecc6299db9ec823\madvise-0.1.0\src\lib.rs:8:20
|
8 | Normal = libc::MADV_NORMAL,
| ^^^^^^^^^^^ not found in `libc`
error[E0425]: cannot find value `MADV_SEQUENTIAL` in module `libc`
--> C:\Users\tosha\.cargo\registry\src\github.com-1ecc6299db9ec823\madvise-0.1.0\src\lib.rs:9:24
|
9 | Sequential = libc::MADV_SEQUENTIAL,
| ^^^^^^^^^^^^^^^ not found in `libc`
error[E0425]: cannot find value `MADV_RANDOM` in module `libc`
--> C:\Users\tosha\.cargo\registry\src\github.com-1ecc6299db9ec823\madvise-0.1.0\src\lib.rs:10:20
|
10 | Random = libc::MADV_RANDOM,
| ^^^^^^^^^^^ not found in `libc`
error[E0425]: cannot find value `MADV_DONTNEED` in module `libc`
--> C:\Users\tosha\.cargo\registry\src\github.com-1ecc6299db9ec823\madvise-0.1.0\src\lib.rs:11:22
|
11 | DontNeed = libc::MADV_DONTNEED,
| ^^^^^^^^^^^^^ not found in `libc`
error[E0425]: cannot find value `MADV_WILLNEED` in module `libc`
--> C:\Users\tosha\.cargo\registry\src\github.com-1ecc6299db9ec823\madvise-0.1.0\src\lib.rs:12:22
|
12 | WillNeed = libc::MADV_WILLNEED,
| ^^^^^^^^^^^^^ not found in `libc`
error[E0425]: cannot find function `madvise` in module `libc`
--> C:\Users\tosha\.cargo\registry\src\github.com-1ecc6299db9ec823\madvise-0.1.0\src\lib.rs:63:24
|
63 | let result = libc::madvise(ptr as *mut libc::c_void, len, advice as libc::c_int);
| ^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
|
3 | use madvise;
|
error: aborting due to 6 previous errors
For more information about this error, try `rustc --explain E0425`.
error: Could not compile `madvise`.
To learn more, run the command again with --verbose.
Re: Very interesting engine "Sashimi"
Will try contacting him. If that doesn't work then will try to compile it for Windows and post here.zullil wrote: ↑Wed Jan 02, 2019 10:30 amHas anyone considered contacting the author?
https://jacobjackson.com/about/
Re: Very interesting engine "Sashimi"
About the compiling issue, it seems rust nightly version is needed
https://github.com/zxqfl/sashimi/issues/2
https://github.com/zxqfl/sashimi/issues/2
Two first meanings of the dutch word "leren":
1. leren [vc] (learn, larn, acquire) acquire or gain knowledge or skills.
2. leren [v] (teach, learn, instruct) impart skills or knowledge to.
1. leren [vc] (learn, larn, acquire) acquire or gain knowledge or skills.
2. leren [v] (teach, learn, instruct) impart skills or knowledge to.
-
- Posts: 3688
- Joined: Wed Oct 01, 2008 4:33 am
- Location: Regensburg, Germany
- Full name: Guenther Simon
- Contact:
Re: Very interesting engine "Sashimi"
n.t.pocopito wrote: ↑Wed Jan 02, 2019 5:51 pmAbout the compiling issue, it seems rust nightly version is needed
https://github.com/zxqfl/sashimi/issues/2
https://rwbc-chess.de
Greg Strong@ovyron wrote: http://talkchess.com/forum3/viewtopic.p ... 86#p752386
Re: Very interesting engine "Sashimi"
Ok, I didn't' properly read tmokonen's issue with compiling. I used the nighly version of rust and compiled the engine with no problem.
Probably it'd be a good idea opening an issue on the github repo.
Probably it'd be a good idea opening an issue on the github repo.
Two first meanings of the dutch word "leren":
1. leren [vc] (learn, larn, acquire) acquire or gain knowledge or skills.
2. leren [v] (teach, learn, instruct) impart skills or knowledge to.
1. leren [vc] (learn, larn, acquire) acquire or gain knowledge or skills.
2. leren [v] (teach, learn, instruct) impart skills or knowledge to.
-
- Posts: 1169
- Joined: Sun Mar 12, 2006 5:46 pm
- Location: Kelowna
- Full name: Tony Mokonen
- Contact:
Re: Very interesting engine "Sashimi"
Would you share your compile with us? I am not sure why I was having trouble with this particular program, as I have compiled other Rust programs before without issues, and I am hesitant to open an issue because it could be an installation issue from my end.
Re: Very interesting engine "Sashimi"
Sure. I followed the instructions here to get the nightly version (I have no experience at all with rust)
https://www.oreilly.com/library/view/ru ... f418.xhtml
And then just ran the command "cargo build --release --all" from the sashimi folder.
This is the output for what it's worth.
$ cargo build --release --all
Compiling uninitialized v0.0.2
Compiling libc v0.2.40
Compiling version_check v0.1.3
Compiling nodrop v0.1.12
Compiling read_exact v0.0.1
Compiling num-traits v0.2.2
Compiling packed v0.4.2
Compiling slurp v1.0.1
Compiling byteorder v1.2.2
Compiling cfg-if v0.1.3
Compiling option-filter v1.0.1
Compiling bitflags v1.0.3
Compiling smallvec v0.6.1
Compiling crossbeam v0.3.2
Compiling float-ord v0.2.0
Compiling argparse v0.2.1
Compiling arrayvec v0.4.7
Compiling rand v0.4.2
Compiling time v0.1.39
Compiling memmap v0.6.2
Compiling memchr v2.0.1
Compiling num_cpus v1.8.0
Compiling madvise v0.1.0
Compiling sashimi v0.2.0 (/home/emilio/soft/git/sashimi/engine)
Compiling log v0.4.1
Compiling shakmaty v0.5.1
Compiling term v0.5.1
Compiling btoi v0.1.3
Compiling num-integer v0.1.36
Compiling rand v0.3.22
Compiling chrono v0.4.2
Compiling pod v0.5.0
Compiling chess v0.4.2
Compiling arena v0.1.0 (/home/emilio/soft/git/sashimi/arena)
Compiling mcts v0.2.0 (/home/emilio/soft/git/sashimi/mcts)
Compiling simplelog v0.5.1
Compiling pgn-reader v0.4.0
Finished release [optimized] target(s) in 1m 02s
After that I launched the program and tried a couple commands, and it seems to work fine:
$ target/release/sashimi
18:33:56 [INFO] Init.
uci
id name Sashimi 0.2.0
id author Jacob Jackson
uciok
ucinewgame
go
18:34:10 [INFO] Search thread created.
18:34:10 [INFO] Search thread created.
18:34:10 [INFO] Search thread created.
18:34:10 [INFO] Search thread created.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] info depth 1477279 score cp 8 pv e2e4 b8c6 b1c3 e7e5 g1f3 g8f6 f1c4 f8c5 e1g1 e8g8
info depth 1477279 score cp 8 pv e2e4 b8c6 b1c3 e7e5 g1f3 g8f6 f1c4 f8c5 e1g1 e8g8
bestmove e2e4
https://www.oreilly.com/library/view/ru ... f418.xhtml
And then just ran the command "cargo build --release --all" from the sashimi folder.
This is the output for what it's worth.
$ cargo build --release --all
Compiling uninitialized v0.0.2
Compiling libc v0.2.40
Compiling version_check v0.1.3
Compiling nodrop v0.1.12
Compiling read_exact v0.0.1
Compiling num-traits v0.2.2
Compiling packed v0.4.2
Compiling slurp v1.0.1
Compiling byteorder v1.2.2
Compiling cfg-if v0.1.3
Compiling option-filter v1.0.1
Compiling bitflags v1.0.3
Compiling smallvec v0.6.1
Compiling crossbeam v0.3.2
Compiling float-ord v0.2.0
Compiling argparse v0.2.1
Compiling arrayvec v0.4.7
Compiling rand v0.4.2
Compiling time v0.1.39
Compiling memmap v0.6.2
Compiling memchr v2.0.1
Compiling num_cpus v1.8.0
Compiling madvise v0.1.0
Compiling sashimi v0.2.0 (/home/emilio/soft/git/sashimi/engine)
Compiling log v0.4.1
Compiling shakmaty v0.5.1
Compiling term v0.5.1
Compiling btoi v0.1.3
Compiling num-integer v0.1.36
Compiling rand v0.3.22
Compiling chrono v0.4.2
Compiling pod v0.5.0
Compiling chess v0.4.2
Compiling arena v0.1.0 (/home/emilio/soft/git/sashimi/arena)
Compiling mcts v0.2.0 (/home/emilio/soft/git/sashimi/mcts)
Compiling simplelog v0.5.1
Compiling pgn-reader v0.4.0
Finished release [optimized] target(s) in 1m 02s
After that I launched the program and tried a couple commands, and it seems to work fine:
$ target/release/sashimi
18:33:56 [INFO] Init.
uci
id name Sashimi 0.2.0
id author Jacob Jackson
uciok
ucinewgame
go
18:34:10 [INFO] Search thread created.
18:34:10 [INFO] Search thread created.
18:34:10 [INFO] Search thread created.
18:34:10 [INFO] Search thread created.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] Search thread destroyed.
18:34:20 [INFO] info depth 1477279 score cp 8 pv e2e4 b8c6 b1c3 e7e5 g1f3 g8f6 f1c4 f8c5 e1g1 e8g8
info depth 1477279 score cp 8 pv e2e4 b8c6 b1c3 e7e5 g1f3 g8f6 f1c4 f8c5 e1g1 e8g8
bestmove e2e4
Two first meanings of the dutch word "leren":
1. leren [vc] (learn, larn, acquire) acquire or gain knowledge or skills.
2. leren [v] (teach, learn, instruct) impart skills or knowledge to.
1. leren [vc] (learn, larn, acquire) acquire or gain knowledge or skills.
2. leren [v] (teach, learn, instruct) impart skills or knowledge to.