Deep Blue versus Kasparov (deel 2)
Vincent Diepeveen
Kasparov – Deep Blue. De historische ontmoeting, waarin voor het eerst een computer van een wereldkampioen won. Terecht of onterecht? Vincent Diepeveen analyseert hèt evenement van eind vorige eeuw. Hier deel twee van Vincents Kasparov – Deep Blue saga.
En hoe gaat het met Diepje?
Diep? Jazeker, u weet wel dat schaakprogrammaatje van ondergetekende! Het gaat prima met Diep. De afgelopen jaren was het nogal stil rondom Diep, maar komende maanden zal dat ijzige zwijgen langzaam verbroken worden. De redenen:
- er wordt hard aan Diepje gewerkt
- er word keihard aan Diepje gewerkt
Met name het eeuwige gezeur van de tactisch feilbare mens heeft ertoe geleid dat de tactiek in Diep verbeterd is, omdat al die tactisch feilbare mensen alleen maar tactische trucjes loslaten op programma’s (in plaats van te kijken of ze al iets weten van goede en slechte lopers). De resultaten mogen er zijn!
Om te beginnen met datgene waar programma’s het allerslechtst in zijn: eeuwig schaakjes vinden.
Kasparov gaf hier op. De remise is nogal tactisch. Tot op de dag van vandaag begrijp ik niet waarom Kasparov niet gewoon de zet De3 ‘geprobeerd’ heeft. Pas na … De3 Dxd6 wordt het lastig. Want hier is de manier om remise te maken niet eenvoudig. Wellicht dit is door Kasparov gemist.
Diep heeft hier minder problemen mee:
00:08 (10ply, -2.27) Qb6xc6 d5xc6 Kf7-f8 Ra6-a7 Rb8-c8 Be4-d5 e5-e4 Bd5xe4 Bd6-e5 Ra7-b7 Rc8-c7 Rb7xb5 Be5xc3
00:20 (11ply, -2.94) Qb6xc6 d5xc6 Rb8-c8 Ra6-a7 Rc8-c7 Be4-d5 Kf7-e7 Ra7-a5 e5-e4 Ra5xb5 e4-e3 Kf1-e2 Bd6-e5 Rb5-c5 Ke7-d6 Ke2xe3 Be5xc3 Rc5xc4 Kd6xd5 Rc4xc3 Rc7xc6 Rc3xc6 Kd5xc6
++ b6-e3
01:05 (11ply, -2.80) Qb6-e3 Qc6xd6 Rb8-e8 h3-h4 Qe3xe4 Ra6-a7 Kf7-g8 Qd6-d7 Qe4-d3 Kf1-g1 Qd3-e3 Kg1-h2 Qe3-f4 Kh2-h3 Qf4-e3 g2-g3 Qe3xa7 Qd7xa7 Re8-d8 g3-g4 Rd8xd5
02:59 (12ply, -2.87) Qb6-e3 Qc6-d7 Kf7-g8 Qd7xd6 Rb8-f8 Qd6-e6 Kg8-h8 Qe6-e7 Rf8-g8 Be4-f3 Qe3-c1 Kf1-f2 Qclxc3 Qe7-c5 Qc3-d2 Kf2-gl Qd2-el Kg1-h2 Rg8-b8
07:11 (13ply, -0.99) Qb6-e3 Qc6-d7 Kf7-g8 Qd7xd6 Rb8-f8 Qd6-e6 Kg8-h8 Qe6-e7 Rf8-g8 Be4-f3 Qe3-cl Kf1-e2 Qcl -c2 Ke2-e1 Qc2xc3 Ke1-e2 Qc3-d3 Ke2-f2 Qd3-d4 Kf2-f1 Qd4-d3 Bf3-e2 Qd3xf5 Kf1-g1 Qf5-e4 Be2-f3 Qe4-e1 Kg1-h2 c4-c3
18:24 (14ply, -0.44) Qb6-e3 Qc6-d7 Kf7-g8 Qd7xd6 Rb8-f8 Qd6-e6 Kg8-h8 Be4-f3 Qe3-c1 Kf1-e2 Qc1-c2 Ke2-e1 Qc2-c1 Ke1-f2 Qc1-d2 Bf3-e2 Qd2-f4 Be2-f3 Qf4-d2
58:01 (15ply, -0.31) Qb6-e3 Qc6xd6 Rb8-e8 Qd6-d7 Re8-e7 Qd7-c6 Qe3xe4 d5-d6 Qe4xf5 Kf1-g1 Re7-d7 Qc6xb5 Qf5-e6 Qb5-c5 f6-f5 Ra6-a7 Kf7-f6 Ra7xd7
01:56:44 (16ply, -0.34) Qb6-e3 Qc6xd6 Rb8-e8 Qd6-d7 Re8-e7 Qd7-c6 Qe3xe4 d5-d6 Qe4xf5 Kf1-g1 Re7-d7 Qc6xb5 Qf5-e6 Qb5-c5 Kf7-g8 Qc5-c8 Kg8-f7 b4-b5 Rd7xd6 Ra6-a7
03:58:15 (17ply, -0.49) Qb6-e3 Qc6xd6 Rb8-e8 Qd6-d7 Re8-e7 Qd7-c6 Qe3xe4 d5-d6 Qe4xf5 Kf1-g1 Re7-d7 Qc6xb5 Qf5-e6 Qb5-c5 Kf7-g8 Ra6-c6 Rd7-d8 Qc5xc4 Qe6xc4
Aan de lengte van de varianten ziet u al dat De3 niet makkelijk te vinden is. Na 7 minuten op mijn huis en tuin pc’tje is het vinden van een remisescore een feit.
De fout van Deep Blue
Goed, maar meerdere programma’s spelen de zet De3 wel. Waar deed Deep Blue het mis dan?
Welnu dat was een paar zetten hiervoor: hier speelde Deep Blue Kf1??
Een tactische blunder want na Tb8 en Ta6 kan zwart dan met De3 remise maken. Zoals Seirawan opmerkt zijn al deze eeuwig-schaak- varianten na Kh1! totaal niet mogelijk. Dat vinden niet veel programma’s! Vanzelfsprekend ook Deep Blue niet, anders had het hier niet Kf1 gespeeld!
De berekeningen van Diep:
00:39 (12ply, 2.69) Kg1-f1 Rb7-b8 Ra8-a6 Qb6xc6 d5xc6 Kf7-f8 Ra6-a7 Rb8-c8 Be4-d5 Rc8-c7 Ra7-a5 Kf8-e7 Kf1-e2 e5-e4 Ra5xb5 Bd6-e5 Rb5-c5 g7-g5
01:06 (13ply, 2.69) Kg1-f1 Rb7-b8 Ra8-a6 Qb6xc6 d5xc6 Kf7-f8 Ra6-a7 Rb8-c8 Be4-d5 Rc8-c7 Ra7-a5 e5-e4 Ra5xb5 Bd6-e5 Kf1-e2 Be5xc3 Rb5-b8 Kf8-e7 Bd5xe4
04:09 (14ply, 2.56) Kg1-f1 Rb7-b8 Ra8-a6 Qb6-e3 Qc6-d7 Kf7-g8 Qd7xd6 Rb8-f8 Qd6-e6 Kg8-h7 Be4-f3 Qe3xc3 Qe6-e7 Qc3-d3 Kf1-g1 Qd3-e3 Kgl1-h2 Qe3-f4 g2-g3 Qf4-d2 Bf3-g2
++ g1-h1
06:39 (14ply, 2.72) Kg1-h1 Rb7-b8 Ra8-a6 Qb6xc6 d5xc6 Rb8-c8 Ra6-a5 Kf7-e7 Ra5xb5 Rc8-b8 Rb5-a5 Rb8-c8 Be4-d5 Bd6-c7 Ra5-a6 Ke7-d6 Bd5xc4
09:03 (15ply, 2.74) Kg1-h1 Rb7-b8 Ra8-a6 Qb6xc6 d5xc6 Rb8-c8 Ra6-a5 Kf7-e7 Ra5xb5 Rc8-b8 Rb5-a5 Bd6-c7 Ra5-c5 Rb8-d8 b4-b5 Rd8-b8 g2-g4 Ke7-f7
18:50 (16ply, 2.80) Kg1-h1 Rb7-b8 Ra8-a6 Qb6xc6 d5xc6 Rb8-c8 Ra6-a5 Kf7-e7 Ra5xb5 Rc8-b8 Rb5-a5 Bd6-c7 Ra5-c5 Rb8-d8 Rc5xc4 Bc7-b6 Kh1-h2 Rd8-d1 b4-b5 Rd1-a1
Dit betekent dus dat Diep ongeveer een variant van 20 zetten (40 halfzetten of plies) had moeten zien om tot Kh1 te komen. Althans, dat beweert Uri Blass. Professor Robert Hyatt houdt het op rond de 60 tot 80 ply.
De hardware limiet van 32 ply
Enfin, Deep Blue had al dat moois al bij voorbaat niet kunnen vinden wegens een hardware limiet van 32 ply maximaal. Al het mooie geblaat ten spijt, geen enkele variant van Deep Blue kon deze diepte overschrijden.
Ondanks deze hardware limiet had een tactisch sterk programma natuurlijk op de zet Ta6 wel De3 van zwart kunnen verwachten.
Sinds begin 2000 zijn alle logfiles van Deep Blue openbaar. Hier valt duidelijk in te zien dat zelfs De3 nog niet verwacht werd bij het berekenen van 45.Ta6.
De log files van Deep Blue zijn slecht leesbaar. Vandaar slechts een klein stukje hieruit geciteerd, waarbij de tekst van Deep Blue iets toegankelijker is gemaakt:
44.Kf1 16/78:52
hash guess Rb7b8, Guessing Rb8
Ra6 T=0
Ra8-a6 Qb6xc6 d5xc6 Kf7-g8 Be4-d5 Kg8-h7 Ra6-a7 Rb8-c8 Ra7-b7 h6-h5 Rb7xb5 Kh7-h6 Rb5-b7 Rc8-c7 Rb7-b8
Ra6 T=3
Ra8-a6 Qb6xc6 d5xc6 Kf7-g8 Be4-d5 Kg8-h7 Ra6-a7 Rb8-c8 Ra7-b7 h6-h5 Rb7xb5 Kh7-h6 Rb5-b7 Rc8-c7 Rb7-b8
Ra6 T=10
Ra8-a6 Qb6xc6 d5xc6 Kf7-g8 Be4-d5 Kg8-h7 Ra6-a7 Rb8-c8 Ra7-b7 h6-h5 Rb7xb5 Kh7-h6 Rb5-b7 Rc8-c7 Rb7-b8
Ra6 T=17
Ra8-a6 Qb6xc6 d5xc6 Kf7-g8 Be4-d5 Kg8-h7 Ra6-a7 Rb8-c8 Ra7-b7 h6-h5 Rb7xb5 Kh7-h6 Rb5-b7 Rc8-c7 Rb7-b8
Ra6 T=34
Ra8-a6 Qb6xc6 d5xc6 Kf7-g8 Be4-d5 Kg8-h7 Ra6-a7 Rb8-c8 Ra7-b7 h6-h5 Rb7xb5 Kh7-h6 Rb5-b7 Rc8-c7 Rb7-b8
Ra6 T=99
Ra8-a6 Qb6xc6 d5xc6 Kf7-g8 Be4-d5 Kg8-h7 Ra6-a7 Rb8-c8 Ra7-b7 h6-h5 Rb7xb5 Kh7-h6 Rb5-b7 Rc8-c7 Rb7-b8
Ra6 T=192
Ra8-a6 Qb6xc6 d5xc6 Rb8-c8 Be4-d5 Kf7-e7 Ra6-a5 Bd6-c7 Ra5xb5 Ke7-d6 Bd5-f3 Kd6-e7 Rb5-c5 Rc8-a8 Bf3-d5 Ke7-d6
Wat opvalt aan de logfiles is de kleine zoekdiepte waarop Deep Blue over het algemeen zocht. Slechts tussen de 11 en 13 ply.
Nu moet ik hier wel aan toevoegen dat het nu 2001 is en in 1997 was tussen de 11 en 13 ply zoeken helemaal niet slecht op een pctje. Dat Deep Blue op 480 schaakprocessoren en op een supercomputer met 32 normale processoren speelde, dat zullen we dan maar voor lief nemen!
Geïnteresseerden in de logfiles kunnen ze vinden op het internet of ondergetekende een e-mailtje sturen.
De logfiles
Dat blootgeven van die logfiles had overigens heel wat voeten in de aarde. Jarenlang werden ze niet vrijgegeven, maar in 2000 ergens was de programmeur van Deep Blue, Feng-Hsiung Hsu, links in beeld, verlost van IBM en had hij de rechten van de schaakchip overgenomen.
Hij wilde namelijk een aantal schaakprocessoren drukken, er een match tegen Kasparov tegen spelen en dan wellicht nog wat kleingeld aan overhouden op de commerciële markt.
Dit klinkt allemaal heel aardig, maar IBM had natuurlijk wel het een en ander geëist zo is mijn aanname. Zeker is dat IBM geëist had dat ze de naam Deep Blue niet meer mochten gebruiken, noch de naam IBM.
IBM heeft daar goede redenen voor. Een paar uur nadat Kasparov namelijk zijn vaan gestreken had tegen Deep Blue, steeg het IBM aandeel 5% op Wallstreet. De dagen erop volgden nog eens 17%. IBM had handig munt geslagen uit de overwinning door te claimen dat dit te danken was aan de nieuwe IBM technologie die binnen kort op de markt zou komen!
Ach ja, wat moet ik erover zeggen? Misschien is het wel handig te vermelden wat 22% vandaag de dag waard is. 22% van het IBM aandeel is genoeg om de hele Nederlandse Staat op te kopen (als deze te koop zou zijn). We praten over een somma van rond de 250.000.000.000 gulden, oftewel een kwart biljoen. U begrijpt het al. We krijgen nooit meer een match Kasparov – Deep Blue, om de eenvoudige reden dat IBM dan een beurswaarde verlies neemt van een kwart biljoen.
De droom die vervaagt
Dus u begrijpt het al. Hsu ging zonder geld onderhandelen met Kasparov. Sterker nog, zelfs zonder sponsor voor het drukken van een schaakchip.
Want Deep Blue bestond dus uit echte schaakprocessoren, overigens in 1997 was de technologie waarmee IBM de schaakprocessoren liet drukken al verouderd. Rechts ziet u een chip van Deep Blue.Om technisch te blijven: 0.6 micron technologie waren de processoren in 1997. Dat is equivalent aan de technologie waarmee de 486 (uit 1994) en de pentium 60 is gedrukt. Ondertussen zijn we al een x-aantal generaties technologie verder. Hsu zelf schat in dat met de huidige technologie (0.18 micron) hij met 1 tot 4 chips gemakkelijk even diep of zelfs dieper kan zoeken als met de 480 processors in 1997 toentertijd tegen Kasparov.
Zelf wil ik nog wel wat verder gaan. Ikzelf kan Deep Blue wegvagen en al helemaal met mijn schaakprogrammaatje op een enkele, in de winkel verkrijgbare, CPU!
Vanzelfsprekend zou dit echter niet opvallen in deze wereld want Hsu kan de naam Deep Blue niet meenemen van IBM. Dat kost zoals u begrijpt heel wat meer dan de chiprechten die naar men fluistert voor rond de kwart miljoen zijn gekocht door Hsu.
Een factor miljoen meer vermoed ik.
Links ziet u de omslag van het boek dat Hsu over Deep Blue schreef. In één van zijn sponsorpraatjes kon ook Hsu de Microsoft-mannen niet erg overtuigen van het nut om geld in zijn processors te steken. We praten overigens niet over geringe bedragen om Deep Hsu spelend te krijgen anno 2001. Daar waar IBM al veel geld moest dokken om op verouderde technologie processors te drukken, daar is voor het drukken van processors met moderne middelen de prijs nog veel hoger. De machines die processors drukken zijn namelijk elke generatie duurder geworden. De prijs kunt u vinden op de ASM-Litography homepage, maar zal ondertussen rond de 12 miljoen dollar per machine liggen. Dan hebben we het nog niet over de overige kosten. :)
Daarnaast is er een andere factor waar de heer Hsu zich op verkeken heeft. Met hem ook Kasparov. Dat is dat in alle wetenschappelijke boekjes staat dat schaken zo goed als opgelost is in 1997 door Deep Blue. Met als referentie de PR-publicaties van IBM.