1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một số lớp mở rộng của môđun nội xạ và môđun xạ ảnh

51 1 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 51
Dung lượng 463,52 KB

Nội dung

1 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 đợc 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 kinh tế nh: Xác định địa điểm để đặt nhà máy, đặt trạm điện, đặt bến xe, đặt trờng học; xác định đờng ngắn cho tàu biển, lập trình cho rôbôt điện tử, Bài toán thờng gặp Hình học tính toán xác định bao lồi tập hữu hạn điểm mặt phẳng đa giác đơn Các nhà toán học đà đa nhiều thuật toán tối u để xác định bao lồi tập hợp hữu hạn điểm mặt phẳng, đờng gấp khúc không tự cắt đa giác đơn, chẳng hạn thuật toán Graham thuật toán Melkman Bài toán xác định convex rope hai điểm a b (theo thứ tự ngợc chiều kim đồng hồ chiều kim đồng hồ) đa giác đơn P có n đỉnh (a, b đỉnh P), có ứng dụng lớn thực tiễn nh lập trình cho rôbôt mở độ rộng bàn tay cầm nắm vật Xác định convex rope vấn đề đợc nhiều nhà toán học quan tâm chẳng hạn Peshkin Sanderson (xem [15]) Các thuật toán xác định bao lồi đa giác đơn nh: Thuật toán Graham, thuật toán Melkman, không thành công xác định convex rope (xem [6]) Năm 1986, thuật toán xác định convex rope có độ phức tạp O( n ) đợc trình bày [15] Năm 1987, thuật toán xác định convex rope có độ phức tạp O(n) sử dụng phơng pháp tam giác phân miền đa giác xác định bao lồi đa giác đơn đợc trình bày [8] Năm 1990, thuật toán xác định convex rope có độ phức tạp O(n) đợc trình bày [10] sử dụng phơng pháp tam giác phân miền đa giác đơn P Từ đó, đặt toán: Có thể đa thuật toán có độ phức tạp thời gian tuyến tính xác định convex rope mà không sử dụng thuật toán tam giác phân nh không cần xác định bao lồi đa giác đơn? Năm 2008, PGS TS Phan Thành An đa thuật toán tuyến tính xác định convex rope theo thứ tự ngợc chiều kim đồng hồ (tơng ứng chiều kim đồng hồ) hai điểm a b đa giác đơn P mà không sử dụng thuật toán tam giác phân nh không cần xác định bao lồi đa giác đơn; không phụ thuộc vào vị trí số đỉnh đờng biên P từ a đến b theo thứ tự chiều kim đồng hồ Thuật toán đợc lập trình ngôn ngữ C chạy thử nghiệm với data điểm ngẫu nhiên (xem [6]) Trong luận văn này, trình bày chi tiết nội dung báo [6] PGS TS Phan Thành An Luận văn đợc trình bày chơng Chơng 1: Kiến thức sở Trong chơng này, trình bày số kiến thức làm sở cho luận văn: Định nghĩa tập lồi, bao lồi, điểm cực biên số tính chất bản; định nghĩa đa giác đơn, đờng gấp khúc convex rope; độ phức tạp thuật toán; trình bày thuật toán xác định tiếp tuyến đa giác lồi thuật toán tăng dần xác định bao lồi tập hữu hạn điểm mặt phẳng Chơng 2: So sánh thuật toán Melkman scan thuật toán Graham Chơng bao gồm phần sau: Trình bày chi tiết thuật toán Graham xác định bao lồi tập hữu hạn điểm; trình bày chi tiết thuật toán Melkman xác định bao lồi đờng gấp khúc không tự cắt; so sánh tính hữu hiệu thuật toán Melkman scan thuật toán Graham xác định bao lồi đờng gấp khúc không tự cắt Chơng 3: Thuật toán tuyến tính xác định convex rope không sử dụng tam giác phân Đây chơng thể kết luận văn gồm vấn đề: Trình bày chi tiết thuật toán tuyến tính xác định convex rope hai điểm a b đa giác đơn P theo thứ tự ngợc chiều kim đồng hồ, giải vấn đề không sử dụng thuật toán tam giác phân nh không cần xác định bao lồi đa giác đơn; phát biểu chứng minh vài tính chất convex rope; chứng minh tính đắn thuật toán xác định convex rope đa ví dụ minh họa; giải thích thuật toán Melkman scan thuật toán Graham không xác định đợc convex rope đa ví dụ minh hoạ Luận văn đợc hoàn thành Đại học Vinh, tháng 12 - 2009, d−íi sù h−íng dÉn cđa PGS TS Phan Thµnh An Tác giả xin bày tỏ lòng biết ơn sâu sắc tới thầy - ngời đà đặt vấn đề hớng dẫn tác giả Tác giả xin chân thành cảm ơn PGS TS Nguyễn Hữu Quang, PGS TS Phạm Ngọc Bội, TS Nguyễn Duy Bình thầy Khoa Đào tạo Sau Đại học Trờng Đại học Vinh, Viện Toán học đà giảng dạy, quản lí giúp đỡ tác giả suốt trình học tập nghiên cứu Tác giả gửi lời cảm ơn chân thành tới cán giáo viên Trờng THPT huyện Mờng Lát, tập thể K15 Hình học - Tôpô, gia đình, bạn bè, đồng nghiệp đà giúp đỡ động viên tác giả trình hoàn thành luận văn Mặc dù đà cố gắng trình học tập, nghiên cứu tham khảo nhiều tài liệu nh tham khảo ý kiến trình viết hoàn thành luận văn, nhng luận văn khó tránh khỏi thiếu sót Rất mong nhận đợc ý kiến đóng góp hội đồng chấm luận văn Thạc sĩ Toán học - Trờng Đại học Vinh ý kiến trao đổi đồng nghiệp nội dung luận văn Vinh, tháng 12 năm 2009 Tác giả Chơng Kiến thức sở Trong luận văn này, giả thiết chiều với tôpô tự nhiên với hai điểm p, q n n không gian ¥clit thùc n ; λ ∈ [0, 1], chóng ta kÝ hiÖu: [p, q] :={(1-λ)p +λq: ≤ λ ≤ 1}, [p, q[ :=[p, q] \{q}, ]p, q[ :=[p, q[ \{p} 1.1 Tập lồi, bao lồi, điểm cực biên 1.1.1 Tập lồi 1.1.1.1 Định nghĩa (xem [16]) n Tập A đợc gọi lồi x , y A [x, y] A 1.1.1.2 Định nghĩa (xem [3]) Cho x n , x đợc gọi tỉ hỵp låi cđa x1 , , xm ∈ λi ∈ (i = 1, …, m) vµ m ∑ λi = cho x = i =1 n nÕu tån t¹i λi ≥ , m ∑λ x i =1 i i 1.1.1.3 MƯnh ®Ị (xem [3]) n Giả sử A tập lồi ( I tập số đó) Khi ®ã A = ∩ Aα lµ tËp låi α ∈I 1.1.1.4 Mệnh đề (xem [3]) Giả sử A n lµ tËp låi vµ x1 , , xm ∈ A Khi ®ã víi mäi λi ∈ , λi ≥ m (i = 1,…, m) cho ∑λ i =1 i m = th× ∑ λ x ∈A i =1 i i Chøng minh: Ta chøng minh b»ng ph−¬ng pháp quy nạp Nếu m = 2, với , λ2 ≥ 0, λ1 , λ2 ∈ , λ1 + λ2 = ; x1 , x2 ∈ A Theo (Định nghĩa 1.1.1.1) ta có x1 + x2 A Giả sử mệnh đề với m = k, ∀k ≥ , ta cÇn chøng minh mƯnh ®Ị ®óng víi m = k + 1, nghÜa lµ C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an k +1 ∀x , …, x k +1 ∈ A; ∀λi ≥ , λi ∈ k +1 th× x := ∑λ x i =1 i i (i = 1, 2, …, k +1) i =1 i =1 A Không tính tổng quát ta giả sử k +1 < (v× nÕu λk +1 = th× λ1 = = λk , suy x ∈ A) Khi ®ã − λk +1 = λ1 + + λk > 0, suy λi ≥ (i = 1, … , k) − λk +1 V× = k λ1 λk λi + + =∑ nên theo giả thiết quy nạp, k +1 − λk +1 i =1 − λk +1 k y := ta đặt i i =1 x i ∈ A k +1 Víi y, xk +1 ∈ A, − λk +1 > vµ (1 − λk +1 ) + λk +1 = 1, ®ã x = ( − λk +1 )y + λk +1x k +1 ∈ A 1.1.2 Bao låi 1.1.2.1 Định nghĩa (xem [16]) Cho tập A không gian n , giao tất tập lồi chứa A đợc gọi bao lồi A, kí hiệu lµ convA 1.1.2.2 NhËn xÐt (xem [16]) i convA lµ tËp låi nhá nhÊt chøa A ii A lµ tËp låi vµ chØ A = convA 1.1.2.3 MƯnh đề (xem [16]) ConvA tập hợp tất tổ hợp lồi A Chứng minh: Giả sử F tập tất tổ hợp lồi A Vì convA tập lồi, nên theo (Nhận xét 1.1.2.2) A convA theo (Mệnh đề 1.1.1.4) F ⊂ convA TiÕp theo, ®Ĩ chøng minh convA ⊂ F, ta cần chứng minh F tập lồi Thật vËy, lÊy x, y ∈ F, x = ∑ α a , y = ∑ β b ; a ,b i∈I i i j∈I j j i Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn j ∈ A, ∀i , j ∈I C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an vµ ∑α i ∈I i = 1, ∑β j ∈I j = 1, víi mäi α i , β j ≥ ; ∀i , j ∈I Víi ≤ λ ≤ 1, ta xÐt ( − λ )x + λ y = ( − λ ) ∑α i + λ i ∈I ∑ (1 − ) Mặt khác, ta có: i I i + ∑β b j j ∈I ∑ λβ j ∈I j j = ∑ (1 − λ )α a i i i ∈I = (1 − λ ) ∑α i + λ i ∈I + ∑ λβ b j j∈I ∑β j ∈I j j = V× vËy ( − λ )x + λ y ∈ A, F tập lồi Mặt khác A F mà convA tập lồi nhỏ chứa A nên convA ⊂ F VËy F = convA 1.1.2.4 HƯ qu¶ TËp A låi vµ chØ A chøa tÊt tổ hợp lồi 1.1.3 Điểm cực biên 1.1.3.1 Định nghĩa (xem [1]) Ta gọi x M điểm cực biên tập lồi M nÕu x ∈ [ y ; z ] ; y , z M x y x z 1.1.3.2 Định nghĩa (xem [16]) Điểm x M đợc gọi điểm cực biên cđa tËp M nÕu x kh«ng thĨ biĨu diƠn d−íi dạng tổ hợp lồi thực hai điểm thuộc M 1.1.3.3 Nhận dạng điểm cực biên (xem [16]) Giả sử S tập hợp hữu hạn điểm mặt phẳng Ta có số dấu hiệu nhận dạng điểm cực biên convS nh sau: i Ta gọi điểm cao S điểm mà có tung độ lớn Trong điểm cao điểm có hoành độ lớn điểm có hoành độ nhỏ điểm cực biên convS ii Ta gọi ®iĨm thÊp nhÊt cđa S lµ ®iĨm mµ cã tung độ nhỏ Trong điểm thấp điểm có hoành độ lớn điểm có hoành độ nhỏ điểm cực biên convS Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an iii Ta gäi ®iĨm xa bên phải S điểm mà có hoành độ lớn Trong điểm xa ®iĨm cã tung ®é lín nhÊt vµ ®iĨm cã tung độ nhỏ điểm cực biên convS iiii Ta gọi điểm xa bên trái S điểm mà có hoành độ nhỏ Trong ®iĨm xa nhÊt th× ®iĨm cã tung ®é lín nhÊt điểm có tung độ nhỏ điểm cực biªn cđa convS 1.1.3.4 VÝ dơ: Trong , nÕu M đoạn thẳng điểm cực biên hai đầu mút, M tam giác điểm cực biên đỉnh tam giác Chú ý tập hợp điểm cực biên tập lồi hữu hạn, chẳng hạn hình tròn đóng (theo chuẩn Euclide mặt phẳng) điểm nằm biên điểm cực biên hình tròn 1.2 Độ phức tạp thuật toán Độ 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 hiệu 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 Một 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 độ phức tạp thời gian nhớ độ phức tạp không gian Xác định đợc độ phức tạp thời gian thuật toán quan trọng Vì ta biết đợc thời gian tính toán phút, năm hay tỉ năm để thực thuật toán Độ phức tạp không gian đòi hỏi thuật toán cho ta biết đợc bớc chuẩn bị thấy đợc 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 này, không nghiên cứu sở liệu nên ta bỏ qua độ phức tạp không gian, nghiên cứu độ phức tạp thời gian Để xác định độ phức tạp thuật toán ta xét hàm thực f : xác định tập số nguyên dơng có tập giá trị hầu nh dơng công cụ đo Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Nghĩa tồn số tự nhiªn n cho mäi n ≥ n0 , n N f(n) > Kí hiệu tập hợp tất hàm nh 1.2.1 Định nghĩa (xem [2]) Cho hàm số g(n) , ta định nghĩa O(g(n)) tập hợp hàm f(n) có tính chất tồn số dơng c số tự nhiªn n cho víi ∀n ≥ n th× f(n) ≤ cg(n) NÕu f(n)∈ O( g(n)) th× ta nói f(n) Ô lớn g(n) 1.2.2 Các tÝnh chÊt (xem [2]) i NÕu f (n ) ∈O ( g (n )) vµ f (n ) ∈O ( g (n )) th× f1 (n) + f2 (n) ∈ O( g1 (n) + g2 (n)) Chøng minh: Gi¶ sư r»ng víi mäi n ≥ n1 , f (n ) ≤ c1g (n ) vµ víi mäi n ≥ n2 , f2 (n) ≤ c2 g2 (n) Ta đặt n = max{ n1 , n2 } vµ c = max{ c1 , c2 } Khi ®ã víi mäi n ≥ n ta cã f1 (n) + f2 (n) ≤ c1g1 (n) + c2 g2 (n) ≤ c0 (g1 (n) + g2 (n)) ii NÕu f (n ) ∈O ( g (n )) vµ f (n ) ∈O ( g (n )) th× f1 (n) + f2 (n) ∈ O(max{g1 (n), g2 (n)}) Chøng minh: Gi¶ sư r»ng víi mäi n ≥ n1 , f (n ) ≤ c1g (n ) vµ víi mäi n ≥ n2 , f2 (n) c2 g2 (n) Ta đặt n = max{ n1 , n2 } vµ c0 = c1 + c2 Khi ®ã víi mäi n ≥ n ta cã f (n ) + f (n ) ≤ c1g (n ) + c g (n ) ≤ c (max{ g1 (n), g (n ) }) iii NÕu f (n ) ∈O ( g (n )) vµ f (n ) ∈O ( g (n )) th× f1 (n) f2 (n) ∈ O( g1 (n)g2 (n)) Chøng minh: Gi¶ sư r»ng víi mäi n ≥ n1 , f (n ) ≤ c1g (n ) vµ víi mäi n ≥ n2 , f2 (n) ≤ c2 g2 (n) Ta đặt n = max{ n1 , n2 } c0 = (c1c2 ) Khi víi mäi n ≥ n ta cã f1 (n) f2 (n) ≤ c1g1 (n)c2 g2 (n) ≤ c0 ( g1 (n)g2 (n)) iiii 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 ) Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Chøng minh: 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 + + a0 n k ≤ ( ak + + a1 + a0 )n k NÕu c = ak + + a1 + a0 th× P(n) ≤ cn k víi mäi n ≥ n = 1.2.3 Xác định độ phức tạp tính toán tht to¸n (xem [2]) Ta sư dơng T(khèi m·) cho độ phức tạp tính toán toán tử riêng nh đoạn mà chơng trình Khi đoạn mà chơng trình đợc tách biệt rõ ràng ta kí hiệu T(n) độ phức tạp tính toán hàm biến số n, với n số phép toán sở Độ phức tạp tính toán đợc đo hàm O() Vậy xác định độ phức tạp tính toán tức 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 đợc dùng để đo độ phức tạp thời gian phép so sánh số nguyên, phép cộng, trừ, nhân chia số nguyên phép toán sơ cấp khác Chúng ta nhắc lại khái niệm toán tử sở phép cộng, trừ, nhân, chia hàm số lợng giác, hàm mũ, hàm logarit phép toán sơ cấp khác Độ phức tạp toán tử sở O(1) Tuy nhiên thực tính toán với số lớn phép nhân phép lấy hàm không toán tử sở Vì phép nhân số lớn phép lấy hàm đợc thực tính toán dÃy Độ phức tạp thời gian dÃy liên tiếp phép tính đợc xác định độ phức tạp cao chúng Tức là, giả sử toán tử s1 có độ phức tạp F1 toán tử s có độ phức tạp F2 Khi ®ã T (s1 ) ∈O (F1 ) ; T (s ) ∈O (F2 ) ⇒ T (s1 , s2 ) ∈ max{O( F1 ), O( F2 )} §Ĩ dễ dàng cho việc phân tích thuật toán ta kết hợp kí hiệu đo độ phức tạp phân tích trờng hợp xấu để biết đợc thời gian thùc hiÖn Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 10 thuật toán bao nhiêu? Ngời ta định độ phức tạp phép toán trờng hợp xấu thuật toán là: Phép gán có độ phức tạp O(1); Phép nhập khỏi thủ tục có độ phức tạp O(1); Mệnh đề if (điều kiện) có độ phức tạp thời gian so sánh cộng với O (max hai nhánh); Vòng lặp (while) có độ phức tạp tổng tất vòng lặp với thời gian vòng lặp 1.2.4 C¸c vÝ dơ VÝ dơ 1: (xem [2]) X¸c định độ phức tạp cấu trúc if(p) then s1 else s Nếu độ phức tạp p, s1 , s tơng ứng O(P), O( F1 ), O( F2 ) độ phức tạp cấu trúc if(p) then s1 else s lµ max{O(P), O( F1 ), O( F2 )}, nghĩa độ phức tạp tăng nhanh hàm P, F1 , F2 ThËt vËy T(p) ∈ O(P); T (s1 ) ∈O (F1 ) ; T (s ) ∈O (F2 ) ⇒ T(if(p) then s1 else s ) ∈ max{O(P), O( F1 ), O( F2 )} Ta cã thĨ gi¶i thÝch nh sau: i Giả sử điều kiện p dÃy lệnh p, s1 đợc thực có độ phức tạp max{O(P), O( F1 )}; ii Giả sử điều kiện p sai dÃy lệnh p, s đợc thực có độ phức tạp max{O(P), O( F2 )} Mà ta cha biết hai khối lệnh khối lệnh thực trớc Do đó, ta nhận đợc độ phức tạp vòng if là: T((if(p) then s1 else s ) ∈ max{max{O(P), O( F1 )}, max{O(P), O( F2 )}} = max{ O(P), O( F1 ), O( F2 )} Ví dụ 2: (xem [2]) Xác định độ phức tạp vòng for Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 37 tiên u * điểm cuối b cđa X * n»m trªn biªn cđa bao låi cđa X * (theo Bỉ ®Ị 3.2.1.5) Gäi TP( X * ) kết tính toán phần đầu đờng gấp khúc tạo tiếp tuyến trái X * ( Z 1* ) Khi ®ã Z 1* phần thứ hai đờng gấp khúc tạo tiếp tuyến trái X Z := Z Z 1* convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hå 3.1.3 VÝ dơ minh ho¹ 3.1.3.1 VÝ dơ 1: LÊy X = < a = u , , u11 = b > đờng biên đa giác đơn P từ a đến b theo thứ tự ngợc chiỊu kim ®ång hå, víi u =(0; -8), u1 = (7; -3), u = (4; 1), u = (4; -4), u = (2; -2), u = (5; 5), u = (1; 7), u = (-5; 3), u = (0; 0), u = (-7;-3), u10 = (-3; -4), u11 = (-2; -6) Xác định convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hồ Gọi Z convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hồ Ta có u2 nằm bên trái u0u1 nên D = < u2 , u0 , u1 , u2 > i = 3, ta có u nằm bên trái u 2u u1u nên u đợc cho vào T u vµ lóc nµy Tu = {u2 , u3} XÐt ®Ønh tiÕp theo u4 i = 4, ta có u nằm bên trái u1u nên u đợc cho vào đầu D, u nằm bên phải u 2u nên di chun u khái ci cđa D, u nằm bên trái u 0u1 nên chèn u vµo ci cđa D vµ lóc nµy D = < u4 , u0 , u1 , u2 , u4 > i = 5, ta cã u n»m bªn trái u 4u nên chèn u vào cuối D, u nằm bên phải u 2u nên loại u khỏi đầu D; tiếp tục kiểm tra u nằm bên phải u1u nên loại u khỏi đầu D, ta có u nằm bên trái u 0u1 nên u đợc cho vào đầu D vµ lóc nµy D = < u5 , u4 , u0 , u1 , u5 > i = 6, ta có u nằm bên trái u1 u nên u đợc cho vào đầu D, ta có u nằm bên phải u 4u nªn di chun u khái ci cđa D, ta có u nằm bên trái u 0u1 nên chèn u vào cuối D lóc nµy D = < u6 , u0 , u1 , u5 , u6 > Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 38 i = 7, ta cã u n»m bên trái u 5u nên u đợc cho vào đầu D, ta có u nằm bên phải u 6u nên di chuyển u khái cuèi cña D, ta cã u nằm bên trái u 0u1 nên chèn u vµo ci cđa D vµ lóc nµy D = < u7 , u0 , u1 , u5 , u6 , u7 > i = 8, ta cã u n»m bên trái u 7u u 6u nên u đợc cho vào T u Tu = {u7 , u8} XÐt ®Ønh tiÕp theo u9 i = 9, ta cã u n»m bên trái u 6u nên u đợc cho vào đầu D, ta có u nằm bên phải u 7u nên di chuyển u khái cuèi cña D, ta cã u nằm bên trái u 0u1 nên chèn u vào cuối D ta đợc D = < u9 , u0 , u1 , u5 , u6 , u7 , u9 > i = 10, ta cã u10 nằm bên trái u 9u u 7u nên u10 đợc cho vào T u lúc Tu = {u9 , u10} Xét đỉnh u11 Hình 3.3: Hình minh hoạ convex rope vÝ dô 3.1.3.1 i = 11, ta có u11 nằm bên trái u 9u u 7u nên u11 đợc cho T u lóc nµy Tu = {u9 , u10 , u11} Vì u11 T u 9 nên u chóp cuối X, Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 39 Z1 =< u0 , u1 , u5 , u6 , u7 , u9 > lµ phần thứ đờng gấp khúc tạo tiếp tuyến trái X Trong (Hình 3.3), u nằm bên phải tia m nên điểm chuyển ®ỉi cđa X C¸c ®Ønh cđa X tõ u đến u11 nằm bên phải m là: u9 , u10 , u11 Vì u u11 nằm trªn biªn cđa bao låi cđa X * nªn Z1* =< u9 , u11 > phần thứ đờng gấp khúc tạo tiếp tuyến trái X * phần thứ hai đờng gấp khúc tạo tiếp tuyến trái X Vậy convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hồ là: Z = Z1 ∪ Z1* = < u0 , u1 , u5 , u6 , u7 , u9 , u11 > 3.1.3.2 VÝ dô 2: LÊy X = đờng biên đa giác đơn P từ a đến b theo thứ tự ngợc chiều kim đồng hồ (Hình 3.3) Xác định convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hồ Hình 3.3: u , u12 chóp u , u , u11 không, u14 chóp cuối cùng, u điểm chuyển đổi ( u i đợc kí hiƯu ®ång nhÊt víi “i”) Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 40 Gọi Z convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hå V× b = u 24 ∈T u víi Tu = {u14 , u15 , , u24}, nên u14 chãp ci cïng cđa 14 14 X V× u14 n»m bên trái tia m nên điểm liền trớc u14 nằm biên bao lồi X u8 u nằm bên phải tia m nên điểm chuyển đổi X Vì đờng gấp khúc Z1 tạo tiếp tuyến trái X từ u đến u là: < u0 , u1 , u3 , u4 , u6 , u7 , u8 > Các đỉnh X nằm u u24 , nằm bên phải tia m lµ: u8 , u9 , u10 , u16 , u18 , u19 , u20 , u21 , u22 , u24 Hơn nữa, giao điểm tia m víi ®−êng gÊp khóc X tõ u ®Õn u24 lµ: v10,11 , v15,16 , v16,17 , v17,18 , v22,23 VËy X * =< u8 , u9 , u10 , v10,11 , v15,16 , u16 , v16,17 , v17,18 , u18 , u19 , u20 , u21 , u22 , v22,23 , u24 > Ta cã Z1* t¹o bëi c¸c tiÕp tun tr¸i cđa X * tõ u * đến b < u8 , u19 , u21 , u24 > Vậy convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hồ lµ: Z = Z1 ∪ Z1* = < u0 , u1 , u3 , u4 , u6 , u7 , u8 , u19 , u21 , u24 > NhËn xÐt Trong thực tế, thuật toán xác định convex rope đà đợc trình bày hai Ví dụ 3.1.3.1 3.1.3.2 Điều nói lên Z bao gồm hai phần, phụ thuộc vào vị trí điểm b bao lồi X (b điểm nằm bao lồi X không) 3.2 Tính đắn thuật toán Trớc khẳng định tính đắn thuật toán, phát biểu vài tính chất làm tiền đề cho phép chứng minh 3.2.1 Một số tính chất Từ phần trở đi, xét đa giác đơn P với a b đỉnh P, a nằm biên bao lồi P, b điểm nhìn vô tận (tồn tia m b điểm chung với P b, gọi m tia đối m) Gọi X đờng biên P từ a đến b theo thứ tự ngợc chiều kim ®ång hå Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 41 3.2.1.1 Mệnh đề Trong thuật toán tăng dần xác định bao låi cđa X (mơc 3.1.1), chãp ci cïng cđa X tồn nằm biên bao låi cđa X Chøng minh: Chóng ta xÐt hai trờng hợp xảy ra: a) Nếu b nằm biên bao lồi X b chóp cuối X b) Nếu b không nằm biên cđa bao låi cđa X th× b ∈ Tu víi chóp u đó, lúc u chóp cuối X Giả sử ngợc lại, không tồn chóp u để b Tu điều mâu thuẫn với giả thiết b điểm nhìn vô tận b không nằm biên bao lồi X Giả sử tồn hai chãp ci cïng cđa X lµ u vµ v, b Tu b Tv , nên b Tu Tv = (vì hai đuôi khác rời nhau), điều vô lÝ VËy tån t¹i nhÊt chãp ci cïng cđa X TiÕp theo, chóng ta chøng minh chãp cuèi cïng nằm biên bao lồi X Giả sử chóp cuối u không nằm biên X nên u Tx (với u x ), suy b Tx Điều mâu thuẫn tồn chóp cuối cïng cđa X 3.2.1.2 MƯnh ®Ị (xem [6]) Trong tht toán tăng dần xác định bao lồi X (mục 3.1.1), nÕu chãp cuèi cïng ui ≠ b n»m bªn trái tia m, điểm liền trớc u i nằm biên bao lồi X (theo thứ tự ngợc chiều kim đồng hồ) nằm bên phải tia m Chứng minh: Nếu tồn i u i b để H i không tăng lên trở thành bao lồi X u i chóp cuối X Giả sử u i nằm bên trái tia m điểm liền trớc u i nằm biên bao lồi X nằm bên phải tia m Giả sử ngợc lại, tồn điểm v * điểm liền trớc u i theo thứ tự ngợc chiều kim đồng hồ nằm bao lồi X cho v * nằm bên trái tia m Vì b Tu H i bao lồi i X, b điểm nhìn vô tận nên đờng gấp khúc X có tính tự cắt Điều mâu Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 42 thuẫn với giả thiết Vậy điểm liền trớc u i theo thứ tự ngợc chiều kim đồng hồ nằm biên bao lồi X nằm bên phải tia m 3.2.1.3 Hệ Điểm chuyển đổi u * X tồn nhất, nằm a b theo thứ tự ngợc chiều kim đồng hồ Chứng minh: Điều dễ dàng suy đợc từ mệnh đề 3.2.1.4 MƯnh ®Ị Gäi Z= Z1 ∪ Z1* , Z1 đờng gấp khúc tạo tiếp tuyến trái X từ a đến điểm chuyển đổi u * theo thứ tự ngợc chiều kim đồng hồ, Z1* đờng gấp khúc tạo tiếp tuyến trái X * từ u * đến b theo thứ tự ngợc chiều kim đồng hồ Thế góc tạo đỉnh tuỳ ý Z (trừ hai đỉnh a b) với đỉnh liền trớc đỉnh nhỏ Chứng minh: Giả sử ngợc lại tồn đỉnh ui Z cho góc tạo đỉnh liền trớc đỉnh ui lớn Điều mâu thuẫn ui tiếp điểm tiếp tuyến trái từ đỉnh ui đến đa giác lồi H i 3.2.1.5 Mệnh đề (xem [6]) Giả sử u * b điểm chuyển đổi X, thì: a) Bao låi cđa X * ={z: z∈ X víi z n»m u * b, z nằm bên phải cđa m, hc z thc giao cđa m víi X} bao gồm điểm u * điểm cuối b X * Hơn nữa, b lµ chãp ci cïng cđa X * b) Bao låi cđa X * vµ cđa X ** ={z: z∈ X với z nằm u * b, z nằm bên phải m} trùng bên trái tia b u* Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 43 Chøng minh: a) Gi¶ sư v * điểm u * nằm biên bao lồi X Vì m giao điểm với P b, nên m cắt đoặn ]v* , u* [ LÊy v = m⋂]v * , u * [ TiÕp theo, X * n»m hình nón lồi đỉnh v với biên hai tia vb v u* Do đó, bao lồi cđa X * cịng n»m h×nh nãn låi V× b u * nằm biên hình nón, nªn chóng n»m trªn biªn cđa bao låi cđa X * Vì b nằm biên bao lồi X * nên b chóp cuối X * b) Từ giả thiết toán ta cã {u∈ X: u∈ X * , u n»m bªn tr¸i cđa tia b u*} = {u∈ X: u∈ X ** , u nằm bên trái tia b u*} Do đó, ta dễ dàng có điều phải chứng minh 3.2.1.6 Mệnh đề (xem [6]) Thuật toán TP(X) xác định phần đầu đờng gấp khúc tạo tiếp tuyến trái, chóp cuối điểm chuyển đổi X có độ phức tạp O( | X | ) Chứng minh: Dễ dàng thấy thuật toán TP(X) phần lớn dựa vào thuật toán Melkman với hai cải tiến ("trong u i nằm bên phải tia d b d b +1 " t−¬ng øng "trong u i nằm bên phải tia d t 1d t ") đợc thay ("trong u i nằm bên phải tia d b d b +1 " tơng ứng u i nằm bên phải tia d t 1d t ") Và X có tính tự cắt m nên thuật toán TP(X) với hai cải tiến có db = dt Vậy điểm D tạo thành đa giác lồi theo thứ tự ngợc chiều đồng hồ Hơn nữa, thời ®iĨm thø i, nÕu mét ®iĨm thc phÇn cđa đa giác lồi D thuộc đuôi chóp u = db = dt Theo thuËt to¸n Melkman, điểm db , db+1 , , d b +t b làm thành đa giác lồi Bớc Vì u n»m trªn biªn cđa bao låi cđa X nên phần tử D Vậy đỉnh phần đầu đờng gấp khúc tạo tiếp tuyến trái X u0 , , d t đạt đợc trực tiếp từ mảng D Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 44 Vì điểm u i đợc cho vào D loại khỏi D nhiều lần, độ phức tạp thuật toán TP(X) O( | X | ) 3.2.2 Tính đắn thuật toán Tính đắn thuật toán xác định convex rope đợc khẳng định qua Bổ ®Ị vµ MƯnh ®Ị sau 3.2.2.1 Bỉ ®Ị (xem [6]) Convex rope theo thứ tự ngợc chiều kim đồng hồ hai điểm a b đa giác đơn P tồn Chứng minh: Điều dễ dàng suy đợc từ ([13] trang 639) 3.2.2.2 Bổ đề Giả sử Z đờng tuỳ ý nối hai đỉnh a b đờng gấp khúc Z (Z đợc nêu Mệnh đề 3.2.1.4) theo thứ tự ngợc chiều kim đồng hồ cho tất đỉnh Z nằm nằm bên trái Z Khi chiều dài Z lớn chiều dài Z (xem Hình 3.5 ) Chứng minh: Việc chứng minh đợc dễ dàng suy từ bất đẳng thức tam giác 3.2.2.3 Mệnh đề (xem [6]) Thuật toán xác định convex rope theo thứ tự ngợc chiều kim đồng hồ, Z, hai điểm a b đợc hoàn thành Bớc có ®é phøc t¹p O( | X | ) Chøng minh: Giả sử m tia b giao điểm với P b Chúng ta xét hai trờng hợp xảy ra: a) Nếu b chóp cuối X b nằm biên bao lồi X, b điểm chuyển đổi X Cho nên Z đờng gấp khúc tạo tiếp tuyến trái X Điều đợc tính toán Bớc b) Nếu b không chóp X theo (Mệnh đề 3.2.3.3) bT u với chóp u Do ®ã, b lµ mét ®iĨm cđa bao låi cđa X Vì thế, tồn điểm chuyển đổi u * đờng gấp khúc X Bớc tính toán phần đầu đờng gấp khúc tạo tiếp tuyến trái X từ a đến u* Theo (Mệnh ®Ò 3.2.1.5 a)), u * Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 45 b nằm biên bao lồi X * , b chóp cuối cïng cđa X * V× thÕ, B−íc tÝnh toán phần thứ đờng gấp khúc tạo tiếp tuyến trái X * dừng lại Theo (Mệnh đề 3.2.1.5 b)), đờng biên trái bao låi cđa X ** tõ u * ®Õn b n»m bên trái tia b u* Điều ®ã chØ r»ng, phÇn thø nhÊt cđa ®−êng gÊp khúc tạo tiếp tuyến trái X * phần thứ hai đờng gấp khúc tạo tiếp tuyến trái X Chính Z bao gồm hai phần: Phần thứ đờng gấp khúc tạo tiếp tuyến trái X từ a đến u * phần thứ hai đờng gấp khúc tạo tiếp tuyến trái X * tõ u * ®Õn b u * Z X Z b a Hình 3.5: Chiều dài Z lớn chiều dài Z Bây chóng ta xÐt ®−êng Z' tïy ý tõ a ®Õn b theo thứ tự ngợc chiều kim đồng hồ thoả mÃn điều kiện đỉnh X nằm bên trái dọc chiều dài đờng Z' từ a đến b Theo (Bổ đề 3.2.2.2) chiều dài đờng Z' lớn chiều dài đờng Z Do đó, Z xác định ngắn tất đờng từ a đến b theo thứ tự ngợc chiều kim đồng hồ cho không cã Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 46 ®iĨm chung với phần P Vì Z convex rope hai điểm a b theo thứ tự ngợc chiều kim đồng hồ Nếu b nằm bao lồi X theo chứng minh tính toán dừng lại Bớc 2, nên theo (Mệnh đề 3.2.1.6) độ phức tạp thuật toán O( | X | ) Nếu b không nằm biên bao lồi X nằm bao lồi X * Do thuật toán dừng lại Bớc Vì thuật toán TP(X) tuyến tính nên độ phức tạp thuật toán O( | X | ) + O( | X * | ) = O( | X | ) 3.3 VÝ dô chøng tỏ sử dụng thuật toán Melkman scan thuật toán Graham không xác định đợc convex rope Cho đa giác đơn P, a b đỉnh P Gọi X đờng biên P theo thứ tự ngợc chiều kim đồng hồ từ a đến b (a nằm biên bao lồi P, b nhìn vô tận) 3.3.1 Nếu dùng scan thuật toán Graham xác định đợc convex rope muốn xác định đợc convex rope phải xác định đợc bao lồi X, chóp cuối điểm chuyển đổi X Mà bao lồi X xác định đợc nh (mục2.3) đà trình bày Nếu xác định đợc bao lồi X không xác định đợc điểm chuyển đổi X nên không xác định đợc convex rope hai điểm a b 3.3.2 Nếu dùng thuật toán Melkman xác định đợc convex rope, b không nằm biên bao lồi X b điểm bao lồi X nên convex rope hai điểm a b cha xác định đợc 3.3.3 Ví dụ: Cho đa giác đơn P, a b đỉnh P, lấy X = < a = u , u1 , , u12 = b> đờng biên P từ a ®Õn b theo thø tù ng−ỵc chiỊu kim ®ång hå, ®ã: u0 = (-3; -7), u1 = (3; -7), u2 = (7; -4), u3 = (8; 2), u4 = (4; 5), u5 = (0; 4), u6 = (-2; 3), u7 = (3; -5), u8 = (-8; -1), u9 = (-1; -1), u10 = (-8; 5), u11 = (-3; 8), u12 = (2; 2) Xác định convex rope hai điểm a b theo thứ tự ngợc chiều đồng hå Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 47 3.3.3.1 Sö dụng thuật toán tuyến tính xác định convex rope Với i = th× H =< u0 , u1 , u2 >, i = th× H3 =< u0 , u1 , u2 , u3 >, i = th× H =< u0 , u1 , u2 , u3 , u4 >, ta cã H = H , i = th× H =< u0 , u1 , u2 , u3 , u4 , u6 >, ta cã H = H , i = th× H8 =< u0 , u1 , u2 , u3 , u4 , u6 , u8 >, ta cã H8 = H , i = 10 th× H10 =< u0 , u1 , u2 , u3 , u4 , u11 , u8 >, i = 11 th× H11 =< u0 , u1 , u2 , u3 , u4 , u11 , u10 , u8 > vµ cuèi cïng H12 = H11 Cho nªn u5 , u7 , u11 chóp X Vì b = u12 Tu11 nên u11 chóp cuối X Trong hình vẽ, chóp cuối u11 nằm bên trái m nên điểm liền trớc u11 theo thứ tự ngợc chiều kim đồng hồ nằm biên bao lồi X u4 Vì u4 nằm bên phải m nên điểm chuyển đổi Đờng gấp khúc tạo tiếp tuyến trái X từ u0 đến u4 < u0 , u1 , u2 , u3 , u4 > Các đỉnh X nằm u4 u12 nằm bên phải m lµ: u4 , u5 , u7 vµ u12 Hơn nữa, giao m với X từ u4 ®Õn u12 lµ v5,6 , v6,7 , v7,8 VËy X * = < u4 , u5 , u5,6 , u6,7 , u7 , u7,8 , u12 =b> §−êng gÊp khúc tạo tiếp tuyến trái X * từ u4 đến u12 < u4 , u12 > Điều phần thứ Z lµ < u0 , u1 , u2 , u3 , u4 >, phần thứ hai Z < u4 , u12 > VËy Z= < u0 , u1 , u2 , u3 , u4 , u12 > 3.3.3.2 Sö dụng scan thuật toán Graham xác định convex rope Ban đầu đặt S = ( u1 , u0 ) TiÕp tơc xÐt ®iĨm tiÕp theo i = ta có u2 nằm bên trái u0u1 nên thêm u2 vµo S vµ S = ( u2 , u1 , u0 ), i = ta cã S = ( u3 , u2 , u1 , u0 ), i = ta cã S = ( u4 , u3 , u2 , u1 , u0 ), i = ta cã S = ( u5 , u4 , u3 , u2 , u1 , u0 ), i = ta cã S = ( u6 , u4 , u3 , u2 , u1 , u0 ), i = ta cã S= ( u7 , u6 , u4 , u3 , u2 , u1 , u0 ), i = ta cã S = ( u8 , u6 , u4 , u3 , u2 , u1 , u0 ), i = ta cã S =( u9 , u8 , u6 , u4 , u3 , u2 , u1 , u0 ), i = 10 ta cã S = ( u10 , u9 , u8 , u6 , u4 , u3 , u2 , u1 , u0 ), i = 11 ta cã S= ( u11 , u9 , u8 , u6 , u4 , u3 , u2 , u1 , u0 ), i = 12 ta cã S = ( u12 , u9 , u8 , u6 , u4 , u3 , u2 , u1 , u0 ) Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 48 VËy sư dơng scan thuật toán Graham cha hẳn xác định đợc convex rope 3.3.3.3 Sử dụng thuật toán Melkman xác định convex rope Nếu sử dụng thuật toán Melkman xác định đợc bao lồi X đa gi¸c låi < u0 , u1 , u2 , u3 , u4 , u11 , u10 , u8 > Do xác định đợc convex rope hai điểm a b Hình 3.6: Hình minh hoạ ví dụ 3.3.3 Bảng 1: (xem [6]) Kết tính toán số đỉnh phần thứ phÇn thø hai cđa convex rope, Z, theo thø tù ngợc chiều kim đồng hồ hai điểm a b đa giác đơn P gồm n đỉnh đợc cho với data điểm ngẫu nhiên Với a b đỉnh P (a nằm biên bao lồi P, b điểm nhìn vô tận) Hai điểm a b đợc xác định nh sau: a điểm xa bên trái, b điểm liền trớc điểm cao bên phải Lấy X đờng biên P từ a đến b theo thứ tự ngợc chiều kim đồng hồ số ®Ønh cña Z1 sè ®Ønh cña P sè ®Ønh cña X sè ®Ønh cđa Z1* 100 300 600 900 85 271 573 747 11 12 13 21 Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn 3 C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 49 KÕt luËn Trong luận văn này, nghiên cứu nội dung thuật toán tuyến tính xác định convex rope đà đạt đợc số kết quả, nh đa mét sè h−íng nghiªn cøu thêi gian tíi Cơ thể: I Kết đạt đợc: Trình bày thuật toán Graham xác định bao lồi tập hợp hữu hạn điểm mặt phẳng đa ví dụ minh hoạ (mục 2.1) Trình bày thuật toán Melkman xác định bao lồi đờng gấp khúc không tự cắt đa ví dụ minh hoạ (mục 2.2) So sánh thuật toán Melkman scan thuật toán Graham xác định bao lồi đờng gấp khúc không tự cắt đa ví dụ minh hoạ (mục 2.3) Trình bày chi tiết thuật toán tuyến tính xác định convex rope, đa ví dụ minh họa (mục 3.1) Phát biểu chứng minh mét sè tÝnh chÊt cđa tht to¸n tun tÝnh x¸c định convex rope (nh Mệnh đề 3.2.1.1, 3.2.1.4) Trình bày chứng minh chi tiết tính đắn thuật toán tuyến tính xác định convex rope (mục 3.2.2) Giải thích thuật toán Melkman scan thuật toán Graham không xác định đợc convex rope đa ví dụ minh hoạ (mục 3.3) II Những vấn đề tiếp tục nghiên cứu: Cải tiến scan thuật toán Graham để xác định đợc convex rope Xây dựng thuật toán xác định điểm nhìn vô tận đa giác P cho trớc Cải tiến thuật toán để xác định convex rope trờng hợp hai đỉnh a b điểm nhìn vô tận Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an 50 Ti liệu tham khảo Tài liệu tiếng Việt: [1] Phan Thành An, Bài giảng hình học tính toán, Viện Toán học, (2009) [2] Nhuyễn Hữu Điển, Một số vấn đề thuật toán, NXB Giáo dục, (2005) [3] Đỗ Văn Lu Phan Huy Khải, Giải tích lồi, NXB Khoa häc vµ kü tht Hµ Néi, (2000) Tµi liƯu tiÕng Anh: [4] P T An, Method of orienting curves for determining the convex hull of a finite set of points in the plane, Optimization, Vol 59 (2010) pp 1-5 [5] P T An, Some applications of optimal control problems in computational geometry (invited talk), Seminar at CEMAT, Instituto Superior Tecnico, Lisbon, Portugal, October 14-22, (2008) [6] P T An, A linear time algorithm for finding the convex ropes between two vertices of a simple polygon without triangulation, The Abdus Salam International Centre for Theoretical Physics (ICTP), Trieste, Italy, Preprint, (6/2008) [7] P T An, A modification of Graham's algorithm for determining the convex hull of a finite planar set, Annales Mathematicae et Informaticae, 34 (2007) pp 3-8 [8] L Guibas, J Hershberger, D Leven, M Sharir, and R E Tarjan, Lineartime algorithms for visibility and shortest path problems inside triangulated simple polygons, Algorithmica, (1987) pp 209-233 [9] R L Graham, An efficient algorithm for determining the convex hull of a finite planar set, Information Processing Letters, 26 (1972) pp 132-133 [10] P J Heffernan and J S B Mitchell, Structured visibiliy profiles with applications to problems in simple polygons, Proc 6th Annual ACM Symp Computational Geometry, (1990) pp 53-62 [11] A A Melkman, On-line Construction of the convex hull of a simple polyline, Information Processing Letters, North-Holland, 25 (1987) pp 11-12 [12] J Mitchell, Melkman's Convex Hull Algorithm, AMS 345/CSE 355 Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn C.33.44.55.54.78.65.5.43.22.2.4 22.Tai lieu Luan 66.55.77.99 van Luan an.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.22 Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Stt.010.Mssv.BKD002ac.email.ninhd 77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77t@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn

Ngày đăng: 22/08/2023, 00:55