Hareket halindeyken yeni bir AI kazanıyor. Benzer bir AI satrançta kazanabilir mi? Kendi kendine antrenman yapabilir mi?


20

Bu sitede sorulan daha popüler sorulardan biri, tamamen kendi kendine eğitilmiş bir satranç AI olasılığı ile ilgili .

Bugün, ChessBase, yeni bir AI'nin ilk kez, satranç tarzı AI'lara yıllarca direnen oldukça farklı bir oyunun önde gelen bir ustasını yendiğini bildirmek için FIDE Adayları turnuvasını kapsama alanından dikkatini dağıttı . Raporun ilk okuması, yeni go AI'nın satranç AI'larından farklı olduğunu, ancak daha çok genel oyun oynayan (GGP) bir AI olduğunu gösteriyor. ChessBase'in makalesinde GGP terimi kullanılmıyor, ancak go AI'nin basit video oyunlarında kazanabileceği söyleniyor .

Böyle bir kazanma yapay zekasının küçük ayarlamalar ile satrançta kazanamamasının bir nedeni var mı? Eğer öyleyse, böyle bir yapay zeka gösterisi, daha önce sorulan birkaç mükemmel cevabın daha önce tartıştığı saf kendi kendine eğitimi elde etmeyi vaat ediyor mu? Neden ya da neden olmasın?

Soruma gerçekten tam, tam olarak bilgilendirilmiş bir yanıtın henüz mevcut olmadığından şüpheleniyorum, bu nedenle ilgili uzmanlığa dayalı kısmi bir cevap bile takdir edilecektir.

Ek referans için ayrıca bu ilgili soru ve cevaplara bakın.

GÜNCELLEME

Yukarıdaki soru ilk olarak beş gün önce gönderildiğinde ve aşağıdaki iyi cevaplardan bazıları verildiğinde, AI'nin zaferiyle ilgili ilk haberler yeni ortaya çıkmıştı. O zamandan beri ek bilgi ve yorumlar ortaya çıktı.

O zamandan beri özellikle ilginç olan, Jonathan Schaeffer'in sözünü ettiği oldukça okunabilir, beş taraflı yuvarlak masa tartışmasıydı :

İnsan oyunlarından öğrenmek, programın öğrenmesini hızlandırmaya yardımcı olur. AlphaGo, insan oyunlarını kullanmadan kendi başına güçlü bir oyuncu olmayı öğrenebilir. Öğrenme süreci daha uzun sürer.

Yuvarlak masa toplantısının ev sahibine göre Schaeffer "Alberta Üniversitesi'nde bilgisayar bilimi profesörü ve damaları çözen adam"; bu nedenle, muhtemelen yorum yapmaya nitelikli olabilir.

Daha fazla bilgi için, katılımcılarının çoğu normalden daha iyi bilgilendirilmiş gibi görünen başka bir açık tartışmanın kaydı . Tartışma maç sırasında gerçekleşti.

Daha bir güncelleme, bir buçuk yıl sonra: commenter @MarkS. yazıyor:

Bu sadece bir yorum çünkü Go ile ilgili değil, Satranç değil, ama AlphaGo Zero sadece kimin kazandığı (ve son skoru değil) söylendiğinden ve Lee Sedol'u yenen AI'dan daha güçlü ve çok daha verimli olduğu için “saf kendi kendine eğitim” aldı . Daha fazla bilgi için, bkz deepmind.com/blog/alphago-zero-learning-scratch


Bunu daha teknik forumlarda sormanızı öneririm. AI karmaşık bir konudur ve kişi bunu anlamak için önemli bir uzmanlığa sahip olmalıdır. Buradaki cevaplara baktığımda, makul bir cevap aldığınızdan emin değilim.
Salvador Dali

5
Verilen cevaplar çok takdir edilmektedir. Birden fazla oy kullandı. Henüz kabul etmediysem, bu cevapların bir eleştirisi değil, sorunun o kadar zor olduğunun ve yeni bir konunun kabul edilebilir cevabın henüz mevcut olmayabileceğinin kabulüdür. Bir süre sonra, bugün daha sonra mevcut olmayan bir cevabın uygun olup olmadığını görmek için bu soruyu bir süre açık bırakalım. Teşekkürler.
thb

1
Bu sadece bir yorum çünkü Go ile ilgili değil, Satranç değil, ama AlphaGo Zero sadece kimin kazandığı (ve son skoru değil) söylendiğinden ve Lee Sedol'u yenen AI'dan daha güçlü ve çok daha verimli olduğu için “saf kendi kendine eğitim” aldı . Daha fazla bilgi için bkz. Deepmind.com/blog/alphago-zero-learning-scratch
Mark

1
@ thb AlphaZero'nun böyle bir yapay zeka olduğunu düşünüyorum.
Harry Weasley

1
Aralık 2017 itibariyle AlphaZero, sadece arxiv.org/pdf/1712.01815.pdf oyununun kurallarından kendine bir satranç tarzı öğretti ve StockFish'i inandırıcı bir şekilde reddetti.
saille

Yanıtlar:


14

İyi iyi iyi! DeepMind, Stockish'i yenmek için bir sinir ağı bilgisayarını programladıklarını ve eğittiklerini söyledikleri bir makale yayınladı .

Hareket başına 1 dakikalık düşünme süresi ile AlphaZero bilgisayar vuruşları +25, = 25, -0 beyaz ve + 3, = 47,0- siyah olarak yendi.

Satranç, shogi ve Go oynamak ve silikon rakiplerini ikna edici bir şekilde yenmek için 3 ayrı bilgisayarı "eğitdiler".

Makalede eğitim ve değerlendirme şu şekilde açıklanmaktadır -

Kendi kendine oyun oyunları, bu sinir ağı için en son parametreler kullanılarak, değerlendirme adımını ve en iyi oyuncunun seçimini atlayarak üretilir.

AlphaGo Zero Bayesian optimizasyonu ile aramanın hiper parametresini ayarladı. AlphaZero'da, oyuna özgü ayar yapmadan tüm oyunlar için aynı hiper parametreleri yeniden kullanıyoruz. Tek istisna, araştırmayı sağlamak için önceki politikaya eklenen gürültüdür; bu, o oyun türü için tipik yasal hamle sayısı ile orantılı olarak ölçeklendirilir.

AlphaGo Zero gibi, tahta durumu da sadece her oyun için temel kurallara dayalı olarak uzaysal düzlemlerle kodlanır. İşlemler, yine sadece her oyun için temel kurallara dayanarak, uzamsal düzlemler veya düz bir vektörle kodlanır (bkz. Yöntemler).

AlphaZero algoritmasını satranç, shogi ve Go'ya uyguladık. Aksi belirtilmedikçe, üç oyun için de aynı algoritma ayarları, ağ mimarisi ve hiper parametreler kullanılmıştır. Her oyun için ayrı bir AlphaZero örneği eğittik. Eğitim, rastgele başlatılan parametrelerden başlayarak 700.000 adım (4.096 büyüklüğünde mini partiler), kendi kendine oyun oyunları oluşturmak için 5.000 birinci nesil TPU ve sinir ağlarını eğitmek için 64 ikinci nesil TPU kullanarak devam etti. Eğitim prosedürünün diğer detayları Yöntemlerde verilmektedir.

Şekil 1, EloZero'nun kendi kendine oynama güçlendirme öğrenimi sırasında, eğitim adımlarının bir fonksiyonu olarak Elo ölçeğinde performansını göstermektedir (10). Satrançta, AlphaZero sadece 4 saat sonra (300 bin adım) Stockish'ten daha iyi performans gösterdi; shogi'de, AlphaZero 2 saatten kısa bir süre sonra Elmo'dan daha iyi performans gösterdi (110 bin adım); ve Go'da, AlphaZero 8 saat sonra (165 bin adım) AlphaGo Lee'den (29) daha iyi performans gösterdi.

AlphaZero'nun tamamen eğitimli örneklerini sırasıyla Stockish, Elmo ve satranç, shogi ve Go'daki AlphaGo Zero'nun önceki sürümüne (3 gün boyunca eğitilmiş) karşı, her hareket için bir dakika süren turnuva süresi kontrollerinde 100 oyun maçı oynadık. AlphaZero ve önceki AlphaGo Zero 4 TPU'lu tek bir makine kullandı. Stockish ve Elmo, 64 iş parçacığı ve 1GB karma boyutuyla en güçlü yetenek seviyelerinde oynadı. AlphaZero, tüm rakipleri yenerek yenildi, Stockish'e sıfır oyun ve Elmo'ya sekiz oyun kaybetti (birkaç örnek oyun için Ek Malzemeye bakın) ve AlphaGo Zero'nun önceki sürümünü yenerek (bkz. Tablo 1).

Bilgisayarları , Google tarafından makine öğrenimi görevleri için geliştirilen "TPU" ( Tensör İşlem Birimi ) adı verilen yeni bir çip biçimi kullandı .

Ayrıca Monte Carlo ağaç arama algoritmalarının geleneksel alfa-beta arama algoritmalarından daha iyi ve daha "insan gibi" olduğunu iddia ediyorlar -

Ayrıca AlphaZero'nun MCTS aramasının Stockish ve Elmo tarafından kullanılan son teknoloji alfa-beta arama motorlarına kıyasla göreceli performansını analiz ettik. AlphaZero, satrançta saniyede sadece 80 bin pozisyon ve shogi'de 40 bin pozisyon arar, Stockish için 70 milyon ve Elmo için 35 milyon. AlphaZero, en sinir bozucu varyasyonlara çok daha seçici bir şekilde odaklanmak için derin sinir ağını kullanarak daha az sayıda değerlendirmeyi telafi eder - muhtemelen Shannon'un önerdiği gibi arama için daha “insan benzeri” bir yaklaşım. Şekil 2, 40ms düşünme süresi ile Stockish veya Elmo'ya göre Elo ölçeğinde ölçülen her oyuncunun düşünme süresine göre ölçeklenebilirliğini göstermektedir. AlphaZero'nun MCTS'si düşünme süresiyle Stockish veya Elmo'dan daha etkili bir şekilde ölçeklendi,

İşte oyunlardan bazıları -

Stoklama - AlphaZero, 0-1
1. e4 e5 2. Af3 Piyon sadece kareler Ac6 3. BB5 AF6 4. d3 Fc5 5. Bxc6 dxc6 6. OO Nd7 7. Nbd2 OO 8. Qe1 f6 9. NC4 Rf7 10. a4 Ff8 11. kh1 NC5 12. a5 Ne6 13. Ncxe5 fxe5 14. Nxe5 Rf6 15. Ng4 Rf7 16. Ne5 Re7 17. a6 c5 18. f4 Qe8 19. axb7 Fxb7 20. Qa5 Nd4 21. Vc3 Re6 22. Be3 Rb6 23. Nc4 Rb4 24. b3 a5 25. Kxa5 Kxa5 26. Kxa5 Ba6 27. Kxd4 Kxd4 28. Nc4 Rd8 29. g3 h6 30. Qa5 Fc8 31. Vxc7 Bh3 32. Kg1 Rd7 33. Ve5 Qxe5 34. Nxe5 Ra7 35. Nc4 g5 36. Rc Bg 37. NE5 Ra8 38. Af3 Piyon sadece kareler Bb2 39. RB1 Bc3 40. NG1 BD7 41. Ne2 Bd2 42. Rd1 Be3 43. Kg2 Fg4 44. Re1 Bd2 45. Rf1 Ra2 46. H3 Bxe2 47. Rf2 Bxf4 48. Rxe2 BE5 49. Rf2 Şg7 50. g4 BD4 51. Re2 Kf6 52. e5 + Bxe5 53. KF3 Ra1 54. Rf2 Re1 55. Kg2 + BF4 56. C3 Rc1 57. d4 Rxc3 58. dxc5 Rxc5 59. b4 Rc3 60. H4 Ke5 61 hxg5 hxg5 62. Re2 + Kf6 63. Kf2 Be5 64. Ra2 Rc4 65. Ra6 + Ke7 66. Ra5 Ke6 67. Ra6 + Bd6 0-1

oyun

Stoklama - AlphaZero, 0-1
1. e4 e5 2. Af3 Piyon sadece kareler Ac6 3. BB5 AF6 4. d3 Fc5 5. Bxc6 dxc6 6. OO Nd7 7. C3 OO 8. d4 Bd6 9. BG5 Qe8 10. Re1 f6 11. BH4 Qf7 12. Nbd2 A5 13. Bg3 Re8 14. Vc2 Nf8 15. c4 c5 16. d5 b6 17. Nh4 g6 18. Nhf3 Bd7 19. Rad1 Re7 20. h3 Vg7 21. Vc3 Rae8 22. a3 h6 23. Bh4 Rf7 24. Bg3 Rfe7 25. Fh4 Rf7 26. Fg3 a4 27. Kh1 Rfe7 28. Fh4 Rf7 29. Fg3 Rfe7 30. Fh4 g5 31. Fg3 Ng6 32. Nf1 Rf7 33. Ne3 Ne7 34. Vd3 h5 35. h4 Nc8 36. Re2 g4 37. Nd2 Qh7 38. kG1 Ff8 39. Ab1 ND6 40. nC3 BH6 41. Rf1 Ra8 42. KH2 Kf8 43. kG1 Qg6 44. f4 gxf3 45. Rxf3 Bxe3 + 46 Rfxe3 Şe7 47. BE1 Qh7 48. RG3 RG7 49. Rxg7 + Qxg7 50. RE3 RG8 51. RG3 Qh8 52. Ab1 Rxg3 53. Bxg3 Qh6 54. Nd2 Fg4 55. KH2 KD7 56. b3 axb3 57. Nxb3 Qg6 58. Nd2 BD1 59. Af3 Piyon sadece kareler Ba4 60. Nd2 Şe7 61 Bf2 Vg4 62. Vf3 Bd1 63. Vxg4 Fxg4 64. a4 Nb7 65. Nb1 Na5 66. Be3 Nxc4 67. Fc1 Bd7 68. Ac3 c6 69. Şg1 cxd5 70. exd5 Ff5 71. Kf2 Nd6. 72. Be3 Ne4 + 73. Nxe4 Fxe4 74. a5 bxa5 75. Fxc5 + Şd7 76. d6 Ff5 77. Ba3 Şc6 78. Ke1 Şd5 79. Şd2 Ke4 80. Şb2 Şf4 81. Şc1 Şg3 82. Ke2 Şd5 79. Şd2 Ke4 80. Şb2 Şf4 81. Şc1 Şg3 82. Ke2 a4 83. Şf1 Şxh4 84. Şf2 Şg4 85. Ba3 Bd7 86. Fc1 Kf5 87. Ke3 Ke6 0-1

Beyaz: AlphaZero Black: Stoklu

AlphaZero - Stokça, 1-0
1. Af3 Piyon sadece kareler AF6 2. C4 B6 3. d4 e6 4. g3 Ba6 5. QC2 C5 6. d5 exd5 7. cxd5 Bb7 8. BG2 Nxd5 9. OO Ac6 10. Rd1 Fe7 11. Qf5 AF6 12. e4 g6 13. Vf4 O-O 14. e5 Nh5 15. Vg4 Re8 16. Nc3 Qb8 17. Nd5 Bf8 18. Bf4 Qc8 19. h3 Ne7 20. Ne3 Fc6 21. Rd6 Ng7 22. Rf6 Qb7 23. Fh6 Nd5 24. Nxd5 Fxd5 25. Rd1 Ne6 26. Fxf8 Kxf8 27. Vh4 Fc6 28. Vh6 Rae8 29. Rd6 Fxf3 30. Fxf3 Qa6 31. h4 Qa5 32. Rd1 c4 33. Rd5 Ve1 + 34. Şg2 c3 35. bxc3 Vxc3 36. h5 Re7 37. Fd1 Qe1 38. Fb3 Rd8 39. Ff3 Qe4 40. Qd2 Qg4 41. Fd1 Qe4 42. h6 Nc7 43. Rd6 Ne6 44. Fb3 Qxe5 45. Rd5 Vh8 46. ​​Vb4 Nc5 47. Rxc5 bxc5 48. Vh4 Kg8 49. Kf6 Kf8 50. Kf4 a5 51. g4 d5 52. Fxd5 Rd7 53. Fc4 a4 54. g5 a3 55. Vf3 Kf7 56. Vxa3 Vxf6 57. gxf6 Rfc8 58. Vd3 Rf8 59. Vd6 Rfc8 60. a4 1- 0

Sadece kağıdı oku. Gerçekten şaşırtıcı. Tabii ki bu, AlphaZero ile birlikte geleneksel tekniklerle daha güçlü bir şey inşa edemeyeceğiniz anlamına gelmez, ancak yine de ...
BlindKungFuMaster

10

Tamam, yanlış olduğumu itiraf etmeliyim. Bahsetmek gerekirse: Ben uzman görüşü değil, genel obtuseness bilgisine kaynaklandığını iddia ediyorum rağmen kağıt : "Ancak, geleneksel MCTS kullanarak satranç programları, (4, 24) alfa-beta arama programlarından çok daha zayıf idi; alfa iken - Sinir ağlarına dayanan beta programları daha önce daha hızlı, el işi değerlendirme işlevleriyle rekabet edememişti. "

Görünüşe göre, satranç stratejik olarak yeterince derin, sizi hesaplayabilecek birisini strateji dışı bırakabilirsiniz. Bana göre bu büyük bir sürpriz çünkü satranç motorlarındaki gelişmeler ters yöndeydi. (Görünüşe göre AlphaZero'nun Stockish'ten gerçekten daha güçlü olup olmadığı konusunda hala hafif bir uyarı var: Stokhlar için sadece 1 gb ile oynandı ve 64 çekirdek dört TPU için gerçekten bir eşleşme olmayabilir)

Ayrıca, gerçekten, gerçekten heyecan verici bir şey çünkü AlphaZero'nun geleneksel motorlardan çok farklı güçlü yönleri var.

Ayrıca, AlphaGo'nun teknolojik bir atılım olarak önemine olan inancımı çok fazla güncellediğim anlamına da geliyor. Temel olarak, tek bir kurulumla shogi, Go ve satranç parçalamak tamamen şaşırtıcı, AlphaZero tarafından muhtemelen insanüstü bir seviyede oynanabilecek düzinelerce diğer oyundan bahsetmiyoruz.

MCTS'nin alfa-beta aramasına kıyasla (kağıttan) MCTS'nin neden satranç için gerçekten iyi bir fikir olduğuna dair güzel bir açıklama var: "AlphaZero, pozisyonları doğrusaldan ziyade derin bir sinir ağına dayalı doğrusal olmayan fonksiyon yaklaşımı kullanarak değerlendiriyor satranç programlarında kullanılan fonksiyon yaklaşımı Bu çok daha güçlü bir gösterim sağlar, ancak aynı zamanda sahte yaklaşım hataları da oluşturabilir MCTS, bu yaklaşım hatalarının ortalamalarını alır ve bu nedenle büyük bir alt ağacı değerlendirirken iptal etme eğilimindedir. en büyük yaklaşık hataları alt ağacın köküne geçiren açık bir mini-max hesaplar . " (benim tarafımdan vurgu)

İşte gerçek cevabın yerini almış olmasına rağmen, hala geçerli bazı noktalar içeren eski cevabım.

Her şeyden önce Alphago genel bir oyun sistemi değildir. Sadece gitmek ve başka bir şey oynamak için tasarlanmış bir programdır. Bununla birlikte , görüntü tanımada kullanılan ve tıbbi teşhislerde hemen uygulanması olan evrişimli sinir ağları ve daha önce bahsedilen Atari oyunlarında ustalaşmak için kullanılan takviye öğrenimi gibi çok daha geniş uygulanabilirliğe sahip bazı yapı taşlarından inşa edilmiştir . makale.

Ayrıca, şu anki motorlar kendi kendine oynayarak “öğreniyor” : “Gecede, Lefler'in altı bilgisayarı sekiz saatlik bir süre boyunca her biri 14.000'den fazla oyun oynuyor.“ Altı makine 14.000 kez oyun çok oyun ”diyor. oynanan her oyun, veritabanı derinleşiyor ve zenginleşiyor. Bilgisayarların birbirlerine karşı oynamasını izlemekle bile sportif bir ilgi var Lefler'in dikkatlice dönen makinelerinin sonucu, Komodo'nun giderek artan kahramanlığı. "

Sorunuzun büyük kısmına gelmek için:

En azından bir programcının bakış açısından satranç ve go arasında önemli bir fark vardır. Satranç daha taktiksel bir oyundur, oysa gitmek daha stratejik bir oyundur. Bu, satranç hesaplama derinliğinde konumsal değerlendirmeyi gölgede bıraktığı anlamına gelir. Temelde Fritz, Shredder, Junior gibi "eski" motorları ve Fruit, Rybka, Houdini, Stockish, Komodo gibi yeni nesilleri ayıran temel öngörü budur. Çünkü her satırın sonunda pozisyonu değerlendirmek zorundasınız ve çok fazla satır hesaplamak istiyorsunuz ve değerlendirmenin kalitesi arama derinliği kadar önemli değil, satranç motorları yalın ve hızlı değerlendirme fonksiyonlarına sahip.

Diğer taraftan taktik karmaşıklığı bilgisayarlar için bile çok büyük. Sonuç olarak pozisyonları ve hareketleri doğru bir şekilde değerlendirmek çok önemlidir. Alphago'nun oyuna yeni getirdiği şey, evrimsel sinir ağlarına dayanan bu değerlendirme gücüdür .

Sonunda benim açımdan: Satranç değerlendirme işlevleri yalın ve hızlı olsa da, sinir ağlarının milyonlarca, bazen milyarlarca parametresi vardır. Bu bağlamda “öğrenme” parametrelerin değiştirilmesi anlamına geldiğinden, kendi kendine öğrenme programları için çok daha fazla ilerleme vardır.

Yani, evet, bir satranç motoru oluşturmak için Alphago gibi bir kurulum kullanabilirsiniz, ancak bu özellikle iyi olmaz. Değerlendirme işlevini çalıştırmak o kadar zaman alacak ki, gerekli arama derinliklerine (Alphago'nun yaptığı şey) ulaşmak için büyük bir gpus kümesi kullanmanız gerekecektir. Çok iyi bir değerlendirme fonksiyonu yaratabilirsiniz , ancak hız dengelemesi buna değmez.


1
Bu konuda size katılmıyorum, bir satranç motoru oluşturmak için Alphago gibi bir kurulum kullanabilirsiniz, ama özellikle iyi olmazdı . Bir yıldan az bir sürede, NN'ye büyük ölçüde dayanan bir satranç motoru olacağına (muhtemelen büyük olasılıkla bir ağaç aramasına ve monte carlo'ya sahip olacağı, ancak bunun önemli olmadığı) bir şey bahse girebilirim. en gelişmiş stok balığı. Ve bu motor süper şirketlerden kaynaklanmayacak (çünkü satranç ilgisi AI araştırmacılarından uzun zaman önce kayboldu), daha ziyade güçlü bir hobistten kaynaklanacaktır.
Salvador Dali

Monte carlo satrançta tamamen işe yaramaz. NN'ler işe yaramaz olmasa da, çok yavaştırlar.
BlindKungFuMaster

3
MCTS neden tam olarak işe yaramaz? Mevcut bir tahta konumundan başlamak, 5 düğüm derinliğine sahip 1000 oyun çalıştırmak ve hangi düğümün daha iyi bir şansa sahip olduğunu görmek çok mantıklı. Bu, veritabanınızdaki hareketlerin istatistiklerine baktığınızda ve 14'ten sonra Kg4 beyazının% 25 kazandığını, ancak 14. Rb2 ile% 45 ile kazandığını gördüğünüzde, yaptığınıza çok benzer. Tamamen işe yaramaz ifadenin kanıtınız var mı?
Salvador Dali

2
MCTS rastgele değil, simülasyonla ilgili. MC ile ilgili temel tanıtım kitapları size sadece noktayı göstermek için rastgelelik örneği göstermektedir. Süper hızlı (ve yine de oldukça güvenilir) 6 düğüm derinliği ile birçok kez keskin bir pozisyon oynayabilirsiniz ve hangi hareketin daha iyi olduğunu yaklaşık olarak tahmin etmenizi sağlar.
Salvador Dali

1
İfadelerim kalın değil, ana akım. Sadece bazı satranç programlama sitelerini okuyun, az çok argümanlarımı bulacaksınız. MCTS on yıldır biliniyor ve satrançta diğer şeyler daha iyi çalışıyor. Öte yandan, ifadelerinizin bağırsak hissinden başka bir şeye dayandığını düşünmüyorum, bu yüzden bu benim son yorumum olacak.
BlindKungFuMaster

5

Sadece bunu yapmaya çalışan spawkfish adlı bir proje var . "Bilgisayarlı Go bilgisayarındaki son gelişmelerin bilgisayar satrancı dünyasına nasıl uygulanabileceğini araştırmak" olan sinir ağı tabanlı bir motordur.

Bu genç bir proje ve motor hala oldukça zayıf. Oynamak ilginç, çünkü konumsal oyunu taktiklerinden daha iyi.


2
O son cümle ile şaka yapmıyordun. Sadece ona karşı birkaç oyun oynadım ve her biri oldukça spa oyununa girdi, sadece spawkfish'in aniden malzeme düşürdüğünü gördüm (bir durumda sadece bir kaleyi asmak için). Garip.
ETD

Yanıtladığınızdan bu yana, yapay zeka ile ilgili yeni bilgiler ortaya çıktı. İlginizi çekiyorsa, haberlere bağlanmak için soruyu güncelledim.
thb

Spawkfish için web sitesi kayboldu gibi görünüyor ...
hkBst

4

Benzer bir AI satrançta kazanabilir mi? Kendi kendine antrenman yapabilir mi?

Kısa cevap "Hayır!"

Satranç ve go, geometrilerinden ve nasıl kazandığınızdan kaynaklanan göreli basitliği ve göreceli karmaşıklığı bakımından kökten farklıdır. Bunlar, birinde diğerinde yararsız olan bir program yapmak için birleşir.

Satrançta rakibi kontrol ederek kazanırsınız, puanlar sayılmaz. Tabii ki mantıklı bir rakip şah matını teslim etmeden önce istifa eder ancak prensip aynıdır. Oyunun sonunda daha fazla puan alarak kazanırsınız. Eğer bir kral ve kraliçem varsa ve bir kral, kale ve piyonunuz varsa, ancak bir kale inşa ettiyseniz, kraliçe için 9 puanım olması ve kale ve piyonunuz için sadece 6 puanınız olması önemli değildir. Oyun berabere.

Bu satranç ve go arasındaki karmaşıklıkta temel bir fark yaratır. Oyunda sadece puan tutabilirsiniz ve kimin kazandığını bileceksiniz. Satrançta kimin kazandığını bilmenin tek yolu saf hesaplamadır. Bu anlamda satranç gitmekten çok daha karmaşıktır.

Aynı zamanda, iki oyunun geometrisi nedeniyle, satrançta olduğundan daha fazla olasılık olasılığı vardır. Bu anlamda git satrançtan çok daha karmaşıktır.

Bir satranç programı, gücünü belirleyen belirli bir derinliğe kadar olası tüm hareketlerin kaba kuvvet hesaplamasıyla çalışır. Bir go programı bu şekilde çalışamaz ve başlangıç ​​seviyesinden daha gelişmiş bir şey oynamaz.

Go'nun temel amacı rakibinizden daha fazla bölgeyi kontrol etmektir. Bir oyunun sonunda, farkın 1 taş mı yoksa 100 taş mı olduğu her ikisi de kazanır. Her taş yerleştirdiğinizde iki şey yaparsınız. Potansiyel veya gerçek bölgenizi artırırsınız ve rakibinizin topraklarını azaltırsınız.

Bazen, bölgede gerçek bir artış veya azalma olduğunda, hareketin değerini hesaplamak kolaydır, ancak potansiyel olduğunda değerlendirmek çok zordur. Zayıf bir go oyuncusu olarak "gerçek" i "potansiyel" den çok daha iyi anlıyorum ve daha güçlü bir oyuncu, kenarlarda ve köşelerde daha küçük gerçek bölge inşa ederken merkezde çok daha fazla potansiyel bölge inşa ederek beni yenecek. Daha güçlü oyuncu, sezgi yoluyla yargılama ve çok sayıda oyun oynamaktan ve "potansiyel" toprakların nasıl oluşturulacağını tanımaktan faydalanacaktır.

Daha önce bir taş yerleştirdiğimde topraklarımı artırdığını (gerçek veya potansiyel) ve rakibimin azaldığını (aslında aptalca bir hareket ise tam tersini yapacak!) Dedim. Herhangi bir pozisyonda tüm hareketler aynı değildir. Bir pozisyona yerleştirilmiş bir taş, başka bir pozisyona yerleştirilmiş bir taştan çok daha fazla veya çok daha az değerde olabilir.

Tipik olarak bir oyunda, oyuncuların taşlarını birbirine yakın yerleştirdikleri, bölgelerini işaretledikleri ve rakiplerinin sınırlarını belirlediği küçük "kavgalar" olacaktır. Bu arada, tahtanın başka bir yerinde bölge belirlemeye başlama veya her iki oyuncunun zaten taşlarının olduğu başka bir yerde kavgaya geçme olasılıkları var.

Bu durumlarda çok önemli olan, bir kavganın ne zaman durdurulacağını bilmek, çünkü potansiyel kazanımlar azaldı ve ya başka bir kavgaya geçme ya da belki de bakir bölgeye çarpma. Bazen bu zor hesaplamaya bağlıdır, ancak çoğu zaman çok daha belirsizdir ve hesaplamaya tabi değildir. Zayıf bir oyuncu olarak, güçlü bir ödeyenin her seferinde beni ezer.

Bilgisayarın bu durumlarda yaptığı şey, belirli bir hamle için beklenen bir skor oluşturmak için olasılıklı yöntemler kullanmaktır. Bazen gerçek değer biraz daha az, bazen biraz daha fazla olur, ancak uzun yol boyunca daha fazla veya daha az ortaya çıkar. Bir oyunun uzun mesafesinin üzerinde küçük hataların iptal edileceği ve stratejisinin kazanacağı beklentisiyle, beklenen en yüksek değere sahip hareketi seçmeye devam edecek.

Bu, satranç oyuncularına tanıdık gelen bir strateji değildir ve satrançta çalışacak bir strateji değildir. Hisse senedi piyasalarında olanları takip eden herkese tanıdık gelen bir şeydir. Bilgisayarların binlerce küçük bahis yapacağı ya da her saniye piyasaya "nikel ve dime" yapmak ve belki de milisaniye dönemlerinde lehine çok az hareket ettirmek için önerilen bahisleri "yüksek frekanslı ticaret" olarak adlandırılan bir şeye çok benziyor.

Zaten finansal piyasalar, bu tür bir programın bir masa oyunundan çok daha kazançlı bir alanda zaten zafer kazandığını gösteren bu tür algoritmik ticaretin hakimiyetindedir.


4
Yüksek frekanslı ticaret, oynamak gibi bir şey değildir. Tamamen farklı algoritmalar afaik. Ayrıca, cevabınızda çok ilginç şeyler var, ama ana noktayı görmek biraz zor, belki bir TL ekleyin; DR. ;-)
BlindKungFuMaster

@BlindKungFuMaster HFT ve AlphaGo'nun altında yatan prensip olasılıklı bir prensiptir. Bu "hamle" den beklenen kazanç% x. Uzun vadede bu tür hamlelerin / bahislerin birikimi AlphaGo için oyunu kazanacak veya HFT yatırımcıları için bir servet kazanacak. Bununla birlikte, her seferinde bir kazanç / karı zarara dönüştüren Lee Se-dol'dan bir "flash crash" veya "wonder move" olacak. Bu hiçbir şekilde programlamasını geçersiz kılmaz. Her seferinde mutlak en iyi hamleyi bulmak için programlanmamıştır. Biraz en iyi% 5 içinde almaya çalışan seyahat satıcısı sorunu için sözde çözümler gibi.
Brian Towers

Yanıtladığınızdan bu yana, yapay zeka ile ilgili yeni bilgiler ortaya çıktı. İlginizi çekiyorsa, haberlere bağlanmak için soruyu güncelledim.
thb


Neden? Başkalarını kendi sığ standartlarınıza göre yargılamayın.
Brian Towers

4

(Herkes nasıl AlphaGo için derin teknik tartışma benim bakabilirsiniz istediği mesaja )

Kısa cevap : Hayır

Uzun cevap :

İlk olarak, Google'ın neden AlphaGo'ya alfa beta uygulamadığını anlamamız gerekiyor. Stockish ve Komodo'nun (ve tüm satranç motorlarının) alfa-betaları var, neden AlphaGo olmasın?

Sebep : Go konumunu statik olarak doğru şekilde değerlendirmenin kolay ve ucuz bir yolu yoktur.

Satranç'ta her zaman malzemeleri sayabiliriz, bir konumu statik olarak değerlendirmenin çok etkili bir yoludur. Mükemmel olmasa da, satranç için çok hızlı ve çok iyi bir vekil.

Monte-Carlo ile durum alanını aramak, alfa-beta için daha düşük bir yöntemdir. Google, yapabilirlerse alfa-beta uygulardı, ancak yapamazlardı. Böylece, çok daha yavaş bir şey kullanmaya zorlandılar.

Satranç motoru Monte-Carlo ile daha iyi oynamazdı.


Tekrar gözden geçirme zamanı, ya da henüz değil mi?
Evargalo

3

Diğer cevaplara katılmıyorum. Yapay zeka alanında profesyonel olarak çalışan bilgisayar bilimciyim ve satrançta aday usta ve igo'da 3 dan.

Şu anda Deep Mind'in yöntemlerinin satrançta uygulanıp uygulanamayacağı belli değil, ama bunun mümkün olduğunu düşünüyorum.

Şu anda, en iyi satranç oynama programları gitgide daha fazla sezgisel tarama kullanıyor ve AlphaGo mimarisini satranç için kullanmaya çalışıyor, bazı açılardan aynı düşünce tarzında olacaktı.

AlphaGo'nun değiştirilmesi gereken önemli bir mimari özelliği, igo benzeri oyunlara özgü olan ve doğrudan satranç için geçerli olmayan anahtar kareleri (veya ısı haritalarını) tanımlama yöntemidir. AlphaGo mimarisini satrançla ilgili hale getirmek için bu yöntemin bazı analoglarının geliştirilmesi gerekir. Örneğin, anahtar kareler yerine "anahtar parçalar" kavramına sahip olabiliriz.

Bence AlphaGo mimarisinin satrançla ilgili olmadığı iddiası satranç daha taktiksel olduğu için çok iyi bir iddia değil çünkü sonuçta her ikisi de AlphaGo'nun satranca kesinlikle uyarlanabileceği kadar benzer arama ağaçlarına sahip.


İddialarınız doğru olabileceğinden size +1 verdim, ancak birisi bir makale yayınlayana kadar emin değiliz.
SmallChess

Ah? Makale, Brian Towers'ın işaret ettiği gibi zaten var. Cevap evet.
termomanyetik yoğunlaştırılmış bozon

Haklıydım gibi görünüyor, heh.
Cecil De Vere

@CecilDeDiğer cevaplara katılmıyorum, 2 tanesi doğru cevabı gösterdi. Ve şu anda belirsiz olduğunu söyleyerek değil, bu cevabın evet (belki değil) olduğu açıktır.
termomanyetik yoğunlaştırılmış bozon

3

Cevap Evet! Google, AlphaZero'nun sadece kurallar hakkındaki bilgileri ve hiçbir insan satranç bilgisi olmadan saf kendi kendine eğitimi kullanarak en iyi satranç programını geçtiği dün bunu kanıtladı. Kabul edilen cevap yanlış. Makaleye link burada: link


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.