Thuật toán nhánh cận song song giải quyết bài toán lập lịch công việc

Một phần của tài liệu Luận văn thạc sĩ công nghệ thông tin song song hoá bài toán jsp trên một số môi trường tính toán song song và phân tán (Trang 100 - 101)

6. Phương pháp nghiên cứu

3.3. Thuật toán nhánh cận song song giải quyết bài toán lập lịch công việc

Trong công trình nghiên cứu này tác giả tìm hiểu và xây dựng thuật toán song song theo phương pháp phân chia dữ liệu. Thuật toán nhánh cận tuần tự được xây dựng từ hai thuật toán chính là thuật toán phân nhánh và thuật toán tính cận. Thuật toán phân nhánh sẽ tạo ra được cây phân cấp gồm nhiều nhánh và mỗi nhánh từ nút gốc đến nút lá sẽ chứa lịch trình thực hiện công việc, thuật toán tính cận giúp tính toán được chi phí thời gian thực hiện công việc ở mỗi nhánh. Trong trường hợp này, ý tưởng xây dựng thuật toán song song của tác giả đề xuất chủ yếu xây dựng dựa trên thuật toán phân nhánh. Dữ liệu ban đầu sẽ được phân phối và gửi về cho các tiến trình con sau khi tiến trình con nhận được sẽ thực hiện công việc phân nhánh trên tập dữ liệu nhận được. Do đó mô hình được áp dụng ở đây sẽ là mô hình Master –Slave. Mô hình này có thể được định nghĩa như sau: một bộ xử lý Master giữ tất cả thông tin về không gian trạng thái, nơi mà chứa đựng số lượng các bài toán con chưa được phân nhánh trên cây và nó cũng lưu giữ lời giải hiện thời. Master gửi bài toán con tới Slave và nhận các bài toán con mới được phát sinh từ các Slave đó. Các Slave mở rộng nhánh cây từ những bài toán con và phát sinh

11 11 11 12 12 12 12 12 11 11 11 11 11

thêm những bài toán con mới. Một Slave nhận một bài toán con chỉ khi có những bài toán con mà có khả năng dẫn tới một lịch trình tối ưu. Chiến lược này đề xuất những sự kiện có ý nghĩa như là khả năng điều khiển dễ dàng và thuật toán nhánh cận song song theo phương pháp dễ hiểu và tự nhiên hơn.

Mô tả thuật toán:

- Master:

▪ Khởi tạo tập dữ liệu ban đầu.

▪ Phân chia tập dữ liệu đến các Slave. ▪ Nhận các nhánh cây từ các Slave

▪ Đánh giá và tìm ra nhánh cây có chi phí thực hiện tối ưu nhất. - Slave:

▪ Nhân tập dữ liệu từ Master

▪ Tiến hành phân nhánh dựa trên tập dữ liệu nhận được từ Master ▪ Gửi nhánh cây tìm được về cho Master.

Với mô hình song song nêu trên tác giả đề xuất hai thuật toán song song mà sự khác biệt giữa hai phương pháp chủ yếu ở quá trình phân hoạch tập dữ liệu để phân phối đến các tiến trình slave. Ngoài ra tại mỗi tiến trình slave thực hiện tìm kiếm nhánh cây tác giả cải tiến thuật toán phân nhánh sau khi đã tính toán xong cận của một nút trên cây.

Một phần của tài liệu Luận văn thạc sĩ công nghệ thông tin song song hoá bài toán jsp trên một số môi trường tính toán song song và phân tán (Trang 100 - 101)

Tải bản đầy đủ (PDF)

(115 trang)