Vì sao máy cờ trên trình duyệt hạ được kiện tướng, còn cờ vây phải cần siêu máy tính?
Vì sao máy cờ trên trình duyệt hạ được kiện tướng, còn cờ vây phải cần siêu máy tính?
Thử một thí nghiệm nhỏ ngay trên điện thoại của bạn. Mở một ván Cờ Tướng trong trình duyệt, để máy chơi hết sức: đối thủ nằm gọn trong cái tab nhỏ xíu đó đủ mạnh để đè bẹp bất kỳ đặc cấp đại sư nào của con người. Sang Cờ Vua cũng vậy — Stockfish chạy ngay trong trình duyệt, trên chính con chip điện thoại của bạn, vẫn mạnh hơn Magnus Carlsen ở thời đỉnh cao nhất. Nhưng mở Cờ Vây ra, câu chuyện đổi hẳn: để lần đầu tiên thắng nổi một kỳ thủ cờ vây hàng đầu thế giới, năm 2016 Google đã phải huy động một hệ thống máy tính khổng lồ. Cùng là cờ, cùng là "chơi với máy" — vì sao một bên rẻ đến mức nhét vừa một tab trình duyệt, còn một bên lại đắt như một dự án quốc gia?
Cờ tướng, cờ vua: vì sao máy tính chơi "rẻ"?
Lý do đầu tiên là kích thước. Bàn cờ tướng có 90 điểm giao nhau, bàn cờ vua có 64 ô. Mỗi nước đi, người chơi có trung bình khoảng 38 lựa chọn hợp lệ ở cờ tướng và 35 ở cờ vua. Cây ván cờ vì thế vẫn khổng lồ — từ năm 1950, Claude Shannon đã ước tính số ván cờ vua có thể có vào khoảng 10^120 (con số nay mang tên ông), còn cờ tướng, với ván đấu dài hơn, được ước tính quanh 10^150. Không siêu máy tính nào duyệt hết nổi những cái cây đó, và máy cũng không cần duyệt hết.
Bởi vì hai môn này có hai "điểm yếu" mà máy tính khai thác rất tốt:
- Cắt tỉa được. Thuật toán tìm kiếm alpha-beta cho phép máy bỏ qua phần lớn các nhánh thua thiệt rõ ràng, chỉ đào sâu vào những nước đi đáng ngờ nhất.
- Chấm điểm được bằng số học. Quân cờ có "giá" tương đối rõ ràng — xe, pháo, hậu mạnh hơn tốt rất nhiều — nên thế cờ quy được thành một con số: đếm quân, cộng trừ vài yếu tố vị trí là có một lượng giá đủ tốt để ra quyết định. Ngày nay việc chấm điểm đó do một mạng nơ-ron nhỏ tên NNUE đảm nhiệm, nhỏ đến mức chạy cực nhanh trên CPU thông thường.
Mốc lịch sử là năm 1997: Deep Blue của IBM, với 480 chip cờ chuyên dụng xét khoảng 200 triệu thế cờ mỗi giây, thắng nhà vô địch thế giới Garry Kasparov 3,5–2,5. Nghe như quái vật, nhưng đó là phần cứng của năm 1997 — mức sức tính từng cần hai tủ máy cao hai mét đó, ngày nay thua xa con chip trong chiếc điện thoại bạn đang cầm. Stockfish ở sức mạnh đầy đủ hiện đứng đầu bảng xếp hạng máy CCRL với khoảng 3.640–3.650 Elo trên thang máy. Kể cả khi bị biên dịch sang WebAssembly và chạy đơn luồng trong một tab trình duyệt — chậm đi đáng kể so với bản cài trên máy mạnh — nó vẫn được ước lượng quanh 3.200, tức cao hơn kỷ lục 2.882 của Carlsen vài trăm điểm. Cờ tướng đi đúng cùng một con đường: Fairy-Stockfish và Pikafish, những engine họ Stockfish chuyên cờ tướng, đều vượt xa mọi cao thủ con người, và bản chạy trong trình duyệt của chúng đã là quá đủ cho bất kỳ người chơi nào.
Nói ngắn gọn: với cờ tướng và cờ vua, bài toán đã được giải bằng thuật toán từ lâu. Phần cứng chỉ cần "đủ nhanh", mà "đủ nhanh" thì rẻ dần theo từng năm.
Cờ vây: đắt hơn ở mọi khía cạnh
Bàn cờ vây 19×19 có 361 điểm — gấp bốn lần bàn cờ tướng. Mỗi nước đi có trung bình khoảng 250 lựa chọn, và một ván thường kéo dài khoảng 150 nước: cây ván cờ phình lên cỡ 10^360. Số thế cờ hợp lệ đã được John Tromp và Gunnar Farnebäck đếm chính xác đến từng chữ số: khoảng 2,08×10^170 — trong khi số nguyên tử trong vũ trụ quan sát được chỉ quanh 10^80. Nhưng kích thước chưa phải rào cản lớn nhất.
Rào cản lớn nhất là: cờ vây không chấm điểm bằng đếm quân được. Một quân cờ vây đặt xuống không có "giá": nó sống hay chết, mạnh hay yếu, hoàn toàn phụ thuộc vào hình thế xung quanh và cục diện toàn bàn. Không có công thức cộng trừ nào nói được một thế cờ vây giữa ván đang nghiêng về ai. Đó là lý do suốt nhiều thập kỷ sau khi cờ vua đã gục ngã, các chương trình cờ vây mạnh nhất cũng chỉ quanh trình độ dan nghiệp dư cao — chúng thiếu thứ quan trọng nhất: trực giác về hình thế.
Cách phá thế bế tắc đó là để máy tự học trực giác: mạng nơ-ron sâu học từ hàng triệu ván tự đấu, kết hợp tìm kiếm Monte Carlo (MCTS) để dẫn đường. Nhưng cái giá của trực giác là điện toán: mỗi nước đi cần hàng chục nghìn lượt mô phỏng, và mỗi lượt mô phỏng đều phải chạy mạng nơ-ron một lần. Sức mạnh lúc này tỉ lệ gần như trực tiếp với số lượt mô phỏng kịp chạy — tức là với sức máy.
Con số của chính DeepMind nói rõ điều đó. Theo bài báo trên Nature năm 2016, bản AlphaGo chạy trên một máy (48 CPU, 8 GPU) đạt 2.890 Elo trên thang nội bộ; bản phân tán dùng 1.202 CPU và 176 GPU đạt 3.140 — và chính bản phân tán khổng lồ đó mới là bản thắng Lee Sedol 4–1. AlphaGo Zero năm 2017 cho thấy thuật toán tốt hơn sẽ làm hóa đơn nhẹ đi nhiều: nó tự học từ số không trong 40 ngày với 29 triệu ván tự đấu, và khi thi đấu chỉ cần một máy duy nhất với 4 chip TPU. KataGo ngày nay còn hiệu quả hơn nữa — chạy trên một card đồ họa tiêu dùng mạnh, với đủ lượt mô phỏng mỗi nước, nó chơi vượt xa kỳ thủ chuyên nghiệp hàng đầu.
Và đây là chỗ phải nói thật về chính mình: KataGo trong trình duyệt là một KataGo đang bị "đói" mô phỏng. Nó chỉ có vài giây mỗi nước trên máy của chính bạn, không có GPU mạnh phía sau, nên số lượt mô phỏng bị cắt xuống còn một phần nhỏ. Vì vậy cấp cao nhất của Cờ Vây trên SynerWorlds vào khoảng 3 dan nghiệp dư — theo đúng nhãn cấp độ trong game: thừa sức làm khó người chơi câu lạc bộ giỏi, nhưng không phải KataGo "bản đầy đủ" trên GPU. Cùng một bộ não, cho nó ít điện toán hơn hẳn, nó chơi yếu đi hẳn. Đó chính là bản chất của cờ vây đối với máy tính.
Phía con người cũng vậy: não phải khỏe hơn
Điều thú vị là hóa đơn tính toán đó không chỉ áp cho máy — nó áp cho cả bộ não người ngồi trước bàn cờ.
Cờ tướng bắt bộ não đọc sâu trong một hành lang. Cờ vây bắt bộ não ôm trọn cả bàn cờ trong mọi nước đi — não phải khỏe hơn.
Kỳ thủ cờ tướng giỏi đọc chiến thuật sâu đến mức đáng nể, nhưng phần quyết định của ván đấu thường dồn dọc những tuyến quen thuộc: đường xe, đường pháo, quanh cung tướng. Mỗi quân có lộ trình cố định, giá trị tương đối rõ ràng, và đích cuối cùng chỉ có một: chiếu hết tướng đối phương. Bộ não được "tập trung hỏa lực" vào một hành lang hẹp — hẹp, nhưng đào rất sâu.
Cờ vây không cho bộ não điểm tựa đó. Cả 361 điểm đều là mặt trận tiềm năng; một quân vừa đặt xuống ở góc này có thể đổi cục diện ở góc đối diện. Mỗi nước đi bắt người chơi làm hai việc cùng lúc: đọc chính xác một cuộc chiến sống–chết cục bộ đến từng biến, và phán đoán toàn cục — chỗ nào trên bàn đang "to" nhất, hướng nào đang lớn lên, hơn kém nhau nằm ở đâu khi không có quân nào có giá cố định để cộng trừ. Nói cách khác, cờ vây đòi hỏi tính toán nhiều hơn hẳn cờ tướng — cho cả máy lẫn người.
Vì vậy, nếu có ai nên cảm thấy bị thách thức bởi cờ vây, thì đó chính là những bộ não cờ tướng mạnh nhất. Họ đã có sẵn thứ khó rèn nhất — khả năng đọc sâu và tính xa — và cờ vây chỉ đòi hỏi họ trải khả năng đó ra toàn bộ 361 điểm thay vì một hành lang. Đây là một lời mời, không phải lời chê: nếu bạn tự hào về sức đọc cờ của mình ở cờ tướng, bàn cờ vây 19×19 là nơi sức đọc đó được thử lửa ở quy mô lớn hơn hẳn.
Sức mạnh = thuật toán × phần cứng
Nhìn lại cả câu chuyện: cờ vua gục ngã năm 1997 trước một ý tưởng thuật toán có từ năm 1950 cộng phần cứng chuyên dụng; cờ tướng đi theo ngay sau đó. Cờ vây đứng vững thêm gần hai mươi năm, và chỉ gục khi học sâu gặp được sức tính khổng lồ của thập niên 2010. Mỗi môn cờ có một "giá tính toán" riêng — và cái giá đó, như đã thấy, áp dụng cho cả con chip lẫn bộ não.
Bạn có thể tự kiểm chứng cả hai phía của phương trình này ngay trên SynerWorlds: đấu với Stockfish và Fairy-Stockfish trong Cờ Vua và Cờ Tướng để thấy máy "rẻ" mà mạnh đến đâu, rồi sang Cờ Vây làm quen từ bàn 9×9, 13×13 trước khi thử thách bộ não mình trên bàn 19×19. Máy móc đã trả xong hóa đơn của chúng. Phần còn lại — ngồi vào bàn — là của bạn.
Bình luận
Chưa có bình luận nào. Hãy là người đầu tiên chia sẻ cảm nghĩ!