SlideShare una empresa de Scribd logo
1 de 17
SEMINAR
Sử dụng phương pháp tham lam để giải quyết
bài toán lập lịch công việc.
SVTH: Nguyễn Danh Thanh
Nội Dung
1 Phát biểu bài toán
2 Giải quyết bài toán
3 Chứng minh tính đúng đắn
4 Tính toán độ phức tạp
5 Giới thiệu chương trình
6 Ứng dụng thực tế
1. Phát biểu bài toán
1.1 Bài toán
Cho n việc cần phải hoàn thành, mỗi việc
thực hiện trong 1 đơn vị thời gian. Việc i sẽ đem
lại wi tiền thưởng nếu hoàn thành đúng hạn di .
[?].Tìm cách thực hiện các công việc để có lợi
nhuận cao nhất mà thời gian thực hiện là ít nhất.
1. Phát biểu bài toán
1.2 Ví dụ
Làm việc nào trước đây
!!!!......
1. Phát biểu bài toán
1.3 Input/Output
Input: n bộ {i , di , wi }
i = 1…n; di € N+ ; wi € Z+.
Output: B, T.
i: Công việc thứ i.
di: Thời điểm kết thúc công việc i.
wi: Số tiền được thưởng nếu hoàn thành công việc i.
B: Lịch thực hiện công việc sao cho T là lớn nhất.
T: Tổng số tiền được thưởng.
2. Giải quyết bài toán
2.1 Ý tưởng 30s
Bước 1: Xác định tất cả các lịch có thể tạo ra từ n công việc.
Bước 2: Tính tổng số phần thưởng ở mỗi lịch.
Bước 3: So sánh tổng phần thưởng ở các lịch -> Đưa ra lịch cần tìm
và tổng tiền thưởng tương ứng.
2. Giải quyết bài toán
2.2 Ý tưởng 30s
Xếp n công việc vào n thời điểm ta có n! cách -> có n! lịch.
Với n = 3 -> 3! = 6
n = 10 -> 10! = 3 628 800
n = 60 -> 60! = 8.32 x 1081
……………………………
n = 10000 ?
Có cách khác không ?
2. Giải quyết bài toán
2.3 Sử dụng phương pháp tham lam
- Sắp xếp lại lịch theo chiều không tăng của phần thưởng wi. Thay đổi
i và di tương ứng.
- Xét trục thời gian B[m]. m = max(di), k=0.
+ Nếu giờ b[di] trên B rỗi thì gán b[di] = i.
+ Nếu giờ b[di] trên B đã bận thì tìm giờ b[j] (j< di) rỗi gần b(di)
nhất.
Nếu tồn tại giờ b[j] thì gán b[j] = i.
Ngược lại c[k++]= i.
- Dồn các việc i trên B để tạo lịch làm việc trù mật.
- Bổ xung các việc trên C vào B.
2. Giải quyết bài toán
2.3 Sử dụng phương pháp tham lam !
Thời gian(h) 1 2 3 4 5 6 7 8 9
Công việc
Tiền thưởng ($)
Công việc (i)
Thời hạn (di)
Tiền thưởng (wi)
5
3
90
6
7
60
3
4
50
4
6
40
2
2
40
8
2
30
1
4
20
7
9
10
1
4
20
2 5 3 4 6 7
30 40 90 50 40 60 10
8 1
20
Tổng tiền thưởng : T = 320!
2. Giải quyết bài toán
2.4 Giải thuật:
1. Sort W, wi > =wj . vs j > i. and change ai ,di
2. T = 0; m = max(di); B[i] = 0, i = 0…m, k = 0.
For i = 1 to n do
j = di
while B[j] > 0 do - - j.
if j = 0 then C[k++] = ai .
else
B[j] = ai .
T += wi .
Exit for
3. f0 = 0,
For i = 1 to m do
if B[i] > 0 then B[f0++] = B[i].
4. B = B +C.
Return B, T.
3. Chứng minh tính đúng đắn
1.Thời gian thực hiện n công việc là ít nhất.
Lịch làm việc trù mật.
Thời điểm bj thực hiện chỉ công việc i.
N công việc.
=> Thời gian thực hiện là n đvtg.
2.Phần thưởng nhận được là lớn nhất.
Xét {ci}. i =1…n ci > cj .
Tại mỗi bước chọn pi, wi đạt max.
Tổng phần thưởng nhận được là lớn nhất
4. Độ phức tạp thuật toán
4.1 Độ phức tạp thời gian
1. Sort W, wi > =wj . vs j > i. and change ai ,di
2. T = 0; m = max(di); B[i] = 0, i = 0…m, k = 0.
For i = 1 to n do
j = di
while B[j] > 0 do - - j.
if j = 0 then C[k++] = ai .
else
B[j] = ai .
T += wi .
Exit for
3. f0 = 0,
For i = 1 to m do
if B[i] > 0 then B[f0++] = B[i].
4. B = B +C.
Return B, T.
O(n.m)
O(m)
Độ phức tạp O(n.m)
O(nlogn)
4. Độ phức tạp thuật toán
4.2 Độ phức tạp không gian
1 mảng lưu n thời hạn kết thúc O(n)
1 mảng lưu n phần thưởng tương ứng O(n)
1 mảng trục thời gian m O(m)
1 mảng lưu công việc trễ k=|m-n| O(k)
Độ phức tạp không gian: O(n)
5. Giới thiệu chương trình
• Ngôn ngữ lập trình C++
• Dữ liệu đầu vào
• Đầu ra
5. Giới thiệu chương trình
5.2 So sánh kết quả
Thời gian mili giây
6. Ứng dụng thực tế
• Xếp thời gian biểu
• Lập lịch cho CPU
Phương pháp tham lam giải bài toán lập lịch công việc

Más contenido relacionado

La actualidad más candente

Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng HồBáo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng HồzDollz Lovez
 
Phân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngPhân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngleemindinh
 
Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Nhóc Nhóc
 
chuong 4. dai so boole
chuong 4.  dai so boolechuong 4.  dai so boole
chuong 4. dai so boolekikihoho
 
Ôn thi mạng máy tính
Ôn thi mạng máy tínhÔn thi mạng máy tính
Ôn thi mạng máy tínhKinhDinhBach
 
Mối quan hệ giữa class và object
Mối quan hệ giữa class và objectMối quan hệ giữa class và object
Mối quan hệ giữa class và objectTrực Lê Công
 
Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05Nhóc Nhóc
 
Phương pháp nhánh cận
Phương pháp nhánh cậnPhương pháp nhánh cận
Phương pháp nhánh cậnDiên Vĩ
 
Hd th sql server_tuan5_n_khanh
Hd th sql server_tuan5_n_khanhHd th sql server_tuan5_n_khanh
Hd th sql server_tuan5_n_khanhHai Rom
 
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngPhân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngNguyễn Danh Thanh
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Nguyễn Công Hoàng
 
Tài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tínhTài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tínhJojo Kim
 
Bài 1 - Làm quen với C# - Lập trình winform
Bài 1 - Làm quen với C# - Lập trình winformBài 1 - Làm quen với C# - Lập trình winform
Bài 1 - Làm quen với C# - Lập trình winformMasterCode.vn
 
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sựXây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sựAskSock Ngô Quang Đạo
 
Xây dựng biểu đồ use case
Xây dựng biểu đồ use caseXây dựng biểu đồ use case
Xây dựng biểu đồ use caseTrung Chinh Hà
 
De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006Tran Tien
 
91684060 356-cau-trắc-nghiệm-csdl-2
91684060 356-cau-trắc-nghiệm-csdl-291684060 356-cau-trắc-nghiệm-csdl-2
91684060 356-cau-trắc-nghiệm-csdl-2tranquanthien
 

La actualidad más candente (20)

Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng HồBáo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
Báo Cáo Đồ Án 2 : Thiết Kế Web Bán Đồng Hồ
 
Bai tap thuc hanh
Bai tap thuc hanhBai tap thuc hanh
Bai tap thuc hanh
 
Ktmt chuong 2
Ktmt chuong 2Ktmt chuong 2
Ktmt chuong 2
 
Phân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàngPhân tích và thiết kế hệ thống quản lý bán hàng
Phân tích và thiết kế hệ thống quản lý bán hàng
 
Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02
 
chuong 4. dai so boole
chuong 4.  dai so boolechuong 4.  dai so boole
chuong 4. dai so boole
 
Ôn thi mạng máy tính
Ôn thi mạng máy tínhÔn thi mạng máy tính
Ôn thi mạng máy tính
 
Mối quan hệ giữa class và object
Mối quan hệ giữa class và objectMối quan hệ giữa class và object
Mối quan hệ giữa class và object
 
Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05Kiến trúc máy tính và hợp ngữ bài 05
Kiến trúc máy tính và hợp ngữ bài 05
 
Phương pháp nhánh cận
Phương pháp nhánh cậnPhương pháp nhánh cận
Phương pháp nhánh cận
 
Phân Tích Thiết Kế Hệ Thống Thông Tin - Quản Lý Điểm
Phân Tích Thiết Kế Hệ Thống Thông Tin -  Quản Lý ĐiểmPhân Tích Thiết Kế Hệ Thống Thông Tin -  Quản Lý Điểm
Phân Tích Thiết Kế Hệ Thống Thông Tin - Quản Lý Điểm
 
Hd th sql server_tuan5_n_khanh
Hd th sql server_tuan5_n_khanhHd th sql server_tuan5_n_khanh
Hd th sql server_tuan5_n_khanh
 
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di độngPhân tích thiết kế hệ thống của hàng bán điện thoại di động
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
 
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
Giáo trình Phân tích và thiết kế giải thuật - CHAP 1
 
Tài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tínhTài liệu tổng kểt môn mạng máy tính
Tài liệu tổng kểt môn mạng máy tính
 
Bài 1 - Làm quen với C# - Lập trình winform
Bài 1 - Làm quen với C# - Lập trình winformBài 1 - Làm quen với C# - Lập trình winform
Bài 1 - Làm quen với C# - Lập trình winform
 
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sựXây dựng cơ sở dữ liệu trong quản lý nhân sự
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
 
Xây dựng biểu đồ use case
Xây dựng biểu đồ use caseXây dựng biểu đồ use case
Xây dựng biểu đồ use case
 
De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006De thi qlda cntt itc vdc trac nghiem 05-2006
De thi qlda cntt itc vdc trac nghiem 05-2006
 
91684060 356-cau-trắc-nghiệm-csdl-2
91684060 356-cau-trắc-nghiệm-csdl-291684060 356-cau-trắc-nghiệm-csdl-2
91684060 356-cau-trắc-nghiệm-csdl-2
 

Similar a Phương pháp tham lam giải bài toán lập lịch công việc

Cđ dãy số viết theo quy luật
Cđ dãy số viết theo quy luậtCđ dãy số viết theo quy luật
Cđ dãy số viết theo quy luậtCảnh
 
Dedan chi tiet khu vuc 32010
Dedan chi tiet khu vuc 32010Dedan chi tiet khu vuc 32010
Dedan chi tiet khu vuc 32010ngoclinhtt2012
 
đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013
đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013
đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013diemthic3
 
Bai tap-toan-nang-cao-lop-7
Bai tap-toan-nang-cao-lop-7Bai tap-toan-nang-cao-lop-7
Bai tap-toan-nang-cao-lop-7Kim Liên Cao
 
Bai toan va thuat toan
Bai toan va thuat toanBai toan va thuat toan
Bai toan va thuat toanlethilien1993
 
Giai phuong-trinh-nghiem-nguyen-son
Giai phuong-trinh-nghiem-nguyen-sonGiai phuong-trinh-nghiem-nguyen-son
Giai phuong-trinh-nghiem-nguyen-sonNhập Vân Long
 
Ứng dụng đồng dư vào giải toán chia hết lớp 9
Ứng dụng đồng dư vào giải toán chia hết lớp 9Ứng dụng đồng dư vào giải toán chia hết lớp 9
Ứng dụng đồng dư vào giải toán chia hết lớp 9youngunoistalented1995
 
Toan hn da_full
Toan hn da_fullToan hn da_full
Toan hn da_fullNgGiaHi
 
Các bài toán về tỷ lệ thức
Các bài toán về tỷ lệ thứcCác bài toán về tỷ lệ thức
Các bài toán về tỷ lệ thứcKim Liên Cao
 
Hhc 2014 2015
Hhc 2014 2015Hhc 2014 2015
Hhc 2014 2015Vu Tuan
 
Tai lieu boi duong hsg toan 7 chuyen de
Tai lieu boi duong hsg toan 7 chuyen deTai lieu boi duong hsg toan 7 chuyen de
Tai lieu boi duong hsg toan 7 chuyen deLê Thảo Nguyên
 

Similar a Phương pháp tham lam giải bài toán lập lịch công việc (20)

Cđ dãy số viết theo quy luật
Cđ dãy số viết theo quy luậtCđ dãy số viết theo quy luật
Cđ dãy số viết theo quy luật
 
Dedan chi tiet khu vuc 32010
Dedan chi tiet khu vuc 32010Dedan chi tiet khu vuc 32010
Dedan chi tiet khu vuc 32010
 
đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013
đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013
đề Thi tuyển sinh lớp 10 thpt tỉnh hà nội năm 2013
 
Bai tap-toan-nang-cao-lop-7
Bai tap-toan-nang-cao-lop-7Bai tap-toan-nang-cao-lop-7
Bai tap-toan-nang-cao-lop-7
 
Gt12cb 67
Gt12cb 67Gt12cb 67
Gt12cb 67
 
Gt12cb 68
Gt12cb 68Gt12cb 68
Gt12cb 68
 
Gt12cb 69
Gt12cb 69Gt12cb 69
Gt12cb 69
 
Toan9 hd thang1
Toan9 hd thang1Toan9 hd thang1
Toan9 hd thang1
 
Toan9 hd thang1
Toan9 hd thang1Toan9 hd thang1
Toan9 hd thang1
 
Bai toan va thuat toan
Bai toan va thuat toanBai toan va thuat toan
Bai toan va thuat toan
 
Giai phuong-trinh-nghiem-nguyen-son
Giai phuong-trinh-nghiem-nguyen-sonGiai phuong-trinh-nghiem-nguyen-son
Giai phuong-trinh-nghiem-nguyen-son
 
Gt12cb 70
Gt12cb 70Gt12cb 70
Gt12cb 70
 
Ứng dụng đồng dư vào giải toán chia hết lớp 9
Ứng dụng đồng dư vào giải toán chia hết lớp 9Ứng dụng đồng dư vào giải toán chia hết lớp 9
Ứng dụng đồng dư vào giải toán chia hết lớp 9
 
Hoan chinh
Hoan chinhHoan chinh
Hoan chinh
 
TỔNG HỢP KIẾN THỨC TOÁN LỚP 2
TỔNG HỢP KIẾN THỨC TOÁN LỚP 2TỔNG HỢP KIẾN THỨC TOÁN LỚP 2
TỔNG HỢP KIẾN THỨC TOÁN LỚP 2
 
Toan hn da_full
Toan hn da_fullToan hn da_full
Toan hn da_full
 
Gt12cb 66
Gt12cb 66Gt12cb 66
Gt12cb 66
 
Các bài toán về tỷ lệ thức
Các bài toán về tỷ lệ thứcCác bài toán về tỷ lệ thức
Các bài toán về tỷ lệ thức
 
Hhc 2014 2015
Hhc 2014 2015Hhc 2014 2015
Hhc 2014 2015
 
Tai lieu boi duong hsg toan 7 chuyen de
Tai lieu boi duong hsg toan 7 chuyen deTai lieu boi duong hsg toan 7 chuyen de
Tai lieu boi duong hsg toan 7 chuyen de
 

Último

Bài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnBài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnpmtiendhti14a5hn
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...Nguyen Thanh Tu Collection
 
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfxemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfXem Số Mệnh
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptPhamThiThuThuy1
 
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptxBài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptxDungxPeach
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...Nguyen Thanh Tu Collection
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngYhoccongdong.com
 
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...ChuThNgnFEFPLHN
 
Giáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình PhươngGiáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình Phươnghazzthuan
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfNguyen Thanh Tu Collection
 
các nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emcác nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emTrangNhung96
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfXem Số Mệnh
 
Kiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietKiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietNguyễn Quang Huy
 
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdfltbdieu
 
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...hoangtuansinh1
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhdangdinhkien2k4
 
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgspowerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgsNmmeomeo
 
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhkinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhdtlnnm
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạowindcances
 

Último (20)

Bài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnBài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiện
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
 
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfxemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.ppt
 
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptxBài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
 
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
 
Giáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình PhươngGiáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình Phương
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
 
các nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emcác nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ em
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
 
Kiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietKiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net Viet
 
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
 
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hành
 
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgspowerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
 
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhkinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
 

Phương pháp tham lam giải bài toán lập lịch công việc

  • 1. SEMINAR Sử dụng phương pháp tham lam để giải quyết bài toán lập lịch công việc. SVTH: Nguyễn Danh Thanh
  • 2. Nội Dung 1 Phát biểu bài toán 2 Giải quyết bài toán 3 Chứng minh tính đúng đắn 4 Tính toán độ phức tạp 5 Giới thiệu chương trình 6 Ứng dụng thực tế
  • 3. 1. Phát biểu bài toán 1.1 Bài toán Cho n việc cần phải hoàn thành, mỗi việc thực hiện trong 1 đơn vị thời gian. Việc i sẽ đem lại wi tiền thưởng nếu hoàn thành đúng hạn di . [?].Tìm cách thực hiện các công việc để có lợi nhuận cao nhất mà thời gian thực hiện là ít nhất.
  • 4. 1. Phát biểu bài toán 1.2 Ví dụ Làm việc nào trước đây !!!!......
  • 5. 1. Phát biểu bài toán 1.3 Input/Output Input: n bộ {i , di , wi } i = 1…n; di € N+ ; wi € Z+. Output: B, T. i: Công việc thứ i. di: Thời điểm kết thúc công việc i. wi: Số tiền được thưởng nếu hoàn thành công việc i. B: Lịch thực hiện công việc sao cho T là lớn nhất. T: Tổng số tiền được thưởng.
  • 6. 2. Giải quyết bài toán 2.1 Ý tưởng 30s Bước 1: Xác định tất cả các lịch có thể tạo ra từ n công việc. Bước 2: Tính tổng số phần thưởng ở mỗi lịch. Bước 3: So sánh tổng phần thưởng ở các lịch -> Đưa ra lịch cần tìm và tổng tiền thưởng tương ứng.
  • 7. 2. Giải quyết bài toán 2.2 Ý tưởng 30s Xếp n công việc vào n thời điểm ta có n! cách -> có n! lịch. Với n = 3 -> 3! = 6 n = 10 -> 10! = 3 628 800 n = 60 -> 60! = 8.32 x 1081 …………………………… n = 10000 ? Có cách khác không ?
  • 8. 2. Giải quyết bài toán 2.3 Sử dụng phương pháp tham lam - Sắp xếp lại lịch theo chiều không tăng của phần thưởng wi. Thay đổi i và di tương ứng. - Xét trục thời gian B[m]. m = max(di), k=0. + Nếu giờ b[di] trên B rỗi thì gán b[di] = i. + Nếu giờ b[di] trên B đã bận thì tìm giờ b[j] (j< di) rỗi gần b(di) nhất. Nếu tồn tại giờ b[j] thì gán b[j] = i. Ngược lại c[k++]= i. - Dồn các việc i trên B để tạo lịch làm việc trù mật. - Bổ xung các việc trên C vào B.
  • 9. 2. Giải quyết bài toán 2.3 Sử dụng phương pháp tham lam ! Thời gian(h) 1 2 3 4 5 6 7 8 9 Công việc Tiền thưởng ($) Công việc (i) Thời hạn (di) Tiền thưởng (wi) 5 3 90 6 7 60 3 4 50 4 6 40 2 2 40 8 2 30 1 4 20 7 9 10 1 4 20 2 5 3 4 6 7 30 40 90 50 40 60 10 8 1 20 Tổng tiền thưởng : T = 320!
  • 10. 2. Giải quyết bài toán 2.4 Giải thuật: 1. Sort W, wi > =wj . vs j > i. and change ai ,di 2. T = 0; m = max(di); B[i] = 0, i = 0…m, k = 0. For i = 1 to n do j = di while B[j] > 0 do - - j. if j = 0 then C[k++] = ai . else B[j] = ai . T += wi . Exit for 3. f0 = 0, For i = 1 to m do if B[i] > 0 then B[f0++] = B[i]. 4. B = B +C. Return B, T.
  • 11. 3. Chứng minh tính đúng đắn 1.Thời gian thực hiện n công việc là ít nhất. Lịch làm việc trù mật. Thời điểm bj thực hiện chỉ công việc i. N công việc. => Thời gian thực hiện là n đvtg. 2.Phần thưởng nhận được là lớn nhất. Xét {ci}. i =1…n ci > cj . Tại mỗi bước chọn pi, wi đạt max. Tổng phần thưởng nhận được là lớn nhất
  • 12. 4. Độ phức tạp thuật toán 4.1 Độ phức tạp thời gian 1. Sort W, wi > =wj . vs j > i. and change ai ,di 2. T = 0; m = max(di); B[i] = 0, i = 0…m, k = 0. For i = 1 to n do j = di while B[j] > 0 do - - j. if j = 0 then C[k++] = ai . else B[j] = ai . T += wi . Exit for 3. f0 = 0, For i = 1 to m do if B[i] > 0 then B[f0++] = B[i]. 4. B = B +C. Return B, T. O(n.m) O(m) Độ phức tạp O(n.m) O(nlogn)
  • 13. 4. Độ phức tạp thuật toán 4.2 Độ phức tạp không gian 1 mảng lưu n thời hạn kết thúc O(n) 1 mảng lưu n phần thưởng tương ứng O(n) 1 mảng trục thời gian m O(m) 1 mảng lưu công việc trễ k=|m-n| O(k) Độ phức tạp không gian: O(n)
  • 14. 5. Giới thiệu chương trình • Ngôn ngữ lập trình C++ • Dữ liệu đầu vào • Đầu ra
  • 15. 5. Giới thiệu chương trình 5.2 So sánh kết quả Thời gian mili giây
  • 16. 6. Ứng dụng thực tế • Xếp thời gian biểu • Lập lịch cho CPU