Vấn ñề truyền bá thông tin trong mạng ñộng

Một phần của tài liệu Nghiên cứu vấn đề truyền bá thông tin giữa các tác tử di động trong mạng động (Trang 28)

2.3.1. S khác nhau gia mng tĩnh và mng ñộng

Mạng tĩnh là mạng có topo không thay ñổi theo thời gian. Tức là các nút và các liên kết trong mạng ñược giữ nguyên từ khi bắt ñầu thực hiện thuật toán cho ñến lúc kết thúc.

Đối với mô hình tác tử di ñộng, mạng tĩnh còn một ñặc ñiểm nữa là số lượng các tác tử

không thay ñổi. Ban ñầu trong mạng có k tác tử, thì ñến khi kết thúc thuật toán, số lượng tác tử cũng là k. Vì vậy, các thuật toán truyền bá thông tin giữa các tác tử trong mạng tĩnh có những ñặc ñiểm sau ñây:

•Việc cài ñặt thuật toán không phải quan tâm ñến vấn ñề thay ñổi trong topo của mạng. Điều này khiến cho các thuật toán trong mạng tĩnh ñơn giản hơn rất nhiều. Ví dụ như trong các thuật toán hẹn gặp, các tác tử có thể chọn ra một nút làm ñịa

ñiểm hẹn gặp mà không phải lo lắng ñến vấn ñềñịa ñiểm có thể bị mất do thay ñổi topo mạng. Một số giải thuật dựa trên mô hình xây dựng cây khung, sau khi xây dựng xong thì có thể sử dụng ñược mãi mãi.

•Các thuật toán có ñiểm kết thúc. Bài toán truyền bá thông tin ngẫu nhiên giữa các tác tử trong mạng tĩnh sẽ kết thúc khi các tác tử ñảm bảo ñược rằng mình ñã thu thập ñược thông tin của tất cả các tác tử khác. Ví dụ như trong giải thuật bầu thủ

lĩnh, tác tử thủ lĩnh chỉ cần duyệt trong mạng 2 lần là ñảm bảo ñược việc truyền bá thông tin ñã hoàn thành. Khi ñó, các tác tử có thể dừng lại.

Tuy nhiên, ñối với mạng ñộng, topo của mạng có thể thay ñổi một cách ngẫu nhiên. Ngoài việc các liên kết cũng như các nút trong mạng có thể bị thay ñổi, các tác tử cũng có thể tham gia vào hoặc rời khỏi mạng liên tục. Vì vậy, các thuật toán truyền bá thông tin giữa các tác tử trong mạng ñộng sẽ gặp phải những vấn ñề sau ñây:

•Trong quá trình thực hiện thuật toán, các tác tử phải liên tục ñáp ứng ñược với những thay ñổi của topo mạng. Ví dụ, các thuật toán ñòi hỏi xây dựng cây khung trong mạng, việc mất ñi một liên kết cũng như một nút có thể khiến cây khung bị

thay ñổi. Các tác tử phải phát hiện ra sự thay ñổi này và có những ñiều chỉnh phù hợp. Có nhiều phương pháp xử lý với những trường hợp như thế này, và cách ñơn giản nhất là cải tiến thuật toán tương tự trong mạng tĩnh. Đó là mỗi khi có sự thay

ñổi, chúng ta sẽ hủy toàn bộ kết quảñã ñạt ñược và tiến hành xây dựng lại từñầu.

•Số lượng tác tử trong mạng ñộng là không cốñịnh. Một số tác tử có thể rời khỏi mạng do nút chứa chúng bị ngắt khỏi hệ thống. Trong khi một số tác tử khác có thể

tham gia vào mạng khi các nút chứa những tác tử này kết hợp vào hệ thống. Vấn ñề

này khiến quá trình thu thập thông tin của các tác tử gặp rất nhiều khó khăn. Sẽ xảy trường hợp, các tác tử trong một mạng ñã thu thập ñược thông tin của tất cả tác tử

khác, nhưng một thời gian sau, một số tác tử ngoài hệ thống bất ngờ tham gia vào mạng. Khi ñó, hệ thống sẽ bao gồm tập các tác tử cũ cộng thêm tập các tác tử mới. Bài toán truyền bá thông tin giữa các tác tử vẫn chưa hoàn thành, do các tác tử cũ

vẫn chưa trao ñổi ñược thông tin với các tác tử mới này. Vì vậy, bài toán truyền bá thông tin giữa các tác tử trong mạng ñộng phải giải quyết ñược những trường hợp này.

Hình 9. Hai mạng kết hợp lại

Như chúng ta thấy trên hình 9, mặc dù các tác tử từ 1 ñến 4 ñã thu thập ñược tất cả

thông tin trong hệ thống. Nhưng khi tác tử số 5 tham gia vào mạng, các tác tử cũ chưa có

ñược thông tin của tác tử mới này, tức là bài toán truyền bá thông tin giữa các tác tử vẫn chưa ñược giải quyết.

Để khắc phục vấn ñề này, các giải thuật phải ñi theo một trong hai hướng: cho các tác tử tự khởi ñộng lại quá trình di chuyển khi có sự thay ñổi trong mạng, hoặc sử dụng một số tác tử liên tục di chuyển trong toàn mạng. Hướng giải quyết thứ nhất không thực hiện ñược, do trong nhiều trường hợp, các tác tử ñứng yên không phát hiện ra ñược sự

thay ñổi (sự thay ñổi trong mạng diễn ra ở những nút không chứa tác tử). Trong bài báo [21], các tác giả cũng ñã chứng minh rằng, ñối với các thuật toán truyền bá thông tin giữa các tác tử trong mạng ñộng, bắt buộc phải có một số tác tử liên tục di chuyển trong mạng

ñể thu thập thông tin cũng nhưñáp ứng ñược những thay ñổi trong topo mạng.

Định lý 2.3: Không tn ti mt thut toán truyn bá ngu nhiên nào trong mng

ñộng mà tt c các tác t có th ngng di chuyn sau mt cu hình nào ñó.

Chng minh:

Giả sử tồn tại một thuật toán P thỏa mãn yêu cầu trên. Chúng ta xem xét 2 mạng N1 và N2 có kích thướng n, trong mỗi mạng có k tác tử hoạt ñộng (n > k). Áp dụng giải thuật P cho các tác tử trong 2 mạng N1 và N2 này. Sau một cấu hình nào ñó, toàn bộ các tác tử

trong 2 mạng N1 và N2 sẽ dừng lại (theo giả thiết của giải thuật). Các tác tử này sẽ biết toàn bộ thông tin của các tác tử khác trong mạng của mình, những không biết thông tin

của mạng kia (Do 2 mạng không liên thông với nhau). Tại trạng thái này, chúng ta sẽ xây dựng một mạng mới, kết hợp 2 mạng N1 và N2 lại làm 1 tại những nút không có tác tử.

Điều này có thể thực hiện ñược, do trong mạng ñộng, các nút mới kèm theo các tác tử có thểñược thêm vào. Và với số lượng nút n > số tác tử k, sẽ luôn tồn tại một số nút không chứa tác tử. Do quá trình kết hợp 2 mạng không thay ñổi ñến trạng thái của các nút khác. Nên các tác tử không biết ñược sự thay ñổi trong topo mạng và không thể tự khởi ñộng lại quá trình di chuyển. Khi ñó, trong mạng mới này, các tác tử sẽ không có ñược toàn bộ (adsbygoogle = window.adsbygoogle || []).push({});

thông tin của các tác tử khác (các tác tử mới ñược kết hợp) -> việc truyền bá thông tin không ñảm bảo

2.3.2. Đánh giá ñộ phc tp ca các thut toán trong mng ñộng

Như phần trên ñã ñề cập, không tồn tại thuật toán truyền bá thông tin nào trong mạng ñộng mà các tác tử có thểñồng thời ngừng di chuyển sau một cấu hình nào ñó. Để

giải quyết bài toán, sẽ phải có một số tác tử liên tục di chuyển trên toàn mạng. Vì vậy, tiêu chí ñầu tiên mà chúng ta có thể ñánh giá về các thuật toán trong mạng ñộng là số lượng các tác tử có thể ngừng di chuyển sau một cấu hình của thuật toán. Một thuật toán càng hiệu quả khi số lượng các tác tử có thể ngừng di chuyển càng lớn.

Cũng trong bài báo [21], các tác giả ñã ñưa ra một thông số dùng ñể ñánh giá ñộ

hiệu quả của các thuật toán truyền bá thông tin ngẫu nhiên là “ñộ yên tĩnh” (quiescene). “Độ yên tĩnh” của một thuật toán ñược ñịnh nghĩa như sau:

Định nghĩa 2.1: Mt thut toán phân tán cho các tác t di ñộng có “ñộ yên tĩnh t” (vi t là mt s nguyên) nếu mi thc hin ca thut toán ñều ñạt ñược mt cu hình mà sau cu hình ñó có t (hoc nhiu hơn) tác t ngng di chuyn mãi mãi.

Định nghĩa 2.2: “Độ yên tĩnh ca mt bài toán” là t nếu t là s nguyên ln nhát tha mãn tn ti mt thut toán vi ñộ yên tĩnh t ñể gii quyết bài toán trên.Để thun tin, ta quy ước ñộ yên tĩnh ca bài toán là -1 nếu không tn ti mt gii thut nào (k c gii thut vi tt c các tác tử ñều di chuyn trong mng) ñể gii quyết bài toán trong mng

Hình 10. Một số tác tử liên tục di chuyển trên mạng

“Độ yên tĩnh” của bài toán truyền bá thông tin phụ thuộc vào loại mô hình tác tử

trong hệ thống. Bài báo cũng ñã ñưa ra thống kê về ñộ yên tĩnh của bài toán trong những mô hình tác tử khác nhau như sau:

Mô hình ñồng bộ Mô hình không ñồng bộ

Song công Đơn công Song công Đơn công Bảng trắng ñầy ñủ (FW) k – 1 k – 1 0 0 Bảng trắng ñiều khiển (CW) k – 1 k – 1 -1 0 Không bảng trắng (NW) -1 -1 -1 -1

Hình 11: Độ yên tĩnh của bài toán k tác tử trong mô hình tác tử có ñịnh danh

Mô hình ñồng bộ Mô hình không ñồng bộ

Song công Đơn công Song công Đơn công Bảng trắng ñầy ñủ (FW) >= 0 >= 0 0 0 Bảng trắng ñiều khiển (CW) -1 -1 -1 -1 Không bảng trắng (NW) -1 -1 -1 -1

Độ yên tĩnh của bài toán truyền bá thông tin giữa các tác tử trong mạng ñộng ở bảng trên ñược rút ra dựa theo các ñịnh lý dưới ñây.

Để tiện cho việc trình bày các ñịnh lý, chúng ta ký hiệu một mô hình theo cấu trúc như sau: (tính ñồng b, loi bng trng, loi liên kết). Ví dụ, một mô hình ñược ký hiệu là

(Asynch, FW, full-duplex) có nghĩa là chúng ta ñang xem xét mô hình không ñồng bộ, bảng trắng ñầy ñủ và liên kết song công. Một thành phần ký hiệu là * nếu nó ñúng với tất cả các loại trong mô hình ñó. Ví dụ (Asynch, *, *) là mô hình không ñồng bộ với tất cả

các dạng bảng trắng hay liên kết.

Khi xem xét mô hình tác tử có ñịnh danh, chúng ta có một sốñịnh lý sau ñây:

Định lý 2.4: Không tn ti thut toán truyn bá thông tin gia k tác tñịnh danh trong mng ñộng có ñộ yên tĩnh t (1 <= t <= k – 1) trong mô hình không ñồng b

(Asynch, *, *).

Chng minh:

Giả sử tồn tại một giải thuật với ñộ yên tĩnh t (1 <= t <= k – 1) trong một hệ thống không ñồng bộ với k tác tử. Theo giả thiết, do t >= 1, sẽ tồn tại một cấu hình mà sau cấu hình ñó, ít nhất một tác tử ngừng di chuyển. Do thuật toán ñúng với mọi topo mạng, bằng một cách nào ñó, chúng ta có thể tách nút chứa tác tử ñứng yên này, cùng với các nút lân cận không chứa tác tử. Quá trình này không ảnh hưởng ñến trạng thái của nút chứa tác tử, vì vậy, tác tử ñứng yên không phát hiện ra, và không thể tự khởi ñộng lại quá trình di chuyển. Cứ làm như vậy, chúng ta có thể tách ñược m hệ thống con, mỗi hệ thống có một tác tửñứng yên. Xây dựng một hệ thống phân tán mới bằng cách kết hợp m hệ thống con này tại những nút không chứa tác tử. Trong hệ thống mới này, các tác tử không biết thông tin của nhau, những không thể tự khởi ñộng quá trình di chuyển (do trạng thái tại nút chứa tác tử không thay ñổi, và hệ thống là không ñồng bộ). Kết quả là các tác tử không thể gặp

ñược nhau, và quá trình truyền bá thông tin không ñảm bảo.

Định lý 2.5: Độ yên tĩnh ca ca bài toán truyn bá thông tin trong mô hình k tác t

ñịnh danh, không ñồng b và bng trng ñầy ñủ (Asynch, FW, *) là 0.

Chng minh:

Theo ñịnh lý 2.4, không tồn tại giải thuật có ñộ yên tĩnh >= 1 giải quyết ñược bài toán truyền bá thông tin trong mô hình k tác tử không ñồng bộ. Vì vậy, ñể chứng minh (adsbygoogle = window.adsbygoogle || []).push({});

ñịnh lý 2.5, ta chỉ cần chỉ ra một thuật toán có ñộ yên tĩnh là 0 ñể giải quyết bài toán trong mô hình không ñồng bộ và bảng trắng ñầy ñủ.

Thuật toán có ñộ yên tĩnh 0 trong mô hình này rất ñơn giản. Mỗi tác tử liên tục duyệt trên toàn mạng (sử dụng một thuật toán duyệt theo chiều sâu hoặc chiều rộng), mỗi

khi ñến một nút, tác tử lưu trữ thông tin của mình lên bảng trắng của nút ñó, ñồng thời lấy thông tin của các tác tử khác ñã lưu trữ ở thời ñiểm trước. Nếu mạng ñủ ổn ñịnh, sau khi tác tử duyệt hết mạng, nó sẽ lấy ñược thông tin của tất cả các tác tử khác. Nếu topo mạng bị thay ñổi, do các tác tử liên tục duyệt như vậy, nên chúng sẽñáp ứng ñược những thay

ñổi ñó. Như vậy thuật toán trên thỏa mãn yêu cầu của bài toán, và có ñộ yên tĩnh là 0.

Định lý 2.6: Độ yên tĩnh ca bài toán truyn bá thông tin trong mô hình k tác t

ñịnh danh, không ñồng b, bng trng ñiu khin và liên kết song công (Asynch, CW, full- duplex) là -1.

Chng minh:

Theo ñịnh lý 2.4, không tồn tại một thuật toán với ñộ yên tĩnh >= 1 giải quyết bài toán trong mô hình tác tử không ñồng bộ. Vì vậy, ñể chứng minh ñịnh lý 3.6, chúng ta chỉ

cần chỉ ra rằng không tồn tại một thuật toán nào có ñộ yên tĩnh là 0 ñể giải quyết bài toán trong mô hình trên. Chứng minh phản chứng, giả sử tồn tại một thuật toán với ñộ yên tĩnh 0 ñể giải quyết bài toán. Tức là trong giải thuật này, tất cả k tác tử phải liên tục di chuyển trên mạng.

Xét một tác tử p, trong mô hình tác tử không ñồng bộ, liên kết song công, sẽ tồn tại một thực hiện sao cho p không bao giờ gặp bất kỳ một tác tử nào khác. Tức là khi p ñến một nút, tất cả các tác tử tại nút ñó ñã rời khỏi nút và ñến một nút khác. (Điều này có thể

xảy ra do mô hình là không ñồng bộ, p không kiểm soát ñược thời gian mình ñến một nút, và mô hình song công cho phép tất cả các tác tử khác rời khỏi nút ñó trước khi p ñến). Khi ñó, p sẽ mãi mãi không gặp bất cứ một tác tử nào, và sẽ không thu thập cũng như

truyền bá thông tin của mình ñược. Bài toán truyền bá thông tin giữa các tác tử không

ñược giải quyết.

Đối với mô hình tác tử không ñịnh danh, chúng ta có một số kết quả sau ñây:

Định lý 2.7: Độ yên tĩnh ca bài toán truyn bá thông tin gia k tác t trong mô hình tác t không ñịnh danh, bng trng ñiu khin (*, CW, *) là -1.

Chng minh:

Trong mô hình tác tử không ñịnh danh, các tác tử có trạng thái ban ñầu giống nhau. Ta chỉ cần xét trong một mạng vòng ñồng bộ, trạng thái của các nút cũng giống nhau. Vì vậy, các tác tử sẽ thực hiện các hành ñộng giống nhau. Khi ñó, các tác tử sẽ di chuyển theo vòng một cách ñồng bộ và không bao giờ gặp ñược nhau. Bài toán truyền bá thông tin không thực hiện ñược.

Định lý 2.8: Độ yên tĩnh ca bài toán truyn bá thông tin trong mô hình k tác t

không ñịnh danh, không ñồng b và bng trng ñầy ñủ (Asynch, FW, *) là 0.

Chng minh:

Tương tự như trong mô hình có ñịnh danh, các tác tử chỉ cần di chuyển trong toàn mạng, lưu thông tin của mình lên bảng trắng và thu thập các thông tin ñã ñược viết lên bảng trắng trước ñó.

Vấn ñề ở ñây là, trong mô hình tác tử không ñịnh danh, các tác tử không thực hiện

ñược các thuật toán duyệt thông thường (Do các tác tử không phân biệt ñược các tác tử

khác cũng như các nút trên mạng). Vì vậy, các tác tử phải thực hiện một phương pháp duyệt khác, duyệt theo ñộ dài ñường ñi như sau: Đầu tiên, các tác tử duyệt ñường ñi với

ñộ dài là 1 (chỉñi qua 1 liên kết rồi quay lại). Với mỗi ñộ dài, các tác tử duyệt các liên kết trong mạng theo thứ tự từñiển. Mỗi lần duyệt xong, ñộ dài ñường ñi sẽñược tăng lên 1 và thực hiện việc duyệt lại từñầu. Bằng cách làm như vậy, các tác tử có thể duyệt ñược toàn mạng mà không bỏ sót bất cứ nút nào.

Định lý 2.9: Độ yên tĩnh ca bài toán truyn bá thông tin trong mô hình k tác t

không ñịnh danh, ñồng b, vi bng trng ñầy ñủ (Synch, FW, *) không nh hơn 0 và

Một phần của tài liệu Nghiên cứu vấn đề truyền bá thông tin giữa các tác tử di động trong mạng động (Trang 28)