1 Giới thiệu
chùm tìm kiếm [2] thực hiện một thuật toán tìm kiếm không gian trạng thái,
chẳng hạn như tìm kiếm hoặc sâu-đầu tiên nhất đầu tiên
tìm kiếm [16], nhưng có thể sử dụng quy tắc cắt tỉa heuristic để loại bỏ
nonpromising lựa chọn tìm kiếm mà dường như không
để dẫn đến một giải pháp hay xuất hiện để dẫn đến một giải pháp
không đạt chất lượng. Cắt tỉa Heuristic giữ
kích thước của chùm tia, các lựa chọn thay thế tìm kiếm còn lại,
càng nhỏ càng tốt, để có thể tìm ra một giải pháp
nhanh chóng. Ý tưởng về tìm kiếm chùm là đơn giản, và
đã được áp dụng thành công cho nhiều vấn đề khác nhau,
chẳng hạn như học tập [4], jobshop lịch [5], bài phát biểu
công nhận [12], lập kế hoạch [14], và tầm nhìn [19].
Mặc dù thực tế là tìm kiếm chùm đã tồn tại trong hơn
hai thập kỷ qua và đã được áp dụng cho nhiều RealWorld
ứng dụng, nó đã không được nghiên cứu cẩn thận.
chùm tìm kiếm là một kỹ thuật dựa trên kinh nghiệm sử dụng để giảm
độ phức tạp tìm kiếm. Nó có, tuy nhiên, một nhược điểm nghiêm trọng
của thể chấm dứt không có giải pháp hoặc một dung dịch
chất lượng không đạt yêu cầu. Nói cách khác, tìm kiếm chùm là
một thuật toán không đầy đủ mà không được đảm bảo để tìm một
giải pháp ngay cả nếu có. Sức mạnh cắt tỉa và khả năng
của việc tìm kiếm một giải pháp phụ thuộc vào độ chính xác của
các quy tắc cắt tỉa sử dụng. Các nguyên tắc sáng hiệu quả nói chung là
phụ thuộc vào vấn đề, và hiệu quả của họ xuất phát
từ sự hiểu biết sâu sắc về lĩnh vực vấn đề. Trong
thực tế, rất khó để tìm thấy các nguyên tắc sáng hiệu quả
mà có thể tạo sự cân bằng của việc tìm kiếm một mong muốn
mục tiêu và sử dụng số lượng tối thiểu của các tính toán.
Trong bài báo này, đầu tiên chúng tôi đề xuất một miền độc lập
quy tắc cắt tỉa heuristic sử dụng nút chỉ dựa trên kinh nghiệm
đánh giá (Phần 3), và một phương pháp để tăng
khả năng tìm kiếm chùm tìm thấy một giải pháp (Phần 4).
Chúng tôi sau đó phát triển một thuật toán tìm kiếm tia bất cứ lúc nào hoàn toàn
có khả năng tiếp tục tìm giải pháp tốt hơn
và cuối cùng đạt được một giải pháp tối ưu (Phần
5) . Chúng tôi áp dụng hoàn chỉnh tìm kiếm tia bất cứ lúc nào để
các satisfiability boolean tối đa và sự đối xứng
và bất đối xứng Traveling Salesman vấn đề, và
điều tra các tính năng bất cứ lúc nào của thuật toán mới
về những vấn đề thực tế (Phần 6). Chúng tôi thảo luận liên quan
làm việc tại mục 7, và cuối cùng kết luận ở phần 8.
2 tia kiếm
tia tìm kiếm điều hành một phương pháp tìm kiếm không gian trạng thái, chẳng hạn
như tìm kiếm tốt nhất đầu tiên (BFS) hoặc chiều sâu-đầu tiên tìm kiếm (DFS).
Điều gì bộ tìm kiếm chùm ngoài việc tìm kiếm cơ bản của nó
là việc sử dụng các nguyên tắc sáng để tỉa lựa chọn tìm kiếm
trước khi khám phá chúng. Lưu ý rằng những cắt tỉa heuristic,
quy định khác nhau từ các quy tắc cắt tỉa dựa trên
chi phí nút đơn điệu và một ràng buộc trên o ~ trên chi phí
của một mục tiêu tối ưu. Để thực hiện tự giấy chứa,
chúng tôi danh sách tìm kiếm chùm trong Bảng 1, trong đó R đại diện cho các
bộ quy tắc cắt tỉa heuristic, và c (n) là chi phí của n.
Chùm tìm kiếm có thể sử dụng chiến lược nào, chẳng hạn như đầu tiên tốt nhất hoặc
sâu đầu tiên , để chọn một nút ở dòng 3 của Bảng 1
BeamSearch (vấn đề, tôi ~, ~)
1. mở ~ - {vấn đề};
2. WHILE (mở ~ ~)
3. n ~ - một nút trong mở;
4. Nếu (n là một mục tiêu mong muốn) xuất cảnh;
5. Nếu (n là một mục tiêu ~ e (n) <~) ~ ~ c (n);
6. Di n từ mở;
7. Tạo ra tất cả con cái của n;
8. Vứt bỏ một đứa trẻ n 'nếu c (n')> _
9. Bỏ n 'nếu tỉa bởi một quy tắc trong R;
10. Chèn trẻ em còn lại vào mở.
đang được dịch, vui lòng đợi..
