HIARCS 9

-
Mark Uniacke
-
Der Pegasus
der
Schachprogrammierung
ist wieder da !
"First love never dies!"

(Interview mit Mark Uniacke)


SCW: Hallo Mark, schön das du etwas Zeit hast.

Mark Uniacke: Hallo Thorsten. Schön mal wieder von dir zu hören. Ich hoffe es geht dir gut. Laß uns mal anfangen. Ich werde versuchen deine Fragen zu beantworten...

SCW: Danke. Hier gleich die erste Frage.

Mark - viele Menschen warten im Moment auf Hiarcs9. Dein Programm, aber auch du selbst scheinen einen großen Fan-Club zu haben. M.E. hat das mit dem Spielstil von Hiarcs zu tun.

Wir erinnern uns alle noch an die gute alte Zeit, als es mit Hiarcs begann, damals 1993 bei der Computerschach-WM in München. Damals hattest du dein Programm immer gegen Mchess von Marty Hirsch getestet und antreten lassen. Es war ganz so als ob A.I.-Chess/Mchess eine Art Referenzprogramm gewesen ist um Hiarcs zu entwickeln. Kannst du uns erklären warum du ausgerechnet Mchess genommen hast und warum du dich immer bemüht hast WISSEN in dein Schachprogramm einzubringen statt dich darauf festzulegen ein eher schnelles Schachprogramm zu schreiben ?

Mark Uniacke:

Als ich mich entschied Hiarcs 1.0 für den PC herauszubringen, das war 1992, war Mchess ein eindeutiger Anführer in diesem Bereich, bis dann Chess Genius auf dem Markt erschien. Es war daher nur naheliegend und machte Spaß gegen Mchess zu testen. Ich erinnere mich noch genau an einen Nachmittag wo ich Hiarcs gegen Mchess testete , auf einem 386er nachdem ich es von der Sun-Station auf den PC übertragen habe.
Hiarcs verlor 3.5 zu 4.5 und ich war zufrieden mit diesem knappen Ergebnis zu dieser Zeit. Seit ich Hiarcs zu entwickeln angefangen habe, also seit 1980 habe ich mich immer bemüht ein Schachprogramm mit viel Schachwissen zu entwickeln. Es ist einfach eine größere Herausforderung für mich das Programm in dieser Hinsicht zu gestalten als nun eine rein technische Aufgabe in der Optimierung der Geschwindigkeit vorzufinden. Das heißt jetzt nicht das ich nicht versuchen würde, das Programm auch schneller zu machen, aber immer wenn es darum geht am Programm zu arbeiten favorisiere ich eigentlich die Arbeit am Schachwissen durchzuführen und die wertvolle Zeit nicht mit dem Optimieren der Datenstrukturen oder des Source-Codes zu verschwenden.

SCW:
Denkst du heute immer noch das war die richtige Entscheidung damals ?

Mark Uniacke:
Ob das die richtige Entscheidung gewesen ist ? Ich mache das heute ja immer noch so wie damals, und da Hiarcs immer noch in der Lage ist im Wettbewerb der Programme mitzumischen kann es eigentlich keine falsche Entscheidung gewesen sein ;-)
Es ist eben möglich Schachprogramme mit völlig unterschiedlichen Ansätzen auf ein und dasselbe Spielniveau zu bringen, das macht Computerschach
m.E. sehr interessant.

SCW:

Als du 1993 die Computerschachmeisterschaft in München gewonnen hattest, erwarteten viele das es bald ein Hiarcs WM-Programm im SPARC-Modul von Saitek geben würde. Wie nah war diese Entwicklung an der Umsetzung
zum kommerziellen Geschäft und wie stark wäre das Programm im Vergleich zum vorhandenen Spracklen-Progrmm für das Sparc-Module gewesen ?

Mark Uniacke:

Es gab nach der WM in München Verhandlungen und Vorgespräche eine Version von Hiarcs für das Sparc-Modul herauszubringen.
Ein Vertrag wurde ausgehandelt, aber finanziell war es dann nicht so lukrativ. Da ich zu diesem Zeitpunkt gerade einen Vollzeitjob im Telekombereich hatte, kam dann doch nichts zustande.
Was die mögliche Spielstärke des Moduls angeht ist es schwer zu sagen wie stark das Weltmeister-Programm in dieser Hardware gewesen wäre.
Aber es ist möglich und interessant hier zu schätzen:
Das Sparc Modul mit 20 mhz und Spracklen Programm liegt in der schwedischen ELO-List bei 2124. Leider haben die Schweden nie die WM-Version von Hiarcs, das Hiarcs2.1 Programm getestet. Aber sie testeten Hiarcs2.0, einen Vorgänger auf einem 486/33 und dieses Programm erzielte eine ELO von 2100.
Ich weiß nun von damals noch, da ich Hiarcs auf einer SPARC 1 laufen ließ, das diese von der Leistung her sehr vergleichbar mit einem 486 gewesen ist. Nimmt man nun noch die Selective-Search ELO-Liste von Eric Hallsworth
zu Rate, die Hiarcs2.1 auf 486 testete, kommt man auf eine ELO-Zahl die 35 ELO über dem Saitek-Sparc Modul liegt. So komme ich auf eine SSDF ELO von 2159 für das Sparc Hiarcs Weltmeister-Programm , wenn es denn im Jahre 1994 erschienen wäre.
Ende des Jahres 1994 war allerdings schon Hiarcs 3.0 für den PC auf dem Markt. In dem Sparc-Module hätte das Programm sehr gut über 2200 SSDF ELO liegen können und hätte sich mit Genius 68030 und der ChessMachine 30 Mhz oder dem Tasc R30 messen können.

SCW:
Glaubst du es würde Sinn machen eine Hiarcs Version für die Palm/Pocket-PC Schiene zu schreiben ? Sicherlich kennst du die Programm-Ableger von Christophe Theron und Richard Lang in diesem Bereich denen es wirklich
sehr gut gelungen ist, ihr Programm für diese kleinen Geräte zu portieren.
Gibt es also auch Pläne einen Hiarcs-Clon für die Palm/Pocket-PC's herauszubringen ?

Mark Uniacke:
Es wäre gewiß sehr interessant zu sehen wie Hiarcs auf einer PDA Hardware spielen würde bei all den reduzierten Möglichkeiten in der größe des Speichers etc.
Ich werde mal schauen ob sowas möglich ist, vielleicht wird es eines Tages eine solche Version geben.

SCW:
Nach dem Erscheinen von Hiarcs7 / 7.32 gab es eine Lücke in der Entwicklung von Hiarcs. Als du dann mit Hiarcs8 nach dieser "Pause" auf den Markt kamst,
waren viele Computerschachfreunde natürlich glücklich einen neuen Hiarcs kaufen zu können. Nicht alle 100% der Kunden waren jedoch mit dem Spielstärke-Zuwachs einverstanden. Wie nah kommt der neue Hiarcs9 an die derzeitigen ChessBase Programme Fritz8, Shredder7.04 und Junior8 heran ?

Mark Uniacke:
Ja - da war in der Tat eine große Lücke zwischen Hiarcs7.32 und Hiarcs8.
Ich hatte zum damaligen Zeitraum sehr viel auf der Arbeit zu tun und habe mich auch um Familienangelegenheiten gekümmert. Da Hiarcs ja eine Freizeitbeschäftigung war habe ich damals nicht so viel daran arbeiten können wie sonst und wie ich es gerne gewollt hätte.
Ich habe aber, seit Hiarcs8 auf dem Markt ist, gute Fortschritte hinsichtlich der Spielstärke der Engine gemacht und ich denke Hiarcs9 wird sehr gut gegen
diese abschneiden. Deine letzte Frage werden wir wohl erst beantworten können wenn Hiarcs9 vollständig und ausgiebig getestet wurde, aber ich denke es wird
interessant werden anzusehen wie die anderen Programme mit Hiarcs9 klarkommen.

SCW:
Wie siehst du die Chancen die Spielstärke heutzutage noch zu verbessern indem man z.B. Wissen implementiert oder Algorithen findet die das Programm planvoll spielen lassen ?
Programme wie Fritz8 oder auch Junior8 sind ja schon sehr stark obwohl sie nicht viel Schachwissen in den Endknoten des Suchbaums berücksichtigen, während andere Programme das Wissen im gesamten
Baumbereich berücksichtigen. Glaubst du ein Schachprogramm mit das sein Wissen im wesentlichen in der Ausgangsstellung anbringt (sozusagen Pre-Processing) statt im Suchbaum wird einen Plan in einer Schachpartie finden und spielen können ?

Mark Uniacke:
Da gibt es noch massiv Möglichkeiten Wissen und Strategie in ein Schachprogramm hineinbringen zu können. Es ist nur eine Frage der Zeit und der darauf verwendeten Mühe das diese Bereiche sich letztendlich zufriedenstellend vervollständigen. Ein Schachprogramm kann eine Gruppe von Zügen finden und spielen, die dann wie ein Plan aussehen.
WIssen kann dabei helfen diese Züge auszuwählen und dann sogar in einen Plan einzufügen. Wenn man solches Wissen hat sollte man es während der Baumsuche auch so verwenden, das es nicht schon wieder am Ende der Variante hinfällig geworden ist.

SCW:
Wir haben im Vorfeld über das Buch: "ATTACK WITH MIKHAIL TAL"  gesprochen und das du Inhalte aus diesem Buch im neuen Hiarcs9 verwendet hast und Hiarcs9 diese benutzt.
Welche anderen Bücher haben dich noch bei der Arbeit am neuen Hiarcs inspiriert ?

Mark Uniacke:
Viele, aber um zwei weitere Beispiele zu nennen:
Geheimnisse moderner Schachstrategie und Tal-Botwinnik 1960.

SCW:
Du hast gesagt das Hiarcs9 aggressiver gegen den gegnerischen König vorgeht.
Dies war ja eine Schwäche vorheriger Hiarcs Versionen, das sie im Königsangriff manchmal etwas blind waren.

Es sieht so aus als ob alle Programme in diesem Bereich viele Fortschritte gemacht haben.  Werden zukünftige Programme eher in der Lage sein Figurenopfer zu spielen nur um z.B. einen Plan fortzuführen z.B. für einen guten Königsangriff ?

Mark Uniacke:
Es gab ja schon Programme die sowas erfolgreich konnten. Chess System Tal wäre hier z.B. zu nennen. Es ist daher sehr wahrscheinlich das die Programme je mehr neue Ideen ausprobiert und getestet werden diese Domäne besetzen werden.
Das Schwierige dabei ist, dem Programm das Opfern beizubringen und aber gleichzeitig die Spielstärke anzuheben.
Ich habe den Königsangriffscode erweitert damit Hiarcs interessanter und einzigartiger spielt. Selbst wenn dies keinen ELO-Zuwachs ergibt, würde ich den Code trotzdem beibehalten. Aber glücklicherweise hat das neue Wissen darüber dann doch die Spielstärke erhöht.

SCW:
Die meisten Schachprogramme beginnen eine Schachpartie aus der gewohnten Grundaufstellung. Heutzutage ist Schach aber sehr ausanalysiert und deswegen kam Bobby Fischer auf die Idee das Fischer Random Schach zu entwickeln.
In seinen Augen hilft das den Spielern wieder bei Null anzufangen wenn sie eine Partie beginnen.
Werden Schachprogramme in der Lage sein Fischer Random Schach als eine Variante zu spielen, obwohl ihre Algorithmen und Bewertungsfunktionen ja eigentlich darauf ausgerichtet sind mit der normalen Grundstellung
zu beginnen ?

Mark Uniacke:
Ich denke die Programme können Shuffle Chess  sehr gut spielen, aber sicherlich haben sie dann Schwächen weil ihre Heuristiken nicht auf solches Spiel vorbereitet ist. Menschen werden ähnliche Probleme haben, und daher wird der Wettbewerb wieder erfrischend und neu sein. Sicherlich, Fischers Version des Shuffle Chess hat macht spezielle Regeln notwendig die man den Programmen
erst beibringen muß.

SCW:
Würdest du es gerne sehen wenn Bobby Fischer Fischer Random Schach gegen Hiarcs spielt ?

Mark Uniacke:
Ich würde Bobby Fischer gerne Schach gegen Hiarcs spielen sehen, egal welche Variante er dabei  wählt. Wirst du so ein Match für Hiarcs organisieren, Thorsten ?

SCW:
:-))) Ja - ich werde das mal versuchen :-)))

Viele Schachprogramme sind sehr gut im Lösen von Teststellungen. Andere sind dafür im praktischen Spiel besser. Ich habe im Laufe der Jahre die Erfahrung
geamcht das jene die gut im Lösen von Teststellungen sind, weniger gut im praktischen Spiel sind und umgekehrt. Du sagtest es wird schwierig sein den Fortschritt von Hiarcs9 anhand von Stellungsbeispielen darzustellen
weil du eigentlich kein Schachprogramm geschrieben hast das auf das bessere Lösen von Teststellungen abzielt, sondern das bessere Schachpartien spielt.
Das klingt sehr einleuchtend. Hast du dennoch ein Paar Beispiele für unsere Leser ?

Mark Uniacke:

Ja - hier sind ein paar Beispiele:

Die Bedenkzeiten sind auf einem Athlon 2Ghz/256Mb Hash gemessen:

r1r3k1/p3bppp/2bp3Q/q2pP1P1/1p1BP3/8/PPP1B2P/2KR2R1 w - - 0 1






















1. e6!!

Hiarcs 9 löst dies in 51 Sekunden, andere Programme
die ich ausprobiert habe wie z.B. F8/J8/S7/CT15 sind viel langsamer

3R4/1kr2pp1/2p1p3/1pP1PnBP/pP3K2/8/P4P2/8 w - - 0 1

Von
Kramnik-Bareev 2003,






















1. Lf6!! 


Hiarcs 9 löst dies in 7:54, können andere Programme dies schneller ?

r2r1bk1/ppqb1ppp/2p1p3/6P1/2PPN3/PB3Q2/1P3P1P/1K1RR3 w - - 0 1






















Diese Stellung zeigt den Kontrast in der Sucheffizienz zwischen Hiarcs 9 & Hiarcs 8.

1. Sf6+!
Hiarcs 8 braucht 12 Halbzüge Rechentiefe nach 12:48
Hiarcs 9 findet es auch im 12.Halbzug allerdings in  1:41 !!


2r2rk1/1bpR1p2/1pq1pQp1/p3P2p/P1PR4/5N2/2P2PPK/8 w - - 0 1























Diese Stellung ist ein Spaß und zeigt, daß man manchmal
bei Königsangriffen sogar den eigenen König zu Hilfe nehmen muß, und sei es sogar im Mittelspiel !

1. Kg3!!

Hiarcs 9 findet dies in 1 Sekunde. Wie schnell sind andere  Programme ?


r1b1qrk1/ppBnppb1/2n4p/1NN1P1p1/3p4/8/PPP1BPPP/R2Q1R1K w - - 0 1





















1. Se6!

Hiarcs 9 braucht 36 Sekunden, Hiarcs 8 über  3 Minuten.

2rqrnk1/pp3p2/5Np1/4pbP1/3p4/3B1N2/PPP2P2/2K4Q b - - 0 4






















1...Th8+!!
Hiarcs 9 braucht 2:06.

1r1qr2k/1p4pp/3p4/1R1B1p2/1pPp4/4P1Pb/1P3P1P/Q3R1K1 w - - 0 1






















Die Idee ist exd4 zu vermeiden und
Txb4! zu spielen.

Hiarcs 9 braucht dafür 9 Sekunden während Hiarcs 8 über 3 Minuten benötigt.


SCW:
Gibt es schon Pläne eine Multi-CPU Version für Hiarcs zu programmieren ?

Mark Uniacke:
Ich habe schon Anfragen für solch eine Version und wenn es populär genug
ist, werde ich sowas machen.

SCW:
Das langsamste Schachprogramm das ich jemals gesehen habe war eine kommerzielle Version von Mephisto III von Thomas Nitsche und Elmar Henne. Es gewann 1984 die WM in Glasgow mit einer 16 Bit Version des Programms.
Mephisto III machte 1-3 Knoten pro Sekunde in der 8-Bit Version und 4-10 Knoten pro Sekunde in der 16 Bit Version die auf einem Motorola 68000 spielte.
Hiarcs ist auch ein langsameres Programm im Vergleich zu anderen Programmen. Die Leute sind immer fasziniert mitanzusehen das langsame Schachprogramme
genauso stark spielen können wie schnelle Schachprogramme. Auf der anderen Seite gibt es aber auch immer ein Risiko, das das langsame
Schachprogramm in taktischen Situation geschlagen und ausgerechnet wird.

Wie löst du diesen Widerspruch in Hiarcs9 ?

Mark Uniacke:
Ich habe immer noch einen alten Mephisto III im Exclusive Brett. Ein sehr interessantes Programm seiner Zeit.
Hiarcs hat taktisches Wissen das ihn in der Bewertung stärker macht, sodaß es die Suche nicht unbedingt im selben Maße braucht um taktische Ebenbürtigkeit herzustellen. Es ist wirklich ein Austausch von Suche gegen
Wissen und wenn die Dinge gleichviel kosten ziehe ich Wissen vor.

SCW:
Hiarcs8 liebte ein ungleiches Materialverhältnis und  gab sehr gerne Material für eine positionelle Idee.
Die Käufer fanden aber auch heraus das es zu gerne z.B. einen Springer für 2 Bauern gab. Das konnte dann aber manchmal ins Auge gehen und zum Verlust führen. Hast du selber solch ein Verhalten bei Hiarcs8 beobachtet ?

Mark Uniacke:
Ja - sowas habe ich leider auch bei Hiarcs8 gesehen. Aber Hiarcs9 ist in dieser Hinsicht anders, obwohl es immer noch dieselben Opfer spielen könnte.
Ich wollte das Programm nicht langweilig und symmetrisch machen, so habe ich daran nicht viel verändert. Eigentlich wird es sogar noch eher versuchen ungleiche Materialverhältnisse anzustreben als bisher, vorausgesetzt diese Stellungen haben dann höhere Gewinnchancen.

SCW:
Die Leute mochten Hiarcs 8 weil es ein seht gutes Analysemodul für die Chessbase Oberflächen war. Im Besonderen die Rückwärtskommentierungen durch Hiarcs
wurden sehr gut durch dein Programm unterstützt. Besser als andere ChessBase engines das konnten.
Nun hoffen viele das Hiarcs9 in diesem Bereich durch sein größeres Wissen noch besser sein wird als Hiarcs8.

Ist es nicht sehr kompliziert immer mehr und mehr an Wissen zu implementieren und dennoch die Balance zu halten und die Spielstärke zu erhöhen ?
Ich kann mir vorstellen das man das neue Wissen erst für eine lange Zeit optimieren und gewichten muß bevor man die Ergebnisse bekommt die man erwartete. Wie löst du dies wenn du dein Schachprogramm entwickelst ?

Mark Uniacke:
Da hast du in der Tat Recht. Ein Bärenanteil der Zeit benötigt man für die ausgewogene Gewichtung der Bewertungseinheiten.
Es ist sehr einfach spezifisches Wissen in Isoliertheit zu programmieren, aber sehr schwer zu bestimmen wie dieses neue Wissen dann in praktischen Partien
mit den anderen Funktionen interagiert. Das macht die ganze Entwicklung sehr problematisch.

Ich habe bestimmt mehr als 20 verschiedene Versionen machen müssen bevor ein neuer Favorit sich herauskristallisierte.
Man muß dazu sehr viele Partien spielen, die Partien und die Ergebnisse berücksichtigen. Das ganze ist sehr zeitintensiv. Oft auch frustrierend wenn ich Wissen wieder herausnehmen muß das sich theoretisch gut ausnahm aber in der Praxis dann nicht den gewünschten Zuwachs erbrachte.

SCW:
Spielst du viele Autoplayer Partien gegen andere Schachprogramme oder ziehst du es vor Hiarcs im Spiel gegen sein Vorgängerprogramm Hiarcs8 antreten zu lassen ?

Mark Uniacke:
Ich spiele eigentlich kaum gegen Hiarcs8. De Fakto habe ich seit 3 Monaten das letzte mal eine Hiarcs Experimentalversion gegen Hiarcs8 antreten lassen.

SCW:
Gibt es einen Unterschied im Endspielwissen zwischen Hiarcs8 und 9 ?

Mark Uniacke:
Ja . Hiarcs 9 hat mehr Wissen (das war wohl vorhersehbar :-) im allgemeinen. D.h. es ist besser in der Lage Gewinnstellungen nach Hause zu bringen und Remis zu halten. Die Suche ist dort im Endspiel auch tiefer, wie überhaupt in allen Partiephasen.
Ich wollte das Hiarcs sich bemüht den Gewinn voranzubringen, Druck auf den Gegner auszuüben auch wenn das manchmal ein zwei-schneidiges Schwert ist. Doch macht es die Partie damit interessanter.

Ah - bevor ich es vergesse: es wird auch eine
Hiarcs8 Bareev Engine mit auf der CD sein !

SCW:
Mark . Wir danken dir für dieses Gespräch und wünschen dir und deiner Familie, und dem neu erschienenen Hiarcs9 alles Gute.


HIARCS 9

-
Mark Uniacke
-
The Pegasus
of
chess-programming
is back
!
"First love never dies!"

(Interview with Mark Uniacke)


SCW: Hi Mark, nice that you have some time for an interview.

Mark Uniacke: Hi Thorsten. Nice to hear from you. I hope you are well.   I will try to answer your questions...


SCW: Thank you. Here the first question.

Mark. Many people are waiting for Hiarcs9. You and your program seem to have a huge fan-club.
IMO this has to do with the playing style of Hiarcs. We all remember from the good old days of Hiarcs when it all began before 1993 and at the championship in 1993 munich that you tested your program against Mchess in older days. It seems that Marty Hirsch's program AI-Chess/Mchess was a reference for your Hiarcs program. Can you tell us why you choose Mchess and why you always tried to bring much KNOWLEDGE in your program instead of concentrating on making a fast program?

Mark Uniacke:

When I decided to bring Hiarcs 1.0 out for the PC in 1992, MChess was the clear leader until Chess Genius arrived so it was natural and fun to test against MChess. In fact I remember a memorable afternoon testing Hiarcs v MChess on 386s after it was ported from Sun to PC. As I recall Hiarcs lost 3.5-4.5 so I was pleased to be so close at that stage. Ever since Hiarcs was first written back in 1980 I have always sought to make the program play with chess knowledge. It is more rewarding for me to program in this way rather than making it a technical exercise of optimisation. That is not to say I do not try to make things fast, but often when it comes to a time trade off I always favour more knowledge rather than spending the time optimising a data structure or code routine.

SCW :
Do you still believe this was the right decision ?

Mark Uniacke:
I am still doing it this way and Hiarcs is still competitive so it was not a wrong decision ;-)  It is clearly possible to make chess programs play at a similar level with very different approaches and this makes it all the more interesting.

SCW:
When you won the championship 1993 many people expected to see Hiarcs as a dedicated chess program for the SPARC-Module of the SAITEK-company. How close was this deal and how strong do you think the program would have been in relation to the Spracklen program ?

Mark Uniacke:
There were discussions after Munich about a Hiarcs version on the Sparc module. Certainly a deal was discussed but financially it was not very attractive at all and given that I already had a full time career in telecoms it was not viable. In terms of strength it is difficult to say how strong the World Software Champion program would have been but it is possible and interesting to come up with a good estimate. The Sparc module 20Mhz rates at SSDF 2124, unfortunately SSDF never tested the champion version Hiarcs 2.1 but they did test Hiarcs 2.0 486/33 which rated SSDF 2100. Now I know because I ran Hiarcs on a Sparc 1 that the performance was comparable with a 486. According to the Selective Search rating list Hiarcs 2.1 on a 486 rated about 35 Elo above the Saitek Sparc module so I reach an estimate of SSDF 2159 for a Sparc Hiarcs WC version in early 1994. Of course by the end of 1994 Hiarcs 3.0 was available and in Sparc form this would have been well over SSDF 2200 and would of competed with Genius 68030, ChessMachine/30 and R30 well.

SCW:
Do you think it would make sense to write a hiarcs program for PALM/Pocket-PC's ? Maybe you know that Christophe Theron and Richard Lang are doing a great job porting their programs to those small machines... are their plans to bring out a hiarcs clon for Palm/Pocket-PC-platforms ?

Mark Uniacke:
It would be interesting to see how Hiarcs would do on PDA hardware and the associated limitations of memory etc. I will have a think about such a version, may be one day you will see it happen.

SCW:
After Hiarcs7/Hiarcs7.32 there was a huge time-gap in development of hiarcs.  When you came out again with Hiarcs8, people were very happy but  not 100 % confident with the playing strength progress made between hiarcs7.32 and hiarcs8. How close is Hiarcs9 coming to the latest chessbase engines Fritz8, Shredder7.04, and junior8 ?

Mark Uniacke:
Yes there was a big gap in time between H7.32 and H8 mainly due to work and family commitments. Of course Hiarcs was a spare time activity so it did not get worked on as often as I may have liked. I have made good progress since Hiarcs 8 and I think Hiarcs 9 will do well. The answer to your last question we will not know until Hiarcs 9 has been properly tested but I think it will be interesting to see how the other programs cope with Hiarcs 9.0.

SCW:

How do you see the possibilities today to increase playing strength in chess programs using knowledge implementation, plan making algorithms ? Programs like Fritz8 and Junior8 are very strong although they don't have much chessknowledge in the leaves of the tree meanwhile other chess programs have the knowledge everywhere in the tree. Do you think a chess program with preprocessed knowledge can find a plan in a chess game ?

Mark Uniacke:
There are massive improvements still to be made in computer chess knowledge and strategic play and it is just a matter of time and effort until these areas improve. A chess program can find a good set of moves which can look like a plan. Knowledge can help improve this set of good moves and even fit with a plan. If you have such knowledge it seems sensible to use it in the search tree in a way that means it is not out of date.

SCW:
We talked about : "ATTACK WITH MIKHAIL TAL" and that the new hiarcs is capable to use stuff out of this book. You said you certainly looked at this book and others  . Can you tell us which other books inspired your work on hiarcs9 ?

Mark Uniacke:  Many, but two other examples are: Secrets of Modern Chess Strategy, Tal-Botvinnik 1960

SCW:
You said that Hiarcs9 is more aggressive towards the enemy King. This was a weakness in earlier Hiarcs versions. It seems programs have made much progress over all the years of computerchess especially in this area.  Will future programs be able to sac pieces just because they this way continue a plan e.g. for a good king attack ?

Mark Uniacke:
Past programs have done this occasionally (CS-Tal was a notable example) and they are even more likely to do this in the future as new ideas are tried and tested. The difficult aspect is making this attacking/sacrificing the programs nature while maintaining its overall strength. I added the king attack code to make Hiarcs play more interesting and exciting chess and even if this gave no Elo improvement I would of kept it. Fortunately it also improved the program strength.

SCW:
Most chess programs are used to begin a game of chess from the NORMAL start position.
Today chess is much analyzed and Bobby Fischer came out with his Fischer Random chess. In his eyes this helps the players to begin by SERO when playing a game of chess. Will chess programs be able to play Fischer Random chess although most algorithms are focussed on the normal start position of chess ?

Mark Uniacke:
I think programs can play shuffle chess well but they have weaknesses because the heuristics are not tuned to such play. Of course people have similar problems and so the contest is interesting. Of course Fischer's version has special rules too which need to be incorporated into a program.

SCW:
Would you like to see Bobby Fischer play fischer random chess games versus hiarcs ?

Mark Uniacke:
I would like to see Bobby Fischer play any sort of chess especially against Hiarcs! Will you arrange such a match for Hiarcs Thorsten? ;-)

SCW:
:-)) Yes . I will try to do so :-))

Many chess programs are good in solving test positions. Others are better in playing games. I have made the experience that those that are good in solving test-suites have problems in playing normal games and vice versa. You said that it will be difficult to supply test positions that show the progress of hiarcs9 because you did not made a program to solve test positions but one to play chess!

This sounds understandable. Have you found some positions ?

Mark Uniacke:

Okay here are some example positions:

Timings for an Athlon 2Ghz/256Mb hash:


r1r3k1/p3bppp/2bp3Q/q2pP1P1/1p1BP3/8/PPP1B2P/2KR2R1 w - - 0 1

Key move is
1. e6!! 












Hiarcs 9 gets this in 51 seconds, others programs I have tried like F8/J8/S7/CT15 are much slower.

3R4/1kr2pp1/2p1p3/1pP1PnBP/pP3K2/8/P4P2/8 w - - 0 1

From
Kramnik-Bareev 2003,

Key move is
1. Bf6!! 

Hiarcs 9 gets this in 7:54, can any other programs do this faster?














r2r1bk1/ppqb1ppp/2p1p3/6P1/2PPN3/PB3Q2/1P3P1P/1K1RR3 w - - 0 1

This one shows the contrast in search efficiency between Hiarcs 9 & Hiarcs 8.

Key move is
1.Nf6+!
Hiarcs 8 finds this at the 12th iteration in 12:48
Hiarcs 9 finds it also at the 12th iteration in 1:41















2r2rk1/1bpR1p2/1pq1pQp1/p3P2p/P1PR4/5N2/2P2PPK/8 w - - 0 1

This one is fun and shows sometimes king attacks requires the participation of ones own king even in the middle game!!

Key move is
1.Kg3!!

Hiarcs 9 finds this is in 1 second. How do other programs do?














r1b1qrk1/ppBnppb1/2n4p/1NN1P1p1/3p4/8/PPP1BPPP/R2Q1R1K w - - 0 1

Key move is
1. Ne6!

Hiarcs 9 takes 36 seconds, Hiarcs 8 takes over 3 minutes.
















2rqrnk1/pp3p2/5Np1/4pbP1/3p4/3B1N2/PPP2P2/2K4Q b - - 0 4

Key move is
1.Rh8+!!
Hiarcs 9 takes 2:06















1r1qr2k/1p4pp/3p4/1R1B1p2/1pPp4/4P1Pb/1P3P1P/Q3R1K1 w - - 0 1

Key is to avoid exd4 and play
Rxb4!

Hiarcs 9 takes 9 seconds while Hiarcs 8 takes over 3 minutes

SCW:
Are there plans to write a multi-cpu version of hiarcs ?


Mark Uniacke:

I have had requests for such a version and if it is popular enough I will do it. 


SCW:

The slowest chess program i have ever seen was a the commercial dedicated version of Mephisto III by Thomas Nitsche and Elmar Henne. It won 1984 the championship in Glasgow with a 16 bit version of the program. It made arround 1-3 NPS in the 8-Bit version and between 4-10 NPS in the 16 Bit version of the program playing on a motorola 68000-CPU. Hiarcs is also a SLOW program related to the other chess programs.
People are fascinated to see slow chess programs playing as strong as fast chess programs. But on the other hand there is a danger that slow programs are beaten in tactical positions. How do you solve this in Hiarcs9 ?

Mark Uniacke:
I have an old Mephisto 3 exclusive, a very nice and interesting program for its day.
Hiarcs has tactical knowledge which makes it tactically stronger in the eval so it does not need to search at the same rate to achieve tactical equality. It is really a trade off of search v knowledge and all things being equal I favour the knowledge.

SCW:
Hiarcs8 liked unbalanced material and gave often material for a positional idea.
People remember that it e.g. liked to give a knight for 2 pawns. This is very risky when the pawns are far away from beeing promoted. Have you seen those behaviour in Hiarcs8 too ?
And will hiarcs9 do the same sacs ?

Mark Uniacke:
I have seen such behaviour and Hiarcs 9 is different but may still play the same sacs! I did not want to make the program boring and symmetrical so I have not dumbed it down. In fact it probably will go for more unbalanced situations than ever, except the intention is that these offer more practical chances. 

SCW:
People especially liked Hiarcs8 because it was a good analysis tool in fritz (backward analysis of games). Better than other chessbase engines. Most people hope that Hiarcs9 has more knowledge so that this feature will be even better with Hiarcs9.
Isn't if very difficult to implement more and more knowledge into a chess program and keep anything that much balanced again that it increases playing strength ? I can imagine that new knowledge must first be tuned a long time to get the results you want to have. How do you solve this when developing a chess program.

Mark Uniacke:
You are very right the difficult part is getting the balance. It is easy to improve some knowledge in isolation but how that interacts with the rest of the program and in chess games makes this a very difficult problem. I found that I went through about 20 versions each time before a new best in class was found. It really requires playing lots of games, taking note of the results, but also looking at the games played. Time consuming and often frustrating when I have to remove knowledge which makes perfect sense to me but does not perform in games.

SCW:
Do you play much autoplayer games versus other chess programs or do you prefer to let hiarcs play eng-eng matches against hiarcs8 ?


Mark Uniacke:

I rarely play Hiarcs 8, in fact before this last fortnight it was probably about 3 months ago that a Hiarcs experimental version played H8!

SCW:
Is there a difference concerning endgame knowledge between hiarcs8 and 9 ?

Mark Uniacke:
Yes, Hiarcs 9 has more knowledge (predictably ;-) generally. This means it is better able to convert the wins and hold the draws. The search is also deeper in the endgame, in fact in all game phases. I particularly wanted Hiarcs 9 to keep pushing for the win, putting pressure on the opponent. Sometimes this is double-edged but it makes for more interesting games.

Ah - before i forget this: there will be also a
Hiarcs8 Bareev engine on the CD !

SCW:
Mark . We thank you very much for this interview and wish you and your family all the best. We hope Hiarcs9 will be a good deal for you and the customers will like it much.
Pegasos & Pegasus

"Pegasos" (lat. Pegasus), im Griechischen Mythos das Flügelross, das aus dem Blute der Medusa entsprungen. Bellerophon, Sohn des Glaukos, Enkel des Sisyphos, fing es ein und vollbrachte auf ihm seine Taten, besonders bezwingt er die feuerschnaubende Chimäne, ein Mischwesen aus Löwe, Ziege und Schlange.
Als es sich mit ihm zum Himmel emporschwung, stürzte er zu Tode, Pegasus flog allein in den Olymp, wo es dem Zeus Donner und Blitz trägt.
Bei späteren ist es das Ross des Eos oder der Musen, das mit seinem Huf die Musenquellen Hippokrene auf dem Helikon und Peirene auf der Burg von Korinth hervorschlägt.

Quelle: Brockhaus 1912

Pegasus in Myth

The winged horse of the Muses, born of the sea foam and the blood of the slaughtered Medusa. He was caught by Bellerophon, who mounted him and destroyed the Chimera; when Bellerophon attempted to ascend to heaven [Olympus] he was thrown from the horse, and Pegasus mounted alone to the skies to become the constellation of the same name.
When the Muses contended with the daughters of Pieros, Mount Helicon rose heavenward, Pegasus gave it a kick and brought out of the mountain the soul-inspiring waters of the fountain Hippocrene.

from Bulfinch's Mythology