3.3.TÍNH HIỆU QUẢ
Với thuật toán cải tiến về mặt trực quan ta có thể nhìn thấy sự giảm thiểu các đỉnh của đồ thị trọng số rất nhiều, từ đó giảm số lần duyệt đồ thị rất nhiều. Lợi ích
được thấy ở cả thời gian và không gian đỉnh đồ thị được xét. Điều này có ý nghĩa rất lớn với các bài toán phức tạp, các bài toán được tích hợp từ nhiều hệ ôtômat ghép lại.
- Tính đúng đắn của thuật toán cải tiến:
Như đã phân tích ở trên khi gộp các cung liên tiếp có độ dài bằng 1 như vậy, câu hỏi đặt ra đồ thị xây dựng còn đúng để chứng minh công thức LDI hay không?
Ta nhận thấy các cung gộp lại là các cung tuyến tính có độ dài bằng 1. Theo cách chia này thì giá, và trọng số của đường đi trong G cải tiến vẫn được tính bằng cách:
Nếu lấy p= v1v2...vm là đường đi trong G cải tiến:
l(p)= 1 1 ( , ) m i i i v v 1 ( ) ( ) ( , ) i m i i j i p v v v
Cách gộp này được thực hiện trên các cung là tuyến tính nên các công thức vẫn được đảm bảo. Khi điều kiện giá l p( )B ta vẫn phải xét các trường hợp 1, và 2 xảy ra để đảm bảo không bỏ sót bất kì một trường hợp nào: ( )p M thuật toán quay lui hay gặp trường hợp ( )p Mthì dừng lại thuật toán.
Đường đi p của đồ thị cải tiến gọi là thoả mãn LDI Al p( ) B ( )p M. Như vậy ôtômat A thoả LDI nếu mọi mô hình nguyên của ôtômat A thoả LDI, hay nếu có một mô hình nguyên không thoả LDI thì ôtômat A không thoả LDI. Đồ thị G cải tiến được xây dựng là tương thích với RG và ôtômat A nên, nếu tồn tại đường đi p không thỏa mãn LDI thì ôtômat A cũng không thoả LDI. Như vậy việc kiểm chứng ôtômat A thoả LDI tương đương với kiểm chứng công thức này với đồ thị G cải tiến. Từ đó ta rút ra kết luận:
Định lý: Bài toán kiểm chứng tính thoả công thức LDI đối với lớp mô hình MI(A) là tương đương với bài toán kiểm chứng tính thoả công thức LDI đối với tập đường đi P(G)(G- đồ thị được cải tiến). Tức MI( )A thoả LDI P(G) thoả LDI.
Từ đó bài toán kiểm chứng tính thoả của A tương đương bài toán kiểm chứng tính thoả của mọi đường đi G cải tiến với LDI.
- Đánh giá độ phức tạp thuật toán:
Đầu vào: đồ thị trọng số đạt được nguyên n đỉnh (n cặp (l, u)) Thuật toán chưa cải tiến đồ thị trọng số LDI:
Số đỉnh chuyển từ đồ thị trọng số sang đồ thị phục vụ LDI là O(n2) và độ phức tạp duyệt thuật toán là O(2nxn)
Với thuật toán cải tiến đồ thị trọng số LDI:
Số đỉnh đạt tối thiểu là khi tại mọi cung của đồ thị nguyên có u = l độ phức tạp thuật toán đạt hiệu quả tốt nhất
Đỉnh của đồ thị phục vụ kiểm chứng LDI là: giữ nguyên n đỉnh độ phức tạp của thuật toán quay lui áp dụng cho trường hợp này
+ Đạt tốt khi duyệt n đỉnh là: o(2n)
+ Xấu khi duyệt n đỉnh mà trong trường hợp thứ 2 thuật toán xảy ra lúc đó ta phải chia lại n đỉnh thành nxn đỉnh con độ phức tạp thuật toán O(2n x n)
- Trường hợp xấu khi toàn bộ các cạnh có l < u:
+ Khi đó thực hiện chuyển đồ thị trọng số thành đồ thị trọng số LDI sẽ có
(u – l + 1) x n đỉnh, số đỉnh đạt: O(n). Thuật toán quay lui đạt hiệu quả duyệt số đỉnh có cấp O(n) là O(2n)
+ Thuật toán sẽ rơi vào trường hợp xấu là khi đó rơi vào trạng thái duyệt của đồ thị với trường hợp 1 của thuật cải tiến L(P) > B. Khi đó tại mỗi cạnh (l, u) ta phải duyệt 1 + (u-l+1 ) đỉnh nữa chính là thuật toán cũ và số đỉnh cần phải duyệt lên: n x n đỉnh độ phức tạp duyệt là: O(2nxn)
- Trường hợp xấu nhất vẫn là l = 0 khi đó xảy ra trường hợp chạy của thuật toán cũ.
Như vậy ta cũng thấy được thuật toán cải tiến số đỉnh giảm đáng kể điều này ảnh hưởng tới thời gian duyệt đồ thị rất nhiều, và xấu nhất nó mới quay trở về trường hợp thuật toán trước cải tiến.
3.4.KẾT QUẢ THỬ NGHIỆM
Trong phần này luận văn minh hoạ thuật toán kiểm chứng LDI bằng thuật toán trước và thuật toán cải tiến đối với hệ chắn tàu đã được mô tả trong hình 1-5, hình 1-4, hình 1-6.
Với hệ số a, b, c lấy ngẫu nhiên xét ôt ôtômat đạt được trong hình 1-6 gồm 2 đồng hồ x, y , 8 trạng thái, 11 phép chuyển được minh họa.
0 0
D C Dn
Hay chính là D 0 ( ,C MD)( ,B Dn)0
Chương trình cài đặt trên ngôn ngữ lập trình PHP, một ngôn ngữ lập trình mã nguồn mở, rất mạnh, hoàn toàn miễn phí để viết mã:
Web server: Apache.
Đầu vào: tệp dữ liệu được mã hóa, sử dụng bộ giá trị (a,b,c) [1] để đánh giá kết quả đạt được so độ phức tạp trong trường hợp cụ thể. Do các bước xây dựng đồ thị RG
vẫn giữ nguyên nên ta chỉ so sánh thời gian kiểm chứng đồ thị phục vụ LDI chưa cải tiến và cải tiến.
- Thuật toán LDI(s): là thời gian kiểm chứng đồ thị G chưa cải tiến - Thuật toán New(s): là thời gian kiểm chứng đồ thị G cải tiến
Bảng kết quả được mô tả trong bảng 3-2. Từ kết quả bảng đã cho ta có thể thấy được với đồ thị LDI cải tiến thì thời gian phục vụ kiểm chứng, số đỉnh và số cung được giảm rất nhiều (điều này đã được chứng minh trong phần 3.3).
Biểu đồ hình 3-3 so sánh đường chạy thời gian trong 2 thuật toán cải tiến và chưa cải tiến. Qua đó ta thấy với thuật toán chưa cải tiến, đường chạy giá trị thời gian khá cao, cách xa thời gian được xác định với thuật toán đã cải tiến.