Thuật toán song song cho một số bài toán trên đồ thị

50 874 8
Thuật toán song song cho một số bài toán trên đồ thị

Đ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

1 THUẬT TOÁN SONG SONG CHO MỘT SỐ BÀI TOÁN TRÊN ĐỒ THỊ 2 Nội dung  Đại cương về tính toán song songMột số thuật toán song song cơ bản trên đồ thịThuật toán song song giải bài toán K-Median  Thiết kế chương trình 3 Đại cương về tính toán song songMột số khái niệm và thuật ngữ  Phân loại các kiến trúc song song  Đánh giá độ phức tạp của thuật toán song songMột số mẫu thiết kế thuật toán song song 4 Một số khái niệm và thuật ngữ  Tính toán song song hay xử lý song song : là quá trình xử lý thông tin trong đó nhấn mạnh việc nhiều đơn vị dữ liệu được xử lý đồng thời bởi một hay nhiều bộ xử lý để giải quyết một bài toán  Tốc độ  Hiệu quả (Efficient) của thuật toán song song được tính bằng : Tốc độ / số bộ xử lý tham gia tính toán  Giá (cost) của một quá trình tính toán trên hệ thống song song được tính như sau : Giá = Độ phức tạp tính toán × Số lượng bộ xử lý tham gia tính toán Tốc độ = Thời gian thực hiện trong tình huống xấu nhất theo thuật toán tuần tự nhanh nhất Thời gian thực hiện trong tình huống xấu nhất của thuật toán song song đang xét 5 Phân loại các kiến trúc song song  SISD (single instruction stream, single data stream)  MISD (multiple instruction stream, single data stream)  SIMD (single instruction stream, multiple data stream)  EREW (Exclusive Read, Exclusive Write)  CREW (Concurent Read Exclusive Write)  ERCW (Exclusive Read Concurent Write)  CRCW (Concurent Read Concurent Write)  MIMD (multiple instruction stream, multiple data stream)  Hệ đa xử lý với bộ nhớ phân tán  Hệ đa xử lý dùng chung bộ nhớ  Hệ đa xử lý với bộ nhớ dùng chung phân tán 6 Đánh giá độ phức tạp  Song song giới hạn và song song không giới hạn  Các kỹ thuật cho việc nâng cao hiệu quả của thuật toán song song  Giảm số lượng bộ xử lý  Giảm độ phức tạp thuật toánĐộ phức tạp của bài toán 7 Một số mẫu thiết kế thuật toán song song  Mẫu cây nhị phân  Phát triển bởi nhân đôi  Chia để trị  Phân chia 8 Một số thuật toán song song cơ bản trên đồ thịThuật toán trên đồ thị không có trọng sốThuật toán trên cây : Duyệt cây có thứ tự tổng quát, xác định tổ tiên chung gần nhất, tâm và median của cây.  Tìm kiếm trên đồ thị : Tìm kiếm theo chiều sâu, tìm kiếm theo chiều rộng.  Thành phần liên thông và một số bài toán liên quan : Tìm thành phần liên thông, hai liên thông trong đồ thị, tập chu trình cơ bản, tâm và median của đồ thị,  Thuật toán trên đồ thị có trọng số  Cây khung tối thiểu  Đường đi ngắn nhất đơn nguồn 9 Duyệt cây có thứ tự tổng quát 10 Tâm và median của cây  Chỉ số ngăn cách :  Chỉ số lan truyền :  c là tâm của cây khi s(c) là tối thiểu  m là median của cây khi t(m) là tối thiểu  Ý tưởng : sử dụng thuật toán song song tìm tổ tiên chung gần nhất NCA(i, j). d(i,j) = level(i) + level(j) - 2 × level(NCA(i,j)) { } njjidis , .2,1|),(max)( == ∑ ≤≤ = nj jidit 1 ),()( [...]... 4) 22 j≠i Thuật toán nhánh cận song song  Phân loại thuật toán nhánh cận song song  Lựa chọn kiến trúc thiết kế thuật toán song song  Thiết kế mô hình thuật toán song song 23 Phân loại thuật toán nhánh cận song song    Song song loại 1 : Song song hóa các pha trong thuật toán tuần tự Song song loại 2 : Thực hiện các hoạt động trên các bài toán con một cách đồng thời Song song loại 3 : Một vài cây... Song song hoá thuật toán của Prim-Dijkstra -Thực hiện : + Giả sử có K bộ xử lý p1, p2, …, pK + Phân một tập con nút cho mỗi pi + Tại mỗi bước tìm nút gần cây nhất một cách song song => K nút => chọn nút gần nhất và quảng bá tới các bộ xử lý 12 Thuật toán song song giải bài toán k-median trên đồ thị  Giới thiệu bài toánThuật toán nhánh cận tuần tự  Thuật toán nhánh cận song song 13 Giới thiệu bài. .. thời Song song loại 3 : Một vài cây nhánh cận được xây dựng một cách song song 24 Phân loại thuật toán nhánh cận song song    Song song loại 1 : Song song hóa các pha trong thuật toán tuần tự Song song loại 2 : Thực hiện các hoạt động trên các bài toán con một cách đồng thời Song song loại 3 : Một vài cây nhánh cận được xây dựng một cách song song 25 Lựa chọn kiến trúc  Bộ nhớ phân tán  Bộ nhớ dùng... thiệu bài toán  Khởi nguồn từ thế kỷ 17, Fermat đưa ra một câu hỏi : Cho một tam giác (với 3 đỉnh trên mặt phẳng), hãy tìm một điểm ( median) trong mặt phẳng sao cho tối thiểu hóa tổng khoảng cách từ nó tới các đỉnh  Đầu thế kỷ 20, Alfred Weber tổng quát hóa số vào đỉnh, số đỉnh n ≥ 3, số median k ≥ 1   : đưa thêm trọng Đầu năm 1960, Hakimi phát triển bài toán tìm k median trên một đồ thị gồm n... lượng 31 đồ hệ thống 32 Thiết kế chương trình    Tổng quan hệ thống Thuật toán nhánh cận tuần tự Thuật toán nhánh cận song song     Dữ liệu tập trung Dữ liệu phân tán Kết quả thực nghiệm Nhận xét và hướng phát triển 33 Tổng quan hệ thống 34 Thuật toán tuần tự 35 Lược đồ song song dữ liệu tập trung  Ý tưởng : Danh sách các bài toán con chưa được giải quyết lưu tại máy chủ, các bài toán con được... Đưa các bài toán con có cận nhỏ hơn kỷ lục tạm thời vào tập hoạt động Cập nhật kỷ lục : 4 5 1 2 6 Phân nhánh để sinh ra các bài toán con mới từ bài toán đang xét Tính cận của các bài toán con mới này Kiểm tra các bài toán con vừa được sinh ra Có hai trường hợp : (1) bài toán con đã được giải quyết – đi tới bước 5, (2) bài toán con chưa được giải quyết – đi tới bước 4 Nếu giá trị của bài toán con nhỏ... 18 Thuật toán nhánh cận Khởi tạo : Tập hoạt động (tập các bài toán con chưa được duyệt) chứa bài toán ban đầu, giá trị kỷ lục bằng ∞ Lựa chọn : Lựa chọn và xoá một bài toán con khả thi từ tập hoạt động Phân nhánh : 1 2 3 i ii Cập nhật tập hoạt động : Đưa các bài toán con có cận nhỏ hơn kỷ lục tạm thời vào tập hoạt động Cập nhật kỷ lục : 4 5 1 2 6 Phân nhánh để sinh ra các bài toán con mới từ bài toán. .. thì tất cả các bài toán con trong tập hoạt động có cận dưới lớn hơn hoặc bằng kỷ lục sẽ bị xóa Kết thúc thuật toán : Lặp lại các bước từ 2-5 nếu tập hoạt động không rỗng Ngược lại, thì kết thúc thuật toán và lời giải tối ưu là giá trị kỷ lục 20 Thuật toán nhánh cận giải bài toán k-median  Lựa chọn bài toán con    Lựa chọn theo độ sâu Lựa chọn cận tốt nhất đầu tiên Phân nhánh : Nếu bài toán con có... thúc thuật toán : Lặp lại các bước từ 2-5 nếu tập hoạt động không rỗng Ngược lại, thì kết thúc thuật toán và lời giải tối ưu là giá trị kỷ lục 19 Thuật toán nhánh cận Khởi tạo : Tập hoạt động (tập các bài toán con chưa được duyệt) chứa bài toán ban đầu, giá trị kỷ lục bằng ∞ Lựa chọn : Lựa chọn và xoá một bài toán con khả thi từ tập hoạt động Phân nhánh : 1 2 3 i ii Cập nhật tập hoạt động : Đưa các bài. .. chung 26 Lựa chọn kiến trúc  Bộ nhớ phân tán  Bộ nhớ dùng chung 27 Thiết kế mô hình thuật toán nhánh cận song song    Quản lý tập bài toán con Lược đồ thực hiện Xây dựng hệ thống 28 Quản lý tập bài toán con  Cân bằng số lượng : đảm bảo rằng không có bộ xử lý nào được nghỉ ngơi trong khi các bộ xử lý khác có một số lượng lớn nút cần ước lượng    Giải pháp : Nếu máy rỗi thì thông báo, ngưỡng k . 1 THUẬT TOÁN SONG SONG CHO MỘT SỐ BÀI TOÁN TRÊN ĐỒ THỊ 2 Nội dung  Đại cương về tính toán song song  Một số thuật toán song song cơ bản trên đồ thị. Chia để trị  Phân chia 8 Một số thuật toán song song cơ bản trên đồ thị  Thuật toán trên đồ thị không có trọng số  Thuật toán trên cây : Duyệt cây có

Ngày đăng: 31/05/2013, 00:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan