├── .github └── workflows │ └── python-app.yml ├── .gitignore ├── LICENSE.md ├── README.md ├── docs ├── logo │ ├── sunfish_large.png │ └── sunfish_small.bmp └── sunfish.6 ├── nnue ├── models │ ├── color.pickle │ ├── color2.pickle │ ├── color2_v2.pickle │ ├── color2_v3.pickle │ ├── model.pickle │ ├── model_19.pickle │ ├── model_39.pickle │ ├── model_59.pickle │ ├── model_79.pickle │ ├── model_99.pickle │ ├── nnue1.pickle │ ├── tanh.pickle │ ├── tanh2.pickle │ ├── tanh_139.pickle │ ├── tanh_199.pickle │ └── tanh_79.pickle ├── nnue_bug_fens ├── speed_tests.py ├── sunfish2.py └── sunfish_king.py ├── requirements.txt ├── sunfish.py ├── sunfish_nnue.py └── tools ├── clean_draws.py ├── fancy.py ├── quick_tests.sh ├── test.sh ├── test_files ├── 3fold.epd ├── 3fold.pgn ├── 3fold_do.pgn ├── 3fold_dont.pgn ├── avoid_mate.epd ├── bratko_kopec_test.epd ├── ccr_one_hour_test.epd ├── chessathome_openings.fen ├── gaviota-starters.pgn ├── mate1.fen ├── mate2.fen ├── mate3.fen ├── mate4.fen ├── nullmove_mates.fen ├── perft.epd ├── pgns.pgn ├── queen.fen ├── stalemate0.fen ├── stalemate1.fen ├── stalemate2.fen ├── unstable1 ├── unstable_positions ├── unstable_positions2 └── win_at_chess_test.epd ├── tester.py └── uci.py /.github/workflows/python-app.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/.github/workflows/python-app.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/README.md -------------------------------------------------------------------------------- /docs/logo/sunfish_large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/docs/logo/sunfish_large.png -------------------------------------------------------------------------------- /docs/logo/sunfish_small.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/docs/logo/sunfish_small.bmp -------------------------------------------------------------------------------- /docs/sunfish.6: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/docs/sunfish.6 -------------------------------------------------------------------------------- /nnue/models/color.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/color.pickle -------------------------------------------------------------------------------- /nnue/models/color2.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/color2.pickle -------------------------------------------------------------------------------- /nnue/models/color2_v2.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/color2_v2.pickle -------------------------------------------------------------------------------- /nnue/models/color2_v3.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/color2_v3.pickle -------------------------------------------------------------------------------- /nnue/models/model.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/model.pickle -------------------------------------------------------------------------------- /nnue/models/model_19.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/model_19.pickle -------------------------------------------------------------------------------- /nnue/models/model_39.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/model_39.pickle -------------------------------------------------------------------------------- /nnue/models/model_59.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/model_59.pickle -------------------------------------------------------------------------------- /nnue/models/model_79.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/model_79.pickle -------------------------------------------------------------------------------- /nnue/models/model_99.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/model_99.pickle -------------------------------------------------------------------------------- /nnue/models/nnue1.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/nnue1.pickle -------------------------------------------------------------------------------- /nnue/models/tanh.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/tanh.pickle -------------------------------------------------------------------------------- /nnue/models/tanh2.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/tanh2.pickle -------------------------------------------------------------------------------- /nnue/models/tanh_139.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/tanh_139.pickle -------------------------------------------------------------------------------- /nnue/models/tanh_199.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/tanh_199.pickle -------------------------------------------------------------------------------- /nnue/models/tanh_79.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/models/tanh_79.pickle -------------------------------------------------------------------------------- /nnue/nnue_bug_fens: -------------------------------------------------------------------------------- 1 | 4Q3/1r4kp/3p1p2/p3pB2/P2bP1PP/8/qpP2P2/1R4K1 w - - 5 38; bm f5e6 2 | -------------------------------------------------------------------------------- /nnue/speed_tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/speed_tests.py -------------------------------------------------------------------------------- /nnue/sunfish2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/sunfish2.py -------------------------------------------------------------------------------- /nnue/sunfish_king.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/nnue/sunfish_king.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | chess==1.9.4 2 | tqdm==4.57.0 3 | -------------------------------------------------------------------------------- /sunfish.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/sunfish.py -------------------------------------------------------------------------------- /sunfish_nnue.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/sunfish_nnue.py -------------------------------------------------------------------------------- /tools/clean_draws.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/clean_draws.py -------------------------------------------------------------------------------- /tools/fancy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/fancy.py -------------------------------------------------------------------------------- /tools/quick_tests.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/quick_tests.sh -------------------------------------------------------------------------------- /tools/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test.sh -------------------------------------------------------------------------------- /tools/test_files/3fold.epd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/3fold.epd -------------------------------------------------------------------------------- /tools/test_files/3fold.pgn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/3fold.pgn -------------------------------------------------------------------------------- /tools/test_files/3fold_do.pgn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/3fold_do.pgn -------------------------------------------------------------------------------- /tools/test_files/3fold_dont.pgn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/3fold_dont.pgn -------------------------------------------------------------------------------- /tools/test_files/avoid_mate.epd: -------------------------------------------------------------------------------- 1 | rn1qkb1r/ppp1p1pp/8/5p2/2BPb3/BQP5/P4PPP/R3K1NR b KQkq - bm e6; id "AM01"; 2 | -------------------------------------------------------------------------------- /tools/test_files/bratko_kopec_test.epd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/bratko_kopec_test.epd -------------------------------------------------------------------------------- /tools/test_files/ccr_one_hour_test.epd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/ccr_one_hour_test.epd -------------------------------------------------------------------------------- /tools/test_files/chessathome_openings.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/chessathome_openings.fen -------------------------------------------------------------------------------- /tools/test_files/gaviota-starters.pgn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/gaviota-starters.pgn -------------------------------------------------------------------------------- /tools/test_files/mate1.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/mate1.fen -------------------------------------------------------------------------------- /tools/test_files/mate2.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/mate2.fen -------------------------------------------------------------------------------- /tools/test_files/mate3.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/mate3.fen -------------------------------------------------------------------------------- /tools/test_files/mate4.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/mate4.fen -------------------------------------------------------------------------------- /tools/test_files/nullmove_mates.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/nullmove_mates.fen -------------------------------------------------------------------------------- /tools/test_files/perft.epd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/perft.epd -------------------------------------------------------------------------------- /tools/test_files/pgns.pgn: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/pgns.pgn -------------------------------------------------------------------------------- /tools/test_files/queen.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/queen.fen -------------------------------------------------------------------------------- /tools/test_files/stalemate0.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/stalemate0.fen -------------------------------------------------------------------------------- /tools/test_files/stalemate1.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/stalemate1.fen -------------------------------------------------------------------------------- /tools/test_files/stalemate2.fen: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/stalemate2.fen -------------------------------------------------------------------------------- /tools/test_files/unstable1: -------------------------------------------------------------------------------- 1 | rnbr2k1/pp2pp1p/6p1/q1PQ4/8/2b1PN2/PP1BBPPP/R3K2R w KQ - 0 1 2 | -------------------------------------------------------------------------------- /tools/test_files/unstable_positions: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/unstable_positions -------------------------------------------------------------------------------- /tools/test_files/unstable_positions2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/unstable_positions2 -------------------------------------------------------------------------------- /tools/test_files/win_at_chess_test.epd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/test_files/win_at_chess_test.epd -------------------------------------------------------------------------------- /tools/tester.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/tester.py -------------------------------------------------------------------------------- /tools/uci.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thomasahle/sunfish/HEAD/tools/uci.py --------------------------------------------------------------------------------