MỞ ĐẦU Ảnh hưởng của một thiết kế với một hệ thống phần mềm là hiệu quả hay nguy cơ có thể được dự đoán trước nhờ sự hỗ trợ của đánh giá hiệu năng dựa trên mô hình.. Trong đó, mỗi lớp mạ
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-
NGUYỄN THỊ MINH THÙY
MỘT SỐ KỸ THUẬT ĐÁNH GIÁ HIỆU NĂNG PHẦN MỀM
SỬ DỤNG PETRI NET VÀ THỬ NGHIỆM TRÊN CÔNG CỤ TIMENET
Chuyên ngành: Công nghệ thông tin
Trang 2LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi trong đó có sự giúp đỡ rất lớn của thầy hướng dẫn
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác
Trong luận văn, tôi có tham khảo đến một số tài liệu đã được liệt kê tại phần Tài liệu tham khảo ở cuối luận văn
Hà Nội, ngày tháng năm 2016
Tác giả
Nguyễn Thị Minh Thùy
Trang 3LỜI CẢM ƠN
Trước tiên, tôi xin chân thành cảm ơn PGS.TS Huỳnh Quyết Thắng đã
dành thời gian quý báu, tận tình hướng dẫn chỉ bảo, góp ý cho tôi trong suốt quá trình thực hiện luận văn tốt nghiệp
Tôi xin được cảm ơn sự giúp đỡ nhiệt tình của các thầy cô giáo viện Đào tạo sau đại học - Đại Học Bách Khoa Hà Nội Đặc biệt, tôi xin được bày tỏ lòng biết ơn sâu sắc tới các thầy cô giáo đã giảng dạy tôi trong quá trình học tập tại trường Các thầy đã tận tình giảng dạy, truyền đạt kiến thức, tạo tiền đề cho tôi hoàn thành luận văn
Cuối cùng, tôi xin chân thành cảm ơn các bạn bè, đồng nghiệp và nhất là gia đình tôi đã quan tâm và tạo mọi điều kiện tốt nhất, động viên, cổ vũ tôi trong suốt quá trình học tập và nghiên cứu để hoàn thành tốt luận văn tốt nghiệp này
Xin trân trọng cảm ơn!
Hà Nội, ngày tháng năm 2016
Tác giả
Nguyễn Thị Minh Thùy
Trang 4MỤC LỤC
LỜI CAM ĐOAN ii
LỜI CẢM ƠN iii
MỤC LỤC iv
DANH MỤC THUẬT NGỮ, VIẾT TẮT viii
DANH MỤC BẢNG ix
DANH MỤC HÌNH x
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ ĐÁNH GIÁ HIỆU NĂNG PHẦN MỀM VÀ PETRI NET 3
1.1 Tổng quan về đánh giá hiệu năng phần mềm 3
1.1.1 Hiệu năng phần mềm 3
1.1.2 Đánh giá hiệu năng phần mềm 3
1.1.3 Các kỹ thuật đánh giá hiệu năng phần mềm 4
1.1.3.1 Đo hiệu năng 4
1.1.3.2 Phân tích mô hình 4
1.1.3.3 Mô phỏng mô hình 5
1.1.3.3.1 Phương pháp sử dụng mạng hàng đợi 5
1.1.3.3.2 Phương pháp sử dụng chương trình máy tính được thiết kế đặc thù chỉ để mô phỏng cho một hệ thống 6
1.1.3.3.3 Phương pháp sử dụng mạng Petri 6
1.2 Tổng quan về mạng Petri 7
1.2.1 Mạng Petri (PN) 7
1.2.1.1 Định nghĩa 8
1.2.1.2 Một số khái niệm 9
Trang 51.2.1.2.1 Hình thái 9
1.2.1.2.2 Enable 9
1.2.1.2.3 Kích hoạt 9
1.2.1.2.4 Đồ thị đạt được 10
1.2.1.2.5 Cung cấm 11
1.2.1.3 Một số thuộc tính cơ bản của PN 11
1.2.1.3.1 Thuộc tính hành vi 11
1.2.1.3.2 Thuộc tính cấu trúc 12
1.2.1.4 Khái quát một số phương pháp phân tích PN 13
1.2.1.4.1 Phân tích tính đạt được 13
1.2.1.4.2 Ma trận liên thuộc và đẳng thức trạng thái 15
1.2.1.4.3 Mô phỏng 16
1.2.2 Mạng Petri ngẫu nhiên (SPN) 17
1.2.3 Mạng Petri ngẫu nhiên chung (GSPN) 18
1.2.3.1 Định nghĩa 18
1.2.3.2 Phân tích 19
1.2.3.2.1 Nền tảng lý thuyết 20
1.2.3.2.1.1 Biến ngẫu nhiên 20
1.2.3.2.1.2 Quá trình Markov 20
1.2.3.2.1.3 Chuỗi Markov thời gian tiếp diễn (CTMC) 21
1.2.3.2.1.4 Phương pháp Jensen 22
1.2.3.2.2 Loại bỏ trạng thái vô hình 24
1.2.3.2.3 Phương pháp phân tích ổn định 25
1.2.3.2.4 Phương pháp phân tích tức thời 25
1.2.3.2.5 Một số thông số hiệu năng 26
1.2.4 Mạng Petri ngẫu nhiên và xác định (DSPN) 27
1.2.4.1 Định nghĩa 27
1.2.4.2 Phân tích 28
1.2.4.2.1 Đồ thị đạt được rút gọn 29
1.2.4.2.2 DSPN và MRGP 30
1.2.4.2.3 Phương pháp phân tích ổn định 33
1.3 Kết luận chương 1 34
CHƯƠNG 2: CÔNG CỤ TIMENET 36
Trang 62.1 Tổng quan về TimeNET 36
2.2 Thành phần bên trong của TimeNET 37
2.2.1 Thành phần phân tích 37
2.2.1.1.1 Phân tích cấu trúc 37
2.2.1.1.2 Sinh đồ thị đạt được 38
2.2.1.1.3 Phân tích số học 39
2.2.1.2 Thành phần mô phỏng 41
2.3 Thành phần giao diện của TimeNET 42
2.3.1 Thành phần giao diện cơ bản 42
2.3.2 Thành phần đối tượng mạng với lớp mạng cụ thể 43
2.3.2.1 eDSPN 43
2.3.2.2 SCPN 45
2.4 Kiến trúc phần mềm 47
2.5 Kết luận chương 2 49
CHƯƠNG 3: SỬ DỤNG CÔNG CỤ TIMENET ĐÁNH GIÁ HIỆU NĂNG PHẦN MỀM 50
3.1 Bài toán 50
3.1.1 Đặt vấn đề 50
3.1.2 Mô tả hệ thống 51
3.2 Mô hình GSPN 52
3.2.1 Mô tả 52
3.2.2 Tham số 54
3.3 Mô hình DSPN 55
3.4 Một số thông số đo hiệu năng hệ thống 56
3.5 Kịch bản thử nghiệm 57
3.6 Đánh giá kết quả phân tích 57
3.6.1 Phân tích mô hình GSPN: 57
Trang 73.6.2 Phân tích mô hình DSPN 65
3.6.3 Kết luận: 65
3.7 Kết luận chương 3 66
KẾT LUẬN 67
TÀI LIỆU THAM KHẢO 68
Trang 8DANH MỤC THUẬT NGỮ, VIẾT TẮT
SPN Stochastic Petri net Mạng Petri ngẫu nhiên
GSPN Generallized stochastic Petri net Mạng Petri ngẫu nhiên chung DSPN Deterministic and stochastic Petri
net
Mạng Petri ngẫu nhiên và xác định
eDSPN Extend Deterministic and
stochastic Petri net
Mạng Petri ngẫu nhiên và xác định mở rộng
SCPN Coloured Stochastic Petri net Mạng Petri ngẫu nhiên có màu TPN Timed Petri Nets Mạng Petri thời gian
CTMC Continuous-Time Markov chains Chuỗi Markov thời gian tiếp diễn DTMC Discrete-time Markov chain Chuỗi Markov thời gian rời rạc EMC Embedded Markov chain Chuỗi Markov nhún
MRGP Markov regenerative process
(semi-regenerative process)
Quá trình Markov tái sinh
MRS Markov renewal sequence Chuỗi Markov làm mới
SMP Semi-Markov process Quá trình bán Markov
KPI Key Performance Indicator Chỉ số đánh giá hoạt động
Trang 9DANH MỤC BẢNG
Bảng 1: Thông tin tham số của timed transition trong GSPN 55
Bảng 2: Thông tin tham số của immediate transition trong GSPN 55
Bảng 3: Kết quả phân tích ổn định với GSPN với nCPUs:=1 58
Bảng 4: Kết quả phân tích ổn định với GSPN với nCPUs:=2 60
Bảng 5: Kết quả phân tích ổn định với GSPN với nCPUs:=3 61
Bảng 6: Kết quả phân tích ổn định với GSPN với nCPUs:=4 62
Bảng 7: Kết quả phân tích ổn định với GSPN với nCPUs:=5 62
Trang 10DANH MỤC HÌNH
Hình 1: Ví dụ về PN cơ bản 8
Hình 2: Phân bố token sau khi kích hoạt trong PN 10
Hình 3: Cung cấm 11
Hình 4: Cây đạt được/ đồ thị đạt được 15
Hình 5: Ví dụ về loại bỏ trạng thái vô hình 24
Hình 6: Ví dụ về DSPN và đồ thị đạt được tương ứng 28
Hình 7: Kết quả phân tích cấu trúc của mô hình GSPN trong bài toán ở Chương 3 38
Hình 8: Mục đối tượng của lớp mạng eDSPN 43
Hình 9: Các đối tượng trong lớp SCPN 45
Hình 10: Cấu trúc điều khiển của các thành phần trong TimeNET 48
Hình 11: Tổng quan về SSO 50
Hình 12: Mô hình GSPN 53
Hình 13: Mô hình DSPN 56
Hình 14: Đồ thị phân tích tức thời hiệu năng sử dụng CPU nCPUs:=1, delayRQ:=100 59
Hình 15: Đồ thị phân tích tức thời hiệu năng sử dụng CPU nCPUs:=2, delayRQ:=1 60
Hình 16: Đồ thị phân tích tức thời hiệu năng sử dụng CPU nCPUs:=3, delayRQ:=1 61
Hình 17: Đồ thị phân tích tức thời hiệu năng sử dụng CPU nCPUs:=4, delayRQ:=1 63
Hình 18: Đồ thị phân tích tức thời hiệu năng sử dụng CPU nCPUs:=5, delayRQ:=1 63
Hình 19: So sánh kết quả phân tích hai mô hình GSPN và DSPN với số nCPU lần lượt là 1 và 2, delayRQ:=1 64
Hình 20: So sánh kết quả phân tích hai mô hình GSPN và DSPN với số nCPU lần lượt là 3 và 4, delayRQ:=1 65
Trang 11MỞ ĐẦU
Ảnh hưởng của một thiết kế với một hệ thống phần mềm là hiệu quả hay nguy
cơ có thể được dự đoán trước nhờ sự hỗ trợ của đánh giá hiệu năng dựa trên mô hình
Có rất nhiều mô hình đã được đề xuất; ngày nay, Petri net và các biến thể của nó đã được chấp nhận như là một kỹ thuật hoàn thiện để mô tả và đánh giá hệ thống Trong
đó, mỗi lớp mạng sẽ phù hợp với mô hình cần đánh giá và với mục tiêu đánh giá hệ thống thời gian thực thì SPN là một trong các phương án tối ưu Với mục tiêu thử nghiệm đánh giá hệ thống SSO, tác giả lựa chọn tìm hiểu SPN và cụ thể là hai lớp mạng con của SPN: GSPN và DSPN
Thêm nữa, tính khả dụng của mô hình này còn phụ thuộc vào các công cụ phần mềm TimeNET là một công cụ đánh giá mô hình và hiệu năng cho mạng Petri ngẫu nhiên,
nó có khả năng mô hình các hệ thống phức tạp một cách đơn giản hơn để đánh giá được hiệu năng của hệ thống Đặc biệt công cụ này hỗ trợ cả hai lớp mạng GSPN và DSPN đã lựa chọn
Bởi vậy, tôi chọn đề tài “Một số kỹ thuật đánh giá hiệu năng phần mềm sử
dụng Petri net và thử nghiệm trên công cụ TimeNET” để nghiên cứu các kỹ thuật
đánh giá hiệu năng phần mềm Từ đó, sử dụng công cụ TimeNet để đưa đánh giá về các kỹ thuật đã nghiên cứu
1 Mục đích nghiên cứu
- Tìm hiểu tổng quan về đánh giá hiệu năng hệ thống
- Nghiên cứu tổng quan về Petri net
- Nghiên cứu một số mô hình và phương pháp phân tích mô hìnhđánh giá hiệu năng sử dụng Petri net:
Trang 12o Mô hình GSPN
o Mô hình DSPN
- Tìm hiểu về công cụ TimeNET
- Thử nghiệm phương pháp đánh giá hiệu năng trên công cụ TimeNET
- Đánh giá kết quả đạt được
2 Đối tượng và phạm vi nghiên cứu
Trong khuôn khổ luận văn thuộc loại nghiên cứu và ứng dụng, tác giả chỉ giới hạn nghiên cứu các vấn đề sau:
- Mô hình GSPN và phương pháp phân tích ổn định, tức thời
- Mô hình DSPN và phương pháp phân tích ổn định
- Tìm hiểu công cụ TimeNET
- Thử nghiệm đánh giá hiệu năng mô hình GSPN/DSPN trên công cụ TimeNET
Bố cục luận văn
Chương 1: Tổng quan về đánh giá hiệu năng phần mềm và Petri net
Chương này trình bày tổng quan về đánh giá hiệu năng phần mềm cũng như các kỹ thuật đánh giá tiêu biểu Đồng thời trình bày tổng quan các khái niệm, thuộc tính và phương pháp phân tích Petri net cũng như hai lớp GSPN và DSPN
Chương 2: Công cụ TimeNET Trình bày về thành phần bên trong cũng như
các thành phần giao diện và tham số cấu hình để thực hiện phân tích/mô phỏng với công cụ
Chương 3: Sử dụng công cụ TimeNET đánh giá hiệu năng phần mềm Trình
bày mô hình GSPN/DSPN cho hệ thống SSO và sử dụng công cụ TimeNET để thực hiện phân tích, đánh giá
Trang 13CHƯƠNG 1: TỔNG QUAN VỀ ĐÁNH GIÁ HIỆU NĂNG PHẦN
MỀM VÀ PETRI NET 1.1 Tổng quan về đánh giá hiệu năng phần mềm
1.1.1 Hiệu năng phần mềm
Hiệu năng nói chung là để thể hiện tình trạng của một hệ thống Nó thể hiện cho chất lượng cơ bản của hệ thống phần mềm, cụ thể là chất lượng dịch vụ mà hệ thống cung cấp
Thực tế cho thấy thường gặp vấn đề hiệu năng do lựa chọn kiến trúc phù hợp hơn là do lập trình không hiệu quả Việc phát hiện vấn đề hiệu năng trong quá trình phát triển, kiểm thử hoặc giai đoạn hoạt động yêu cầu chi phí cao, chậm tiến độ, giảm năng suất, ảnh hưởng đến hình ảnh tổ chức hoặc thậm chí thất bại dự án
1.1.2 Đánh giá hiệu năng phần mềm
Theo [9], đánh giá hiệu năng phần mềm là quá trình dự đoán (giai đoạn đầu của quá trình phát triển) hoặc đánh giá (giai đoạn cuối của quá trình phát triển) liệu một hệ thống phần mềm có thể đáp ứng yêu cầu hiệu năng đặt ra hay không và kết quả sẽ thể hiện trong quá trình triển khai sản phẩm phần mềm
Đánh giá hiệu năng phần mềm đòi hỏi một quá trình có hệ thống và toàn diện để thể hiện hành vi động của hệ thống phần mềm
Bước đầu tiên của đánh giá hiệu năng là đánh giá nguy cơ về hiệu năng, từ đó hiểu được nỗ lực cần dành cho hoạt động đánh giá hiệu năng Việc này có thể giảm thiểu nếu hệ thống được xem xét không quá quan trọng hoặc đã có những dự án tương tự triển khai thành công
Bước tiếp theo là tìm hiểu chức năng của hệ thống và thiết kế dựa trên mức trừu tượng thích hợp của hệ thống phần mềm Mức trừu tượng bao gồm yêu cầu phần mềm, kiến trúc, kỹ thuật và tài liệu thiết kế Đặc biệt, vì hiệu năng là thuộc tính thời gian thực của
Trang 14hệ thống phần mềm nên phân tích hiệu năng đòi hỏi mô tả phù hợp về hành vi thời gian thực của hệ thống Biểu đồ tương tác UML có khả năng mô tả yếu tố này
Tiếp theo cần thiết lập mục tiêu hiệu năng Mục tiêu cần thể hiện về mặt định lượng việc sử dụng tốt tài nguyên, thường là: thời gian phản hồi, thông lượng và sử dụng tài nguyên Thời gian phản hồi thường được nhận định là thời gian cần để hệ thống phản hồi một yêu cầu từ người dùng hoặc từ một hệ thống/sự kiện bên ngoài Thông lượng tương ứng với số lượng tiến trình yêu cầu trên một đơn vị thời gian Sử dụng tài nguyên là tài nguyên mà hệ thống dùng để phản hồi các yêu cầu
Cuối cùng là xây dựng và tham số hóa mô hình hiệu năng Phân tích các kết quả từ việc đánh giá mô hình hiệu năng, xác định hệ thống có đủ khả năng đáp ứng mục tiêu hiệu năng hay không Nếu không thì cần sửa đổi thiết kế hệ thống hoặc mục tiêu hiệu năng
1.1.3 Các kỹ thuật đánh giá hiệu năng phần mềm
Theo [10], có nhiều phương pháp đánh giá hiệu năng, nhưng có thể chia làm ba loại chính: phân tích mô hình, mô phỏng mô hình và đo hiệu năng
1.1.3.1 Đo hiệu năng
Đo hiệu năng là sử dụng công cụ đo để đo theo kịch bản sao cho giống với điều kiện thực tế Kỹ thuật này thường cho kết quả chính xác cao, tuy nhiên yêu cầu đầu tư quá lớn trước khi thu được kết quả hoạt động nên có thể rất lãng phí
1.1.3.2 Phân tích mô hình
Phân tích mô hình là sử dụng mô hình toán học để phân tích, tính toán hiệu năng của hệ thống Kỹ thuật này có thể xác định ngưỡng của hệ thống qua việc xác định mối tương quan giữa các yếu tố trước khi hệ thống tồn tại Tuy nhiên, việc mô tả đầy đủ các yếu tố đầu vào cho bài toán là cực kỳ khó khăn do vậy kết quả của phương pháp này còn nhiều hạn chế
Trang 15- Mô phỏng hệ thống: mô hình hoá cấu trúc và mô tả hành vi của hệ thống
- Phân tích, đánh giá hiệu năng trên mô hình mô phỏng hệ thống
Hiện nay có ba phương pháp đánh giá hiệu năng thông qua mô phỏng hệ thống như sau:
1.1.3.3.1 Phương pháp sử dụng mạng hàng đợi
Phương pháp này có nền tảng là lý thuyết xếp hàng và luật Little Do chi phí thấp, việc mô phỏng đơn giản, nó trở nên rất hữu dụng đối với các hệ thống không phức tạp, đòi hỏi độ chính xác của kết quả phân tích không cao Đối với các hệ thống phức tạp, do khả năng hạn chế trong việc biểu diễn các quan hệ tương tranh, đồng bộ cũng như các hoạt động nội tại của máy chủ nên phương pháp này không đáng tin cậy
Phương pháp này được giải quyết bởi nhiều gói thương mại như BEST/1, RESQ, QNAP, CSIM, và một loạt các công cụ như Tangram-II, JINQS, SHARPE, Java Modelling Tools, LQNS là công cụ phân tích ổn định Opedro là công cụ để tối ưu hiệu năng và độ tin cậy của mô hình, nó thể hiện trường hợp hiếm gặp của một khuôn khổ phức tạp dựa trên công cụ mã nguồn mở như OmNet++, Java Modelling Tools và APNN MAPQN Toolbox và rBm là hai ví dụ của công cụ xấp xỉ hành vi mạng hàng đợi dựa trên lập trình tuyến tính
Trang 161.1.3.3.2 Phương pháp sử dụng chương trình máy tính được thiết kế đặc thù chỉ để mô phỏng cho một hệ thống
Phương pháp này tuy cho kết quả với độ tin cậy và chính xác cao nhưng phải trả giá về sự đòi hỏi và chiếm dụng tài nguyên rất lớn, vì vậy phương pháp này thường ít được sử dụng trong đánh giá hiệu năng
1.1.3.3.3 Phương pháp sử dụng mạng Petri
Là phương pháp sử dụng mạng Petri (PN) để mô phỏng hệ thống, sau đó trên cơ
sở phân tích cây trạng thái để rút ra kết quả đánh giá hiệu năng cả về định tính và định lượng Đây được coi như một giải pháp dung hoà hai phương pháp trên, trong đó kết hợp khả năng mô phỏng phức tạp của phương pháp thứ hai với khả năng phân tích đơn giản, hiệu quả của phương pháp đầu Phương pháp dùng PN có thể áp dụng đối với các
hệ thống có hoạt động phức tạp với đầy đủ các mối quan hệ giữa các thành phần trong
hệ thống
Hiện nay có rất nhiều công cụ phân tích PN đã được phát triển với khả năng hỗ trợ nhiều nền tảng hệ điều hành cũng như các lớp PN khác nhau Có rất nhiều công cụ cho lớp mạng GSPN như GreatSPN2, SMART, PIPE2 TimeNET, Cosmos, ExSpect
và F-net hỗ trợ lớp mạng SPN MISS-RdP, CPN Tools và CPN-AMI là một số công cụ
hỗ trợ CPN Công cụ Oris và Romeo hỗ trợ TPN
Nhận xét: Trong ba kỹ thuật đánh giá hiệu năng, kỹ thuật đo hiệu năng đòi hỏi chi phí quá lớn, kết quả của kỹ thuật phân tích mô hình lại có nhiều hạn chế Bởi vậy,
kỹ thuật mô phỏng mô hình là một lựa chọn tất yếu Trong đó, PN là một phương pháp đang ngày càng phát triển nhờ ưu điểm là khả năng mô phỏng hệ thống phức tạp cũng như khả năng phân tích đơn giản
Trang 171.2 Tổng quan về mạng Petri
1.2.1 Mạng Petri (PN)
PN được giới thiệu vào năm 1962 bởi tiến sĩ Carl Adam Petri PN là một công
cụ mô hình hóa mạnh mẽ kết hợp lý thuyết toán học và đồ họa để thể hiện hành vi động của hệ thống và được ứng dụng trong rất nhiều lĩnh vực
Theo [6] và [12], PN là một loại đồ thị song hướng đặc biệt gồm ba thành phần chính là place, transition và cung có hướng
PLACE
Hình tròn thể hiện cho place
Place dùng để đại diện cho điều kiện hoặc trạng thái của hệ thống Một place có thể liên quan đến một giai đoạn trong hành vi của một thành phần cụ thể
TRANSITION
Hình chữ nhật thể hiện cho transition
Transition dùng để mô tả các sự kiện xảy ra trong hệ thống; các sự kiện này thường dẫn đến thay đổi trạng thái của hệ thống
TOKEN
Chấm đen thể hiện cho token
Token đặt tại place để nghiên cứu hành vi động của một mô hình PN
về trạng thái và sự thay đổi trạng thái
CUNG
Mũi tên thể hiện cho cung
Cung thể hiện mối quan hệ giữa điều kiện (place) với sự kiện (transition) Cung (có hướng) kết nối place và transition
Cung từ place đến transition được gọi là cung vào Điều này cho thấy
ở các trạng thái có thể xảy ra các sự kiện
Cung từ một transition đến một place được gọi là cung ra Điều này cho thấy các sự kiện gây ra sự biến đổi cục bộ
Một thể hiện đồ họa sẽ hữu dụng hơn để minh họa các khái niệm về PN Một đồ thị PN bao gồm hai loại nút là place và transition Một cung hướng từ một place tới
Trang 18transition thì là place vào của , được ký hiệu là Một cung hướng từ một transition đến một place thì là place ra của , được ký hiệu là Nếu ( ) , thì tồn tại cung hướng (song song) kết nối place đến transition (hoặc ngược lại) Trong thể hiện đồ họa, các cung song song kết nối hai nút được thể hiện bởi một cung đơn và có trọng số
Một place và một transition được gọi là vòng tự lặp nếu vừa là place vào
và ra của Một PN là thuần túy nếu nó không có vòng tự lặp Một PN thông thường thì tất cả các cung có trọng số là 1
là một hàm đầu ra định nghĩa các cung có hướng từ transition đến place;
là hình thái khởi tạo
Ví dụ: Xét PN trong Hình 1 có
{ ; { , };
, với i=2,3,4;
, với i=1,3,4;
Trang 19số của cung có hướng kết nối đến Cần lưu ý rằng, vì chỉ có thể kích hoạt các enable transition nên số token còn lại trong mỗi place luôn không âm
Trang 20Một transition không có place vào được gọi là transition nguồn; transition không
có place ra được gọi là transition chìm Transition nguồn được enable vô điều kiện; việc kích hoạt một transition chìm sẽ hủy token và không sinh token
Ví dụ với PN ở Hình 1, hình thái khởi tạo là , lúc này chỉ là enable Thực hiện kích hoạt được một hình thái mới gọi là Cách phân bố token mới thể hiện trong Hình 2 Lúc này có hai enable transition là và Nếu thực hiện kích hoạt thì hình thái mới sẽ là Nếu thực hiện kích hoạt thì hình thái mới sẽ là
Hình 2: Phân bố token sau khi kích hoạt trong PN
1.2.1.2.4 Đồ thị đạt được
Bắt đầu từ hình thái khởi tạo, ta có thể kích hoạt các transition để chuyển qua trạng thái khác Tiếp tục theo cách này, ta có thể ghi lại tất cả các trạng thái quan sát được và chỉ dừng lại khi không còn trạng thái nào là chưa được quan sát Từ đó thu được tập tất cả hình thái mà một mạng có thể thể hiện, được gọi là tập đạt được Hình thái khởi tạo khác nhau sẽ cho các tập đạt được khác nhau Bởi vậy một hình thái khởi tạo là một phần quan trọng khi định nghĩa mô hình
Trong quá trình chuyển trạng thái, qua mỗi trạng thái ta ghi lại được chuyển tiếp giữa các trạng thái, và có được đồ thị đạt được Đồ thị này có các nút là các hình thái
có thể đạt tới và các cung giữa các nút thể hiện cho chuỗi transition có thể chuyển mô hình từ hình thái này sang hình thái khác
Trang 211.2.1.2.5 Cung cấm
PN cổ điển không thể hiện được đặc tính ưu tiên của hệ thống động hướng sự kiện Bởi vậy cần định nghĩa một cung cấm để thể hiện yếu tố này Cung cấm kết nối một place vào với một transition thay đổi điều kiện enable của transition Với một cung cấm, một transition được enable nếu mỗi place vào (kết nối đến transition bởi một cung thường) chứa ít nhất số token bằng với trọng số của cung, và không có token nào trong mỗi place ra kết nối đến transition bởi cung cấm Xét ví dụ về cung cấm trong Hình 4, được enable nếu chứa một token, được enable nếu chứa một token và không có token nào Điều này cho phép ưu tiên hơn
Hình 3: Cung cấm
1.2.1.3 Một số thuộc tính cơ bản của PN
Theo [8], PN có hai loại thuộc tính phân biệt: thuộc tính phụ thuộc vào hình thái khởi tạo gọi là thuộc tính hành vi và thuộc tính không phụ thuộc vào hình thái khởi tạo gọi là thuộc tính cấu trúc Dưới đây là một số thuộc tính đáng chú ý của PN được chọn lọc từ [8]
1.2.1.3.1 Thuộc tính hành vi
- Tính sống: Một PN là sống nếu dù đạt tới hình thái nào thì nó vẫn có thể kích hoạt bất cứ transition nào Thuộc tính này tương đương với không bế tắc
Trang 22- Tính giới hạn: Một PN là giới hạn nếu số token trong mỗi place không vượt quá một số k hữu hạn ở bất cứ hình thái nào đạt được từ , và được gọi là k-giới hạn
- Tính sống về cấu trúc: Một PN là sống về cấu trúc nếu tồn tại một hình thái khởi tạo để mạng là sống
- Tính bảo toàn: Một PN là bảo toàn nếu tồn tại một số nguyên dương với mọi place có tổng số token , với mọi hình thái trong tập đạt được
- Tính nhất quán: Một PN là nhất quán nếu tồn tại một hình thái và một chuỗi kích hoạt từ trở lại với mỗi transition xảy ra ít nhất một lần trong
- Với N là một mạng và A là ma trận liên thuộc của mạng đó (chi tiết về ma trận liên thuộc được trình bày ở phần 1.2.1.4.2.) Một ma trận x thoản mãn
phương trình với được gọi là P-invariant của N P-invariant
Trang 23xác định một tập các place có tổng số token phân bố trong các place luôn không đổi với tất cả các hình thái trong tập đạt được
Nếu M là hình thái đạt được từ , x là một P-invariant thì
Ví dụ: Với PN trong Hình 1, là một P-invariant
- Với N là một mạng và A là ma trận liên thuộc của nó Ma trận u thỏa mãn
phương trình được gọi là T-invariant của N
Mối quan hệ giữa invariant và các thuộc tính:
- Một PN là bảo toàn nếu và chỉ nếu nó được phủ bởi các P-invariant, nghĩa là với mọi tồn tại một P-invariant mà
- Một PN bảo toàn là giới hạn về cấu trúc Do vậy, PN được phủ bởi các invariant là giới hạn về cấu trúc
P Một PN là nhất quán nếu và chỉ nếu nó được phủ bởi các TP invariant, nghĩa
là với mọi tồn tại một T-invariant mà
- Một PN sống thì nhất quán Do vậy một PN sống được phủ bởi T-invariant
- Một PN giới hạn về cấu trúc và sống thì vừa bảo toàn và nhất quán Do vậy, một PN giới hạn về cấu trúc và sống thì được phủ bởi các P-invariant và T-invariant
1.2.1.4 Khái quát một số phương pháp phân tích PN
Việc phân tích các hệ thống đã được mô hình hóa là hết sức cần thiết, nó sẽ cung cấp thêm hiểu biết về hành vi của hệ thống Theo [6], có ba hướng để phân tích
PN cụ thể như sau
1.2.1.4.1 Phân tích tính đạt được
Phương pháp này thực hiện thông qua việc xây dựng cây đạt được Với một PN
N, hình thái khởi tạo , ta có thể có số hình thái mới bằng số lượng của enable transition Từ mỗi hình thái mới ta lại có thể tiếp tục tạo thêm nhiều hình thái khác Lặp lại hoạt động này sẽ thu được một cây đại diện cho các hình thái Các nút thể hiện
Trang 24cho các hình thái được tạo từ và hình thái kế thừa của nó, mỗi cung thể hiện việc chuyển từ hình thái này sang hình thái khác Cây này sẽ trở nên vô hạn nếu không giới hạn cho mạng Để cây là hữu hạn, được coi là vô hạn, với mỗi số nguyên
Cây này có thể được tạo bởi thuật toán sau:
(1) Gán hình thái khởi tạo là gốc và gắn cho nó thẻ “mới”
(2) Mới mỗi hình thái mới:
(2.1) Nếu giống với hình thái đã xuất hiện trong cây, gắn cho thẻ “cũ” và tiếp tục chuyển sang hình thái khác
(2.2) Nếu không có enable transition nào thì gắn cho thẻ “cụt” và chuyển sang hình thái khác
(2.3) Nếu tồn tại enable transition thì thực hiện các bước sau với từng enable transition:
(2.3.1) Thực hiện kích hoạt transition trong hình thái , thu được
(2.3.2) Trên đường đi từ gốc đến nếu tồn tại một hình thái có với mọi và thì là có thể bao phủ Lúc này thay bằng với mọi thỏa mãn
(2.3.3) Coi là một nút, vẽ một cung với nhãn đi từ đến và gắn cho thẻ
“mới”
Kết hợp các nút tương tự trong kết quả sẽ thu được đồ thị đạt được
Ví dụ với PN như Hình 1, tất cả các hình thái có thể có là: , , , , và Từ đó thu được cây đạt được và đồ thị đạt được như Hình 5
Trang 25Hình 4: Cây đạt được/ đồ thị đạt được
1.2.1.4.2 Ma trận liên thuộc và đẳng thức trạng thái
Một PN có transition và place, một ma trận liên thuộc là ma trận n×m của các số nguyên và giá trị của nó được cho bởi
Trong đó: ;
Dễ thấy rằng và thể hiện tương ứng cho số token đã loại, thêm và thay đổi tại place khi thực hiện kích hoạt transition là enable transition của hình thái nếu và chỉ nếu ( )
Khi chuyển thành ma trận, coi hình thái là một vec tơ cột m×1 Giá trị thứ j của thể hiện số token tại place ngay sau lần kích hoạt thứ k trong chuỗi kích hoạt Lần kích hoạt thứ k hay vec tơ điều khiển là một vec tơ cột n×1 của (n-1) số 0 và chỉ một giá trị khác 0, giá trị này là 1 và nằm ở vị trí thứ thể hiện transition thứ trong lần kích hoạt thứ k Vì hàng thứ của ma trận liên thuộc thể hiện sự thay đổi của hình thái do kích hoạt transition , ta có thể có đẳng thức trạng thái cho PN như sau:
Trang 26Với là ma trận chuyển vị của ma trận
Giả sử hình thái đích đạt được từ hình thái thông qua chuỗi kích hoạt { } Khi đó ta viết đẳng thức trạng thái cho và cộng chúng lại
)
1.2.1.4.3 Mô phỏng
Với một mô hình PN phức tạp thì mô phỏng là một cách để kiểm tra các thuộc tính của hệ thống Mô phỏng có thể phát hiện các đặc tính không mong muốn nhưng không thể chứng minh tính đúng đắn của mô hình trong trường hợp tổng quát Đây là một phương pháp thuận tiện và đơn giản nhưng cũng rất hiệu quả để nhận ra đặc tính mong muốn của một sự kiện hệ thống đơn lẻ Dù vậy, mô phỏng cũng có những hạn chế, trong thực tế mô phỏng mô hình phức tạp sẽ tốn thời gian thực thi Thuật toán được đưa ra như sau:
(1) Khởi tạo: quyết định hình thái khởi tạo và bộ tất cả các enable transition có thể trong hình thái;
(2) Nếu đạt tới số bước mô phỏng thiết lập sẵn hoặc tiêu chí dừng nhất định thì dừng lại Nếu chưa đạt tới tiêu chí dừng, trường hợp không có enable transition thì báo lại một hình thái bế tắc và dừng lại, nếu có enable transition thì quay lại bước (1)
Trang 27(3) Kích hoạt ngẫu nhiên một transition Loại ở place vào của nó số token bằng với
số cung từ place này đến transition Đồng thời thêm vào mỗi place ra của nó số token bằng với số cung đi từ transition đến place
(4) Loại enable transition vừa thay đổi trong hình thái mới khỏi bộ enable transition bằng cách kiểm tra transition ra của place vào dùng trong bước (3) Nếu transition ra của place ra trong bước (3) trở thành enable transition thì thêm chúng vào bộ enable transition và chuyển sang bước (2)
1.2.2 Mạng Petri ngẫu nhiên (SPN)
Việc mô tả hành vi của hệ thống theo thời gian là hết sức quan trọng Hầu hết các hệ thống hiện nay có thời gian rời rạc và để thể hiện tất cả các khả năng xảy ra giữa các sự kiện rời rạc là hết sức khó khăn do có rất nhiều sự kiện có thể xảy ra giữa hai sự kiện rời rạc Trong khi một PN truyền thống không bao gồm thời gian trong mô hình
Để giải quyết vấn đề này, SPN được đề xuất để mô hình hóa hệ thống với mục đích đánh giá hiệu năng
Theo [12], SPN là một dạng của PN, với transition được kích hoạt sau độ trễ phân phối xác định bởi một biến ngẫu nhiên Định nghĩa chuẩn về SPN ngụ ý rằng tất
cả thời gian hoạt động được phân bố theo cấp số mũ và do đó mô hình có khả năng mô hình hóa giới hạn trong hệ thống Markov Thông thường một SPN gồm hai số hạng trong đó:
: là mạng Petri cơ sở
: là tỉ lệ kích hoạt λ của transition Tỉ lệ kích hoạt có thể là một biến ngẫu nhiên, cũng
có thể là một hàm λ(M) của hình thái hiện tại,… Tỉ lệ kích hoạt là nghịch đảo của thời gian kích hoạt
Enable transition với độ trễ kích hoạt nhỏ nhất sẽ được kích hoạt và làm thay đổi hình thái của SPN Khi một transition không được phép do tranh chấp trong quá
Trang 28trình kích hoạt thì thời gian dừng lại, quá trình giảm thời gian được phục hồi khi transition được phép trở lại Khi thời gian đạt tới không thì transition được kích hoạt
1.2.3 Mạng Petri ngẫu nhiên chung (GSPN)
1.2.3.1 Định nghĩa
GSPN là mở rộng của SPN để giải quyết những bài toán không gian trạng thái với nền tảng đều dựa trên chuỗi Markov Nó là một trong những lớp SPN phổ biến nhất Theo [3] và [7], có thể định nghĩa GSPN là một tập gồm 4 số hạng , trong đó :
là một hình nhữ nhật rỗng Khi đã enable, immediate transition được kích hoạt trong thời gian là không Timed transition được kích hoạt sau một thời gian phân bố mũ ngẫu nhiên Có thể enable nhiều hơn một transition tại một hình thái cụ thể M Nếu tập các enable transition bao gồm immediate transition thì chỉ immediate transition được enable và sẽ không timed transition nào được kích hoạt Nói cách khác, trong GSPN việc kích hoạt các immediate transition có mức ưu tiên cao hơn timed transition Một immediate transition chỉ có thể enable nếu không có transition nào có mức ưu tiên cao hơn được enable Tuy nhiên, mỗi timed transition có ngữ nghĩa kích hoạt riêng, nó có thể là máy chủ đơn hoặc máy chủ vô hạn hoặc nhiều máy chủ Với máy chủ đơn, một
Trang 29hành động được thực hiện tuần tự, trong khi với máy chủ vô hạn thì thực thi song song tập vô hạn các tiến trình
Không gian trạng thái của GSPN bao gồm hai loại hình thái Vì immediate transition được kích hoạt trong thời gian là không, lúc này hình thái có thời gian lưu trú
là không Các hình thái như vậy gọi là hình thái vô hình vì người ta không thể nhìn thấy nó Hình thái mà chỉ timed transition được enable sẽ được nhìn thấy và nó được gọi là hình thái hữu hình Hình thái vô hình không ảnh hưởng đến thống kê hiệu năng của GSPN vì thời gian tạm trú của nó là không, bởi vậy chúng thường bị loại trong hoặc sau khi tạo không gian trạng thái
Đánh giá tĩnh hay đánh giá ổn định đánh giá hiệu năng sau khi đã trải qua tất cả các ảnh hưởng tức thời ban đầu và đạt tới chế độ hoạt động cân bằng Đánh giá ổn định có thể dùng để trả lời câu hỏi điển hình như: băng thông tối đa của một kênh truyền thông
là bao nhiêu? Hoặc: số lượng các bộ phận mong muốn trong bộ đệm của hệ thống sản xuất là bao nhiêu?
Theo [7], việc phân tích GSPN có thể chia thành bốn bước cơ bản sau:
Trang 30- Xây dựng đồ thị đạt được chứa các hình thái của tập đạt được là các nút và một vài thông tin rời rạc gắn vào các cung, do đó tất cả các hình thái sẽ liên quan đến nhau (xây dựng không gian trạng thái)
- Loại các hình thái vô hình và các transition liên quan
- Phân tích trạng thái ổn định/ trạng thái tức thời
- Một số thông số hiệu năng đo được như số token trung bình tại mỗi place và thông lượng của mỗi timed transition
1.2.3.2.1 Nền tảng lý thuyết
1.2.3.2.1.1 Biến ngẫu nhiên
Một biến được gọi là ngẫu nhiên (ký hiệu: ) nếu ta không thể chắc chắn giá trị của nó Vì không biết chắc giá trị, nên ta nói nó sẽ có một giá trị x với xác suất ,
Trong đó, x là một số thực và với mọi giá trị của x Hàm phân phối tích lũy của một biến ngẫu nhiên là:
Nếu tập giá trị không đếm được thì nó là một biến liên tục ngẫu nhiên Với có thể nhỏ hơn hoặc bằng một giá trị nhất định „a‟, hàm phân phối tích lũy trở thành:
Trang 31Hành vi của một hệ thống thường đặc trưng bởi tất cả các trạng thái trong hệ thống và bằng cách mô tả hệ thống thay đổi như thế nào từ trạng thái này sang trạng thái khác Nói chung, hệ thống như vậy có thể mô tả bởi một quá trình ngẫu nhiên
Năm 1907, nhà toán học Markov mô tả một lớp của tiến trình rời rạc mà
,
Nói cách khác, quá trình sau thời gian trở đi được xác định bởi trạng thái hiện tại Đây là một tính chất của Markov Hàm ý của tính chất Markov là phân phối thời gian lưu trú ở bất cứ trạng thái nào không phụ thuộc vào thời gian trong trạng thái đó,
(1)
Điều kiện này đặt ra một hạn chế về phân phối thời gian cho một trạng thái
1.2.3.2.1.3 Chuỗi Markov thời gian tiếp diễn (CTMC)
Một CTMC là một quá trình với không gian trạng thái rời rạc và một trạng thái
có thể thay đổi bất cứ lúc nào Một quá trình ngẫu nhiên { } tạo thành một CTMC nếu với tất cả số nguyên và chuỗi bất kỳ ,
∑
Để hiểu cách tạo ma trận, đầu tiên cần xác định số hình thái trong đồ thị đạt được Ma trận là ma trận vuông, có bậc bằng với số hình thái đạt được Các giá trị trên đường
Trang 32chéo chính là tổng âm của các giá trị còn lại trên hàng đó, mỗi hàng của ma trận Q sẽ
có tổng bằng không
∑ Bước quan trọng nhất trong phân tích chuỗi Markov là xác định thời gian dùng trong mỗi trạng thái là xác suất tìm kiếm chuỗi Markov ở trạng thái ở bước thời gian thứ m Nếu ta có CTMC có không thay đổi khi , phân phối được cho là tĩnh hay đạt đến trạng thái ổn định Điều này chỉ xảy ra với một CTMC với
ma trận cường độ chuyển Q
Trong một CTMC hữu hạn, đồng nhất, không thể rút gọn, các xác xuất giới hạn { } luôn tồn tại và là độc lập với xác suất phân bố ban đầu:
Trang 33Trong đó { } là vec tơ xác suất trạng thái của DTMC ở bước thứ , với Lưu ý rằng vec tơ này có thể tính toán bởi
Các giới hạn lỗi thông thường dựa trên việc loại bỏ phần bên phải của phân phối Poisson Phần loại bỏ tại mỗi phần tử được giới hạn bởi , trong đó dễ dàng tính được bằng:
∑
∑
Biểu thức này có thể dùng trước khi tính toán để giới hạn số lượng giá trị cần để có được dung sai tuyệt đối
Trong phương pháp đo tức thời cho giá trị lớn, vec tơ xác suất trạng thái được tính thực tế bằng công thức:
∑
Hằng số được gọi là “điểm cắt phía trái”
Với phương pháp đo tích lũy, nếu tích phân biểu thức (2) ta thu được
∑
∑
Trang 34
Trong đó ∫ Nếu là xác suất trạng thái tích lũy trong trạng thái tại thời điểm , vec tơ hàng được gọi là vec tơ xác suất trạng thái tích lũy Nếu cắt bớt tổng trong sau k giá trị, ta thu được
∑
[ ∑
( ) ∑
1.2.3.2.2 Loại bỏ trạng thái vô hình
Việc tiết kiệm không gian trạng thái có thể thực hiện trong quá trình thăm dò không gian trạng thái Do trạng thái vô hình sẽ ít hoặc không được sử dụng trong bất
cứ quá trình phân tích nào Bởi vậy cần loại bỏ các trạng thái vô hình trước khi thực hiện phân tích Tỉ lệ chuyển của trạng thái vô hình giữa hai trạng thái hữu hình có thể kết hợp thành một tỉ lệ chuyển hiệu quả như Hình 5 Một lợi ích nữa của việc loại trạng thái vô hình là giảm nỗ lực giải quyết bài toán trạng thái ổn định của chuỗi Markov
Hình 5: Ví dụ về loại bỏ trạng thái vô hình
Trang 35Tỉ lệ chuyển giữa các trạng thái hữu hình được xác định như sau: một trạng thái hữu hình s đến trạng thái s‟ bất kỳ có tỉ lệ chuyển là r, một trạng thái vô hình s đến trạng thái s‟ bất kỳ có tỉ lệ chuyển là tích của tỉ lệ chuyển của trạng thái đó với xác suất
đi từ trạng thái s tới s‟
1.2.3.2.3 Phương pháp phân tích ổn định
Theo [7], GSPN mô tả một quá trình Markov và phân tích của GSPN có thể thực hiện thông qua phân tích cơ bản quá trình Markov Mỗi trạng thái trong đồ thị đạt được có thể dược coi là một trạng thái tương ứng của chuỗi Markov Tỉ lệ chuyển của mỗi transition , gắn mỗi cung vào đánh dấu của đồ thị đạt được các cung trong chuỗi Markov tương ứng
Sau khi xác định đồ thị đạt được thì cần tính toán phân phối ổn định Như đã trình bày ở phần 1.2.3.2.1.3., việc tính toán phân phối ổn định này liên quan đến giải quyết
hệ phương trình:
{∑
Có một số kỹ thuật để giải phương trình dạng này như phương pháp khử Gaussian hay phương pháp SOR
1.2.3.2.4 Phương pháp phân tích tức thời
Theo [1], nếu là xác suất CTMC trong trạng thái tại thời điểm , vec tơ hàng được gọi là “vec tơ xác suất trạng thái” của CTMC Phương trình mô tả hành vi của vec tơ này là một hàm của (chi tiết về phương pháp được trình bày trong phần 1.2.3.2.1.4):
̇
Trang 36Nếu là xác suất trạng thái tích lũy trong trạng thái tại thời điểm , vec tơ hàng được gọi là “vec tơ xác suất trạng thái tích lũy” Phương trình mô tả hành vi của vec tơ này (chi tiết về phương pháp được trình bày trong phần 1.2.3.2.1.4):
̇
1.2.3.2.5 Một số thông số hiệu năng
Theo [5] và [6], phân tích của mô hình SPN thường tập trung vào tính toán hiệu năng tổng hợp hơn là xác xuất của hình thái riêng lẻ Một số thông số phổ biến dễ dàng thu dược từ phân tích ổn định như sau:
- Xác suất của một sự kiện xác định tại một place có thể tính bằng tổng xác suất của tất cả các hình thái thỏa mãn điều kiện xuất hiện sự kiện Ví dụ xác suất ổn định của sự kiện A được xác định với điều kiện nó đúng với hình thái
- Số lượng token trung bình tại một place là tổng của tích xác suất tại place
có n token với số token với là tập hợp con của tập đạt được:
∑
- Độ trễ trung bình của một token tính bằng công thức Litte:
Trong đó:
là số token trung bình trong quá trình di chuyển trong mạng con
là tỉ lệ vào hoặc ra trung bình của token vào hoặc ra một mạng con
Trang 371.2.4 Mạng Petri ngẫu nhiên và xác định (DSPN)
Trong SPN, thời gian kích hoạt có phân phối mũ, từ đó có CTMC Để tăng sức mạnh của mô hình, một số mô hình non-Markov đã được định nghĩa, trong đó thời gian kích hoạt của một transition là xác định DSPN là một trường hợp như vậy, mô hình này cho phép kích hoạt tối đa một transition có thời gian kích hoạt xác định trong mỗi hình thái Do vậy, DSPN rất phù hợp để thể hiện các đặc tính có độ trễ xác định của hệ thống như timeout, độ trễ lan truyền
1.2.4.1 Định nghĩa
Ký hiệu lần lượt là immediate transition, exponential transition và deterministic transition; chúng được biểu diễn lần lượt bởi một thanh mỏng, một hình chữ nhật rỗng và một hình chữ nhật đặc
Theo [4], một DSPN là một tập các số hạng , trong đó:
là PN cơ sở;
là guard function , nó có hai giá trị là true/ false (giá trị mặc định là true); : là thời gian kích hoạt trung bình cho timed transition , ;
: là trọng số của immediate transition , ;
: là chính sách thực thi dùng cho transition khi kích hoạt transition ,
Một timed transition t được cho là độc quyền trong một hình thái m nếu t là
transition duy nhất enable trong m Khi một timed transition t enable cùng với một
transition t‟ khác thì t được gọi là cạnh tranh trong hình thái m nếu việc kích hoạt t‟ khiến t disable Nếu việc kích hoạt t‟ không khiến t disable, thì t được gọi là đồng thời
trong hình thái m Lưu ý là trong DSPN thì timed transition bao gồm deterministic transition và exponential transition
Trang 38Hình 6: Ví dụ về DSPN và đồ thị đạt được tương ứng
Trong đồ thị đạt được Hình 6(b) và 6(d), cung nét liền thể hiện trạng thái đạt được bởi deterministic transition, cung nét đứt thể hiện trạng thái đạt được bởi exponential transition Transition thể hiện viện nhận thực thi một công việc của một trong hai khách Transition cần một thời gian phân phối mũ để kích hoạt và tv cần thời gian xác định Hình thái m1 và m2 trong Hình 6(b) là hình thái mà deterministic transition
và exponential transition enable đồng thời Hình thái m3 của Hình 6(b) là hình thái tại
đó một deterministic transition và một exponential transition được enable một cách
cạnh tranh Với đồ thị trong Hình 6(c), khi exponential transition te kích hoạt, deterministic transition td bị disable Bất cứ khi nào kích hoạt te, một token sẽ quay trở lại place p5 khiến td lại enable
1.2.4.2 Phân tích
Theo [4], do giới hạn việc phân tích chỉ có nhiều nhất một deterministic transition được enable trong bất cứ hình thái nào nên tồn tại một phương pháp phân tích để xử lý DSPN ở trạng thái ổn định
Các bước phân tích DSPN cũng tương tự như GSPN:
Trang 39có thể là hữu hình hoặc vô hình Xác suất để gặp một hình thái hữu hình sau khi gặp số hình thái vô hình bất kỳ (kể cả 0) với hình thái hiện tại là hình thái vô hình
là của hệ phương trình tuyến tính
Trong đó là ma trận xác suất chuyển đổi bậc một từ hình thái vô hình tới hình thái vô hình (hữu hình) trong đồ thị đạt được Tất cả chuỗi hình thái vô hình giữa
và được thay thế bởi xác suất rẽ nhánh theo cách sau:
(1) Nếu t là một exponential transition với tỉ lệ kích hoạt , mỗi hình thái hữu hình kế thừa kết nối trực tiếp từ với tỉ lệ kích hoạt
(2) Nếu t là một deterministic transition với thời gian kích hoạt , mỗi hình thái hữu hình kế thừa là kết nối trực tiếp từ với thời gian kích hoạt Xác suất rẽ nhánh trong trường hợp này được giữ trong ma trận xác suất rẽ nhánh Khi một hình thái hữu hình đạt tới trực tiếp từ thì được giải thích
kỹ hơn trong (4)