Lợi ích của việc sử dụng thuật toán di truyền


13

Bất cứ ai có thể giải thích cho tôi những lợi ích của thuật toán di truyền so với các phương pháp tìm kiếm và tối ưu hóa truyền thống khác?


4
Loại GA nào? So với phương pháp "truyền thống" nào? Nếu không có điều này, người ta chỉ có thể nói điều gì đó như "Sự hội tụ nhanh hơn và nguy cơ bị mắc kẹt tối ưu cục bộ trong một số ứng dụng", giống như đối với bất kỳ phương pháp tối ưu hóa nào khác.

Câu trả lời:


19

Những lý do chính để sử dụng một thuật toán di truyền là:

  • có nhiều tối ưu cục bộ
  • hàm mục tiêu không trơn tru (vì vậy không thể áp dụng các phương pháp phái sinh)
  • số lượng tham số rất lớn
  • chức năng mục tiêu là ồn ào hoặc ngẫu nhiên

Một số lượng lớn các tham số có thể là một vấn đề đối với các phương thức dựa trên đạo hàm khi bạn không có định nghĩa về độ dốc. Trong loại tình huống này, bạn có thể tìm thấy một giải pháp không tồi thông qua GA và sau đó cải thiện điều đó bằng phương pháp dựa trên đạo hàm. Định nghĩa của "lớn" đang tăng lên tất cả các thời gian.


3
+1. Tôi đã từng say mê GA, nhưng bây giờ có xu hướng tránh chúng. Dường như với tôi rằng họ đã trải qua giai đoạn cường điệu, truyền cảm hứng cho một loạt các phương pháp tương tự tự nhiên (ACO, v.v.) và sau đó mờ dần trở lại vào một hốc. Sắp xếp giống như Mạng lưới thần kinh, theo khuynh hướng cá nhân của tôi. (Điều đó nói rằng, tôi đã sử dụng ES gần đây.)
Wayne

1
Wayne, tôi đồng ý. Tôi có xu hướng nói "GA" cho bất kỳ chiến lược tiến hóa nào, và pha trộn các kỹ thuật khác thường cũng là một ý tưởng tốt. GA truyền thống là không hiệu quả khủng khiếp.
Patrick Burns

7
  • Khái niệm là dễ hiểu
  • Mô-đun, tách biệt với ứng dụng
  • Hỗ trợ đa mục tiêu
  • tối ưu hóa tốt cho môi trường ồn ào
  • Luôn luôn là một câu trả lời; câu trả lời trở nên tốt hơn với thời gian
  • Song song vốn có; dễ dàng phân phối

Trong công việc của tôi, sự song song dễ dàng là yếu tố quan trọng nhất trong việc sử dụng thuật toán di truyền hơn là một thứ giống như ủ mô phỏng.
Veryshuai

6

Các thuật toán di truyền khác với các phương pháp tìm kiếm và tối ưu hóa truyền thống ở bốn điểm quan trọng:

  • Các thuật toán di truyền tìm kiếm song song từ một quần thể các điểm. Do đó, nó có khả năng tránh bị mắc kẹt trong giải pháp tối ưu cục bộ như các phương pháp truyền thống, tìm kiếm từ một điểm duy nhất.
  • Các thuật toán di truyền sử dụng quy tắc chọn xác suất, không phải là quy tắc xác định.
  • Các thuật toán di truyền hoạt động trên Chromosome, phiên bản được mã hóa của các tham số của các giải pháp tiềm năng, thay vì chính các tham số.
  • Các thuật toán di truyền sử dụng điểm số thể dục, được lấy từ các hàm mục tiêu, không có thông tin phái sinh hoặc phụ trợ khác

3

Các thuật toán di truyền là loại cuối cùng. Chúng chỉ hữu ích khi giải pháp phân tích không khả thi (xem câu trả lời của Patrick vì những lý do phổ biến nhất) và bạn có nhiều thời gian CPU trong tay.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.