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

Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán

129 621 1

Đ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 129
Dung lượng 1,34 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Danh mục từ viết tắtBDD : Binary Decision Diagram Sơ đồ biểu diễn nhịphân CTL : Computational Tree Logic Lôgic cây tính toán DC : Duration Calculus Lôgic khoảng FTA : Finitary Timed Auto

Trang 1

Phạm Hồng Thái

một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực

bằng thuật toán

luận án tiến sĩ toán học

Hà Nội - 2005

Trang 2

đại học quốc gia hà nội trường đại học công nghệ

luận án tiến sĩ toán học

người hướng dẫn khoa học

1 : TS Đặng Văn Hưng

2 : PGS TS Đinh Mạnh Tuờng

Hà Nội - 2005

Trang 3

Lời cam đoan iv

2.1 Mô hình thời gian 14

2.1.1 Thể hiện đồng hồ và ràng buộc thời gian 14

vi

Trang 4

2.1.2 Kỹ thuật phân vùng đồng hồ 15

2.2 Ôtômat thời gian 17

2.2.1 Cú pháp và ngữ nghĩa 17

2.2.2 Đường chạy và dáng điệu của ôtômat thời gian 19

2.2.3 Hợp song song của các ôtômat thời gian 20

2.3 Lôgic khoảng 21

2.3.1 Mô hình trong Lôgic khoảng 22

2.3.2 Công thức khoảng và bài toán kiểm chứng mô hình 25

3 Kiểm chứng mô hình với kỹ thuật qui hoạch tuyến tính 27 3.1 Biểu thức chính quy thời gian và bài toán qui hoạch tuyến tính 29 3.1.1 Biểu thức chính quy thời gian - TRE 29

3.1.2 Biểu thức TRE hữu hạn 34

3.1.3 Xây dựng bài toán qui hoạch tuyến tính 36

3.2 Chuyển TRE về hợp của các TRE hữu hạn 38

3.2.1 Cận thời gian của biểu thức TRE 39

3.2.2 Khử phép toán ∗ trong biểu thức TRE 41

3.2.3 Kiểm chứng tính an toàn của hệ chắn tàu 43

3.2.4 Kiểm tra tính rỗng và khử ∗ xuất hiện dưới ⊗ 45

3.3 Các công trình liên quan và nhận xét về phương pháp 46

3.3.1 Các công trình liên quan 46

3.3.2 Vài nhận xét về phương pháp 47

4 Kỹ thuật rời rạc hoá và duyệt đồ thị đạt được 50 4.1 Tính rời rạc hoá được và đồ thịvùng nguyên 52

4.1.1 Tập mô hình DC của ôtômat thời gian 53

Trang 5

4.1.4 Đồ thị vùng đạt được nguyên 61

4.2 Kiểm chứng công thức LDP 66

4.2.1 Tính tương đương của M(A) và M uv (A) đối với LDP 66

4.2.2 Đồ thịtrọng số G phục vụ kiểm chứng LDP 68

4.2.3 Thuật toán kiểm chứng LDP 70

4.3 Kiểm chứng công thức LDI 72

4.3.1 Quan hệ giữa lớp mô hình M uv (A) và đồ thịđạt được

RG hướng tới LDI 73

4.3.2 Đồ thịtrọng số G phục vụ kiểm chứng LDI 76

4.3.3 Thuật toán kiểm chứng LDI 81

4.3.4 Kiểm chứng tính an toàn của hệ chắn tàu bằng rời rạc hoá 84

Trang 6

Danh mục từ viết tắt

BDD : Binary Decision Diagram (Sơ đồ biểu diễn nhịphân)

CTL : Computational Tree Logic (Lôgic cây tính toán)

DC : Duration Calculus (Lôgic khoảng)

FTA : Finitary Timed Automaton (Ôtômat thời gian hữu hạn)

LDI : Linear Duration Invariant (Bất biến khoảng tuyến tính)

LDP : Linear Duration Property (Tính chất khoảng tuyến tính)

MC : Model Checking (Kiểm chứng mô hình)

PLTL : Propositional Linear Temporal Logic

RTA : Real-Time Automaton (Ôtômat thời gian thực)

RTS : Real-time System (Hệ thời gian thực)

SMV : Symbolic Model Verifier (Bộ kiểm chứng mô hình kí hiệu)

TA : Timed Automaton (Ôtômat thời gian)

TCTL : Timed Computational Tree Logic (Lôgic cây tính toán thời gian)TDP : Temporal Duration Property (Tính chất khoảng thời gian tuần tự)

TL : Temporal Logic (Lôgic thời gian tuần tự)

TRE : Timed Regular Expression (Biểu thức chính quy thời gian)

ix

Trang 7

4.1 Thuật toán xây dựng đồ thịđạt được nguyên 65

4.2 Thuật toán kiểm chứng tính thoả của G đối với LDP 71

4.3 Thuật toán kiểm chứng LDI với đỉnh xuất phát cố định 83

4.4 Thuật toán kiểm chứng LDI tổng quát 83

A.1 Đồ thị vùng đạt được nguyên của DATA1 104

A.2 Đồ thịtrọng số phục vụ kiểm chứng LDP với DATA1 104

A.3 Bảng kết quả kiểm chứng LDP với DATA1 105

A.4 Đồ thịtrọng số phục vụ kiểm chứng LDI với DATA1 106

A.5 Bảng kết quả kiểm chứng LDI với DATA1 107

A.6 Đồ thịvùng đạt được nguyên của hệ chắn tàu với a = b = c = 1 108 A.7 Đồ thịtrọng số phục vụ kiểm chứng hệ chắn tàu với a = b = c = 1109 A.8 Bảng kết quả kiểm chứng hệ chắn tàu 110

x

Trang 8

Danh mục hình vẽ

1.1 Sơ đồ bộ kiểm chứng mô hình 4

2.1 Các vùng với cận đồng hồ c x = 2, c y = 1 17

2.2 Ôtômat thời gian 19

2.3 Một mô hình của DC 23

3.1 Hệ chắn tàu 30

3.2 Một dáng điệu của hệ chắn tàu 32

4.1 Mô hình DC của ôtômat thời gian 54

4.2 Các lớp mô hình của ôtômat thời gian A . 55

4.3 Một trường hợp nguyên hoá mô hình σ với b  = b và e  = e 60 4.4 Đồ thịvùng đạt được nguyên RG . 66

4.5 Đồ thịtrọng số G phục vụ kiểm chứng LDP 69

4.6 Đồ thịtrọng số G từ đồ thịvùng đạt được RG . 78

4.7 Đường đi trong đồ thịtrọng số G 79

4.8 Ôtômat đạt được của hệ chắn tàu 84

xi

Trang 9

Với những thành công của đặc tả hình thức, kiểm chứng mô hình thời gianthực đã đóng góp nhiều phương pháp, thuật toán, cấu trúc dữ liệu và trên cơ

sở đó cung cấp nhiều bộ công cụ kiểm chứng mô hình cho phép kiểm tra tựđộng tính đúng đắn của hệ thống Tuy nhiên cho đến hiện nay, các thuật toánphục vụ kiểm chứng tính chất thời khoảng vẫn còn rời rạc và hạn chế, chủ yếuchỉ đối với các lớp con của ôtômat thời gian và các công thức khoảng được xétvới ngữ nghĩa thu hẹp

Từ đó, luận án này đặt vấn đề quan sát và thiết kế các thuật toán kiểmchứng với hệ thống mở rộng hơn và các tính chất thời khoảng trong ngữ nghĩatổng quát của nó Đó là lớp hệ thống biểu diễn được bởi ôtômat thời gian vàcác tính chất khoảng được biểu diễn bởi các công thức trong lôgic khoảng nhưcông thức khoảng tuyến tính (LDP), bất biến khoảng tuyến tính (LDI).Sau phần tóm tắt quá trình phát triển và các thành tựu của lĩnh vực kiểmchứng mô hình, luận án trình bày về phương pháp sử dụng qui hoạch tuyếntính để phục vụ kiểm chứng, trong đó hệ thống được biểu diễn bởi biểu thứcchính quy theo thời gian (một dạng thể hiện khác của ôtômat thời gian) vàđưa ra thuật toán kiểm chứng dựa trên lớp các biểu thức chính quy mở rộng.Luận án cũng chỉ ra các ưu điểm và mặt hạn chế của phương pháp qui hoạchtuyến tính, từ đó đề nghịsử dụng phương pháp duyệt đồ thịvùng đạt được,bằng cách khôi phục lại khoảng cách thời gian (cực tiểu và cực đại) của cácphép chuyển Trên cơ sở đồ thịđạt được, và tính rời rạc hoá được của các côngthức, các đồ thịtrọng số sẽ được xây dựng và thuật toán duyệt được tiến hànhtrên các đồ thịnày Phương pháp này tỏ ra hữu hiệu khi tiến hành kiểm chứngLDP, và cung cấp câu trả lời về tính quyết định được của tính chất LDI

xii

Trang 10

là hết sức khó khăn, đặc biệt là đối với các hệ thống thời gian thực mà việckiểm tra chúng (một cách chặt chẽ) chỉ mới được phát triển trong khoảng hơn

10 năm trở lại đây Phần lớn các khó khăn trong kiểm tra đến từ việc chưa

có một phương pháp nhất quán để mô tả hệ thống, dẫn tới cách hiểu về hệthống một cách chung chung, mơ hồ, không tạo được nền tảng để xây dựngnhững kỹ thuật kiểm tra thống nhất và từ đó dẫn tới cách thức kiểm tra khônghữu hiệu, thiếu tính thuyết phục Do vậy gần đây, các phương pháp hình thức

đã ra đời và được phát triển ngày càng mạnh mẽ, đạt được nhiều thành tựu.Trên nền tảng đó các ngôn ngữ đặc tả hệ thống cũng như các phương pháp,

1Ví dụ nguyên nhân vụ nổ tên lửa Arian 5 vào ngày 4 tháng 6 năm 1996 đã được xác

định do một lỗi nhỏ của phần mềm tính toán chuyển động của tên lửa ([24]).

1

Trang 11

kỹ thuật kiểm tra đã được xây dựng và ngày càng chứng minh tính hiệu quảcủa chúng Đặc biệt, một trong các phương pháp kiểm tra như vậy được gọi

là kiểm chứng mô hình đã sản sinh ra các bộ kiểm chứng cho phép tiến hànhkiểm tra hệ thống một cách hoàn toàn tự động Từ đó, các bộ kiểm chứngngày càng đóng vai trò quan trọng, được sử dụng rộng rãi và phục vụ đắc lựccho công việc kiểm tra, vốn nhiều khó khăn, đòi hỏi nhiều thời gian trở nênngày càng dễ dàng, nhanh, chính xác và hiệu quả hơn

Trong chương này - thay cho lời nói đầu - chúng tôi tóm tắt một cách ngắngọn các kết quả, phương pháp đã có cũng như một số hạn chế còn tồn tạitrong lĩnh vực kiểm chứng mô hình của các hệ thời gian thực, từ đó đưa đếncái nhìn ban đầu về mục đích và những lý giải về tính cần thiết của đề tài.Phần cuối cùng của chương chúng tôi trình bày về nội dung chính của luận

án, và các kết quả luận án đã đạt được trong việc giải quyết mục tiêu đề ra

1.1 Đặc tả và kiểm tra hệ thống

Để kiểm tra tính đúng đắn của hệ thống, trước hết hệ thống phải được đặc tảmột cách rõ ràng và nhất quán Đặc tả là quá trình mô tả hệ thống và các tínhchất mong muốn của nó bằng một ngôn ngữ cụ thể Tính chất của hệ thống

có thể bao gồm nhiều loại như: dáng điệu chức năng, dáng điệu thời gian, đặctrưng hoạt động, hoặc cấu trúc nội tại Một ngôn ngữ đặc tả cần đủ khả năng

để mô tả được hệ thống và các loại tính chất của nó Thông thường, đặc tảhình thức dùng một ngôn ngữ với cú pháp và ngữ nghĩa xác định nên mangtính ổn định và nhất quán cao Ví dụ một vài ngôn ngữ đặc tả như Z, VDM,RAISE sử dụng các cấu trúc toán học như tập hợp, quan hệ, hàm và hiệnnay vẫn đang được sử dụng khá thành công trong nhiều lĩnh vực ([60, 31]).Các hệ thống cũng có thể được trừu tượng hoá bằng một số công cụ biểu diễnkhác như ôtômat, biểu thức chính quy, lưới Petri, đại số tiến trình hay bằngcác hệ lôgic Trên nền tảng này nhiều công cụ mạnh, phụ thuộc chặt chẽ vào

ngôn ngữ đặc tả và kỹ thuật kiểm tra đã ra đời như hệ chứng minh định lý

Trang 12

(theorem prover) hay các bộ kiểm chứng mô hình (model checker).

Theo truyền thống, kiểm tra là chứng minh về mặt toán học chương trìnhhay hệ thống thoả mãn yêu cầu đặt ra, nói cách khác hệ thống phải làm việcđúng như phân tích và thiết kế trong phần đặc tả Trong thập kỷ 70 đã cónhiều công trình trình bày các kỹ thuật chứng minh được đưa ra bởi Dijkstra,Floyd, Gries, Hoare, Owicki, Manna, Plueni và nhiều tác giả khác ([23]) Đâythường là một công việc nặng nhọc, đòi hỏi bộ phận kiểm tra phải nắm vữngkiến thức toán học, phải tiến hành các thao tác suy luận, chứng minh - mộtcông việc đôi khi còn vất vả hơn cả viết chương trình Do vậy, đến thập kỷ 80một hướng tiếp cận khác đã được đề nghịđó là kiểm chứng mô hình, nó chophép các kỹ sư thiết kế, các nhóm lập trình có thể sử dụng máy tính và cácphần mềm được lập trình sẵn để kiểm tra tự động sản phẩm thiết kế của mìnhtrước khi sản xuất Nó không yêu cầu chứng minh tính đúng đắn cho một lớpbài toán tổng quát mà chỉ cần kiểm chứng trên bài toán cụ thể, xem với mọidáng điệu, mọi trường hợp có thể có của hệ thống liệu có thoả mãn với yêucầu đã đề ra Từ đó, một đặc trưng dễ thấy của kiểm chứng mô hình các hệthống hữu hạn trạng thái chính là duyệt yêu cầu trên không gian trạng tháicủa hệ thống và về mặt nguyên tắc bài toán coi như đã được giải quyết

Có thể phân biệt 2 hướng tiếp cận nêu trên bằng ví dụ nhỏ là bài toán

SAT, tức kiểm tra tính thoả của một công thức f trong lôgic mệnh đề Bằng

phương pháp chứng minh định lý từ hệ tiên đề của lôgic mệnh đề và các luậtdẫn ta có thể dẫn được về ¬f hoặc không để kết luận tính thoả của f Cách

giải quyết thứ hai là dùng kiểm chứng mô hình liệt kê từng bộ giá trịcủa các

biến mệnh đề sơ cấp có trong f, qua mỗi bộ giá trịđược liệt kê này tính đúng, sai của f sẽ được kiểm chứng để quyết định tính thoả của công thức.

Qua ví dụ nêu trên có thể thấy được ưu điểm của phương pháp kiểm chứng

mô hình so với phương pháp chứng minh định lý Thứ nhất, một phương phápkiểm chứng như vậy có thể được thể hiện thành các bộ kiểm chứng mô hình

với các đầu vào là hệ thống S, tính chất P và đầu ra là câu trả lời "đúng"

Trang 13

hoặc "sai" (hình 1.1), từ đó việc kiểm tra được tự động hoá hoàn toàn Thứhai, một bộ kiểm chứng mô hình là có khả năng chỉ ra bộ giá trịthoả mãn

công thức f, điều này ở một mặt khác cũng đồng nghĩa kiểm chứng mô hình

có thể chỉ ra nơi xảy ra lỗi của hệ thống Vì vậy, ngoài câu trả lời đúng/sai

mà bộ kiểm chứng mô hình cung cấp, chúng ta cũng thường dùng chúng nhưcông cụ phát hiện, phục vụ cho gỡ lỗi trong quá trình thiết kế

Hình 1.1: Sơ đồ bộ kiểm chứng mô hình

Thách thức về mặt kỹ thuật trong kiểm chứng mô hình chính là thuật toán

và cấu trúc dữ liệu để giải quyết bài toán bùng nổ không gian trạng thái, tức

số lượng trạng thái thường tăng theo hàm mũ đối với số thành phần hợp thànhcủa hệ thống Để khắc phục, một số kỹ thuật đã ra đời như on-the-fly2, cùngvới cấu trúc dữ liệu hợp lý, đã tỏ ra rất hiệu quả đối với các hệ hữu hạn trạngthái và hiện nay nhiều bộ kiểm chứng đã cho phép chúng ta điều khiển đượccác hệ thống với không gian trạng thái rất lớn

Tóm lại, trong khoảng hơn hai thập kỷ trở lại đây các phương pháp hìnhthức đã đưa lại nhiều thành tựu trong đặc tả và kiểm tra Nó làm tăng mạnh

mẽ kiến thức của chúng ta về hệ thống, và quan trọng hơn, làm bộc lộ tínhnhập nhằng, mâu thuẫn, không nhất quán trong các đặc tả dài dòng bằngngôn ngữ tự nhiên Nó cho phép chúng ta đặc tả và kiểm tra các hệ thốngphần cứng và phần mềm phức tạp mà mới chỉ hơn mười năm về trước thôngthường để hiểu và kiểm tra được những hệ thống như vậy thường phải dựatrên kinh nghiệm cá nhân của các chuyên gia

2kỹ thuật cho phép tiết kiệm thời gian và bộ nhớ bằng cách tiến hành kiểm chứng đồng

thời với quá trình sinh trạng thái.

Trang 14

1.2 Kiểm chứng mô hình

Vài nét đặc trưng về kiểm chứng mô hình

Năm 1981, E.M Clarke và E.A Emerson [22] lần đầu tiên đưa ra thuật ngữ

Kiểm chứng mô hình (Model Checking), và định nghĩa như sau:

"Kiểm chứng mô hình là một kỹ thuật tự động mà cho trước một mô hình

trạng thái hữu hạn và một tính chất logic, kỹ thuật sẽ cho phép kiểm tra một

cách hệ thống một trạng thái (hoặc mô hình) liệu có thoả mãn tính chất đó".Bài toán kiểm chứng tổng quát có thể được viết dưới dạng:

S |= P ?

trong đó S là mô hình hệ thống, P là một tính chất và |= kí hiệu cho vịtừ

"thoả được" Câu hỏi đặt ra là "Liệu hệ thống S có thoả mãn tính chất P ?"

Thông thường hệ thống được thể hiện bởi ôtômat thời gian và tính chấtđược biểu diễn bởi các công thức trong lôgic thời gian tuần tự (temporal logic).3

Có vài hướng tiếp cận để giải bài toán Hướng tiếp cận thứ nhất đượcnghiên cứu bởi Clarke và Emerson ([22]), và cũng bởi Queille và Sifakis ([50])một cách độc lập Theo hướng tiếp cận này, một thủ tục tìm kiếm trên khônggian trạng thái của hệ thống sẽ được sử dụng để kiểm tra liệu bất kỳ dãychuyển trạng thái nào của hệ cũng thoả mãn tính chất Theo hướng này nhiềucông trình khác đã được thực hiện trên các lôgic mở rộng của lôgic thời giantuần tự như Computational Tree Logic (CTL), Propositional Linear TemporalLogic (PLTL) ([24])

Hướng tiếp cận thứ hai là dựa vào bài toán kiểm tra tính rỗng của ngôn

ngữ ([7, 46]) Theo hướng tiếp cận này, tính chất P cũng được thể hiện bởi

một ôtômat Nếu ngôn ngữ L(S) được sinh bởi S là chứa trong ngôn ngữ L(P)

3chúng tôi tạm dịch từ "temporal" là "thời gian tuần tự", cũng như "real-time" là "thời

gian thực", vì khái niệm "temporal" chỉ cung cấp ý nghĩa thứ tự (về mặt thời gian) xảy ra của các trạng thái thay vì thời điểm chính xác xảy ra các trạng thái đó như trong khái niệm

"real-time".

Trang 15

được sinh bởi P thì S thoả P Mặt khác, do L(S) ⊆ L(P) ⇔ L(S × ¬P) = ∅

nên có thể chuyển bài toán trên về bài toán kiểm tra tính rỗng của ngôn ngữ

và nó đã được giải quyết trong [42] đối với ôtômat không thời gian

Một kỹ thuật quan trọng trong kiểm chứng mô hình là kỹ thuật biểu diễn

bằng kí hiệu (symbolic model checking), với đặc trưng chính là biểu diễn mọi

thành phần của bài toán (trạng thái, phép chuyển, tính chất) thông qua các

kí hiệu đại diện Kỹ thuật này cho phép sử dụng các sơ đồ biểu diễn nhịphân

(Binary Decision Diagram - BDD) với dữ liệu được cài đặt tốn rất ít bộ nhớ

và các phép toán trên nó được thực hiện một cách rất hữu hiệu Trên cơ sởnày năm 1992 Clarke và McMillan đã xây dựng bộ kiểm chứng mô hình SMV

(Symbolic Model Verifier) cho phép kiểm chứng các hệ thống với số lượng trạng

thái lên đến 1020 trạng thái ([48]).

Một số bộ kiểm chứng mô hình ra đời trong giai đoạn đầu điển hình nhưSMV, SPIN ([48, 34]) với các tính chất được đặc tả bởi lôgic thời gian tuần tựđược chúng tôi tạm gọi là kiểm chứng mô hình cổ điển để phân biệt với hướngkiểm chứng mô hình thời gian thực sau này

Kiểm chứng mô hình với hệ thời gian thực

Hệ thời gian thực là các hệ thống mà tính đúng đắn của nó liên quan chặt chẽđến các ràng buộc về mặt thời gian như thời gian thực hiện, thời gian hưởngứng, chu kỳ tác vụ, thời gian trễ trong tương tác, truyền thông v v Kiểmchứng mô hình theo truyền thống cổ điển thường không mô tả thời gian mộtcách hiển trong hệ thống nên nó không thích hợp để phân tích các hệ thờigian thực mà tính đúng đắn phụ thuộc vào độ lớn của các thời gian trễ khácnhau Từ đó, đầu thập kỷ 90 một số công cụ biểu diễn các hệ thời gian thựclần lượt ra đời mà nền móng cơ bản nhất là công cụ ôtômat thời gian [7], vàcác temporal logic cũng được mở rộng thành các lôgic thời gian thực như lôgiccây tính toán theo thời gian (Timed Computational Tree Logic - TCTL) [5],lôgic khoảng (Duration Calculus - DC) [18]

Trang 16

Do thời gian được lấy trên tập hợp trù mật R+ nên bài toán kiểm chứng

mô hình thời gian thực vấp phải tình trạng bùng nổ không gian trạng thái mới

đó là tham số thời gian Một trạng thái của hệ thời gian thực không chỉ là cáctrạng thái "vật lý" của hệ thống mà còn gắn với các giá trịthời gian, tức mỗitrạng thái vật lý sẽ tạo ra một lực lượng không đếm được các trạng thái khigắn liền với thời điểm xảy ra trạng thái vật lý đó Mặt khác, các tính chất cầnkiểm chứng cũng trở nên phức tạp hơn, ví dụ để kiểm chứng tính chất "trạng

thái q phải luôn luôn xảy ra kề ngay sau trạng thái p" là dễ dàng hơn kiểm chứng tính chất thời gian thực như "trạng thái q phải luôn luôn xảy ra sau trạng thái p trong vòng không quá 5 đơn vịthời gian", hoặc "tổng thời gian xảy ra của trạng thái p không được lớn hơn tổng thời gian xảy ra của trạng thái q" Từ đó, việc nghiên cứu về kiểm chứng mô hình các hệ thời gian thực

khó hơn rất nhiều và có độ phức tạp rất cao so với kiểm chứng các hệ hữu hạntrạng thái Thậm chí như đã chỉ ra trong [7], bài toán kiểm chứng mô hìnhtính chất thời gian thực tổng quát là không quyết định được đối với ôtômatthời gian Tuy vậy, hiện nay nhiều bộ kiểm chứng mô hình thời gian thực cũng

đã ra đời mà tiêu biểu là HyTech, KRONOS, UPPAAL ([38, 16, 13]), hoặc ápdụng các bộ kiểm chứng không thời gian (như SPIN) để phục vụ kiểm chứngtính chất thời gian thực ([21]) cũng đang được nghiên cứu

Tư tưởng phổ biến của các bộ kiểm chứng thời gian thực về cơ bản là duyệttrên đồ thịvùng (region graph) để kiểm tra tính đạt được của các trạng tháinào đó của ôtômat thời gian ([7, 8]) Vì số lượng các vùng là rất lớn nên một

số biện pháp thu gọn đã được đề nghị Ví dụ, có thể kết hợp nhiều vùng tạothành miền (zones) dựa trên các kỹ thuật mô phỏng (simulation), trừu tượnghoá (abstract) [55, 61], hoặc phương pháp thứ tự bộ phận (partial orders) [49]lược bỏ bớt các phép chuyển đan xen thừa trong hợp các thành phần, kếthợp song song với tối ưu hoá cấu trúc dữ liệu [47] Các kỹ thuật symbolic vàon-the-fly cũng được áp dụng ([14, 40]), từ đó các bộ kiểm chứng thời gianthực thường xuyên được cải tiến và ngày càng hữu hiệu hơn

Trang 17

Kiểm chứng mô hình với các tính chất khoảng

Các tính chất thời gian của một hệ thống có thể xuất hiện dưới nhiều dạng

khác nhau, trong đó các tính chất thời điểm là những tính chất chỉ quan tâm đến sự xuất hiện của các trạng thái còn các tính chất thời khoảng là những

tính chất quan tâm không những đến việc xuất hiện mà còn cả khoảng thờigian xuất hiện của những trạng thái này Ví dụ tính đạt được của một trạng

thái p hay các tính chất được biểu diễn trong lôgic TCTL là các tính chất thời điểm còn các tính chất như "tổng thời gian xảy ra của trạng thái p không được lớn hơn tổng thời gian xảy ra của trạng thái q" như đã được nhắc đến ở

trên, là một trong những tính chất khoảng như vậy

Để dễ hình dung, chúng ta nhắc lại một ví dụ kinh điển đã được nghiêncứu vào đầu thập kỷ trước, đó là hệ bếp ga Một thiết kế bếp ga được gọi là

an toàn nếu khoảng thời gian rò ga của nó là không quá dài Mô hình đơn giảncủa bếp được xét với 2 trạng thái rò ga và không rò ga và yêu cầu về tính antoàn của hệ thống được phát biểu: "tỉ lệ thời gian rò ga không quá một phầnhai mươi của đoạn thời gian quan sát bất kỳ không ngắn hơn 1 phút"

Trên đây là một phát biểu tuy không hình thức về yêu cầu an toàn củabếp ga, nhưng cũng đủ để chúng ta nhận thấy khoảng thời gian xuất hiện củacác trạng thái trong hệ thống là quan trọng Cần có công cụ để đặc tả nhữngtính chất như "thời gian rò ga", "đoạn thời gian quan sát" và các yêu cầu như

"tỉ lệ thời gian rò ga không quá một phần hai mươi của đoạn thời gian quansát bất kỳ không ngắn hơn 1 phút" Chắc chắn rằng các phương pháp để kiểmchứng một hệ thống được thiết kế như vậy và để trả lời câu hỏi về tính thoảcủa hệ thống đối với tính chất như vậy là khó khăn hơn so với kiểm chứng hệthống và tính chất không liên quan đến thời khoảng

Một trong những ý tưởng đầu tiên liên quan đến các tính chất thời khoảngxuất hiện trong [6] Trong báo cáo này các tác giả đã xét bài toán "đạt đượctrong khoảng thời gian bịchặn", câu hỏi đặt ra là liệu một trạng thái này cóthể đạt được từ một trạng thái kia (ví dụ từ trạng thái ban đầu chẳng hạn)

Trang 18

trong một khoảng thời gian cho phép Bài toán này đã được giải quyết bởithuật toán được đề nghịbởi các tác giả, tuy nhiên bản thân của tính chất cònnhiều hạn chế cũng như thuật toán có độ phức tạp rất cao Các thuật toán

về sau, trên nền tảng của một hệ lôgic mới, đã bắt đầu xét đến các lớp tínhchất phức tạp hơn như trong [19, 45, 28, 56] Hệ lôgic mới này là một trongnhững nội dung nghiên cứu chính của dự án ProCoS (ESPRIT BRA 3104)4,

được gọi là hệ Lôgic khoảng (Duration Calculus - DC) và là lôgic đầu tiên có

khả năng đặc tả bài toán bếp ga ở trên Nhiều báo cáo của dự án và các cơ

sở nghiên cứu khác như Viện Công nghệ phần mềm thuộc Đại học Liên hợpquốc (UNU/IIST, Macau) khẳng định thêm khả năng đặc tả của lôgic khoảng([1, 43]) và chứng minh tính quyết định được của một số lớp công thức tronglôgic khoảng, ví dụ trong [53, 54, 51]

Tương tự tính chất thời điểm, bài toán kiểm chứng mô hình cũng đượcđặt ra với các công thức khoảng được viết trong DC Tuy nhiên, ở đây đã gặpmột khó khăn lớn đó là tính quyết định được của lớp các công thức khoảng làrất thấp Như đã chỉ ra trong [35], nhiều lớp công thức đơn giản trong lôgic

là không quyết định được, từ đó thậm chí việc tìm ra các lớp công thức quyếtđịnh được là có ý nghĩa Ví dụ các tác giả trong [51] đã chỉ ra tính quyết địnhđược của một lớp công thức mở rộng trong DC với mô hình thời gian rời rạc.Một yếu tố dẫn đến tính quyết định được thấp của các công thức trong

DC, cũng như tính bùng nổ không gian trạng thái trong kiểm chứng tính chấtkhoảng đó là các quan sát hệ thống phải được tiến hành trong những khoảngthời gian bất kỳ Nói cách khác, bản chất của các tính chất thời điểm trongkhi có thể được quyết định bởi toàn bộ đường chạy xuất phát từ thời điểm banđầu (0) và kết thúc tại một thời điểm chuyển trạng thái nào đó thì tính chấtkhoảng lại được quyết định bởi vô hạn khoảng quan sát bất kỳ trên đườngchạy này Đặc trưng này góp phần làm tăng cao độ phức tạp của hệ thống vàgây nhiều khó khăn trong việc thiết kế thuật toán kiểm chứng chúng

4ProCoS: Provably Correct Systems Dự án thuộc chương trình ESPRIT được tài trợ bởi

Cộng đồng Châu Âu (CEC), nghiên cứu về đặc tả hình thức các hệ thời gian thực.

Trang 19

Với những khó khăn nêu trên, cho đến hiện nay kết quả về kiểm chứngtính chất thời khoảng là vẫn còn hạn chế Hầu hết các kết quả trong thập kỷvừa qua kể từ lần đầu tiên Zhou Chaochen (1991) giới thiệu về DC ([18]) chođến nay đều tập trung trên các hạn chế của lớp các ràng buộc tuyến tính.Đây là lớp tính chất quan trọng hay gặp trong thực tế và được nhiều tác giảquan tâm Ví dụ trong [45] các tác giả đã chứng minh bài toán kiểm chứng cáctính chất này là quyết định được đối với ôtômat thời gian hữu hạn (FinitaryTimed Automata - FTA) bằng việc đưa bài toán kiểm chứng về việc giải mộttập các bài toán qui hoạch nguyên Tuy nhiên, trong bài báo này các tác giả

đã phải hạn chế chỉ xét lớp công thức với các hệ số ràng buộc lấy giá trịtrêntập số nguyên (Z) Trong [19], các tác giả đã xét công thức dưới dạng tổng

quát hơn với các hệ số thực gọi là lớp công thức bất biến khoảng tuyến tính

nhưng lại hạn chế hệ thống được biểu diễn bởi các ôtômat thời gian thực (làlớp các ôtômat thời gian đơn giản với một đồng hồ và được đặt lại về 0 saumỗi phép chuyển) Phương pháp chính của các tác giả trong bài báo này làthiết lập tập bài toán qui hoạch tuyến tính tương ứng với các biểu thức chínhquy biểu diễn dáng điệu của ôtômat và sau đó đưa về giải tập các bài toán quihoạch này Phát triển phương pháp này các tác giả trong [28, 29, 56] đã đềnghịcác thuật toán kiểm chứng bất biến khoảng tuyến tính đối với một số lớpcon của ôtômat thời gian, ôtômat lai (hybrid automata) và lưới ôtômat thờigian thực dựa trên biểu diễn hệ thống bởi các biểu thức chính quy theo thờigian Phương pháp này có nhược điểm là sinh ra một số rất lớn các bài toánqui hoạch tuyến tính mà nó phụ thuộc vào độ lớn của cận đồng hồ và cận trêncủa độ dài quan sát trong công thức khoảng Từ đó một phương pháp khác

đã được đề xuất trong [44] Tư tưởng chính của phương pháp dựa trên tínhrời rạc hoá được, là tính chất đặc thù của một số công thức mà nó cho phépviệc kiểm chứng chúng trên tập thời gian nguyên là cho cùng kết quả như trêntập thời gian thực Như vậy có thể kiểm chứng các tính chất rời rạc hoá đượcbằng kỹ thuật duyệt đồ thịđạt được nguyên mà nó có kích thước bé hơn rấtnhiều so với đồ thịđạt được tổng quát Trên cơ sở này, các tác giả trong [44]

Trang 20

đã đề nghịthuật toán kiểm chứng tính chất khoảng tuyến tính với độ phức tạp

tương đương với các thuật toán kiểm chứng hiện nay đối với các công thứcthời điểm Ngoài ra, kết hợp với phương pháp giải bằng qui hoạch tuyến tínhcác tác giả trong [63] cũng đã đề nghịthuật toán giải một lớp công thức khác

được gọi là các tính chất khoảng thời gian tuần tự, và tác giả luận án đã mở

rộng các thuật toán trên cho lưới ôtômat thời gian trong [2, 57] Đặc điểm củatất cả các kết quả này ngoài một số hạn chế như đã nhắc đến, còn một nhượcđiểm chung là chúng chỉ xét với các quan sát bắt đầu từ thời điểm ban đầu (0)của hệ thống, tức với một ngữ nghĩa khá hạn chế của các tính chất khoảng.Việc khắc phục nhược điểm này là một trong những kết quả chính của luậnán

Hầu hết các kết quả được nhắc đến ở trên đều được thực hiện từ dự ánDeTfoRS 5 được hỗ trợ bởi Viện Công nghệ phần mềm quốc tế của trường Đạihọc Liên hợp quốc tại Macau (UNU/IIST) và luận án này được hoàn thànhtrên cơ sở các phương pháp được nghiên cứu tại UNU/IIST dưới sự hướng dẫntận tình của TS Đặng Văn Hưng - một thành viên của dự án - cũng như sựgiúp đỡ nhiệt tình của các thành viên khác Ngoài ra luận án còn nhận được

sự hổ trợ của đề tài trọng điểm cấp quốc gia "Các phương pháp đặc tả và kiểmchứng trong công nghệ phần mềm" dưới sự chủ trì của PGS TS Hồ Sĩ Đàm,Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội

1.3 Mục đích và kết quả của luận án

Mục đích của luận án

Với tình hình kiểm chứng mô hình như đã được trình bày tóm tắt ở trên, mộtvấn đề hiện nay vẫn còn đang được tiếp tục giải quyết đó là xây dựng các bộkiểm chứng cho các tính chất thời khoảng của các hệ thời gian thực Như đãbiết hầu hết các công thức khoảng là không quyết định được nên sẽ không

5DeTfoRS: Design Techniques for Real-Time Systems.

http://www.iist.unu.edu/home/Unuiist/newrh/II/3/1/1/page.html

Trang 21

thể xây dựng được một bộ kiểm chứng mô hình cho toàn bộ mà chỉ có thểxây dựng các bộ kiểm chứng mô hình bộ phận cho một số lớp công thức đặctrưng của hệ lôgic Các lớp công thức như vậy đã được kể đến như các bất biếnkhoảng tuyến tính, tính chất khoảng tuyến tính và một vài lớp con khác Tuynhiên, chúng tôi cũng nhận thức được rằng việc xây dựng một bộ kiểm chứnghoàn chỉnh (hữu hiệu, độ phức tạp thấp) đòi hỏi nhiều thời gian và là côngsức của cả một tập thể nghiên cứu mạnh Vì vậy luận án cũng chỉ đặt vấn đềnghiên cứu và đề xuất các thuật toán kiểm chứng cho lớp các công thức này.Trên cơ sở đó chúng tôi xin tóm tắt vài kết quả chính mà chúng tôi đã đạtđược trong quá trình thực hiện mục đích của luận án.

Một số kết quả chính

Đề xuất biểu diễn dáng điệu lưới ôtômat thời gian thực bởi biểu thứcchính qui theo thời gian, trên cơ sở đó giải bài toán kiểm chứng các tínhchất khoảng tuyến tính (LDP) và bất biến khoảng tuyến tính (LDI) bằngqui hoạch tuyến tính

Chứng minh tính rời rạc hoá được (với ngữ nghĩa tổng quát) của lớp cáccông thức LDP, LDI

Xây dựng đồ thịđạt được có trọng số hướng đến LDP, trên cơ sở đó đềnghịmột thuật toán kiểm chứng lớp công thức LDP bằng cách áp dụngthuật toán tìm đường đi ngắn nhất của Warshall-Floyd

Đề xuất đồ thị"rời rạc hoá" của đồ thịđạt được Chứng minh tính quyếtđịnh được của lớp công thức LDI bằng một thuật toán duyệt đồ thị này

Các kết quả này đã được báo cáo tại các xemine của bộ môn Khoa họcmáy tính, hội nghịkhoa học Khoa Công nghệ Đại học Quốc gia Hà Nội, hộithảo quốc gia về Công nghệ thông tin, xemine của UNU/IIST và các hội nghịquốc tế (Nhật bản-1998, Việt Nam-2002, Trung Quốc-2004) và đã được công

bố chính trong các công trình [56], [57], [58], [59]

Trang 22

Cấu trúc của luận án

Phần chính của luận án gồm 4 chương Trong chương này chúng tôi đã trìnhbày tóm tắt về một số đặc trưng của kiểm chứng mô hình, cũng như nhữngkết quả và hạn chế trong lĩnh vực kiểm chứng các tính chất thời khoảng chođến thời điểm hiện nay Các kiến thức cơ bản để phục vụ luận án như ôtômatthời gian và lôgic khoảng được trình bày trong chương 2

Kết quả chính của luận án được trình bày trong hai chương 3 và 4 Trong

đó, ở chương 3 chúng tôi trình bày về cách biểu diễn lưới ôtômat thời gian thựcbởi biểu thức chính quy thời gian và thiết lập bài toán qui hoạch tuyến tính đểkiểm chứng các lớp công thức LDP, LDI Đặc trưng của biểu thức chính quy

ở đây là phép toán đồng bộ hoá quá trình chuyển trạng thái, một phép toán

cơ bản để biểu diễn ôtômat thời gian bằng các biểu thức chính quy thời gian([10]) Trong chương 4 chúng tôi chứng minh tính rời rạc hoá được của LDP,LDI và xây dựng các đồ thịđạt được có trọng số trên cơ sở các đồ thịvùng từ

đó đưa ra thuật toán hữu hiệu kiểm chứng công thức LDP Cũng trong chươngnày thuật toán duyệt trên đồ thịvùng đã "rời rạc hoá" được xây dựng để kếtluận tính quyết định được của LDI theo ngữ nghĩa tổng quát của nó

Cuối cùng trong phần kết luận chúng tôi tóm tắt về luận án, nhận xét các

ưu khuyết điểm của các phương pháp đã được sử dụng, chỉ ra triển vọng củacác phương pháp và đề nghịmột vài cải tiến để hoàn chỉnh các thuật toáncũng như đề xuất một vài hướng nghiên cứu tiếp tục

Để minh hoạ các thuật toán đã trình bày trong chương 4, chúng tôi cũngcài đặt một bộ chương trình kiểm chứng mô hình ở mức độ đơn giản Một sốnét đặc trưng và kết quả áp dụng của bộ kiểm chứng mô hình này được mô tảtrong phần phụ lục

Chúng tôi hy vọng luận án là những kết quả bước đầu đặt nền tảng cho cácnghiên cứu tiếp của chúng tôi về một lĩnh vực đã đạt nhiều thành tựu nhưngcũng còn nhiều khó khăn như trong lĩnh vực kiểm chứng mô hình này

Trang 23

Đặc tả hệ thống và tính chất

Để đặc tả hệ thống luận án sẽ sử dụng ôtômat thời gian là mô hình được dùngrộng rãi hiện nay, còn tính chất thời khoảng sẽ được đặc tả bởi các công thứctrong lôgic khoảng Việc sử dụng hai công cụ hình thức này được gặp hầu hếttrong các tài liệu tham khảo và được trình bày chi tiết trong [7, 8, 18, 35]

2.1 Mô hình thời gian

Để đánh dấu và đo lượng thời gian chúng ta sử dụng một tập X các biến thời

gian x (mà có thể gọi ngắn gọn và hình ảnh hơn là các đồng hồ) Về mặt tổng

quát giá trịcủa các đồng hồ có thể thay đổi với các vận tốc khác nhau, tuynhiên luận án này chỉ xét hệ thống với giá trịcủa các đồng hồ tăng đều và theo

cùng một vận tốc giống nhau Tại một thời điểm cụ thể mỗi đồng hồ trong X

sẽ nhận một giá trịsố trong tập hợp TIME nào đấy biểu thịlượng thời gian

đã trôi qua Thông thường TIME là tập các số tự nhiên N hoặc tập các số

thực R+ tuỳ theo theo ngữ cảnh thời gian được sử dụng và được mặc định lấy

trên tập số thực R+ Mỗi đồng hồ đóng vai trò đếm lượng thời gian trôi của

một hay nhiều tác vụ của hệ thống, có thể được đặt lại giá trịban đầu (0) sau

mỗi tác vụ Một bộ ν bất kỳ các giá trịđồng hồ được gọi là thể hiện đồng hồ

14

Trang 24

(clock interpretations), tức ν là một ánh xạ từ X tới TIME Giá trịcủa một

đồng hồ x trong thể hiện ν được kí hiệu bởi ν(x) Thông thường, một thể hiện đồng hồ có thể được gọi một cách ngắn gọn là thể hiện.

Cho δ là một số thực không âm và λ ⊆ X là một tập đồng hồ Khi đó

ν  = ν +δ kí hiệu cho thể hiện mà nó ánh xạ mỗi đồng hồ x tới giá trị ν(x)+δ, tức ν  (x) = ν(x) + δ, ∀x ∈ X ν  = ν[λ:=0] là thể hiện nhận được từ ν và gán

0 tới mỗi x ∈ λ, tức ν  (x) = 0 nếu x ∈ λ và ν  (x) = ν(x) nếu x ∈ λ.

Một hệ thời gian thực khi hoạt động phải tuân theo một qui luật thời gian

nào đó thông qua các ràng buộc thời gian trên tập đồng hồ X Một ràng buộc thời gian như vậy là một công thức ϕ được cho theo cú pháp sau đây:

ϕ := x ≤ c | c ≤ x | x − y ≤ c | c ≤ x − y | ϕ ∧ ϕ

ở đây x, y ∈ X và c ∈ N Để viết gọn ϕ ta cũng sử dụng các phép toán ¬, ∨

theo nghĩa thông thường trong lôgic mệnh đề Thực tế c có thể được xét như

các hằng hữu tỷ, tuy nhiên bằng cách nhân tất cả các hằng với bội chung nhỏ

nhất của các mẫu số của c trong tập hữu hạn các ràng buộc của hệ thống,

chúng ta có thể đưa chúng về lại là các hằng nguyên

Một thể hiện ν được gọi là thoả ràng buộc ϕ nếu thay mọi biến x trong ϕ bởi ν(x) ta nhận được một công thức đúng, và kí hiệu ν |= ϕ, ngược lại ta kí hiệu ν |= ϕ Tập các ràng buộc thời gian ϕ trên X được kí hiệu bởi Φ(X).

Từ đây trở đi ta qui ước sử dụng kí hiệu  a |= α  a |= α  để chỉ quan

hệ a thoả α và a không thoả α Ngữ nghĩa của quan hệ "thoả" (và từ đó kéo

theo cũng "không thoả") sẽ được định nghĩa trong từng trường hợp cụ thể

Cho tập đồng hồ X lấy giá trịtrên tập số thực không âm R+ và một tập hữu

hạn các ràng buộc đồng hồ φ ⊆ Φ(X) Việc duyệt tất cả các thể hiện thoả hay không thoả các công thức trong φ là không thể vì số lượng các thể hiện ν là

vô hạn Do vậy trong [7], Alur và Dill đề xuất một kỹ thuật phân hoạch tập

Trang 25

các thể hiện đồng hồ thành các vùng đồng hồ (clock regions) bởi một quan hệ tương đương chỉ số hữu hạn hướng đến tập ràng buộc đồng hồ φ như sau Xét đồng hồ x, gọi c x là số nguyên lớn nhất xuất hiện trong các ràng buộc

đồng hồ của x trong tập các công thức φ Với số thực t ta kí hiệu t và f r(t) lần lượt là phần nguyên và phần lẻ của t Hai thể hiện ν và ν  được gọi là

tương đương (hướng đến tập các ràng buộc φ) và được kí hiệu ν ∼ = ν  nếu:

1 ∀x ∈ X, hoặc ν(x) = ν  (x) hoặc cả hai cùng lớn hơn c x

2 ∀x, y ∈ X và ν(x) ≤ c x , ν(y) ≤ c y thì fr(ν(x)) ≤ fr(ν(y)) khi và chỉ khi

fr(ν  (x)) ≤ fr(ν  (y))

3 ∀x ∈ X và ν(x) ≤ c x thì fr(ν(x)) = 0 khi và chỉ khi fr(ν  (x)) = 0 Gọi k là số đồng hồ trong X Quan hệ ∼= có các tính chất sau

Tính chất 1. ∼ = là một quan hệ tương đương trên tập các thể hiện đồng hồ.

Kí hiệu [ν] là lớp tương đương của ν xác định bởi quan hệ ∼= và được gọi

là vùng đồng hồ (chứa ν) Rõ ràng mọi thể hiện trong cùng một vùng sẽ cùng thoả hoặc không thoả một ràng buộc đồng hồ trong φ Từ đó ta có tính chất:

Tính chất 2. Mỗi vùng đồng hồ được đặc trưng bởi một ràng buộc đồng hồ.

Ví dụ 2.1. Xét φ là lớp các ràng buộc trên tập đồng hồ {x, y} trong đó c x = 2

và c y = 1 Khi đó tập gồm 28 vùng đồng hồ hướng tới φ được cho trong hình

2.1 Trong đó lớp các vùng thoả ràng buộc x ≤ 2 ∧ y ≤ 1 là tất cả trừ 4 vùng không bị chặn, tức trừ các vùng có chứa ít nhất một ràng buộc x > 2 hoặc y > 1 Tương tự thoả ràng buộc x ≥ 2 ∧ y ≥ 1 có hai vùng [(2, 1)] và

[x > 2 ∧ y > 1]

Trang 26

Hình 2.1: Các vùng với cận đồng hồ c x = 2, c y = 1

2.2 Ôtômat thời gian

Ôtômat thời gian là một công cụ hữu hiệu để mô hình và kiểm chứng các chứcnăng đúng đắn của các hệ thời gian thực được Alur và Dill đề xuất trong [7].Các thành tựu nội tại của lý thuyết ôtômat thời gian đã được công bố trongrất nhiều công trình Có thể liệt kê một cách ngắn gọn về các thành tựu nàynhư khả năng biểu diễn của ôtômat thời gian trong [9, 39], hay khả năng biểudiễn đối với các ôtômat thời gian mở rộng trong [30, 41, 20, 12], hoặc các rútgọn không gian trạng thái của ôtômat thời gian như trong [27, 61] Trên cơ sởcủa các thành tựu lý thuyết này, ôtômat thời gian đã được sử dụng như công

cụ chính để mô hình hoá các hệ thời gian thực trong các bộ kiểm chứng môhình như HyTech ([38]), KRONOS ([26]), UPPAAL ([13]) Hầu hết các kếtquả này đều được tổng kết một cách ngắn gọn trong [8]

Trang 27

• I là một ánh xạ gán mỗi vị trí s ∈ S với một ràng buộc đồng hồ trong

Φ(X), còn gọi là bất biến của s,

• E ⊆ S × Φ(X) × Σ × 2 X × S là tập hữu hạn các phép chuyển vị trí.

Một phép chuyển vịtrí e = s, ϕ, a, λ, s   biểu diễn một hoạt động cơ bản

của ôtômat bằng cách chuyển vịtrí từ s tới s  với nhãn a nếu điều kiện ϕ được thoả mãn Tập λ ⊆ X qui định đồng hồ nào được khởi tạo lại giá trị về 0 ngay

sau khi phép chuyển này thực hiện xong

Như thông thường, chúng ta có thể sử dụng đồ thịđể biểu diễn ôtômat

thời gian Các đỉnh của đồ thịđược gọi là các vị trí (location) và được gán một ràng buộc đồng hồ I(s) ∈ φ(X) thể hiện việc hệ thống được phép hoặc

bắt buộc nằm tại vịtrí đó trong bao lâu

Trạng thái và phép chuyển trạng thái

Một trạng thái của ôtômat thời gian A là cặp (s, ν) trong đó s là một vịtrí

của A và ν |= I(s) Trạng thái (s0, ν0) với s0 là vịtrí ban đầu và ν0(x) = 0 với mọi x được gọi là trạng thái ban đầu.

Các trạng thái của ôtômat là thay đổi nếu 1 trong 2 thành phần của nóthay đổi, điều này dẫn đến 2 loại phép chuyển trạng thái sau:

• Phép chuyển liên tục: Ta nói hệ chuyển trạng thái từ q = (s, ν) đến

q  = (s, ν + δ) bằng một phép chuyển liên tục và được kí hiệu q → q δ ,

nếu ν + δ  |= I(s), ∀δ  : 0 ≤ δ  ≤ δ, tức thời gian được thác triển liên tục

từ ν đến ν + δ trong khi hệ vẫn nằm cố định tại vị trí s.

• Phép chuyển rời rạc: Ta nói hệ chuyển trạng thái từ q = (s, ν) đến

q  = (s  , ν[λ := 0]) bằng một phép chuyển rời rạc và được kí hiệu q → q a ,

nếu tồn tại phép chuyển e = s, ϕ, a, λ, s   sao cho ν |= ϕ và ν[λ := 0] |= I(s  ) Tức hệ thống chuyển từ vịtrí s đến vịtrí s  và đặt đồng hồ về 0.

Các phép chuyển liên tục có tính cộng tính, tức nếu q → q δ  và q  δ → q  

Trang 28

thì q δ+δ → q   và phép chuyển rời rạc là tức thời Trường hợp hai phép chuyển

này xảy ra liên tiếp, ta cũng có thể kí hiệu: q → δ → q a  hoặc q → q δ,a , tức

(s, ν) → (s δ,a  , ν  ) Kí hiệu này minh hoạ hệ thống nằm tại vịtrí s với thể hiện

ν, thời gian trôi một khoảng từ 0 đến δ, đến thời điểm này nếu thể hiện ν + δ

thoả ràng buộc của phép chuyển vịtrí thì hệ chuyển đến trạng thái mới s 

một số đồng hồ trong ν + δ được đặt về 0, ν + δ chuyển thành ν 

Hình 2.2: Ôtômat thời gian

Ví dụ 2.2. Ôtômat thời gian A trong hình 2.2 có hai đồng hồ x và y Tập hợp các vị trí là {s1, s2}, cùng với các bất biến gồm I(s1) = (y ≤ 5) và

I(s2) = (x ≤ 8 ∧ y ≤ 10) A có hai phép chuyển vị trí {s1, y ≥ 3, a, {y}, s2,

s2, x ≥ 6 ∧ y ≥ 4, b, {x}, s1} Đồng hồ y được đặt về 0 mỗi khi hệ chuyển từ

s1 đến s2 và ngược lại khi chuyển từ vị trí s2 về s1 đồng hồ x sẽ được đặt về 0.

Trang 29

Tính chất 4. Với đường chạy r và dáng điệu ρ tương ứng, ta có:

• dãy thời điểm trong ρ là không giảm, tức t i ≤ t i+1 đối với mọi i ≥ 0,

• t i là thời điểm hệ chuyển vị trí từ s i−1 tới s i , với mọi i ≥ 1 Tức hệ thống nằm tại vị trí s i−1 trong δ i = t i − t i−1 đơn vị thời gian và chuyển đến vị trí s i bởi một phép chuyển vị trí s i−1 , ϕ, a, λ, s i  nào đó.

Dựa trên kỹ thuật phân vùng đồng hồ, Alur và Dill xây dựng đồ thịvùngđạt đượcRG của ôtômat thời gian A mà nó bảo toàn tính đạt được của ôtômat.

Điều này có nghĩa nếu tồn tại một đường chạy trong A từ vịtrí s1 đến s2 thì

cũng tồn tại một đường đi nào đó trong RG từ đỉnh v1 đến v2 và ngược lại

(v1, v2 là các đỉnh đặc trưng của s1, s2) Từ đó bài toán kiểm chứng tính đạt

được và cả các tính chất thời điểm nói chung có thể đưa về kiểm chứng tínhđạt được của các đỉnh trong đồ thị RG Tuy nhiên RG là không thích hợp cho

kiểm chứng tính chất thời khoảng vì nó không lưu lại thời gian của các phépchuyển Điều này có thể được khắc phục bởi đồ thịđạt được nguyên (thời gianlấy trên N) như trong chương 4 chúng tôi mô tả cách xây dựng và sử dụng

chúng để kiểm chứng các công thức khoảng LDP, LDI

Đối với nhiều hệ thống phức hợp được tạo thành từ các hệ thống đơn, chúng ta

có thể sử dụng tích đồng bộ của các ôtômat thời gian để biểu diễn chúng Lấy

A i = S i , s 0i , Σ i , X i , I i , E i  (i = 1, 2) là hai ôtômat thời gian Tích của A1, A2

(còn được gọi là hợp song song của A1, A2 và được ký hiệu bởi A1  A2) được

định nghĩa như sau

Định nghĩa 2.3 (Hợp song song của ôtômat thời gian). Hợp song song của các ôtômat thời gian A1, A2 là ôtômat A = S, s0, Σ, X, I, E, ở đây:

S = S1× S2, s0 = (s01, s02), Σ = Σ1∪ Σ2, X = X1∪ X2, I = I1∪ I2 Tập phép

chuyển E được xây dựng như sau : lấy e i = s i , ϕ i , a i , λ i , s  i  ∈ E i (i = 1, 2) Khi đó nếu a1 = a2 thì (s1, s2), ϕ1∧ ϕ2, a, λ1∪ λ2, (s 1, s 2) ∈ E, trong đó

Trang 30

a = a1 = a2 Nếu a1 ∈ Σ1 \ Σ2 thì (s1, s2), ϕ1, a1, λ1, (s 1, s2) ∈ E, và nếu

a2 ∈ Σ1\ Σ2 thì (s1, s2), ϕ2, a2, λ2, (s1, s 2) ∈ E.

Các ôtômat A1 và A2 là hoạt động đồng bộ thông qua tập nhãn chung của

Σ1 và Σ2 Điều này có nghĩa một phép chuyển với nhãn a ∈ Σ1 ∩ Σ2 xảy ra

trong A1 khi và chỉ khi nó cũng xảy ra đồng thời trong A2 Ta gọi các phép

chuyển này là đồng bộ, các phép chuyển còn lại được gọi là đan xen Đối vớicác hệ thống là hợp song song bởi nhiều hơn hai thành phần, định nghĩa cũngđược mở rộng một cách tương tự

Trước khi kết thúc phần này, chúng tôi có một lưu ý nhỏ về từ trạng thái

trong luận án Đối với hệ thống nói chung (hệ chuyển trạng thái, ôtômat không

thời gian) đỉnh s trong các đồ thịbiểu diễn hệ thống được gọi là trạng thái và tập S chứa các đỉnh này được gọi là tập trạng thái Tuy nhiên, đối với ôtômat thời gian, các đỉnh s này sẽ được gọi là vịtrí, khi đó trạng thái của hệ thống

sẽ là cặp (s, ν) (ν là một thể hiện đồng hồ) và được kí hiệu bởi q, q  , q1,

Do định nghĩa tổng quát của ôtômat thời gian cho phép có thể có vô hạntrạng thái xảy ra trong một khoảng thời gian hữu hạn, nên để phù hợp với

thực tế, luận án này chỉ xét đến lớp các ôtômat nonZeno ([7, 8]), tức trong

một khoảng thời gian hữu hạn bất kỳ chỉ có một số hữu hạn phép chuyển đượcphép xảy ra Qui ước này được sử dụng hầu hết trong các công trình liên quanđến hệ thống thực tế, trừ phi trong một số công trình nghiên cứu về khả năng(lý thuyết) nội tại của ôtômat thời gian

Để thuận tiện cho trình bày, kí hiệu∞ cũng được xem như một số thực và

là số lớn nhất trong tập hợp các số thực Trên cơ sở đó các phép toán số họccộng, nhân và các quan hệ cũng được mở rộng đến giá trịsố này

2.3 Lôgic khoảng

Để mô tả hệ thống thời gian thực ngoài các công cụ đã trình bày như hệ chuyểntrạng thái, ôtômat thời gian, ta cũng có thể sử dụng các lôgic thời gian như

Trang 31

lôgic khoảng (Duration Calculus - DC) Tuy nhiên, trong luận án này lôgickhoảng chỉ được sử dụng để đặc tả các tính chất khoảng của hệ thống, do vậychúng tôi sẽ không trình bày sâu vào cú pháp mà chỉ trình bày ngắn gọn ngữnghĩa và một ví dụ kinh điển về bếp ga, đủ để hiểu được các công thức đượcđưa ra sau này của luận án.

Lôgic khoảng là hệ lôgic được xây dựng và phát triển bởi Zhou Chaochen vàcác đồng sự ([18]) như một lôgic để lý giải và tính toán về thời gian xuất hiệncủa các trạng thái trong các hệ thời gian thực Từ "khoảng" trong tên gọi của

hệ lôgic này muốn nói lên đặc điểm cần quan tâm đó là khoảng thời gian xuấthiện của các trạng thái, nó được xem như một độ đo trên tập các trạng tháivới giá trịthuộc tập TIME, nói chung là một số thực không âm trong R+.

Trong DC, mỗi trạng thái của hệ thống được xem như một hàm bool theo

thời gian Khi đó trạng thái s của hệ thống là hàm s : TIME → {0, 1},

s(t) (t ∈ TIME) nhận giá trị1 nếu tại thời điểm t hệ thống nằm tại trạng

thái s và nhận giá trị0 trong trường hợp ngược lại Lấy S = {s, u, v, }

là tập các trạng thái của hệ thống Khi đó một tập bất kỳ các hàm bool

I = {s : TIME → {0, 1} | s ∈ S} được gọi là một thể hiện của hệ thống, tức

thể hiện I của hệ thống là ánh xạ I : S → {TIME → {0, 1}}.

Một mô hình DC σ = (I, [b, e]) biểu diễn một quan sát dáng điệu của hệ

thống Nó bao gồm một thể hiện I của các trạng thái trong S và một đoạn

thời gian quan sát [b, e] (b, e ∈ R+, 0 ≤ b ≤ e < ∞) Từ đó có thể định

nghĩa khoảng thời gian (time duration) của trạng thái s trên đoạn [b, e] như

Trang 32

v Các đường gạch ngang in đậm biểu thịđoạn thời gian các trạng thái tương

ứng hiện diện trong hệ thống (có giá trị1) Một quan sát bắt đầu tại thời điểm

b và kết thúc tại thời điểm e (tức giá trịcủa các hàm trạng thái s(t), u(t), v(t)

chỉ xét trên đoạn [b, e]) tạo thành một mô hình σ của DC.

Hình 2.3: Một mô hình của DC

Một hệ thời gian thựcS có thể được xem như một tập bất kỳ các mô hình

DC nào đó và được kí hiệu bởi M(S) Một tính chất f của hệ thống cũng xác

định một tập các mô hình DC (là các mô hình mà trên nó tính chất f đúng),

kí hiệu bởi M(f) Khi đó ta gọi hệ thống là thoả tính chất f nếu và chỉ nếu M(S) ⊆ M(f), và được kí hiệu bởi M(S) |= f hoặc S |= f.

Từ đây trở đi ta qui ước khi nói đến hệ thời gian thựcS cũng có nghĩa nói

đến tập mô hình DC nào đó thể hiện S và được kí hiệu bởi M(S).

Ví dụ minh hoạ

Để minh hoạ việc sử dụng lôgic khoảng, ta nhắc lại yêu cầu an toàn của hệbếp ga: "Hệ thống được gọi là an toàn nếu tỉ lệ thời gian rò ga không quá mộtphần hai mươi của đoạn thời gian quan sát bất kỳ không ngắn hơn 1 phút".Giả sử để bảo đảm yêu cầu này, hệ thống được thiết kế với 2 quyết định sau:

Quyết định 1: việc rò ga được phát hiện và dừng trong vòng 1 giây.

Quyết định 2: khoảng cách thời gian giữa 2 lần rò ga liên tiếp không

được bé hơn 30 giây

Trang 33

Một chương trình máy tính có thể được thiết kế phù hợp với các quyếtđịnh trên và cài vào trong bếp ga Nó tương tác với bộ cảm biến ngọn lửa đểphát hiện khi nào lửa tắt và điều khiển việc đóng, mở van ga đúng theo cácquyết định thiết kế này Vấn đề được đặt ra là cần kiểm chứng "nếu hệ thốngđược thiết kế theo 2 quyết định trên thì yêu cầu về an toàn được đảm bảo".

Để giải quyết bài toán này như đã nhắc đến trong chương 1, có 2 cách:

1 Đặc tả tất cả các quyết định thiết kế và yêu cầu cần kiểm tra bằng cáccông thức của DC, ví dụ bởi các công thức Des1, Des2 và Req Sau đó

sử dụng hệ thống chứng minh (các tiên đề và luật dẫn) của DC để chứngminh Des1 ∧ Des2 ⇒ Req.

2 Mô tả hệ thống và các quyết định thiết kế bởi một ôtômat thời gian

A, xác định tập các mô hình M(A) biểu diễn ôtômat thời gian này.

Yêu cầu cần kiểm tra được đặc tả bởi một công thức Req của DC Sau

đó thiết kế thuật toán để kiểm tra tự động σ |= Req với mọi mô hình

σ = (I, [b, e]) ∈ M(A) của hệ thống.

Giả thiết bếp ga là một hệ đơn giản chỉ gồm 2 trạng thái Leak (rò ga) và

Nonleak (không rò ga) Trong DC, các quyết định thiết kế và yêu cầu được

đặc tả bởi các công thức sau Với một mô hình (I, [b, e]) bất kỳ ta có:

Quyết định 1 - Des1: ∀ b  , e  : b ≤ b  ≤ e  ≤ e,

(∀ t ∈ [b  , e  ] Leak(t) = 1) ⇒ (e  − b  ) ≤ 1.

Quyết định 2 - Des2: ∀ b  , e  : b ≤ b  ≤ e  ≤ e,

Leak(b  ) ∧ (∀ t b  < t < e  ∧ NonLeak(t)) ∧ Leak(e  ) ⇒ (e  − b  ) > 30.

Và yêu cầu an toàn của bếp ga được đặc tả bởi công thức:

yêu cầu này cần được thoả mãn khi

Yêu cầu - Req: 60 ≤ e − b ⇒ Leak ≤ 201(e − b).

Trang 34

Một chứng minh hình thức đã được đưa ra trong [18, 35] bằng cách sửdụng các tiên đề và luật dẫn của lôgic khoảng, tức kiểm tra tính an toàn theohướng thứ nhất Và tương tự, theo hướng thứ hai (tức kiểm chứng mô hình)trong [19] các tác giả đã đưa ra thuật toán kiểm chứng lớp công thức bất biến

khoảng tuyến tính (một dạng tổng quát của Req) đối với ôtômat thời gian

thực (có thể dùng để biểu diễn hệ thống bếp ga)

Một công thức viết trong DC được gọi là công thức khoảng, nó đặc tả các tínhchất liên quan đến khoảng thời gian xuất hiện của các trạng thái trong một

hệ thống Cho đến hiện nay số lượng các lớp công thức quyết định được đãbiết trong DC là còn rất hạn chế ([18, 35, 51]) Dưới đây là hai lớp công thứckhoảng cơ bản được quan tâm trong luận án, trong đó tính quyết định đượccủa bất biến khoảng tuyến tính (LDI) cho đến hiện nay là vẫn chưa được biết.Cho A = S, s0, Σ, X, E, I là một ôtômat thời gian Một tính chất khoảng tuyến tính (linear duration properties - LDP) là một công thức DC có dạng:

ở đây s i ∈ S, c i = 0, M là các hằng số thực, s i kí hiệu cho khoảng thời gian

xuất hiện của vịtrí s i

Một bất biến khoảng tuyến tính (linear duration invariant - LDI) trên S là

một công thức mở rộng của LDP, trong đó độ dài của đoạn quan sát bịhạn

chế bởi các cận A, B cho trước Cụ thể một công thức LDI được định nghĩa:

khoảng thời gian quan sát và A, B là các hằng số thực A ≤ B (B có thể ∞).

Các công thức trên mô tả các lớp tính chất thời khoảng hay gặp trong thực

tế Ví dụ tính an toàn của hệ thống dưới dạng phát biểu "một trạng thái không

Trang 35

an toàn s nào đó sẽ không bao giờ xảy ra trong hệ thống" có thể được biểu



s ≤ 0 Hoặc tính cân bằng tương

đối (relative fairness) của 2 tiến trình p1 và p2 cũng được mô tả bởi 2 công

s i được tính từ I trên đoạn [b, e].

Định nghĩa 2.4. Cho S là hệ thời gian thực được xác định bởi tập mô hình M(S) và cho D là một công thức LDP (LDI).

• Mô hình σ = (I, [b, e]) ∈ M(S) được gọi là thoả công thức D nếu và chỉ nếu θ(σ) ≤ M với D là công thức LDP hoặc A ≤ l(σ) ≤ B ⇒ θ(σ) ≤ M với D là công thức LDI Mô hình σ thoả D được kí hiệu bởi σ |= D,

• Hệ thời gian thực S được gọi là thoả công thức D và được kí hiệu bởi

S |= D nếu và chỉnếu σ |= D, với mọi σ ∈ M(S).

Bài toán kiểm chứng mô hình trong luận án được phát biểu như sau: Chomột ôtômat thời gian A = S, s0, Σ, X, E, I được xác định bởi tập mô hình M(A), cho công thức LDP (LDI) D trên tập vịtrí S Hãy tìm một thủ tục để

quyết định liệu A |= D, tức là liệu σ |= D với mọi σ ∈ M(A).

Để giải quyết bài toán này, trong chương 3 chúng tôi trình bày một thuậttoán kiểm chứng dựa trên kỹ thuật sử dụng qui hoạch tuyến tính, trong đó

hệ thống được hạn chế đối với lớp các ôtômat thời gian thực chạy song song

Và trong chương 4, các thuật toán kiểm chứng LDP, LDI được đề xuất với hệthống là ôtômat thời gian tổng quát dựa trên kỹ thuật tìm đường đi dài nhất

và duyệt đồ thịtrọng số được xây dựng từ đồ thịđạt được nguyên

Trang 36

Chương 3

Kiểm chứng mô hình với kỹ

thuật qui hoạch tuyến tính

Nội dung chính của chương này là trình bày về phương pháp đưa bài toán kiểmchứng về một họ các bài toán qui hoạch tuyến tính mà việc giải tìm nghiệmcủa họ bài toán này cho phép chúng ta kết luận về tính thoả của hệ thống đốivới các yêu cầu

Để dễ hình dung về phương pháp, chúng ta quay lại với định nghĩa 2.2 của

ôtômat thời gian, trong đó mỗi dáng điệu ρ xét trên đoạn thời gian [0, T ] xác

định một dãy các cặp vị trí -thời gian (s0, t0)(s1, t1) (s k , t k ), với s0 là vịtrí

ban đầu của hệ thống, t0 = 0, t k = T và d i = t i+1 − t i biểu thịcho độ dài

khoảng thời gian mà hệ thống nằm tại s i trước khi chuyển đến s i+1, với mọi

i = 0 k−1 Việc kiểm tra một dáng điệu cụ thể như trên của hệ thống có thoả

công thức LDI: A ≤ l(σ) ≤ B ⇒ θ(σ) ≤ M hay không là đơn giản vì chúng ta

Từ đó có thể xét bài toán kiểm chứng dưới dạng tổng quát hơn, gọi

(s1, [a1, b1])(s2, [a2, b2]) (s k , [a k , b k]) là một dáng điệu tượng trưng mà nó biểudiễn tập các dáng điệu cụ thể (s1, d1)(s2, d2) (s k , d k ), trong đó a i ≤ d i ≤ b i.Một dáng điệu tượng trưng được gọi là thoả công thức LDI nếu mọi dángđiệu cụ thể của nó thoả công thức Để kiểm tra tính thoả của một dáng điệutượng trưng như vậy đối với LDI ta có thể giải bài toán qui hoạch tuyến tính

27

Trang 37

sau: "Tìm giá trịlớn nhất của hàm mục tiêu m

i=1 c i



s i với các ràng buộc

i ≤ x i ≤ b i , i = 1 k và so sánh kết quả với M để đạt được câu

trả lời cho bài toán kiểm chứng"

Với một hệ thống thời gian thực, nói chung số các biểu diễn dáng điệutượng trưng của chúng là vô hạn, nói cách khác số bài toán qui hoạch tuyếntính cần giải (nếu thiết lập được) là vô hạn Do vậy tư tưởng chính của phươngpháp là tìm cách chỉ kiểm chứng một số hữu hạn dáng điệu tượng trưng là

đủ thay vì phải kiểm tra hết tất cả các dáng điệu của hệ thống Để tiến hànhcông việc kiểm chứng đó, tương tự như định lý Kleene biểu diễn ôtômat, ởđây chúng ta cũng sẽ biểu diễn hệ thời gian thực bởi biểu thức chính quy thờigian, từ đó sẽ thiết lập một họ hữu hạn các bài toán qui hoạch tuyến tính vàgiải chúng

Tóm lại, có thể tóm tắt nội dung của phương pháp giải bởi các nét chínhsau

1 Biểu diễn hệ thống bằng biểu thức chính quy thời gian,

2 Đưa biểu thức chính quy thời gian bất kỳ về hợp của một số biểu thức

chính quy thời gian hữu hạn,

3 Đưa biểu thức chính quy thời gian hữu hạn về hợp của một số biểu thức

chính quy thời gian đơn giản,

4 Thiết lập tương ứng mỗi biểu thức chính quy thời gian đơn giản với một

bài toán qui hoạch tuyến tính.

5 Dựa trên nghiệm của hệ các bài toán qui hoạch tuyến tính đưa ra câutrả lời cho kết quả của bài toán kiểm chứng

Trong các đặc trưng trên, điểm 2 là khó khăn nhất khi đưa một biểu diễnbất kỳ về hợp của các biểu thức hữu hạn Trong chương này của luận án chúngtôi sẽ trình bày cách giải bài toán với một hệ thời gian thực được biểu diễnbởi một biểu thức chính quy là hình ảnh của một hệ gồm nhiều ôtômat thời

Trang 38

gian thực chạy song song Các kết quả của chương này đã được công bố trong[56] và một phần trong [57]

3.1 Biểu thức chính quy thời gian và bài toán

qui hoạch tuyến tính

3.1.1 Biểu thức chính quy thời gian - TRE

Tương tự biểu thức chính quy dùng để biểu diễn các hệ thống phi thời gian,đối với hệ thời gian thực chúng ta cũng sử dụng các biểu thức được gọi là biểuthức chính quy thời gian (Timed Regular Expression - TRE) Mỗi biểu thức

chính quy thời gian R và tập trạng thái state(R) của nó được định nghĩa đệ

qui như sau

Định nghĩa 3.1 ( TRE).

1  là một TRE và state() = ∅,

2 đối với s ∈ S, với các số thực a, b bất kỳ, 0 ≤ a ≤ b (b có thể ∞),

(s, [a, b]) là một TRE và state((s, [a, b])) = {s},

3 nếu R1, R2 là các TRE, thì R ∗

1, R1 R2, R1⊕R2 là các TRE, và state(R ∗

1) =

state(R1); state(R1 R2) = state(R1⊕ R2) = state(R1) ∪ state(R2),

4 nếu R1, R2 là các TRE, và state(R1) ∩ state(R2) = ∅, thì R1⊗ R2 là một

TRE và state(R1⊗ R2) = state(R1) ∪ state(R2).

Một TRE có dạng (s, [a, b]) được gọi là một nguyên thuỷ, ý nghĩa trực giác

của một nguyên thuỷ (s, [a, b]) là độ dài khoảng thời gian xuất hiện của trạng thái s sẽ lớn hơn hoặc bằng a và không vượt quá b Để đơn giản, một nguyên

thuỷ dạng (s, [0, ∞)) sẽ được viết là s.

Như thông thường, toán tửthể hiện phép nối (hay hợp), khi đó biểu thức

(s1, [a1, b1]) (s2, [a2, b2]) biểu thịhệ thống nằm tại s1 một khoảng thời gian bị

chặn bởi [a1, b1] (tức nếu gọi d1 là độ dài khoảng thời gian hệ nằm lại tại s1

Trang 39

thì a1 ≤ d1 ≤ b1), sau đó hệ chuyển vịtrí đến s2, tại đây hệ thống có thể nằm

lại một khoảng thời gian bịchặn bởi [a2, b2] Toán tử ⊕ thể hiện phép hoặc,

tức biểu thức (s1, [a1, b1]) ((s2, [a2, b2] ⊕ (s3, [a3, b3])) biểu thịhệ thống có thể

chuyển từ s1 đến s2 hoặc s3 Toán tử ∗ thể hiện phép lặp, có nghĩa biểu thức

(s1, [a1, b1])∗ cho phép hệ thống chuyển vịtrí về lại s1 một số lần bất kỳ Đặc

biệt đối với hệ hoạt động song song toán tử ⊗ thể hiện phép hợp song song

(hay còn gọi là phép nhân), tức biểu thức (s1, [a1, b1]) ⊗ (s2, [a2, b2]) biểu thị

thành phần thứ nhất của hệ thống chuyển vịtrí đến s1 đồng thời (cùng một

thời điểm) với thành phần thứ hai chuyển vịtrí đến s2.

Hình 3.1: Hệ chắn tàu

Trước khi đưa ra một ngữ nghĩa chính xác hơn về TRE (định nghĩa 3.2)chúng ta hãy xét một ví dụ về hệ thống dùng để điều khiển các thanh chắnchỗ giao nhau giữa đường tàu và đường bộ, được nghiên cứu trong [65] (hình3.1) và được gọi ngắn gọn là hệ chắn tàu Hệ thống gồm một bộ giám sát vàmột bộ điều khiển với các điều kiện sau:

1 Bộ giám sát có 4 trạng thái thể hiện 4 vịtrí của đoàn tàu: trạng thái Athể hiện tàu còn nằm trong vùng an toàn (ví dụ còn cách cổng chắn 1km), trạng thái B thể hiện đoàn tàu đang tiến dần đến cổng chắn (còncách cổng chắn dưới 1 km), trạng thái C thể hiện đoàn tàu đang băng

Trang 40

đoàn tàu nên nó mất ít nhất a đơn vịthời gian để vượt qua chỗ giao nhau sau

khi vào trạng thái B và khi tàu đã vượt qua, một đoàn tàu mới sẽ đến sau ít

nhất b đơn vịthời gian Điều này có nghĩa bộ giám sát phải nằm ở trạng thái

B ít nhất a đơn vịthời gian mỗi lần và tại P ít nhất b đơn vịthời gian mỗi lần Mặt khác, giả thiết rằng cần không quá c đơn vịthời gian để hạ cổng hay

bộ điều khiển nằm tại trạng thái MD không quá c đơn vịthời gian, từ đó hệ thống là an toàn khi và chỉ khi c ≤ a Hình 3.1 gồm 2 ôtômat với 2 đồng hồ

{x, y} hoạt động song song biểu diễn mô hình của hệ chắn tàu Phép chuyển

trạng thái từ A đến B đồng bộ hoá với phép chuyển từ U tới MD hoặc từ MDtới MU; phép chuyển từ C tới P sẽ đồng bộ hoá với phép chuyển từ Dn tới

MU Ràng buộc thời gian trên phép chuyển từ B đến C là {(a ≤ x)}, từ P đến

... λ.

Một hệ thời gian thực hoạt động phải tuân theo qui luật thời gian

nào thông qua ràng buộc thời gian tập đồng hồ X Một ràng buộc thời gian công thức ϕ cho theo cú pháp sau đây:...

2.2 Ơtơmat thời gian< /b>

Ơtơmat thời gian cơng cụ hữu hiệu để mơ hình kiểm chứng chứcnăng đắn hệ thời gian thực Alur Dill đề xuất [7].Các thành tựu nội lý thuyết ôtômat thời gian cơng... s2) Từ tốn kiểm chứng tính đạt

được tính chất thời điểm nói chung đưa kiểm chứng tính? ?ạt đỉnh đồ thị RG Tuy nhiên RG khơng thích hợp cho

kiểm chứng tính chất thời khoảng

Ngày đăng: 25/03/2015, 09:53

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Đoàn Văn Ban, Hồ Văn Hương (2001), "Tính khả tuần tự của giao thức điều khiển tương tranh khoá hai pha trong cơ sở dữ liệu thời gian thực", Tạp chí Tin học và Điều khiển học, T.17, S.3 (2001), Hà Nội 2001, trang 25-32 Sách, tạp chí
Tiêu đề: Tính khả tuần tự của giao thức điềukhiển tương tranh khoá hai pha trong cơ sở dữ liệu thời gian thực
Tác giả: Đoàn Văn Ban, Hồ Văn Hương (2001), "Tính khả tuần tự của giao thức điều khiển tương tranh khoá hai pha trong cơ sở dữ liệu thời gian thực", Tạp chí Tin học và Điều khiển học, T.17, S.3
Năm: 2001
[2] Phạm Hồng Thái (2002), "Kiểm tra mô hình lưới ôtômat thời gian", Kỷ yếu hội thảo quốc gia: Một số vấn đề chọn lọc của Công nghệ thông tin. Nha Trang, 6-2002, trang 278–287, NXB Khoa học kỹ thuật, Hà Nội, 9-2003 Sách, tạp chí
Tiêu đề: Kiểm tra mô hình lưới ôtômat thời gian
Tác giả: Phạm Hồng Thái
Nhà XB: NXB Khoa học kỹ thuật
Năm: 2002
[3] Phạm Hồng Thái, Mai Tuấn Linh (2003), "Khảo sát tính rời rạc hoá được của bất biến khoảng tuyến tính", Báo cáo tại hội thảo quốc gia: Một số vấn đề chọn lọc của Công nghệ thông tin, Thái Nguyên, 8-2003, trang 364-374, NXB Khoa học kỹ thuật, Hà Nội, 1-2005 Sách, tạp chí
Tiêu đề: Khảo sát tính rời rạc hoá được củabất biến khoảng tuyến tính
Tác giả: Phạm Hồng Thái, Mai Tuấn Linh
Nhà XB: NXB Khoahọc kỹ thuật
Năm: 2003
[4] Phạm Hồng Thái, Mai Tuấn Linh (2004), "Về bài toán kiểm chứng tính chất khoảng tuyến tính", Báo cáo tại hội thảo quốc gia: Một số vấn đề chọn lọc của Công nghệ thông tin. Đà nẵng, 8-2004 Sách, tạp chí
Tiêu đề: Về bài toán kiểm chứng tính chấtkhoảng tuyến tính
Tác giả: Phạm Hồng Thái, Mai Tuấn Linh
Năm: 2004
[5] R. Alur, C. Courcoubetis, and D.L. Dill (1990), "Model checking for real-time systems", Proceedings of the Fifth Annual Symposium on Logic in Computer Science, pp. 414– 425. IEEE Computer Society Press, 1990 Sách, tạp chí
Tiêu đề: Model checking for real-timesystems
Tác giả: R. Alur, C. Courcoubetis, and D.L. Dill
Năm: 1990
[6] R. Alur, C. Courcoubetis, T.A. Henzinger (1993), "Computing accumulated delays in real-time systems", Proceedings of the Fifth Conference on Computer- Aided Verification, LNCS 818, pp. 181–197, 1993 Sách, tạp chí
Tiêu đề: Computing accumulateddelays in real-time systems
Tác giả: R. Alur, C. Courcoubetis, T.A. Henzinger
Năm: 1993
[7] R. Alur and D.L. Dill (1994), "A Theory of Timed Automata", Theoretical Computer Science, pp. 183–235, 1994 Sách, tạp chí
Tiêu đề: A Theory of Timed Automata
Tác giả: R. Alur and D.L. Dill
Năm: 1994
[8] Rajeev Alur (1999), "Timed Automata", Proceedings of 11 th International Conference on Computer-Aided Verification, LNCS 1633, pp. 1–22, Springer- Verlag, 1999 Sách, tạp chí
Tiêu đề: Timed Automata
Tác giả: Rajeev Alur
Năm: 1999
[9] R. Alur, L. Fix, and T.A. Henzinger (1999), "Event-clock automata: A deter- minizable class of timed automata", Theoretical Computer Science 211:213–273, 1999 Sách, tạp chí
Tiêu đề: Event-clock automata: A deter-minizable class of timed automata
Tác giả: R. Alur, L. Fix, and T.A. Henzinger
Năm: 1999
[10] E. Asarin, O. Maler, P. Caspi (1997) "A Kleene Theorem for Timed Automata", G. Winskel (Eds.), In Proceedings LICS’97, 1997 Sách, tạp chí
Tiêu đề: A Kleene Theorem for Timed Automata
[11] E. Asarin, O. Maler, A. Pnueli (1998), "On Discretization of Delays in Timed Automata and Digital Circuits", R. de Simone and D. Sangiorgi (Eds.), In Proceedings Concur’98, 470–484, LNCS 1466, Springer-Verlag, 1998 Sách, tạp chí
Tiêu đề: On Discretization of Delays in TimedAutomata and Digital Circuits
Tác giả: E. Asarin, O. Maler, A. Pnueli
Năm: 1998
[13] J. Bengtsson, K. Larsen, F. Larson, P. Pettersson, W. Yi and C. Weise (1998),"New generation of UPPAAL", Proceedings of the International Workshop on Software Tools for Technology Transfer, Aalborg, Denmark, July 1998 Sách, tạp chí
Tiêu đề: New generation of UPPAAL
Tác giả: J. Bengtsson, K. Larsen, F. Larson, P. Pettersson, W. Yi and C. Weise
Năm: 1998
[14] A. Bouajjani, S.Tripakis, S.Yovine (1997), "On-the-fly symbolic model-checking for real-time systems", Proceedings of the 18 th IEEE Real Time Systems Sym- posium, RTSS’97, San Francisco, CA, USA, December 1997. IEEE Computer Society Press 1997 Sách, tạp chí
Tiêu đề: On-the-fly symbolic model-checkingfor real-time systems
Tác giả: A. Bouajjani, S.Tripakis, S.Yovine
Năm: 1997
[15] Patricia Bouyer (2002), "Timed Automata May Cause Some Troubles", Re- search Report LSV-02-9, July 2002 Sách, tạp chí
Tiêu đề: Timed Automata May Cause Some Troubles
Tác giả: Patricia Bouyer
Năm: 2002
[16] M. Bozga, C. Daws, O. Maler, A. Olivero, S. Tripakis, S. Yovine (1998), "Kro- nos: A Model-Checking Tool for Real-Time Systems", Proceedings of 10 th In- ternational Conference on Computer Aided Verification, Vancouver, Canada", Vol. 1427, Springer-Verlag, A. J. Hu and M. Y. Vardi eds., pp. 596–600, 1998 Sách, tạp chí
Tiêu đề: Kro-nos: A Model-Checking Tool for Real-Time Systems", Proceedings of 10th In-ternational Conference on Computer Aided Verification, Vancouver, Canada
Tác giả: M. Bozga, C. Daws, O. Maler, A. Olivero, S. Tripakis, S. Yovine
Năm: 1998
[17] Victor A. Braberman and Dang Van Hung (1998), "On Checking Timed Automata for Linear Duration Invariants" Technical Report 135, UNU/IIST, P.O.Box 3058, Macau, February 1998. Proceedings of the 19th Real-Time Sys- tems Symposium RTSS’98, December 22, 1998, Madrid, Spain, IEEE Computer Society Press 1998, pp. 264–273 Sách, tạp chí
Tiêu đề: On Checking TimedAutomata for Linear Duration Invariants
Tác giả: Victor A. Braberman and Dang Van Hung
Năm: 1998
[18] Z. Chaochen, C.A.R. Hoare, and A.P. Ravn (1994), "A calculus of durations", Information Processing Letters, 40(5):269–276, 1994 Sách, tạp chí
Tiêu đề: A calculus of durations
Tác giả: Z. Chaochen, C.A.R. Hoare, and A.P. Ravn
Năm: 1994
[19] Zhou Chaochen, Zhang Jingzhong, Yang Lu, and Li Xiaoshan (1994), "Linear Duration Invariants", Research Report 11, UNU/IIST, P.O.Box 3088, Macau, July 1994. Published in Formal Techniques in Real-Time and Fault-Tolerant systems, LNCS 863, 1994 Sách, tạp chí
Tiêu đề: LinearDuration Invariants
Tác giả: Zhou Chaochen, Zhang Jingzhong, Yang Lu, and Li Xiaoshan
Năm: 1994
[20] C. Choffrut and M. Goldwurm (2000), "Timed Automata with Periodic Clock Constraints", Journal of Automata, Languages and Combinatorics, vol.5(4):371–404, 2000 Sách, tạp chí
Tiêu đề: Timed Automata with PeriodicClock Constraints
Tác giả: C. Choffrut and M. Goldwurm
Năm: 2000
[21] Kim Yong Chun and Dang Van Hung (2004), "Verifying Real-Time Systems Us- ing Untimed Model Checking Tools", Technical Report 302, UNU-IIST, P.O.Box 3058, Macau, June 2004 Sách, tạp chí
Tiêu đề: Verifying Real-Time Systems Us-ing Untimed Model Checking Tools
Tác giả: Kim Yong Chun and Dang Van Hung
Năm: 2004

HÌNH ẢNH LIÊN QUAN

Hình 2.2: Ôtômat thời gian. - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 2.2 Ôtômat thời gian (Trang 28)
Hình 2.3: Một mô hình của DC. - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 2.3 Một mô hình của DC (Trang 32)
Hình 3.1: Hệ chắn tàu. - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 3.1 Hệ chắn tàu (Trang 39)
Hình 3.2: Một dáng điệu của hệ chắn tàu. - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 3.2 Một dáng điệu của hệ chắn tàu (Trang 41)
Hình 4.1: Mô hình DC của ôtômat thời gian. - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 4.1 Mô hình DC của ôtômat thời gian (Trang 63)
Hình 4.2: Các lớp mô hình của ôtômat thời gian A . - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 4.2 Các lớp mô hình của ôtômat thời gian A (Trang 64)
Hình 4.3 biểu diễn một trường hợp nguyên hoá mô hình σ trên đoạn [b, e] - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 4.3 biểu diễn một trường hợp nguyên hoá mô hình σ trên đoạn [b, e] (Trang 69)
Hình 4.4: Đồ thịvùng đạt được nguyên RG . - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 4.4 Đồ thịvùng đạt được nguyên RG (Trang 75)
Hình 4.6: Đồ thịtrọng số G từ đồ thịvùng đạt được RG . - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 4.6 Đồ thịtrọng số G từ đồ thịvùng đạt được RG (Trang 87)
Hình 4.7: Đường đi trong đồ thịtrọng số G . - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 4.7 Đường đi trong đồ thịtrọng số G (Trang 88)
Bảng 4.3: Thuật toán kiểm chứng LDI với đỉnh xuất phát cố định - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Bảng 4.3 Thuật toán kiểm chứng LDI với đỉnh xuất phát cố định (Trang 92)
Hình 4.8: Ôtômat đạt được của hệ chắn tàu. - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
Hình 4.8 Ôtômat đạt được của hệ chắn tàu (Trang 93)
Bảng A.2: Đồ thịtrọng số phục vụ kiểm chứng LDP với DATA1 - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
ng A.2: Đồ thịtrọng số phục vụ kiểm chứng LDP với DATA1 (Trang 113)
Bảng A.1: Đồ thịvùng đạt được nguyên của DATA1 - Một số phương pháp kiểm chứng tính đúng đắn của hệ thời gian thực bằng thuật toán
ng A.1: Đồ thịvùng đạt được nguyên của DATA1 (Trang 113)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w