Thuật toán tìm đường đi xấp xỉ ngắn nhất giữa hai điểm trên mặt khối đa diện lồi của li và klette

45 630 1
Thuật toán tìm đường đi xấp xỉ ngắn nhất giữa hai điểm trên mặt khối đa diện lồi của li và klette

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mục lục Trang Danh mục ký hiệu Lời nói đầu Chương 1: Kiến thức sở 1.1 1.2 1.3 1.4 1.5 Lý thuyết đồ thị………………………………………… Độ phức tạp thuật toán…………………………… Khối đa diện lồi………………………………………… Sai số ……… ………………………………………… Đường xấp xỉ ngắn mặt…………………… Chương Thuật toán tìm đường xấp xỉ ngắn hai điểm mặt khối đa diện lồi Li Klete 2.1 Bài toán tìm đường ngắn nhất……………………… 2.2 Đa giác cắt ……………………………………………… 2.3 Thuật toán tìm đường xấp xỉ ngắn hai điểm mặt khối đa diện lồi Li Klete………………………… 2.3.1 Lược đồ thuật toán……………………………… 2.3.2 Thủ tục 2.3.2…………………………………… 2.3.3 Thủ tục 2.3.3…………………………………… 2.3.4 Thuật toán 2.3.4………………………………… 2.3.5 Thuật toán 2.3.5………………………………… 2.4 Ví dụ tính toán………………………………………… 13 15 19 21 21 21 22 22 22 24 25 26 28 Kết luận 44 Tài liệu tham khảo 45 DANH SÁCH KÝ HIỆU G E V   ¡ p.x    p0 , p1 , , pn  d e  p, q      pq W Đồ thị Tập cạnh đồ thị Tập đỉnh đồ thị Khối đa diện Biên khối đa diện  Không gian Euclide chiều Hoành độ điểm p Đường gấp khúc p0 kết thúc pn Khoảng cách (Euclide) hai điểm p q Phép toán Lôgíc “và” Phép toán Lôgíc “hoặc” Giao tập hợp Hợp tập hợp Đoạn thẳng pq Kết thúc chứng minh Lời nói đầu Hình học tính toán lĩnh vực nghiên cứu để tìm thuật toán hiệu thực thi máy tính cho toán biểu diễn ngôn ngữ hình học Hình học tính toán thường giải toán như: xác định địa điểm để đặt nhà máy, trạm điện, bến xe, trường học; xác định đường ngắn cho tàu biển, lập trình cho robot điện tử,… Có nhiều nhà toán học nghiên cứu hình học tính toán, chẳng hạn D R Chand (1970), P Mcmullen (1971), R L Graham (1972), F P Preparata (1988), P T An (2007),… Một toán Hình học tính toán “Tìm đường ngắn hai điểm khối đa diện lồi” Đây vấn đề nhiều nhà toán học quan tâm nghiên cứu đưa thuật toán khác để giải toán Năm 2011, F Li R Klette đưa thuật toán xấp xỉ để giải toán thông qua việc cắt khối đa diện lồi mặt phẳng song song Trong luận văn nghiên cứu thuật toán F Li R Klette Với lý chọn đề tài luận văn là: “Thuật toán tìm đường xấp xỉ ngắn hai điểm mặt khối đa diện lồi Li Klette” Luận văn trình bày hai chương: Chương Kiến thức sở Trong chương trình bày hệ thống kiến thức lý thuyết đồ thị, độ phức tạp thuật toán, khối đa diện lồi, đường xấp xỉ ngắn mặt sai số tính toán nhằm làm sở cho việc nghiên cứu thuật toán Li Klette Chương Thuật toán tìm đường xấp xỉ ngắn hai điểm mặt khối đa diện lồi Li Klete Trong chương trình bày chi tiết thủ tục; thuật toán liên quan thuật toán để giải toán “tìm đường xấp xỉ ngắn hai điểm khối đa diện lồi” Li Klette Các ví dụ tính toán nêu Luận văn hoàn thành hướng dẫn tận tình PGS TS Phan Thành An, Viện Toán học, Viện Hàn lâm Khoa học Công nghệ Việt Nam Tác giả xin bày tỏ lòng biết ơn sâu sắc tới thầy, người hướng dẫn tác giả suốt trình học tập nghiên cứu Cũng tác giả xin chân thành cảm ơn thầy cô giáo khoa Toán khoa Đào tạo sau đại học, nghiên cứu sinh, học viên cao học thuộc nhóm Seminar Hình học tính toán, Viên Toán học lớp cao học 19 Hình học - Tô pô Đại học Vinh Ngoài tác giả muốn gửi lời cảm ơn chân thành đến Ban giám hiệu, thầy cô tổ Toán trường THPT Diễn châu 2, gia đình bạn bè động viên, giúp đỡ tác giả nhiều trình học tập, nghiên cứu suốt khoá học Vinh, tháng 10 năm 2013 Tác giả Chương 1: Kiến thức sở Trong chương trình bày số kiến thức lý thuyết đồ thị, độ phức tạp thuật toán, khối đa diện lồi, đường xấp xỉ ngắn mặt sai số tính toán Đây kiến thức sở cho chương 1.1 Lý thuyết đồ thị 1.1.1 Định nghĩa đồ thị Chúng ta nhìn thấy sử dụng đồ tuyến đường giao thông thành phố, sơ đồ tổ chức quan, sơ đồ khối thuật toán, sơ đồ mạng máy tinh… Đó ví dụ cụ thể đồ thị Đồ thị (graph) mô hình toán học ứng dụng nhiều lĩnh vực khoa học, kỹ thuật định nghĩa sau Định nghĩa 1.1.1 (xem [3]) Đồ thị cặp G V , E  đó:  V tập đỉnh (vertex)  E  V  V tập cạnh (edge) b c a d e Hình 1.1: Đồ thị hữu hạn Ví dụ 1.1.1 Đồ thị G cho hình 1.1 với tập đỉnh V  a, b, c, d , e tập cạnh E   a, b  ,  a, c  ,  b, c  ,  d , b  ,  d , c  ,  e, a  ,  e, b  ,  e, d  Nếu  a, b  cạnh đồ thị ta nói đỉnh b kề với đỉnh a hai đỉnh a b kề với cạnh  a, b  Trong đồ thị ví dụ 1.1.1 hai đỉnh b c kề với đỉnh a , ba đỉnh a , b d kề với đỉnh e Do vậy, ta định nghĩa đồ thị ánh xạ kề sau: Định nghĩa 1.1.2 (xem [3]) Đồ thị G cặp G  V , F  , đó:  V tập đỉnh  F : V  Z , F ánh xạ cho ta mối liên hệ đỉnh với tập đỉnh kề với (ánh xạ kề) Sự tương đương hai định nghĩa thể mệnh đề sau x, y  V :  x, y   E  y  F ( x ) Về chất, đồ thị tập hợp đối tượng biểu diễn đỉnh đối tượng có mối quan hệ nhị nguyên biểu diễn cạnh Cặp đỉnh  x, y   E không thứ tự gọi cạnh vô hướng, thứ tự gọi cạnh có hướng Vì thế, thường phân đồ thị thành hai lớp Định nghĩa 1.1.3 (xem [3]) Đồ thị chứa cạnh vô hướng gọi đồ thị vô hướng, đồ thị chứa cạnh có hướng gọi đồ thị có hướng Hiển nhiên, đồ thị vô hướng biểu thị đồ thị có hướng cách thay cạnh vô hướng hai cạnh có hướng tương ứng Định nghĩa 1.1.4 (xem [3]) Đồ thị G  V , E  mà cặp đỉnh nối không cạnh gọi đồ thị đơn ( thường gọi tắt đồ thị) đồ thị có cặp đỉnh nối với nhiều cạnh gọi đa đồ thị Ta biểu diện hình học cho đồ thị sau: biểu diện đỉnh vòng tròn nhỏ, biểu diễn cạnh vô hướng đoạn thẳng, biểu diện cạnh có hướng mũi tên nối hai đỉnh đồ thị Định nghĩa 1.1.5 (xem [3]) Hai đỉnh đồ thị G gọi liên thông, đồ thị đường vô hướng nối chúng với Đồ thị gọi liên thông cặp đỉnh đồ thị liên thông với Định nghĩa 1.1.6 (xem [3]) Bậc đỉnh đồ thị số cạnh kề với đỉnh 1.1.2 Đường đồ thị Giả sử G  V , E  đồ thị Định nghĩa 1.1.7 (xem [3]) Đường đồ thị dãy đỉnh: x1 , x2 , , xi , xi 1 , , xk 1 , xk cho đỉnh dãy (không kề với đỉnh đầu tiên) kề với đỉnh trước cạnh đó, nghĩa là: i  2,3, , k  1, k :  xi 1 , xi   E Ta nói đường từ đỉnh đầu x1 đến đỉnh cuối xk Số cạnh đường gọi độ dài đường Đường đơn đường mà đỉnh khác đôi Trong đồ thị, đỉnh nút đỉnh kề với Hai cạnh có đỉnh chung gọi hai cạnh kề Định nghĩa 1.1.8 (xem [3]) Đồ thị G gọi đồ thị có trọng số cạnh  i, j  đồ thị gán số nguyên không âm C  i, j   Nhãn C  i, j  cạnh  i, j  đồ thị thường biểu diễn “chi phí” thực tế qua cạnh  Đường có trọng số bé nhất: - Độ dài đường đồ thị có trọng số tổng trọng số cạnh đường - Độ dài đường có trọng số bé từ đỉnh a đến đỉnh b gọi khoảng cách từ đỉnh a đến đỉnh b - Nếu đường tư đỉnh a đến đỉnh b ta đặt khoảng cách  1.1.3 Một số tính chất đường đồ thị Định lý 1.1.1 (xem [3]) Giả sử đồ thị G có n đỉnh Tồn đường từ đỉnh a đến đỉnh b đồ thị G tồn đường từ a đến b đồ thị với độ dài không vượt n  Chứng minh Giả sử có đường từ đỉnh a đến đỉnh b Ta chọn: a  x1 , x2 , , xi , xi 1 , , xk 1 , xk  b (trong x1  xk ) đường có độ dài ngắn Độ dài đường k  Nếu k   n  định lý chứng minh Nếu ngược lại k   n  nghĩa k  n , dãy đường có hai đỉnh trùng nhau, chẳng hạn xi  x j Khi : a  x1 , x2 , , xi , xi 1 , , xk 1 , xk  b đường từ a đến b với độ dài lớn Điều mâu thuẫn với giả thiết đường ngắn Vậy tồn đường từ đỉnh a đến đỉnh b đồ thị G tồn đường từ a đến b đồ thị với độ dài không vượt n  Định lý 1.1.2 (xem [3]) Tổng tất bậc đỉnh đồ thị hai lần số cạnh đồ thị Chứng minh Ta tính bậc đỉnh Mỗi đỉnh thuộc cạnh bậc tăng thêm 1, mà cạnh có hai đỉnh Vậy tổng tất bậc đỉnh đồ thị hai lần số cạnh đồ thị W Hệ quả: (xem [3]) Số đỉnh có bậc lẻ đồ thị phải số chẵn 1.2 Độ phức tạp thuật toán 1.2.1 Khái niệm độ phức tạp thuật toán (xem [2]) Độ phức tạp thuật toán thước đo để so sánh tính hiệu thuật toán Một thước đo thuật toán thời gian máy tính sử dụng để giải toán theo thuật toán xét, giá trị đầu vào có kích thước xác định Thước đo thứ hai nhớ đòi hỏi thực thuật toán giá trị đầu vào có kích thước cho trước Gắn liền với thời gian tính toán thuật toán độ phức tạp thời gian nhớ độ phức tạp không gian Biết độ phức tạp thời gian cho thuật toán quan trọng Độ phức tạp không gian đòi hỏi thuật toán mà ta biết cho ta bước chuẩn bị thấy khả đáp ứng việc tính toán thuật toán Độ phức tạp không gian gắn liền với cấu trúc liệu đặc biệt dùng để tính toán thuật toán Trong luận văn không nghiên cứu cấu trúc liệu nên ta bỏ qua độ phức tạp không gian Để tính độ phức tạp thuật toán ta xét hàm thực f : N  R xác định tập số nguyên dương dương làm công cụ đo Nghĩa tồn số nguyên dương n0 cho f  n   với n  n0 Kí hiệu F tập hợp tất hàm 1.2.2 Các định nghĩa (xem [2]) Cho hàm số g  n   F, ta định nghĩa O  g  n   tập hợp hàm f  n   F có tính chất: Tồn số c n0 cho với n  n0 f  n   c.g  n  Nếu f  n   O  g  n   , ta nói f  n  Ô lớn g  n  Những hàm thuộc O thường dùng chặn hàm thực tính toán thuật toán dể giải toán Người ta dùng kí hiệu f  n   g  n   O  h  n   , nghĩa f  n   g  n   O  h  n   Ví dụ: f  n   2n3  7n  6n  , ta viết f  n   2n3  O  n  Định nghĩa 1.2.1 (xem [2]) Cho hàm số g  n   F, ta định nghĩa   g  n   tập hợp hàm f  n   F có tính chất: Tồn số dương c1 , c2 cho với n  n0 c1.g  n   f  n   c2 g  n  Định nghĩa 1.2.2 (xem [2]) Cho hàm số g  n   F, ta định nghĩa   g  n   tập hợp hàm f  n   F có tính chất: Tồn số c n0 cho với n  n0 c.g  n   f  n  Nếu f  n     g  n   , ta nói f  n  Ô mê ga lớn g  n  1.2.3 Các tính chất Mệnh đề 1.2.1 (xem [2]) Nếu f1  n   O  g1  n   f  n   O  g  n   f1  n   f  n   O  g1  n   g  n   Chứng minh Giả sử với n  n1 , f1  n   c1.g1  n  với n  n2 , f  n   c2 g  n  Ta đặt no  max n1 , n2  co  max c1 , c2  Khi với n  no ta có f1  n   f  n   c1.g1  n   c2 g  n   c0  g1  n   g  n   W Mệnh đề 1.2.2 (xem [2]) Nếu f1  n   O  g1  n   f  n   O  g  n   f1  n   f  n   O  max{g1  n  , g  n } Chứng minh Giả sử với n  n1 , f1  n   c1.g1  n  với n  n2 , f  n   c2 g  n  Ta đặt no  max n1 , n2  c0  c1  c2 Khi với n  no ta có f1  n   f  n   c1.g1  n   c2 g  n   c0  max{g1  n  , g  n }  f1  n   f  n   O  max{g1  n  , g  n } W Mệnh đề 1.2.3 (xem [2]) Nếu f1  n   O  g1  n   f  n   O  g  n   f1  n  f  n   O  g1  n  g  n   Chứng minh Giả sử với n  n1 , f1  n   c1.g1  n  với n  n2 , f  n   c2 g  n  Ta đặt no  max n1 , n2  c0  c1.c2 Khi với n  no ta có f1  n  f  n   c1.g1  n  c2 g  n   c0  g1  n  g  n   W Mệnh đề 1.2.4 (xem [2]) Cho P  n   ak n k  ak 1n k 1   a1n  a0 đa thức bậc k , ak  Khi P  n   O  n k  Chứng minh Do ta có P  n   ak n k  ak 1n k 1   a1n  a0  ak n k  ak 1 n k 1   a1 n  a0  ak n k  ak 1 n k   a1 n k  a0 n k  ( ak  ak 1   a1  a0 )n k Nếu c  ak  ak 1   a1  a0 , P  n   c.n k với n  n0 Vậy P  n   O  n k  W 1.2.4 Cách tính độ phức tạp thuật toán Độ phức tạp thuật toán đo hàm O   Vì để tính độ phức tạp tính toán thuật toán tức ta xác định hàm T  n   O  g  n   cho đoạn mã chương trình đó, n biến số phép toán sở Các phép toán dùng để đo độ phức tạp thời gian phép so sánh số nguyên, phép cộng, phép trừ, nhân chia số nguyên phép toán sơ cấp khác 1.2.5 Phép tính sở (xem [2]) Độ phức tạp toán tử số, nghĩa O 1 Việc xác định toán tử gì, không dễ, với bắt buộc khác cho ta định nghĩa lại phép toán sở Theo nguyên tắc, phép toán sở phép toán thực số thời gian, phụ thuộc vào dung lượng thao tác thông tin Thường thường phép tính sở phép toán cộng, trừ, nhân, chia… Nhưng ý ta thực số lớn hàng tỉ không chấp nhận phép nhân số lớn phép tính sở Cũng nhận phép tính sở hàm lượng giác, hàm số mũ, hàm lôgarít,… chúng tính toán theo dãy 1.2.6 Dãy phép tính (xem [2]) 10 z a7 q a8 a6 a5 a4 y a1 a3 p a x Hình 3.2: Đường   p, p1 , q    a2 , a7  (đường in đậm) đường ngắn p q mặt khối đa diện lồi  Ví dụ 1.4.1 tương đối đơn giản có đa giác cắt Ví dụ sau có nhiều đa giác cắt phức tạp Ví dụ 2.4.2 Cho khối đa diện lồi  : a1a2 a3a4 a5 a6 với a1  2, 1, 2  , a2 1, 2,5  , a3  4, 1,1 ,  7 a4  5,3,3 , a5  2, 2,  , a6  3, 0,  , hai điểm p, q   , với p  2, 1, 2  , q  4, ,   2   0, 02 Hãy tìm đường ngắn p q mặt khối đa diện lồi  31 Hình 4.0: Mô tả ví dụ 2.4.1 Mô tả thuật toán qua ví dụ: 1: Ta tìm tập V1  v : p.z  v.z  q.z  v V   V1  a2 , a3 , a5 , a4  2: Sắp xếp V1 theo toạ độ z không giảm Khi V1  a2 , a3 , a5 , a4   u1 , u2 , u3 , u4  3: Xây dựng đồ thị có trọng số G  V , E  với V  a1 , a2 , a3 , a4 , a5 , a6  , E   a1 , a2  ,  a1 , a3  ,  a1 , a4  ,  a1 , a5  , ,  a4 , a5  ,  a4 , a6  ,  a5 , a6  4: Áp dụng thuật toán Thorup (xem [7]) ta tìm đường ngắn  (u1 , u4 )    a2 , a3 , a4   G (Minh họa hình 4.1) 32 a6 q a4 a5 a3 a2 p a1 Hình 4.1: Đường in đậm đường gấp khúc ngắn   a2 , a3 , a4  5: Đặt P   p 6: Với đỉnh v  V1 thực Tìm đa giác Pv ( Minh hoạ hình 4.2 ) Hình 4.2: Minh hoạ đa giác cắt Pv (các đa giác tô đậm) 33 Tìm cạnh e  ui ui 1  (u1 , u4 ) cho ui z  v.z  ui 1.z ,  i  Tìm v '  Pv  e Với v = a2 ta có e  a2 a3 v '  Pv  e  a2 1, 2,5  P   p, a2  Với v = a3 ta có e  a2 a3 v '  Pv  e  a3  4, 1,1 P   p, a2 , a3  Với v = a5 ta có e  a3a4 v '  Pv  e  a53  ,1,  P   p, a2 , a3 , a53    Với v = a4 ta có e  a3a4 v  Pv  e  a4  5, 3, 3 ' P   p, a2 , a3 , a53 , a4  7: P  P  q =  p, a2 , a3 , a53 , a4 , q Hình 4.3: Minh hoạ điểm  p, a2 , a3 , a53 , a4 , q tìm 8: Đặt S step  Pv : v V1 9: Áp dụng Thuật toán 2.3.4 S step P để tìm đường ngắn hai điểm p q mặt khối đa diện lồi  34 (Đầu vào Thuật toán 2.3.4 tập S step , tập P   0, 02 Kí hiệu đa giác cắt tập S step P1 , P2 , P3 , P4 p  p0 , a2  p1 , a3  p2 , a53  p3 , a4  p4 , q  p5 ) 10: Kí hiệu L1   i 0 Lp ( pi , pi 1 )  p0 p1  p1 p2  p2 p3  p3 p4  p4 p5 =   11  21  ; 12, 22 L0   11: Vì L0  L1   ta thực tính toán sau Với i  1, áp dụng Thủ tục 2.3.3 ( Thủ tục 2.3.2) để tìm đường gấp khúc lớn nhìn thấy Pi*  Pi Sau tìm điểm qi  Pi * với d e ( pi 1 , qi )  d e (qi , pi 1 )  d e ( pi 1 , p )  d e ( p, pi 1 ) : p  Pi *  Cập nhật đường p, p1 , p2 , p3 , p4 , q cách thay pi qi i  đầu vào Thủ tục 2.3.3 p0 , P1 , p2 , ta tìm P1*    a2 , a21 , a22   10  q1  a21   , 1,  Ta có p, p1 , p2 , p3 , p4 , q p1 thay q1   (Minh hoạ Hình 4.4) 35 Hình 4.4: Minh hoạ điểm  p, a21 , a3 , a53 , a4 , q tìm  19  i  ta tìm P2*    a3 , a31  với a31   , ,1 q2  p1 p3  a3 a31   5   47    , 0,1 Ta có p, p1 , p2 , p3 , p4 , q p2 thay q2  12  (Minh hoạ Hình 4.5) 36 a31 Hình 4.5: Minh hoạ điểm  p, a21 , p2 , a53 , a4 , q tìm  22 11   107  i  ta tìm P3*    a53 , a54  với a54   , ,  q3   , ,  Ta có  5   24  p, p1 , p2 , , pk , q p3 thay q3 (Minh hoạ Hình 4.6) 37 Hình 4.6: Minh hoạ điểm  p, a21 , p2 , p3 , a4 , q tìm i  ta tìm P4*    a4  q4  a4  p4 Ta có p, p1 , p2 , p3 , p4 , q (Minh hoạ Hình 4.7) 38 Hình 4.7: Minh hoạ điểm  p, a21 , p2 , p3 , a4 , q tìm 12: Gán L0  L1 ; 12, 22 L1   i 0 ( pi , pi 1 ) ; 9,56 Lặp lại từ dòng 11: L0  L1 ; 12, 22  9,56  2, 66   i  đầu vào Thủ tục 2.3.3 p0 , P1 , p2 , ta tìm P1*    a21 , a22   59  q1   ,  ,  Ta có p, p1 , p2 , p3 , p4 , q p1 thay q1  18   557  i  ta tìm P2*    a3 , a31  q2   , ,1 Ta có p, p1 , p2 , p3 , p4 , q  144 12  p2 thay q2  1277 43  i  ta tìm P3*    a53 , a54  q3   , ,  Ta có p, p1 , p2 , , pk , q 288 24   p p3 thay q3 i  ta tìm P4*    a4  q4  a4  p4 Ta có p, p1 , p2 , p3 , p4 , q (Minh họa Hình 4.8) 39 Hình 4.8: Minh hoạ điểm p, p1 , p2 , p3 , p4 , q tìm Khi đó, gán L0  L1 ; 9,56 L1   i 0 ( pi , pi 1 ) ; 9,16 Lặp lại từ dòng 11: L0  L1 ; 9,56  9,16  0,   i  đầu vào thủ tục 2.2.3 p0 , P1 , p2 , ta tìm P1*    a21 , a22   701  q1   , ,  Ta có p, p1 , p2 , p3 , p4 , q p1 thay q1  216 18   6635 133  i  ta tìm P2*    a3 , a31  q2   , ,1 Ta có  1728 144  p, p1 , p2 , p3 , p4 , q p2 thay q2  221 565  i  ta tìm P3*    a53 , a54  q3   , ,  Ta có p, p1 , p2 , , pk , q  50 288  p3 thay q3 i  ta tìm P4*    a4  q4  a4  p4 Ta có p, p1 , p2 , p3 , p4 , q (Minh họa Hình 4.9) 40 Hình 4.9: Minh hoạ điểm p, p1 , p2 , p3 , p4 , q tìm Khi đó, gán L0  L1 ; 9,16 L1   i 0 ( pi , pi 1 ) ; 9, 01 Lặp lại từ dòng 11 L0  L1 ; 9,16  9, 01  0,15   i  đầu vào Thủ tục 2.3.3 p0 , P1 , p2 , ta tìm P1*    a21 , a22   242 61  q1   , ,  Ta có p, p1 , p2 , p3 , p4 , q p1 thay q1  75 216   1147 1939  i  ta tìm P2*    a3 , a31  q2   , ,1 Ta có  300 1728  p, p1 , p2 , p3 , p4 , q p2 thay q2  2647 7123  i  ta tìm P3*    a53 , a54  q3   , ,  Ta có  600 3456  p, p1 , p2 , , pk , q p3 thay q3 i  ta tìm P4*    a4  q4  a4  p4 Ta có p, p1 , p2 , p3 , p4 , q (Minh họa Hình 4.10) 41 Hình 4.10: Minh hoạ điểm p, p1 , p2 , p3 , p4 , q tìm Khi đó, gán L0  L1 ; 9, 01 L1   i 0 ( pi , pi 1 ) ; 8,96 Lặp lại từ dòng 11 L0  L1 ; 9, 01  8,96  0, 05   i  đầu vào Thủ tục 2.3.3 p0 , P1 , p2 , ta tìm P1*    a21 , a22   1447 1075  q1   , ,  Ta có p, p1 , p2 , p3 , p4 , q p1 thay q1  450 2592  i  ta tìm P2*    a3 , a31  q2   3,81;1, 24;1 Ta có p, p1 , p2 , p3 , p4 , q p2 thay q2  881 53  i  ta tìm P3*    a53 , a54  q3   , ,  Ta có p, p1 , p2 , , pk , q  200 25  p3 thay q3 i  ta tìm P4*    a4  q4  a4  p4 Ta có p, p1 , p2 , p3 , p4 , q Khi đó, gán L0  L1 ; 8,96 L1   i 0 ( pi , pi 1 ) ; 8,95 42 Vì L0  L1  8,96  8,95  0, 01  0.02   Khi Thuật toán 2.3.4 dừng kết p, p1 , p2 , p3 , p4 , q Do   p, p1 , p2 , p3 , p4 , q  đường xấp xỉ ngắn từ p đến q mặt khối đa diện lồi  Hình 4.11: Đường   p, p1 , p2 , p3 , p4 , q  đường ngắn p q mặt khối đa diện lồi  43 Kết luận Luận văn nghiên cứu thuật toán tìm đường xấp xỉ ngắn mặt khối đa diện lồi Li Klette Trong luận văn đạt kết sau:  Trình bày khái niệm đồ thị chứng minh chi tiết số tính chất đường đồ thị  Trình bày khái niệm chứng minh chi tiết số tính chất độ phức tạp thuật toán, cách xác định độ phức tạp thuật toán  Trình bày khái niệm đường cong đơn, đa giác đơn, khối đa diện khối đa diện lồi  Trình bày khái niệm đường ngắn đường xấp xỉ ngắn mặt khối đa diện lồi  Trình bày khái niệm sai số cách tính vài loại sai số  Trình bày chi tiết thuật toán tìm đường xấp xỉ ngắn mặt khối đa diện lồi Li Klette  Một số ví dụ minh hoạ thuật toán Vấn đề tiếp tục nghiên cứu:  Xét Thuật toán 2.3.5 với V1    Tìm Thuật toán tương tự Thuật toán 2.3.5 lập trình cho toán “Tìm đường ngắn hai điểm khối đa diện không lồi” 44 Tài liệu tham khảo Tiếng Việt [1] P T An (2010-2012), Bài giảng môn hình học tính toán, Viện Toán học, Viện Hàn lâm Khoa học Công nghệ Việt Nam [2] N H Điển (2005), Một số vấn đề thuật toán, NXB Giáo dục [3] C Đ Khánh (2002), Lý thuyết đồ thị, NXB Đại học Quốc gia TP Hồ Chí Minh [4] Đ T T Hoa (2007), Bài giảng môn Phương pháp tính, Trường Đại học Bách khoa Đà Nẵng Tiếng Anh [5] R L Graham (1972), An Efficient Ajgorithm for Determining the Convex Hull of a Finite Planar Set, Information Processing Letter 1, 132 133 [6] F Li and R Kette (2011), Euclidean Shortest Paths, Springer [7] M Thorup (1999), Undirected Single-souce Shotest Paths with Positive Integer Weights in Linear Time, Journal of the Assoclation for Computing Machinery 3, 362-394 45 [...]... diện lồi của Li và Klete Chương này chúng tôi trình bày chi tiết thuật toán chính để giải bài toán Tìm đường đi xấp xỉ ngắn nhất giữa hai đi m trên bề mặt của khối đa diện lồi của Li và Klette (xem [6]) và ví dụ tính toán minh hoạ Chương này là nội dung chính của luận văn 2.1 Bài toán tìm đường đi ngắn nhất 2.1.1 Bài toán Cho khối đa diện lồi  và hai đi m p, q   Hãy tìm đường đi ngắn nhất giữa. .. là đường đi xấp xỉ ngắn nhất từ p đến q trên mặt khối đa diện  với sai số tuyệt đối   0 19 p Đường 1 q Đường 2 Đường 3 Hình 1.5: Minh họa 3 đường đi từ đỉnh p tới đỉnh q mà không đi qua các vật cản (các hình được tô đậm) trong đó đường 1 và đường 2 (các đường in đậm) là đường đi ngắn nhất từ đỉnh p đến đỉnh q 20 Chương 2 Thuật toán tìm đường đi xấp xỉ ngắn nhất giữa hai đi m trên mặt khối đa diện. .. thấy được từ đỉnh v ( u tương ứng) trong  2.3 Thuật toán tìm đường đi xấp xỉ ngắn nhất giữa hai đi m trên mặt khối đa diện lồi của Li và Klete 2.3.1 Lược đồ thuật toán - Thuật toán 2.3.5: đây là thuật toán chính, trong thuật toán này sẽ gọi Thuật toán 2.3.4 - Thuật toán 2.3.4: sẽ được sử dụng như một chương trình con của Thuật toán 2.3.5, trong thuật toán này sẽ gọi Thủ tục 2.3.3 - Thủ tục 2.3.3:... p2 , , pk , q Trong dòng 1 của Thuật toán 2.3.5 chúng tôi chỉ xét tập V1   2.3.5 Thuật toán 2.3.5 ( Thuật toán tìm đường đi xấp xỉ ngắn nhất giữa hai đi m trên mặt khối đa diện lồi của Li và Klette) ([6]) Input: Cho p, q   , và   0 Output: Đường đi xấp xỉ ngắn nhất từ p đến q trên mặt khối đa diện  1: Tìm V1  v : p.z  v.z  q.z  v V  2: Sắp xếp V1 theo toạ độ z V1  u1 , u2 , ,...  4.103 1.5 Đường đi xấp xỉ ngắn nhất trên mặt Định nghĩa 1.5.1 (xem [6]) Trong hình học Euclide, một đường từ một đi m p đến một đi m q là một tập hợp các đỉnh; nó đi từ đỉnh đến đỉnh, bắt đầu từ đỉnh p và kết thúc tại đỉnh q Chiều dài của nó là tổng các khoảng cách Euclide giữa các cặp đỉnh của đường Một đường đi giữa hai đỉnh có chiều dài ngắn nhất được gọi là một đường đi ngắn nhất Minh hoạ... , a53 , a4 , q Hình 4.3: Minh hoạ bộ đi m  p, a2 , a3 , a53 , a4 , q tìm được 8: Đặt S step  Pv : v V1 9: Áp dụng Thuật toán 2.3.4 trên S step và P để tìm đường đi ngắn nhất giữa hai đi m p và q trên mặt khối đa diện lồi  34 (Đầu vào của Thuật toán 2.3.4 là tập S step , tập P và   0, 02 Kí hiệu các đa giác cắt của tập S step là P1 , P2 , P3 , P4 và p  p0 , a2  p1 , a3  p2 , a53  p3...  L1  2 và L1   i 0 ( pi , pi 1 )  2 Khi đó L0  L1  2  2  0   Do đó Thuật toán 2.3.4 dừng và kết quả p, O, q Do đó   p, p1 , q    a2 , a7  là đường đi ngắn nhất (chính xác) từ p đến q trên mặt khối đa diện lồi  1 30 z a7 q a8 a6 a5 a4 0 y a1 a3 p a 2 x Hình 3.2: Đường   p, p1 , q    a2 , a7  (đường in đậm) là đường đi ngắn nhất giữa p và q trên mặt khối đa diện lồi  Ví... đỉnh của  , và k số đa giác cắt giữa p và q Vậy định lý được chứng minh 2.4 Ví dụ tính toán Ví dụ 2.4.1 28 W Cho khối đa diện lồi  : a1a2 a3a4 a5 a6 a7 a8 với a1 1, 0, 0  , a2  0, 0, 1 , a3 1,1, 0  , a4  0,1, 0  , a5 1,1,1 , a6  0,1,1 , a7  0, 0,1 , a8 1, 0,1 , hai đi m p, q   , với p 1, 0, 0  , q  0, 0,1 và   0, 01 Hãy tìm đường đi ngắn nhất giữa p và q trên mặt khối đa diện. .. một đa giác cắt Ví dụ sau có nhiều đa giác cắt phức tạp hơn Ví dụ 2.4.2 Cho khối đa diện lồi  : a1a2 a3a4 a5 a6 với a1  2, 1, 2  , a2 1, 2,5  , a3  4, 1,1 ,  3 7 a4  5,3,3 , a5  2, 2, 2  , a6  3, 0, 4  , hai đi m p, q   , với p  2, 1, 2  , q  4, ,   2 2 và   0, 02 Hãy tìm đường đi ngắn nhất giữa p và q trên mặt khối đa diện lồi  31 Hình 4.0: Mô tả ví dụ 2.4.1 Mô tả thuật. .. lớn nhất có thể nhìn thấy được) ([6]) Input: Cho 3 đa giác cắt P1 , P2 và P3 của đa diện lồi  , và 2 đi m pi  Pi , i  1,3 và p1.z  p3 z Output: Tập hợp các đỉnh của đường gấp khúc lớn nhất P2*  P2 mà mỗi đi m p  P2* có thể nhìn thấy được cả từ p1 và p3 1: Gán Pi '   với i = 1,3 2: Nếu p1 không phải là đỉnh của P1 thì 3: Tìm cạnh biên duy nhất e trong P2 mà p1 và e chứa trong một mặt của ... đa diện lồi, đường xấp xỉ ngắn mặt sai số tính toán nhằm làm sở cho việc nghiên cứu thuật toán Li Klette Chương Thuật toán tìm đường xấp xỉ ngắn hai đi m mặt khối đa diện lồi Li Klete Trong chương... giải toán Tìm đường xấp xỉ ngắn hai đi m bề mặt khối đa diện lồi Li Klette (xem [6]) ví dụ tính toán minh hoạ Chương nội dung luận văn 2.1 Bài toán tìm đường ngắn 2.1.1 Bài toán Cho khối đa diện. .. dòng Thuật toán 2.3.5 xét tập V1   2.3.5 Thuật toán 2.3.5 ( Thuật toán tìm đường xấp xỉ ngắn hai đi m mặt khối đa diện lồi Li Klette) ([6]) Input: Cho p, q   ,   Output: Đường xấp xỉ ngắn

Ngày đăng: 29/10/2015, 15:27

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan