Jag är ett stort fan av tv -programmet "Jeopardy!", så jag ställde ivrigt in när IBMs dator, Watson, gick upp mot mångåriga mästare Ken Jennings och Brad Rutter i februari 2011. Resultatet-Watson som den bortflyttade mästaren-var inte förvånande, men det var kul att se. IBM måste visa hur långt artificiell intelligens har kommit, men det tog mer än några decennier att komma dit. Rötterna till Watsons triumf ligger i en mycket ödmjukare maskin som spelar ett gammalt spel:schack.
De första referenserna till schack går tillbaka till cirka 600 e.Kr. i det som nu är norra Indien, och handelsvägar sprider spelet över hela världen. Vid 1800 -talet, det fanns officiella schackorganisationer och mästerskap. Men innan dess, det var den allra första schackmaskinen-typ. En uppfinnare vid namn Wolfgang von Kempelen skapade The Turk för kejsarinnan av Österrike-Ungern, och maskinen turnerade runt i Europa i flera år. Men Turken var en falsk; det fanns en person gömd inuti.
Fortfarande, den visade att vi var intresserade av tanken på att bli slagna i vårt eget spel av en maskin. Det kan verka dumt i början att lägga tid och energi på att ha en dator att spela schack. Men tanken var att om en dator kunde "tänka" tillräckligt bra för att spela schack, kanske kan det hjälpa till att lösa ännu mer komplexa problem. Innan vi ens byggde datorer för att ta oss an uppgiften, det fanns ett datorprogram för att spela spelet. Alan Turing, betraktas som fadern till artificiell intelligens och datavetenskap, skrev ett program och spelade schack med sig själv på papper 1947. I slutet av 1950 -talet en IBM -programmerare som just råkade vara en schackspelare hade skapat ett datorprogram som kunde spela ett helt schackspel.
Att kunna spela schack är en sak. Att faktiskt kunna vinna - och slå schackspelare - är en helt annan sak. Läs vidare för att ta reda på hur en dator äntligen blev en schackmästare.
För att programmera en dator för att spela schack, du behöver kunskap om schacktekniker och strategier - bara att veta hur bitarna rör sig är inte tillräckligt. Människor spelar schack genom att strategisera och känna igen spelmönster. Datorer använder båda algoritmer (steg-för-steg-instruktioner) och heuristik (problemlösning med test-och-fel). Specifikt, ett system som innehåller minimax-algoritmen och alfa-beta-beskärningstekniken.
De minimax algoritm gör att datorn kan söka igenom alla möjliga drag samt motståndarens möjliga svar. "Minimax" -delen kommer från datorns behov av att räkna ut de bästa och sämsta rörelserna (både sina egna och motståndarens) efter varje sväng. Beskärning av alfa-beta betyder att datorn skapar två "träd". Träd A betraktar alla möjliga schackrörelser till en viss grad. Sedan "beskär" det träd A för att skapa träd B, som vidare utforskar de drag som ser bäst ut. Som du kan tänka dig, dagens datorer kan göra detta med fantastisk hastighet - mycket snabbare än någon människa någonsin kunde.
Vid 1960 -talet, datorschackprogram var tillräckligt bra för att slå amatörer. 1967, MIT -professor och schackspelare Richard Greenblatt skapade schackprogrammet Mac Hack IV, och datorn som använde den blev den första som slog en person i en schakturnering. Det var inte en schackmästare, fastän. År 1968, Internationella schackmästaren David Levy satsade på att ingen dator kunde slå honom i schack på tio år, och att om han vann, det skulle vara ytterligare tio efter det innan en dator slog honom.
Levy vann vadet, men 1989, det hände äntligen. Djupa tankar, ursprungligen skapad av programmerare vid Carnegie Mellon University, slå Levy. 1997, Deep Blue - föregångare till Deep Thought - slå Gary Kasparov, en schackmästare (den högsta nivån du kan uppnå i FIDE, världsschackorganisationen) och regerande världsmästare. Sedan dess, det har blivit fler datorsegrar, men som en datavetenskapsprofessor uttryckte det, "vetenskapen är klar" [källa:New York Times]. Vi har tagit dator-mot-mänskligt schack så långt det går-men det finns många andra spel att dominera.
Jag måste erkänna, Jag är ingen schackspelare. Jag har inte spelat på länge faktiskt, att jag inte vet om jag ens kan berätta hur varje bit ska röra sig. Men jag beundrar den skicklighet som krävs, och jag är förvånad över förmågan att förutse vad en motståndare kommer att göra. Vissa människor kan ha ogillat det när datorer slår schackmästare, eller när Watson vann "Jeopardy!", men jag tror att de glömmer vem som skapade datorerna. Det faktum att en dator kan "tänka" och fatta beslut som en person är ett bevis på mänskliga förmågor, för.