Thí nghiệm đo tần suất tác tử tới thăm host

Một phần của tài liệu Luận văn:Sử dụng tác tử di động phát hiện dịch vụ trong các mạng ngang hàng không có cấu trúc potx (Trang 37 - 39)

4.2.1. Mô tả thí nghiệm

Thí nghiệm này kiểm nghiệm sự chính xác của thuật toán PageRank trong việc dự đoán tần suất tác tử tới thăm một host xác định. Ta đo độ phân bố dừng tại một host trong tổng số 30 host của thí nghiệm và số lần lặp là 100000. Ở đây ta chọn host 0 làm thí nghiệm.

Hàm tính phân bố dừng calculateStationaryDistribution() trong file

Topology.java là phần cài đặt thuật toán PageRank đã mô tả ở trên. Hàm trả về tập các giá trị phân bố xác suất trên tất cả các host trong mạng. Cũng tại một host bất kì trong 30 host ta đếm số tác tửđã tới thăm host này.

Ta sẽ so sánh 2 kết quảđo được đểđưa ra nhận xét.

4.2.2. Thiết lập các tham số liên quan

Đặt biến num_hosts trong hàm handleInitialize() của file

Nguyễn Thị Kim Oanh – K50MTT Trang 38 ĐH Công nghệ - ĐH Quốc Gia HN

Số tác tử di chuyển ngẫu nhiên num_agents = 15.

Với đối tượng AgentTemplate trong hàm khởi tạo, ta đặt thêm thời gian timeout cho quá trình di trú là 500 bằng cách gọi phương thức

setMigrationTimeout() của lớp cha là lớp Agent.

Với đối tượng Host trong file Host.java ta cài đặt thêm thuộc tính số tác tử tới thăm int agent_count, và phương thức setAgentCounter() để cài đặt số tác tử tới thăm, phương thức getAgentCounter() để lấy số tác tử tới thăm.

Trong hàm iterate() của file Simulator.java ta đặt một biến đếm count gán số

lượng các tác tử tới thăm host. Với mỗi sự kiện tác tử tới thăm một host, ta kiểm tra xem đó là host nào, và tăng biến đếm tương ứng của host đó lên 1.

Số lần lặp của thí nghiệm là 100000 lần, sau 500 lần lặp ta cho in kết quả ra màn hình và kiết xuất ra file text.

4.2.3. Kết quả thu được và đánh giá

Kết quả của hàm calculateStationaryDistribution() ta dùng để tính ra xấp xỉ v

theo công thức vˆ = 1 – (1 – (1 – (1 - πρh)|A| ) )t = 1 – (1 - πρh)|A| t (4)

Số lượng agent thu được sau mỗi 500 lần lặp đem chia cho 500 ta thu được tần suất tác tử tới thăm host trong thời gian t=500.

Tuy nhiên khi tính toán với các số liệu, xấp xỉ v luôn cho ra giá trị gần như

bằng 1. Nguyên nhân của hiện tượng này là do tham số mũ t. Với t là số lần lặp và tăng dần từ 500 tới 100000, giá trị πρh đo được lại rất nhỏ (thường khoảng 0.05) thì kết quả xấp xỉ v luôn tiến rất gần tới 1. Theo như lý luận về ý nghĩa của công thức (4) thì đó là xác suất để có ít nhất 1 tác tử tới thăm host h trong thời gian t. Với số

tác tử là khá nhiều (15 tác tử) và số lượng host chỉ có 30 thì xác suất để không có tác tử nào tới thăm host trong thời gian t là rất nhỏ.

Như vậy để tính xác suất tác tử tới thăm một host cụ thể trong thời gian t ta nên thay công thức (4) thành công thức sau: vˆ = 1 – (1 - πρh)|A|

Với công thức mới này ta tính toán với các số liệu thu được kết quả cho ra như

Nguyễn Thị Kim Oanh – K50MTT Trang 39 ĐH Công nghệ - ĐH Quốc Gia HN

Hình 4-Mối tương quan giữa xấp xỉ v và tần suất tác tử tới thăm host trong 100000 lần lặp

Nhìn vào đồ thị có thể thấy sự tương đồng giữa hai đường xấp xỉ v và xác suất tác tử tới thăm host. Điều đó cũng chứng minh cho những dựđoán lý thuyết là khá chính xác. Như vậy thuật toán PageRank áp dụng để tính xác suất tác tử tới thăm một host trong mạng là rất phù hợp. Việc dựđoán của chúng ta cũng có căn cứ toán học chắc chắn.

Một phần của tài liệu Luận văn:Sử dụng tác tử di động phát hiện dịch vụ trong các mạng ngang hàng không có cấu trúc potx (Trang 37 - 39)