1. Tôi chỉ muốn đánh Storm cho nổ bàn, vậy mà cuối cùng xây luôn phòng thí nghiệm
Mục tiêu ban đầu chỉ là “muốn dùng AI để tìm bộ bài mạnh nhất hiện nay”. Tôi cố định Set 8, rồi lưu 826 lá trong card DB, engine commit, environment hash, deck hợp lệ và seed. Thí nghiệm chuẩn cũ có 12.480 trận, rule coverage 100%, unsupported 0, rule gap 0. Dù vậy, AI thô lại cho ra bảng điểm như ở thế giới khác: Royal khoảng 79,8%, Witch 25,6%.
Chạy 10.000 lần không biến nó thành sự thật. Nó cũng có thể thành một cái máy hiểu sai cùng một thứ 10.000 lần, chỉ là rất nhanh.
2. Thêm trí khôn con người vào thì yếu đi, và lộ ra nguy cơ khi chỉ nhìn trung bình
Tôi đưa vào human-prior-v1 các ý như “giữ lại lá quan trọng” và “đừng phá bước chuẩn bị”, rồi làm exact A/B với 2.016 paired units / 4.032 engine games. Baseline là 50,99%, còn human-prior-v1 là 49,36%, giảm 1,64 điểm. Adaptive v2 tăng toàn cục +0,74 điểm, nhưng Runecraft giảm -6,25 điểm nên hỏng leader floor và bị REJECT. T11 cũng bị REJECT, ví dụ Abysscraft -16,67 điểm.
Lời khuyên của con người có điều kiện. Khi biến nó thành weight cố định, ngữ cảnh chết. Vì vậy cần chính thức phát hiện kiểu điểm trung bình thì qua, nhưng mở bài ra thấy một môn đang cháy.
3. Phân tích nguyên nhân thì thấy cả lỗi ở phía nghiên cứu
Tôi tìm thấy lỗi triển khai như max_nodes=160 không nối vào planner, và lỗi phân tích nhân quả do nhầm góc nhìn giữa actor và fixed player. Actor attribution, direction và invariant đã được sửa, nhưng hiệu năng rộng không phục hồi.
Nghiên cứu policy Set 8 dừng ở 20 thí nghiệm, 31.406 actual engine games với trạng thái PAUSED_COMPLETE_NO_PROMOTION. Trong 439 discordant units, số trường hợp giải thích đầy đủ nguyên nhân hiệu năng là 0, giải thích một phần là 11, chưa giải quyết là 428. Active vẫn là human-prior-v1, và final unseen holdout 8.064 trận đã định làm cũng bị niêm phong, chưa dùng.
4. Cho 52 deck thị trường đánh 46.900 trận thì sinh ra “bảng xếp hạng não rỗng đấu nhau”
Market corpus có 52 decks / 25 archetypes / 7 leaders. Ngoài 46.900 trận phân tích thị trường, tôi còn chạy trực tiếp 7×7 cho 7 deck đề xuất với 1.512 trận. Trung bình đối đầu trực tiếp là Buff Forest 71,99%, Rally Sword 65,97%, Midrange Abyss 54,17%, Artifact Portal 54,17%, Ramp Dragon 53,70%, Evolution Haven 31,71%, Calgidensula Witch 18,29%. Đây là giá trị simulator-direct, không phải ladder WR.
Deck nào có “nước đi mạnh ngay bây giờ” và vẫn mạnh trong tương lai thì AI hiện tại dễ dùng hơn. Deck nào hy sinh hiện tại để mua tương lai thì nhìn có vẻ yếu. Cái tên thô là bảng xếp hạng não rỗng đấu nhau. Tên thì thô, vấn đề thì nghiêm túc.
5. Đánh giá Witch của người và AI như hai thế giới khác nhau
Ở Dexel Rising Cup #2 ngày 8 tháng 8 năm 2026, trong 384 deck nộp lên, Hand Witch có 116 deck, nhiều nhất với khoảng 30,2%. Trong khi đó, Calgidensula Witch ở AI direct 7×7 chỉ đạt 18,29% và đứng cuối. Không thể khẳng định hai bên dùng cùng một bộ 40 lá, nhưng rõ ràng có khoảng lệch lớn giữa môi trường người chơi top và cách AI hiện tại dùng Witch.
Ngược lại, Rally Sword mạnh cả với AI lẫn con người. Từ đó sinh ra giả thuyết thực dụng: “deck khó hỏng ngay cả với AI đơn giản có thể cũng dễ dùng cho người mới”. Lý thuyết Royal bấm đại, không hiểu sao lại thành đề tài nghiên cứu.
6. Future Optionality audit cho thấy “biết luật, nhưng không có thứ tự và kế hoạch”
Tôi tách toàn bộ 7 leader và 24 mechanics thành RULE / STATE / VISIBILITY / IMMEDIATE VALUE / FUTURE VALUE / SEQUENCE / SEARCH / PLAN. Trong 27.810 decisions và 118.575 root candidates, số candidate có explicit future value là 8.878, tức 7,49%. Rule/state/immediate value được support 24/24, nhưng sequence MISSING 23/24, còn plan MISSING 20/24.
Với Witch, DRAW→SPELL và SPELL→DRAW dẫn đến tương lai khác nhau. Với Dragon, PP+1 không chỉ là +1, mà còn mở Awakening và các nước hợp lệ trong tương lai. Chẩn đoán MYOPIC_REVERSAL của Dragon có 12 trường hợp, gồm ramp 6 + Awakening 6. Tuy vậy, proxy không phải nhãn đúng, nên cấm kiểu “ramp +10 điểm”.
7. Tôi thật sự tạo closed-loop planner nhìn trước 3 lượt
Tôi triển khai cấu trúc closed-loop, trong đó engine thật được chạy đến ít nhất 3 future turn boundaries, chỉ thực hiện 1 nước, rồi quan sát draw/random/opponent action và replan mỗi lần. Nó không nhìn lén hidden hand hay future draw order.
Ablation có 56 actual engine games, root action 3.979/3.979, 3-turn completion 100%, hidden-info violation 0, observation replans 81.621, plan changes 35.821. Triển khai đã chạy. Hiệu năng thì kém human-prior-v1 từ -25,0 điểm đến -37,5 điểm. Khi triển khai tiên tri tương lai, tôi hoàn thành một AI nhìn xa hơn nhưng sai xa hơn. REJECT_ACTIVE_UNCHANGED.
8. Nhìn trước 3 lượt vẫn yếu, nên tôi tách đến tận leaf
Tôi bắt 3.979 root-action leaves và tạo 54.208 terminal rollout rows cho 1.009 unique leaves. Trong 73 trường hợp đảo thứ hạng, điểm phát sinh đầu tiên là leaf weighting 59, chance aggregation 12, opponent backup 2.
Nói cách khác, không thể giải thích chỉ bằng “3 lượt là quá ngắn”. Nghi phạm chính trở thành gán bao nhiêu điểm cho tương lai sau 3 lượt. Ngoài ra, khi xem 12 Dragon reversal cũ bằng 3-turn search thật, chỉ 1/12 trường hợp đổi thứ hạng sang phía ramp. Điều này cũng xác nhận vì sao không được xem proxy chẩn đoán là ground truth.
9. Learned value cải thiện dự đoán, nhưng làm tệ việc chọn nước tốt nhất
Holdout chưa thấy mới v1.1 gồm toàn bộ 7 actor leader, 727 leaves / 104 roots / 22.768 terminal rollouts. Brier cải thiện từ 0,1144 lên 0,0972, và pairwise accuracy tăng từ 75,7% lên 78,9%.
Nhưng root argmax giảm từ 59,6% xuống 39,4%, top2 contains empirical best giảm từ 73,1% xuống 64,4%, top3 giảm từ 82,7% xuống 76,0%, còn mean decision regret xấu đi từ 4,42 điểm lên 5,29 điểm. Leader floor của Forest/Haven/Portal cũng thất bại. Kết luận là HOLD_OFFLINE.
AI: “Tôi dự đoán xác suất giỏi hơn rồi!” QC: “Vậy hạng 1 là cái nào?” AI: “Tôi đoán trượt nhiều hơn trước!” -- độ chính xác dự đoán và chất lượng quyết định là hai chuyện khác nhau.
10. Tiếp theo không nhìn “bức ảnh sau 3 lượt”, mà tính ngược từ lethal
Giả thuyết mới là kiểu goal/regression planning. Trước hết đặt LETHAL, rồi tính ngược từ damage cần có → PP → cards → các threshold như Spellboost/Awakening/Rally → action hiện tại.
Với Dragon, ramp có giá trị không phải vì “ramp nên +8”. Nó có giá trị khi một đường thắng cụ thể cần 8PP, và nếu bây giờ không ramp thì không kịp. Draw-first của Witch cũng không phải điểm thưởng cố định. Nó được đánh giá như một điều kiện cần của đường thắng. Từ phía sau hỏi “thắng bằng cách nào?”, rồi dùng engine chạy xuôi để kiểm tra “có thật sự đi được không?”.
11. Chỉ có đường thắng là chưa đủ. Cũng phải tính ngược từ đường thua
Từ SELF_LOSS, tôi tính ngược từ damage đối thủ cần có, board damage, damage thêm cần từ hand, Ward removal, PP và thông tin công khai. Sau đó xem action hiện tại có cắt được đường thắng của đối thủ không.
Tuy vậy, nếu luôn ưu tiên an toàn tuyệt đối, ta sẽ có một AI chỉ hồi máu rồi thua rất lịch sự sau 5 lượt. Vì thế, RISK_REQUIRED được đưa thành trạng thái chính thức. Nếu chơi an toàn gần như không thể thắng, AI sẽ nhận rủi ro còn giữ lại nhiều tỉ lệ thắng nhất, miễn là không rơi vào forced loss. Mục tiêu không phải sống lâu. Mục tiêu là thắng.
12. “Thắng bắt buộc” phải ghi rõ phạm vi chứng minh. Đừng trộn xác suất cao với bắt buộc
Phía thắng được tách thành PROVEN_WIN_NOW / FORCED_WIN_FULLY_OBSERVABLE_SUBTREE / FORCED_WIN_WITHIN_ENUMERATED_RESPONSE_SET / ROBUST_WIN_BELIEF / CONDITIONAL_WIN. Phía thua cũng được tách thành PROVEN_LOSS_NOW, proof-scoped forced loss, HIGH_RISK_LOSS_BELIEF, CONDITIONAL_LOSS.
Trong proof search, self=OR, opponent=AND. Chỉ khi vượt qua toàn bộ response hợp lệ đã liệt kê của đối thủ thì mới được gọi là forced trong scope đó. Nếu muốn gọi một kết quả do chance là chắc chắn, phải xử lý mọi outcome có thể tới được. Không nhìn lén giá trị thật của hidden hand hay future draw order. Strategy fusion mà ISMCTS lo ngại cũng bị cấm. Chỉ replan sau khi quan sát.
13. Thứ tự ưu tiên action là gate theo tầng, không phải cộng điểm bí ẩn
Thứ tự ưu tiên là ①PROVEN_WIN_NOW, ② forced win trong cây con quan sát đầy đủ, ③ forced win trong tập response đã liệt kê, ④ loại action dẫn tới proof-level forced loss có thể tránh, ⑤ tối đa hóa expected final win probability, ⑥ nếu gần như hòa thì xét near-loss risk, ⑦ robustness, ⑧ win-route progress / opponent-route cut, ⑨ validated continuation value.
ROBUST_WIN_BELIEF và CONDITIONAL_WIN không được xem là forced. Chỉ action có tỉ lệ thắng thấp và loss risk cao mới bị loại là DOMINATED. Câu hỏi cuối không phải “bàn này mấy điểm?”, mà là “bấm nút này thì cuối cùng thắng bao nhiêu phần trăm?”.
14. 3 lượt không phải điểm cuối, mà là khoảng cách tối thiểu. Chỉ kéo tới 5 cho nhánh mơ hồ
Thiết lập nghiên cứu ban đầu là H_MIN=3, selective H_MAX=5. Chỉ những nhánh mà lethal sequence, forced response, threshold quan trọng, delayed payoff, hoặc near-tie giữa top candidates còn nằm ở ranh giới 3 lượt mới được kéo dài lên 4-5 lượt. Không biến tất cả thành 5 lượt để làm nổ tính toán.
Rollout là initial 32/candidate, rồi chỉ các ứng viên top còn mơ hồ mới tăng 64→128→256. Root được phân loại thành UNIQUE_BEST / PRACTICAL_TIE / UNRESOLVED. Các ứng viên epsilon_decision 0,02/0,03/0,05 chỉ được so sánh trong development-only, rồi freeze trước holdout mới. Tôi tham khảo nguyên tắc thiết kế của Best-arm identification, tức “dồn tính toán vào các ứng viên top còn mơ hồ”, nhưng không gọi triển khai SVWB là Track-and-Stop.
15. QC mới: trước khi tạo AI mạnh nhất, không để “sai mà rất tự tin” lọt vào bản chạy thật
Primary gate gồm hidden-info 0, future-draw-order violation 0, rule gap 0, strategy-fusion violation 0, PROVEN_* false positive 0, FORCED_* scope mislabel 0, chance completeness violation 0, immediate lethal miss 0, avoidable forced-loss selection 0, split leakage 0. Sau đó mới đánh giá coverage toàn bộ 7 leader, UNIQUE_BEST argmax, mean/p90/p95 regret, leader floor và top2 best-set.
Brier, log loss, pairwise, Spearman, Kendall và calibration là Secondary. Secondary có tốt cũng không cứu Primary failure. v1.1 holdout đã dùng rồi, nên cấm tái dùng cho training hoặc threshold tuning.
Cho AI nhìn tương lai thì nó yếu đi. Cho nó học tỉ lệ thắng thì nó dự đoán tốt hơn, nhưng lại chọn nước tốt nhất tệ hơn. Vì vậy bước tiếp theo là tính ngược từ cách thắng, tính ngược cả từ cách chết, và chỉ gọi những gì chứng minh được là “bắt buộc”.
Tạo AI mạnh nhất nào, bằng AI. Hiện tại có nghi ngờ rằng QC mạnh hơn game AI. Chắc là bình thường.
