Ngày nảy ngày nay…
Có người dùng nọ chơi cờ online, bật cheat (dùng các nước đi được gợi ý của engines cờ vua để thi đấu với người khác) và khi bị chất vấn thì bảo rằng được khuyên nên luyện tập với engines…
Oan quá xá! Bạn này đã hiểu sai, hoặc là cố tình hiểu sai vấn đề mất rồi…
Kể từ thời Deep Thought đánh bại GM Bern Larsen năm 1988, các máy chơi cờ từng bước được tối ưu cả về hiệu năng lẫn sức mạnh. Nếu như ở 3 thập kỷ trước, máy chơi cờ cần được xây dựng chuyên biệt với tất cả thiết bị, nhân tính toán được lựa chọn tối ưu chỉ với mục đích chơi cờ thì ngày nay, các máy tính phổ thông cũng dễ dàng chạy được các engines cờ vua (phần mềm chỉ từ vài MB, được phát triển để tìm nước đi tối ưu trong ván cờ).
Dù muốn hay không, các engines cờ vua đã và đang tác động rất nhiều đến môn chơi này. Hikaru Nakamura đúng là từng nhận xét: thời này, nhìn chung sức cờ của các GM thời này tốt hơn thời trước, nhờ được luyện tập với engines. Chúng ta không thể kiểm nghiệm bằng cách tạo ra một giải đấu đỉnh cao và mời các GM của quá khứ sống dậy tham dự, nhưng khách quan mà nói, nhận định này rất có cơ sở.
Vậy câu hỏi đặt ra là: nên sử dụng engines cờ vua như thế nào cho phù hợp?
Mục lục
Đừng bắt chước nước đi của các Engines cờ vua
Rõ ràng: như vậy là gian lận. Trong thể thao nói chung và cờ vua nói riêng, các thể loại hành vi gian lận vì bất cứ lí do gì đều đáng bị lên án, vì nó vượt xa khỏi tinh thần nguyên bản của thể thao. Các hình phạt cho hành vi gian lận đang dần trở nên nghiêm khắc (và thỏa đáng) hơn. Trong giải thi đấu mà bị phát hiện gian lận thì kể như là sự nghiệp của vận động viên đó đi tong rồi.
Ngay cả trong các cuộc chơi vui không tính xếp hạng, việc gian lận với lí do luyện tập để mô phỏng nước đi tốt nhất cũng rất khó chấp nhận. Khi chơi cờ qua internet, đấu thủ đang bỏ thời gian chơi cùng bạn có khi chỉ là một đứa bé. Nghĩ xem, với ván thắng tuyệt đối một đứa bé bằng cách gian lận, bạn học được gì? Ván cờ và thời gian lẽ ra đã phải rất vui và hữu ích cho cả 2 – đã bị hủy hoại.
Hơn nữa, việc này chẳng mang lại lợi ích gì. Nếu chỉ trông chờ vào việc được engines cờ vua đưa đường dẫn lối trong từng trận đánh, người dùng không thể trở nên giỏi hơn.
Vì đơn giản: con người không thể suy nghĩ như máy, và không thể theo kịp tốc độ suy nghĩ của máy.
Trước đây, máy tính áp dụng phương thức vét cạn (brute force): xem mỗi nước đi của đối thủ là một bài toán riêng rẽ và thử “nhìn qua” tất cả nước đi hợp lệ để tìm cách giải toán thỏa điều kiện (mang lại ưu thế) với phép thử là độ sâu của biến chọn lựa. Độ sâu của biến có giá trị càng cao (ví dụ như:20) thì biến thế đó càng được tin cậy. Cách tiếp cận “cổ lỗ sỉ” này mất nhiều thời gian, và sẽ có trường hợp máy cứ phân vân ở vài lựa chọn đều hay như nhau. Ngày trước, khi chơi cờ với các phần mềm cờ vua (hoặc phần cứng kết hợp được thiết kế riêng), ta sẽ thấy có nút bấm “Move now”, để buộc máy tính phải đưa ra hồi đáp ngay lập lức. Nước đi được chọn ngẫu nhiên giữa các phương án đang được tính toán. Rồi máy tính sẽ tính lại từ đầu sau khi kỳ thủ đã đi quân xong.
Với cách tiếp cận cơ bản này của máy tính, con người đã theo không kịp, thua đứt đuôi nòng nọc rồi! Não người không được thiết kế để ghi xóa lặp đi lặp lại theo quy trình như vậy.
Rồi dần dần, máy tính xử lý nhanh và chính xác hơn nhờ các database khai cuộc được nạp trước, thuật toán cũng phép sử dụng lại tính toán đã thực hiện để rút ngắn thời gian hồi đáp sau mỗi nước đi. Thậm chí khi cờ chỉ còn 7 quân bất kỳ, máy tính đã có thể biết được nước đi chính xác dẫn đến kết quả thắng thua, nhờ vào dữ liệu syzygy endgame database xấp xỉ 17 Terabytes
Thời nay thì thôi rồi. Phần mềm máy tính nó học bằng cách tự chơi cờ với chính nó để luyện kĩ năng, kiểu như tay trái đánh với tay phải của Châu Bá Thông để luyện phản xạ vậy. Khác chăng là nó luyện kinh lắm: chơi đi chơi lại hàng triệu ván cờ, các kết quả tính toán, phương thức lựa chọn nước đi cũng được lưu lại ở một mạng lưới thần kinh sâu NN ( NN ở đây là Newral Network, không phải NN kỳ thủ mà Blog cờ vua đã từng đề cập đâu ^__^)
- Nếu bạn quan tâm: Đọc thêm bài viết về Alpha Zero của The Chess House để biết thêm về độ kinh dị không thể nghĩ bàn của engines cờ vua thời nay.
Con người thì lựa chọn nước đi theo phương thức khác: phát triển từ những chỉ dẫn chung hợp lý: ví dụ phát triển quân về phía trước, chiếm trung tâm, nhập thành… và xây dựng thế cờ dần dần dựa trên những nguyên tắc đã được kiểm chứng, như là: ưu tiên giữ lại cặp Tượng, Xe chiếm cột mở. Khi có biến thì lựa chọn kết hợp dựa trên một vài cách phản ứng theo kinh nghiệm, như tính toán thế biến bắt buộc để giảm thiểu sai số, chấp nhận đổi quân, hoặc bỏ qua mối đe dọa…
Nhiêu đó thôi là cũng tạo ra kha khá tổ hợp nước đi thú vị rồi.
Theo quan điểm mà tôi rất tán đồng từ Igor Smirnov: Một phần quan trọng của cờ vua giữa người và người là ván đấu được định đoạt do sai lầm. Con người dù giỏi, vẫn có khả năng phạm sai lầm. Máy tính (ngày nay) thì không. Một nước đi có Depth = 40 và giá trị +3, nghĩa là trong 20 nước tiếp theo, dù thế cờ tiến triển thế nào thì – với khả năng tính toán ưu việt – máy tính vẫn đảm bảo ưu thế tương đương 1 Tượng.
Nếu cứ bắt chước nước đi của máy, mãi mãi bạn cũng chẳng có được manh mối nào giúp việc quyết định nước đi diễn ra chính xác hơn.
Sử dụng Engines cờ vua thế nào?
Tôi nghĩ: ta có thể sử dụng engines cờ vua để chuẩn bị ván cờ trước trận đấu và phân tích sau trận đấu. (Lần nữa: đừng bật engines trong trận đấu nhé!)
Chuẩn bị trước trận đấu (dành cho dân chuyên)
Bao gồm chuẩn bị đối thủ và chuẩn bị phương án khai cuộc. Tôi không hẳn là dân chuyên đấu, nên sẽ nhờ một kiện tướng có kinh nghiệm viết về phần này, sẽ cập nhật sau.
Phân tích sau trận đấu
Chưa vội đụng tới engines đâu. Tôi cần tự xem lại ván cờ một mình mà không có bất kì sự trợ giúp nào hết. Tôi cho rằng nếu không tự kiểm điểm sau ván cờ, dù có sử dụng engines cờ vua mạnh đến bao nhiêu cũng không thể giúp chúng ta dù chỉ một tẹo.
Cách thực hiện: Thông thường tôi nhập biên bản ván cờ vào database cá nhân (để tiện lưu trữ) rồi tua chậm từng nước cờ một. Bạn thậm chí có thể xếp cờ ra và đi quân lại ván cờ của mình. Vậy có khi lại càng tốt hơn.
Trong quá trình này, tôi sẽ để ý đến các chi tiết sau:
Lỗi chiến thuật
- Hiểu được bản chất của nước đi lỗi là điều quan trọng. Có phải tôi suy nghĩ chưa đủ sâu nên bỏ sót đòn chiến thuật? Hay tôi đã đi đúng cả, không phạm lỗi chiến thuật nhưng vẫn thua. Nếu là trường hợp này, tôi sẽ cần xem lại nhiều hơn về kế hoạch chơi của mình.
- Có ý tưởng nào thú vị nào mà tôi khi xử lý tình huống chiến thuật đã nghĩ tới, nhưng không thực hiện trong trong ván cờ do không kịp thời gian hoặc quá phức tạp nên bỏ qua hẳn? Có nước đi nào từ đối thủ mà tôi đã rất e sợ, nhưng may mắn là đối thủ đã không thực hiện? Giờ, sau khi ván cờ đã xong xuôi rồi, tôi sẽ tự tính toán thử xem các ý tưởng đó dẫn đến đâu.
Tips: Nếu bạn muốn tập nâng cao khả năng xử lý chiến thuật, hãy tham khảo chuyên mục “Luyện chiến thuật” của chess.edu.vn. Mỗi bài luyện tập gồm 5 – 8 thế cờ được trích xuất từ các ván đấu mới nhất của các danh thủ đương thời. Vừa luyện tập, bạn vừa có thể cập nhật xu hướng khai cuộc.
Thời khắc bước ngoặt
Tìm những “thời khắc bước ngoặt” (critical moments) thời khắc mà kết quả của ván cờ bị đảo chiều sau nước đi của tôi hoặc đối thủ. Vì con người sẽ phải phạm sai lầm, ván đấu có 2, 3 cú đảo chiều là chuyện hoàn toàn bình thường như cân đường, hộp sữa.
Ý tưởng bị bỏ sót
Việc bình tĩnh xem lại ván cờ sau trận đấu đôi khi sẽ khiến tôi ngạc nhiên: “Ủa, sao trong ván cờ mình hông đi nước này, ta?” Đó là các ý tưởng mới mà trong ván cờ, tôi đã không mảy may nghĩ đến. Tạo một biến phụ, nghiêm túc đóng vai đối thủ, lựa chọn các nước phản hồi mà theo tôi là mạnh nhất, đánh tiếp thử vài nước…
Rồi xong. Giờ tôi mới bật engines để kiểm tra.
Tôi dùng stockfish vì nó miễn phí. Bạn có thể có lựa chọn khác. Không quá quan trọng đâu, vì kiểu gì thì engines cũng mạnh hơn người phàm bọn mình. Việc sử dụng engines cờ vua để phân tích có thể thực hiện trên GUI phần mềm: ví dụ như ChessBase (trả phí), ChessX (miễn phí) hoặc các trang web như chess.com, lichess.org…
Nếu các ý tưởng sau ván đấu của tôi trùng khớp được kha khá với engines: quá tuyệt vời. Nếu không tôi biết rằng mình vẫn đang phạm phải lỗi tính toán dù được thử lại, và cần phải cải thiện thêm 🙁
Ví dụ sử dụng engines cờ vua sau trận đấu
Ví dụ 1
Tình huống bên dưới xảy ra một ván cờ trong giải đấu cờ bàn tiêu chuẩn (1 giờ 30 phút, mỗi bên được cộng 30 giây sau nước đi) mà tôi tham dự trước dịch covid. Ván cờ khá căng thẳng. Dù bên Đen nhưng tôi chọn tấn công mạo hiểm. Hồi sau gần cạn giờ, thế cờ đạt được như thế này:
Bấm nút để thử sức nhé! Bạn sẽ chơi tiếp thế cờ này như thế nào?
Hậu đang bị tấn công. Trong trận đấu, tôi phân vân giữa …Qf7 và …Qg6. Sau khi suy nghĩ nhanh vì không thể chần chừ thêm nữa, tôi đã thực hiện nước đi …Qf7 với dự tính dù Trắng có đi Rf1 thì tôi vẫn còn nước đi …Bf3 để tung ra. Đổi quân xong, tôi sẽ có Hậu chống với Xe + Tượng. Lỡ mà thiếu thời gian quá thì cũng dễ chiếu lặp lại để hòa cờ. Mọi việc diễn ra theo đúng như tính toán:
Sau trận đấu, tôi xem lại ván cờ và nhận ra đã có vài thời khắc bước ngoặt mà tôi đã bỏ qua để dứt điểm trận đấu từ sớm. Thường thì ta phải chấp nhận có điểm yếu để tạo thế chủ động rồi dùng thế chủ động tấn công hòng chuyển hóa thành ưu thế bền vững như hơn quân hoặc chốt. Nếu không tận dụng được thì cuối ván cờ, các điểm yếu sẽ dần lộ rõ. Phải nó rằng trong ván cờ này tôi đã không thành công trong việc chuyển hóa thế chủ động thành ưu thế cụ thể, để rồi phải vất vả chống đỡ ở đoạn sau của ván đấu. Thế cờ vừa trình bày là thời khắc bước ngoặt sau cuối.
Ở đây, vì cạn giờ nên tôi và đối thủ đều bỏ sót một ý tưởng rất mạnh cho Trắng ở nước đi 34:
Ví dụ 2
Trở lại tình huống trong ván cờ giữa So Wesley và Nakamura ở đầu bài viết. Nếu được đóng vai bên Trắng, bạn sẽ chơi như thế nào?
Tôi hay tìm các ván cờ hay, mới diễn ra để soạn bài tập. Ván cờ giữa 2 tên tuổi lớn nên vẫn có giá trị tham khảo, dù là cờ chớp. Ở tình huống này, So đã thực hiện nước đi 26.Nd4, tấn công chốt yếu của Đen ở f5. Vì xem lại ván cờ với một tiến độ đủ chậm để thử nghiền ngẫm ý tưởng mỗi nước đi của 2 bên, tôi nhận ra rằng Trắng có thể chơi đơn giản nhưng hiệu quả hơn hẳn.
Ồ, tôi không dám nhận mình tính giỏi hơn So Wesley , một kỳ thủ top đầu thế giới với elo hơn 2700 đâu nhé. Chỉ đơn giản là với nước đi So dùng vài giây, tôi đã dùng thời gian nhiều hơn bao nhiêu tùy thích để tính toán. Hơn nữa, tôi xem cờ trong một trạng thái hoàn toàn thư giãn với ly cà phê nóng, hoàn toàn không phải chịu tí áp lực thi đấu nào để có thể so sánh với các tay elite kể trên.
Chuỗi tính toán của tôi như thế này:
Rồi, giờ sử dụng engines cờ vua xem tôi có bỏ sót gì không. Khá mừng là khi bật Stockfish, nó cũng sử dụng những nước đi bắt đầu chuỗi tính toán như tôi đã nghiệm, nhưng khá bất ngờ, ở nước đi 28 – lượt bên Trắng – thay vì bắt quân, Stockfish lại đề nghị một nước đi khác:
Như vậy là với nước đi Stockfish đề nghị, sẽ có nhánh có đòn chiếu bí đẹp mắt. Có nhánh thì thế cờ vẫn khá rối rắm – nhất là khi được chơi bởi người phàm trần. Vậy nên với tôi, trong tình huống cờ này, gợi ý của engines cờ vua không nhiều giá trị. Có chăng, ý thức ta sẽ làm quen dần với việc tính toán các biến phức tạp. Đây cũng là minh chứng cho điểm khác biệt trong việc chọn lựa nước đi giữa người và engines. Đôi khi, bắt chước nước đi engines là một việc vô cùng kỳ quặc…
Tổng kết
TL;DR: Dài quá, lười đọc
Đừng sử dụng các thể loại engines cờ vua trong khi trận đấu cờ đang diễn ra. Vậy là gian lận, và sai cách.
Hãy chỉ dùng engines để chuẩn bị trước trận đấu và tốt nhất là phân tích sau trận đấu. Tự phân tích rồi hãy bật engines lên để kiểm nghiệm. Với sự trợ giúp của engines cờ vua, hãy để ý đến các chi tiết: lỗi chiến thuật; thời khắc bước ngoặt; ý tưởng bị bỏ sót hoàn toàn trong ván cờ.
Cảm ơn vì bài viết hay, hữu ích và rất thú vị.
cảm ơn bạn Tùng! chúc bạn ngày vui nhen!