Tìm điểm trung tâm trong tập hợp điểm không gian hệ mét, nhỏ hơn ?


9

Tôi có một bộ điểm được xác định trong một không gian số liệu - vì vậy tôi có thể đo 'khoảng cách' giữa các điểm nhưng không có gì khác. Tôi muốn tìm điểm trung tâm nhất trong tập hợp này, mà tôi xác định là điểm có tổng khoảng cách tối thiểu cho tất cả các điểm khác. Việc tính toán số liệu chậm, vì vậy cần phải tránh khi có thể.n

Cách rõ ràng để tìm điểm này sử dụng phép tính khoảng cách theo hệ mét, vì đơn giản là (a) tính cho mỗi điểm tổng khoảng cách đến tất cả các điểm khác và sau đó (b) lấy điểm tối thiểu.n2

Có cách nào để làm điều này trong các so sánh khoảng cách ít hơn không? (Có thể sử dụng bất đẳng thức tam giác theo một cách nào đó, nên giữ theo số liệu của tôi.)O(n2)

Một xấp xỉ tốt có thể đủ nếu một phương pháp chính xác không tồn tại.


Không có bất đẳng thức tam giác (hoặc một số cách khác để có được thông tin về các cạnh không được đo lường), là giải pháp duy nhất; điều này có thể được nhìn thấy bởi một lập luận đối kháng. O(n2)
Kittsil

Giả sử bất đẳng thức tam giác có sẵn - nó nên dành cho số liệu của tôi.
Hậu cần mở cửa

Điều này về cơ bản là tính toán các radio của đồ thị với tam giác đều.
Kaveh

@Kaveh Tôi đoán bạn có nghĩa là bán kính ... trừ khi đồ thị có cạnh bị hỏng. Tôi chắc chắn rằng có quá nhiều từ vựng tôi không biết. --- Nhưng sau đó nó là một biểu đồ hoàn chỉnh và kích thước đầu vào chỉ là số đỉnh.
babou

@OpenDoorLogistic Nếu nó không có bất đẳng thức tam giác, thì đó không phải là một không gian số liệu, theo định nghĩa. Vui lòng làm rõ câu hỏi: nếu bạn biết đó là một không gian số liệu, thì bạn biết nó có bất đẳng thức tam giác; nếu bạn không biết nó có bất đẳng thức tam giác, bạn không thể khẳng định đó là không gian số liệu.
David Richerby

Câu trả lời:


6

Không. Bạn không thể làm tốt hơn trong trường hợp xấu nhất.Θ(n2)

Xem xét sự sắp xếp các điểm trong đó mọi cặp điểm nằm cách nhau . (Đây là một cấu hình có thể.) Sau đó, bạn không thể làm tốt hơn là kiểm tra mọi cạnh. Cụ thể, nếu có bất kỳ cạnh nào bạn chưa kiểm tra, thì đối thủ có thể chọn độ dài của cạnh đó là , hoặc ; tất cả các lựa chọn đó đều phù hợp với tất cả các quan sát khác mà bạn đã thực hiện và với các yêu cầu của một số liệu (ví dụ: với bất đẳng thức tam giác), vì vậy cả ba đều có thể; nhưng họ yêu cầu đầu ra khác nhau. Do đó, nếu thuật toán của bạn không kiểm tra cạnh đó và sau đó xuất ra một cái gì đó, một kẻ thù luôn có thể chọn độ dài cho cạnh không được minh họa sẽ làm cho đầu ra của thuật toán của bạn sai.0,9 1,0 1,110.91.01.1


Tuy nhiên, nếu bạn biết rằng tất cả các điểm sống trong (mặc dù bạn không được cho tọa độ của chúng), thì vấn đề có thể được giải quyết bằng cách đo khoảng cách , giả sử không có thoái hóa (không có tập con của điểm là đồng phẳng). O((d+1)n)d+1RdO((d+1)n)d+1

Đặc biệt, chọn điểm ngẫu nhiên. Đây sẽ là những điểm neo. Với khoảng cách theo cặp của họ, bạn có thể tính tọa độ cho chúng phù hợp với khoảng cách theo cặp của họ. Bây giờ, với mỗi điểm , hãy tính khoảng cách từ đến từng điểm neo. Sử dụng tam giác và những khoảng cách, bạn có thể tính toán vị trí của so với các điểm neo và do đó các tọa độ cho . Làm điều này cho mọi điểm không neo . Bây giờ bạn có tọa độ cho mọi điểm và bạn có thể sử dụng các tọa độ đó để tìm điểm trung tâm mà không yêu cầu nhà tiên tri cung cấp cho bạn bất kỳ khoảng cách cặp nào nữa. Tôi không biết liệu bước cuối cùng này có thể được thực hiện nhanh hơnP P P P P O ( n 2 )d+1PPPPPO(n2) thời gian , nhưng nó có thể được thực hiện mà không cần đo thêm bất kỳ khoảng cách cặp nào.


Bạn có điểm theo chiều . Ngay cả khi nhìn vào tất cả các tọa độ của đầu vào cũng cần có thời gian . n - 1 Θ ( n 2 )nn1Θ(n2)
Louis

@Louis Câu hỏi không nói gì về kích thước và không chắc chắn đó là số liệu. Tất cả chúng ta có là bất đẳng thức tam giác. Vì vậy, quan điểm đúng đắn là nhận xét của Kaveh: như một biểu đồ hoàn chỉnh. Điều đó phù hợp với câu trả lời này. Nhưng tôi không biết liệu nó có phù hợp với bất kỳ số liệu cố định nào không khi phát triển mà không bị ràng buộc. n
babou

@DW Cảm ơn - chúng ta có thể làm gì tốt hơn trong trường hợp trung bình không? Điều này được thúc đẩy bởi một vấn đề trong thế giới thực, vì vậy dữ liệu có thể là 'trung bình' (bất cứ điều gì có thể có nghĩa).
Mở cửa Logistics

@all - xin lỗi vì sự nhầm lẫn re: metric (Tôi là giáo dân trong CS lý thuyết). Hàm khoảng cách của tôi chắc chắn tuân theo 4 tiêu chí cho một không gian số liệu, theo định nghĩa Wikipedia của liên kết không gian số liệu .
Hậu cần mở cửa

@OpenDoorLogistic, tôi đã thêm một trường hợp đặc biệt trong đó dường như có thể làm tốt hơn.
DW

0

Kiểm tra công việc của Piotr Indyk về các thuật toán nhanh cho không gian số liệu. ( Thuật toán tuyến tính cho các vấn đề không gian số liệu , trong Kỷ yếu của STOC '99 , tr.428 .4434. ACM, 1999; PS ) Phần 3 đưa ra thuật toán 1 trung bình xấp xỉ thời gian tuyến tính.


1
Bạn có thể đưa ra một bản tóm tắt của thuật toán? Chúng tôi đang lý tưởng tìm kiếm câu trả lời đầy đủ, thay vì liên kết đến nội dung bên ngoài.
David Richerby

Xin lỗi vì trả lời rất chậm. Tôi rõ ràng không kiểm tra StackExchange rất thường xuyên. Tôi nghĩ rằng tôi sẽ mất hơn một giờ để viết một bản tóm tắt nửa chừng, trong khi bài viết của Piotr được viết rất đẹp, giải thích thuật toán rất sắc nét và có tất cả các định nghĩa chính xác bên cạnh nó. Vì vậy, cá nhân tôi đặc biệt khuyên bạn nên sử dụng nội dung bên ngoài chất lượng cao này, thay vì nội dung chất lượng trung bình tôi có thể sản xuất. Câu trả lời ngắn gọn là: Nếu bạn sẵn sàng chỉ tìm một trung vị gần đúng, bạn có thể làm như vậy trong thời gian tuyến tính O (n).
user71641
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.