Chương 3 KIỂM CHỨNG TỰ ĐỘNG CÁC PTA
3.4 Công cụ kiểm chứng mô hình PRISM
PRISM là một bộ công cụ kiểm tra mô hình xác suất, công cụđể mô hình hóa và phân tích hệ thống thể hiện hành vi ngẫu nhiên hoặc xác suất chính quy, đã được sử dụng để phân tích các hệ thống từ nhiều lĩnh vực ứng dụng khác nhau, bao gồm cả giao thức truyền thông đa phương tiện, thuật toán phân phối ngẫu nhiên, các giao thức bảo mật, các hệ thống sinh học và nhiều loại khác.
PRISM có thể xây dựng và phân tích các dạng của mô hình xác suất, bao gồm DTMC, CTMC, MDP, và PTA.
Ngoài ra, PRISM có thể bổ sung các phần mở rộng để kiểm chứng các mô hình này với bộ đặc tính chi phí / lợi ích, được gọi chung là giải thưởng (từ khóa sử dụng trong PRISM là reward – giải thưởng).
Các mô hình được mô tả bằng ngôn ngữ PRISM, là ngôn ngữ dựa trên trạng thái đơn giản. PRISM cung cấp hỗ trợ cho việc phân tích tự động của một loạt các đặc tính định lượng của các mô hình này, ví dụ "Xác suất của một thất bại gây ra hệ thống để đóng cửa trong vòng 4 giờ là gì?", "Xác suất xảy ra trường hợp xấu nhất của giao thức bị ngắt do lỗi, trên tất cả các cấu hình ban đầu có thể?", "Kích thước dự kiến của hàng đợi tin nhắn sau 30 phút là bao nhiêu?", hoặc"Dự kiến thời gian thực hiện và chấm dứt các thuật toán trong trường hợp xấu nhất? ".
Các ngôn ngữ được sử dụng để đặc tả thuộc tính kết hợp logic PCTL, CSL, LTL và PCTL*, cũng như mở rộng cho thông số kỹ thuật định lượng và các cấu trúc giải thưởng.
PRISM là sự kết hợp giữa cấu trúc dữ liệu mang tính biểu tượng và các thuật toán, dựa trên BDDs (Binary Dicision Diagram - Biểu đồ Quyết định nhị phân) và MTBDDs (Multi-Terminal Binary Dicision Diagram). Nó cũng bao gồm một cơ cấu mô phỏng các sự kiện rời rạc, cung cấp công cụ hỗ trợ cho việc kiểm tra mô hình thống kê và ước lượng gần đúng, và triển khai các kỹ thuật phân tích khác nhau, chẳng hạn như định lượng tính trừu tượng và tính giảm đối xứng.
PRISM là bộ công cụ miễn phí mã nguồn mở, lưu hành theo giấy phép General Public License (GPL).
3.4.2 Sử dụng PRISM kiểm chứng các tính chất củaPTA
Từ phiên bản 4.0 (Tháng 5/2011), công cụ PRISM bắt đầu hỗ trợ kiểm chứng mô hình PTA, bên cạnh các mô hình DTMC, CTMC, MDP đã có
trước đó. Tính đến tháng 9/2016, phiên bản PRISM mới nhất là 4.3. Các phương pháp kiểm chứng các tính chất của PTA được cài đặt trong PRISM từ phiên bản 4.0 tới nay là phương pháp đồng hồ số, Phương pháp đạt được lùi và phương pháp trừu tượng hóa với trò chơi ngẫu nhiên.
Mô hình hóa PTA
PRISM sử dụng ngôn ngữ mô hình hóa đồng nhất cho tất cả các mô hình xác suất được hỗ trợ, gồm cả PTA. Để hỗ trợ PTA, PRISM từ phiên bản 4.0 trở đi đã bổ sung loại dữ liệu mới là clock cho các biến đồng hồ. Các biến đồng hồ có thể xuất hiện trong các biểu thức điều kiện, trong các vế trái của lệnh, và có thể được reset như các biến thông thường khác. Từ khóa mới invariant được bổ sung để biểu diễn càng ràng buộc thời gian tại trạng thái. Hình [] là ví dụ đoạn mã PRISM dùng để biểu diễn PTA tương ứng, trong đó có chứa cấu trúc thưởng với nhãn là energy, được sử dụng để thể hiện tốc độ tích lũy giải thưởng là 2.5 tại trạng thái s=0.
Các kĩ thuật kiểm chứng trong PRISM
PRISM phân tích hai lớp tính chất chính của PTA: (1) Xác suất lớn nhất, nhỏ nhất để đạt tới một mục tiêu nào đó, có thể kèm ràng buộc thời gian (ví dụ: “xác suất lớn nhất của túi khí không bung trong vòng 0.02 giây”); và (2) Giá trị kỳ vọng lớn nhất/nhỏ nhất của giải thưởng tích lũy được khi đạt tới một mục tiêu nào đó (ví dụ: “Kỳ vọng thời gian tối đa để giao thức hoàn tất”). Hiện nay các phương pháp kiểm chứng đồng hồ số, Phương pháp đạt được lùi và phương pháp trò chơi ngẫu nhiên đã được cài đặt, trong đó phương thức trò chơi ngẫu nhiên là cấu hình mặc định của PRISM cho các mô hình PTA.