4

Chuyển hóa bài toán: từ chọn thuật toán đến quá trình khám phá

AI999第3课:现实世界的复杂性与多目标权衡
00:00

Trong ứng dụng thực tế của tính toán tiến hóa, một sai lầm phổ biến ngay từ điểm xuất phát là — vừa nhận nhiệm vụ đã hỏi ngay “Tôi nên dùng DE hay PSO”. Câu hỏi này đặtviệc chọn thuật toánngay tại lối vào của quá trình giải, nhưng nó chỉ trả lời “dùng công cụ gì để tìm kiếm”, chứ không trả lời “cần tìm cái gì, thế nào là tốt, điều gì tuyệt đối không được vi phạm”. Điều thực sự quyết định thành bại lại chính làchất lượng của việc định nghĩa bài toán.

Cái gọi làchuyển hóa bài toánchính là việc viết lại “chọn thuật toán nào” thành “thiết kế một quá trình có thể khám phá”: trước tiên làm rõ trong bài toán thực tế cái gì có thể thay đổi, sau khi thay đổi thì đánh giá thế nào, những ràng buộc nào bắt buộc phải thỏa mãn, rồi mới để thuật toán sinh và sàng lọc các ứng viên một cách lặp đi lặp lại trong không gian tìm kiếm đó. Nhờ vậy, việc chọn thuật toán trở thành một mắt xích trong thiết kế quá trình khám phá, chứ không phải là điểm khởi đầu của nó.

Chuyển hóa bài toán: từ chọn thuật toán đến quá trình khám pháBài toán thực tếMục tiêu, hiện tượng và bối cảnh1Đối tượng có thể thay đổiTham số · cấu trúc · chiến lược → mã hóa2Phương pháp đánh giáHàm mục tiêu · chỉ số · sở thích3Ràng buộc cốt lõiRàng buộc cứng vs sở thích mềmHình thức hóa4Quá trình khám pháSinh ứng viên → Đánh giá → Phản hồi → Tái sinh: để kết quả đánh giá quay trở lại vòng sinh tiếp theoLặp vòng kínSinh ứng viênLấy mẫu theo không gian tìm kiếmĐánh giáHàm mục tiêu + kiểm tra ràng buộcPhản hồiCập nhật phân phối và áp lực chọn lọcTái sinhDùng phân phối đã cập nhật để tạo thế hệ mớiKết quả đánh giá quay trở lại, thúc đẩy vòng sinh tiếp theoXuất ra một tập nghiệm ứng viên khả thiTập phương án ứng viênCác nghiệm khả thi phân bố tốt trên sự đánh đổi mục tiêu, chuyển giao cho quyết định của kỹ thuật và sản phẩm

Bốn định nghĩa phải được xác lập trước tiên

  • Đối tượng có thể thay đổi: Xác định những tham số, cấu trúc, chiến lược hoặc quy trình nào được phép điều chỉnh, từ đó hình thành không gian tìm kiếm và biên mã hóa. Nếu không có nó, nghiệm ứng viên không thể được biểu diễn, cũng không thể sinh ra.
  • Phương pháp đánh giá: Định nghĩa cách đánh giá tốt xấu sau khi thay đổi, bao gồm hàm mục tiêu, chỉ số đánh giá, hướng sở thích, cùng các độ đo như tính khả thi và tính đa dạng. Cách đánh giá thực chất quyết định hướng đi của quá trình tìm kiếm.
  • Ràng buộc cốt lõi: Phân biệt ràng buộc cứng bắt buộc thỏa mãn với sở thích mềm có thể đánh đổi. Việc trộn ràng buộc cứng vào hàm mục tiêu để “chiết khấu” rất dễ tạo ra những phương án trông có vẻ điểm cao nhưng hoàn toàn không thể triển khai.
  • Quá trình khám phá: Hình thức hóa bài toán thành vòng kín “sinh ứng viên — đánh giá — phản hồi — tái sinh”, để kết quả đánh giá tác động ngược trở lại việc sinh tiếp theo, thay vì cố định hóa cách giải ngay từ đầu.

Khác biệt mà sự chuyển hóa mang lại

Khi đối mặt với một bài toán tối ưu tham số, cách làm theo thói quen là “chọn một thuật toán trước — chẳng hạn DE hoặc PSO — rồi bắt đầu tinh chỉnh tham số”. Cách làm sau khi chuyển hóa là lần lượt trả lời ba câu hỏi: Những tham số nào có thể điều chỉnh? Dùng chỉ số nào (hoặc những chỉ số nào xung đột với nhau) để đánh giá? Những ràng buộc nào tuyệt đối không được vi phạm? Sau khi trả lời xong ba câu hỏi này, bài toán đã được hình thức hóa thành một bài toán đa mục tiêu có thể đưa vào bộ giải tiến hóa; lúc này việc quyết định dùng thuật toán nào, với cấu hình toán tử nào để khám phá, chỉ là một quyết định kỹ thuật có thể thay thế bên trong vòng kín. Nói cách khác, thuật toán không phải là câu trả lời, nó chỉ là một mắt xích có thể cấu hình trong quá trình khám phá, và chính chất lượng định nghĩa bài toán mới quyết định giới hạn trên của quá trình khám phá.

Hiểu lầm thường gặp
Quy trực tiếp “hiệu quả thuật toán kém” cho bản thân thuật toán mà bỏ qua ba điều căn bản hơn: định nghĩa không gian tìm kiếm mơ hồ, chỉ số đánh giá tách rời mục tiêu kinh doanh thực tế, thiếu ràng buộc cứng. Sửa định nghĩa bài toán trước rồi mới bàn đến việc thay thuật toán thường hiệu quả hơn nhiều so với việc liên tục đổi thuật toán.