Schaakkampioen delft onderspit tegen Deep Fritz

De wereldkampioen schaken, Vladimir Kramnik, is in een zeskamp te Bonn verslagen door de schaakcomputer Deep Fritz, met de nieuwe versie 10 (voor multicoreprocessors) aan boord van het commerciële schaakprogramma Fritz.

Vladimir Kramnik speelt tegen Deep Fritz Van de zes partijen eindigden vier in remise en twee resulteerden in een overwinning voor Deep Fritz. De laatste partij besloeg 47 zetten en nam bijna vijf uur in beslag. De 31-jarige Kramnik verdiende een half miljoen dollar prijzengeld, wat een miljoen zou zijn geweest als hij de machine zou hebben verslagen. Kramnik zei 'enigszins teleurgesteld' te zijn, en hoopt binnen twee jaar revanche te kunnen nemen. 'Met meer voorbereidingstijd heb ik een kans', aldus de (menselijke) schaakkampioen. Vier jaar geleden wist Kramnik het schaakprogramma met gelijkspel van de overwinning af te houden, maar de soft- en hardware zijn inmiddels verbeterd. Het apparaat kan acht miljoenposities per seconde berekenen waarbij deze - net als IBM's 'Deep Blue' zijn naam eer aandoend - ver de diepte inkijkt: de computer berekent vanuit de huidige speltoestand meerdere generaties opvolgers, waarvan het aantal mogelijkheden pijlsnel toeneemt.

Opvallend is dat waar IBM's Deep Blue, die in 1997 toenmalig wereldkampioen Garry Kasparov versloeg, op speciaal ontwikkelde 'schaakprocessors' vertrouwde, de huidige computerschaakkampioen op een gewone computer draait - met twee Intel dualcoreprocessors. Deep Blue kon vijfentwintigmaal zoveel posities per seconde doorrekenen als Deep Fritz, dus laatstgenoemde moet het van niet alleen van pure kracht hebben. Het programma beschikt over verschillende heuristieken om zo efficient mogelijk de onvoorstelbaar grote zoekruimte af te gaan, zo kent het bijvoorbeeld meer dan drie miljoen schaakpartijen uit het verleden met behulp waarvan het de waarde van de zich aandienende zetmogelijkheden probeert in te schatten.

Door Mick de Neeve

06-12-2006 • 21:07

124

Bron: BBC News

Reacties (124)

124
124
60
24
9
44
Wijzig sortering
Dit heeft vind ik weinig meer met schaken te maken... het reduceert het spel tot een algoritme...
Kasparov merkte dit ook al op na zijn spel tegen Deep Blue.
Niettemin is het bijzonder interessant dat een machine die zovele miljoenen zettencombinaties berekent en scoort en daaruit de "beste" zet haalt (op het oog de beste manier van speln?), het maar moeilijk haalt van een getrainde mens die een stuk minder zetten overloopt, maar uitgaat van intuïtie en spelervaring (2 bijzonder moeilijk te vatten begrippen)
Er is lang gedacht dat een schakende machine onmogelijk zou zijn, en nu nog steeds, in tijden van atoombommen, ruimtevaart en 3D graphics, blijkt het een lastige klus de ultieme schaker te ontwerpen. Dat blijkt immers niet enkel mogelijk dmv rauwe rekenkracht, omdat het aantal bordposities per denkniveau enorm toeneemt. In een openingpsotie bijvoorbeeld kan wit bijvoorbeel 20 verschillende zetten, zwart daarovolgend ook. Dat betekent dat om alle bordposties 1 niveau diep te overschouwen al 20*20 mogelijke posities moetn doorgenomen worden. Ervanuit geaan dat er 20 mogleijke zetten blijven is 3 niveaus diep "denken" gelijk aan 20*20*20*20*20*20 (=64.000.000) posities evalueren.
Daarom maken de schaakcomputers ook gerbuik van databanken met openingen en bekende matchen.
De evaluatie van elke positie is kritiek maar zeer complex. Stel bijv dat je door 2 torens te offeren een mat in 3 hebt, maar maar 2 zetten diep evalueert ;) Daarnaast is de "waarde van een stuk niet allen afhankelijk van het soort stuk, maar ook van de posities van zichzelf en andere stukken, welke stukken er tegenover staan etc etc. Een mens probeert de intenties van zijn tegenstander te doorzien, terwijl in "nieuwe" matches de computer eigenlijk gewoon gokt (en van een worst case uitgaat).
Al bij al is "reduceren tot een algoritme" imho wat te eenvoudig voorgesteld: computerschaken is een eigen discipline, maar net zogoed een krachtmeting, net zo goed lastig :)
Vandaar dat er pruning op de zoekboom wordt toegepast. Hierin ligt (voor een eenvoudig algoritme) een methode tot het verminderen van de te evalueren posities. Ik heb geen idee hoe Fritz werkt, maar een eenvoudig minimax algoritme kan versneld worden door pruning toe te passen en de zetten te sorteren op waarschijnlijk belang. Dan is 3 niveau's niet meer 64.000.000 posities. De truuk is verder om van die 30.000.000 posities die overblijven de diepte slim te bepalen. In sommige delen van de boom ga je dus door tot 2 niveau's en in andere tot 6. Maar goed, dat hoef ik de makers van Fritz in elk geval niet meer uit te leggen ;)
Waarschijnlijk worden de schaakkwaliteiten van een huidige schaakcomputer niet gelimiteerd door rekenprestaties maar door de kwaliteit van de software.
Daarom maken de schaakcomputers ook gerbuik van databanken met openingen en bekende matchen.
Dat doen schakers net zo hard.
Een klein beetje enthousiasteling kent de moderne openeningen ook allemaal uit zijn/haar hoofd.
Dat weet je toch van tevoren als je tegen een computer gaat schaken? :?
Kasparov gaf na zijn partijen tegen Deep Blue al aan dat hij een beetje andere aanpak koos dan tegen menselijke spelers.

Ten eerste gebruikte hij een paar keer nogal exotische openingen. Vaak gaven die hem een klein nadeel, bijvoorbeeld door een dubieus offer van een stuk, maar het voordeel was dat de computer dan niet meer kon terugvallen op zijn openingsboek (de database waar openingen van heleboel partijen in staan). Kasparov had de openingen thuis uitgebreid voorbereid, waardoor hij precies wist hoe hij moest reageren op welke zet van Deep Blue. Dat gaf hem per saldo toch een klein voordeel.

Ten tweede stuurde hij vaak aan op stellingen die 'dicht' zaten. Daarbij kon hij er een heleboel zetten over doen om zijn stelling stukje bij beetje te verbeteren, terwijl de computer nooit zo diep (een zet of 10) kon rekenen. Voor een mens is het bijvoorbeeld vrij eenvoudig te zien dat een paard het sterkst is als hij op een bepaald veld staat. Dat je in een gesloten stelling er heel wat zetten over doet om het paard op dat veld te krijgen is geen probleem, een mens ziet heel snel hoe het paard op dat veld komt. Een computer ziet zoiets niet zo snel, simpelweg omdat hij altijd uitgaat van de huidige stelling en een hoop irrelevante zetten moet doorrekenen. De computer werkt immers niet volgens een plan, maar rekent domweg een heleboel mogelijkheden door.

Kasparov schaakte dus wel een klein beetje anders tegen Deep Blue en dat had vooral te maken met zijn strategie en zijn voorbereiding. Bij veel partijen was zijn commentaar echter dat Deep Blue zo 'menselijk' schaakte. Bij Vladimir Kramnik tegen Deep Fritz zal dat niet veel anders zijn geweest.
Dat Kasparov het schaken van DeepBlue "menselijk" vond aandoen, heeft ook met z'n russische aanleg voor complotdenken te maken: hij heeft lang volgehouden dat dat komt omdat er gefraudeerd werd, menselijke tussenkomst door secondanten [ik weet al niet meer tijdens welke partij, een partij net voor eentje die hij grandioos verloor "omdat hij mentaal uit evenwicht was" doordat hij de fraude realiseerde]. Er was een bbc (horizon) docu over deze `fraude'.
Verschilt weinig van het geruzie bij laatste match, waar de een beweerde dat de ander zo lang naar toilet ging om sneakily te gaan bellen.

Wat dat gemak voor mensen om een goede positie te herkennen betreft: de poging is om dus om Fritz dezelfde soort heuristische regels aan te leren. Dat zou kunnen, als jouw `paard-regel' 100% nauwkeurig neer te schrijven is.
Punt is dat een mens hoofd en bijzaak makkelijker uiteen kan houden --- het is niet alleen de positie van dat paard, maar ook die van enkele van al die andere stukken, maar de meeste niet.

Zolang je de volledige regel, of een gewicht voor het belang van deze regel t.o.v. alle andere vuistregels, niet kunt neerschrijven blijft het sukkelen. Mensen zijn extreem goed in patroonherkenning (dat geeft ook al die maria-in-een-toast en jezus-in-een-boomknol-of-vaatdoek wonderen), en dat patroon heb je niet in woorden gevangen.
Volgens mij doet een mens tijdens een schaakpartij niet zoveel anders dan een schaakcomputer. Het is immers altijd een kwestie van vooruit denken en bepalen welke mogelijkheden je tegenstander heeft bij keuzes van jou, en welke mogelijkheden daar weer op volgen voor jezelf.
Deep Fritz heeft daar nu heuristieken bij gekregen, waardoor het eigenlijk alleen maar menselijker wordt. Een menselijke schaker kan toch ook putten uit ervaringen uit eerder gespeelde partijen?
De enige verschillen zijn dan eigenlijk de verwerkingssnelheid en de capaciteit van een computer: hij kan veel meer en snelle zetten vooruit denken, en beschikt over veel meer 'ervaring', waardoor een computer eigenlijk altijd in het voordeel zal zijn.
Het is duidelijk dat je zelf geen schaker bent, want je redenering is nogal simplistisch. Schaken is echt wel meer dan 'x zetten vooruit denken'.
Eén van de sterke punten van het menselijk brein is het herkennen van patronen. Zo ook in het schaken, een goed schaker kan veel posities op het bord gewoon onmiddellijk als goed of slecht inschatten, zonder dat hij daarvoor al hoeft vooruit te rekenen. Dat kan een computer vooralsnog veel moeilijker en is dus beperkt tot enerzijds databases van posities en anderzijds vooruit rekenen.
Een beter voorbeeld is overigens Go. Uiterst eenvoudige spelregels. Maar een computer is nog steeds niet in staat om een ietwat goede Go-speler te verslaan. De zoekruimte is immers zo gigantisch groot, dat louter werken met zoekbomen (dus 'vooruit denken').
Anoniem: 177275 @Twixie8 december 2006 09:34
Ik ben niet zo'n beste schaker, maar heb wel eens gelezen dat een Nederlandse schaker (Donner) beweerde dat de gemiddelde grootmeester meestal niet meer dan twee zetten vooruit rekende.
Anoniem: 175233 @MeMoRy7 december 2006 12:09
Schaken is nooit veel anders geweest dan een algorithme. Heel veel zetten zijn deterministisch. Zo gauw je met een bepaalde opening begint, volgen vrijwel alle zetten elkaar noodzakelijkerwijs op. Er zijn heel vaak duidelijke beste, of zelfs noodzakelijke, zetten bij schaken. Zo gauw je daar van afwijkt, verzwak je je stelling.

Daarom ook dat je allerlei standaard openingen hebt, die tientallen zetten diep kunnen zijn. Lang voordat we de computer hadden uitgevonden, was de opening van een schaakspel al tot een algorithme gereduceerd.

Datzelfde geldt vaak voor het eindspel, wanneer het aantal stukken sterk gereduceerd is. Alleen het middenspel heeft nog genoeg vrijheid voor nieuwe mogelijkheden.
Er worden anders nog steeds nieuwe varianten op openingen gevonden.
Mede doordat de grootmeesters zelf ook computers gebruiken om mogelijke varianten door te rekenen...
Dit ben ik toch echt niet wet je eens. Een groot deel van de voorbereiding van een grootmeester voor een voor bijvoorbeeld een tweekamp bestaat uit het bestuderen van het openingsrepertoire van de tegenstander en de openingstheorie die op een bepaald moment populair is. Elke keer weet men wel weer een "nieuwtje" te vinden om de tegenstander te verassen. Daarnaast is de keuze van variant ook heel persoonlijk. Ikzelf speel liever aanvallende open partijen en daar stem ik mijn openingsrepertoire op af. Dat betekend niet dat andere openingen beter of slechter zijn,.. gewoon een kwestie van smaak.
Dat betekend niet dat andere openingen beter of slechter zijn,.. gewoon een kwestie van smaak.
Dat er een kwestie van smaak is, is de reden waarom er een tiental openingen zijn die op een bepaalde moment populair zijn, ipv één of twee openingen.

Maar van 90% van de bekende openingen is gewoon vastgesteld dat ze wel degelijk slechter zijn. Daarom worden die niet meer gebruikt.
Zo gauw je met een bepaalde opening begint, volgen vrijwel alle zetten elkaar noodzakelijkerwijs op.
Hmm, daarom zijn goede openingsboeken vaak honderden pagina's dik.... Dat zou niet nodig zijn als alles noodzakelijkerwijs volgt!
Maar bij die openingsboeken staat dan ook alle varianten waarvan inmiddels vastgesteld is dat ze niet gunstig zijn.

"noodzakelijkerwijs" staat in deze dan volgens mij ook voor "vastgesteld dat het de beste volgende zet is".

Na een tiental zetten is de schaakwereld het er niet meer over eens dat er maar één beste volgende zet is, en dat is dan waar de nieuwtjes gevonden worden.
Anoniem: 174951 @MeMoRy7 december 2006 10:14
Voor goede schakers is het hele spel een algoritme... en wanneer je net verloren hebt van een computer, zou ik ook zoiets zeggen als Kasparov :+
Klopt. En zodra je zeker weet dat je verliest van de computer, is het niet leuk meer en ga je weer gewoon tegen mensen schaken :)
Anoniem: 93354 6 december 2006 21:13
Toch knap dat ie nog 4x gelijk kon spelen. In princiepe zal een computer altijd kunnen winnen zolang er maar genoeg rekenkracht aanwezig is. Maar ik vind het toch niet zo leuk dit. Die computer rekent gewoon maar een eind heen en besluit dan wat de meeste kans op winnen geeft terwijl de menselijke speler een hele tacktiek maakt en misschien ook nog probeert zijn tegenstander op het verkeerde been te zetten maargoed dat gaat niet tegen een computer want die rekent gewoon door wat dan het beste is. Mens tegen Mens vind ik toch meer hebben.
Toch knap dat ie nog 4x gelijk kon spelen. In princiepe zal een computer altijd kunnen winnen zolang er maar genoeg rekenkracht aanwezig is.
dat een computer alle mogenlijkheden kan berekenen wil nog niet zeggen dat hij kan winnen,
het is voor de computer namelijk nogsteeds onmogelijk om te berekenen welke zet zijn (onberekenbare) menselijke speler zal doen in reactie op zijn zetten.

de computer kan bijvoorbeeld wel de zet pakken waar volgens hem de minste kans is dat de menselijke speler wint maar als die net alle goed zetten zet (omdat die zetten voor een mens bijvoorbeeld overduidelijk zijn) dan kan het nogsteeds gelijk spel worden of kan de computer zelfs verliezen.

dat soort dingen valt (voorlopig) nog niet op de brute forcen.

er komt dus nog wel iets meer bij kijken als alleen "brute force" in dit geval.
een hele hoop slim programeerwerk is zeker ook een niet te onderschatten onderdeel van deze overwinning.
dat een computer alle mogenlijkheden kan berekenen wil nog niet zeggen dat hij kan winnen, het is voor de computer namelijk nogsteeds onmogelijk om te berekenen welke zet zijn (onberekenbare) menselijke speler zal doen in reactie op zijn zetten.
Juist wel. Als een computer zodanig veel rekenkracht bezit dat alle mogelijke zetten berekend kunnen worden vanuit elke willekeurige schaakstelling en je laat twee computers tegen elkaar spelen dan zal het enige verschil de eerste zet zijn; dan zal blijken of schaken bij optimaal spelen altijd in een gelijkspel eindigt (zoals boter-kaas-eieren) of dat de zwarte/witte speler immer wint (zoals bij het 2-4-6 lucifers spelletje).

Nog wat achtergrondinfo: schaakcomputers kunnen grofweg twee verschillende tactieken gebruiken (of beide); algoritmes en brute force. Het mooie aan het laten schaken van computers tegen mensen is het idee dat mensen beter zijn in algoritmisch denken en computers beter in brute force.

Brute force zal nooit voldoen voor wiskundige problemen, P-moeilijke problemen, die exponentieel in moeilijkheid stijgen (zoals het aantal mogelijke zetten in een schaakspel), vereisen namelijk een exponentiele groei van rekenkracht.

Een schaakpot tussen twee grootmeesters zal overigens ook meer uit rekenwerk en kansbrekening bestaan dan uit bluffen of 'je tegenstander op het verkeerde been zetten'. Dat is meer iets voor poker.

@bolluserectus; het kiezen om stukken te ruilen of te ontwikkelen is niet meer dan het kiezen voor 1 bepaalde zet omdat je je kans om te winnen hoger inschat als je het doet. Dit is gewoon een algoritme hoor. Ik ben het wel met je eens dat mensen beter zijn in algoritmes dan computers. De gevoelswaarde die wij hebben bij situaties en stukken geeft informatie die computers (nog) niet kunnen bevatten. De mens leert namelijk, en computers niet. Dit schat van partijen die Kramnik in zijn hoofd heeft zitten en gebruikt bij zijn beslissingen geeft hem veel meer informatie dan de PC haalt uit diezelfde partijen.
Een menselijke speler kan inschattingen maken waar geen brute force of algoritme tegen op kan.
Je kan in het begin keuzes maken, ruilingen of juist niet, ontwikkelen van stukken, of juist niet, en die keuzes maak je veelal op gevoel en instinct.
En een Kramnik heeft datt gevoel en instinct, samen met zijn secondanten.
Als hij er 100% voor zou gaan, heeft hij zeker met de afgelopen partijen in het boekje, een hele goeie kans.
Een menselijke speler kan inschattingen maken waar geen brute force of algoritme tegen op kan.
Onzin. Een mens is uiteindelijk niets meer dan een heel krachtige computer. Op het gebied van schaken is de mens blijkbaar voorbijgestreefd.

De "intuitie" van de mens (op schaakgebied) blijkt niets meer dan mogelijkheden afgaan. De irrationele gevoelens die de mensen laten meespelen kan zelfs juist nadelig zijn, als de computer tegen wie hij speelt maar krachtig genoeg is en de ECHTE beste beslissingen neemt, zonder gevoelsmatig te spelen.

Laten we wel wezen, dit is geen geheimzinnig spel waarvan we niet weten hoe het werkt, het is gewoon wiskunde met een eindig (maar belachelijk veel) mogelijkheden. Dus of de computer wint is afhankelijk van hoe krachtig de computer is, niet dat de computer menselijke intuitie moet ontwikkelen.
als de computer tegen wie hij speelt maar krachtig genoeg is en de ECHTE beste beslissingen neemt, zonder gevoelsmatig te spelen.
je gaat er vanuit dat er echt een "beste" beslissing is.
en dat trek ik in twijfel.

of je vorige beslissing de juiste was of niet hangt heel vaak af van wat je tegenstander reactie erop is.
het kan best zijn dat de computer iets berekend om te doen waar maar 1 juist antwoord op is ipv tich, en dat de computer daarom vind dat dat de juiste beslissing is.
maar als de mens dan voor dat antwoord gaat omdat het voor hem juist vreselijk doorzichtig is dan was het toch niet de juiste besligging gebleken.
de cijfers zeggen misschien van te voren wel dat dat het juiste was om te doen, maar dat wil niet zeggen dat dat achteraf ook het geval was.

de mens is dan misschien wel een heel ingewikkelde computer maar hij werkt toch fundamenteel anders als onze binaire computers en komt daarom geregeld met andere antwoorden en inzichten waar een binaire computer niet op kan komen.

en zeker als het gaat om het inschatten van de volgende zet van je tegenstander denk ik dat een computer nog veel van een mens kan leren, al helemaal als het om menselijke tegenspelers gaat.
Anoniem: 175233 @RealCato7 december 2006 12:18
Op dezelfde manier kan de menselijk computer iets leren van de manier waarop een computer schaakt.

Verscheidene malen bij Deep Blue gezien dat de topschakers geinsprireert werden door wat Deep Blue deed. Vaak dat de zetten zich beperken tot een bepaald gebied op het bord. Alles draait dan op dat stukje slagveld. Dat levert een tunnelvisie voor de schaker. Maar een computer blijft het totaal beeld zien, en zal daarom dan soms een zet doen aan de andere kant van het bord. Kasparov werd daar regelmatig door verrast, en vroeg zich af wat er plotseling gebeurde. Maar voor Deep Blue was het simpelweg de kwestie dat die zet, die buiten de partij leek te staan, nuttiger was, dan iets te doen op het slagveld zelf.
Het schaakspel is een mogelijkheidsboom die een 'practisch' einde kent. Op een gegeven moment kan een mens daar niet meer tegenop.
Een schaakpot tussen twee grootmeesters zal overigens ook meer uit rekenwerk en kansbrekening bestaan dan uit bluffen of 'je tegenstander op het verkeerde been zetten'. Dat is meer iets voor poker.
Ik ken iemand die competitie schaakt (ELO rond de 2000) en aan zijn verhalen te horen is psychologie echt ook wel een belangrijk aspect.
Ik herinner me trouwens eens gelezen te hebben over een partij op topniveau waarbij een van de schakers voor zijn eerste 10 zetten er al meer dan een uur over deed, louter om zijn tegenstander te enerveren.
dat mensen beter zijn in algoritmes dan computers.
ROTFL
Anoniem: 199187 @RealCato7 december 2006 12:47
Volgens mij zijn bij schaken het aantal mogelijkheden oneindig. Het is dus onmogelijk om alles te berekenen, ook voor een computer.
Nee hoor, bewijsbaar onjuist.

Elke partij eindigt of in een beperkt aantal zetten in mat, of eindigt door de zogenaamde 50-zetten regel.

(Als er 50 zetten lang niets is geslagen, of geen pion meer gezet heeft, dan is de partij per definitie remise, en dus beeindigd).

Je kunt dus geen "oneindig lange" partij spelen. En omdat ook het aantal mogelijke zetten eindig is (max een stuk of 20 per keer), heb je een eindig aantal keer een eindig aantal mogelijke zetten. Dan is ook het totale aantal verschillende partijen dat je kunt spelen, eindig :Y)

Een hele ruwe schatting van een bovengrens: de maximale lengte van een partij (als je ook debiele zetten -herhalingen- meetelt!) kan rustig 2500 * 2 (wit+zwart) zetten zijn. Neem een normale partij van ~50 zetten, en voeg tussen elke zet 49 'onzin zetten' toe.

Als er per zet dan elke keer 20 mogelijkheden zijn (opnieuw erg ruwe benadering), dan kom je tot een slordige 20^5000 mogelijke partijen. Oftewel ongeveer 10^6500.

Da's een leuke database....
Anoniem: 199187 @RealCato7 december 2006 16:25
(Als er 50 zetten lang niets is geslagen, of geen pion meer gezet heeft, dan is de partij per definitie remise, en dus beeindigd).

oke, die 50 zetten regel kende ik niet, anders was het in princiepe natuurlijk wel oneindig geweest
Precies!
En daarom geloof ik Kramnik dan ook dat hij hem kan verslaan.
dat een computer alle mogenlijkheden kan berekenen wil nog niet zeggen dat hij kan winnen,
het is voor de computer namelijk nogsteeds onmogelijk om te berekenen welke zet zijn (onberekenbare) menselijke speler zal doen in reactie op zijn zetten.
Je spreekt jezelf tegen. Dat een computer alle mogelijkheden kan berekenen betekent juist net wél dat hij met alle mogelijke tegenzetten rekening houdt, hoe idioot die ook mogen zijn. Trouwens bij idiote tegenzetten zal hij gewoon sneller de partij winnen ;).

Dat het in de praktijk nog steeds (en nog lang) onmogelijk is om alle zetten te berekenen is natuurlijk een ander verhaal.
Ik vind het toch interessant om te bekijken dat al die toffe menselijke onvoorspelbare aspecten in het spel (zoals je aanhaalt deceptie) allemaal nutteloos zijn tegen een droge, recht door zee speler (de computer).

Het spel is gewoon kennis en voorspellingsmogelijkheid. Dit wordt enkel maar bevestigd door deze computer volgens mij.
Kun jij die 64.000.000 mogelijkheden even allemaal evalueren dan?

nee, je gaat op je gevoel af (als je een goede speler bent dan)


** Menselijk gevoel valt niet te vangen in een wiskundige formule, algoritme, in anderen woorden: een programma.
Onzin. Het is veel moeilijker dan dingen die we nu doen, maar waarschijnlijk niet onmogelijk.

Ik neem overigens aan dat jouw stelling dat menselijk gevoel niet te vangen valt in een wiskundige formule of algoritme een gevoelsmatige is?
Een goede speler heeft vooral ervaring en wat blijkt: ook voor een computer is ervaring onmisbaar. Schaken heeft geen drol met gevoel te maken, op zijn best met overzicht en dat is inderdaad iets dat een computer mist of op zijn minst moeite mee heeft.
dat moet je net tegen techneuten zeggen :+
emotie heeft chemische aspecten en daarbij worden chemische processen gestimuleerd. Dat is iets heel anders dan de stelling dat emotie chemisch is.
Het is net wat BeF-Bacchus ook al zegt het heeft heel weinig met gevoel te maken. Het is naast ervaring natuurlijk ook een sterke capaciteit van door denken te maken. Je moet gewoon vooruit denken.
Waarom denk je anders dat alle partijen zo lang duren dat is niet op gevoel spelen dat kan namelijk veel sneller.
Ze proberen zo veel mogelijk zetten door te denken en in het hoofd het spel te voorspellen.
De beter schakers kunnen dus ook hoofdschaken.
Die roepen gewoon wat zetten tegen elkaar en kunnen het bord gewoon in het hoofd volgen en door rekenen.
Gevoel is voor de menselijke schaker wel degenlijk een zeer belangrijk aspect. Een blind partij is niet zo bijzonder een beetje sterke clubspeler (vanaf zo'n 1900 / 2000 elo) kan dat en staat los van deze discussie.

Het probleem is dat een menselijke speler een aantal zetten vooruit kan kijken. Een sterke speler zal dat verder kunnen maar vooral ook veel beter zien welke varianten belangrijk zijn. Op een gegeven moment moet de speler beslissen of de variant die hij uitgerekend heeft voor hem gunstig is cq gunstiger / minder ongunstig dan een andere variant. Natuurlijk is dit simpel als die variant eindigt met duidelijk materieel gewin. Lastiger word het al voor de minder sterke schaker als het gaat om duidelijk positioneel voordeel want dat betekend dat de kennis er moet zijn om dit voordeel te herkennen en de kennis moet er zijn hoe daar gebruik van te maken. Voor iemand die die kennis niet heeft speelt "het gevoel" nu al een rol. Nog lastiger word het als het voordeel niet duidelijk is of als tegenover het voordeel een nadeel staat. Wat weegt zwaarder. Op zo'n moment kan je niet meer verder rekenen maar moet je vertrouwen op je "gevoel". Dat gevoel heeft te maken met je ervaring in vergelijkbare stellingen maar ook met persoonlijke smaak (ik speel graag gesloten posities) of met het beeld dat je hebt van je tegenstander (hij is niet zo sterk in dit soort eindspelen) en die afwegingen kunnen elkaar weer tegenspreken. Het gevoel bepaald dan wat belangrijker is.

Samengevat: Er komt een moment waarop je niet verder kunt rekenen en de positie die je hebt uitgerekend moet beoordelen. Dit kan bij gelijkwaardige posities alleen op basis van je "gevoel".
Emotie is een chemische reactie. Ergo, uiteindelijk na te maken, aldanniet in de verre toekomst.
Gewoon af en toe een op het oog onlogische zet doen en Fritz zit in de SH*T ;-)
Nee hoor, daar is Fritz echt wel "slim" genoeg voor ;)

Enne, believe me, als je echt op hoog niveau schaakt zijn er maar weinig onlogische zetten die je kan doen waar mee je geen stukken kwijtraakt...
De enige onlogische zetten die je kan doen is bij de opening. Elk schaakprogramma gebruikt voor de opening een bibliotheek omdat een computer juist bij de opening het meeste last heeft om posities te evalueren.
Door dus in de opening heel bizarre zetten te doen, kan je een schaakprogramma uit zijn bibliotheek kicken waardoor hij dan wel moét beginnen evalueren.
Bij de meeste schaakprogramma's kun je de openingsbibliotheek disablen, en het is dan soms verbazend wat voor een openingen 'hij' begint te spelen.
In princiepe zal een computer altijd kunnen winnen zolang er maar genoeg rekenkracht aanwezig is.

Dat is een gewaagde uitspraak. Zet 2 computers tegen elkaar. Wedden dat minimaal er 1 is die niet zal winnen? :+
Het punt is net dat hier beweerd wordt dat Schaak een spel is met een optimale oplossing, dus dat bij twee "perfecte" computers tegen elkaar ofwél altijd remise zal voorkomen, ofwel wit altijd zal winnen (omdat dat het enige verschil tussen de twee zal zijn)
Wedden dat minimaal er 1 is die niet zal winnen?
Dat is een gewaagde uitspraak.
Heeft er iemand een Remise voor twee computers besteld ?
Anoniem: 146487 @Onbekend8 december 2006 08:56
En komt dat doordat 1 van de 2 computers een verkeerde keuze heeft gemaakt of omdat de openingszet blijkbaar bepalend is voor de winst?

Stel ze maken precies dezelfde berekeningen en reageren hetzelfde op de zetten van de tegenstander. Dan is de uitkomst steeds hetzelfde.

Als de computer de grootmeester weet te verslaan met normale processors waar een paar jaar terug nog een super computer nodig was dan is de computer de mens op schaakgebied gewoon gepasseerd, er zijn grenzen aan wat een mens kan doorrekenen aan zetten, die grenzen zijn bij de computer nog lang niet bereikt.
Anoniem: 58485 6 december 2006 21:10
Deep Fritz was in de tijd van Windows 3.11 al ontzettend populair, en wou je een beetje krachtige tegenstander hebben was je ook vaak gewezen op een vrij snelle CPU :)
Kleine nuancering:

Fritz bestaat al een tijdje, en was populair ten tijde van Windows 3.11, maar Deep Fritz is de multi-processor versie, en bestaat pas sinds 2002
Voor al wie zich afvraagt hoe het met de specs zit:
On a standard 2 GHz notebook, Fritz calculates around 1.5 million positions a second, identifies the most complicated maneuvers and structures in blinding speed, and can draw on a treasure trove of some 3.2 million stored matches. The new version of Deep Fritz was developed specifically for this duel. Not only is it far more powerful than all its predecessors, it contains even more new chess knowledge to counter Kramnik's strategic skills. Deep Fritz will be running on a computer with four processors at WCC 2006. Since the program has been optimized for parallel processing, it will be able to respond quickly and strike hard at a tactical level. On this machine, Deep Fritz can compute around eight to ten million positions a second. That is three times faster than in Bahrain in 2002, the last time it faced off against Kramnik.
Dit vond ik op de site van de organisatie

"Powered by the Intel Core Duo 5160 system, Deep Fritz scours the chess board at a speed of 8 million positions per second. Unfortunately for its German programmers, this barely begins to scratch the surface of a solution to the problem known as chess... The number of potential positions that could occur once a game has started is in the order of 10 to the power of 128, overwhelmingly larger than the number of atoms thought to be contained in the universe.With the help of algorithms, the latest generation of programs avoids a vast number of pointless calculations. As a result, Deep Fritz is now about the same playing strength as Kramnik and possibly stronger; but the most interesting question remaining is simply this: is the machine really playing chess?"
is the machine really playing chess?
Of is het de programmeur met een onzichtbare verbinding.
Nog een grappige aanvulling op mijn eerdere post.
Met ~10 miljoen posities per seconde, duurt het uitrekenen van alle mogelijke schaakpartijen (om het spelletje dus 'dood te slaan') dus nog ongeveer 10^6493 seconden.... Oftewel zo'n 10^6486 jaar. Da's best veel....
Ik ben erg benieuwd of er ooit een damcomputer komt die zo sterk wordt..

Iemand enig idee hoe veel meer of minder complex het damspel is t.o. het schaakspel, zowel menselijk als computer-gestuurd gezien?

(voor zover ik weet, was de moeilijkheid van het dammen voor een mens hoger...)
minder complex voor de computer: minder variaties omdat je maar 2 types stenen hebt.
Het zou me trouwens niet verbazen als dammen al 'opgelost' is, oftewel, er is een 100% methode om te winnen als je begint (is het niet nu, dan komt dat wel)
Ik vraag me trouwens wel af of dit ooit met schaken gebeurt, en wat men dan moet verzinnen.
Go ?
Dammen is nog niet voor 100% doorgerekend. Er is wel een computer programma dat altijd beter speelt dan de mens.

http://en.wikipedia.org/wiki/English_draughts
Ja maar dat is English Draughts oftewel checkers op een bord van 8x8.Dammen is op een bord van 10x10 :)
klopt, maar dat niet alleen. Ook mag je met checkers niet achteruitslaan, een dam mag maar één stapje zetten en zo zijn er nog een paar andere regels.
Daardoor denk ik (plus het feit dat er dus een stuk meer vakjes zijn..) dat dammen een stuk moeilijker te berekenen zal zijn. Maar goed, ik hoop hier ooit meer over te lezen.

Jammer dat Dammen alleen écht gespeeld wordt in Nederland, Rusland, Belgie en nog een handjevol landen
dat vraag ik me dus af. Ik heb een tijdje gedamt en ken ook wel mensen die redelijk proffesioneel speelden. De beste damcomputer toen, was Truus (tsja, zo heette hij eenmaal..). Deze was echter lang na niet goed genoeg om een mens te verslaan, met een partij binnen normale tijd.

Het zou best kunnen dat dammen eenvoudiger is, en dat het al opgelost is, ik heb er alleen nog nooit wat over gehoord. Ook bij sites die het over complexiteit van bordspellen hebben, kom ik vrij weinig Dammen tegen, hooguit Checkers , wat wel jammer is...
...als dammen al 'opgelost' is, oftewel, er is een 100% methode om te winnen als je begint (is het niet nu, dan komt dat wel). Ik vraag me trouwens wel af of dit ooit met schaken gebeurt, en wat men dan moet verzinnen.
Ach, tegen de tijd dat dit gebeurt, is er nog geen man overboord. Recent ergens gelezen dat er een online databse is die alle eindspelen van maximaal 6 stukken bevat. NB: Dan ben je dus echt al dicht tegen het einde van een partij. Deze database was 1200 GB groot!

Die 100% methode om te winnen is er dus in die situatie al wel. Echter, het is alleen van belang als je als mens die 1200 GB van buiten kent, en op elke zet exact weet toe te passen. Kleine kans, lijkt mij....

Voor een volledige partij zal die database -als er ie er al ooit komt - dus nog flink wat maatjes groter zijn.
Ik geloof Kramnik wel als hij zegt dat hij meer voorbereidingstijd nodig heeft. Vaak is het zo dat de uitdagende partij (Chessbase in dit geval, waarschijnlijk) niet de partijen vrijgeeft die Deep Fritz gespeeld heeft, terwijl de partijen van Kramnik wél zo goed als openbaar zijn. Zo begint Deep Fritz aan een voorsprong, die voor Kramnik lastig weg te werken is.
Desondanks zal het wel steeds lastiger worden voor de mens om van een computer te winnen. Toch zal deze toetsing nodig blijven omdat ook in een algoritme, die uiteindelijk door een mens gefabriceerd is, fouten kunnen zitten die niet duidelijk zouden worden als het computer vs computer was.
Het bijzondere van dit bericht is dat Deep Fritz geen Blue/Gene megamulti-core supercomputer is, maar volgens mij een dualproc, dualcore Intel Xeon.
Anoniem: 178310 @JvS6 december 2006 22:29
Deep fritz is gewoon software dat met multiprocessor kan werken :)
Deep Blue had 480 special purpose processoren (http://en.wikipedia.org/wiki/Deep_Blue). Dat Fritz slechts 2 generieke processoren (Xeons) nodig heeft, is dus wel degelijk bijzonder.

Binnenkort kan ook je desktopcomputer de wereldkampioen verslaan, en over een paar jaar maakt hij wellicht geen schijn van kans meer.
Laat ze maar eens een nuttige computertegenstander maken voor het moeilijkste serieuze bordspel ter wereld: Go.
Vergeleken met Go is schaken kinderspel.

Zie ook deze topic op het W&L forum.
Vergeleken met Go is schaken kinderspel.
Nou ja, je kunt de spellen niet echt vergelijken. Schaken is een 8x8 spel. Go 19x19. Als je schaken 19x19 zou maken, dan zou Go weer een kinder spel zijn. Ik geloof dat bij schaken je 10^120 en bij Go 10^180 gemiddelde combinaties hebt. In beide gevallen orde 80-100 meer het aantal deeltjes in ons universum.

Het probleem bij Go is op dit moment dat er te veel mogelijkheden zijn voor de computer om alles door te rekenen. En om goede algoritmes te schrijven om met Go patronen om te gaan is nog steeds lastig. Verder zijn computerprogramma's als Deep Fritz ZEER ingewikkeld.

Nog een ding, als ze een programma kunnen maken die in willekeurige foto mensen (niet alleen gezichten) kan herkennen, wat veel mensen makkelijker vinden dan schaken, zijn ze ook een stuk verder met algoritmes, want met alleen rekenkracht kom je er niet.
Anoniem: 110237 @edie6 december 2006 21:33
Toch jammer dat de specs van de machine er niet bij staan.

Jaren geleden hadden ze er nog flinke racks voor nodig. Denk dat dat tegenwoordig wel wat minder zal zijn ;)

Zou toch triest zijn als ie van een simpel Core 2 Duo laptopje zou verliezen ;)
Hoezo triest?
Iedereen verliest toch al jaren met rekenen van de meest simpele pocket-calculators? En daar maakt (terecht) niemand zich druk over.
Toch kan een schaker die bekend is met de rekenmethode van de schaakcomputer deze in zijn voordeel gebruiken. Een voor mensen simpele zet kan voor een computer een enorme rekenopgaaf zijn als er maar genoeg vervolgzetten mogelijk zijn. De computer krijgt net zo min als de schaker oneindige rekentijd, het moet zich aan de klok houden. Dus door juist dié zetten te kiezen die de computer niet op tijd doorgerekend krijgt kan een mens winnen.
Anoniem: 184320 @Kalief6 december 2006 21:50
Hehe jij wil de computer verslaan op het enige gebied waarin de Computer nu eenmaal koning in is :) ?

Je verslaat een computer niet op rekenen of op situatie's voorruit te denken. Dat kan de processor nu eenmaal veel sneller.

Nee je verslaat een computer door verbanden te leggen. Dat is het enige wat een computer niet kan.

Ik ben geen meesterschaker maar ik denk dat hij kan winnen als hij zich gaat bedenken hoe de computer werkt. Als hij dat doorheeft weet hij precies welke zet de computer gaat zetten.
natuurlijk niet want een computer pakt elke keer de meest logische zet. hij zou dus niet alleen moeten kunnen voorspellen wat de cpmuter gaat doen. hij moet ook een val zetten waar de computer in trapt.

geloof niet dat hem dat gaat lukken daar heeft hij de tijd niet voor TEVEEL mogelijke zetten.

ik denk dat een computer en mens zoveel verschillen maar de computer een heel groot voordeel heeft dat zie je eigenlijk in alle games terug computer wint het meeste zo niet dan gelijkspel
Door zetten te kiezen die de computer niet op tijd doorgerekend krijgt ben je niet zelf aan het meerekenen. Van belang is namelijk het aantal mogelijkheden in te schatten ipv al die mogelijkheden door te rekenen om de waarde ervan te bepalen.

Op dit item kan niet meer gereageerd worden.