Chi-chi Released - Create personalities for Stockfish!

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Chi-chi Released - Create personalities for Stockfish!

Post by Ovyron »

Image

Chi-chi is a derivative of Stockfish that allows her users to modify Piece Values, King Safety, Space and Mobility parameters, plus it allows you to set different values for 2 stages of the game and switch some of them at some move:

Image

Download links (includes source and a generic x64 compile):

https://www.solidfiles.com/v/yZ7Arqw2LdvzD
https://anonfiles.com/t9o9Z2H7od/chi-chi_zip
https://www.mirrored.to/files/FBV90FAM/ ... .zip_links

Here's a sample game by Jubichess using 50% material for game's start, 110 Space and 110 Mobility:

[pgn][Date "2020.07.23"]
[White "chi-chi"]
[Black "Stockfish XI"]
[Result "1-0"]
[ECO "B30"]
[Annotator "0.60;-0.13"]
[PlyCount "109"]
[TimeControl "240+2"]

{Int@l(R) Core(TM) i9-9900K CPU î 3.60GHz 3600 MHz W=42.4 plies; 19.800kN/s;
17.336.924 TBAs B=50.6 plies; 20.660kN/s; 23.238.307 TBAs} 1. e4 {0.60/29 7
Both last book move} c5 {-0.13/33 16} 2. Nf3 {0.24/29 8} Nc6 {-0.22/29 5 (e6)}
3. Bb5 {0.40/25 3 (Nc3)} e6 {-0.28/26 3} 4. O-O {0.51/25 3} Nge7 {-0.01/30 6}
5. d4 {0.58/29 14 (Ba4)} cxd4 {-0.09/26 3} 6. Nxd4 {0.43/26 4} Qb6 {0.00/30 5
(a6)} 7. Be3 {0.52/27 3 (Nxc6)} Nxd4 {-0.13/27 3} 8. a4 {0.50/26 4 (Na3)} e5 {
-0.48/29 3 (Nec6)} 9. c3 {0.64/29 4} a6 {-0.64/31 3 (Nec6)} 10. cxd4 {0.00/39
10} axb5 {-0.64/30 4} 11. Nc3 {0.00/39 8 (dxe5)} exd4 {0.00/42 12 (bxa4)} 12.
Bxd4 {0.58/28 3} Qd8 {0.00/45 4} 13. Nd5 {0.00/39 16} Nxd5 {0.00/44 4} 14. exd5
{0.29/41 12} f6 {0.00/47 4} 15. Re1+ {0.32/36 3} Kf7 {0.00/49 4} 16. d6 {
0.64/31 5} h5 {0.00/50 37} 17. Qb3+ {0.63/32 4} Kg6 {0.00/1 0} 18. Qd3+ {
0.35/37 8} Kf7 {0.00/54 5} 19. Bc3 {0.56/38 6 (Qb3+)} Ra6 {0.00/39 4 (Rxa4)}
20. Bb4 {1.19/29 4} Rxa4 {0.00/43 4 (g5)} 21. Qd5+ {0.87/43 33} Kg6 {0.00/1 0}
22. Rxa4 {0.96/35 2} bxa4 {0.00/36 6} 23. Re3 {1.02/37 3} Rh6 {0.00/43 4 (h4)}
24. Bd2 {1.41/34 4} Kh7 {0.97/43 34} 25. Re4 {1.41/38 11 (Qf5+)} a3 {1.60/43 32
} 26. bxa3 {1.30/39 4} Qb6 {1.69/45 2} 27. Re8 {1.43/39 11} Qxd6 {1.71/42 3}
28. Qxd6 {1.49/37 3} Bxd6 {1.93/46 5} 29. Bxh6 {1.50/38 3} Kxh6 {2.03/44 4} 30.
Rxc8 {1.66/39 4} Bxa3 {2.03/49 4} 31. Rc3 {1.72/39 4 (Rb8)} Bd6 {2.12/50 13
(Bb2)} 32. Rb3 {1.73/44 3} Bc5 {1.93/54 3} 33. Rxb7 {1.91/43 4} d6 {1.93/54 5}
34. Kf1 {1.82/46 5} h4 {2.31/53 26} 35. Rf7 {1.43/56 7} Kg6 {1.93/52 3} 36. Rd7
{1.87/53 5} f5 {1.90/48 2} 37. Ke2 {1.66/57 5} Kf6 {2.58/54 7} 38. f4 {1.62/56
3} Bg1 {2.58/60 5} 39. h3 {1.62/59 3} Kg6 {2.58/70 2 (Bc5)} 40. Rxd6+ {2.03/59
3} Kf7 {2.58/70 2} 41. Rd7+ {1.84/65 4 (Kf3)} Kf6 {2.58/73 3} 42. Rd5 {1.84/71
3 (Rd6+)} Bh2 {2.58/75 3} 43. Ke3 {1.84/71 8 (Kf3)} Bg3 {2.58/75 2 (Bg1+)} 44.
Rd6+ {1.84/59 6} Kf7 {2.58/84 2} 45. Rd7+ {1.84/75 3} Kg6 {2.58/79 3 (Kf6)} 46.
Kf3 {1.84/69 3 (Rb7)} Kf6 {2.58/81 2} 47. Rb7 {3.45/70 36 (Rd6+)} g6 {2.58/82
2 (Bh2)} 48. Ke3 {4.23/50 8 (Rb6+)} Ke6 {2.58/77 2} 49. Rh7 {4.24/41 1 (Rb6+)}
Kf6 {2.58/76 2} 50. Kd4 {4.25/51 1 (Rc7)} Ke6 {2.58/75 2} 51. Kc5 {4.34/47 2
(Ke3)} Kf6 {2.58/73 2 (Bf2+)} 52. Kd5 {5.23/34 3 (Kc4)} Be1 {9.11/37 16 (Bh2)}
53. Rc7 {6.69/34 2} Bd2 {9.97/40 4 (Bb4)} 54. Rc6+ {7.51/33 1} Kg7 {10.06/36 1
(Kf7)} 55. Ke5 {11.30/34 2} 1-0[/pgn]

Enjoy!
Your beliefs create your reality, so be careful what you wish for.
Milos
Posts: 4190
Joined: Wed Nov 25, 2009 1:47 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by Milos »

Ovyron wrote: Sat Jul 25, 2020 4:09 am Image

Chi-chi is a derivative of Stockfish that allows her users to modify Piece Values, King Safety, Space and Mobility parameters, plus it allows you to set different values for 2 stages of the game and switch some of them at some move:

Image

Download links (includes source and a generic x64 compile):

https://www.solidfiles.com/v/yZ7Arqw2LdvzD
https://anonfiles.com/t9o9Z2H7od/chi-chi_zip
https://www.mirrored.to/files/FBV90FAM/ ... .zip_links

Here's a sample game by Jubichess using 50% material for game's start, 110 Space and 110 Mobility:

[pgn][Date "2020.07.23"]
[White "chi-chi"]
[Black "Stockfish XI"]
[Result "1-0"]
[ECO "B30"]
[Annotator "0.60;-0.13"]
[PlyCount "109"]
[TimeControl "240+2"]

{Int@l(R) Core(TM) i9-9900K CPU î 3.60GHz 3600 MHz W=42.4 plies; 19.800kN/s;
17.336.924 TBAs B=50.6 plies; 20.660kN/s; 23.238.307 TBAs} 1. e4 {0.60/29 7
Both last book move} c5 {-0.13/33 16} 2. Nf3 {0.24/29 8} Nc6 {-0.22/29 5 (e6)}
3. Bb5 {0.40/25 3 (Nc3)} e6 {-0.28/26 3} 4. O-O {0.51/25 3} Nge7 {-0.01/30 6}
5. d4 {0.58/29 14 (Ba4)} cxd4 {-0.09/26 3} 6. Nxd4 {0.43/26 4} Qb6 {0.00/30 5
(a6)} 7. Be3 {0.52/27 3 (Nxc6)} Nxd4 {-0.13/27 3} 8. a4 {0.50/26 4 (Na3)} e5 {
-0.48/29 3 (Nec6)} 9. c3 {0.64/29 4} a6 {-0.64/31 3 (Nec6)} 10. cxd4 {0.00/39
10} axb5 {-0.64/30 4} 11. Nc3 {0.00/39 8 (dxe5)} exd4 {0.00/42 12 (bxa4)} 12.
Bxd4 {0.58/28 3} Qd8 {0.00/45 4} 13. Nd5 {0.00/39 16} Nxd5 {0.00/44 4} 14. exd5
{0.29/41 12} f6 {0.00/47 4} 15. Re1+ {0.32/36 3} Kf7 {0.00/49 4} 16. d6 {
0.64/31 5} h5 {0.00/50 37} 17. Qb3+ {0.63/32 4} Kg6 {0.00/1 0} 18. Qd3+ {
0.35/37 8} Kf7 {0.00/54 5} 19. Bc3 {0.56/38 6 (Qb3+)} Ra6 {0.00/39 4 (Rxa4)}
20. Bb4 {1.19/29 4} Rxa4 {0.00/43 4 (g5)} 21. Qd5+ {0.87/43 33} Kg6 {0.00/1 0}
22. Rxa4 {0.96/35 2} bxa4 {0.00/36 6} 23. Re3 {1.02/37 3} Rh6 {0.00/43 4 (h4)}
24. Bd2 {1.41/34 4} Kh7 {0.97/43 34} 25. Re4 {1.41/38 11 (Qf5+)} a3 {1.60/43 32
} 26. bxa3 {1.30/39 4} Qb6 {1.69/45 2} 27. Re8 {1.43/39 11} Qxd6 {1.71/42 3}
28. Qxd6 {1.49/37 3} Bxd6 {1.93/46 5} 29. Bxh6 {1.50/38 3} Kxh6 {2.03/44 4} 30.
Rxc8 {1.66/39 4} Bxa3 {2.03/49 4} 31. Rc3 {1.72/39 4 (Rb8)} Bd6 {2.12/50 13
(Bb2)} 32. Rb3 {1.73/44 3} Bc5 {1.93/54 3} 33. Rxb7 {1.91/43 4} d6 {1.93/54 5}
34. Kf1 {1.82/46 5} h4 {2.31/53 26} 35. Rf7 {1.43/56 7} Kg6 {1.93/52 3} 36. Rd7
{1.87/53 5} f5 {1.90/48 2} 37. Ke2 {1.66/57 5} Kf6 {2.58/54 7} 38. f4 {1.62/56
3} Bg1 {2.58/60 5} 39. h3 {1.62/59 3} Kg6 {2.58/70 2 (Bc5)} 40. Rxd6+ {2.03/59
3} Kf7 {2.58/70 2} 41. Rd7+ {1.84/65 4 (Kf3)} Kf6 {2.58/73 3} 42. Rd5 {1.84/71
3 (Rd6+)} Bh2 {2.58/75 3} 43. Ke3 {1.84/71 8 (Kf3)} Bg3 {2.58/75 2 (Bg1+)} 44.
Rd6+ {1.84/59 6} Kf7 {2.58/84 2} 45. Rd7+ {1.84/75 3} Kg6 {2.58/79 3 (Kf6)} 46.
Kf3 {1.84/69 3 (Rb7)} Kf6 {2.58/81 2} 47. Rb7 {3.45/70 36 (Rd6+)} g6 {2.58/82
2 (Bh2)} 48. Ke3 {4.23/50 8 (Rb6+)} Ke6 {2.58/77 2} 49. Rh7 {4.24/41 1 (Rb6+)}
Kf6 {2.58/76 2} 50. Kd4 {4.25/51 1 (Rc7)} Ke6 {2.58/75 2} 51. Kc5 {4.34/47 2
(Ke3)} Kf6 {2.58/73 2 (Bf2+)} 52. Kd5 {5.23/34 3 (Kc4)} Be1 {9.11/37 16 (Bh2)}
53. Rc7 {6.69/34 2} Bd2 {9.97/40 4 (Bb4)} 54. Rc6+ {7.51/33 1} Kg7 {10.06/36 1
(Kf7)} 55. Ke5 {11.30/34 2} 1-0[/pgn]

Enjoy!
ucioptions.cpp the single most "derived" file of the whole SF source ever :lol:.
carldaman
Posts: 2283
Joined: Sat Jun 02, 2012 2:13 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by carldaman »

Thanks a lot Ovy!! :D

How did you set Material to 50%? It sure made a difference to the playing style.
maxdeg
Posts: 229
Joined: Thu Mar 10, 2016 6:17 pm
Location: Canada

Re: Chi-chi Released - Create personalities for Stockfish!

Post by maxdeg »

:D :)

+3

You sly dawg you !

Many thanks from moi und your buddy butt whom you just beat at the Rybka Forum .. :P :P
User avatar
Ozymandias
Posts: 1532
Joined: Sun Oct 25, 2009 2:30 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by Ozymandias »

Ovyron wrote: Sat Jul 25, 2020 4:09 am Image
Completely off-topic, for those who don't know, that frame is from a scene that turned out to be the weirdest betrothal ever.
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by Ovyron »

carldaman wrote: Sat Jul 25, 2020 9:27 am Thanks a lot Ovy!! :D

How did you set Material to 50%? It sure made a difference to the playing style.
No prob!

To set material to 50% manually divide all the chess pieces' values by 2. You can also just modify the normal values and set Endgame threshold to 250 so the 100% values are never used, though the game only used them up to move 60 (the engine switches to one setting to the next in a move.)

Hopefully someone will come up with some nice settings. Or not.
carldaman
Posts: 2283
Joined: Sat Jun 02, 2012 2:13 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by carldaman »

OK, Ovy, I thought of that, but then all the pieces would still have the same value relative to each other. I assumed you also meant the pawns as being pieces, but perhaps you didn't. These days the 'pieces' often represent only the non-pawns.
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by Ovyron »

carldaman wrote: Mon Jul 27, 2020 12:35 am OK, Ovy, I thought of that, but then all the pieces would still have the same value relative to each other. I assumed you also meant the pawns as being pieces, but perhaps you didn't. These days the 'pieces' often represent only the non-pawns.
All the pieces would still have the same value relative to each other. Yes, I count pawns as pieces.

The idea here is to maximize all the other factors besides material that Chi-chi evaluates, in Stockfish if there's a bonus that is great but only 0.75 worth a pawn, it would not go for it, while Chi-chi with pawns at 50% value would sacrifice a pawn for it, because the bonus is worth more than the piece. If a Knight is set to one third of its value it may go for it and sac the Knight.

Of course any of these changes will only make the engine weaker, so Chi-chi's just a toy.
carldaman
Posts: 2283
Joined: Sat Jun 02, 2012 2:13 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by carldaman »

Ovyron wrote: Mon Jul 27, 2020 12:41 am
carldaman wrote: Mon Jul 27, 2020 12:35 am OK, Ovy, I thought of that, but then all the pieces would still have the same value relative to each other. I assumed you also meant the pawns as being pieces, but perhaps you didn't. These days the 'pieces' often represent only the non-pawns.
All the pieces would still have the same value relative to each other. Yes, I count pawns as pieces.

The idea here is to maximize all the other factors besides material that Chi-chi evaluates, in Stockfish if there's a bonus that is great but only 0.75 worth a pawn, it would not go for it, while Chi-chi with pawns at 50% value would sacrifice a pawn for it, because the bonus is worth more than the piece. If a Knight is set to one third of its value it may go for it and sac the Knight.

Of course any of these changes will only make the engine weaker, so Chi-chi's just a toy.
This reveals something about Stockfish evaluation that I wasn't aware of, that piece values are directly related to the rest of the evaluation.

And a very nice toy it is! A fellow like Brendan will have a great time with it, knowing what he's capable of. :)
One other useful feature would be to have asymmetrical piece values, especially for the Queen, so the engine could avoid trading it.
User avatar
Ovyron
Posts: 4556
Joined: Tue Jul 03, 2007 4:30 am

Re: Chi-chi Released - Create personalities for Stockfish!

Post by Ovyron »

carldaman wrote: Mon Jul 27, 2020 3:58 am One other useful feature would be to have asymmetrical piece values, especially for the Queen, so the engine could avoid trading it.
I've been thinking about calling such a setting "Bravery", say, "Queen Bravery" means we're brave enough to trade her without any fear, while low bravery means that if the opponent offers a queen trade, our queen is a coward and runs away to avoid being exchanged :mrgreen: