Tháng 5 năm 1997 ở New York, máy Deep Blue của IBM thắng nhà vô địch thế giới Garry Kasparov với tỉ số 3,5–2,5 sau sáu ván cờ tiêu chuẩn. Đó là lần đầu tiên một nhà vô địch thế giới đương nhiệm thua cả một trận đấu trước máy tính trong điều kiện thời gian thi đấu chính thức. Deep Blue không "hiểu" cờ theo cách con người hiểu; nó thắng nhờ phần cứng làm riêng cho cờ vua, xét được khoảng hai trăm triệu thế cờ mỗi giây theo các mô tả kỹ thuật được công bố, cộng với một hàm đánh giá do các kiện tướng giúp tinh chỉnh.
Bài này kể lại trận đấu theo trình tự, giải thích cỗ máy được làm ra sao, vì sao ván 2 gây tranh cãi đến tận bây giờ, và quan trọng nhất là trận đấu chứng minh điều gì, không chứng minh điều gì. Người chơi cờ phong trào thường nghe chuyện Deep Blue như một huyền thoại; biết rõ chi tiết giúp bạn hiểu vì sao máy cờ ngày nay mạnh theo một kiểu khác hẳn.
Từ ChipTest đến Deep Blue: hơn mười năm chuẩn bị
Deep Blue không xuất hiện bất ngờ. Nó là đời cuối của một dòng máy bắt đầu từ phòng thí nghiệm sinh viên, và mỗi đời đều có một bước tiến rõ ràng về phần cứng.
- ChipTest (giữa thập niên 1980): nhóm nghiên cứu sinh ở Đại học Carnegie Mellon, trong đó có Hứa Phong Hùng (Feng-hsiung Hsu), thiết kế một con chip chuyên sinh nước đi cờ vua. Ý tưởng cốt lõi đã có từ đây: thay vì viết phần mềm chạy trên máy tính đa năng, làm hẳn mạch điện tử chỉ để làm một việc là tạo và thử nước đi thật nhanh.
- Deep Thought (cuối thập niên 1980): bản kế tiếp, mạnh tới mức đánh bại được đại kiện tướng trong giải đấu thật. Năm 1989, Deep Thought đấu hai ván với Kasparov và thua cả hai. Cùng năm đó, Hứa Phong Hùng và Murray Campbell về làm cho IBM, và dự án đổi tên thành Deep Blue.
- Deep Blue 1996: tháng 2 năm 1996 ở Philadelphia, Deep Blue thắng ván đầu tiên của trận sáu ván, lần đầu một nhà vô địch thế giới đương nhiệm thua máy trong một ván cờ tiêu chuẩn. Nhưng Kasparov điều chỉnh rất nhanh, thắng ba và hoà hai ván sau, chung cuộc 4–2 cho người.
- Deep Blue 1997: sau trận thua, nhóm nâng cấp gần như toàn bộ. Máy mới chạy trên một siêu máy tính song song của IBM, gắn 480 chip cờ vua làm riêng, nhanh gấp khoảng đôi bản 1996. Hàm đánh giá được mở rộng tới hàng nghìn đặc trưng, và đại kiện tướng Joel Benjamin cùng vài kiện tướng khác giúp nhóm soạn sách khai cuộc và thử máy.
Chuỗi này cho thấy một điều ít được nhắc: Deep Blue là thành quả kỹ thuật phần cứng nhiều hơn là một ý tưởng trí tuệ nhân tạo mới. Thuật toán tìm kiếm của nó về nguyên lý vẫn là cắt tỉa alpha-beta đã biết từ nhiều chục năm trước.
Sáu ván năm 1997 diễn ra thế nào
Trận tái đấu diễn ra từ ngày 3 đến 11 tháng 5 năm 1997 tại New York. Bảng dưới ghi kết quả từng ván và điểm đáng nhớ, theo các tư liệu công khai về trận đấu.
| Ván | Kết quả | Điểm đáng nhớ |
|---|---|---|
| 1 | Kasparov thắng | Kasparov chọn thế cờ đóng, chơi chậm, để máy không có mục tiêu chiến thuật rõ ràng |
| 2 | Deep Blue thắng | Máy chơi một ván rất "giống người", từ chối ăn tốt để giữ sức ép; Kasparov chịu thua ở thế về sau được phân tích là còn hoà |
| 3 | Hoà | Kasparov dùng khai cuộc lạ để kéo máy ra khỏi sách khai cuộc |
| 4 | Hoà | Ván căng, cả hai bên đều có lúc giữ thế chủ động, kết thúc hoà sau tàn cuộc dài |
| 5 | Hoà | Kasparov có thế tốt hơn, máy tìm được đường hoà nhờ tính chính xác ở cuối ván |
| 6 | Deep Blue thắng | Khai cuộc Caro-Kann, Kasparov đi một nước sai thứ tự, máy hy sinh mã ở e6 và Kasparov chịu thua chỉ sau 19 nước |
Nhìn vào bảng, trận đấu sát hơn nhiều so với cách người ta hay kể. Ba ván hoà, mỗi bên một ván thắng sạch trước ván cuối. Ván 6 quyết định cả trận, và đó là ván Kasparov chơi tệ nhất trong sự nghiệp ở cấp đó, phần lớn vì tâm lý đã rối sau ván 2.
Tranh cãi ván 2 và câu hỏi về sự can thiệp của con người
Ở ván 2, Deep Blue có những nước mà Kasparov cho là quá tinh tế về chiến lược, không giống cách máy cờ thời đó chơi. Máy cờ thập niên 1990 nổi tiếng tham ăn quân: thấy được ăn tốt mà tính không ra phản đòn là ăn. Deep Blue lại từ chối, chọn giữ thế ép lâu dài. Sau trận, Kasparov nói bóng gió rằng có thể có người can thiệp giữa các nước, và yêu cầu IBM công bố nhật ký tính toán của máy.
IBM bác bỏ và về sau có công bố nhật ký. Không có bằng chứng nào cho thấy con người can thiệp, và giới nghiên cứu nhìn chung coi lời nghi ngờ đó là phản ứng tâm lý của một người thua. Điều làm câu chuyện thêm cay đắng là thế cờ khi Kasparov chịu thua ván 2: các phân tích sau đó, trong đó có phân tích bằng máy mạnh hơn, cho thấy Đen còn đường chiếu hết liên tục để cầm hoà. Kasparov đã bỏ một ván hoà vì tin rằng máy tính sai được nước nào.
Bài học cho người chơi phong trào nằm ở đây: một khi bạn tin đối thủ không thể sai, bạn ngừng tìm phương án phòng thủ. Kasparov, người tính cờ giỏi nhất thời đó, cũng mắc đúng lỗi này. Nhiều năm sau, trong cuốn sách viết về trận đấu xuất bản năm 2017, ông nhìn nhận lại bình thản hơn và cho rằng mình đã đánh giá thấp nhóm IBM.
Deep Blue tính cờ bằng cách nào
Tìm kiếm thô sức là chính. Deep Blue xét cây nước đi theo nguyên lý minimax với cắt tỉa alpha-beta: thử nước của mình, nước đáp của đối phương, rồi nước tiếp theo, loại sớm những nhánh đã chắc chắn kém hơn nhánh đã biết. Với hai trăm triệu thế mỗi giây, máy thường nhìn sâu khoảng mười hai nước nửa (mỗi bên sáu nước) ở nhánh chính, và sâu hơn nhiều ở các nhánh có ăn quân, chiếu tướng.
Hàm đánh giá viết tay. Khi dừng tìm, máy cần chấm điểm thế cờ. Hàm này cộng giá trị quân, cấu trúc tốt, an toàn vua, mức hoạt động của quân, quyền kiểm soát cột mở và nhiều đặc trưng khác. Mỗi đặc trưng có trọng số, và trọng số được chỉnh bằng cách cho máy đọc hàng nghìn ván của kiện tướng, xem nước máy chọn có khớp nước người chọn không.
Sách khai cuộc và tàn cuộc dựng sẵn. Phần mở đầu ván, máy đi theo sách soạn trước cùng các kiện tướng, nên không phải tính. Phần tàn cuộc ít quân, máy tra bảng kết quả đã tính sẵn. Nghĩa là ở hai đầu ván, Deep Blue dựa nhiều vào kiến thức con người đã nạp.
Không học từ ván trước. Deep Blue không tự học trong trận theo nghĩa hiện đại. Giữa các ván, nhóm kỹ sư có thể sửa thông số, điều này đúng luật trận đấu nhưng cũng là một lý do khiến Kasparov khó chịu: ông đấu với một máy có thể thay đổi giữa chừng, trong khi không được xem ván nào của máy trước đó.
Những hiểu lầm phổ biến về Deep Blue
Gần ba mươi năm kể đi kể lại, câu chuyện Deep Blue bị phóng đại theo nhiều hướng. Dưới đây là những chỗ hay sai.
- "Deep Blue là trí tuệ nhân tạo biết suy nghĩ." Không. Nó là chương trình tìm kiếm cực nhanh trên phần cứng chuyên dụng, không có khả năng học, không chơi được trò nào khác ngoài cờ vua, không giải thích được vì sao chọn nước.
- "Sau năm 1997 người hết đánh được máy." Không ngay lập tức. Đầu thập niên 2000 vẫn có các trận người hoà máy. Phải tới giữa thập niên đó, khi phần mềm chạy trên máy tính thường đủ mạnh, cách biệt mới rõ ràng không còn tranh cãi.
- "Deep Blue mạnh hơn mọi máy cờ trên điện thoại hiện nay." Ngược lại. Các phần mềm cờ mã nguồn mở chạy trên điện thoại tầm trung ngày nay được giới phân tích đánh giá là mạnh hơn Deep Blue rất xa, dù chỉ xét một phần nhỏ số thế cờ mỗi giây, vì thuật toán cắt tỉa và hàm đánh giá đã tiến bộ hơn hẳn.
- "Kasparov thua vì máy giỏi hơn ở mọi mặt." Trận đấu sáu ván quá ngắn để kết luận về sức cờ. Phần quyết định là tâm lý sau ván 2 và một ván 6 hỏng từ khai cuộc.
- "IBM chạy trốn tái đấu." IBM đúng là không tổ chức trận thứ ba và cho Deep Blue nghỉ. Một phần cỗ máy được đưa vào trưng bày ở bảo tàng tại Mỹ. Việc dừng dự án là quyết định kinh doanh; không có gì cho thấy đó là che giấu.
Trận đấu thật sự chứng minh điều gì
Điều trận đấu chứng minh khá hẹp nhưng rất rõ: trong một trò chơi có luật cố định, thông tin đầy đủ, tìm kiếm đủ nhanh và đủ sâu có thể bù cho việc không hiểu theo nghĩa con người. Trước năm 1997, nhiều người tin rằng cờ vua ở trình cao nhất đòi hỏi trực giác mà máy không thể có. Deep Blue cho thấy ở mức sáu ván, tính toán thô cộng kiến thức nạp sẵn đã đủ cạnh tranh.
Điều trận đấu không chứng minh là máy đã "thông minh". Cờ vây khi đó vẫn là bài toán mà cách làm của Deep Blue gần như bất lực, vì số nước khả dĩ mỗi lượt lớn hơn nhiều và rất khó viết hàm chấm điểm thế cờ. Phải gần hai mươi năm sau, với mạng nơ-ron học sâu, máy mới vượt người ở cờ vây.
Với người chơi cờ, di sản lớn nhất của Deep Blue là thay đổi thái độ: máy không còn là đồ chơi để thử, mà là đối thủ và về sau là người thầy phân tích. Thế hệ kỳ thủ trẻ lớn lên sau đó học khai cuộc, tìm lỗi ván của mình bằng máy ngay từ đầu, thứ mà Kasparov thời trẻ không có.
Đọc thêm và xem lại trận đấu đúng cách
Nếu bạn muốn tự xem lại sáu ván, có vài cách giúp việc xem có ích hơn là chỉ dò kết quả.
- Tải biên bản sáu ván từ một cơ sở dữ liệu cờ công khai, mở bằng phần mềm xem ván bất kỳ. Xem ván 1 và ván 2 liền nhau để thấy hai cách chơi đối nghịch: Kasparov khoá thế, rồi máy thắng chính trong thế khoá.
- Ở ván 2, dừng ở nước chịu thua và tự tìm đường chiếu hết liên tục trước khi bật máy phân tích. Đây là bài tập phòng thủ rất tốt.
- Ở ván 6, tìm nước sai thứ tự của Đen ở khai cuộc Caro-Kann và tự hỏi vì sao một kỳ thủ cỡ đó lại đi như vậy. Câu trả lời liên quan tới tâm lý nhiều hơn kiến thức.
- Đọc hai góc nhìn: cuốn sách của Hứa Phong Hùng về quá trình làm Deep Blue, xuất bản năm 2002, và cuốn của Kasparov năm 2017. Hai người kể cùng một trận đấu nhưng rất khác nhau.
- Khi dùng máy phân tích hiện đại để chấm các ván này, nhớ rằng máy hôm nay mạnh hơn cả hai bên năm 1997 rất nhiều; một nước bị chấm "không chính xác" chưa chắc là nước tệ theo chuẩn thời đó.
Câu hỏi thường gặp
Deep Blue có còn hoạt động không?
Không. Sau trận năm 1997, IBM cho dự án dừng lại và tháo dỡ hệ thống. Một phần tủ máy được trưng bày tại bảo tàng ở Mỹ. Nhóm kỹ sư chuyển sang các dự án khác, còn chip chuyên dụng của Deep Blue không được dùng tiếp cho cờ vua thương mại.
Kasparov có được tái đấu Deep Blue không?
Kasparov đề nghị tái đấu nhưng IBM không đồng ý và cho máy nghỉ. Về sau ông đấu với các phần mềm cờ khác chạy trên máy tính thông thường đầu thập niên 2000, và các trận đó kết thúc hoà, cho thấy khoảng cách người máy khi ấy chưa lớn như sau này.
Vì sao ván 6 thua nhanh như vậy?
Kasparov đi một nước sai thứ tự trong khai cuộc Caro-Kann, cho phép Trắng hy sinh mã ở e6, một đòn đã được biết trong lý thuyết. Máy có sẵn đòn này trong sách khai cuộc. Nhiều nhà bình luận cho rằng Kasparov đã mất tập trung sau cú sốc ván 2.
Deep Blue có phải là trí tuệ nhân tạo không?
Theo nghĩa rộng của ngành, chương trình chơi cờ thuộc trí tuệ nhân tạo cổ điển: tìm kiếm và đánh giá theo luật do người viết. Nhưng nó không học từ dữ liệu như các mô hình hiện nay và không áp dụng được cho việc khác ngoài cờ vua.
Máy cờ trên điện thoại có mạnh hơn Deep Blue thật không?
Theo đánh giá chung của giới lập trình cờ, các phần mềm cờ mạnh ngày nay chạy trên điện thoại vượt Deep Blue rất xa. Chúng xét ít thế cờ mỗi giây hơn nhưng cắt tỉa thông minh hơn và dùng hàm đánh giá tốt hơn hẳn, nên mỗi phép tính có giá trị hơn.
Có nên cho con xem trận Deep Blue để học cờ không?
Xem để hiểu lịch sử thì tốt, nhưng sáu ván này khá phức tạp với người mới. Trẻ nên học từ ván ngắn, rõ ý. Câu chuyện về việc Kasparov bỏ cuộc trong thế còn hoà lại là bài học rất hay về chuyện kiên trì tìm cách phòng thủ.