Giả sử có một lưới có chứa cả hai bức tường (ô bị chặn) cũng như các mặt hàng thực phẩm được đặt ở bất kỳ vị trí nào trên lưới.Thuật toán vị trí địa lý kiến tối ưu
Bây giờ giả sử chúng ta đang cố gắng để quyết định vị trí tối ưu để đặt một đàn kiến trên lưới này, như vậy mà kiến phải đi khoảng cách tối thiểu (theo hướng nào đến/từ điểm khởi đầu của thuộc địa) để có được lượng thức ăn tối đa.
Cho đến nay, phương pháp tốt nhất mà tôi đã đưa ra như sau:
for each square on the grid
use a shortest path algorithm to find the distance to/from each food source from this square
sum these distances to find a number and put the number in that square
select the square with the smallest number
có phương pháp này thậm chí làm việc? Có giải pháp hiệu quả hơn không?
Tối ưu hóa sẽ theo dõi khoảng cách ngắn nhất và ngừng tính bất kỳ 'tổng các đường đi ngắn nhất' nào vượt quá. – tofi9
Không rõ chức năng nào bạn đang cố tối ưu hóa ở đây. Các viên thức ăn có cùng kích thước không? Giả sử có một viên tại (0,0) và một tại (4,0). Có tốt hơn để có thuộc địa tại (0,0) (trên đầu trang của một viên, và 4 đơn vị từ các viên khác), hoặc để có thuộc địa tại (2,0) (nửa đường giữa hai viên)? Nếu bạn coi trọng một viên thức ăn như là thực phẩmValue/khoảng cách, đầu tiên là tốt hơn. Nếu bạn đánh giá một viên như foodValue - khoảng cách, tất cả các vị trí giữa các viên đều tốt như nhau. Một con kiến có thể mang một viên toàn bộ trở lại thuộc địa trong một chuyến đi không? –
@robmayoff Tôi nghĩ rằng "những con kiến phải đi xa nhất" là khá rõ ràng - OP đang cố gắng giảm thiểu tổng khoảng cách giữa một điểm cụ thể và tất cả các ô chứa thực phẩm. –