Thuật toán chính

Một phần của tài liệu Bài toán tìm đường đi ngắn nhất giữa hai đỉnh trong đa giác đơn điệu (Trang 29 - 32)

Tính đúng đắn của thuật toán

Để chứng minh tính đúng đắn của thuật toán ta dựa vào một số mệnh đề sau:

Mệnh đề 2.3.1 (Xem [13]) Giả sử st là hai điểm trong đa giác đơn P,

S là tập các đỉnh của đ-ờng ống tay xác định bởi st (phép tam giác phân). Khi đó, các đỉnh mà đ-ờng ngắn nhất từ s đến t thuộc tập S {s, t}.

Mệnh đề 2.3.2 (Xem [17]) Giả sử uwx là một tam giác trong phép tam giác phân của đa giác P sao cho uwx F = d. Khi đó đ-ờng ngắn nhất từ s

tới x là từ ( , )s a và đến ax. Nếu ax F =  thì đi thẳng tới x, hay ng-ợc lại sẽ đi theo một phần ( , )a u ,( , )a w tới v nếu vx là tiếp tuyến của F tại v sau đó tiếp tục theo đoạn thẳng vx.

Từ đó ta suy ra:

 Thuật toán sẽ dừng sau hữu hạn b-ớc, vì luôn tồn tại phép tam giác phân đa giác đơn(Xem[14], trang12) và cây đối ngẫu của nó là đồ thị hữu hạn đỉnh, hiển nhiên tồn tại hình ống tay với hữu hạn đỉnh.

Cho: Đa giác đơnP và hai điểm s, t nằm trong P .

Tìm: Đ-ờng đi ngắn nhất từ s đến t trong đa giác đơn P

B-ớc 1 Thực hiện phép tam giác phân TGP(P ), ta gọi phép tam giác phân đó là T

B-ớc 2 Với phép tam giác phânT ,thực hiện SLEEVE(P ) ta đ-ợc hình ống tayP ’

 Thuật toán kết thúc thì tìm đ-ợc đ-ờng đi ngắn nhất từ s đến t vì luôn tìm đ-ợc duy nhất đ-ờng ngắn nhất nằm trong hình ống tay.

Độ phức tạp thuật toán

Thuật toán chính có độ phức tạp là O(n2).

Nhận xét 2.3.1 Tr-ờng hợp đa giác đơn điệu có n đỉnh hợp bởi hai

đ-ờng gấp khúc đơn điệu theo cùng một ph-ơng < ap0, p1, ..., b > và < aq0, q1, ..., b > thì đ-ờng đi ngắn nhất trong miền đa giác đơn điệu từ đỉnh

ađến đỉnh b nh- là một đặc biệt thuật toán trên.

Việc đánh giá độ phức tạp thuật toán này dựa vào: - B-ớc 1 có độ phức tạp là O(n).

- B-ớc 2 có độ phức tạp là O(n2). - B-ớc 3 có độ phức tạp là O(n).

Do đó độ phức tạp thuật toán của Lee và Preparata tìm đ-ờng đi ngắn nhất giữa hai đỉnh trong đa giác đơn điệu là O(n2).

Phần minh họa của thuật toán của Lee và Preparata đ-ợc trình bày trong [7].

Ch-ơng III

Thuật toán dùng bao lồi làm định h-ớng tìm đ-ờng đi ngắn nhất giữa hai đỉnh

trong đa giác đơn điệu

Trong [9] và [10], Phan Thành An đã đ-a ra ý t-ởng tìm đ-ờng đi ngắn nhất giữa hai đỉnh trong đa giác đơn không cần quá trình tam giác phân đa giác. Vấn đề này đ-ợc trình bày lại trong [5] cho tr-ờng hợp đa giác đơn điệu.

Trong nội dung chính của luận văn, chúng tôi trình bày chi tiết thêm các kết quả [5] thông qua bài toán, trình tự các thủ tục con tìm đ-ờng đi ngắn nhất giữa hai đỉnh trong đa giác đơn điệu sử dụng bao lồi làm định h-ớng.

Bài toán: Cho đa giác đơn điệu PQ tạo bởi hai đ-ờng gấp khúc đơn điệu P = < ap0, p1, ..., pn-1b > và Q = < aq0, q1, ..., qm-1b >.

Tìm đ-ờng đi ngắn nhất, Z , trong miền đa giác PQ nối hai đỉnh ab.

Một phần của tài liệu Bài toán tìm đường đi ngắn nhất giữa hai đỉnh trong đa giác đơn điệu (Trang 29 - 32)