Aggiorn. Considerando questa domanda ho fatto esercizio di accoppiamento al massimo del motore Chess.Com. Durante l'analisi è emerso che la maggior parte utilizza una versione di Stockfish o Komodo. Ha richiesto un riavvio dell'intero processo, tentativi di diverse posizioni, sacrifici e distruzione totale a livello strategico. Ha capito che ha problemi solo quando la posizione era già totalmente perdente. Ha richiesto quasi 60 mosse, suppongo che non sia possibile farlo con meno mosse. Ho ridotto il numero di mosse richieste perché utilizzavo mosse di altri motori, che non erano fondamentali per la vittoria. Il giocatore professionista può fare lo stesso senza utilizzare il motore di scacchi e con meno prove. La parte più difficile è trovare idee chiave contro i punti deboli chiave, essenzialmente è compito dell'essere umano e non del computer. Inoltre devi trovare la buona apertura che funzionerebbe. È importante che io non sappia quale motore ho battuto perché essenzialmente i passaggi necessari per ottenere la tua vittoria sarebbero comunque gli stessi.
Nota solo che il gioco ha avuto 3 scambi. Ho venduto il motore per un intero pezzo. Poi ho licenziato quell'alfiere che avevo il vantaggio di afferrare Queen quale motore pensava fosse OK perché è stato attirato in una trappola sovrastimando il suo pedone passato. Il motore ha davvero sopravvalutato la sua capacità di effettuare controlli e vantaggi materiali. I motori sono così avidi che se giochi attirando i loro rischiosi attacchi in una trappola chiara, non hanno cervello per evitarlo. E dopo aver vinto una volta, vinci per sempre. Potrebbe essere necessario modificare alcune mosse, ma ripeterai l'intera idea.
[ECO "A01"] 1.b3 d5 2.g3 e5 3.Bb2 Nc6 4.Bg2 Nf6 5.e3 h5 6.h3 Bf5 7.d3 Qd7 8.a3 OOO 9.Ne2 Be7 (9 ... Kb8 10.b4 a6 11.Nd2 Bd6 12.Nb3 e4 13.Qd2 Ne5 14.Nc5 Qc8 (14 ... Bxc5 15.Bxe5 Bb6 16. Bxf6) 15.Bxe5 Bxe5 16.d4 Bd6 17.b5 axb5 18.Rb1 Nd7 19.Rxb5 Nb6 20.a4 h4 21.g4 Bd7 22.Rb1 f5 23.Qc3 (23.a5 Nc4 24.Qc3 b5 25.axb6 cxb6 26.gxf5 Bxf5 27.Bf1 Bxc5 28.dxc5 Qxc5))
10.b4 a6 11.Nd2 g5 12.Nb3 Qe6 13.Nc3 Kb8 14.Qd2 h4 15.g4 Nxg4 16.hxg4 Bxg4 17.f3 Bh5 18.OOO f5 19.Rdg1 g4 20.fxg4 (20.f4 h3 21. Bf1 exf4 22.exf4 d4 23.Nd1 Bf7) 20 ... fxg4 21.Qe1 Bf7 (21 ... g3 22.Nc5 Qf7) 22.Kb1 Qd7 23.Ne2 Be6 24.Nc5 Bxc5 25.bxc5 h3 (25. ..g3) 26.Bf1 d4 (26 ... Rdf8 27.Ng3 Qe7) 27.e4 Rhg8 28.Ng3 Rg5 (28 ... Rg6) 29.Be2 Rdg8 30.a4 a5 31.Ba3 Ka7 32.Bd1 Nb4 33.Bxb4 Qxa4 34.Bc3 dxc3 35.Qxc3 b5 36.Qb2 b4 (36 ... Qd4) 37.Nf5 Qe8 38.Rh2 Kb8 39.Qa1 (39.Qxe5 $ 4 {pessima idea}) 39 ... a4 40.c4 Bxf5 41.Bxa4 Bd7 42.Ra2 h2 43.Re1 Bxa4 44.Rxa4 Qc6 45.Ra6 Rh8 (45 ... Rh5 46.Kb2 h1 = Q 47.Rxc6 Qh2 + 48.Kb3) 46.Rxc6 h1 = Q 47.Kb2 Qg2 + (47 ... Rh2 + 48.Kb3 Qg2) 48.Kb3 Rh2 49.Rc1 Rh3 50.Rb1 Rh2 51.Rc1 Rh3 52.Rb1 Qd2 53.Ka4 Rh2 54.Kb5 Qa2 55.Ra6 Qxa1 56.Rbxa1 Kc8 57.Rf6 Rh8 (57 ... Rg8 58.Ra8 +) 58.c6 Kb8 59.Rf2 b3 60.Rb2 Rh1 61.Rxh1 Rg8 62.Ra1 Rd8 63.Rxb3 Rd5 + 64.cxd5 g3 65.Kc5 + Kc8 66.Ra8 # 1-0
============
Lo stoccafisso e altri motori di computer sono battibili, considerando questi fattori:
- Lim database apertura ited + fine gioco. Questo è il fattore più importante. I motori dei computer non conoscono la teoria, quindi gli sviluppatori stanno rafforzando le loro debolezze fornendo database di dimensioni tera-byte con indici sofisticati per operazioni di ricerca ultraveloci.
- Debolezze all'interno dell'algoritmo di valutazione. Ogni motore di computer non è in grado di ottenere trilioni di combinazioni possibili, quindi sta cercando l'albero del gioco, utilizzando la funzione di valutazione da qualche parte ai livelli più profondi. I motori più recenti utilizzano la funzione Rete neurale alla fine dell'albero e il bilanciamento di questa rete neurale è anche un altro tipo di database che gli esseri umani possono attaccare. Se analizzi questa funzione neurale, scopri la posizione in cui fallisce (fallirà da qualche parte), a causa del tempo limitato concesso al computer.
- Debolezze in apertura. Usa un'apertura altamente non standard, che hai preparato con un approccio per tentativi ed errori, realizzata a mano. Ogni partita uomo contro computer va sempre preparata. Poiché gli umani non possono giocare con la "scatola nera", dovrebbero capire l'avversario. In genere gli esseri umani giocano con il computer per mesi prima di consentire una corretta "corrispondenza". Il computer deve eseguire mosse deterministiche e recuperabili. Cioè per ogni singolo computer in esecuzione non dovrebbe fare affidamento su alcune variabili "casuali". Nella storica partita Kasparov-DeepBlue, il computer ha scelto una mossa diversa, che è andata in un'altra direzione e non si è ripetuta. Quindi era la domanda in cui gli esseri umani hanno corretto il motore o il database erano diversi.
Attaccare questi punti deboli rende molto divertente e crea diverse strategie anti-computer.
Lo farei diciamo che dovremmo definire il vero motore del computer , che erediterebbe queste proprietà:
- Nessun intervento umano. In nessun momento, le variabili del motore sarebbero state fissate arbitrariamente dagli esseri umani.
- Nessuna rete neurale + Nessun database peta-byte. Si ripete semplicemente 1 e inoltre la rete neurale richiede fondamentalmente la supervisione da parte degli esseri umani per apprendere, o una certa potenza di calcolo da autoapprendimento. Quindi il motore sta sostanzialmente risparmiando tempo che richiederebbe nella corrispondenza reale da parte dei database pre-elaborazione.
- Nessuna mossa casuale. Corretto il comportamento per data CPU / GPU / tempo con formule deterministiche. Giochi ripetibili.
I veri motori dei computer sono battibili dagli umani, date le circostanze competitive. Gioco reale con puntate in denaro + tempo per il lato umano per la preparazione di almeno pochi mesi + vero motore di computer che starebbe con sportività. Battibile.
La difficoltà associata al gioco contro i motori dei computer deriva dal tempo necessario affinché gli umani si preparino alla battaglia. Perché giocare è radicalmente diverso dal giocare contro altri umani. Giocare contro gli umani è tutta una questione di strategia, mentre giocare contro i computer significa fare mosse ottimali .
Le ultime versioni di Stockfish e Lc0 dall'inizio non sono dei veri motori di computer, perché si applicano reti neurali che sono state addestrate da tecniche di supervisione - o da esseri umani, o da altri motori. Quindi è una specie di database integrato nel motore per accelerarlo. Quindi non penso che "battere" un tale avversario possa nemmeno essere considerato come "battere il computer" perché in realtà stai battendo altre persone che stavano allenando quelle specifiche reti neurali.
PS. L'ho fatto. Ho iniziato osservando come gli altri motori si comportano con gli avversari controllati dal computer e ho escogitato mosse che contrastassero le idee che questo particolare motore stava sviluppando. Esiste una guida per provare a farcela da solo?
- Correggi le mosse di apertura. In genere si desidera prima giocare al gioco Ryu Lopez perché questo è più simile al gioco predefinito per i computer quando non vengono forniti con il libro di apertura.
- Sviluppa prima i tuoi pezzi, senza lasciare che il computer si scambi. Perché meno pezzi -Gli algoritmi informatici di > sono più efficaci. Vuoi che il computer soffra di macinatura. Ogni volta che commetti l'errore di lasciare che il computer prenda lo scambio, tira indietro le mosse e analizza cosa c'è che non va.
- Sviluppa le tue catene di pedoni e idee. La chiave è mantenere la tua idea funzionante per tentativi ed errori. L'idea si muove + le mosse di riempimento. Quando hai solo bisogno di riempire lo spazio, fai "mosse di riempimento" che non ti fanno rischiare ma aumentano solo la complessità per il computer.
- Cattura il computer quando si avvita in posizione. Lo sarà prima o poi. È molto probabile che i computer stiano fregando i pedoni che passano. Perché quando notano un pedone molto vicino al passaggio è già troppo tardi. Chiudi il tuo vantaggio materiale scambiando un pedone con una torre o qualcosa di prezioso -> vince. Non andare per finali fantasiosi, fai solo cose materiali. Ci vorranno più mosse, ma non romperà il tuo intuito.
- Una volta trovata la strategia vincente, hai battuto questo computer per sempre, perché ogni volta che funziona, puoi semplicemente ripetere le tue mosse e abusare dello stesso macchie. Non può fare nulla contro. Poiché i movimenti del computer sono calcolati da formule, non importa quanto complicate siano queste formule, potrebbero essere superate.
PPS. È un gioco ei computer sono stupidi ai giochi! Immagina di avere bot contro di te in CSGO. Sicuramente possono sparare e il loro tiro potrebbe essere migliorato fino a millisecondi, quindi nessun giocatore umano sarebbe più forte nel tiro. Ma c'è di più in CSGO che puntare il mouse in direzioni specificate.