Một AI mới chiến thắng khi đang di chuyển. Một AI tương tự có thể giành chiến thắng tại cờ vua? Nó có thể đạt được tự đào tạo thuần túy?


19

Một trong những câu hỏi phổ biến hơn được hỏi trên trang web này liên quan đến triển vọng của một AI cờ vua hoàn toàn tự đào tạo.

Hôm nay, ChessBase bị phân tâm khỏi phạm vi bảo hiểm của giải đấu Ứng viên FIDE để báo cáo rằng lần đầu tiên AI mới đánh bại một bậc thầy hàng đầu của trò chơi cờ vây khác biệt, đã chống lại AI theo phong cách cờ vua trong nhiều năm. Một bài đọc ban đầu của báo cáo cho thấy AI đi mới không giống như AI của cờ vua, nhưng gần giống với AI chơi trò chơi nói chung (GGP). Tuy nhiên, bài viết của ChessBase không sử dụng thuật ngữ GGP, nhưng dường như nói rằng AI đi có thể giành chiến thắng tại các trò chơi video đơn giản.

Có bất kỳ lý do nào để chiến thắng như vậy AI không thể với những điều chỉnh nhỏ cũng giành chiến thắng tại cờ vua? Nếu vậy, một chương trình AI như vậy hứa hẹn sẽ đạt được sự tự đào tạo thuần túy, một số câu trả lời xuất sắc cho câu hỏi trước đó đã được thảo luận trước đó, điều mà vào thời điểm đó vẫn chưa thể thực hiện được? Tại sao hay tại sao không?

Tôi nghi ngờ rằng chưa có câu trả lời thực sự đầy đủ, đầy đủ thông tin cho câu hỏi của tôi, vì vậy ngay cả một câu trả lời một phần dựa trên chuyên môn liên quan cũng sẽ được đánh giá cao.

Để tham khảo thêm, xem thêm câu hỏi và câu trả lời liên quan này.

CẬP NHẬT

Khi câu hỏi trên được đăng lần đầu năm ngày trước và khi một số câu trả lời hay dưới đây được đưa ra, tin tức đầu tiên liên quan đến chiến thắng của AI đã xuất hiện. Kể từ đó, thông tin bổ sung và bình luận đã xuất hiện.

Đặc biệt thú vị kể từ đó là một cuộc thảo luận bàn tròn năm mặt khá dễ đọc, trong đó Jonathan Schaeffer nhận xét:

Học từ các trò chơi của con người giúp tăng tốc học tập của chương trình. AlphaGo có thể tự học để trở thành một người chơi mạnh mẽ mà không cần sử dụng các trò chơi của con người. Quá trình học tập sẽ chỉ mất nhiều thời gian hơn.

Theo chủ nhà của hội nghị bàn tròn, Schaeffer là "[c] giáo sư khoa học máy tính tại Đại học Alberta và là người đàn ông giải bài kiểm tra"; vì vậy, có lẽ, anh ta có thể đủ điều kiện để bình luận.

Để biết thêm thông tin, đây là hồ sơ của một cuộc thảo luận mở, nhiều người tham gia có vẻ thông tin tốt hơn bình thường. Cuộc thảo luận diễn ra trong trận đấu.

Cập nhật thêm, một năm rưỡi sau: bình luận viên @MarkS. viết:

Đây chỉ là một nhận xét vì đó là về cờ vây, không phải cờ vua, nhưng AlphaGo Zero đã đạt được "sự tự rèn luyện thuần túy" chỉ từ việc được nói ai là người chiến thắng (và không phải là điểm số cuối cùng) và mạnh hơn và hiệu quả hơn rất nhiều so với AI đánh bại Lee Sedol . Để biết thêm thông tin, hãy xem deepmind.com/blog/alphago-zero-learning-scratch


Tôi đề nghị bạn hỏi điều này trên các diễn đàn kỹ thuật hơn. AI là một chủ đề phức tạp, và người ta cần có một chuyên môn quan trọng để hiểu nó. Nhìn vào các câu trả lời ở đây, tôi không chắc rằng bạn có được câu trả lời hợp lý.
Salvador Dali

5
Các câu trả lời được đưa ra được nhiều đánh giá cao. Tôi đã nâng cao hơn một. Nếu tôi chưa chấp nhận bất kỳ, đây không phải là một lời chỉ trích các câu trả lời, nhưng một sự thừa nhận rằng câu hỏi rất khó, và chủ đề rất mới, rằng câu trả lời chấp nhận được có thể chưa có sẵn. Hãy để câu hỏi này mở ra một lúc để xem, sau một thời gian, một câu trả lời không có sẵn ngày hôm nay sẽ có sẵn. Cảm ơn.
thb

1
Đây chỉ là một nhận xét vì đó là về cờ vây, không phải cờ vua, nhưng AlphaGo Zero đã đạt được "sự tự rèn luyện thuần túy" chỉ từ việc được nói ai là người chiến thắng (và không phải là điểm số cuối cùng) và mạnh hơn và hiệu quả hơn rất nhiều so với AI đánh bại Lee Sedol . Để biết thêm thông tin, hãy xem deepmind.com/blog/alphago-zero-learning-scratch
Đánh dấu S.

1
@thb Tôi nghĩ AlphaZero là một AI như vậy.
Harry Weasley

1
Kể từ tháng 12 năm 2017, AlphaZero đã tự dạy mình một phong cách chơi cờ chỉ từ các quy tắc của trò chơi arxiv.org/pdf/1712.01815.pdf và loại bỏ StockFish một cách thuyết phục.
buồm

Câu trả lời:


14

Tốt tốt tốt! DeepMind đã xuất bản một bài báo trong đó họ nói rằng họ đã lập trình và đào tạo một máy tính mạng thần kinh để đánh bại Stockfish.

Với thời gian suy nghĩ 1 phút cho mỗi lần di chuyển, máy tính AlphaZero của họ đánh bại Stockfish bằng +25, = 25, -0 với màu trắng và + 3, = 47,0- là màu đen.

Họ "đào tạo" 3 máy tính riêng biệt để chơi cờ, shogi và Go và đánh bại các đối thủ silicon của họ một cách thuyết phục.

Đây là cách bài viết mô tả đào tạo và đánh giá -

Các trò chơi tự chơi được tạo bằng cách sử dụng các tham số mới nhất cho mạng thần kinh này, bỏ qua bước đánh giá và lựa chọn người chơi tốt nhất.

AlphaGo Zero đã điều chỉnh siêu tham số tìm kiếm của mình bằng cách tối ưu hóa Bayes. Trong AlphaZero, chúng tôi sử dụng lại các siêu tham số tương tự cho tất cả các trò chơi mà không cần điều chỉnh cụ thể cho trò chơi. Ngoại lệ duy nhất là tiếng ồn được thêm vào chính sách trước để đảm bảo thăm dò; con số này được chia tỷ lệ với số lần di chuyển hợp pháp điển hình cho loại trò chơi đó.

Giống như AlphaGo Zero, trạng thái bảng được mã hóa bởi các mặt phẳng không gian chỉ dựa trên các quy tắc cơ bản cho mỗi trò chơi. Các hành động được mã hóa bởi các mặt phẳng không gian hoặc một vectơ phẳng, một lần nữa chỉ dựa trên các quy tắc cơ bản cho mỗi trò chơi (xem Phương thức).

Chúng tôi đã áp dụng thuật toán AlphaZero cho cờ vua, shogi và cả Go. Trừ khi có quy định khác, cùng một cài đặt thuật toán, kiến ​​trúc mạng và siêu tham số đã được sử dụng cho cả ba trò chơi. Chúng tôi đã đào tạo một phiên bản AlphaZero riêng cho mỗi trò chơi. Quá trình đào tạo đã tiến hành 700.000 bước (các lô nhỏ có kích thước 4.096) bắt đầu từ các tham số được khởi tạo ngẫu nhiên, sử dụng 5.000 TPU thế hệ đầu tiên để tạo các trò chơi tự chơi và 64 TPU thế hệ thứ hai để huấn luyện các mạng thần kinh. Thông tin chi tiết về quy trình đào tạo được cung cấp trong Phương pháp.

Hình 1 cho thấy hiệu suất của AlphaZero trong quá trình học tăng cường tự chơi, như là một chức năng của các bước đào tạo, trên thang đo Elo (10). Trong cờ vua, AlphaZero vượt trội so với Stockfish chỉ sau 4 giờ (300k bước); trong shogi, AlphaZero vượt trội so với Elmo sau chưa đầy 2 giờ (110k bước); và trong Go, AlphaZero vượt trội so với AlphaGo Lee (29) sau 8 giờ (165k bước).

Chúng tôi đã đánh giá các phiên bản AlphaZero được huấn luyện đầy đủ so với Stockfish, Elmo và phiên bản trước của AlphaGo Zero (được đào tạo trong 3 ngày) về cờ vua, shogi và Go tương ứng, chơi 100 trận đấu trong thời gian điều khiển giải đấu một phút mỗi lần di chuyển. AlphaZero và AlphaGo Zero trước đó đã sử dụng một máy duy nhất với 4 TPU. Stockfish và Elmo đã chơi ở cấp độ kỹ năng mạnh nhất của họ bằng cách sử dụng 64 luồng và kích thước băm là 1GB. AlphaZero đã đánh bại tất cả các đối thủ một cách thuyết phục, thua các trò chơi số 0 trước Stockfish và tám trò chơi cho Elmo (xem Tài liệu bổ sung cho một số trò chơi ví dụ), cũng như đánh bại phiên bản AlphaGo Zero trước đó (xem Bảng 1).

Máy tính của họ đã sử dụng một dạng chip mới gọi là "TPU" ( Bộ xử lý kéo căng ) do Google phát triển cho các nhiệm vụ học máy.

Họ cũng khẳng định thuật toán tìm kiếm cây Monte Carlo của họ tốt hơn và giống "con người" hơn các thuật toán tìm kiếm alpha-beta truyền thống -

Chúng tôi cũng đã phân tích hiệu suất tương đối của tìm kiếm MCTS của AlphaZero so với các công cụ tìm kiếm alpha-beta hiện đại được sử dụng bởi Stockfish và Elmo. AlphaZero chỉ tìm kiếm 80 nghìn vị trí mỗi giây trong cờ vua và 40 nghìn trong shogi, so với 70 triệu cho Stockfish và 35 triệu cho Elmo. AlphaZero bù đắp cho số lượng đánh giá thấp hơn bằng cách sử dụng mạng lưới thần kinh sâu của nó để tập trung chọn lọc hơn nhiều vào các biến thể hứa hẹn nhất - được cho là một cách tiếp cận giống như con người của Edward để tìm kiếm, như Shannon đề xuất ban đầu. Hình 2 cho thấy khả năng mở rộng của mỗi người chơi liên quan đến thời gian suy nghĩ, được đo theo thang Elo, liên quan đến Stockfish hoặc Elmo với thời gian suy nghĩ 40ms. MCTS của AlphaZero mở rộng hiệu quả hơn với thời gian suy nghĩ so với Stockfish hoặc Elmo,

Dưới đây là một số trò chơi -

Cá kho - AlphaZero, 0-1
1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. d3 Bc5 5. Bxc6 dxc6 6. OO Nd7 7. Nbd2 O-O 8. Qe1 f6 9. Nc4 Rf7 10. a4 Bf8 11. Kh1 Nc5 12. a5 Ne6 . Ncxe5 fxe5 14. Nxe5 Rf6 15. Ng4 Rf7 16. NE5 Re7 17. a6 c5 18. f4 Qe8 19. axb7 Bxb7 20. Qa5 ND4 21. Qc3 Re6 22. be3 RB6 23. Nc4 RB4 24. b3 a5 25. Rxa5 Rxa5 26. Nxa5 Ba6 27. Bxd4 Rxd4 28. Nc4 Rd8 29. g3 h6 30. Qa5 Bc8 31. Qxc7 BH3 32. Rg1 Rd7 33. Qe5 Qxe5 34. Nxe5 Ra7 35. Nc4 g5 36. RC1 Bg7 37. NE5 Ra8 38. NF3 Bb2 39. Rb1 BC3 40. Ng1 Bd7 41. NE2 BD2 42. RD1 be3 43. Kg2 Bg4 44. rE1 BD2 45. Rf1 RA2 46. h3 Bxe2 47. Rf2 Bxf4 48. Rxe2 Be5 49. Rf2 Kg7 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

Trò chơi

Cá kho - AlphaZero, 0-1
1. e4 e5 2. NF3 Nc6 3. Bb5 Nf6 4. d3 Bc5 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. Qc2 Nf8 15. c4 c5 16. d5 b6 17. Nh4 g6 18. Nhf3 Bd7 19. Rad1 Re7 20. h3 Qg7 21. Qc3 Rae8 22. a3 h6 23. Bh4 Rf7 24. Bg3 Rfe7 25. Bh4 Rf7 26. Bg3 A4 27. KH1 Rfe7 28. Bh4 Rf7 29. Bg3 Rfe7 30. Bh4 g5 31. Bg3 Ng6 32. NF1 Rf7 33. NE3 NE7 34. Qd3 h5 35. h4 Nc8 36. RE2 g4 37. ND2 Qh7 38. Kg1 Bf8 39. NB1 ND6 40. Nc3 BH6 41. Rf1 Ra8 42. KH2 Kf8 43. Kg1 Qg6 44. f4 gxf3 45. Rxf3 Bxe3 + 46. Rfxe3 Ke7 47. Be1 Qh7 48. Rg3 RG7 49. Rxg7 + Qxg7 50. RE3 Rg8 51. Rg3 Qh8 52. NB1 Rxg3 53. Bxg3 Qh6 54. ND2 Bg4 55. KH2 Kd7 56. b3 axb3 57. Nxb3 Qg6 58. ND2 BD1 59. NF3 Ba4 60. ND2 Ke7 61 . Bf2 Qg4 62. Qf3 BD1 63. Qxg4 Bxg4 64. a4 Nb7 65. NB1 Na5 66. be3 Nxc4 67. BC1 Bd7 68. Nc3 C6 69. Kg1 cxd5 70. exd5 BF5 71. Kf2 ND6 72. be3 NE4 + 73. Nxe4 Bxe4 74. a5 bxa5 75. Bxc5 + Kd7 76. d6 BF5 77. Ba3 Kc6 78. Ke1 Kd5 79. Kd2 Ke4 80. Bb2 Kf4 81. BC1 Kg3 82. Ke2 a4 83. Kf1 Kxh4 84. Kf2 Kg4 85. Ba3 Bd7 86. Bc1 Kf5 87. Ke3 Ke6 0-1

Trắng: AlphaZero Đen: Cá kho

AlphaZero - Cá kho, 1-0
1. Nf3 Nf6 2. c4 b6 3. d4 e6 4. g3 Ba6 5. Qc2 c5 6. d5 exd5 7. cxd5 Bb7 8. Bg2 Nxd5 9. OO Nc6 10. Rd1 Be7 11. Qf5 Nf6 12. e4 g6 13. Qf4 O-O 14. e5 Nh5 15. Qg4 Re8 16. Nc3 Qb8 17. Nd5 Bf8 18. Bf4 Qc8 19. h3 Ne7 20. Ne3 Bc6 21. Rd6 Ng7 22. Rf6 Qb7 23. Bh6 Nd5 24. Nxd5 Bx 25. RD1 Ne6 26. Bxf8 Rxf8 27. HH4 Bc6 28. Qh6 Rae8 29. Rd6 Bxf3 30. Bxf3 Qa6 31. h4 Qa5 32. RD1 C4 33. Rd5 QE1 + 34. Kg2 C3 35. bxc3 Qxc3 36. h5 Re7 37. BD1 QE1 38. bb3 Rd8 39. Rf3 Qe4 40. Qd2 Qg4 41. BD1 Qe4 42. h6 Nc7 43. Rd6 Ne6 44. bb3 Qxe5 45. Rd5 Qh8 46. Qb4 Nc5 47. Rxc5 bxc5 48. HH4 Rde8 49. Rf6 Rf8 50. Qf4 A5 51. g4 d5 52. Bxd5 Rd7 53. BC4 A4 54. g5 a3 55. Qf3 RC7 56. Qxa3 Qxf6 57. gxf6 Rfc8 58. Qd3 Rf8 59. Qd6 Rfc8 60. a4 1- 0

Chỉ cần đọc giấy. Thực sự tuyệt vời. Tất nhiên, điều này không có nghĩa là bạn không thể xây dựng thứ gì đó mạnh mẽ hơn bằng các kỹ thuật truyền thống kết hợp với AlphaZero, nhưng vẫn ...
BlindKungFuMaster

10

Ok, tôi phải thừa nhận rằng tôi đã sai. Mặc dù tôi sẽ duy trì rằng đó là do kiến ​​thức của ý kiến ​​chuyên gia, chứ không phải sự khó hiểu chung chung: Để trích dẫn bài báo : "Tuy nhiên, các chương trình cờ vua sử dụng MCTS truyền thống yếu hơn nhiều so với các chương trình tìm kiếm alpha-beta, (4, 24); trong khi alpha các chương trình -beta dựa trên các mạng thần kinh trước đây không thể cạnh tranh với các chức năng đánh giá thủ công nhanh hơn. "

Rõ ràng, cờ vua đủ sâu về mặt chiến lược, rằng bạn có thể đưa ra chiến lược cho ai đó, người có thể tính toán cho bạn. Đối với tôi đó là một bất ngờ lớn vì sự phát triển trong các động cơ cờ vua đã đi theo hướng ngược lại. (Rõ ràng vẫn còn một sự cảnh báo nhỏ về việc AlphaZero có thực sự mạnh hơn Stockfish hay không: Stockfish chơi chỉ với 1gb cho hashtables và 64 lõi có thể không thực sự phù hợp với bốn TPU)

Đó cũng là một điều thực sự, thực sự thú vị sẽ xảy ra, bởi vì AlphaZero rất có thể có những thế mạnh rất khác so với các động cơ truyền thống.

Điều đó cũng có nghĩa là tôi cập nhật niềm tin của mình về tầm quan trọng của AlphaGo như một bước đột phá công nghệ rất nhiều. Về cơ bản đập tan shogi, cờ vây và cờ vua với một thiết lập duy nhất là hoàn toàn tuyệt vời, chưa kể hàng tá trò chơi khác có thể được chơi ở cấp độ siêu phàm của AlphaZero.

Có một lời giải thích hay về lý do tại sao MCTS thực sự là một ý tưởng hay ngay cả đối với cờ vua so với tìm kiếm alpha-beta (từ bài báo): "AlphaZero đánh giá các vị trí bằng cách sử dụng xấp xỉ hàm phi tuyến tính dựa trên mạng nơ ron sâu, thay vì tuyến tính Hàm xấp xỉ hàm được sử dụng trong các chương trình cờ thông thường. Điều này cung cấp một biểu diễn mạnh hơn nhiều, nhưng cũng có thể đưa ra các lỗi xấp xỉ giả. MCTS tính trung bình trên các lỗi xấp xỉ này, do đó có xu hướng hủy bỏ khi đánh giá một cây con lớn. Ngược lại, tìm kiếm alpha-beta tính toán một mini-max rõ ràng, trong đó lan truyền các lỗi gần đúng lớn nhất đến gốc của cây con. " (nhấn mạnh bởi tôi)

Đây là câu trả lời cũ của tôi, vẫn chứa một số điểm hợp lệ, mặc dù kết luận được thay thế bởi thực tế.

Trước hết, Alphago không phải là một hệ thống chơi trò chơi nói chung. Đây là một chương trình được thiết kế hoàn toàn để chơi cờ vây và không có gì khác. Tuy nhiên, nó được xây dựng từ các khối xây dựng nhất định có khả năng ứng dụng rộng hơn nhiều, chẳng hạn như mạng nơ ron tích chập , được sử dụng trong nhận dạng hình ảnh và ứng dụng ngay trong chẩn đoán y khoa và học tăng cường được sử dụng để làm chủ các trò chơi Atari được đề cập trong bài viết.

Ngoài ra, các công cụ hiện tại còn "học" bằng cách tự chơi : "Qua đêm, sáu máy tính của Lefler chơi qua hơn 14.000 trò chơi trong mỗi khoảng thời gian tám giờ. mỗi trò chơi được chơi, cơ sở dữ liệu ngày càng sâu hơn. Thậm chí còn có hứng thú thể thao khi xem các máy tính chơi với nhau Kết quả của những cỗ máy lăng xăng bận rộn của Lefler là sức mạnh ngày càng tăng của Komodo. "

Để đi đến phần lớn câu hỏi của bạn:

Có một sự khác biệt quan trọng giữa cờ vua và cờ vây, ít nhất là từ quan điểm của một lập trình viên. Cờ vua là một trò chơi chiến thuật nhiều hơn, trong khi cờ vua là một trò chơi chiến lược nhiều hơn. Điều này có nghĩa là trong tính toán độ sâu cờ vua hơn hẳn đánh giá vị trí. Về cơ bản, đó là cái nhìn sâu sắc quan trọng giúp phân biệt các động cơ "cũ" như Fritz, Shredder, Junior và thế hệ mới hơn như Fruit, Rybka, Houdini, Stockfish, Komodo. Bởi vì ở cuối mỗi dòng, bạn phải đánh giá vị trí và bạn muốn tính toán nhiều dòng và chất lượng đánh giá không quan trọng bằng độ sâu tìm kiếm, công cụ cờ vua có chức năng đánh giá nhanh và nhanh.

Mặt khác, độ phức tạp chiến thuật là quá lớn ngay cả đối với máy tính. Do đó đánh giá vị trí và di chuyển chính xác là chìa khóa. Điều mà Alphago mang đến cho trò chơi là sức mạnh đánh giá này, dựa trên các mạng lưới thần kinh tích chập .

Để cuối cùng đi đến quan điểm của tôi: Trong khi các chức năng đánh giá cờ vua là nạc và nhanh, mạng lưới thần kinh có hàng triệu, đôi khi hàng tỷ thông số. Bởi vì "học" trong ngữ cảnh này có nghĩa là điều chỉnh các tham số, nên có nhiều tiến bộ khả thi hơn cho các chương trình tự học.

Vì vậy, vâng, bạn có thể sử dụng một thiết lập như Alphago để tạo ra một công cụ cờ vua, nhưng nó sẽ không đặc biệt tốt. Việc chạy chức năng đánh giá sẽ tốn rất nhiều thời gian, đến mức bạn phải sử dụng một nhóm gpus khổng lồ để có được độ sâu tìm kiếm cần thiết (đó là những gì Alphago làm). Bạn có thể tạo một chức năng đánh giá rất tốt , nhưng sự đánh đổi tốc độ không xứng đáng.


1
Tôi sẽ không đồng ý với bạn về điều này, bạn có thể sử dụng một thiết lập như Alphago để tạo ra một công cụ cờ vua, nhưng nó sẽ không đặc biệt tốt . Tôi có thể đặt cược điều gì đó vào thực tế là trong vòng chưa đầy một năm, sẽ có một cỗ máy cờ vua phụ thuộc rất nhiều vào NN (rất có thể nó sẽ có một tìm kiếm cây và monte carlo, nhưng điều này không quan trọng), nó sẽ gần với cá kho hiện đại. Và động cơ này sẽ không được bắt nguồn từ siêu tập đoàn (bởi vì sự quan tâm đến cờ vua đã phai nhạt từ các nhà nghiên cứu AI từ lâu), mà là từ một người có sở thích mạnh mẽ.
Salvador Dali

Monte carlo hoàn toàn vô dụng trong cờ vua. Và trong khi NN không vô dụng, chúng chỉ là quá chậm.
BlindKungFuMaster 15/03/2016

3
Tại sao chính xác là MCTS vô dụng? Sẽ rất có ý nghĩa khi bắt đầu chạy từ vị trí bảng hiện tại, chạy 1000 trò chơi với độ sâu nút là 5 và xem nút nào có cơ hội tốt hơn. Điều này rất giống với những gì bạn làm, khi bạn nhìn vào thống kê di chuyển trong cơ sở dữ liệu và thấy rằng sau 14. Kg4 trắng thắng 25%, nhưng với 14. Rb2, nó thắng với 45%. Bạn có bất kỳ bằng chứng về cụm từ hoàn toàn vô dụng .
Salvador Dali

2
MCTS không phải là về sự ngẫu nhiên, nó là về mô phỏng. Sách giới thiệu cơ bản về MC chỉ cho bạn một ví dụ về sự ngẫu nhiên chỉ để chỉ ra điểm. Bạn có thể chơi một vị trí sắc nét nhiều lần với độ sâu nút 6 cực nhanh (và vẫn khá đáng tin cậy), và sẽ cho phép bạn ước tính khoảng di chuyển nào là tốt hơn.
Salvador Dali

1
Tuyên bố của tôi không táo bạo, chúng là chủ đạo. Chỉ cần đọc một số trang web lập trình cờ vua, bạn sẽ tìm thấy ít nhiều các đối số của tôi. MCTS đã được biết đến trong một thập kỷ và trong cờ vua, những thứ khác chỉ hoạt động tốt hơn. Mặt khác, tôi không nghĩ rằng những phát biểu của bạn dựa trên bất cứ điều gì ngoài cảm giác ruột thịt, vì vậy đây sẽ là bình luận cuối cùng của tôi.
BlindKungFuMaster 15/03/2016

5

Có một dự án được gọi là spawkfish cố gắng làm điều này. Nó là một công cụ dựa trên mạng thần kinh với mục đích "là khám phá những tiến bộ gần đây trong máy tính Go có thể được áp dụng cho thế giới Cờ vua máy tính".

Đó là một dự án trẻ và động cơ vẫn còn khá yếu. Chơi nó là thú vị, bởi vì chơi vị trí của nó là tốt hơn so với chiến thuật của nó.


2
Bạn không đùa với câu cuối cùng đó. Tôi mới chơi một vài trò chơi với nó, và mỗi người đều tham gia vào một trò chơi khá cấp độ, chỉ để thấy cá chim ưng đột nhiên thả vật liệu (trong một trường hợp chỉ cần treo một con gà trống ra khỏi hư không). Lạ thật.
ETD

Kể từ khi bạn trả lời, thông tin mới liên quan đến AI đi dường như đã xuất hiện. Tôi đã cập nhật câu hỏi để liên kết đến tin tức, nếu điều này làm bạn quan tâm.
THB

Trang web về cá chim sẻ dường như đã biến mất ...
hkBst

4

Một AI tương tự có thể giành chiến thắng tại cờ vua? Nó có thể đạt được tự đào tạo thuần túy?

Câu trả lời ngắn gọn là không!"

Cờ vua và cờ vây hoàn toàn khác nhau về sự đơn giản tương đối và độ phức tạp tương đối xuất phát từ hình học của chúng và cách bạn giành chiến thắng. Những thứ này kết hợp để tạo ra một chương trình tốt với cái kia vô dụng.

Trong cờ vua bạn giành chiến thắng bằng cách kiểm tra đối thủ, số điểm không được tính. Tất nhiên một đối thủ hợp lý sẽ thường từ chức trước khi bạn giao séc nhưng nguyên tắc là như vậy. Trong chiến thắng, bạn giành chiến thắng bằng cách có nhiều điểm hơn vào cuối trò chơi. Nếu tôi có một vị vua và hoàng hậu và bạn có một vị vua, tân binh và cầm đồ nhưng bạn đã xây dựng một pháo đài thì việc tôi có 9 điểm cho nữ hoàng và bạn chỉ có 6 điểm cho tân binh và cầm đồ của mình. Trò chơi là một trận hòa.

Điều này tạo ra một sự khác biệt cơ bản trong sự phức tạp giữa cờ vua và cờ vây. Trong khi đi, bạn chỉ có thể giữ điểm và bạn sẽ biết ai là người chiến thắng. Trong cờ vua, cách duy nhất bạn có thể biết ai là người chiến thắng là bằng cách tính toán thuần túy. Theo nghĩa này cờ vua phức tạp hơn nhiều so với đi.

Đồng thời, do hình học của hai trò chơi, có nhiều thứ có khả năng lớn hơn trong cờ vua. Theo nghĩa này đi phức tạp hơn nhiều so với cờ vua.

Một chương trình cờ vua hoạt động bằng cách tính toán sức mạnh của tất cả các động tác có thể lên đến một độ sâu nhất định để xác định sức mạnh của nó. Một chương trình cờ vây không thể hoạt động như thế này và chơi bất cứ thứ gì cao cấp hơn cấp độ mới bắt đầu.

Mục đích cơ bản của đi là kiểm soát nhiều lãnh thổ hơn đối thủ của bạn. Vào cuối trò chơi, không có vấn đề gì nếu chênh lệch là 1 viên đá hoặc 100 viên đá, cả hai đều là chiến thắng. Mỗi khi bạn đặt một hòn đá, bạn làm hai việc. Bạn tăng lãnh thổ của mình, tiềm năng hoặc thực tế và bạn giảm đối thủ của mình.

Đôi khi, khi thực tế tăng hoặc giảm trong lãnh thổ, thật dễ dàng để tính toán giá trị của việc di chuyển, nhưng khi có tiềm năng thì rất khó để đánh giá. Là một người chơi cờ vây yếu, tôi hiểu "thực tế" tốt hơn nhiều so với "tiềm năng" và một người chơi mạnh hơn sẽ đánh bại tôi bằng cách xây dựng lãnh thổ tiềm năng lớn hơn nhiều ở trung tâm trong khi tôi xây dựng lãnh thổ thực tế nhỏ hơn ở các cạnh và ở các góc. Người chơi mạnh hơn sẽ xây dựng khả năng phán đoán thông qua trực giác và cảm nhận từ việc chơi nhiều trò chơi và nhận ra cách xây dựng lãnh thổ "tiềm năng".

Trước đó tôi đã nói rằng mỗi khi tôi đặt một hòn đá, nó sẽ làm tăng lãnh thổ của tôi (thực tế hoặc tiềm năng) và làm giảm đối thủ của tôi (thực sự nếu đó là một động thái ngu ngốc thì nó sẽ làm điều ngược lại!). Ở bất kỳ vị trí nào, không phải tất cả các động tác đều giống nhau. Một hòn đá được đặt ở một vị trí có thể có giá trị nhiều hơn hoặc ít hơn nhiều so với một hòn đá được đặt ở vị trí khác.

Thông thường trong một trò chơi sẽ có những "trận đánh" nhỏ nơi người chơi đặt những viên đá của họ gần nhau, đánh dấu lãnh thổ của họ và giới hạn đối thủ của họ. Trong khi đó, có khả năng bắt đầu dàn xếp lãnh thổ trong một phần khác của bảng hoặc chuyển sang một cuộc chiến ở một nơi khác, nơi cả hai người chơi đã có đá.

Điều rất quan trọng trong những tình huống này là biết khi nào nên dừng một cuộc chiến, bởi vì lợi ích tiềm năng đã giảm đi và chuyển sang một cuộc chiến khác hoặc có thể tấn công vào lãnh thổ trinh tiết. Đôi khi điều này phụ thuộc vào tính toán cứng nhưng thường thì nó khó hiểu hơn nhiều và không chịu sự tính toán. Là một người chơi yếu, đây là lúc một người trả tiền mạnh sẽ nghiền nát tôi mọi lúc.

Những gì máy tính làm trong những tình huống này là sử dụng các phương pháp xác suất để tạo ra một số điểm dự kiến ​​cho một động thái cụ thể. Đôi khi giá trị thực tế sẽ trở nên ít hơn một chút, đôi khi nhiều hơn một chút nhưng qua một quãng đường dài, nó thậm chí sẽ ra ít nhiều. Nó sẽ tiếp tục chọn di chuyển với giá trị kỳ vọng cao nhất với kỳ vọng rằng trong một thời gian dài của một trò chơi, các lỗi nhỏ sẽ hủy bỏ và chiến lược của nó sẽ giành chiến thắng.

Đây không phải là một chiến lược nghe có vẻ quen thuộc với người chơi cờ và không phải là một chiến lược sẽ hoạt động trong cờ vua. Đó là một thứ nghe có vẻ quen thuộc với bất kỳ ai theo dõi những gì diễn ra trên thị trường cổ phiếu. Nghe có vẻ rất giống với một thứ gọi là "giao dịch tần số cao" trong đó máy tính sẽ tạo ra hàng ngàn lần đặt cược nhỏ hoặc chỉ đặt cược được đề xuất mỗi giây để "niken và xu" thị trường và thậm chí có thể chuyển nó rất thuận lợi trong khoảng thời gian tính bằng mili giây.

Đã có thị trường tài chính bị chi phối bởi các loại giao dịch thuật toán này cho thấy loại chương trình này đã chiến thắng trong một lĩnh vực sinh lợi hơn nhiều so với một trò chơi cờ.


4
Giao dịch tần số cao không có gì giống như đi chơi. Thuật toán hoàn toàn khác nhau afaik. Ngoài ra, rất nhiều điều thú vị trong câu trả lời của bạn, nhưng thật khó để thấy điểm chính, có thể thêm TL; DR. ;-)
BlindKungFuMaster 14/03/2016

@BlindKungFuMaster Nguyên tắc cơ bản đằng sau HFT và AlphaGo là một xác suất. Lợi nhuận kỳ vọng từ "động thái" này là x%. Về lâu dài, việc tích lũy các nước đi / cược như vậy sẽ giành chiến thắng trong trò chơi cho AlphaGo hoặc kiếm bộn tiền cho các nhà giao dịch HFT. Tuy nhiên, thỉnh thoảng sẽ có một "sự cố chớp nhoáng" hoặc một "động thái kỳ diệu" từ Lee Se-dol, biến một chiến thắng / lợi nhuận thành thua lỗ. Điều đó không có cách nào làm mất hiệu lực lập trình của nó. Nó không được lập trình để tìm ra nước đi tốt nhất tuyệt đối mỗi lần. Nó hơi giống như các giải pháp giả cho vấn đề nhân viên bán hàng du lịch mà cố gắng đạt được trong vòng 5% tốt nhất.
Tháp Brian

Kể từ khi bạn trả lời, thông tin mới liên quan đến AI đi dường như đã xuất hiện. Tôi đã cập nhật câu hỏi để liên kết đến tin tức, nếu điều này làm bạn quan tâm.
thb 18/03/2016

1
@thb, tôi tin rằng câu trả lời này hiện đã hơi lỗi thời với thành công mới của AlphaZero, như trong arxiv.org/abs/1712.01815
Mark S.

@ Sẽ không. Tại sao? Đừng đánh giá người khác theo tiêu chuẩn nông cạn của bạn.
Tháp Brian

4

(Bất cứ ai muốn một cuộc thảo luận kỹ thuật sâu sắc cho AlphaGo đều có thể xem bài đăng của tôi )

Câu trả lời ngắn gọn : Không

Câu trả lời dài :

Trước tiên, chúng ta cần hiểu lý do tại sao Google không triển khai alpha-beta vào AlphaGo. Stockfish và Komodo (và tất cả các động cơ cờ vua) có alpha-beta, tại sao AlphaGo không?

Lý do : không có cách dễ dàng và rẻ tiền nào có thể đánh giá chính xác vị trí Đi một cách tĩnh.

Trong Cờ vua, chúng ta luôn có thể đếm các tài liệu, một cách rất hiệu quả để đánh giá một vị trí tĩnh. Mặc dù không hoàn hảo, nhưng nó rất nhanh và là một proxy rất tốt cho cờ vua.

Tìm kiếm không gian trạng thái với Monte-Carlo là một phương pháp kém hơn so với alpha-beta. Google sẽ triển khai alpha-beta nếu có thể, nhưng họ không thể. Vì vậy, họ buộc phải sử dụng một cái gì đó chậm hơn nhiều.

Động cơ cờ vua sẽ không chơi tốt hơn với Monte-Carlo.


Thời gian để xem xét lại, hoặc có thể chỉ là chưa?
Evargalo

3

Tôi không đồng ý với các câu trả lời khác. Tôi là nhà khoa học máy tính làm việc chuyên nghiệp trong lĩnh vực trí tuệ nhân tạo và cũng là một ứng viên bậc thầy về cờ vua và 3 dan trong igo.

Tôi nghĩ hiện tại vẫn chưa rõ liệu các phương pháp của Deep Mind có thể được áp dụng cho cờ vua hay không, nhưng tôi nghĩ điều đó là có thể.

Hiện tại, các chương trình chơi cờ hàng đầu đang ngày càng dựa vào kinh nghiệm và cố gắng sử dụng kiến ​​trúc AlphaGo cho cờ vua theo một cách nào đó sẽ nằm trong cùng một suy nghĩ.

Một đặc điểm kiến ​​trúc quan trọng của AlphaGo sẽ phải thay đổi là phương pháp xác định các ô vuông chính (hoặc bản đồ nhiệt), đặc biệt cho các trò chơi giống như igo và không thể áp dụng trực tiếp cho cờ vua. Một số tương tự của phương pháp này sẽ phải được phát triển để làm cho kiến ​​trúc AlphaGo phù hợp với cờ vua. Ví dụ, chúng ta có thể có khái niệm "các mảnh khóa" thay vì các ô vuông chính.

Tôi nghĩ lập luận rằng kiến ​​trúc AlphaGo không liên quan đến cờ vua vì cờ vua mang tính chiến thuật hơn không phải là một yêu cầu rất tốt bởi vì cuối cùng cả hai đều có những cây tìm kiếm có hình dạng tương tự nhau mà AlphaGo chắc chắn có thể thích nghi với cờ vua.


Tôi đã cho bạn +1, vì yêu cầu của bạn có thể đúng nhưng chúng tôi không biết chắc chắn cho đến khi ai đó xuất bản một bài báo.
SmallChess

Ừm Bài báo đã tồn tại, như được chỉ ra bởi Brian Towers. Câu trả lời là có.
boson ngưng tụ nhiệt từ

Hình như tôi đã đúng, heh.
Cecil De Vere

@CecilDeVere không đồng ý với các câu trả lời khác, 2 trong số họ chỉ ra câu trả lời đúng. Và không phải bằng cách nói rằng nó không rõ ràng vào lúc này, trong khi rõ ràng rằng câu trả lời là có (không phải là có thể).
boson ngưng tụ nhiệt từ

3

Câu trả lời là Có! Google vừa chứng minh điều này ngày hôm qua, khi AlphaZero đánh bại chương trình cờ vua tốt nhất chỉ sử dụng kiến ​​thức về các quy tắc và tự rèn luyện thuần túy mà không có kiến ​​thức cờ vua nào được sử dụng. Câu trả lời được chấp nhận là sai. Liên kết đến bài viết ở đây: liên kết


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.