Tách một khối đa diện được xử lý trước và một mặt phẳng


14

Tôi gặp khó khăn nghiêm trọng khi hiểu một bước trong bài báo của Dobkin và Kirkpatrick về việc tách các khối đa diện. Tôi đang cố gắng để hiểu phiên bản này: http://www.cs.princeton.edu/~dpd/Papers/SCG-09-invited/old%20auge/DPD+Kirk.pdf

Nó lập luận rằng sau khi chúng ta biết sự phân tách tốt nhất của và , được nhận ra bởi và , chúng ta có thể tìm thấy sự phân tách tốt nhất của các bước và trong . Điều này được thực hiện theo cách sau. Chúng ta đưa mặt phẳng song song với qua và cắt thành hai phần với nó. Ở một bên, điểm gần nhất với là và mặt khác chúng ta có một khối đa diện `` sơ cấp '' mà chúng ta có thể kiểm tra trong thời gian . Vấn đề của tôi là - làm thế nào để chúng ta tìm thấy khối đa diện cơ bản này? Lưu ý rằng mức độ của S r i s i P i - 1 S O ( 1 ) S r i P i - 1 S r i O ( 1 ) r iPiSrisiPi1SO(1)SriPi1SriO(1)ritrong có thể không bị ràng buộc.Pi1

Trong bản pdf để chứng minh Thm 5.1 từ trang 9, họ sử dụng Thm 3.1 từ trang 4, điều này làm cho toàn bộ điều khó theo dõi hơn.


Tôi thực sự tự hỏi rằng nếu tôi đưa ra một tiền thưởng trong phần mô tả mà tôi nói rằng câu trả lời của JeffE không rõ ràng với tôi và trong một bình luận cho câu trả lời của anh ấy, tôi chỉ rõ vấn đề của mình với nó, vậy thì tại sao mọi người cứ tiếp tục trả lời mà không trả lời tôi câu hỏi? Ngoài ra, tôi tự hỏi, liệu câu trả lời của anh ấy sẽ nhận được tiền thưởng tự động?
domotorp

một upvote chỉ ra rằng câu trả lời cung cấp một cái gì đó có giá trị, mà nó đã làm! chỉ không chính xác những gì bạn muốn. thật vậy, câu trả lời bạn cần có vẻ là một sàng lọc của gợi ý chung. Ngoài ra, tại sao phải lo lắng về sự ủng hộ của người khác?
Suresh Venkat

Câu trả lời:


6

Trả lời cập nhật và viết lại từ đầu.

Bạn đang đưa ra một polytope . Chạy hệ thống phân cấp Dobkin-Kirkpatric trên P. này mang đến cho bạn một chuỗi các polytops P 1P 2... P k = P . Giả sử bạn muốn tìm điểm gần nhất trên P đến điểm truy vấn q . Các cơ bản bắt đầu thuật toán bằng cách tính điểm gần nhất c 1 đến q trên P 1 , sau đó nó xem xét tất cả các khu vực mới (lều) tiếp giáp với c 1 , tìm điểm gần nhất c 2 đến qPP1P2Pk=PPqc1qP1c1c2qở những khu vực mới này, và tiếp tục theo cách này cho đến khi chúng ta đạt đến .Pk

Bây giờ, nếu ở trên một cạnh, thì không có vấn đề gì - chỉ có hai lều có thể chạm vào cạnh này, hoặc chỉ một trong số chúng có thể bao phủ cạnh đó. Như vậy, việc cập nhật c i + 1 từ C i trong trường hợp này mất thời gian không đổi.cici+1Ci

Vì vậy, vấn đề là khi nằm trên một đỉnh có độ cao, bởi vì sau đó số lều mới liền kề với nó khi di chuyển đến P i + 1 có thể lớn. Để khắc phục điều này, chúng ta sẽ mô phỏng một đỉnh độ lớn như một tập hợp các đỉnh có độ thấp. Đặc biệt, ở mỗi giai đoạn, nếu c i nằm trên một đỉnh v , chúng ta sẽ nhớ hai cạnh liên tiếp e i , e i liền kề với v , sao cho điểm gần nhất với q trong P i + 1ciPi+1civei,eivqPi+1nằm trên một cái lều liền kề hoặc che một trong hai cạnh này. Như vậy, chúng ta có thể thực hiện tính toán cần thiết trong thời gian không đổi.

Vì vậy, chúng tôi vẫn còn vấn đề làm thế nào để theo dõi hai cạnh này khi chúng tôi leo lên.

Để làm điều đó, tính toán trước cho mỗi đỉnh của P một hướng tiếp tuyến t v . Đặt Q i ( v ) là đa giác lồi là hình đỉnh của v cho đa giác P i (với mặt phẳng xác định hình đỉnh có bình thường theo hướng của t v ). Về mặt khái niệm, Q 1 ( v ) , Q 2 ( v ) , . . . , Q k ( v )vPtvQi(v)vPitvQ1(v),Q2(v),...,Qk(v)hành xử như một hệ thống phân cấp 2d DK. Nếu điểm gần nhất trên đến q nằm trên một đỉnh w thì điểm này tương ứng với v và cạnh eP i , trong đó cạnh e cắt mặt phẳng của hình đỉnh tại w . Nếu điểm gần nhất trên Q i ( v ) để q dối trá trên một cạnh e ' , sau đó bạn nhớ hai cạnh kề của P i xác định hai đỉnh của e ' (ở đâyQi(v)qwvePiewQi(v)qePie thuộc về Q i ( v ) ).eQi(v)

Và bây giờ chúng ta đã hoàn thành ... Thật vậy, nếu cũng nằm trên Q i + 1 ( v ) thì chúng ta có thể cập nhật nó trong thời gian không đổi (vì đây chỉ là hệ thống phân cấp 2d DK). Nếu mặt khác c i + 1 không còn trên Q i + 1 ( v ) thì nó phải thuộc về một cái lều mới liền kề hoặc bao phủ điểm trước c i . Trong cả hai trường hợp, chúng tôi có thể cập nhật nó trong thời gian liên tục.ci+1Qi+1(v)ci+1Qi+1(v)ci


Cập nhật câu trả lời. Xem nếu nó có ý nghĩa bây giờ. Đây là cách tôi nghĩ về cấu trúc dữ liệu này. Nó có thể không liên quan đến những gì trong bài báo.
Sariel Har-Peled

Tôi hiểu rồi, cảm ơn bạn! Vì vậy, mẹo là chúng ta chọn hướng tiếp tuyến ngay từ đầu và giữ chúng không thay đổi toàn bộ thời gian! Tôi đã xóa những bình luận trước đây liên quan đến câu trả lời cũ của bạn. Cảm ơn một lần nữa!
domotorp

Đúng. Vui vẻ giúp đỡ!
Sariel Har-Peled

8

Định lý 3.1 yêu cầu biểu diễn phân cấp của nhỏ gọn . Một trong những yêu cầu về độ nén là mức độ r i trong P i - 1 được giới hạn bởi một hằng số. Xem dưới cùng của trang 3.PriPi1

Định nghĩa và xây dựng hệ thống phân cấp Dobkin-Kirkpatrick rõ ràng hơn nhiều trong các bài viết trước đây của họ (tài liệu tham khảo [9,10,11] trong bài báo bạn đang đọc). Tôi thực sự khuyên bạn nên đọc chúng trước.


Tôi nghĩ rằng họ đảm bảo rằng mức độ đỉnh giáp. Tôi không thấy làm thế nào bạn có thể chắc chắn mức độ r tôi bị ràng buộc. Nếu ví dụ: bạn có một khối đa diện trong đó hai đỉnh được kết nối với mọi đỉnh, thì làm thế nào bạn có thể bắt đầu? Pi1Piri
domotorp

1
Với một trong các đỉnh khác, tất cả đều có bậc 4. (Trên thực tế, với một tập con độc lập của các đỉnh bậc 4.) Điểm là một đỉnh của P i - 1 nhưng không phải là một đỉnh của P i . riPi1Pi
Jeffε

Vì vậy, có sự hiểu lầm. Tôi nghĩ rằng là một đỉnh của P i cũng trong thuật toán mà tôi đã mô tả, đặc biệt là một trong gần S . Tôi có lầm không? riPiS
domotorp

Đây có vẻ là một trong những giả định vị trí chung tiêu chuẩn nhưng tẻ nhạt này. Nếu bạn không quan tâm đến thời gian chạy, bạn luôn có thể thay thế một đỉnh độ bằng hai đỉnh cực kỳ gần bằng độ d / 2 + 3 (nếu bạn nhấn mạnh vào khuôn mặt hình tam giác). Lặp lại điều này cho đến khi tất cả các đỉnh cho đến khi tất cả các độ nhỏ hơn 10.dd/2+3
Sariel Har-Peled

@Sariel: Tôi cũng nghĩ như vậy nhưng tại sao quá trình lại kết thúc? Lưu ý rằng khi chúng ta xóa một đỉnh, thì các lân cận của nó có thể không tạo thành một khuôn mặt, vì vậy chúng ta có thể phải thêm các cạnh mới, trên thực tế, chúng ta có thể phải tăng mức độ của một đỉnh.
domotorp

1

Trong trường hợp ai đó vẫn sẽ quan tâm đến câu hỏi: đoạn trích trong lời giải thích của Dobkin Kirpatrick cũng đã được chỉ ra trong phát hiện tối ưu của Barba và Langerman về các giao điểm giữa các khối đa diện lồi .

Họ quan sát trong bài báo (phiên bản SODA 2015, không phải arxiv) rằng Hình học tính toán của O'Rourke trong C , chương 7 đã nêu chi tiết một cách giải quyết (về cơ bản là câu trả lời của Sariel). Bài báo SODA cũng giới thiệu một giải pháp thay thế; xác định một biến thể của hệ thống phân cấp DK trong đó mỗi đỉnh có giới hạn mức độ.

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.