Báo cáo bài tập lớn đề bài Bố trí phòng họp

22 2.2K 21
Báo cáo bài tập lớn đề bài Bố trí phòng họp

Đ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

Báo cáo bài tập lớn đề bài Bố trí phòng họp

LOGO TRƯỜNG ĐẠI HỌC SƯ PHẠM TPHCM KHOA CÔNG NGHỆ THÔNG TIN LỚP TIN HỌC KHÓA 35 BÁO CÁO BÀI TẬP LỚN MÔN: CẤU TRÚC DỮ LIỆU 2 GVHD: ThS. NGUYỄN THỊ BÍCH NGÂN THỰC HIỆN: NHÓM 25 NGUYỄN NGỌC NHẤT LINH ĐINH VĂN QUYÊN ĐỀ BÀI  Tên đề bài: Bố trí phòng họp.  Mô tả: Có n cuộc họp, cuộc họp thứ i bắt đầu vào thời điểm s i và kết thúc ở thời điểm f i . Do chỉ có một phòng hội thảo nên 2 cuộc họp bất kì sẽ được cùng bố trí phục vụ nếu khoảng thời gian làm việc của chúng chỉ giao nhau tại đầu mút. Hãy bố trí phòng họp để phục vụ được nhiều cuộc họp nhất. 2 PHÂN TÍCH BÀI TOÁN  Giả sử ta có một tập S = {1, 2, …, n} gồm n cuộc họp nhưng chỉ có 1 phòng hội thảo nên chỉ có thể được dùng cho một cuộc họp tại một lúc.  Mỗi cuộc họp i có thời điểm bắt đầu s i và một thời điểm kết thúc f i , mà s i ≤ f i . Nếu được lựa chọn, cuộc họp i diễn ra trong thời khoảng [s i , f i ). Cuộc họp i và j là tương thích nếu thời khoảng [s i , f i ) và [s j , f j ) không phủ lấp lên nhau (tức là, i và j là tương thích nếu s i >= f j hay s j >= f i ). MĐFBM HDJF HJFD JDKF 3 PHÂN TÍCH BÀI TOÁN 4 CuỘC HỌP 1 CuỘC HỌP 2 CuỘC HỌP 3 S1 S2 S3F1 F3 F2 Khởi tạo: A={1} S2<F1  không chọn cuộc họp 2 S3>F1  chọn cuộc họp 3. A={1;3} GIẢI THUẬT SƠ BỘ  Trong thủ tục áp dụng giải thuật tham lam để giải bài toán bố trí cuộc họp, ta cần phải sắp các cuộc họp theo thứ tự tăng của thời điểm kết thúc: f 1 ≤ f 2 ≤ … ≤ f n . procedure MEETING-SELECTOR(S, f) ; /* S là mảng giữ thời điểm bắt đầu và f là mảng giữ thời điểm kết thúc */ begin n := length[s]; A := {1}; i: = 1; for j: = 2 to n do if s j >= f i then /*i tương thích với mọi cuộc họp trong A */ begin A: = A ∪ {j}; i: = j end end 5 TỔ CHỨC DỮ LIỆU int s[MAX];//lưu thời gian bắt đầu cuộc họp int f[MAX];//lưu thời gian kết thúc cuộc họp char *name[MAX];//Lưu tên khoa có cuộc họp int luu[MAX];//Lưu cuộc họp đã xếp lịch int n;//số cuộc họp có thể có int dem=0;//lưu tổng số cuộc họp hiện tại đã được bố trí 6 CÁC HÀM CHÍNH void nhapDuLieuCuocHop(); void sapXep();//sắp xếp tăng theo thời gian kết thúc void boTriLichHop(); void xuatLichHop(); 7 HÀM BỐ TRÍ LỊCH HỌP void boTriLichHop() { //dem=0; luu[dem]=0; for(int i=1; i<n; ++i) { if(s[i]>=f[luu[dem]]) { dem++; luu[dem]=i; } } } 8 THÍ DỤ 9 i s i f i 1 1 3 2 5 7 3 8 10 4 6 11 5 11 14 6 15 17 7 17 19 8 19 26 9 23 25 10 24 29 NHẬN XÉT  Giải thuật tham lam áp dụng vào bài toán lựa chọn một khả năng tối ưu cục bộ với hy vọng sẽ dẫn đến một lời giải tối ưu toàn cục.  Giải thuật không nhất thiết đem lại lời giải tối ưu. Tuy nhiên thủ tục void boTriLichHop() ở trên thường tìm được một lời giải tối ưu cho một thể hiện của bài toán bố trí phòng họp. 10 [...]... KHÁC…  Giả sử dãy cuộc họp đã được sắp xếp tăng dần theo thời gian kết thúc  Hàm mục tiêu : y = độ dài dãy cuộc họp được sắp  Gọi L(i) là độ dài dãy cuộc họp được sắp dài nhất, các phần tử lấy trong miền từ 1 đến i và phần tử cuối cùng là i 1 2 3 … i i+1 Dãy cuộc họp 11 PP QUY HOẠCH ĐỘNG  Nhận xét: Với cách làm này ta đã chia 1 bài toán lớn (dãy con của n cuộc họp) thành các bài toán con cùng kiểu... dãy có i cuộc họp đầu tiên) Vấn đề là công thức truy hồi để phối hợp kết quả của các bài toán con 12 PP QUY HOẠCH ĐỘNG  Ta có công thức QHĐ để tính L(i) như sau:  L(0) = 1 (Hiển nhiên)  L(i) = 1+ LMax với LMax=max{L(j), với mọi phần tử j: 0≤j . 35 BÁO CÁO BÀI TẬP LỚN MÔN: CẤU TRÚC DỮ LIỆU 2 GVHD: ThS. NGUYỄN THỊ BÍCH NGÂN THỰC HIỆN: NHÓM 25 NGUYỄN NGỌC NHẤT LINH ĐINH VĂN QUYÊN ĐỀ BÀI  Tên đề bài: Bố trí phòng họp.  Mô tả: Có n cuộc họp, . nhau tại đầu mút. Hãy bố trí phòng họp để phục vụ được nhiều cuộc họp nhất. 2 PHÂN TÍCH BÀI TOÁN  Giả sử ta có một tập S = {1, 2, …, n} gồm n cuộc họp nhưng chỉ có 1 phòng hội thảo nên chỉ. một thể hiện của bài toán bố trí phòng họp. 10 MỘT HƯỚNG ĐI KHÁC…  Giả sử dãy cuộc họp đã được sắp xếp tăng dần theo thời gian kết thúc.  Hàm mục tiêu : y = độ dài dãy cuộc họp được sắp  Gọi

Ngày đăng: 08/04/2015, 10:06

Mục lục

  • PHÂN TÍCH BÀI TOÁN

  • PHÂN TÍCH BÀI TOÁN

  • GIẢI THUẬT SƠ BỘ

  • TỔ CHỨC DỮ LIỆU

  • HÀM BỐ TRÍ LỊCH HỌP

  • MỘT HƯỚNG ĐI KHÁC…

  • PP QUY HOẠCH ĐỘNG

  • PP QUY HOẠCH ĐỘNG

  • TỔ CHỨC DỮ LIỆU

  • TÀI LIỆU THAM KHẢO

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

Tài liệu liên quan