Chuong 3 Bau thu linh tren vong 2

24 5 0
Chuong 3 Bau thu linh tren vong 2

Đ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

Chương BẦU THỦ LĨNH TRÊN VÒNG (2( Nội dung • Bầu thủ lĩnh đồng khơng đồng dạng • Bầu thủ lĩnh đồng đồng dạng • Cận giải thuậu bầu thủ lĩnh dựa so sánh BTL đồng khơng đồng dạng • Giải thuật – Hoạt động theo đợt, đợt gồm n vòng – Các xử lý bắt đầu giải thuật vòng – Ở đợt thứ i, xử lý có id i, tồn tại, gửi thơng báo khắp vịng trở thành thủ lĩnh • Các xử lý khơng có id i nhận thơng báo chuyển tiếp sang bên cạnh • Bộ xử lý có id nhỏ trở thành thủ lĩnh • Ví dụ – n = id nhỏ • Từ đợt đến 6, khơng có thơng báo gửi • Ở đầu đợt 7, xử lý có id gửi thơng báo khắp vịng • Độ phức tạp thơng báo O(n) (tối ưu) • Độ phức tạp thời gian O(nx), x id nhỏ BTL đồng đồng dạng (1) • Mơ hình – Các xử lý khơng buộc phải bắt đầu giải thuật – Một xử lý bắt đầu thực giải thuật vòng vịng nhận thơng báo • Ý tưởng giải thuật – Thơng báo gửi từ xử lý khác có tốc độ truyền khác • Thơng báo fast: thơng báo chuyển tiếp • Thơng báo slow: thơng báo bị làm trễ trước chuyển – Thông báo xử lý có id lớn bị làm trễ – Các xử lý nhận thông báo trước bắt đầu giải thuật không tham gia bầu thủ lĩnh • nuốt chuyển thông báo nhận BTL đồng đồng dạng • Giải thuật – Đầu tiên xử lý trạng thái asleep – Một số xử lý ngẫu nhiên đổi trạng thái thành active • Gửi id thơng báo fast – Mỗi xử lý asleep nhận thông báo chuyển sang trạng thái relay • Nuốt chuyển tiếp thông báo nhận BTL đồng đồng dạng (3) • Giải thuật (tiếp theo) – Mỗi xử lý active nhận thơng báo • Nếu thơng báo fast đổi thành thơng báo slow • Nuốt chuyển tiếp thơng báo – Bộ xử lý nhận lại thông báo chứa id trở thành thủ lĩnh – Quy tắc nuốt thơng báo • Thơng báo bị nuốt xử lý id thông báo > id nhỏ mà xử lý nhận đuợc thông báo biết – bao gồm id xử lý nhận xử lý active – bỏ qua id xử lý nhận xử lý relay – Quy tắc chuyển tiếp thơng báo • Nếu thơng báo fast chuyển tiếp • Nếu thơng báo slow làm trễ 2i - vịng trước chuyển tiếp – i id xử lý khởi tạo thông báo Pseudocode (1) Pseudocode (2) // Với thơng báo (m,h) m: id xử lý khởi tạo thông báo, h:1 thông báo fast, slow Phân tích giải thuật đồng dạng (1) • Tính đắn – Chỉ xử lý có id nhỏ số xử lý active nhận thơng báo chứa id • Độ phức tạp thơng báo – Thơng báo có id nhỏ nhanh chặn thông báo khác không cho phát sinh nhiều – Phân thông báo làm ba loại • Loại 1: Các thơng báo fast • Loại 2: Các thơng báo slow gửi thơng báo thủ lĩnh cịn fast • Loại 3: Các thơng báo slow gửi thông báo thủ lĩnh trở thành slow Phân tích giải thuật đồng dạng (2) • Số thông báo loại – Không xử lý nhận q thơng báo fast • Giả sử xử lý pi nhận hai thông báo fast, từ pk, từ pj, với pk cách xa pi pj theo chiều kim đồng hồ • Bộ xử lý pj phải trở thành active trước nhận thơng báo • Để đến pi, thông báo fast pk phải đến pj pj trạng thái active • Thơng báo fast pk chuyển thành slow trước đến pi – Tổng số thông báo loại ≤ n pk pj pi 10 Phân tích giải thuật đồng dạng (3) • Số thơng báo loại – Số bước dịch thông báo loại có id i ≤ n/2i – • Thơng báo thủ lĩnh fast ≤ n vịng • Thơng báo slow có id i 2i vịng dịch chuyển lần n −1 n Tổng số thông báo loại ≤ ∑ i ≤ n i =1 • Nhiều thơng báo có id từ đến n - • Số thơng báo loại – Số bước dịch thông báo loại có id i ≤ n2x/2i – • Số vịng để thơng báo slow thủ lĩnh có id x trở ≤ n2x • Sau đó, khơng có thêm thơngn −báo gửi 20 Tổng số thông báo loại ≤ ∑ n 2i ≤ 2n i =0 • Nhiều thơng báo có id từ đến n - (x = 0) 11 Phân tích giải thuật đồng dạng (4) • Độ phức tạp thông báo O(n) – Tổng số thơng báo ≤ 4n • Độ phức tạp thời gian O(n2x) – Tổng số vòng ≤ n2x (x id thủ lĩnh) 12 BTL dựa so sánh • Tính chất chung hai giải thuật đồng học – Sử dụng id để xác định độ trễ thơng báo • Phương cách khơng chuẩn – Số vòng thực thỏa đáng phụ thuộc id • Các id lớn so với n • Sẽ chứng minh giải thuật sử dụng id để so sánh có độ phức tạp thơng báo Ω(nlogn) 13 Các khái niệm BTL dựa so sánh • Hai vòng R1 = (x1, x2, , xn) R2 = (y1, y2, , yn) tương đương thứ tự (order equivalent) xi < xj ⇔ yi < yj • Các xử lý pi R1 pj R2 tương ánh (matching) chúng có khoảng cách từ id nhỏ 14 Các khái niệm BTL dựa so sánh (2) – Hai xử lý vòng hoạt động (behave the same) vịng • Bộ xử lý gửi thông báo sang trái (phải) ⇔ Bộ xử lý gửi thông báo sang trái (phải) • Bộ xử lý thành thủ lĩnh ⇔ Bộ xử lý thành thủ lĩnh – Một giải thuật bầu thủ lĩnh gọi dựa so sánh (comparison- based) ∀ cặp vòng R1 R2 tương đương thứ tự, cặp xử lý tương ánh pi R1 pj R2 hoạt động exec(R1) exec(R2) 15 Cận thông báo (1) • Định lý ∀ n ≥ lũy thừa 2, ∃ vịng kích thước n cho giải thuật đồng dựa so sánh thực gửi Ω(nlogn) thơng báo • Các bước chứng minh – Với n, xây dựng vịng Sn có tính đối xứng cao cho giải thuật dựa so sánh tiêu tốn nhiều thơng báo • Tính đối xứng cao nghĩa nhiều xử lý có miền lân cận tương đương thứ tự ⇒ thực (gửi thông báo) • Chứng minh hai xử lý có miền lân cận tương đương thứ tự vòng thực (khơng phải vịng khác nhau) – Tính số lượng thơng báo cần gửi dựa vào số lượng miền lân cận vòng số vịng có thơng báo gửi cần thiết để thực giải thuật 16 Cận thông báo (2) • Một số khái niệm – Một vịng tích cực vịng có thơng báo gửi • Với giải thuật thơng thường, xử lý biết thơng tin vịng khơng tích cực • Với giải thuật dựa so sánh, biết • Một vịng tích cực thứ k lớn nhiều vịng thứ k Dựa vào số vịng tích cực số thơng báo gửi vịng để tính tốn độ phức tạp thơng báo – Một vịng kích thước n cách thưa (spaced ring) ∀ id x thuộc vòng, id x - đến x - n không thuộc vịng • Bổ đề – Nếu vịng R cách thưa pi pj có miền lân cận bán kính k tương đương thứ tự pi pj hoạt động qua k vịng tích cực 17 Chứng minh bổ đề • Xây dựng R' cho – Các miền lân cận bán kính k pj R' pi R giống hệt – Các id R' đôi khác – R' tương đương thứ tự với R – pj R' tương ánh với pj R 18 Chứng minh bổ đề (tiếp) • pi exec(R) qua k vịng tích cực hoạt động giống pj exec(R') – Vì có miền lân cận bán kính k • pj exec(R') qua k vịng tích cực hoạt động pj exec(R) – Vì tương ánh với Vấn đề làm để xây dựng vịng R cách thưa có miền lân cận bán kính k tương đương thứ tự ? 19 Xây dựng vịng đối xứng cao • Xây dựng Sn đối xứng cao qua hai bước – Xây dựng Rnrev • Với i (i = 0, , n - 1), lấy id pi rev(i), rev(i) số nguyên có biểu diễn nhị phân dùng logn bit đảo ngược biểu diễn nhị phân i • Các phân đoạn độ dài j Rnrev (j lũy thừa 2) tương đương thứ tự với – Sn phiên cách thưa Rnrev • Nhân id Rnrev lên n + lần cộng thêm n 20 Bổ đề số miền lân cận bán kính k Sn • Bổ đề ∀ k < n/8, ∀ miền lân cận N bán kính k Sn, có nhiều n 2(2k + 1) miền lân cận bán kính k Sn tương đương thứ tự với N (kể N) • Chứng minh bổ đề – – – – N có số hàng xóm 2k +1 Gọi j số lũy thừa bé thỏa mãn 2(2k + 1)> j > 2k+1 Chia Sn thành n/j miền cho có miền chứa N Do cách xây dựng Sn, tất miền tương đương thứ tự – Có n/j miền hay có nhiều n/2(2k+1) tương đương thứ tự với N 21 Bổ đề số vịng tích cực • Bổ đề – Số vịng tích cực exec(Sn) ≥ n/8 • Chứng minh bổ đề – Giả sử số vịng tích cực T < n/8 • Gọi pi thủ lĩnh bầu • Trạng thái xử lý phụ thuộc vào miền lân cận bán kinh T n 2(2T + 1) • Theo bổ đề 2, có nhiều miền lân cận bán kính T tương đương với miềnnlân >cận bán kính T pi • n ≥ T < n/8 ⇒ 2(2T + 1) ∀ ∃ pj ≠ pi có miền lân cận bán kính T tương đương thứ tự với miền lân cận bán kính T pi • Theo bổ đề 1, pj bầu • Mâu thuẫn 22 Bổ đề số thơng báo vịng tích cực • Bổ đề n – Có 2(2k + 1) thơng báo gửi vịng tích cực thứ k exec(Sn), ≤ k ≤ n/8 • Chứng minh bổ đề – Ở vịng tích cực có ≥ n1 xử lý pi gửi thơng báo • Theo bổ đề 2, có 2(2k + 1) xử lý có miền lân cận bán kính k tương đương thứ tự với miền lân cận k pi • Theo bổ đề 1, xử lý gửi thơng báo vịng tích cực thứ k • Tổng số thông báo gửi exec(Sn) n /8 n/8 n n ≥ = Ω(n log n) ∑ ∑ k =1 k k =1 2( k + 1) 23 Bài tập số • Đề bài: Bài tập 3.9 (SGK) Với vòng Rnrev (trong phần chứng minh định lý Cận thông báo), chứng minh chia Rnrev thành n/j phần đoạn j lũy thừa phân đoạn độ dài j Rnrev tương đương thứ tự với • • • Thời hạn nộp bài: Thứ 21/5/2007 Địa gửi bài: hoaison@gmail.com, sonnh_cn@vnu.edu.vn Đầu đề email: [BT cac he phan tan] [4] Tênhọcviên 24 ... thông báo loại có id i ≤ n2x/2i – • Số vịng để thơng báo slow thủ lĩnh có id x trở ≤ n2x • Sau đó, khơng có thêm thơngn −báo gửi 20 Tổng số thông báo loại ≤ ∑ n 2i ≤ 2n i =0 • Nhiều thơng báo... phụ thu? ??c id • Các id lớn so với n • Sẽ chứng minh giải thu? ??t sử dụng id để so sánh có độ phức tạp thơng báo Ω(nlogn) 13 Các khái niệm BTL dựa so sánh • Hai vịng R1 = (x1, x2, , xn) R2 = (y1, y2,... Sn, có nhiều n 2( 2k + 1) miền lân cận bán kính k Sn tương đương thứ tự với N (kể N) • Chứng minh bổ đề – – – – N có số hàng xóm 2k +1 Gọi j số lũy thừa bé thỏa mãn 2( 2k + 1)> j > 2k+1 Chia Sn thành

Ngày đăng: 19/04/2022, 06:54

Từ khóa liên quan

Mục lục

  • Chương 3 BẦU THỦ LĨNH TRÊN VÒNG (2)

  • Nội dung

  • BTL đồng bộ không đồng dạng

  • BTL đồng bộ đồng dạng (1)

  • BTL đồng bộ đồng dạng

  • BTL đồng bộ đồng dạng (3)

  • Pseudocode (1)

  • Pseudocode (2)

  • Phân tích giải thuật đồng dạng (1)

  • Phân tích giải thuật đồng dạng (2)

  • Phân tích giải thuật đồng dạng (3)

  • Phân tích giải thuật đồng dạng (4)

  • BTL dựa trên so sánh

  • Các khái niệm trong BTL dựa trên so sánh

  • Các khái niệm trong BTL dựa trên so sánh (2)

  • Cận dưới thông báo (1)

  • Cận dưới thông báo (2)

  • Chứng minh bổ đề 1

  • Chứng minh bổ đề 1 (tiếp)

  • Xây dựng vòng đối xứng cao

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

  • Đang cập nhật ...

Tài liệu liên quan