Phát hiện đồng phẳng bằng khoảng cách cặp đôi


7

Hãy xem xét một đồ thị có trọng số vô hướng , trong đó V \ subset \ mathbb {R} ^ 3 để các điểm là 3D và trọng số của một cạnh bằng khoảng cách (Euclide) giữa các điểm cuối của nó. Lưu ý rằng chúng ta không được cung cấp tọa độ của các điểm trong V. Chúng ta thậm chí có thể không được cung cấp tất cả các khoảng cách theo cặp, do đó đồ thị không cần phải hoàn thành và thậm chí có thể còn thưa thớt.G=(V,E)VR3

Giả sử chúng ta đã cho k và nói rằng có k mặt phẳng sao cho tất cả các đỉnh thuộc về ít nhất một trong các mặt phẳng đó. Chúng tôi muốn tìm k máy bay như vậy, với một hạn chế bổ sung:

Để xác định xem 4 điểm có phải là đồng phẳng chỉ với khoảng cách theo cặp của chúng hay không, phương pháp đơn giản nhất là sử dụng định thức Cayley-Menger . Đối với vấn đề của chúng tôi, điều này sẽ đòi hỏi đồ thị phải khá dày đặc, vì chúng tôi cần biết hầu hết các khoảng cách theo cặp để áp dụng Cayley-Menger. Hạn chế là tìm k máy bay mà không sử dụng định thức Cayley-Menger.

Nếu điều này là không thể, chúng ta có thể có được một bằng chứng cho thấy điều này là không thể? Nói cách khác, chúng ta có thể chứng minh rằng với bất kỳ đồ thị nào như vậy và cho , nếu chúng ta có đủ thông tin để tìm máy bay cho bằng cách nào đó, thì chúng ta có đủ thông tin để sử dụng Cayley-Menger để tìm máy bay không?GkkGk


một tham chiếu rằng yếu tố quyết định của Cayley-Menger là đủ cho mục đích đó sẽ hữu ích nếu bạn biết. ý bạn là gì "tất cả các khoảng cách theo cặp giữa mỗi 4 nút"? không có nhiều khoảng cách cặp như các cạnh với pts được lấy làm đỉnh trên biểu đồ? thuật toán bạn có trong tâm trí xem xét tính đồng nhất của tất cả các lựa chọn 4 điểm? thêm về coplanar
vzn

ý tưởng: nghĩ rằng điều này khái quát. đặt tất cả các điểm trong một ma trận và tìm thứ hạng của nó. nếu là 2, tất cả chúng đều là coplanar. điều này có thể đi tốt hơn về Toán học ...?
vzn

@vzn Đó là một ý tưởng tốt nhưng nếu có nhiều nhóm cảm biến coplanar thì sao?
padawan

Không rõ bạn đang hỏi gì. Chúng ta có được điểm hay không? Bạn có ý nghĩa chính xác bởi "tập hợp các điểm đã cho và khoảng cách theo cặp (không phải tọa độ)"? Cho một ví dụ.
Craig Gidney

1
Nói chung, các mặt phẳng có thể không phải là duy nhất. Chẳng hạn, nếu các đỉnh là các đỉnh của một khối lập phương và , thì mặt phẳng trên cùng và dưới cùng hoạt động, cũng như mặt trước và mặt sau, cũng như bên trái và bên phải. Bạn đang nói về các mặt phẳng , nhưng có lẽ bạn vẫn ổn với việc tìm kiếm bất kỳ mặt phẳng nào vẫn thực hiện thủ thuật bao gồm tất cả các điểm trong ? kk=2 k kV
Amit Kumar Gupta

Câu trả lời:


3

Tôi nghĩ rằng nếu biểu đồ đầu vào được kết nối 3 và bạn giả sử một số nguồn gốc và hướng tùy ý, bạn có thể tạo lại các điểm ban đầu. Đặc biệt là nếu bạn có thể tìm thấy K_4 để gieo mầm quá trình tam giác.

Một khi chúng ta có điểm, các chiến lược tham lam trở nên có sẵn. Chúng có thể không tối ưu, nhưng có lẽ chúng đủ cho mục đích của bạn.

Tôi đã hỏi về việc phục hồi nhúng như một câu hỏi riêng biệt.

Tham lam ngẫu nhiên

Cho đến khi chúng tôi có ít hơn ba điểm không đủ tiêu chuẩn, hãy tự ý chọn ba trong số đó, nhường máy bay đi qua chúng và đánh dấu tất cả các điểm trên mặt phẳng là không đủ tiêu chuẩn.

Lấy các điểm không đủ tiêu chuẩn còn lại (nếu có), ghép chúng với một số điểm không đủ tiêu chuẩn và đưa máy bay đi qua chúng.

Các mặt phẳng chúng tôi mang lại bao gồm tất cả các điểm. Số lượng mặt phẳng chúng tôi mang lại nhiều nhất là và mỗi mặt phẳng yêu cầu quét qua các điểm còn lại, do đó thuật toán này mất thời gian (nhanh hơn so với tính toán một định thức).n3O(n2)

Nếu số lượng máy bay , thì chúng ta có tỷ lệ khá hợp lý khi đánh một trong những mặt phẳng lớn. Tôi không chắc thời gian chạy dự kiến là bao nhiêu, nhưng tôi sẽ đoán nó ở . (Điều đó dựa trên vấn đề người sưu tập phiếu giảm giá ngụ ý rằng chúng ta cần lần truy cập để thu thập máy bay và tỷ lệ của một lần truy cập là vì vậy thời gian dự kiến ​​giữa các lần truy cập là ).knO(nk3logk)klogkk(1/k)2k2

Tham lam ưu tiên

Một điều khác chúng ta có thể làm, nếu chúng ta có thể giải quyết các điểm, là lặp lại trên tất cả các bộ ba và đếm xem có bao nhiêu điểm trên mặt phẳng đó. Sau đó, chúng tôi liên tục nhường mặt phẳng bao phủ hầu hết các điểm, cho đến khi không còn điểm nào.

Nếu chúng ta không tính đến các điểm không đủ tiêu chuẩn khi chọn mặt phẳng tiếp theo, thì việc này sẽ mất thời gian trong đó là số lượng mặt phẳng chúng ta trả về. Nếu chúng tôi ưu tiên lại, thì tôi nghĩ nó vẫn có thể được thực hiện trong (số điểm không đủ tiêu chuẩn trên các mặt phẳng khác chỉ có thể thay đổi theo 2 để có thể cân bằng lại theo cách thông minh ).O(n3logt)tO(n3logt)

Cách tiếp cận này sẽ làm tốt hơn, nhưng một lần nữa tôi không nghĩ rằng nó được đảm bảo có . Chúng ta có thể sắp xếp các điểm sao cho việc đi máy bay bao trùm hầu hết chúng sẽ khiến chúng ta đi sai đường.t=k


Câu đầu tiên của bạn về thuật toán đầu tiên về cơ bản là "chọn 3 điểm và không đủ tiêu chuẩn cho tất cả các điểm là đồng phẳng với 3 điểm đó." Nhưng làm thế nào để bạn xác định điểm nào là coplanar? Đó là toàn bộ vấn đề của câu hỏi này. Giả sử rằng bạn không biết tọa độ của các điểm và chỉ biết một số khoảng cách theo cặp của chúng, làm thế nào để bạn phát hiện sự đồng bộ?
Amit Kumar Gupta

@AmitKumar Bất kỳ bộ ba điểm tùy ý nào là đồng phẳng, bởi vì chúng xác định một mặt phẳng . Một trường hợp góc là khi chúng suy biến (hai trong số các điểm giống nhau hoặc ba điểm nằm trên một đường thẳng), trong trường hợp đó chúng vẫn là đồng phẳng nhưng nhiều mặt phẳng có thể bao phủ chúng.
Craig Gidney

@AmitKumar Ồ, tôi thấy rằng bạn có nghĩa là làm thế nào để bạn kiểm tra nếu một điểm nằm trên một mặt phẳng. Về cơ bản, chấm sản phẩm của mặt phẳng so với điểm đồng bằng của điểm tới điểm trên mặt phẳng . Khi sản phẩm chấm bằng 0 (hoặc gần bằng 0 nếu bạn xấp xỉ), điểm nằm trên mặt phẳng. Bạn làm điều này cho mỗi điểm không đủ tiêu chuẩn.
Craig Gidney

@AmitKumarGupta Nói chính xác hơn một chút, câu hỏi không phải là làm thế nào để khám phá những điểm nào trên máy bay. Đó là về cách chọn một bộ mặt phẳng nhỏ bao phủ các điểm, với nếp nhăn bổ sung mà bạn chỉ nhận được một số khoảng cách điểm thay vì chính các điểm.
Craig Gidney

1
@AmitKumarGupta Nếu bạn có K_4 thì đặt một trong số chúng tại (0,0,0), một cái khác tại (x, 0,0), tiếp theo tại (y, z, 0), và cuối cùng tại (a, b, c) với c> 0. Nếu bạn không thể giải quyết cho một lần nhúng duy nhất, cho đến khi dịch / xoay / phản chiếu, thì tôi không nghĩ có một giải pháp được xác định rõ. Bạn sẽ có được những thứ như các nhóm điểm cứng nhắc được kết nối bằng một đòn bẩy mà bạn có thể xoay xung quanh mà không vi phạm các hạn chế về khoảng cách và tôi không nghĩ rằng các máy bay có thể sống sót khi mất thông tin.
Craig Gidney

3

RANSAC sẽ là một phương pháp ứng cử viên để tìm các mặt phẳng chiếm một phần lớn các điểm.

Giả sử rằng một phần lớn các điểm đi qua một số mặt phẳng , giả sử, trong số chúng. Đây là cách chúng ta có thể tìm thấy nó:Pn/10

Vì vậy, hãy chọn ngẫu nhiên 4 điểm từ ; gọi các điểm đó là . Giả sử chúng ta biết khoảng cách giữa tất cả các cặp như vậy (chúng tạo thành một 4, ). Sau đó, chúng ta có thể sử dụng định thức Cayley-Menger để xem chúng có phải là đồng phẳng hay không. Giả sử chúng là đồng phẳng. Sau đó, chúng ta có thể thử kiểm tra lẫn nhau điểm và xem liệu chúng ta có thể biết liệu nó có cùng mặt phẳng với mặt phẳng được tạo bởi . Chúng tôi chỉ có thể kiểm tra điều này khi điểm bổ sung tạo thành một cụm 4 cùng với một số điểm khác được biết là trên mặt phẳng. Cuối cùng, nếu chúng ta tìm thấy một số điểm đáng kể trên mặt phẳng được tạo bởinq,r,s,tK4xq,r,s,tuq,r,s,t, chúng tôi giữ chiếc máy bay này. Tiếp tục làm điều này cho, 1000 lựa chọn ngẫu nhiên của .q,r,s,t

Làm thế nào tốt này sẽ làm việc? Chà, giả sử chúng ta mô hình hóa biểu đồ dưới dạng biểu đồ ngẫu nhiên trong đó mỗi cạnh có thể xuất hiện với xác suất (vì vậy chúng ta mong đợi trung bình cạnh). Khi đó xác suất để một bộ 4 điểm được chọn ngẫu nhiên tạo thành một cụm 4 trong biểu đồ là . Do đó, nếu chúng ta lấy mẫu ít nhất lựa chọn của , chúng tôi hy vọng sẽ tìm thấy ít nhất một trong những nơi họ tiết lộ máy bay . Ngoài ra, xác suất để một điểm bổ sung tạo thành một cụm 4 có ít nhất ba điểm là , vì vậy khi chúng ta tìm thấy bốn điểm trên mặt phẳngppn(n1)/2p6104/p6q,r,s,tPup,q,rp3q,r,s,tP, Chúng tôi hy vọng sẽ tìm thấy ít nhất của các điểm trên mặt phẳng . (Trên thực tế, có lẽ chúng ta sẽ tìm thấy nhiều hơn thế. Một khi chúng ta có điểm, bây giờ xác suất một điểm bổ sung tạo thành một cụm 4 với ít nhất ba trong số đó là , lớn hơn đáng kể so với ) Nói cách khác, một khi chúng ta tìm thấy điểm trên mặt phẳng , có khả năng chúng ta sẽ giữ mặt phẳng này.p3n/10Pp3n/10v1(1p3)p3n/101exp{p6n/10}p3q,r,s,tP

Vì vậy, miễn là bạn lấy mẫu đủ 4 tổ hợp điểm và miễn là đồ thị của bạn đủ đậm đặc, quy trình này có khả năng phát hiện tất cả các mặt phẳng bao phủ một phần lớn các điểm.


Tuy nhiên, một lần nữa chúng tôi phải sử dụng định thức Cayley-Menger cho mỗi điểm bổ sung mà chúng tôi kiểm tra.
padawan

@cagirici, vâng, chúng tôi làm. Câu trả lời của tôi phù hợp với tuyên bố vấn đề, đến mức độ chi tiết được cung cấp trong câu hỏi. Nếu có một số lý do tại sao nó không giải quyết cài đặt cụ thể của bạn, bạn có thể muốn xem xét chỉnh sửa câu hỏi của mình để cung cấp một bộ yêu cầu kỹ thuật cụ thể hơn. ("Không sử dụng Cayley-Menger" không phải là một yêu cầu kỹ thuật hợp lệ. "Phải làm việc trên các biểu đồ rất thưa thớt" một yêu cầu, nếu bạn có thể hình thành những gì bạn muốn nói là "rất thưa thớt". để đạt được, không phải như thế nào.)
DW

Sau một thời gian dài, tôi trở lại vấn đề đó một lần nữa :) Nếu tôi nói "thuật toán nên hoạt động với các phép đo khoảng cách không nhất quán", đây có phải là một yêu cầu không? Nếu vậy, thuật toán này có hoạt động với các phép đo phạm vi sai không?
padawan

3

Thật không may, câu trả lời là đây là một vấn đề NP-Complete. Chỉ sử dụng 4 mặt phẳng điểm, bạn có thể mã hóa các vấn đề thỏa đáng vào việc có hay không một tập hợp điểm tạo ra một khoảng cách thưa thớt.

Điều đó có nghĩa là bạn có thể tạo ra các vấn đề trong đó xác định xem mặt phẳng thứ năm có cần thiết hay không yêu cầu giải các bài toán 3-SAT. Bạn có thể kết hợp hai bài toán như vậy, trong đó chính xác một bài yêu cầu mặt phẳng thứ năm, để giữ cho số lượng mặt phẳng không đổi và buộc thuật toán phải giải các bài toán 3-SAT ngay cả khi nó biết trước .k

Vì vậy, vấn đề không có giải pháp thời gian đa thức tồi tệ nhất, trừ khi P = NP.


-1

đang cố gắng trả lời mặc dù câu hỏi có thể được nêu rõ ràng. một nửa trong số đó nói rằng các điểm được đưa ra, nửa còn lại nói rằng khoảng cách theo cặp được đưa ra. tôi sẽ giả định rằng tọa độ điểm được đưa ra cho câu trả lời này. có một mối liên hệ chặt chẽ giữa yếu tố quyết định tính toán và thứ hạng ma trận. có một khái quát như sau. tạo ma trận của vectơ 3d, chúng có thể là vectơ cột hoặc hàng. tính thứ hạng . nếu là 2, các điểm là coplanar. khoảng cách cặp có thể được tính từ tọa độ và không cần thiết để tính / xác định thứ hạng ma trận.


1
Bạn có thể vui lòng sao chép và dán câu cho biết tọa độ của các điểm được đưa ra không? Câu hỏi cho biết một tập hợp điểm được đưa ra. Không phải tọa độ.
padawan

đang lấy "điểm đặt = tọa độ". bạn nói điểm không đầy đủ trong các bình luận, nhưng không phải trong câu hỏi. Làm thế nào để bạn xác định "tập hợp điểm" mà không có tọa độ? có lẽ điều này cần bỏ phiếu để đóng nếu nó không nhất quán hoặc không thể trả lời ở dạng hiện tại mà không sửa đổi. đang cố gắng để giải nén một cái gì đó có thể trả lời. các ý kiến ​​và câu hỏi không phải tất cả xếp hàng. câu trả lời xác định nếu tất cả các điểm là coplanar. có lẽ bạn chỉ muốn biết nếu tập hợp con của tất cả các điểm là coplanar được đưa ra một số khoảng cách theo cặp?
vzn
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.