Hai trò chơi hợp nhất, một câu hỏi: liệu có thể chơi trò nào trong đó một cách hoàn hảo? Câu trả lời đi qua góc của một bàn chơi, một đối thủ không bao giờ xuất hiện, và một con số cao mười bảy số mũ.
Được viết và biên tập bằng tiếng Anh. Bản tiếng Việt này được tạo ra bằng dịch máy; ở những chỗ cần độ chính xác, bản gốc tiếng Anh là bản có thẩm quyền. Đọc bản gốc bằng tiếng Anh →
Hãy bắt đầu với trò chơi mà ai cũng biết. 2048, bốn hướng, một lưới 4×4, các ô số nhân đôi khi chạm nhau, nói một cách chặt chẽ, là chưa được giải. Chưa ai viết ra được một thuật toán chơi nó hoàn hảo. Những gì ta có là các phép xấp xỉ rất mạnh. Một phép tìm kiếm expectimax, nhìn trước khoảng tám nước đi và chấm điểm mỗi bàn bằng một vài heuristic tinh chỉnh thủ công, như số ô trống, các ô lớn được ghim vào một cạnh, độ mượt, đạt tới ô 32768 trong hơn một phần ba số ván, 1 và engine công khai mạnh nhất chạm tới ô 65536 trong vài phần trăm số ván. 2 Khi tổng quát hóa lên bàn m×n, chỉ riêng việc quyết định xem một ô mục tiêu có đạt tới được hay không đã là NP-khó. 3 Mạnh không đồng nghĩa với đã giải.
Một ô đơn lẻ có thể leo cao đến đâu? Trên mười sáu ô, câu trả lời là một phép đếm nhỏ và thanh lịch. Hãy sắp bàn chơi thành một cầu thang đi xuống, 65536, 32768, 16384, cứ thế xuống tới một ô 2 đơn độc. Mỗi ô thấp hơn ô bên cạnh đúng một lũy thừa của hai, nên mười sáu lũy thừa khác nhau từ 21 đến 216 lấp đầy bàn chơi một cách hoàn hảo, và 65536 = 216 nằm trên đỉnh: mỗi ô một số mũ. Đó là mức trần nếu trò chơi chỉ luôn đưa cho bạn những ô 2. Nhưng 2048 sinh ra ô 4 với tỷ lệ một lần trong mười, và một ô 4 đến đúng lúc sẽ lén đưa vào số mũ thứ mười bảy, nâng mức tối đa thực sự lên 131072 = 217, giá trị lũy thừa của mười bảy ô được nén vào mười sáu ô vuông. 4 Chưa con người nào xây dựng được nó; một vài AI đã chạm tới nó.
Vì sao những bàn chơi này thưởng cho việc nhét ô lớn nhất của bạn vào một góc? Một ô ở giữa có thể bị đẩy theo bốn hướng, và nó cứ liên tục bị tách khỏi những ô mà nó muốn kết hợp. Một ô ở góc chạm vào hai bức tường; những cú đẩy về phía các bức tường mà nó vốn đã áp sát không thể làm nó di chuyển, và chừng nào bạn tránh đẩy ra xa chúng thì nó vẫn đứng yên trong khi mọi thứ khác được sắp xếp quanh nó. Nối phần còn lại thành một con rắn đơn điệu, lớn nhất ở góc, gấp khúc qua lại theo thứ tự giảm dần, và một cú vuốt có thể kích hoạt cả một chuỗi hợp nhất. 1 Đây là heuristic thống trị lối chơi thông thường của con người, và gần như chính là điều mà các AI tự khám phá lại khi bạn để chúng tự tinh chỉnh trọng số.
Một trò chơi hợp nhất với ô mới sinh ngẫu nhiên không có đối thủ, chỉ có thời tiết. “Giải” nó là thắng xúc xắc về mặt trung bình, chứ không phải thắng một bộ óc.
Giờ hãy nghiêng bàn chơi vào ba chiều. 3927 là người anh em họ lập phương của 2048: một mạng 3×3×3 gồm 27 ô, sáu hướng đẩy thay vì bốn, và các ô hợp nhất theo bộ ba, 3 thành 9 thành 27 thành 81, cơ số ba trong khi 2048 là cơ số hai. 5 Liệu chiến thuật xếp chồng vào góc có sống sót qua chiều không gian thêm vào? Một khối lập phương có tám góc, và một ô góc giờ chạm vào ba mặt thay vì hai, nên lẽ ra nó còn vững hơn nữa, bị ghim bởi ba bức tường cùng lúc, dù sáu hướng đẩy cho bàn chơi nhiều cách hơn để lắc lỏng cấu trúc của bạn. Con rắn trở thành một đường gấp khúc luồn qua cả ba lớp. Theo những gì tôi tìm được, chưa ai xác định được liệu phép tương tự này có thực sự đứng vững hay không; đây là suy luận, không phải phép đo.
Còn mức trần thì sao? Quy tắc mỗi ô một số mũ sẽ gợi ý 327 ≈ 7,6 nghìn tỷ như một cận trên lỏng lẻo. Nhưng phép tương tự bị rạn nứt nghiêm trọng. Số mũ thêm của 2048 đến từ một ô 4 may mắn; 3927 chỉ luôn sinh ra ô nhỏ nhất, một ô 3 trơn, nên không có phần thưởng nào. Tệ hơn, một lần hợp nhất bộ ba cần ba ô thẳng hàng, và mọi hàng, cột và trụ trên một khối lập phương 3×3×3 đều dài đúng ba ô, nên mọi lần hợp nhất đều tiêu tốn trọn một đường. Ràng buộc đó gây sức ép nặng hơn nhiều so với bất cứ điều gì trong trò chơi phẳng và gần như chắc chắn kéo mức tối đa thực sự xuống thấp hơn 327 rất nhiều. Con số thực sự đó là bao nhiêu, tôi chưa thấy ai tính ra ở đâu cả. (Đây là suy luận được ghi rõ; các cơ chế nêu trên được đo từ tài liệu thiết kế của trò chơi.)
Đây là điểm tinh tế khiến “chơi hoàn hảo” trở nên khó nắm bắt. Một trò chơi hợp nhất với ô mới sinh ngẫu nhiên là một trò chơi ngẫu nhiên một người chơi, một ván bài đơn đấu với con xúc xắc, chứ không phải một cuộc đấu tay đôi. Không có gì chọn ô mới tồi tệ nhất để hạ gục bạn; chỉ có bộ sinh số ngẫu nhiên (RNG), dửng dưng. Vì vậy khái niệm đúng về lối chơi tối ưu là expectimax: tối đa hóa kết quả kỳ vọng trên phân phối của các ô mới sinh. Nó dứt khoát không phải minimax; minimax giả định có một đối thủ, và nếu bạn thực sự để một đối thủ đặt từng ô (“evil 2048”, tức 2048 ác ý), trò chơi trở thành một thứ tàn nhẫn hơn mà bạn có thể bị buộc phải thua. Vì về nguyên tắc con xúc xắc có thể chia ra bất kỳ chuỗi nào, một chiến lược bảo đảm đạt được một ô nhất định có thể đơn giản là không tồn tại. Vậy câu trả lời trung thực cho câu hỏi “có chiến lược hoàn hảo không?” là: với một trò chơi ngẫu nhiên, điều tốt nhất mà ta thậm chí có thể định nghĩa là một chiến lược tốt nhất xét trung bình, và việc tính chính xác nó nằm ngoài tầm với đối với 2048 6 và vẫn còn bỏ ngỏ hoàn toàn đối với 3927.