Định nghĩao Điều khiển luồng thông tin trong mạng: khi một node nằm giữa between các node khác bị mất đi thì các node còn lại không thể tiếp tục kết nối được và trao đổi thông tin với nh
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG
TIN-ĐHQG TP HCM
BÁO CÁO MÔN HỌC PHÂN TÍCH
MẠNG XÃ HỘIĐỀ TÀI: ĐƯỜNG ĐI NGẮN NHẤT, BETWEENNESS CENTRALITY, CLOSENESS CENTRALITY.
Giảng viên hướng dẫn : PGS.TS Đỗ PhúcSinh viên thực hiện:1 13520570 Phan Đình Nhân
2 13520884 Trần Văn Tiến3 13521036 Phùng Quốc Việt4 13520593 Trần Văn Nhứt5 13520919 Đậu Minh Trí6 13520245 Trần Thị Hạnh7 13520968 Hồ Thị Cẩm Tú8 13520730 Nguyễn Đức Tài
TP Hồ Chí Minh, 12/2015
1
Trang 2c Closeness Centrality được dùng để xác định: 4
II Hiện thực chương trình 4
Trang 3I.Cơ sở lý thuyết 1 Định nghĩa
o Điều khiển luồng thông tin trong mạng: khi một node nằm giữa
(between) các node khác bị mất đi thì các node còn lại không thể tiếp tục
kết nối được và trao đổi thông tin với nhau _Một node có độ đo Betweenness Centrality càng cao thì:
3
Trang 4o Giữ một vị trí đặc biệt quan trọng và một tầm ảnh hưởng rất lớn trong mạng
o Nếu node này bị loại bỏ thì sẽ gây ra sự tan rã cấu trúc của mạng, tức là các node sẽ không còn có thể trao đổi thông tin liên lạc với nhau
c Closeness Centrality được dùng để xác định:
Node có thể truyền đạt, tiếp nhận thông tin từ các node khác trong mạng một cách nhanh nhất, ít tốn thời gian nhất
II Hiện thực chương trình1.Cấu trúc dữ liệu
Hàm allShortestPaths(int source, int target, int num) : tìm đường đi ngắn nhất từ source đến target với num là số đỉnh của đồ thị Hàm trả về độ dài đường đi ngắn nhất từ source đến target và lưu lại đường đi
vào list<list<int>> prevs Hàm sử dụng thuật toán Dijkstra để tìm đường đi ngắn nhất
Trang 5b.Betweenness CentralityHàm Betweenness_centrality(int num): tính Betweenness centrality của
tất cả các đỉnh trong đồ thị, kết quả trả về một mảng giá trị betweenness của các đỉnh
Hàm Degree_centrality(int num): tính Degree centrality của tất cả các
đỉnh trong đồ thị, kết quả trả về một mảng giá trị Degree của các đỉnh
allShortestPaths()).
• path : lưu 1 đường đi ngắn nhất (VD : từ a->b có 2 đường đi ngắn nhất thì list path sẽ lưu 1 trong 2 đường đi đó)
• num : số đỉnh của đồ thị.• mảng num_sp: với num_sp[0] lưu tổng số đường đi ngắn nhất từ source tới target, num_sp[1] lưu tổng số đường đi ngắn nhất từ source tới target có qua mid
• kt : bằng 0 : sẽ k thể hiện kết quả lên màn hình và bằng 1 thì ngược lại
• Công thức tính betweenness centrality của đỉnh v :
• Cho đồ thị G = (V, E) có n đỉnh
Trong đó: : Tổng số đường đi ngắn nhất từ đỉnh s đến t và có qua đỉnh v
Trang 6• Closeness centrality được dùng để xác định: Node có thể truyền đạt, tiếp nhận thông tin từ các node khác trong mạng một cách nhanh nhất, ít tốn thời gian nhất
_Hàm Closeness_centrality (int num): tính closeness centrality của tất cả các
đỉnh trong đồ thị, kết quả trả về một mảng giá trị closeness của các đỉnh
III Thử nghiệm
Hình 1: Đồ thị được thử nghiệm
Hình 2: Tất cả đường đi ngắn nhất từ đỉnh v1 tới đỉnh v9
Trang 8IV Kết luận
Đề tài tìm đường đi ngắn nhất giữa hai đỉnh, tìm đường đi ngắn nhất giữa tất cả các đỉnh của đồ thị Các độ đo betweenness centrality và closeness centrality trên đồ thị nhỏ Hướng phát triển lên những đồ thị lớn và ứng dụng đồ thị lớn, mạng xã hội Giúp ứng dụng vào việc phân tích và cải thiện mối liên lạc
TÀI LIỆU THAM KHẢO
1 s-algorithm