Các thuật toán để xác định vị trí tối ưu


8

Tôi đang cố gắng so sánh các địa điểm nơi mà hàng ngàn cơ sở đã được xây dựng thực sự đến nơi chúng sẽ được đặt tối ưu để giảm thiểu thời gian di chuyển của dân cư (đại diện bởi khối điều tra dân số hoặc trung tâm đường ống). Tôi gặp khó khăn khi tìm kiếm bất cứ điều gì về cách xác định vị trí tối ưu.

Tôi đã có một số ý tưởng về cách chọn các vị trí này, nhưng số lượng điểm được đặt trong không gian có nghĩa là bất kỳ thuật toán được tối ưu hóa không thông minh nào sẽ mất nhiều thời gian, có thể là nhiều năm. Vì vậy, câu hỏi của tôi: Có thuật toán tiêu chuẩn để chọn nơi xác định vị trí một số điểm cố định ?

Cuối cùng tôi sẽ lấy bất kỳ thuật toán nào tôi tìm thấy làm điểm khởi đầu và điều chỉnh nó để kết hợp nhiều thông tin hơn chỉ là số lượng dân số. Do đó, câu trả lời ưa thích sẽ bao gồm một mô tả chi tiết về thuật toán, mã hoặc được viết bằng ngôn ngữ nguồn mở, để tôi có thể sao chép và mở rộng nó. Tuy nhiên, nếu ArcGIS có chức năng thuận tiện cho việc tối ưu hóa này, tôi rất vui khi bắt đầu với điều đó.


1
Nó sẽ giúp có một mô tả rõ ràng hơn - tốt nhất là định lượng - về ý nghĩa của "tối ưu". Chẳng hạn, bạn có quan tâm đến thời gian di chuyển khứ hồi trung bình đến cơ sở gần nhất hoặc một số biện pháp gần khác không? Bất kể số đo chi phí chuyến đi của bạn là bao nhiêu, bạn có muốn so sánh chi phí của cấu hình hiện tại với chi phí tốt nhất có thể đạt được bằng cách di dời bất kỳ cơ sở hiện có nào không, hoặc bạn cũng muốn cho phép các cơ sở được loại bỏ hoàn toàn? Mặc dù loại bỏ một cơ sở làm tăng thời gian chuyến đi, nhưng nó làm giảm chi phí xây dựng và bảo trì các cơ sở.
whuber

@whuber Cho đến bây giờ tôi chỉ quan tâm đến việc giảm thiểu một số chức năng hợp lý của khoảng cách (có thể là con ruồi hoặc hình vuông của nó). Vấn đề tối ưu hóa cuối cùng sẽ bao gồm các yếu tố bạn đã xác định và hơn thế nữa (chi phí để di dời một cơ sở, v.v.). Nhưng hiện tại tôi chỉ muốn một cách tiêu chuẩn để chọn vị trí để giảm thiểu khoảng cách, bởi vì đó là điểm khởi đầu để mở rộng hướng tới thuật toán cuối cùng, và bởi vì tôi đang ở trên hàng rào về việc tiếp tục dự án này và muốn khám phá ước tính máy nghiền trước khi tinh chỉnh nó.
Ari B. Friedman

Câu trả lời:


3

Bạn có thể muốn kiểm tra thuật toán phân cụm K-nghĩa .

Trong khai thác dữ liệu, phân cụm k-mean là một phương pháp phân tích cụm nhằm mục đích phân chia n quan sát thành các cụm k trong đó mỗi quan sát thuộc về cụm có giá trị trung bình gần nhất. Điều này dẫn đến việc phân vùng không gian dữ liệu vào các ô Voronoi.

Đây là một định nghĩa khác :

k-mean clustering là một phương pháp phân loại / nhóm các mục thành k nhóm (trong đó k là số lượng các nhóm được chọn trước). Việc phân nhóm được thực hiện bằng cách giảm thiểu tổng khoảng cách bình phương (khoảng cách Euclide) giữa các mục và tâm tương ứng.

Một centroid là "trung tâm khối lượng của một vật thể hình học có mật độ đồng đều", mặc dù ở đây, chúng ta sẽ coi các vectơ trung bình là centroid.

nhập mô tả hình ảnh ở đây

Hình 1. Một biểu đồ phân tán cụm. Các chấm đen là điểm dữ liệu. Các đường màu đỏ minh họa các phân vùng được tạo bởi thuật toán k-mean. Các dấu chấm màu xanh đại diện cho các tâm xác định các phân vùng

Trong trường hợp của bạn, khối điều tra dân số hoặc trọng tâm theo dõi sẽ là đầu vào và số điểm N sẽ là số cụm. Đây là một hướng dẫn để giúp bạn bắt đầu.


Hấp dẫn. Tôi chưa bao giờ nghĩ về K-nghĩa cho việc này, nhưng tôi đoán những người trung tâm thực sự có tài sản mà tôi muốn.
Ari B. Friedman

Bạn có thể muốn kiểm tra nó và xem nó hoạt động như thế nào :)
RK

Nó dường như hoạt động tốt trên dữ liệu mẫu, nhưng việc triển khai của R thiếu khả năng cân (theo dân số, trong trường hợp này). Tôi có thể phải viết lại hàm để cho phép tính trọng số. Cuối tuần của tôi đi ;-)
Ari B. Friedman

1
Hãy cẩn thận: phương tiện k không xác định vị trí tối ưu cho hầu hết các vấn đề du lịch. Đó là tối ưu khi chi phí của chuyến đi chơi là tỉ lệ với bình phương khoảng cách của nó. Giải pháp cho các chi phí điển hình, có mối quan hệ tuyến tính với khoảng cách, là cực kỳ khó khăn để có được.
whuber

@whuber Thật vậy. Điều này được thực hiện rõ ràng trong một giải trình nhanh chóng với mã chi tiết (Fortran và C ++) tại đây . Chi phí đi lại liên quan đến chăm sóc khẩn cấp, vì vậy chi phí đi lại siêu tuyến tính không hoàn toàn không hợp lý, mặc dù quảng trường dường như không chính xác.
Ari B. Friedman

1

Tôi đã viết một bài báo về vấn đề này vào năm 1996, xem

Mô hình hóa và tối ưu hóa các luồng sử dụng Mô hình tương tác không gian song song (1996), Turton & Openshaw, THỦ TỤC EURO-PAR'96, TẬP II.

Bạn có thể tải xuống một bản sao từ citeseer

Chúng tôi cũng đã viết

Turton I., Openshaw S. (1997) Các mô hình tương tác không gian song song. Mô hình địa lý và môi trường, Tập 1, số 2, trang 179-197.

nhưng tôi không thể tìm thấy một bản sao trực tuyến.

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.