O ile rozumiem, wydaje się, że przed przeprowadzką całe silne oprogramowanie szachowe
- analizuje tysiące lub miliony możliwych przyszłych pozycji;
- ocenia każdą przyszłą pozycję według pewnej heurystyki, zwanej funkcją oceny;
- osobno ocenia każdą przyszłą pozycję pod kątem spoczynku, aby zdecydować, czy zbadać kontynuacje z pozycji;
- wybiera spośród dostępnych ruchów przez minimax; i
- używa książki otwierającej.
Na razie w porządku. Jednak siła programu szachowego wydaje się zależeć głównie od jakości jego oceny i heurystyki bezruchu - a także od książki otwierającej, która z punktu widzenia komputera jest kolejną heurystyką. Taki program szachowy najwyraźniej dokładnie wie tyle o grze, co człowiek, który stworzył heurystykę. Program wydaje się nie mieć własnego wglądu.
Czy ktoś kiedykolwiek napisał program szachowy, który ma własne spostrzeżenia? Który uczy się gry na własną rękę? To się trenuje? Taki program byłby oczywiście zaopatrzony w reguły gry i prawdopodobnie miałby zapewnioną surową infrastrukturę minimax i spoczynku, i byłby w stanie rozpoznać i ścigać przymusowego partnera, gdyby go znalazł. Jednak nie otrzyma heurystyki. Na przykład nie powiedziano by, aby otwierało grę w kierunku centrum, nie preferowało wieżyczek od rycerzy, ani tego, czym jest obrona Sycylii. Musiałby wywnioskować takie zasady (lub, być może, odkryć lepsze zasady) samodzielnie.
W czystej postaci taki program nigdy nie byłby dostarczany do opanowania gier, a jedynie własne gry, rozgrywane przeciwko sobie. Tylko raz w pełni samokształcący się uwolni się od ludzkiej konkurencji.
Czy istnieje taka czysta szachowa sztuczna inteligencja? Czy kiedykolwiek pojawił się automatyczny samouczek mechaniczny? Rzeczywiście, czy stary Turek może się uczyć?
Wygląda na to, że zawiodła czysta szachowa sztuczna inteligencja.
( Wcześniej na tej stronie pojawiło się stycznie powiązane pytanie dotyczące komputerowego badania otworów szachowych.)
AKTUALIZACJA
Pytanie zawiera trzy różne, pouczające odpowiedzi w chwili pisania tego tekstu, autorstwa @WesFreeman, @GregE. i @Landei. Wszystkie trzy są zdecydowanie zalecane i czuję się winny, gdy zgodnie z polityką witryny formalnie akceptuję jedną z wyłączeniem innych. Pozwólcie mi tu podziękować i wyrazić uznanie dla wszystkich trzech.
Pytania wymagają zwięzłości. Odpowiedź na odpowiedzi może jednak trwać dłużej. Zainteresowany czytelnik może w związku z tym przejść bezpośrednio do odpowiedzi, a następnie, jeśli nadal jest zainteresowany, może wrócić do przeczytania dalszej aktualizacji.
Kiedy zadałem pytanie, miałem na myśli coś takiego.
Załóżmy hipotetyczną wioskę na obrzeżach Shangri-La, w której ludzie nigdy nie słyszeli o szachach. Podczas krótkiej wizyty uczysz starszych wioski zasad gry, ale nigdy nie instruuj ich o zasadach gry. Dwaj starsi grają w grę, podczas gdy inni patrzą, podczas gdy ty (nie chcąc zakłócać gry przez kibitzing) ograniczasz swój komentarz do pytań dotyczących zasad. Żadne pośmiertne nie następuje po grze, ani nie gra się w szachy ani nie omawia się ich ponownie, dopóki pozostaniesz w Shangri-La. Jednak, kiedy odchodzisz, nigdy nie wracasz, pozostawiasz szachy.
Pod twoją nieobecność starsi uczą ludzi gry. Niektórzy ludzie później bawią się trochę w czasie wolnym, niektórzy z rosnącym entuzjazmem, którzy tworzą własne zestawy szachowe.
Dla takich wieśniaków może nie być od razu oczywiste, że wieża była lepsza niż rycerz, ale ludzie mogą wciąż stopniowo wyliczać względne siły szachistów w trakcie gry. Podobnie może nie być od razu oczywiste, że 1. a4 były kiepskim początkiem: mogliby tylko spróbować i rozważyć wyniki.
W jakim stopniu zrozumienie gry przez mieszkańców wioski będzie w końcu zbieżne z rozumieniem świata zewnętrznego? Czy brakuje im książki otwierającej, czy mogliby opracować własne nowości? Oczywiście nie można oczekiwać, że początki osadników będą na początku bardzo dobre, ale biorąc pod uwagę kilka stuleci izolacji, mieszkańcy wioski mogą opracować porządny repertuar otwierający, o ile wiem.
Czy którykolwiek z ich opracowań, niezależnie opracowanych, okazałby się interesujący dla świata zewnętrznego, gdy 200 lat później przyszedł następny podróżnik, aby je odnotować? Czy Shangri-La może dać światu nową powieść, Shangri-La Defense?
Jeśli tak, to jeśli chodzi o moje pierwotne pytanie na temat szachowej sztucznej inteligencji, miałem mniej więcej na uwadze to: czy szachowa sztuczna inteligencja może w mniejszym lub większym stopniu powielić postęp szachowy wieśniaków na obrzeżach Shanrgi-La?
Biorąc pod uwagę historię Sussmana w odpowiedzi @ Landei poniżej, niewątpliwie prawdą jest, że moi wieśniacy wnieśli do gry pewne uprzedzenia. Na przykład, przyniosą zrozumienie, że posiadanie większej ilości pożytecznych rzeczy jest na ogół lepsze niż posiadanie mniejszej ich ilości, a zatem, że schwytanie przeciwników szachowych jest zwykle lepsze niż cierpienie zdobycia własnego. To, jak terytorialni byli fikcyjni ludzie z Shangri-La z natury, jest pytaniem dla literatury, ale można założyć, że uznaliby oni pozycję, która rządziła większą przestrzenią, za wyższą niż pozycja, która rządziła mniej. I każdy bystry nowicjusz, który kiedyś pokazał szachy i poinstruował zasady gry, może wywnioskować, że królowa jest prawdopodobnie lepsza od pionka, po prostu dlatego, że królowa ma do dyspozycji 27 ruchów,
Moje pytanie nie musi zatem być interpretowane jako sugerujące absolutny nakaz w stylu Sussmana przeciwko wniesieniu jakiejkolwiek wiedzy na szachownicę; ale raczej sugerować ogólny zakaz przeciwko z góry założonej, specyficznej dla szachów wiedzy. W końcu (pomijając kwestię ewolucji reguł gry dawno temu), w pewnym momencie w przeszłości grała się w pierwszą grę w szachy. Może pierwszy gracz otworzył 1. a4; ale ostatecznie nauczył się lepiej i nauczył swoich uczniów tego, czego się nauczył; który z kolei nauczył się więcej i uczył z pokolenia na pokolenie, aby dać nam Kasparowa.
Czy sztuczna inteligencja nie mogłaby zrobić czegoś takiego tylko w tygodniach, a nie stuleciach?
Platon byłby sceptyczny, jak sądzę. Hume byłby bardziej optymistyczny, ale nie można już rozstrzygać samej filozofii. Mamy teraz komputery elektroniczne, z którymi można przetestować tę propozycję, i zastanawiałem się, jaki jest stan sztucznej inteligencji. Najlepsze szachowe AI obecnie wydają się całkowicie nieinteligentnymi systemami eksperckimi, które biją wszystkich, nie przeczuwając niczego. Zastanawiałem się, czy nieco szersze SI, które w pewnym sensie rzeczywiście myślą o szachach, odniosły jakikolwiek sukces w nauce gry.
Rozumiem, że odpowiedź brzmi „nie”, prawdopodobnie nie.
Odpowiedzi:
Masz kilka bardzo interesujących punktów. Mam trochę doświadczenia w badaniach nad sztuczną inteligencją (mój magister był w tej dziedzinie), więc myślę, że mogę podać pewne spostrzeżenia.
Reasearch w okolicy
Po pierwsze, badania w tej dziedzinie z pewnością mają miejsce - poszukiwanie „ewolucyjnego szachy podejścia” powróciło z tym artykułem z 2001 roku, robiąc prawie dokładnie to, co zasugerowałeś, pozostawiając podejście min / max i tylko modyfikując funkcję oceny. Możliwe jest wykopanie wielu innych i jestem świadomy kilku osób, które ogólnie pracowały w tej dziedzinie.
Teoretyczne możliwości
Moim zdaniem jedynym prawdziwym ograniczeniem dla stworzenia „czystej” sztucznej inteligencji w szachach jest czas obliczeń. Nie ma absolutnie żadnego powodu, dla którego takiej sztucznej inteligencji nie można teoretycznie stworzyć przy użyciu obecnych metod.
Praktyczne
Istnieją dwa główne problemy z wykorzystaniem ewolucyjnych lub genetycznych podejść do ewolucji funkcji heurystycznej szachów. Pierwszą jest to, że nawet w najbardziej podstawowej funkcji heurystycznej dla szachów jest niezwykle złożona. Mówimy o setkach reguł, wycenach sztuk (które mogą się różnić w zależności od pozycji itp.), Analizach pozycji itp. Potrzebny byłby elastyczny język komputerowy, w którym można by opisać te reguły, a następnie reguły te można by losowo wygenerować, zmutowane, rozmnażane ze sobą itp. Z pewnością jest to możliwe, ale domyślam się, że skończyłoby się to zestawem reguł składającym się z kilku tysięcy bytów. To bardzo duży zestaw reguł, które mają ewoluować dynamicznie.
Drugi problem polega na tym, że aby ocenić nowo zmodyfikowaną regułę, musisz zagrać w szachy i przekonać się, kto wygra. Jeśli chcesz to zrobić „poprawnie”, musisz dać obu graczom dużo czasu na przemyślenia, coś podobnego do typowej długości gry. Jednak granie tylko w jednego przeciwnika nie wystarczy, chciałbyś grać wiele różnych przeciwników, a może nawet tych samych przeciwników, wiele razy, zanim naprawdę będziesz w stanie przekonać się, że zauważyłeś poprawę siły gry. Oznaczałoby to prawdopodobnie rozegranie kilkuset gier na osobę w Twojej populacji, co daje jedną generację algorytmu.
Zazwyczaj przy tego rodzaju podejściach patrzyłbyś na co najmniej kilkaset pokoleń lub z tak złożonymi funkcjami jak heurystyka szachowa, kilkaset tysięcy (a nawet milionów) pokoleń. Kilka szybkich obliczeń powinno cię przekonać, że potrzebujesz jednego tysiąca godzin procesora na jedno pokolenie, a nawet skalując to na farmę serwerów o znacznych rozmiarach, prawdopodobnie będziesz potrzebować kilku (prawdopodobnie setek) lat, aby ewoluować, dokładnie tak jak wspominasz w swojej aktualizacji.
Pod koniec tego czasu miałbyś interesujący algorytm, który prawdopodobnie miałby mnóstwo wglądu w grę, która tak naprawdę nigdy nie została odkryta. Trudno powiedzieć, czy byłyby przydatne, czy nawet zrozumiałe dla ludzi. Dlaczego ta reguła istnieje? Ponieważ wydawało się, że działa ponad kilka tysięcy gier.
Przyszłość
Nie mam wątpliwości, że takie podejście zyska większą popularność wraz ze wzrostem mocy obliczeniowej. Obecnie jesteśmy w punkcie, w którym maszyna ma wystarczająco dużo czasu na pokonanie (prawie wszystkich) ludzi, jeśli jej inteligencja jest starannie wykonana ręcznie. Za 20 lat jest całkiem możliwe, że procesory będą się poruszać tak bardzo, że jeden lub dwa dodatkowe ruchy na głębokości nie będą już dawały „zakodowanym na stałe” maszynom wystarczających korzyści, ale będą rutynowo pobijane przez rozwinięte, dziwnie intuicyjne maszyny, które mają za nimi miliony godzin ewolucji.
Aktualizacja 2018 maja
Jak wspomina Robert Kaucher w komentarzu poniżej, najnowsze wiadomości zasługują na wzmiankę tutaj. Konkretnie, projekt AlphaGo firmy Google wydaje się pierwszym naprawdę realnym podejściem do tego typu gier opartym na sztucznej inteligencji, a pod koniec 2017 roku twierdzi, że wygrał z StockFish 2 , po ponownym przeznaczeniu do tego zadania.
źródło
Podejrzewam, że to, o co pytasz, zostałoby sklasyfikowane jako pewnego rodzaju algorytm genetyczny lub algorytm ewolucyjny . Podejrzewam, że nie ma realistycznego sposobu zaprojektowania takiego algorytmu bez wbudowania w pewien stopień uprzedzeń ludzkich na podstawowym poziomie, ponieważ programista wciąż musi zdefiniować cechy statyczne pozycji (liczba materiałów, struktura pionków, kompleksy kolorów itp.) zgodnie z którym AI klasyfikuje i porównuje pozycje z różnych gier. Jeśli przeprowadzisz wyszukiwanie w Google na powyższej terminologii algorytmicznej w kontekście szachów, znajdziesz wiele wyników, ale prawdopodobnie niewiele w poważnych badaniach, które zostały faktycznie wykorzystane do zbudowania udanych, konkurencyjnych sztucznej inteligencji.
Faktem jest, że zgodnie z prawem Moore'a, komputery są teraz tak potężnymi maszynami liczącymi, że niezwykle wyrafinowane metody sztucznej inteligencji są nie tylko niepotrzebne (pod względem gry na poziomie wyższym niż najlepsi przeciwnicy ludzcy), ale mogą nawet przynieść efekt przeciwny do zamierzonego. Szachy to rodzaj gry, w której - głównie ze względu na stosunkowo niewielką przestrzeń poszukiwań rozsądnych ruchów w dowolnej pozycji oraz istnienie wymuszania kombinacji taktycznych (obejmujących sekwencje czeków, chwytania pionków, groźby partnera lub katastrofalną utratę materiału, itp.) - podejście z użyciem siły brutalnej z pewnym konserwatywnym przycinaniem drzewa wyszukiwania jest jednocześnie najbardziej algorytmicznie prostym i najbardziej skutecznym podejściem. Jeśli weźmiesz pod uwagę dostępność tabel gier końcowych i otwierania książek, logika tego podejścia tylko się powiększy. Rozumiem, że tam to wciąż wiele teoretycznych zainteresowań i potencjalnej wartości w rodzaju powieści AI, o której mówisz, ale podejrzewam, że szachy są niewłaściwą areną, na której można je rozwijać. Z drugiej strony, gra taka jak Go, która z natury jest mniej taktyczna i obejmuje znacznie większą przestrzeń poszukiwań, która sprawia, że podejście brutalnej siły jest niepraktyczne, może być lepszym kandydatem do najnowszych badań nad AI.
źródło
Zobacz stronę Wikipedii dotyczącą gry ogólnej . To aktywny obszar badań. Odbywa się coroczny turniej GGP, w którym programom podaje się zasady nowej gry, zastanowić się przez chwilę, a następnie rozegrać grę ze sobą.
Jeśli podasz reguły gry w szachy programowi GGP, myślę, że przekonasz się, że gra on znacznie silniej niż początkujący człowiek i znacznie słabszy niż program szachowy napisany specjalnie do tego celu.
źródło
Warto ponownie zastanowić się nad tym pytaniem w świetle niedawnego uderzającego sukcesu AlphaZero przeciwko Sztokfiszowi 8 . Dalsza ewolucja programów AlphaGo i AlphaGo Zero firmy DeepMind , AlphaZero zakończyła się oszałamiającym wynikiem +28 = 72 -0 przeciwko jednemu z najsilniejszych „tradycyjnych” silników szachowych na świecie.
AlphaZero nauczył się grać poprzez uczenie się przez wzmocnienie, trenując architekturę sieci neuronowej poprzez serię gier przeciwko sobie. Zgodnie z towarzyszącym dokumentem :
Jestem pewien, że można zadawać pytania na temat używanego sprzętu - „ AlphaZero … używał pojedynczej maszyny z 4 TPU . Sztokfisz … grał na [najsilniejszym poziomie umiejętności] przy użyciu 64 wątków i wielkości skrótu 1 GB. ” - ale w każdym razie wynik AlphaZero jest niezwykły i bardzo podobny do PO.
Ujawniając być może jeszcze więcej wsparcia dla tego, jak mało wiedzy na temat konkretnej dziedziny była w grze, oprócz pokonania Sztokfisza w szachach, AlphaZero również trenował w shogi do tego stopnia, że pokonał mistrzowski program Elmo, i oczywiście przewyższył swojego poprzednika AlphaGo Zero w Go .
Oto jedna z gier przeciwko Sztokfiszowi, Berlinowi, w którym nierównowaga materialna to ostatecznie AlphaZero z parą biskupów przeciwko rycerzowi i 4 pionkami dla Sztokfisza później
31.Qxc7
. W tej pozycji wszystkie pionki AlphaZero znajdują się z tyłu, a biskupi z powrotem na swoich pierwotnych polach. Ostatecznie, po tym, jak królowe zejdą, czarne kawałki powoli manewrują, by podnieść białe pionki, a to zasłony.źródło
Myślę, że głównym powodem, dla którego trudno jest wyprodukować taką sztuczną inteligencję, jest przestrzeń potrzebna do przechowywania „treningu”, aby była skuteczna.
Również (w odpowiedzi na twój komentarz na temat samokształcenia) samokształcenie może być szkodliwe, próbując ulepszyć taką sztuczną inteligencję - przeprowadziłem badania z kółkami i krzyżykami (co prawda znacznie prostsze), i znalazłem wszystkie rodzaje okropnych sposobów na wygraną (i trenowanie tych okropnych sposobów), ponieważ obie strony grały okropnie. Osiągnięcie rozsądnej wydajności przy samokształceniu zajęło znacznie więcej czasu niż trening z dobrą sztuczną inteligencją w kółko i krzyżyk.
Myślę jednak, że byłoby interesujące zobaczyć hybrydę, która korzysta zarówno z głębokiego wyszukiwania, jak i „treningu” - pewnego rodzaju przechowywanej bazy danych pozycji dla środkowej części gry (zamiast samej gry końcowej i otworów). Potrzebowałoby dużo miejsca.
Być może myślisz o bardziej „prawdziwym” podejściu AI, które nauczyłoby się pojęć pozycyjnych zamiast wygrywania / przegrywania / remisowania pozycji, ale nie sądzę, aby to było bardzo skuteczne (w porównaniu do silnych silników).
źródło
Chcę tylko rozwinąć tutaj odpowiedzi Grega i Wesa. Tego rodzaju sztuczna inteligencja, którą proponuje thb, po prostu nie istnieje z wyrafinowaniem wymaganym dla tej aplikacji. I nawet jeśli tak, podejrzewam, że by tego nie zrobili. To tak, jakby ktoś chciał silnej sztucznej inteligencji ogólnego przeznaczenia, której można nauczyć podstawowych zasad gry, a następnie wysłać. Ale jeśli spojrzysz na AI ogólnego przeznaczenia, które są w fazie rozwoju, wszyscy uczą się takich rzeczy, jak rozpoznawanie obiektów i mowy na poziomie od 1 do 2 lat. Każda sztuczna inteligencja ogólnego przeznaczenia będzie musiała najpierw być wyrafinowana, aby móc zrozumieć, czym jest gra, zanim będzie mogła zrozumieć, jak w nią grać. Nie można zaprojektować sztucznej inteligencji ogólnego przeznaczenia i oczekiwać, że będzie ona działać jak wąska lub wyspecjalizowana sztuczna inteligencja. Ogólnej sztucznej inteligencji należałoby nauczyć się gry w szachy jak osoby i nie można oczekiwać, że dwaj nowicjusze, którzy nie znają historii szachów, będą spontanicznie odkrywać nowe możliwości i strategie. Grałaby się w setki instancji AI, każda z dostępem do danych historycznych wszystkich swoich gier w setkach tysięcy iteracji. I każda AI musiałaby mieć pewne odrębne cechy ważone na różnych poziomach.
Prawie 500 lat zajęło ludziom przejście z Rodrigo (Ruy) Lópeza de Segury i Pedro Damião do Paula Morphy'ego, a następnie rozważenie dalszych zmian, które zaszły między grą Steinitza i Alekhine'a. Cała ta zmiana nastąpiła dzięki dynamizmowi setek tysięcy graczy o różnych temperamentach i innych wpływających cechach (takich jak losowe faworyzowanie rycerzy nad biskupami lub biskupów nad rycerzami), nie wspominając już o stylach gry i modzie. Wszystkie te rzeczy przyczyniły się do dynamiki zmian, która wpłynęła na szachy na przestrzeni wieków. Żadna słaba sztuczna inteligencja - nawet słaba sztuczna inteligencja ogólnego przeznaczenia - nie może powielić tego rodzaju dynamo, ponieważ brakuje mu pożądania. Tylko pragnienie może zmusić coś do siedzenia przez wiele godzin przez wiele dni, aby przeanalizować otwarcie z zamiarem wyeliminowania go lub ulepszenia po tym, jak rywal go „złapał”. Naprawdę jest to rodzaj napędu do analiz i przygotowań, który poprawił grę na przestrzeni wieków - nie ślepa gra milionów gier między równie słabymi graczami.
To tak, jakby wziąć grupę ludzi, którzy nie mówią po angielsku i którzy nigdy nie czytają mistrzów literatury w swoim ojczystym języku, i umieścić ich w pokoju z książkami w języku angielskim jako drugim językiem i oczekiwać, że wymyślą coś podobnego do dzieł Szekspira. To się nigdy nie wydarzy.
EDYCJA : Powinienem był wiedzieć, że nie powinienem twierdzić, że tak się stało .
Moje ciągłe, oczywiście bezpodstawne blathering:
Przyjmujemy za pewnik całą dorozumianą wiedzę o świecie. Aby móc zrozumieć, że jeśli mam do czynienia z kawałkami drewna i gwoździa, to młotek jest dla mnie bardziej przydatny niż śrubokręt, muszę najpierw zrozumieć, że pewne klasy rzeczy są bardziej użyteczne w pewnych sytuacjach niż inne rzeczy. Muszę również zrozumieć, że rzeczy mają zastosowanie, które można zastosować do celu. To są heurystyki. Jeśli sztucznej inteligencji nie można powiedzieć, że niektóre elementy mają większą wartość niż inne, to w jaki sposób może zrozumieć, co to jest partner? Jeśli nie można go zaprogramować za pomocą określonej heurystyki, musi być w stanie ekstrapolować te pomysły, takie jak „wartość” i „użyteczność” z doświadczenia. I to nie jest dziedzina wąskiej sztucznej inteligencji. To domena ogólnego przeznaczenia, silna AI.
źródło
Proszę medytować o następującym AI Koan:
Nasze aplikacje mają zawsze uprzedzenia, niezależnie od tego, czy zamkniesz oczy ...
źródło
Tak. Sprawdź silnik szachowy Giraffe napisany przez Matthew Lai. Napisał silnik szachowy w ramach swoich badań nad sztuczną inteligencją, uzyskując tytuł magistra informatyki.
W ubiegłym roku odbyło się wiele dyskusji na forum programowania szachów TalkChess . Wiem, ponieważ jestem autorem silnika szachowego, którego silnik jest mniej więcej tak silny jak Giraffe. Jednak zaimplementowałem silnik przy użyciu tradycyjnych technik, podczas gdy autor Giraffe wyszkolił swój silnik przy użyciu „uczenia się wzmocnienia czasowego z głębokimi sieciami neuronowymi”. Matthew wciąż musiał wdrożyć tradycyjne wyszukiwanie alfa / beta, aby dynamicznie oceniać pozycję - innymi słowy, patrzeć w przyszłość na wiele ruchów. Jego innowacją jest szkolenie silnika w celu oceny statycznej pozycji. Dla porównania napisałem konkretną wiedzę na temat procedury oceny statycznej mojego silnika.
Napisałem kod, aby dostroić parametry oceny za pomocą algorytmu roju cząstek (patrz strona z podziękowaniami na moim blogu, aby uzyskać linki do dyskusji technicznej), które dały pozytywne wyniki - silniejszy silnik. Nie było to jednak zadanie polegające na tym, aby silnik „nauczył się” tak bardzo, jak zminimalizowanie błędu w bardzo dużej przestrzeni parametrów oceny (rzędu 10 ^ 150 dyskretnych kombinacji parametrów).
Matthew omawia swoją rozprawę na forum TalkChess. Teraz działa dla Google w DeepMind, jeśli dobrze pamiętam.
Sprawdź także blog Thomasa Petzke . Napisał niezwykle silny silnik szachowy, iCE, i zastosował algorytmy genetyczne do poprawy oceny statycznej silnika. Zobacz jego posty z 2013 r. I wcześniejsze, takie jak Population Based Incremental Learning .
źródło
Wyszukiwarka Google jak to może okazać się wyniki jak ten .
W szczególności uważam, że będziesz chciał spojrzeć na ten artykuł . Podają swojemu silnikowi pewne początkowe dane, takie jak wartości sztuk, więc nie jest to dokładnie to, o co prosisz, ale działało całkiem dobrze.
źródło
Jest to możliwe dzięki uczeniu maszynowemu.
Książki otwierające silniki szachowe wykorzystują uczenie maszynowe. Silnik sprawdza początkowe wiersze w książce, odtwarzając je, jeśli linia osiąga lepsze wyniki w porównaniu do innej, promuje tę linię w otwierającym drzewie. Z czasem silnik uczy się lepszych linii.
Po zakończeniu fazy otwierania silnik przestaje korzystać z książki i zaczyna korzystać z funkcji oceny.
Jak wdrożyć silnik samouczący się za pomocą uczenia maszynowego?
Wyobraź sobie silnik korzystający z książki bez funkcji oceny. Książka początkowo jest pusta. Więc silnik nie ma wiedzy o szachach.
Silnik zaczyna grać z tą pustą książką i nie zamyka książki do końca gry. Możemy myśleć o tym jak o zwykłym silniku, który do końca gry używa książki otwierającej.
Z czasem silnik znalazłby statystycznie najlepsze kontynuacje, ponieważ złe linie będą z czasem gorsze. Ale oczywiście, aby uzyskać dobrą książkę, należy zagrać w wiele gier. Nie wiem ile, ale tyle, ile możemy powiedzieć, niepraktyczne.
Aktualizacja z grudnia 2017 r . : Wydaje mi się, że Alpha Zero udowodniła, że się myliłem, trenując się wystarczająco mocno, aby pokonać jeden z najsilniejszych silników, Sztokfisz, z praktyczną ilością gier.
źródło
Cokolwiek spróbujesz w tej dziedzinie, przeczytaj najpierw historię Turry'ego tutaj: http://waitbutwhy.com/2015/01/artificial-intelligence-revolution-2.html
TL; DR; wersja spojlera na żądanie:
źródło
I jest AlphaZero. Świętuj nową generację silników szachowych
źródło
Od Jak mówimy prawdy, które mogą boleć? autor: Edsger W.Dijkstra podsumowuje błędne założenie leżące u podstaw pytania. Sztuczna inteligencja może być sztuczna, ale nie jest inteligencją w sensie ludzkim.
W 1984 r. W Wykładach Reith dla BBC amerykański filozof John Searle wyjaśnia dokładnie, co jest nie tak z twardą sztuczną inteligencją. Podsumowanie jego argumentacji „zbyt długo, nie słuchałem” brzmi: „Składnia nie jest semantyką”, ale mimo wszystko zachęcam do wysłuchania wykładu 2 „Puszki po piwie i maszyny do mięsa ”.
Kiedy zrozumiesz, co mówili Dijkstra i Searle ponad 30 lat temu, zrozumiesz, co jest nie tak z twoimi pytaniami:
Ludzie mają „wgląd” i mogą się uczyć. Komputery nie mogą. Wasza wioska prymitywnych ludzi przez wieki mogła odtwarzać teorię otwarcia szachów, ale nie komputery.
źródło
Odpowiedzi udziela osoba zadająca pierwotne pytanie cztery lata po pytaniu. Nie zastępuje ani nie zastępuje wcześniej podanych odpowiedzi, ponieważ większość wcześniejszych odpowiedzi jest bardziej interesująca niż ta. Ta odpowiedź może jednak dodać dodatkowy kontekst.
O ile mogę powiedzieć, większość badań nad AI wydaje się domyślnie przyjmować założenie, że myśl i rozum były wyłącznie zjawiskami materialnymi, a przynajmniej że wyniki nieodróżnialne od myśli i rozumu muszą koniecznie być osiągnięte wyłącznie przez procesy materialne. Nie kwestionuję tej przesłanki (w tym przypadku jej nie promuję). Po prostu zauważam, że wydaje się to przesłanką.
A w końcu, w badaniach AI, jak to nie powinno być przesłanką? Badacze AI muszą pracować nad procesami materialnymi, niezależnie od tego, czy będą czy nie.
Uczniowie filozofii realistycznej , przez Dunsa Szkota, św. Tomasza, Arystotelesa i Platona, mieli wiele do powiedzenia na temat teorii umysłu. Przedstawiciele tacy jak Kant mieli dość różne rzeczy do powiedzenia. Badania nad sztuczną inteligencją są prawdopodobnie bliższe Kantowi, ale nie powoduje to, że uczniowie się mylą.
Trzeba przyznać, że istnieje sprzeciwianie się Bogu Luki, które pojawia się w tym momencie w rozmowach tego rodzaju, ale profesjonalny filozof powiedziałby wam, że sprzeciw Bogu Luki atakuje słomianego człowieka, że sprzeciw ten jest użyteczny tylko wobec osób, które nie studiowały żadnej filozofii, a zatem nie wiedzą, o czym mówią. Według Arystotelesa jest to formalny i ostateczny związek przyczynowy, który może mieć związek z kwestią samouczącej się szachowej sztucznej inteligencji. Jednak w kategoriach Arystotelesa badacz sztucznej inteligencji działa wyłącznie z materiałem, a zwłaszcza z wydajnym związkiem przyczynowym(z wyjątkiem być może ukośnie, o ile osobiście trenerzy wprowadzają do systemu elementy formalne i końcowe). Jeśli rozum jest formalny, jeśli myśl jest ostateczna, jeśli chińska sala Searle'a okazuje się ontologiczną niemożliwością (jak to możliwe), może się zdarzyć, że czysto samokształcąca się szachowa sztuczna inteligencja nie może nawet zostać osiągnięta.
Podejrzewam, że czysto self-wyszkolonych szachy AI można rzeczywiście osiągnąć, i będzie, że pod względem Aristotlean, to pytanie okaże się odpowiednio framable w świetle jedynie skuteczny przyczynowości. Ogólnie jestem bardziej sceptyczny wobec silnej sztucznej inteligencji, ale należy to udowodnić z doświadczenia, prawda? Nikt tak naprawdę jeszcze nie wie.
Filozofia przyczynowości i umysłu jest subtelna, pojmowana przez niewielu (i prawdopodobnie przez niewielu, nawet wśród badaczy AI, którzy są bardziej praktycznymi mężczyznami). Jeśli chcesz nauczyć się takiej filozofii, warto się jej nauczyć; ale należy pamiętać, że w Internecie, a nawet często w formie drukowanej, niezwykle łatwo jest znaleźć mylące wyjaśnienia na podstawie nieprzyuczonych nieporozumień. Za moje pieniądze najlepszym nauczycielem wprowadzającym piszącym dziś na ten temat jest Edward Feser, którego książki pozostają w druku w rozsądnych cenach. Możesz dowiedzieć się od niego znacznie więcej.
Jednak wątpliwe jest, aby nawet dr Feser zaryzykował wiarygodną odpowiedź na to pytanie! Odpowiedź pozostaje do udowodnienia w laboratoriach AI.
źródło
Chcę, żeby wydali kod, żebyśmy mogli porozmawiać. Rozwiązanie szachów nie jest łatwe, Alpha nie rozwiąże ich nawet za pół wieku. Co ciekawe, nadal gra w wersji 1.d4. Dlaczego? Ponieważ został przeszkolony w zakresie gier ludzkich, a teoria ludzi daje najwyższy wskaźnik wydajności dla 1.d4. Biedak nie wie, że 1 ... c5 osiąga remis w dokładnie 8 ruchach. Teraz chcą, żebym uwierzył, że Alpha nie użyła symulowanej książki otwierającej ... Mówią, że Alpha świetnie grała w otwarcia. Tak, z pewnymi wyjątkami. 1.d4 z pewnością nie mówi dobrze o poziomie inteligencji osiągniętym przez program. Na szczęście SF jest jeszcze słabsze w fazie otwarcia. :)
źródło