Các lý do mà các nhà nghiên cứu trong hình học tính toán thích mô hình BSS / RAM thực là gì?


40

Lý lịch

Việc tính toán trên các số thực phức tạp hơn so với tính toán trên các số tự nhiên, vì các số thực là các đối tượng vô hạn và có rất nhiều số thực, do đó các số thực không thể được biểu diễn một cách trung thực bằng các chuỗi hữu hạn trên một bảng chữ cái hữu hạn.

Không giống như khả năng tính toán cổ điển trên các chuỗi hữu hạn trong đó các mô hình tính toán khác nhau như: tính toán lambda, máy Turing, hàm đệ quy, ... hóa ra là tương đương (ít nhất là tính toán trên các hàm trên chuỗi), có nhiều mô hình được đề xuất để tính toán số thực không tương thích. Ví dụ: trong mô hình TTE (xem thêm [Wei00]) là mô hình gần nhất với mô hình máy Turing cổ điển, các số thực được biểu diễn bằng các băng đầu vào vô hạn (như các phép lạ của Turing) và không thể quyết định so sánh và quan hệ bình đẳng giữa hai số thực cho trước (trong khoảng thời gian hữu hạn). Mặt khác, trong các mô hình BBS / RAM thực tương tự như mô hình máy RAM, chúng ta có các biến có thể lưu trữ các số thực tùy ý, và so sánh và bình đẳng là một trong các hoạt động nguyên tử của mô hình. Vì lý do này và các lý do tương tự, nhiều chuyên gia cho rằng các mô hình BSS / RAM thực không thực tế (không thể thực hiện, ít nhất là không phải trên các máy tính kỹ thuật số hiện tại) và họ thích TTE hoặc các mô hình tương đương khác với TTE như mô hình lý thuyết miền hiệu quả, Mô hình Ko-Friedman, v.v.

Nếu tôi hiểu chính xác , mô hình tính toán mặc định được sử dụng trong Hình học tính toán là mô hình BSS (còn gọi là RAM thực , xem mô hình [BCSS98]).

Mặt khác, đối với tôi, trong quá trình thực hiện các thuật toán trong Hình học tính toán (ví dụ LEDA ), chúng tôi chỉ xử lý các số đại số và không có đối tượng hoặc tính toán vô hạn loại cao hơn (điều này có đúng không?). Vì vậy, có vẻ như tôi (có lẽ ngây thơ) rằng người ta cũng có thể sử dụng mô hình tính toán cổ điển trên các chuỗi hữu hạn để xử lý các số này và sử dụng mô hình tính toán thông thường (cũng được sử dụng để thực hiện các thuật toán) để thảo luận về tính chính xác và độ phức tạp của các thuật toán.


Câu hỏi:

Các lý do mà các nhà nghiên cứu trong Hình học tính toán thích sử dụng mô hình BSS / RAM thực là gì? (lý do Hình học tính toán cụ thể để sử dụng mô hình BSS / RAM thực)

Các vấn đề với ý tưởng (có thể ngây thơ) mà tôi đã đề cập trong đoạn trước là gì? (sử dụng mô hình tính toán cổ điển và giới hạn các đầu vào đối với các số đại số trong Hình học tính toán)


Phụ lục:

Ngoài ra còn có sự phức tạp của vấn đề thuật toán, rất dễ dàng để quyết định vấn đề sau trong mô hình BSS / RAM thực:

Cho hai bộ và của các số nguyên dương, là ?ST
sSs>tTt

Mặc dù không có thuật toán RAM-số nguyên hiệu quả nào được biết để giải quyết nó. Cảm ơn JeffE cho ví dụ.


Tài liệu tham khảo:

  1. Lenore Blum, Felipe Cucker, Michael Shub và Stephen Smale, "Sự phức tạp và tính toán thực sự", 1998
  2. Klaus Weihrauch, " Phân tích tính toán, giới thiệu ", 2000

3
Nhân tiện, trong trường hợp không rõ ràng, tổng của bài toán căn bậc hai có một cách giải thích hình học rất tự nhiên: đó là điều bạn cần giải nếu muốn so sánh độ dài của hai đường đa giác với các đỉnh tọa độ nguyên.
David Eppstein

Câu trả lời:


42

Trước hết, máy đo địa lý tính toán không nghĩ đó là mô hình BSS. Mô hình RAM thực được Michael Shamos định nghĩa trong luận án tiến sĩ năm 1978 ( Hình học tính toán ), được cho là đã đưa ra lĩnh vực này. Franco Prepata đã sửa đổi và mở rộng luận điểm của Shamos thành sách giáo khoa hình học tính toán đầu tiên, xuất bản năm 1985. RAM thực cũng tương đương ( ngoại trừ tính đồng nhất; xem câu trả lời của Pascal! ) Cho mô hình cây tính toán đại số được xác định bởi Ben-Or năm 1983. Blum , Những nỗ lực của Shub và Smale đã được xuất bản vào năm 1989, ngay sau khi RAM thực được thiết lập và gần như bị bỏ qua hoàn toàn bởi cộng đồng hình học tính toán.

Hầu hết các kết quả (cổ điển) trong hình học tính toán được liên kết chặt chẽ với các vấn đề trong hình học tổ hợp , trong đó các giả định về tọa độ là tích phân hoặc đại số là (tốt nhất) các phiền nhiễu không liên quan. Nói như một người bản địa, có vẻ hoàn toàn tự nhiên khi xem xét các điểm, đường thẳng, đường tròn và các đối tượng tương tự như các đối tượng hạng nhất khi chứng minh mọi thứ về chúng, và do đó cũng tự nhiên khi thiết kế và phân tích các thuật toán để tính toán với chúng.

Đối với hầu hết các thuật toán hình học (cổ điển), thái độ này là hợp lý ngay cả trong thực tế. Hầu hết các thuật toán cho các bài toán hình học phẳng được xây dựng trên một số lượng rất nhỏ các nguyên thủy hình học: Điểm ở bên trái hay bên phải của điểm ? Trên, dưới, hoặc trên dòng qua các điểm và ? Bên trong, bên ngoài, hoặc trên vòng tròn được xác định bởi các điểm ? Trái hay phải của giao điểm của đoạn và ? Mỗi nguyên hàm này được thực hiện bằng cách đánh giá dấu hiệu của đa thức bậc thấp trong tọa độ đầu vào. (Vì vậy, các thuật toán này có thể được mô tả trong quyết định đại số yếu hơnpqqrq,r,sqrst mô hình cây.) Nếu tọa độ đầu vào xảy ra là số nguyên, các nguyên hàm này có thể được đánh giá chính xác chỉ với độ chính xác tăng hệ số không đổi, và do đó thời gian chạy trên RAM thực và RAM nguyên là như nhau.

Vì những lý do tương tự, khi hầu hết mọi người nghĩ về việc sắp xếp các thuật toán, họ không quan tâm đến việc họ sắp xếp gì, miễn là dữ liệu đến từ một vũ trụ hoàn toàn có trật tự và bất kỳ hai giá trị nào cũng có thể được so sánh trong thời gian không đổi.

Vì vậy, cộng đồng đã phát triển một sự tách biệt mối quan tâm giữa việc thiết kế các thuật toán hình học của Real real và việc triển khai thực tế của chúng; do đó phát triển các gói như LEDA và CGAL. Ngay cả đối với những người làm việc trên tính toán chính xác, có một sự khác biệt giữa thuật toán thực , sử dụng số học thực chính xác như là một phần của mô hình cơ bản và việc triển khai , bị ép buộc bởi các hạn chế không liên quan của các thiết bị máy tính vật lý sử dụng tính toán rời rạc.

Trong thế giới quan này, ví dụ, vấn đề mở quan trọng nhất trong hình học tính toán là sự tồn tại của thuật toán đa thức thời gian cho lập trình tuyến tính. Không, các phương pháp ellipsoid và điểm bên trong không được tính. Không giống như thuật toán đơn giản, các thuật toán đó không được đảm bảo chấm dứt trừ khi ma trận ràng buộc xảy ra là hợp lý. ( Có các loại đa giác lồi kết hợp chỉ có thể được biểu diễn bằng ma trận ràng buộc phi lý , vì vậy đây một hạn chế không cần thiết.) Và ngay cả khi ma trận ràng buộc là hợp lý, thời gian chạy của các thuật toán đó không bị ràng buộc bởi bất kỳ chức năng nào của kích thước đầu vào (kích thước #constraint).×

Có một vài thuật toán hình học thực sự phụ thuộc rất nhiều vào mô hình cây tính toán đại số , và do đó không thể được thực hiện chính xác và hiệu quả trên các máy tính vật lý. Một ví dụ điển hình là các đường dẫn liên kết tối thiểu trong các đa giác đơn giản, có thể được tính theo thời gian tuyến tính trên RAM thực, nhưng yêu cầu số bit bậc hai trong trường hợp xấu nhất để thể hiện chính xác. Một ví dụ điển hình khác là các đoạn cắt phân cấp của Chazelle , được sử dụng trong các thuật toán hiệu quả nhất được biết đến với tìm kiếm trong phạm vi đơn giản. Các phần cắt này sử dụng một hệ thống các bộ tam giác, trong đó các đỉnh của các hình tam giác ở mỗi cấp là các điểm giao nhau của các đường qua các cạnh của các hình tam giác ở các mức trước đó. Do đó, ngay cả khi tọa độ đầu vào là số nguyên, tọa độ đỉnh của các tam giác này là các số đại số của mức độ không giới hạn; tuy nhiên, các thuật toán để xây dựng và sử dụng các phần cắt giả định rằng tọa độ có thể được thao tác chính xác trong thời gian không đổi.

Vì vậy, câu trả lời ngắn gọn, thiên vị cá nhân của tôi là: TTE, lý thuyết miền, Ko-Friedman và các mô hình khác của tính toán số thực tế thực tế của tất cả các vấn đề mà cộng đồng hình học tính toán, nói chung, không quan tâm .


9
Có lẽ nên nói thêm rằng, trong khi trên toàn bộ thành công, quan điểm này đã dẫn đến một vài biến dạng kỳ lạ, trong đó, thuật toán tìm kiếm tham số nhiều polylog (n) được ưa thích hơn các thuật toán tìm kiếm nhị phân (chính xác bằng số) đơn giản hơn nhiều.
David Eppstein

Thật thú vị khi bạn nên đề cập đến việc sắp xếp, vì việc hạn chế chú ý đến các miền được sắp xếp hoàn toàn mang lại giới hạn thấp hơn cổ điển , có thể bị đánh bại bằng cách phá vỡ rào cản trừu tượng đó (xem cstheory.stackexchange.com/questions/ 608 / Lọ để biết thêm). Có bất kỳ ví dụ như vậy trong hình học tính toán? Ω(nlogn)
Joshua Grochow

4
Joshua: có, xem ví dụ arxiv.org/abs/1010.1948
David Eppstein

1
@David Eppstein: rất thú vị! Bạn có muốn đăng nó dưới dạng câu trả lời cho câu hỏi khác của tôi không: cstheory.stackexchange.com/questions/608/ợi
Joshua Grochow

15

Không hoàn toàn đúng khi mô hình RAM / BSS thực tế tương đương với mô hình cây tính toán đại số. Loại thứ hai mạnh hơn vì cây có độ sâu đa thức có thể có kích thước theo cấp số nhân. Điều này cung cấp rất nhiều chỗ để mã hóa thông tin không đồng nhất. Ví dụ, Meyer auf der Heide đã chỉ ra rằng các cây quyết định đại số (thậm chí tuyến tính) có thể giải quyết các vấn đề khó khăn hiệu quả như tổng tập hợp con, nhưng điều này là (không thể phỏng đoán) trong mô hình RAM / BSS thực.


1
Điểm tuyệt vời !!
Jeffε

4

Dưới đây là một nhận xét về câu trả lời tuyệt vời của Jeff:

Các khái niệm về điều kiện, xấp xỉ và làm tròn đã được đề xuất để giải quyết khoảng cách phức tạp (tổ hợp so với liên tục) của các thuật toán lập trình tuyến tính. Điều kiện của một ví dụ vấn đề ước tính ảnh hưởng của nhiễu loạn nhỏ của đầu vào đến độ chính xác của đầu ra. Khái niệm về điều kiện được đưa ra đầu tiên bởi Alan Turing. Jim Renegar đã đưa ra khái niệm về điều kiện của một chương trình tuyến tính.

L. Blum, Computing so với đồng Real: Nơi Turing Meets Newton, , thông báo của AMS, VOLUME 51, SỐ 9, (2004), 1024-1034

A. TURING, Lỗi làm tròn trong các quy trình ma trận, Quart. J. Mech. Táo. Môn Toán. 1 (1948), 287 Hàng30

J. RENEGAR, Kết hợp các số điều kiện vào lý thuyết phức tạp của lập trình tuyến tính, SIAM J. Optim. 5 (1995), 506 bóng524

F. CUCKER và J. PEÑA, Thuật toán kép nguyên thủy để giải các hệ thống hình nón đa diện với máy có độ chính xác hữu hạn, Tạp chí SIAM về Tối ưu hóa 12 (2002), 522 Quay554.

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.