Tôi đã học về A *, BFS, DFS và có thể triển khai chúng khá tốt. Tuy nhiên, một số vấn đề phát sinh khi tôi cố gắng làm điều đó trong việc giải quyết vấn đề tìm đường dẫn pacman. Giả sử chỉ có hai loại mê cung: một loại có đầy đủ vật phẩm, như không có ô trống, mọi thứ đều là pacman hoặc item-to-collect hoặc wall; và một chỉ có một vài mục (4 hoặc ít hơn).Một số câu hỏi với tìm đường dẫn pacman
BFS và DFS được triển khai chính xác như thế nào nếu có nhiều hơn một mục để thu thập? Trong trường hợp như vậy, họ vẫn tạo ra kết quả tối ưu?
Thuật toán/heuristic tốt nhất cho bản đồ toàn bộ mục là gì? Những gì tôi đã đưa ra cho đến nay là một cái gì đó như heuristic tham lam, nhưng nó là khá ngẫu nhiên do bản đồ có quá nhiều mặt hàng để thu thập và do đó, không phải là một ý tưởng tốt để giải quyết mê cung như vậy.
Sử dụng A *, trong bản đồ vài mục, có cách nào tốt để xác định mục nào cần được thực hiện trước không? Tôi đã nghĩ đến việc cố gắng sử dụng khoảng cách Mahattan như một ước tính sơ bộ, nhưng điều đó không có vẻ đúng, đặc biệt là trong một số tình huống khó khăn.
Câu hỏi 2 có vẻ như tầm thường ... pacman chỉ muốn ăn tất cả các món đồ để anh ta phải ghé thăm mọi nút trong đồ thị và bất kỳ quá trình truyền tải đồ thị nào làm. Đó là, trừ khi có một số loại hạn chế (có thể anh ta bị ăn bởi một con ma sau khi X di chuyển), và các goodies có giá trị khác nhau? Hai câu hỏi là tuyệt vời và tôi sẽ cố gắng tìm ra chúng vì thiếu bất cứ điều gì tốt hơn để làm ... bạn sẽ không xảy ra để viết một khuôn khổ pacman nhỏ mà có thể tiết kiệm cho tôi một thời gian, phải không? ;) – jjm
Về câu hỏi 2: hạn chế duy nhất là con đường pacman tìm thấy phải là một tốt (hoặc tối ưu) một trong số đếm bước. Nếu tôi chỉ để cho pacman di chuyển một cách vô thức, hãy ghé thăm từng ô vuông một lần, thì điều đó sẽ không hoạt động đúng không? Đối với điều khuôn khổ, thực sự xin lỗi nhưng tôi không có bất kỳ :( – IcySnow