1. Trang chủ
  2. » Lịch sử lớp 12

Ứng dụng lý thuyết đồ thị để khảo sát đặc trưng một số lớp ngôn ngữ và điều khiển tương tranh

16 10 0

Đ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 16
Dung lượng 410,13 KB

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

Nội dung

TËp hîp c¸c tõ do mét biÓu thøc chÝnh quy biÓu diÔn ®-îc gäi lµ ng«n ng÷ sinh bëi biÓu thøc chÝnh quy.. Theo §Þnh lý Kleene, líp c¸c ng«n ng÷ sinh bëi c¸c biÓu thøc chÝnh quy trïng víi l[r]

Trang 1

đại học quốc gia hà nội tr-ờng đại học khoa học tự nhiên

vũ trọng quế

ứng dụng lý thuyết đồ thị để khảo sát

đặc tr-ng một số lớp ngôn ngữ

và điều khiển t-ơng tranh

Chuyên ngành: Đảm bảo Toán học cho Máy tính và Hệ thống tính toán Mã số: 62.46.35.01

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

Ng-ời h-ớng dẫn khoa học

1 GS.TS Đặng Huy Ruận

2 PGS.TS Hoàng Chí Thành

Hà Nội - 2009

Trang 2

4

mục lục

Trang

1.2.3 Một số công cụ sinh ngôn ngữ chính quy

và mối liên hệ giữa chúng

26

Ch-ơng 2 Các thuật toán điều khiển t-ơng tranh

trên hệ mạng và độ phức tạp của chúng

49

Trang 3

5

2.2 Thuật toán điều khiển t-ơng tranh trên các hệ mạng điều kiện

- biến cố

51

2.2.2 Các b-ớc t-ơng tranh trên hệ mạng điều kiện - biến cố 53

2.3 Thuật toán điều khiển t-ơng tranh trên các hệ mạng vị trí -

chuyển

59

Ch-ơng 3 Độ phức tạp otomat của các thuật toán

đoán nhận ngôn ngữ

68

3.4.2 Otomat hữu hạn đơn định đoán nhận ngôn ngữ

sinh bởi chùm đầu

84

Danh mục các công trình khoa học của tác giả

liên quan đến luận án

98

Trang 4

mở đầu

Lý thuyết đồ thị là một ngành khoa học ra đời rất sớm và có nhiều ứng dụng Nó đã trở thành công cụ đắc lực cho việc thiết kế các thuật toán, mô hình hình học và phân tích các hệ thống, biểu diễn các quá trình của hệ thống

Việc tổ chức thực hiện một cách nhanh chóng các quá trình xảy ra trên một hệ thống phân tán là một trong những nội dung của bài toán điều khiển hệ thống Ngoài kỹ thuật đồng bộ hoá thì kỹ thuật thực thi song song đã đ-ợc xây dựng thành công bởi I J Aalbersberg, G Rozenberg nhờ ngôn ngữ vết và bởi Hoàng Chí Thành nhờ phép đẩy trái Những kết quả này gợi ý cho tác giả ứng dụng lý thuyết đồ thị để xây dựng các thuật toán điều khiển tối -u các quá trình tuần tự trên một số hệ thống phân tán đ-ợc biểu diễn bởi các hệ mạng điều kiện - biến cố và hệ mạng vị trí - chuyển

Từ một hệ mạng đã cho chúng ta có thể xây dựng hành vi tuần tự của hệ Chúng ta có thể xây dựng đồ thị có h-ớng gán nhãn biểu diễn hành vi tuần tự của hệ mạng Trong tr-ờng hợp hành vi tuần tự có chứa các quá trình vô hạn thì kỹ thuật phủ đỉnh sẽ giúp ta hữu hạn hoá đồ thị biểu diễn hành vi của hệ

Để điều khiển t-ơng tranh các quá trình trên hệ mạng, chúng tôi xây dựng kỹ thuật ghép cạnh trên đồ thị biểu diễn hành vi của hệ mạng này Sau mỗi lần ghép cạnh ta nhận đ-ợc các quá trình với các b-ớc t-ơng tranh có nhiều hành động hơn và số b-ớc trên một quá trình sẽ giảm đi Đến khi không thể ghép cạnh đ-ợc nữa thì các b-ớc t-ơng tranh mà ta nhận đ-ợc trở thành cực đại và số b-ớc của quá trình là ít nhất có thể Khi đó, các quá trình với các b-ớc t-ơng tranh cực đại đ-ợc thực thi trong môi tr-ờng song song với thời gian ít nhất Đó chính là ý nghĩa của điều khiển tối -u mà chúng ta mong muốn

Ngôn ngữ sinh bởi hệ mạng nói riêng và ngôn ngữ hình thức nói chung đều có các cơ chế sinh ngôn ngữ Gần

đây, chúng ta cũng đã xây dựng thêm đ-ợc một số công cụ khác để sinh ngôn ngữ chính quy nh-: nguồn, biểu thức chính quy, sơ đồ sinh, chùm đầu Do vậy, việc nghiên cứu, khảo sát, tính toán độ phức tạp otomat của một số lớp ngôn ngữ đ-ợc sinh ra từ các công cụ trên vẫn là một đề tài đang đ-ợc nhiều ng-ời quan tâm M Linna đã xác định độ phức tạp otomat cho các thuật toán đoán nhận các -ngôn ngữ phi ngữ cảnh Đô phức tạp otomat của một số ngôn ngữ cũng

đ-ợc nghiên cứu bởi Đặng Huy Ruận, Đỗ Long Vân và Phan Trung Huy ở Việt Nam, việc nghiên cứu điều khiển hệ thống t-ơng tranh và độ phức tạp của ngôn ngữ hình thức đ-ợc tập trung nghiên cứu tại Viện Toán học và Tr-ờng Đại học Khoa học Tự nhiên, Đại học Quốc gia Hà Nội

Mục tiêu của luận án là sử dụng đồ thị định h-ớng gán nhãn để xây dựng một số thuật toán điều khiển t-ơng tranh các quá trình xảy ra trên các hệ mạng điều kiện - biến cố và trên các hệ mạng vị trí - chuyển Tác giả cũng sử dụng đồ thị để biểu diễn một số công cụ sinh ra ngôn ngữ nh-: nguồn, biểu thức chính quy, đồ thị sinh, sơ đồ sinh và chùm đầu và nghiên cứu đánh giá cận trên độ phức tạp otomat của các công cụ này Những kết quả đạt đ-ợc trên các ngôn ngữ sinh bởi các công cụ này rất có ý nghĩa

Trong bản luận án này chúng tôi đã đóng góp đ-ợc những kết quả chính sau đây:

1) Mô tả bài toán điều khiển t-ơng tranh các quá trình trên một hệ thống

2) Xây dựng đồ thị các tr-ờng hợp và ứng dụng nó để xây dựng thuật toán điều khiển t-ơng tranh các quá trình trên hệ mạng điều kiện - biến cố

3) Cải tiến thuật toán xây dựng đồ thị phủ của một hệ mạng vị trí - chuyển và ứng dụng nó để xây dựng thuật toán điều khiển t-ơng tranh trên các quá trình tuần tự xảy ra trên hệ mạng vị trí - chuyển

4) Tính toán cận trên của độ phức tạp otomat đoán nhận các ngôn ngữ sinh bởi nguồn, biểu thức chính quy, sơ

đồ sinh và chùm đầu

Ch-ơng 1 các khái niệm cơ sở

Trong ch-ơng này, chúng tôi nhắc lại một số khái niệm và các kết quả rất cơ bản của lý thuyết đồ thị, lý thuyết ngôn ngữ hình thức và otomat cùng khái niệm mạng Petri, hệ mạng điều kiện - biến cố và hệ mạng vị trí - chuyển 1.1 Đại c-ơng về đồ thị

1.1.1 Định nghĩa đồ thị

Định nghĩa 1.1: Đồ thị là một cặp G = (V, E), trong đó: V là tập hợp các đỉnh và E  V  V là tập hợp các cạnh Hai đỉnh cùng nằm trên một cạnh đ-ợc gọi là kề nhau Do vậy, ta có thể định nghĩa đồ thị bằng ánh xạ kề nh- sau

Định nghĩa 1.2: Đồ thị là một cặp G = (V, F), trong đó: V là tập hợp các đỉnh và F : V  2V

, đ-ợc gọi là ánh xạ kề

Ký hiệu số đỉnh của một đồ thị là n và số cạnh của đồ thị là m

1.1.2 Đ-ờng đi và chu trình

Định nghĩa 1.4: Đ-ờng đi trong đồ thị G là một dãy các đỉnh của đồ thị: < x 1 , x 2 , , x i , x j+1 , , x k-1 , x k > sao cho, mỗi đỉnh trong dãy (không kể đỉnh đầu tiên) kề với đỉnh tr-ớc nó bằng một cạnh nào đó, nghĩa là: i = 2, 3, , k-1, k

: (x i-1 ,x i)  E

Chu trình là một đ-ờng đi khép kín

1.1.3 Một số cách biểu diễn đồ thị trong máy tính

a) Biểu diễn đồ thị bằng ma trận kề

Ma trận vuông An x n đ-ợc gọi là ma trận kề của đồ thị G nếu:

i, j  V : A[i,j] = d, với d là số các cạnh nối đỉnh i với đỉnh j trong G

b) Biểu diễn đồ thị bằng các danh sách kề

Với mỗi đỉnh của đồ thị ta xây dựng một danh sách liên kết chứa các đỉnh kề với đỉnh này Một đồ thị đ-ợc

biểu diễn bằng một mảng các danh sách kề

1.1.4 Bài toán tìm đ-ờng đi trên đồ thị

Trang 5

2

Bài toán: Cho đồ thị G và hai đỉnh a, b thuộc G Có hay không một đ-ờng đi từ đỉnh a đến đỉnh b trên đồ thị G?

Thuật toán 1.1 (Xác định đ-ờng đi)

Đầu vào: Đồ thị G = (V,E) và ha đỉnh a, b thuộc V

Đầu ra: Câu trả lời: ”có / không”

1) Xây dựng ma trận kề A cho đồ thị G

2) Tính ma trận tổng các luỹ thừa T = A1

+ A2

+ + A n-1

.

3) Nếu T[a,b]  1 thì kết luận là có đ-ờng đi từ đỉnh a đến đỉnh b, ng-ợc lại thì kết luận là không có

Hiển nhiên, thuật toán trên có độ phức tạp là O(n4

)

1.1.5 Đồ thị gán nhãn

Giả sử G = (V, E) là một đồ thị và L là một tập hợp không rỗng nào đó Hàm n : E  L đ-ợc gọi là hàm gán nhãn trên các cạnh của đồ thị đã cho Khi đó, mỗi cạnh e  E sẽ đ-ợc gán nhãn n(e)  L

1.1.6 Các thuật toán duyệt đồ thị

Phép duyệt đồ thị là một cách liệt kê tất cả các đỉnh của đồ thị này thành một danh sách tuyến tính

1) Duyệt đồ thị theo chiều sâu

Sử dụng stack S để l-u trữ các đỉnh đang duyệt và danh sách L chứa kết quả

Thuật toán 1.4 (Duyệt đồ thị theo chiều sâu)

Dữ liệu: Mảng các danh sách kề DK của đồ thị G

Kết quả: Danh sách L tất cả các đỉnh của đồ thị G

1 procedure D_SAU2 (v) ;

2 begin

5 L := L v ; { thêm v vào danh sách L }

7 push v onto S ; {nạp v lên đỉnh của S}

14 L := L x ;

20 end ;

21 BEGIN { Ch-ơng trình chính }

22 for v  V do Duyet [v] := false ;

23 L :=  ;

25 if NOT Duyet [v] then D_SAU2 (v) ;

26 END

Độ phức tạp của thật toán duyệt theo chiều sâu là: O(n+m)

2) Duyệt đồ thị theo chiều rộng

Sử dụng hàng đợi Q để l-u trữ các đỉnh đang đ-ợc duyệt và và danh sách L chứa kết quả

Thuật toán 1.5 (Duyệt đồ thị theo chiều rộng)

Dữ liệu: Mảng các danh sách kề DK của đồ thị G

Kết quả: Danh sách L tất cả các đỉnh của đồ thị G

1 procedure D_RONG (v) ;

2 begin

4 enqueue v into Q ; {nạp v vào cuối hàng đợi Q}

10 L := L x ;

Trang 6

3

18 end ;

19 BEGIN { Ch-ơng trình chính }

20 for v  V do Duyet [v] := false ;

21 L :=  ;

24 END

Độ phức tạp của thật toán duyệt theo chiều rộng

Thuật toán duyệt đồ thị theo chiều rộng cũng có độ phức tạp là: O(n+m)

1.2 Ngôn ngữ hình thức và otomat

1.2.1 Bảng chữ cái, từ và ngôn ngữ

Một tập  các ký hiệu đ-ợc gọi là bảng chữ cái

Từ là một dãy các chữ cái khác rỗng thuộc một bảng chữ cái

Tích ghép của hai từ  và , ký hiệu là ., là xâu đ-ợc tạo thành bằng cách ghép  vào ngay sau 

Ngôn ngữ là tập hợp các từ trên một bảng chữ cái nào đó

1.2.2 Một số phép toán trên ngôn ngữ

1) Tích ghép của hai ngôn ngữ

2) Hợp của hai ngôn ngữ

3) Giao của hai ngôn ngữ

4) Hiệu của hai ngôn ngữ

5) Phần bù của ngôn ngữ

6) Lặp của ngôn ngữ

7) Lặp cắt của ngôn ngữ

1.2.3 Một số công cụ sinh ngôn ngữ chính quy và mối quan hệ giữa chúng

a) Văn phạm chính quy

Định nghĩa 1.6: Văn phạm là bộ bốn G = (, V, P, S), trong đó:

-  là bảng chữ cái chính,

- V là bảng chữ cái phụ,

- S là một chữ cái phụ và đ-ợc gọi là ký hiệu khởi đầu,

- P là tập hữu hạn các quy tắc dẫn xuất có dạng   , với ,  ( V)* và   , đồng thời từ  phải chứa chữ cái phụ

Ta nói rằng từ x dẫn trực tiếp ra từ y, ký hiệu x  y, nếu tồn tại các từ x 1 , x 2 , u, v  (V)*

sao cho x = x 1 u x 2

, y = x 1 v x 2 và u  v là một quy tắc dẫn xuất trong P Ta nói rằng từ x dẫn ra từ y, ký hiệu x

*

y, nếu tồn tại một dãy

các từ x 0 , x 1 , , x k  (V)*

với k 0, sao cho x 0 = x, x k = y và x i  xi+1, với 0  i k-1

Ngôn ngữ L(G) sinh bởi văn phạm G đ-ợc định nghĩa nh- sau: L(G) = { w  w  *

, S

*

w}

trong đó 1, 2  ( V)*, A  V,   ( V)+

và   

Quy tắc cảm ngữ cảnh mà 1 = 2 =  đ-ợc gọi là quy tắc phi ngữ cảnh Văn phạm G với mọi quy tắc đều là

quy tắc phi ngữ cảnh thì đ-ợc gọi là văn phạm phi ngữ cảnh

Văn phạm phi ngữ cảnh mà mỗi quy tắc của nó có dạng: A  aB hoặc A  a với A, B  V và a   đ-ợc

gọi là văn phạm chính quy Ngôn ngữ sinh bởi văn phạm chính quy đ-ợc gọi là ngôn ngữ chính quy

N Chomsky đã phân các văn phạm thành 4 lớp nh- sau:

- Lớp văn phạm loại 0 : bao gồm các văn phạm tổng quát

- Lớp văn phạm loại 1 : bao gồm các văn phạm cảm ngữ cảnh

- Lớp văn phạm loại 2 : bao gồm các văn phạm phi ngữ cảnh

- Lớp văn phạm loại 3 : bao gồm các văn phạm chính quy

Lớp có số hiệu bé chứa các lớp có số hiệu lớn hơn

b) Nguồn và một số thuật toán trên nguồn

Nguồn là một công cụ sinh ngôn ngữ dựa trên lý thuyết đồ thị và đ-ợc định nghĩa nh- sau

Định nghĩa 1.7: Nguồn là một đa đồ thị có h-ớng gán nhãn I = (V, E, s 0, F, , n), gồm V là tập các đỉnh và E là tập các

cung Trên đồ thị có một đỉnh đặc biệt s 0 gọi là đỉnh vào và đặt trong ô tròn có mũi tên, một tập con F các đỉnh đ-ợc gọi

là các đỉnh kết thúc và đặt trong các ô hình chữ nhật Hàm gán nhãn n : E   {} gán cho mỗi cung của đồ thị một chữ cái thuộc tập  {}

Trang 7

4

Cung của nguồn I mà trên đó gán ký hiệu rỗng  đ-ợc gọi là cung rỗng Cung trên đó gán một chữ cái thuộc bảng chữ cái  đ-ợc gọi là cung cốt yếu Đỉnh có cung cốt yếu đi vào hoặc đi ra đ-ợc gọi là đỉnh cốt yếu Ký hiệu tập

các đỉnh cốt yếu của nguồn I là D(I)

Ngôn ngữ sinh bởi một nguồn đ-ợc xác định nh- sau:

Giả sử d = < x, s 1 , s 2 , , s n , y > là một đ-ờng đi nào đó trên nguồn I Trên cung (x, s 1 ) có nhãn là chữ cái a 1, trên cung

(s 1 , s 2 ) có nhãn là chữ cái a 2 , trên cung cuối cùng có nhãn là chữ cái a n+1 , với a i  ( {}) Khi đó, từ w = a1 a 2 …

a n a n+1 đ-ợc gọi là từ sinh bởi đ-ờng đi d Ký hiệu LI(x, y) là tập tất cả các từ đ-ợc sinh bởi các đ-ờng đi từ đỉnh x tới

đỉnh y Tập LI(x, y) đ-ợc xác định đệ quy nh- sau:

1)   LI(x, y)

2) Nếu từ w  LI(x, z) và từ đỉnh z sang đỉnh y có cung với nhãn là chữ cái a  ({}) thì từ wa  LI(x, y)

Định nghĩa 1.8: Tập L(I) = {w  * w  LI(s 0 , s), s  F} đ-ợc gọi là ngôn ngữ sinh bởi nguồn I

Hai nguồn đ-ợc gọi là t-ơng đ-ơng nếu chúng sinh ra cùng một ngôn ngữ

Một số phép toán trên nguồn

Xây dựng nguồn K đơn định, đầy đủ trên bảng chữ cái  t-ơng đ-ơng với nguồn I đã cho

Thuật toán 1.6 (Đơn định và đầy đủ hoá nguồn)

Với mỗi chữ cái a   và mỗi đỉnh s  V(I) ta xây dựng tập hợp: TI(s,a) = {u  D(I)  a  LI(s,u)} Với mỗi

tập con các đỉnh cốt yếu C  D(I) và mỗi a  , ta xây dựng tập: HI(C, a) = T ( a s , )

C s II

Tập này chính là tập các

đỉnh cốt yếu kề với đỉnh thuộc C nhờ các cung có nhãn là a

Bây giờ ta xây dựng nguồn đơn định K nh- sau:

Đỉnh vào của K là đỉnh {s 0 } với s 0 là đỉnh vào của nguồn I Với mỗi đỉnh C  D(I) ta xác định HI(C, a) và vẽ một cung

đi từ đỉnh C sang đỉnh HI(C, a) với nhãn là chữ cái a Tập đỉnh kết thúc F(K) = {C  V(I)  C  F(I)  }

Với cách xây dựng trên thì nguồn K là đơn định, đầy đủ và t-ơng đ-ơng với nguồn I đã cho

Định nghĩa 1.9: Nguồn K trên bảng chữ cái  sinh ra ngôn ngữ là phần bù của ngôn ngữ L(I) đ-ợc gọi là nguồn bù của nguồn I

Thuật toán 1.7 (Xây dựng nguồn bù)

Ta đổi tất cả các đỉnh không kết thúc thành đỉnh kết thúc và ng-ợc lại đổi đỉnh kết thúc thành đỉnh không kết thúc thì nguồn nhận đ-ợc sẽ sinh ngôn ngữ bù của ngôn ngữ sinh bởi nguồn ban đầu

Giả sử có các nguồn I1 và I2 Ta cần xây dựng nguồn I sinh ra ngôn ngữ là giao của các ngôn ngữ do I1, I2 sinh ra

Thuật toán 1.8 (Xây dựng nguồn giao)

Để tìm nguồn giao I của các nguồn I1 và I2 ta xây dựng các đỉnh và các cung của nó nh- sau:

1) Đỉnh vào của nguồn I là: s 0 (I) = ({s 0(I1)}, {s 0(I2)})

2) Giả sử B = (C1, C2), trong đó C1  D(I1), C2  D(I2) là các tập con các đỉnh cốt yếu và a là chữ cái thuộc 

Khi đó, ta xác định đỉnh C = (HI1(C1,a), HI2(C2,a)) và thêm một cung đi từ đỉnh B sang đỉnh C với nhãn là chữ cái a

3) Đỉnh (S, R) nào đó trong tập đỉnh của nguồn I vừa xây dựng đ-ợc xem là đỉnh kết thúc khi và chỉ khi: S  F(I1)   và R  F( I2)   Với cách xây dựng nh- trên, nguồn I sinh ra ngôn ngữ là giao của các ngôn ngữ do I1 và I2

sinh ra

Với hai nguồn I1 và I2 đã cho, ta cần xây dựng nguồn I sinh ra ngôn ngữ là tích ghép của các ngôn ngữ do I1 và

I2 sinh ra

Thuật toán 1.9 (Xây dựng nguồn tích ghép)

Để xây dựng nguồn tích ghép I của các nguồn I1 và I2 ta giữ nguyên cấu trúc của I1, I2 Lấy đỉnh vào của I1 là

đỉnh vào của I, các đỉnh kết thúc của nguồn I2 là các đỉnh kết thúc của nguồn I Đồng thời, từ mỗi đỉnh kết thúc của nguồn I1 ta vẽ một cung rỗng đi tới đỉnh vào của nguồn I2

Với cách xây dựng nh- trên, ngôn ngữ sinh bởi nguồn I là tích ghép của ngôn ngữ đ-ợc sinh bởi nguồn I1 và nguồn I2

c) Otomat hữu hạn và ngôn ngữ đ-ợc đoán nhận bởi otomat hữu hạn

Định nghĩa 1.10: Otomat hữu hạn đơn định trên bảng chữ cái  là một bộ năm: A = (Q, , q0, , F), trong đó:

- Q là một tập hữu hạn các trạng thái,

-  là bảng chữ cái vào,

-  : Q    Q , đ-ợc gọi là hàm chuyển trạng thái,

- q 0  Q , đ-ợc gọi là trạng thái khởi đầu,

- F  Q , đ-ợc gọi là tập trạng thái kết thúc của otomat

Mỗi lần chuyển trạng thái trong otomat hữu hạn đơn định ta chỉ nhận đ-ợc một trạng thái kế tiếp Ta mở rộng hàm chuyển  thành ánh xạ ’ : Q  *  Q nh- sau:

a) q  Q đặt ’(q, ) = q ;

b) q  Q, a  , x  * đặt ’(q, xa) = ((q,x),a)

Ngôn ngữ đ-ợc đoán nhận bởi otomat hữu hạn đơn định

Định nghĩa 1.11: Tập tất cả các từ trên bảng chữ cái vào  mà mỗi từ này đ-a otomat A từ trạng thái khởi đầu đến một

trong những trạng thái kết thúc: L(A) = {x  * ’(q0 ,x)  F} đ-ợc gọi là ngôn ngữ đ-ợc đoán nhận bởi otomat hữu hạn đơn định A

Sau mỗi lần chuyển trạng thái ta có thể nhận đ-ợc không chỉ một trạng thái mà là một tập con các trạng thái

Trang 8

5

Định nghĩa 1.12: Otomat hữu hạn không đơn định trên bảng chữ cái  là một bộ năm A = (Q, , q0 , , F), trong đó:

- Q là tập hữu hạn các trạng thái,

-  là bảng chữ cái vào,

-  : Q    2Q

, đ-ợc gọi là hàm chuyển trạng thái,

- q 0  Q , đ-ợc gọi là trạng thái khởi đầu,

- F  Q , đ-ợc gọi là tập trạng thái kết thúc của otomat

Định nghĩa 1.13: Otomat hữu hạn A đ-ợc gọi là đầy đủ nếu hàm chuyển trạng thái xác định khắp nơi trên tập Q   Nghĩa là:

q  Q, a   đều có (q,a)  

hữu hạn, đơn định và đầy đủ t-ơng đ-ơng với A nh- sau:

i) Để xây dựng hàm chuyển cho otomat đơn định A’ ta xây dựng hàm hai biến TA : 2Q    2Q

nh- sau:

- q  Q, a   : TA({q},a) = {q'  q'  (q,a)}

- B  Q , a  , TA(B,a) =

B q

T

) , (

ii) Đặt otomat A’ = (Q’, , q0 ’, f, P) với:

Q’ = 2Q

, q 0 ’ = {q 0 }, P = {q’  Q’  q’  F  } và hàm chuyển f đ-ợc xác định nh- sau: q’  Q’ , a  , f(q’,a)

= TA(q',a)

Với cách xây dựng nh- trên, dễ dàng chỉ ra rằng otomat A’ là otomat hữu hạn đơn định đầy đủ và L(A’) =

L(A)

d) Sự t-ơng đ-ơng giữa nguồn và otomat hữu hạn

Từ mỗi nguồn I ta đều có thể xây dựng một otomat hữu hạn A t-ơng đ-ơng với nó và ng-ợc lại

Thuật toán 1.10 (Xây dựng otomat t-ơng đ-ơng với nguồn)

1) Xây dựng hàm TI : 2D(I)    2D(I)

nh- sau:

- a   : TI(,a) =  ,

- s  (D(I)  {s0}), a   : TI({s},a) = {s'  D(I)  a  LI(s,s')},

- q  D(I), a   : TI(q,a) =

q s

T

) }, ({ 2) Xác định trạng thái khởi đầu và tập trạng thái kết thúc:

- Tập {s 0 } là trạng thái khởi đầu của otomat A và ký hiệu là q 0

- Tập trạng thái kết thúc F là tập {q  D(I)  q F(I)  }{q 0} nếu   L(I) và là tập {q  D(I) q  F(I)  } nếu   L(I)

3) Otomat A = (Q, , q0, , F) với Q = 2D(I) là tập trạng thái và hàm chuyển  đ-ợc xác định nh- sau:

q  Q, a   : (q,a) = TI(q,a)

Otomat A t-ơng đ-ơng với nguồn I đã cho Bây giờ ta thực hiện điều ng-ợc lại

Thuật toán 1.11 (Xây dựng nguồn t-ơng đ-ơng với otomat)

1) Lấy các điểm trên mặt phẳng t-ơng ứng với các trạng thái của otomat và đặt tên cho các điểm này bằng các

ký hiệu trạng thái của otomat A Đỉnh vào của nguồn I là trạng thái khởi đầu của otomat Đỉnh đ-ợc xem là đỉnh kết thúc của nguồn khi trạng thái của otomat A t-ơng ứng với nó là trạng thái kết thúc

2) q, q'  Q , a   : có cung nối từ đỉnh q sang đỉnh q' gán nhãn là ký hiệu a  q'  (q,a)

Nguồn I nhận đ-ợc t-ơng đ-ơng với otomat A đã cho

1.3 Hệ Mạng

Hệ mạng là một mô hình toán học th-ờng đ-ợc dùng để biểu diễn các hệ thống phân tán

1.3.1 Mạng Petri

Định nghĩa 1.14: Bộ ba N = (S, T; F) đ-ợc gọi là một mạng Petri nếu:

1) S và T là hai tập hợp không giao nhau

2) F  (S  T)  (T  S) là một quan hệ nhị nguyên và đ-ợc gọi là l-u đồ của mạng N

Định nghĩa 1.15: Mạng N đ-ợc gọi là đơn giản khi và chỉ khi hai phần tử khác nhau của mạng đều không có chung tập

vào và tập ra, nghĩa là: x, y  N : (

x = y)  (x

= y)  x = y

Biến cố e có thể xảy ra trong trạng thái c nếu và chỉ nếu các điều kiện vào của e thoả mãn trong c còn các điều kiện ra thì không Khi biến cố e xảy ra, các điều kiện vào của e không thoả mãn nữa và các điều kiện ra của e bắt đầu

thoả mãn

Định nghĩa 1.16: Giả sử N = (B, E; F) là một mạng Petri

1) Tập con c  B đ-ợc gọi là một tr-ờng hợp

2) Giả sử e  E và c  B Ta nói rằng e là kích hoạt đ-ợc trong c (hay e là c-kích hoạt) nếu và chỉ nếu

e  c và

e  c = 

3) Giả sử e  E, c  B và e là kích hoạt đ-ợc trong c Khi đó, c’ = (c \

e)  e

đ-ợc gọi là tr-ờng hợp kế tiếp của

c Hay nói một cách khác, c’ chính là kết quả thực hiện biến cố e

Trang 9

6

Ta ký hiệu: c [ e > c’

Không gian các trạng thái của hệ là môi tr-ờng để dãy các b-ớc có thể xảy ra trên hệ, tạo nên các quá trình trên hệ

Định nghĩa 1.17:

1) Quan hệ r N  2B  2B

đ-ợc định nghĩa nh- sau:

(c1, c2)  rN   e  E : c1 [ e > c2 , gọi là quan hệ đạt đ-ợc tiến trên mạng N

2) Quan hệ R N = (r N  rN )*

là một quan hệ t-ơng đ-ơng trên tập 2B

và đ-ợc gọi là quan hệ đạt đ-ợc trên mạng N Giả sử có dãy các biến cố đ-ợc kích hoạt và xuất hiện kế tiếp trên mạng N nh- sau: c0 [ e1 > c1 [ e2 > c2 [ e3 >

c3 [ e m > c m Khi đó, các tr-ờng hợp c1, c2, c3, , c m phải thuộc lớp t-ơng đ-ơng của quan hệ đạt đ-ợc R N chứa c0

Các biến cố e1, e2, e3, , e m xuất hiện một cách tuần tự trong chính lớp t-ơng đ-ơng này

1.3.2 Hệ mạng điều kiện - biến cố

1 Định nghĩa hệ mạng điều kiện - biến cố

Định nghĩa 1.18: Bộ bốn  = (B, E; F, C) đ-ợc gọi là một hệ mạng điều kiện - biến cố nếu:

1) Bộ ba N = (B, E; F) là một mạng Petri đơn giản, không có phần tử cô lập và B  E  

2) Tập C  2B

là một lớp t-ơng đ-ơng của quan hệ đạt đ-ợc R N và đ-ợc gọi là không gian các tr-ờng hợp của  3) e  E, c  C để e đ-ợc kích hoạt trong c

Ngôn ngữ sinh bởi một hệ mạng điều kiện - biến cố là tập:

L() = { e1e2 e3 e m e1, e2, e3, , e m  E, c1, c2, c3, , c m  C : c0 [ e1 > c1 [ e2 > c2 [ e3 > c3 [ e m >

c m }

Lớp các ngôn ngữ sinh bởi các hệ mạng điều kiện - biến cố là tập con của lớp các ngôn ngữ chính quy

2 Một số tính chất của hệ mạng điều kiện - biến cố

Định nghĩa 1.19: Hệ mạng điều kiện - biến cố  đ-ợc gọi là chu trình nếu và chỉ nếu: c 1 , c 2  C , (c1 , c 2)  rN*

Định nghĩa 1.20: Hệ mạng điều kiện - biến cố  đ-ợc gọi là sống nếu và chỉ nếu: c  C , e  E : c' C sao cho

(c, c')  r N*

và e là c'-kích hoạt

1.3.3 Hệ mạng vị trí - chuyển

Định nghĩa 1.21: Bộ sáu  = (P, T; F, K, M0, W) đ-ợc gọi là một hệ mạng vị trí - chuyển (P/T - net) nếu:

- Bộ ba (P, T; F) là một mạng Petri đơn giản,

- K : P  {0, 1, 2, 3, , }, hàm cho dung l-ợng trên mỗi vị trí, với ký hiệu  chỉ một đại l-ợng rất lớn (có thể vô cùng)

- W : F  {1, 2, 3, , }, hàm gắn một trọng số d-ơng vào mỗi cung của mạng

- M0 : P  {0, 1, 2, 3, , }, là bộ đánh dấu đầu tiên của mạng phù hợp với dung l-ợng, có nghĩa là: p  P :

M0(p)  K(p)

Quy luật hoạt động trên hệ mạng vị trí - chuyển đ-ợc mô tả nh- sau:

Định nghĩa 1.22:

1) ánh xạ M : P  {0, 1, 2, 3, , } đ-ợc gọi là một bộ đánh dấu của mạng  nếu: p  P : M(p)  K(p)

2) Giả sử M là một bộ đánh dấu

- Chuyển t  T đ-ợc gọi là M-kích hoạt nếu:

p  

t : M(p)  W(p, t) và p  t : M(p)  K(p) - W(t, p)

- Một chuyển M-kích hoạt t hoạt động sẽ cho ta bộ đánh dấu kế tiếp M’ của M được xác định như sau:

M’(p) =

) (

) , ( ) , ( ) (

) , ( ) (

) , ( ) (

p M

p t W t p W p M

p t W p M

t p W p M

Ta nói rằng chuyển t hoạt động dẫn M tới M’ và ký hiệu: M [ t > M’

3) Giả sử R(M) là tập nhỏ nhất các bộ đánh dấu thoả mãn:

M  R(M) và nếu M1 R(M) và với chuyển t nào đó mà M1[ t > M2 thì M2  R(M) R(M) đ-ợc gọi là tập các bộ đánh dấu đạt đ-ợc từ M

Quy luật hoạt động trên các hệ mạng vị trí - chuyển có thể biểu diễn đơn giản nhờ đại số tuyến tính nh- sau:

i) Với mỗi chuyển t  T, ta xây dựng vectơ t : P  Z

t(p) =

0

) , ( ) , (

) , (

) , (

t p W p t W

p t W

t p W

ii) Xây dựng ma trận N : P  T  Z với: N(p,t) = t(p)

Công thức ngắn gọn cho quy luật hoạt động trên hệ mạng nh- sau:

M [ t > M’  ( 0  M + t  K )  ( M’ = M + t )

Ngôn ngữ sinh bởi một hệ mạng vị trí - chuyển là tập:

, nếu p 

t \ t

, nếu p  t

\ t

, nếu p 

t  t

, các tr-ờng hợp còn lại

, nếu p 

t \ t

, nếu p t \ t

, nếu p 

t t

, các tr-ờng hợp còn lại

Trang 10

7

L() = { t1t2 t3 t n M1, M2, M3, , Mn  R(M0), t1, t2, t3, , t n  T : M0 [ t1 > M1 [ t2 > M2 [ t3 > M3

[ t n > Mn }

Lớp các ngôn ngữ sinh bởi các hệ mạng vị trí - chuyển là tập con của lớp các ngôn ngữ cảm ngữ cảnh và chứa lớp các ngôn ngữ phi ngữ cảnh

Ch-ơng 2 Các thuật toán điều khiển trên hệ mạng

và độ phức tạp của chúng 2.1 Bài toán điều khiển t-ơng tranh các quá trình

Với mỗi hệ thống nào đó thì hành vi của nó mô tả những gì mà hệ thống đó có thể thực hiện đ-ợc Hành vi của một hệ thống bao gồm các quá trình xảy ra trên hệ Các quá trình đ-ợc phân thành hai loại sau đây:

1) Quá trình tuần tự: là quá trình mà các hành động trong nó đ-ợc thực hiện kế tiếp nhau

2) Quá trình t-ơng tranh: là quá trình mà trong nó có nhiều hành động có thể đ-ợc thực hiện song song với

nhau,

Quá trình t-ơng tranh bao gồm một dãy các b-ớc t-ơng tranh và môi tr-ờng để thực hiện chúng Quá trình với các b-ớc t-ơng tranh cực đại đ-ợc gọi là quá trình tối -u

Bài toán điều khiển t-ơng tranh các quá trình

Với một hệ thống đã cho, hãy xây dựng thuật toán để biến đổi các quá trình tuần tự của một hệ thống thành các quá trình t-ơng tranh tối -u t-ơng ứng Sơ đồ biến đổi t-ơng tranh đ-ợc thể hiện nh- hình vẽ d-ới đây:

Việc giải quyết bài toán điều khiển này không những chỉ ra cho chúng ta một cách thực hiện tối -u các quá trình xảy ra trên hệ thống mà còn giúp tìm ra hành vi t-ơng tranh của hệ

2.2 Thuật toán điều khiển t-ơng tranh trên các hệ mạng điều kiện - biến cố

2.2.1 Đồ thị các tr-ờng hợp

Để có cái nhìn tổng quát tất cả các quá trình xảy ra trên một hệ mạng điều kiện - biến cố, ta xây dựng đồ thị các tr-ờng hợp của hệ này

Định nghĩa 2.1: Đa đồ thị định h-ớng, gán nhãn  = (C, P), với tập đỉnh là tập các tr-ờng hợp C của hệ mạng và tập

cạnh P = {(c, e , c')  C  E  Cc [ e > c'} đ-ợc gọi là đồ thị các tr-ờng hợp của hệ mạng 

Định lý 2.1: Mọi đồ thị các tr-ờng hợp của các hệ mạng điều kiện - biến cố đều liên thông và không có đỉnh nút

Định lý 2.2: Hệ mạng điều kiện - biến cố  là chu trình khi và chỉ khi đồ thị các tr-ờng hợp của nó là liên thông mạnh

Định lý 2.3: Hệ mạng điều kiện - biến cố  là sống khi và chỉ khi với mỗi tr-ờng hợp c  C và với mỗi biến cố e  E

đều có đ-ờng đi c l 1 c 1 l m c m trong đồ thị  mà nhãn lm = e

2.2.2 Các b-ớc t-ơng tranh trên hệ mạng điều kiện - biến cố

Trong tình huống nào thì nhiều biến cố của hệ mạng có thể xuất hiện một cách đồng thời

Định nghĩa 2.2: Giả sử  = (B, E; F, C) là một hệ mạng điều kiện - biến cố

1) Tập con các biến cố G  E đ-ợc gọi là tách đ-ợc nếu:

e 1 , e 2  G : e1 e 2  

e 1

e 2 = e 1

 e 2

=

e 1

e 2 = e 1 e 2 = 

2) Giả sử c và c' là các tr-ờng hợp của hệ mạng điều kiện - biến cố  và tập các biến cố G là tách đ-ợc G đ-ợc gọi là một b-ớc t-ơng tranh từ c tới c' nếu và chỉ nếu mỗi biến cố e trong G là c-kích hoạt và c' = (c \ G)  G

Ta ký hiệu là: c [ G > c'

Định lý 2.4: Giả sử tập con các biến cố G của hệ mạng điều kiện - biến cố  là tách đ-ợc và c, c'là các tr-ờng hợp của

hệ Khi đó thì:

c [ G > c'  (c \ c' = G)  (c' \ c = G

)

Định lý trên cho chúng ta một thuật toán để tìm các b-ớc t-ơng tranh trên hệ mạng điều kiện - biến cố Song

độ phức tạp của thuật toán này là O(|E|2

.22.|B|+|E|

) Vả lại, thuật toán cũng ch-a xác định đ-ợc sự kế tiếp của các b-ớc t-ơng tranh trong một dãy nh- thế nào

Mở rộng quan hệ đạt đ-ợc trên một hệ mạng điều kiện - biến cố:

Định nghĩa 2.3: Giả sử  = (B, E; F, C) là một hệ mạng điều kiện - biến cố

1) Quan hệ rN  2B  2B

đ-ợc định nghĩa nh- sau:

(c1, c2)  rN  G  E : c1 [ G > c2 2) Quan hệ RN = (rNrN -1

)*

là một quan hệ t-ơng đ-ơng trên tập 2B

và đ-ợc gọi là quan hệ đạt đ-ợc đồng thời trên

hệ mạng 

Dễ dàng chứng minh rằng, quan hệ đạt đ-ợc và quan hệ đạt đ-ợc đồng thời là bằng nhau Nh- vậy, sự tuần tự

đang ẩn chứa sự t-ơng tranh

2.2.3 Đầy đủ hoá đồ thị các tr-ờng hợp

Ngày đăng: 29/01/2021, 03:59

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