| Angewandte Mathematik | Fakultät für Mathematik und Informatik | Friedrich-Schiller-Universität Jena | |
Ingo Althöfer
Some Notes on my Seminary, given at the
European Go Congress in Berlin-Strausberg
on Thursday, 10 August, 2000
The Definition of "3-Hirn"
In "3-Hirn" two different computer programs are asked to make their
proposals for solving a given problem. Then a human expert has the final
choice between these two alternatives. If both programs propose the same
solution this one has to be executed. The human is not allowed to overvote
the machines. (He or she is "only a tie-breaker" in case of differing computer
proposals.) The term "Hirn" is from German language and means something
like brain or mind. "3-Hirn" shall indicate that 2 computers and 1 human
form a problem solving team (3 = 2 + 1).
3-Hirn in Chess
In 1985 I started 3-Hirn with a seminal experiment in the game of chess. In chess the 3-Hirn consists of two different chess computers or chess programs and one human chess player. The computers are started and make their move proposals. Then the human player has the final choice amongst these candidate moves. 3-Hirn plays chess against other persons or chess computers.
Originally I wanted to write a computer program whose input are the move proposals of two "normal" (different) chess programs and whose task is to select one of these candidate moves for execution. The 3-Hirn experiment with a human controller was intended solely to demonstrate that an omnipotent controller program might be able to improve the chess performance of "traditional" programs. However, the success of 3-Hirn in this experiment was so convincing that I performed further 3-Hirn experiments with me as the human controller. (In the meantime automatic coordinators have been programmed for instance by Mathias Feist for Fritz and other chess programs running under "Chessbase" - and by my Ph.D. student Stefan Meyer-Kahlen based on his world champion program "Shredder".)
The following list shows the performances of several 3-Hirn teams with changing computers and programs. In all these teams I was the controller. Since 1985 my chess rating has always been between Elo 1950 and 1850.
Year Strength of the computer programs Strength of 3-Hirn
1985
1500
1700
1987
1800
2100
1989
2050
2250
1992/93
2250
2500
1995
2350
2540
1996* 2350* 2550*
1997**
2550**
2750**
* In 1996 not 3-Hirn itself was used, but a variant called "Double-Fritz with Boss". "Double-Fritz" means the chess program "Fritz 4" in its 2-best mode. In this mode Fritz does not only compute its best move but also its second best proposal. The Boss was me and had the final choice among the two Fritz proposals.
** In 1997 I combined the concepts of "3-Hirn" and "Double-Fritz
with Boss" to create a "List-3-Hirn". In List-3-Hirn two
different chess programs compute their k best moves each (say k=2 or k=3,
depending on the situation). Then a human player has the final choice from
these two lists of candidate moves.
As a rule of thumb for man-machine teams with two chess programs of approximately equal strength and me as the human boss I learned:
Strength of the man-machine-team
= strength of the programs
+ 200 Elo points improvement
+/- 50 Elo points deviation.
This estimate should hold also for 3-Hirn teams with other human controllers
of average club strength instead of me. The strength of 3-Hirn is a result
of synergy: Tactical power of the computers and human long-range planning
supplement very well. Furthermore the human may bring in his or her psychological
skills, and he is more or less able to avoid positions which are not well
understood by the computers.
The 3-Hirn Approach in General
In 1997 List-3-Hirn achieved a 5:3 against Germany's number 1 Grandmaster Arthur Yusupov. This win was in a match under tournament conditions in "Shuffle Chess". After this milestone event top human players (even from the top ten in the world) were no longer willing to fight against my man-machine teams. So I had time to try the 3-Hirn approach in other fields of decision making.
To repeat (and slightly generalize) the principle of 3-Hirn: (One or several) computer programs produce a clear handful of candidate solutions, and then a human expert has the final choice amongst these alternatives. A more abstract name for 3-Hirn would be "Multiple Choice System for Decision Support" to indicate that the human is in a choice situation.
Recently and currently, experiments with the 3-Hirn were and are underway in the following areas:
- traffic planning (vehicle routing, organisation of air flights, railway planning)
- difficult problems in discrete operations research (for instance in production planning and scheduling)
- computer-aided medicine (for instance cardio-diagnosis with the help of automatic electro-cardiogram analysers)
- computational biology (alignment problems, protein structure prediction)
And of course I brought 3-Hirn to other games of skill: Backgammon,
Othello (=Reversi), FreeCell (a one-person puzzle), and Go. In some games
the potential of 3-Hirn is not easy to measure: In Backgammon thousands
of matches would be necessary because of the influence of the dice; in
Othello the best computer programs alone are (too) much stronger than the
top human players. 3-Hirn in FreeCell led to a remarkable jump in performance;
and in Go ...
3-Hirn ... in Go
Among all commercial Go programs only Many Faces of Go is really fit for 3-Hirn. All the other programs lack by a very simple technical reason: GoProfessional (alias Go4++), Goliath, HandTalk, FunGo, WuLu and GnuGo do not allow the user to take back single moves, but only pairs of moves. (Remember: When you select the move of program Y in 3-Hirn you have to take back the single move proposal of computer X and substitute it in X by Y's move.)
There is one sideway to overcome these missing single take backs: Start the program in "human vs. human" mode and use the "hint feature" to get the program's move proposal. This is not possible in Goliath and WuLu as both even do not have hint features. GoProfessional has a hint button but its hint proposals are of lower quality than its moves in normal playing mode.
Luckily, at least HandTalk has a proper hint feature. So, in most of my 3-Hirn games I used Many Faces of Go and HandTalk.
The program TurboGo has a multi-best mode. In this mode it shows its
evaluations for all moves under examination. Instead of simply taking the
move with the highest score the user may identify the two highest scores
and then select among these moves (this is exactly what I did in "Double-Fritz
with Boss" in chess). A problem is that often the two highest-scorers lie
in the same part of the board and have similar weaknesses.
Observation: Currently, each Go program makes at least one terrible blunder in each of its games.
Having this in mind, today's best strategy in 3-Hirn Go needs only a few rules of thumb:
Recognize and avoid these terrible blunder moves.
Play simple (at least against human players) - do not look for the "game theoretically" best move.
Do not bother when your favorite move is not among among the candidates computed by the programs.
Probably, in twenty years this concentration on desaster-avoidance and desaster-management may be superseded by more symbiotic strategies.
In my 3-Hirn games I do not only use the move proposals of the programs
but also their territory estimates and their estimates on the life/death
status of groups. This helps to see how correctly the program evaluates
the current board position and where its weaknesses in this current evaluation
lie.
I am a beginner in Go. Besides 3-Hirn I have played only a handful of games by myself. Experienced players (for instance Peter Hagemann, 1-kyu from Detmold) believe that my strength is around 17 kyu. In 3-Hirn mode I have played several handicap games against low Dans (Achim Flammenkamp, Guntram Scheithauer, Thomas Rolle, Raymond-Georg Snatzke). On 19x19 board they gave me between 4 and 6 stones, and 3-Hirn lost all of these games except one. In three non-handicap games against an 8 kyu (Karsten Graf) 3-Hirn achieved two wins and lost once. Almost all persons involved got the impression that 3-Hirn is clearly superior to Go programs in normal playing mode.
On 9x9 board Guido Tautorat (4-dan) played two games against 3-Hirn where the move selection was not done by a single human but by a team with Peter Woitke (5 kyu), Thomas Rolle (2-dan) and myself. (So it was more a 5-Hirn than a 3-Hirn.) Peter Woitke is the programmer of GoAhead (European Computer Go Champion 2000), and GoAhead was used in the "Hirn-team". Guido took the white stones, the komi was set to -8. (So White had to win by 9 points ...) In the first game GoAhead was supplemented by HandTalk, and Guido Tautorat won by 8 points. In the second game GoAhead and Many Faces of Go were used, and White won by "only" 6 points. Guido Tautorat was rather impressed by the performance of the man-machine combinations.
During the European Go Congress 2000 in Strausberg an exhibition game on 9x9 was played: White was Saijo Masataka, a professional 8-Dan player from Nagoya in Japan. Black was *-Hirn, a variant of 3-Hirn: The move proposals of GoAhead and Many Faces of Go were taken, and the auditory (with almost 50 players ranging from 5-dan to 20-kyu) had to vote which of the computer moves to make. It was a simple majority voting where each participant had the same weight, independently of his or her Go strength. Saijo gave two stones handicap and - no surprise - won the game convincingly.
The moves of this game are given below. The moves in brackets are those
which did not get the majority. Black handicap stones were put on c3 and
g7.
W1 f3 B2 d7 (MF g6) W3 c5 B4 d5
(MF b1) W5 d6 B6 c6 (MF e6) W7 e6
B8 e7 (GA b5) W9 c7 B10 b6 (proposed by both programs)
W11 f6 B12 f7 (GA b5) W13 b5 B14 b7
(both) W15 d4 B16 h5 (GA d3) W17 g4
B18 d3 (MF h3) W19 c4 B20 b3 (GA e4)
W21 e2 B22 b4 (GA e4) W23 a5 B24 b1
(GA e4) W25 d2 B26 e4 (MF a2) W27 e5
B28 e3 (both) W29 g5 B30 h6 (both)
W31 h4 B32 resign (both programs had proposed to play j4).
Saijo Masataka, 8-pro, giving explanations for his move W25 d2 in
the game against *-Hirn
4 Types of 3-Hirn Games
(a) 3-Hirn versus opponent (human or program)
(b) 3-Hirn with human I versus 3-Hirn with human II (same programs for both sides)
(c) "3-Hirn good" versus "3-Hirn bad" (same programs and same human for both sides).
(d) 3-Hirn versus 3-Hirn, where the intention
is not to play as strong as possible but to generate "beautiful games"
(a) is the standard mode of play. (b) and (c) may be interesting
especially for beginners, who want to learn the game of Go by playing in
3-Hirn mode. The meaning of (c) is that the human wants to produce a game
where a predefined side (either Black or White) wins as clearly as possible.
One example goal for (d) might be to generate a game where Black gets all
four corners and White the center.
Modular Programs - and some other Wishes to the Go Programmers
My hope is that the programmers of Go will design their future commercial products in a more "3-Hirn friendly" fashion. Especially I would like to see:
Engine Concepts (like ChessBase in chess)
Several Go programs can run - alone or simultaneously - under one frame.
The frame has to be programmed only once; and its interfaces have to be
made public. In my eyes "Many Faces of Go" would be an interesting starting
point for such a frame.
Programs should have a Multi-Best Mode
Not only the best move is computed but all candidate moves are shown
together with their evaluations. TurboGo 4.1 already has a multi-best mode.
Meta Engines
These are programs which select among the move proposals of normal
Go programs or engines.
Better Autoplay Features
They may simplify (intensive) testing sessions.
Programs with "Open Parameters"
These parameters may be set and modified by the user. Most top chess
programs like Rebel, Shredder, Nimzo have such open parameters -
and power users have tuned the programs with very interesting sets of parameters.
Anytime Algorithms
An anytime algorithm is started and computes ... computes ... computes
... until it is stopped. In the meantime it shows what it has found out
already - and a human expert in front of the screen may inspect these "intermediate
results" and select among them in an appropriate moment. (In fact this
was the way in which I used the chess programs in 3-Hirn.) Currently none
of the Go programs at all has such an anytime algorithm.
In general, programmers in Go and other games of skill can learn
(and should copy) a lot from the computer chess community and her decades
of experience.
Two Open Questions in 3-Hirn Go
What is the optimum human strength for controlling
programs like "Many Faces of Go" and "HandTalk" in a 3-Hirn?
Go programmers might be good controllers, as well as Team-Go players
who are used to play in teams with much weaker partners.
Is it in Go possible for a beginner to efficiently
learn the game only from controlling in 3-Hirn teams?
I mayself try to do so.
Concluding Remarks
* My shortterm plans in Go are twofold: I want to collect more experiences with 3-Hirn, and I want to convince the authors of Go programs to make their brain childs more "3-Hirn friendly".
* One of my intermediate plans in Go is to bring 3-Hirn on dan level as soon as possible.
* An article on the 3-Hirn approach will appear in one of the next issues of the "Deutsche Go-Zeitung".
* At Jena University I am a professor in the Institute of Applied
Mathematics. Computer-Go and the 3-Hirn approach belong to my fields of
research, and it is possible to write Ph.D. theses on these subjects in
my group. Interested graduates with solid background and a diploma in mathematics,
computer science, theoretical physics or other relevant fields may contact
me via
althofer@mipool.uni-jena.de .
References
I. Althöfer. Das Dreihirn - Entscheidungsteilung im Schach. Computerschach&Spiele 6/85 (Dezember 1985), pp. 20-22.
I. Althöfer. 13 Jahre 3-Hirn - Meine Schach-Experimente mit Mensch-Maschinen-Kombinationen. Book, published by the author, Jena, 1998, ISBN 3-00-003100-6.
**** I. Althöfer. Decision support systems with multiple choice structure. In ....
M. Müller. Computer Go: A research agenda. ICCA Journal 22 (1999),
pp. 104-112.
Letzte Änderung am 05.09.2000 Webadmin |