In 1984 the library at YSU had a copy of this book. It is a very complicated book written in mathematical language that I cannot comprehend. But there was enough in English that I could understand the basic idea. Even the basic idea was not given in algorithmic fashion that could easily be coded. It was not even presented in an alpha-beta context. You can still purchase this book for 67,40E. Or in paperback for 81,15E. Anyway I spent some time boiling down his basic idea into something that would work in alpha-beta.
STEPS:
1. make a list of moves
2. play each move
3. do a null move
4. put each move that threatens to win in the final list
5. for each of the move that do not threaten to win play one
6. do a null move
7. play another move from the no threats list
8. do another null move
9. place those moves that in combination threaten to win in the final list
10. discard or reduce the depth on the rest
Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
Moderators: hgm, Rebel, chrisw
-
- Posts: 866
- Joined: Fri Aug 21, 2020 1:25 am
- Location: Planet Earth, Sol system
- Full name: Michael J Sherwin
-
- Posts: 4367
- Joined: Fri Mar 10, 2006 5:23 am
- Location: http://www.arasanchess.org
Re: Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
That book caused something of a stir when it first came out. It was basically advocating a kind of "Shannon Type B" strategy IIRC (https://www.chessprogramming.org/Type_B_Strategy). Botvinnik was involved in the development of a chess program called Pioneer that incorporated his ideas, but it was never even functional enough to play complete games. You could argue though that today's programs with super-selective search are Type B at least in principle, but with the ability in addition to search huge game trees, to an extent scarcely imaginable in the early days of computer chess.
-
- Posts: 866
- Joined: Fri Aug 21, 2020 1:25 am
- Location: Planet Earth, Sol system
- Full name: Michael J Sherwin
Re: Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
Yes, it was a selective search. Basically it was mathematical formulas in mathematical language that determined threats to a square or from a square and then extending or cutting off moves to that square. If anyone wanted to try to implement Botvinnik's idea in an alpha-beta searcher I believe the template I gave in the OP captures the essence of his idea.jdart wrote: ↑Sat Mar 27, 2021 7:20 pm That book caused something of a stir when it first came out. It was basically advocating a kind of "Shannon Type B" strategy IIRC (https://www.chessprogramming.org/Type_B_Strategy). Botvinnik was involved in the development of a chess program called Pioneer that incorporated his ideas, but it was never even functional enough to play complete games. You could argue though that today's programs with super-selective search are Type B at least in principle, but with the ability in addition to search huge game trees, to an extent scarcely imaginable in the early days of computer chess.
-
- Posts: 2250
- Joined: Wed Mar 08, 2006 8:47 pm
- Location: Hattingen, Germany
Re: Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
In the null-move context, to determine attack/defense targets and trajectories see also Botvinnik-Markoff Extension. Botvinnik already proposed Vector Attacks aka 15x15 boards with superimposed lookup as used in Pioneer.
-
- Posts: 866
- Joined: Fri Aug 21, 2020 1:25 am
- Location: Planet Earth, Sol system
- Full name: Michael J Sherwin
Re: Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
That does not in my opinion capture the essence of what Botvinnik's book proposes. The essence of Botvinnik's book seemed to me to be non threat move + another non threat move that together make a threat is worth searching deeper. It is basically giving the side to move upto 3 moves in a row to show the potential for a win.Gerd Isenberg wrote: ↑Sun Mar 28, 2021 9:51 am In the null-move context, to determine attack/defense targets and trajectories see also Botvinnik-Markoff Extension. Botvinnik already proposed Vector Attacks aka 15x15 boards with superimposed lookup as used in Pioneer.
-
- Posts: 4833
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
I get lost starting at step 5 or I have not understand the idea from the beginning.Mike Sherwin wrote: ↑Fri Mar 26, 2021 6:45 pm In 1984 the library at YSU had a copy of this book. It is a very complicated book written in mathematical language that I cannot comprehend. But there was enough in English that I could understand the basic idea. Even the basic idea was not given in algorithmic fashion that could easily be coded. It was not even presented in an alpha-beta context. You can still purchase this book for 67,40E. Or in paperback for 81,15E. Anyway I spent some time boiling down his basic idea into something that would work in alpha-beta.
STEPS:
1. make a list of moves
2. play each move
3. do a null move
4. put each move that threatens to win in the final list
5. for each of the move that do not threaten to win play one
6. do a null move
7. play another move from the no threats list
8. do another null move
9. place those moves that in combination threaten to win in the final list
10. discard or reduce the depth on the rest
Sample position.
[d]3r2k1/8/8/4p3/4P3/4KP2/5P2/4B3 w - - 0 1
1. list of moves:
Ba5, Bb4, Bc3, Bd2, Ke2, f4
2. play each move and 3. do nullmove
(1)
1. Ba5 nullmove(black plays nullmove)
2. Bxd8 -> white threatens to win
(2)
1. Bb4 nullmove
Bb4 does not threaten to win
(3)
1. Bc3 nullmove
2. Bxe5 -> white threatens to win
(4)
1. Bd2 nullmove
Bd2 does not threaten to win
(5)
1. Ke2 nullmove
Ke2 does not threaten to win
(6)
1. f4 nullmove
2. fxe5 -> white threatens to win
4. put each move that threatens to win in the final list
final_list: Ba5, Bc3, f4
moves that do not threaten to win
Bb4, Bd2, Ke2,
5. for each of the move that do not threaten to win play one
These are the moves that do not threaten to win:
Bb4, Bd2, Ke2,
(1)
1. Bb4
6. do a null move ?
I don't know know how to proceed. Can you explain more?
-
- Posts: 866
- Joined: Fri Aug 21, 2020 1:25 am
- Location: Planet Earth, Sol system
- Full name: Michael J Sherwin
Re: Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
After 6. do a null moveFerdy wrote: ↑Mon Mar 29, 2021 8:35 amI get lost starting at step 5 or I have not understand the idea from the beginning.Mike Sherwin wrote: ↑Fri Mar 26, 2021 6:45 pm In 1984 the library at YSU had a copy of this book. It is a very complicated book written in mathematical language that I cannot comprehend. But there was enough in English that I could understand the basic idea. Even the basic idea was not given in algorithmic fashion that could easily be coded. It was not even presented in an alpha-beta context. You can still purchase this book for 67,40E. Or in paperback for 81,15E. Anyway I spent some time boiling down his basic idea into something that would work in alpha-beta.
STEPS:
1. make a list of moves
2. play each move
3. do a null move
4. put each move that threatens to win in the final list
5. for each of the move that do not threaten to win play one
6. do a null move
7. play another move from the no threats list
8. do another null move
9. place those moves that in combination threaten to win in the final list
10. discard or reduce the depth on the rest
Sample position.
[d]3r2k1/8/8/4p3/4P3/4KP2/5P2/4B3 w - - 0 1
1. list of moves:
Ba5, Bb4, Bc3, Bd2, Ke2, f4
2. play each move and 3. do nullmove
(1)
1. Ba5 nullmove(black plays nullmove)
2. Bxd8 -> white threatens to win
(2)
1. Bb4 nullmove
Bb4 does not threaten to win
(3)
1. Bc3 nullmove
2. Bxe5 -> white threatens to win
(4)
1. Bd2 nullmove
Bd2 does not threaten to win
(5)
1. Ke2 nullmove
Ke2 does not threaten to win
(6)
1. f4 nullmove
2. fxe5 -> white threatens to win
4. put each move that threatens to win in the final list
final_list: Ba5, Bc3, f4
moves that do not threaten to win
Bb4, Bd2, Ke2,
5. for each of the move that do not threaten to win play one
These are the moves that do not threaten to win:
Bb4, Bd2, Ke2,
(1)
1. Bb4
6. do a null move ?
I don't know know how to proceed. Can you explain more?
7. play Ke2
So the combinations that would be tested are:
Ke2, null, Bb4, null, reduced search = does not threaten to win
Ke2, null, Be2, null, reduced search = does not threaten to win
Ke2 does not make final list
There is nothing left for Bb4 and Bd2 to be paired with so they do not make the final list
-
- Posts: 4833
- Joined: Sun Aug 10, 2008 3:15 pm
- Location: Philippines
Re: Computers, Chess and Long-Range Planning, by Michail M. Botvinnik
Thanks.Mike Sherwin wrote: ↑Mon Mar 29, 2021 3:39 pmAfter 6. do a null moveFerdy wrote: ↑Mon Mar 29, 2021 8:35 amI get lost starting at step 5 or I have not understand the idea from the beginning.Mike Sherwin wrote: ↑Fri Mar 26, 2021 6:45 pm In 1984 the library at YSU had a copy of this book. It is a very complicated book written in mathematical language that I cannot comprehend. But there was enough in English that I could understand the basic idea. Even the basic idea was not given in algorithmic fashion that could easily be coded. It was not even presented in an alpha-beta context. You can still purchase this book for 67,40E. Or in paperback for 81,15E. Anyway I spent some time boiling down his basic idea into something that would work in alpha-beta.
STEPS:
1. make a list of moves
2. play each move
3. do a null move
4. put each move that threatens to win in the final list
5. for each of the move that do not threaten to win play one
6. do a null move
7. play another move from the no threats list
8. do another null move
9. place those moves that in combination threaten to win in the final list
10. discard or reduce the depth on the rest
Sample position.
[d]3r2k1/8/8/4p3/4P3/4KP2/5P2/4B3 w - - 0 1
1. list of moves:
Ba5, Bb4, Bc3, Bd2, Ke2, f4
2. play each move and 3. do nullmove
(1)
1. Ba5 nullmove(black plays nullmove)
2. Bxd8 -> white threatens to win
(2)
1. Bb4 nullmove
Bb4 does not threaten to win
(3)
1. Bc3 nullmove
2. Bxe5 -> white threatens to win
(4)
1. Bd2 nullmove
Bd2 does not threaten to win
(5)
1. Ke2 nullmove
Ke2 does not threaten to win
(6)
1. f4 nullmove
2. fxe5 -> white threatens to win
4. put each move that threatens to win in the final list
final_list: Ba5, Bc3, f4
moves that do not threaten to win
Bb4, Bd2, Ke2,
5. for each of the move that do not threaten to win play one
These are the moves that do not threaten to win:
Bb4, Bd2, Ke2,
(1)
1. Bb4
6. do a null move ?
I don't know know how to proceed. Can you explain more?
7. play Ke2
So the combinations that would be tested are:
Ke2, null, Bb4, null, reduced search = does not threaten to win
Ke2, null, Be2, null, reduced search = does not threaten to win
Ke2 does not make final list
There is nothing left for Bb4 and Bd2 to be paired with so they do not make the final list