
Bộ môn Khoa học Dữ liệu
Thực hành Toán rời rạc Trang 5
:%(+)=max {2!!(/)|}
Ứng dụng: Xét thời gian chậm nhất để loan 1 tin. Ví dụ: sáng 8 giờ 00 hằng ngày, tất cả các ngân
hàng, cửa hàng đều được cập nhật giá ngoại tệ, giá cổ phiếu. Do đó, trước đó, một đoạn mã script
webservice được cài đặt để chuyển đến các máy. Máy chậm nhất trong hệ thống cũng phải được
chuyển đến trước thời điểm 8 giờ 00.
Bán kính của đồ thị (radius), kí hiệu là radius(G):
Ngược với đường kính của đồ thị, bán kính của đồ thị được định nghĩa là giá trị nhỏ nhất của
phủ của đồ thị. Như vậy, bán kính của đồ thị được định nghĩa là:
<1.(+)=min {2!!(/)|}
Ứng dụng: Trong một thành phố, nếu các khu trung tâm được xem là một điểm của đồ thị (có các
cạnh là các đường kết nối) thì việc tìm bán kính đồ thị là tìm vị trí để đặt các tiện ích xã hội như:
trạm y tế, trạm chữa cháy. Các đỉnh có ecc bằng với bán kính có thể được xem là các đỉnh trung
tâm của đồ thị.
3. Sử dụng gói networkx để giải các bài toán đồ thị
3.1. Giới thiệu gói networkx
Thư viện networkx là một thư viện để xử lý mạng/đồ thị trong Python. Networkx có các khả
năng:
Phân tích mạng cơ bản:
- Thể hiện các khái niệm cơ bản của đồ thị.
- Thuộc tính về loại và cấu trúc của đồ thị.
- Nhận diện các node trung tâm của đồ thị.
Truyền thông trong mạng:
- Nhóm và phân hoạch đồ thị.
- Tìm kiếm các “cộng đồng” trong mạng/đồ thị tĩnh và động.
Các ứng dụng về phân tích mạng
Hiện tại, gói networkx được tích hợp trong gói phần mềm Anaconda. Các thành phần căn bản
của gói networkx bao gồm:
- Đồ thị: có thể là đồ thị vô hướng (Graph) hoặc hữu (có) hướng (DiGraph).
- Node: các nốt của đồ thị.
- Edge: các cạnh của đồ thị
Để sử dụng gói networkx, chúng ta phải tham chiếu thư viện
>>> import networkx as nx # sử dụng với tên gọi là nx hoặc >>> import networkx