Computer Go är en gren av artificiell intelligens för att skapa datorprogram som spelar Go .
Människor känner att de är bättre på Go än datorer eftersom de jämför dem med människor. "Kanske är det inte så att datorspel går dåligt, men folk spelar det för bra." Go, jämfört med andra spel med full information, har funktioner som gör det särskilt enkelt för människor att spela. Stenarna rör sig inte som schackpjäser, de ändrar inte färg som i reversi. Dessa funktioner tillåter människor att beräkna långa kedjor av rörelser, vilket är mycket svårt för en maskin.
Men vid de sällsynta tillfällen när stenar upprepade gånger fångas och spelas upp på samma punkter, har människor problem medan de är lätta för datorer.
Länge ansågs dator Go vara väsentligt annorlunda än datorschack , eftersom metoder baserade på snabb sökning jämfört med mänsklig erfarenhet, kombinerat med relativt låg domänkunskap, inte skulle vara effektiva för Go. Därför har mycket ansträngning inom dator Go lagts ner på att kombinera expertkunskap med lokal sökning för att svara på frågor om spelets taktiska karaktär. Resultatet av dessa ansträngningar var program som kunde hitta bra lösningar i vissa lokala situationer, men som hade uppenbara svagheter i den övergripande bearbetningen av spelet. Dessutom fick dessa klassiska program lite när det gäller spelkraft då hårdvaran blev kraftfullare, och därför gick utvecklingen inom detta område generellt långsamt. Därför trodde man att ett program som spelar bra i Go bara kan skapas i en avlägsen framtid och endast med hjälp av allmän kunskap inom området artificiell intelligens som ackumulerats vid den tiden. Även att skriva ett program som kunde avgöra vinnaren av ett avslutat spel uppfattades som en icke-trivial uppgift.
2006 dök program baserade på Monte Carlo-sökningen upp . Styrkan i spelet med artificiell intelligens har förbättrats. Men gapet med spelnivån för professionella Go-spelare kvarstod, och en betydande sådan.
Men 2015 vann ett datorprogram ( AlphaGo , av DeepMind ) för första gången en jämn match mot ett proffs ( Fan Hui , 2:a professionella dan) (med poängen 5-0) [1] .
I mars 2016 besegrade AlphaGo proffset Lee Sedol i de tre första seten av fem matcher. [2] Detta var första gången som ett 9 dan-proffs, en av de starkaste spelarna i världen, spelade en dator utan handikapp. [3] I det fjärde spelet kunde Li vinna, men datorn vann det femte spelet, så matchen slutade med en poäng på 4:1. [4] [5] (se detaljer: AlphaGo mot Lee Sedol match )
I maj 2017, på Future of Go Summit , spelades en minimatch med 3 matcher mellan AlphaGo och en av de starkaste spelarna i världen, ledaren för världsrankingen Elo Ke Jie , där alla matcher vanns av program [6] [7] [8 ] . På samma forum besegrade AlphaGo ett lag med 5 9:e dan-proffs ( Mi Yuting (nr 3 i rankningen av de starkaste spelarna, betyg före matchen 3571 poäng), Chen Yaoye (nr 8, 3513)) , Zhou Ruiyang (nr 10, 3509), Xi Yue (nr 11, 3508), Tang Weixing (nr 18, 3474)) [9] .
Den stora brädan (19x19, 361 korsningar) nämns ofta som ett stort hinder för att bygga starka Go-program. Problemet med den stora brädan är att den förhindrar djupa alfa-beta-beskärningssökningar .
Hittills är den största tavlan på vilken en fullständig uppräkning av positioner hittills har genomförts en 6x7-bräda [10] .
För att fortsätta jämförelsen med schack, bör det noteras att dragen i go nästan inte begränsas av reglerna. Medan det första draget i schack kan göras på tjugo sätt, har det första draget i Go 55 alternativ, givet brädets symmetri. Efter de första dragen i olika hörn av brädet försvinner spelsituationens symmetri och antalet möjliga drag ökar och når antalet lediga poäng på brädet.
Det inledande skedet av spelet i go - fuseki - följer vissa allmänna principer för utveckling av stenkonfigurationer, men det kännetecknas av en mycket större variation av drag än i schack. Nyheter kan inträffa inte på det 20:e draget, utan redan på det tredje eller fjärde, och kompetent öppningsspel är omöjligt utan att förstå de strategiska perspektiven för konstruktionerna som dyker upp på tavlan. Joseki (typiska scheman för att spela en position på en begränsad del av brädet, särskilt i hörnen), som i viss mening kan betraktas som en analog till de utvecklade schacköppningarna, tillåter inte mekanisk användning och ger inte en garanterat resultat, eftersom effekten av deras användning beror på den övergripande positionen på hela brädet, så även att välja rätt joseki för en given position i ett visst hörn är en svår intellektuell uppgift.
Ko-regeln leder ofta till en dramatisk förändring av kampens karaktär, vars konsekvenser är svåra att bedöma även för en erfaren spelare. Faktum är att det varje gång är nödvändigt att mäta konsekvenserna av "bortfall" på ett ko-hot (både ens eget och motståndarens) med kostnaden för att förlora ko-kampen. En person måste lita på sin erfarenhet och intuition, medan dessa begrepp är svåra att formalisera för en dator.
I schack, som i många andra spel, finns det färre pjäser på brädet under spelets gång, vilket förenklar uppräkningen av drag. I farten, tvärtom, lägger varje nästa drag en sten till brädet (även om uttag är möjliga), vilket skapar ytterligare spelögonblick.
Computer Go-program har länge varit mycket svagare än schackprogram. Tillvägagångssätten som tillämpades i schackprogram visade sig vara mediokra i dator Go.
Schackregler är lätta att formalisera och kan presenteras för en maskin i en bekväm form som gör att den kan spela på en hög nivå.
Men de enkla positionsreglerna som används i schack kommer inte att vara effektiva i Go. Att fastställa värdet på en sten kräver komplex analys, om så bara för att avgöra om gruppen som den tillhör är vid liv, hur stort inflytande gruppen har och vilka faror som hotar den.
En annan utmaning är att skapa en bra utvärderingsfunktion för Go. Det kan finnas flera bra drag på varje drag, och för att välja det bästa draget måste datorn utvärdera de olika möjliga utfallen. Detta blir en svår uppgift i Go. Det kan till exempel vara möjligt att fånga motståndarens stenar genom att befästa sin grupp någon annanstans. Att avgöra om ett sådant utbyte är fördelaktigt kan verka överväldigande även för en mänsklig spelare. Det kan också visa sig att flyttning till en annan del av tavlan och byggnadsform där kan vara viktigare.
Det nämns ibland att vissa svåra kombinatoriska problem (faktiskt vilket NP-komplett problem som helst ) kan omvandlas till Go; Detsamma gäller dock för andra brädspel, som schack, generaliserade till ett bräde av godtycklig storlek. NP-kompletta problem kan inte lösas av människor snabbare än av datorer: det är tveksamt om en person till exempel kan lösa resande säljarproblem på en tid som är jämförbar med den som en dator löser det för. Därför förklarar inte förmågan att tillämpa NP-kompletta problemlösningsmetoder på dator Go inte människans överlägsenhet över datorer i detta spel.
Med tanke på att slutspelet go (yose) innehåller färre möjliga drag än början eller mitten, skulle man kunna tro att det skulle vara mycket lättare för en dator att spela den här delen av spelet. Men även här var det problem:
Således är det mycket svårt att programmera en effektiv algoritm även för att spela slutskedet av Go, än mindre hela spelet [11] .
Människor känner att de är bättre på Go än datorer eftersom de jämför dem med människor. "Kanske är det inte så att datorspel går dåligt, men folk spelar det för bra" [12] . Go, jämfört med andra spel med full information, har funktioner som gör det särskilt enkelt för människor att spela. Stenar rör sig inte som pjäser i schack, ändrar inte färg som i reversi . Dessa funktioner tillåter människor att beräkna långa kedjor av rörelser, vilket är mycket svårt för en maskin.
Men vid de sällsynta tillfällen när stenar upprepade gånger fångas och spelas upp på samma punkter, har människor problem medan de är lätta för datorer.
En mycket viktig del av spelet Go, som handlar om att avgöra vilka grupper av stenar som kan överleva och vilka som kan fångas, är känd som "liv och död". Den mest direkta strategin för att bestämma liv och död är att bygga ett sökträd för rörelser som påverkar gruppen i fråga och bestämma gruppens status i trädets slutnod.
Men inom gränserna för tid och tillgängligt RAM är det omöjligt att med full noggrannhet avgöra vilka rörelser som påverkar den valda gruppen. Det är inte ovanligt att till exempel situationer där livet för en grupp bara kan säkerställas genom att fånga en annan. Detta innebär att för att lösa det aktuella problemet måste vissa heuristiker tillämpas för att bestämma de drag som måste övervägas. Som ett resultat visar program som spelar Go en korrelation mellan den tid som ägnas åt att tänka och kvaliteten på att bestämma gruppens livsduglighet.
Det finns ett problem med positionsrepresentation i Go for-program. Om det finns ett intensivt sökande efter en flytt i färd med att tänka på en flytt, behöver vyn en liten mängd data som enkelt kan kopieras och förstöras. Om positionsinformationen innehåller mycket strukturerad data blir det svårt att kopiera och sakta ner sökprocessen.
Det enklaste sättet att representera det är att skapa en en- eller tvådimensionell array, som kommer att innehålla information om vilken färg stenar är i varje position i fältet och möjligheten att flytta till tomma positioner.
De flesta program använder dock mer rå tavlainformation för att representera en position. Det kan vara information om hur stenarna hänger ihop i varje linje och hur linjerna är förknippade med varandra, information om grupper av stenar som riskerar att fångas och som är vid liv. Och även om denna information kan extraheras från en direkt representation, kommer det att gå mycket snabbare att ändra den på varje tur och överföra den i färdig form. Sådana ytterligare ändringar kräver att mer information memoreras och kan minska kopieringshastigheten, så problemet med att representera spelsituationen är också akut för skaparna av Go-program.
Alternativt kan du bara behålla en kopia av brädet och, när du gör ett drag, komma ihåg de ändringar som gjorts. Detta minskar minneskostnaderna och kopieringshastigheten och du slipper kopiera redundant information om och om igen. Men det bör noteras att denna presentationsform kan kräva andra synsätt på sin tolkning än att lagra fullständig information om tavlan.
Användningen av icke-direkta representationer i Go hamnar i en annan fallgrop relaterad till själva strukturen i spelet. En position i Go består av enstaka stenar som bildar olika strukturer (grupper och uppsättningar av grupper). Ur spelets strategi och taktik är representationsalternativ som uttryckligen innehåller information om strukturer och tillstånd mer användbara. Men sådan information kan ändras avsevärt bokstavligen vid varje drag (till exempel, ett enstaka drag som skapar en koppling mellan två grupper som har ett öga vardera förvandlar faktiskt dessa två grupper, som är hotade, till en, garanterat att vara vid liv, vilket borde återspeglas i representationen som fackförening dessa grupper). Uppgiften att på ett adekvat sätt förändra en komplex representation i sådana fall är i sig mycket icke-trivial.
Historiskt sett har det huvudsakliga förhållningssättet till problemet med dator Go varit "gamla goda AI". Senare började neurala nätverk betraktas som ett alternativ till detta tillvägagångssätt . Ett av programmen som använder den neurala nätverksalgoritmen för att spela Go är WinHonte [13] .
Resultaten av dessa utvecklingar inom området dator Go används inom andra områden: kognitiv vetenskap , mönsterigenkänning och maskininlärning [14] . Spelteori , en gren av tillämpad matematik , gäller också för dator Go [14] .
Det enda som programmet måste göra som ett resultat av att tänka på flytten är att ange platsen där nästa sten ska placeras. Men även ett så enkelt beslut är svårt att acceptera på grund av den oklarhet i ståndpunkter som denna formulering kan leda till. Olika arkitekturer har anpassats för att lösa detta problem. De mest populära är baserade på användningen av ett sökträd , tillämpningen av Monte Carlo-metoder , skapandet av expertsystem och användningen av maskininlärning . Få program använder bara ett av dessa; de flesta kombinerar flera tillvägagångssätt.
Minimax sökträdEn av de traditionella AI- teknikerna för att skapa program som spelar spel är att använda ett minimax-sökträd . För att göra detta, överväg alla hypotetiskt möjliga sekvenser av rörelser upp till ett visst djup och använd sedan utvärderingsfunktionen för att uppskatta värdet av draget från vilket varje sekvens började. Det drag som leder till det bästa resultatet upprepas på brädan och sedan utförs samma procedur för varje drag av datorspelaren. Medan sökträdsmetoderna har varit framgångsrika i schack , har de varit mindre framgångsrika i Go.
Det beror dels på att det är svårt att skapa en effektiv utvärderingsfunktion och dels på det stora antalet möjliga drag, vilket ger en stor förgreningsfaktor. Detta gör sökträdstekniken för resurskrävande. Därför kan program som använder sökträd i stor utsträckning bara spela bra på en liten 9x9-bräda, men inte på en stor 19x19-bräda.
Det finns tekniker som kan förbättra prestandan hos sökträd, både vad gäller hastighet och minne. Metoderna alfa-beta beskärning , Hitta fundamentala avvikelser , MDT-f kan minska förgreningsfaktorn med nästan ingen förlust av spelkraft. På samma sätt tillåter permutationstabellen en minskning av omräkningarna, särskilt när den används i kombination med den iterativa fördjupningsmetoden . För snabb åtkomst till data som finns i permutationstabellen är det nödvändigt att använda hash . Zobrist-hashning är vanligt i Go-program eftersom det ger ett lågt antal kollisioner och låter dig snabbt uppdatera information om varje drag med endast två XOR- operationer istället för en fullständig beräkning.
Även med dessa tidsreducerande tekniker är ett helpensionssökträd fortfarande väldigt långsamt. Sökningen kan påskyndas genom att begränsa förgrening ytterligare, genom att inte överväga alternativ för drag in i motståndarens inflytandeområde, eller genom att välja att först av allt överväga grupper av stenar som är i positionen atari . Men båda dessa metoder riskerar att inte överväga viktiga drag som kan förändra spelets gång.
Resultaten från datortävlingar visar att mönstermatchningsmetoder för stegkedjeval, i kombination med snabb begränsad taktisk sökning (förklarat ovan), är tillräckliga för att producera ett konkurrenskraftigt program. Till exempel är GNU Go konkurrenskraftig, men den använder inte helpensionssökningar.
ExpertsystemNybörjare lär sig ofta genom att titta på rekord av gamla spel av spelmästare. Det finns en stark hypotes att ackumulering av kunskap är nyckeln till att skapa stark AI. Till exempel säger Tim Kinger och David Mechner: "Vi tror att endast genom att använda verktygen för att samla och upprätthålla kunskap inom Go-området kan du skapa mycket starkare program än vad vi har för närvarande." De föreslår två vägar: övervägande av allmänna former och deras användning, eller hänsyn till lokala oppositioner. "...Go programvara saknar fortfarande både kvalitet och kvantitet av kunskap." [femton]
Efter implementeringen visade sig användningen av erfaren kunskap vara mycket effektiv. Hundratals riktlinjer och tumregler för starkt spel har formulerats av både amatörer och proffs på hög nivå. Programmerarens jobb är att ta dessa heuristiker , formalisera dem i maskinkod och använda mönstermatchning och mönsterigenkänning för att ta reda på när de ska användas. Det är också värt att utveckla ett system för att identifiera den bästa lösningen när flera principer gäller samtidigt.
De flesta av de relativt framgångsrika resultaten är baserade på Go-playing-färdigheterna hos de programmerare som skrev programmen och deras personliga gissningar om mästarnas spel, och inte på grundval av formella matematiska missräkningar; de försöker få datorn att efterlikna hur de själva spelar Go. "De flesta konkurrenskraftiga program har krävt 5-15 års mänsklig ansträngning och innehåller 50-100 moduler som behandlar olika aspekter av spelet." [16]
Denna metod har tills nyligen varit den mest framgångsrika tekniken för att producera konkurrenskraftiga Go-program på ett fullstort fält. Exempel på program som har förlitat sig mer på erfarenhetsmässig kunskap är Handtalk (senare känt som Goemate), The Many Faces of Go, Go Intellect och Go++, som alla vid något tillfälle ansågs vara världens bästa Go-program.
Men tillägget av expertkunskap försvagar ibland programmet, eftersom helt enkelt ytlig orientering i en situation kan leda till fel. "De bästa programmen gör vanligtvis bra drag på masternivå, men som alla spelare vet kan ett dåligt drag förstöra ett bra spel." [16]
Monte Carlo MethodsEtt av huvudalternativen till att använda kodad kunskap och hitta drag är Monte Carlo - metoden . Kärnan i denna metod är att de första positionerna väljs på det aktuella brädet som du kan gå till, och sedan, med början från var och en av dem, spelas ett stort antal slumpmässiga spel. Den position som ger det högsta förhållandet mellan vinster och förluster väljs för nästa tur. Fördelarna med denna metod är att den kräver väldigt lite kunskap om problemdomänen och inte kräver mycket minne. Denna metod har emellertid också uppenbara nackdelar. På grund av det faktum att dragen genereras slumpmässigt och inte alla möjliga fortsättningar beaktas, kommer vissa drag felaktigt att bedömas som bra. Även om det slumpmässiga urvalet av fortsättningar kommer att vara fördelaktigt, kan motståndaren ha några få men ganska uppenbara drag som gör att han kan få en fördel. Dessa drag kommer antingen inte att falla in i det slumpmässiga urvalet, eller så kommer antalet bra fortsättningar att bli större. Resultatet är ett program som är starkt strategiskt men taktiskt svagt. Detta problem kan mildras genom att lägga till viss expertis och djupare sökning. Monte Carlo-programmen inkluderar Zen , The Many Faces of Go v12 , Leela , MoGo , Crazy Stone [17] , Olga och Gobble.
2006 utvecklades en ny teknik, övre förtroendegränser applicerade på träd [18] , som används i många program för att spela Go på en 9x9-bräda med utmärkta resultat. UCT-tekniken, tillsammans med många andra optimeringstekniker för att spela på en 19x19-bräda, har gjort att MoGo har blivit ett av de starkaste programmen. UCT-tekniken för att spela på en 19x19-bräda används av följande program: MoGo, Crazy Stone, Mango . MoGo vann datorolympiaden 2007 och vann en av tre blitzmatcher mot Guo Juan [1] , 5:e Dan. 2008 vann The Many Faces of Go Computer Olympiad efter att ha lagt till UCT till sin expertkunskapsbaserade mekanism.
2008 vann MoGo en av tre matcher [19] mot Catalina Taranu , 5 pro-dan, på en 9x9-bräda med standardtid (30 minuter per match per spelare). MoGo lanserades på en klusterdator (32 noder med 8 kärnor vid 3 GHz). Dessa resultat godkändes av det franska Go Federation [20] . MoGo spelade också på en 19x19-bräda mot samma Catalina Taranu och förlorade med ett försprång på 9 stenar. Det är dock värt att notera att programmet spelade starkt och förlorade helt enkelt på grund av dåliga ko-fight-val i slutet av spelet, där datorer traditionellt sett är svaga.
Den 7 augusti 2008 vann MoGo ett 19x19 brädspel mot Kim MyungWan, 8p, med en 9-stens försprång med 1,5 poäng. Kim använde 13 minuter att tänka, medan MoGo använde cirka 55, men han kände att mer tid inte skulle hjälpa honom att vinna. MoGo lanserades från Nederländerna på en superdator med 800 noder som innehåller 4 kärnor per nod, 4,7 GHz och 15 Teraflops prestanda . [21] . Myeonghwan och MoGo spelade fyra matcher med olika handikapp och tidsgränser och vann två matcher vardera. Spelrapporter finns tillgängliga på KGS [22] där MoGo spelade under namnet MogoTitan.
I februari 2009 gjorde MoGo en ännu större seger - med ett handikapp på 7 stenar besegrade hon 9:e dan-spelaren Jun-Xun Zhou, och med ett handikapp på 6 stenar bröt motståndet hos 1:a dan-spelaren Li-Chen Chien [23] .
I början av 2012 har CrazyStone [24] , baserat på samma Monte Carlo-metod som MoGo, en stabil 5 dan på KGS-servern [25] .
I december 2010 nådde datorprogrammet Zen den 4:e dan-nivån på KGS-servern. Zen-programmet skapades av den japanska programmeraren Yoji Ojima. I juni 2011 nådde datorprogrammet Zen19d nivån 5 dan på KGS-servern och spelade med en hastighet av 15 sekunder per tur. Denna version av programmet kördes på en 26-kärnig dator. I mars 2012 nådde datorprogrammet Zen19D nivån 6 dan på KGS-servern och spelade med en hastighet av 15 sekunder per tur. Denna version av programmet kördes på en 28-kärnig dator [26] .
I mars 2012 vann Zen19D 9 dan med 4 handikappstenar mot Takemiya Masaki . För denna match använde vi ett kluster av 4 datorer (dubbla 6-kärniga Xeon X5680/4,2 GHz, 6-kärniga Xeon W3680/4 GHz och två 4-kärniga i7 920/3,5 GHz) anslutna via GbE LAN. Samma utrustning används för Zen19S och Zen19D på KGS-servern [27] .
MaskininlärningKunskapsbaserade program för att spela Go är mycket effektiva, men deras kunskapsnivå är nära relaterad till nivån på deras programmerare och relaterade domänexperter. Detta problem kan kringgås genom att använda maskininlärningsmetoder , som gör att programmet kan generera mönster och beteendestrategier som inte är inbyggda i det i förväg.
I grund och botten implementeras detta tillvägagångssätt med hjälp av neurala nätverk eller genetiska algoritmer , som låter dig antingen hitta rätt situation i en stor databas med spel, eller spela många spel mot dig själv eller andra program eller människor. Välkända program som använder neurala nätverk är NeuroGo och WinHonte.
Det finns flera välkända årliga tävlingar bland datorprogram som spelar Go, den mest kända är datorolympiaden. Regelbundna och mindre formella tävlingar hålls på KGS (månadsvis) och CKS (kontinuerligt).
De mest kända Go-playing-programmen inkluderar den nordkoreanska Silverstjärnan KCC Igo, Handtalk (av Chen Zhixing), GoPlusPlus (Michael Reiss) och David Fotlands Many Faces of Go. GNU Go är fri programvara som även vunnit datortävlingar.
De första computer go-tävlingarna sponsrades av USENIX. De hölls 1984-1988. Dessa tävlingar lanserade Nemesis, det första konkurrenskraftiga Go-spelprogrammet från Bruce Wilcox och David Fotlands G2.5, som senare skulle utvecklas till Cosmos och The Many Faces of Go.
Ett av de tidigaste incitamenten för dator Go-utveckling var Ing Cup, en relativt stor pengapristävling sponsrad av den taiwanesiska bankiren och Ing Cup- grundaren Ing Chang-ki, som hölls vart fjärde år från 1988 till 2000. Vinnaren av denna turnering fick utmana de unga proffsen i ett handikappspel med kort tid. Om programmet vann, tilldelades dess författare ett kontantpris och ett nytt pris fastställdes för segern för ett proffs med lägre handikapp. ing-priserna var tänkta att sluta 1) år 2000 2) när programmet slog en första professionell dan-spelare i ett jämnt spel (NT $ 40 000 000 ). Den sista vinnaren var Handtalk 1993, som fick NT$250 000 för att slå 8-9 år gamla proffs med 11 stenar. År 2000 förblev NT$400 000-priset för att slå ett proffs med ett handikapp på 9 stenar outtagna [28] .
Överraskande nog har Japan nyligen börjat sponsra sina egna dator Go-mästerskap. FOST Cup-tävlingen hölls årligen från 1995 till 1999 i Tokyo. Den ersattes av Gifu Challenge som hölls årligen från 2003 till 2006 i Ogaki, Gifu Prefecture .
I oktober 2015 besegrade AlphaGo , utvecklat av DeepMind , den trefaldige europamästaren Fan Hui (andra proffsdan) i en match på fem matcher med poängen 4-1. Detta är första gången i historien som en dator har besegrat ett proffs i ett jämnt spel [1] [29] [30] .
I mars 2016 besegrade AlphaGo den nionde dan-proffset Lee Sedol i fyra av fem matcher. [2]
I maj 2017, på Future of Go Summit , vann AlphaGo tre matcher av tre i en minimatch med en av världens starkaste spelare, världsledaren Elo Ke Jie [6]
När två datorer spelar Go mot varandra bör den idealiska bilden av spelet vara människa-till-människa. Detta är dock svårt att uppnå, särskilt i det sena spelet. Huvudproblemet är att programmet inte kan föra en dialog med fienden. Så om det finns någon oenighet om gruppernas status, så finns det inget sätt för programmen att lösa dem. Ett sätt att lösa detta problem kan vara att introducera en mänsklig domare eller en högspecialiserad mjukvarumiljö för att utvärdera den slutliga positionen. En alternativ metod är att låta programmen göra drag tills statusen för alla kontroversiella grupper slutligen fastställts. Det främsta hindret för implementeringen av denna lösning är att i vissa varianter av reglerna för Go (till exempel de japanska reglerna) straffas spelare för extra drag och förlorar poäng. Därför finns det en risk att programmet, efter att ha tvivlat på sin fördel, kommer att förlora efter att ha spelat ut den vinnande situationen.
Gå | |||||
---|---|---|---|---|---|
| |||||
Lager | |||||
Regler |
| ||||
Speletapper | |||||
Terminologi | |||||
Utsläpp | |||||
Organisationer | |||||
Titlar | |||||
Internationella turneringar |
| ||||
Gå i konsten |
| ||||
Övrig | |||||
|