slide tối ưu tổ hợp
Trang 2Company name
Nội dung
Thuật toán 4
Giới thiệu bài toán 1
Các khái niệm 2
Mô hình hóa toán học 3
Giải bài toán 5
Một số ứng dụng thực tế 6
TUTH I – Nhóm 4
Trang 4Company name
1 Giới thiệu
Trong cuộc sống chúng ta thường gặp phải những vấn đề liên quan đến tổ chức như: phân công công việc, tuyển dụng theo yêu cầu, xếp lịch hay thời khóa biểu…
Câu hỏi đặt ra là giải quyết như thế nào cho tốt, cho đạt, thậm chí tối ưu để mang lại hiệu quả và lợi ích cao nhất cho công việc
TUTH I – Nhóm 4
Trang 5Company name
2 Ví dụ thực tế
Bài toán: Chọn 3 trong 4 người vào 3 vị trí làm việc
của cửa hàng Sao cho tiền lương phải trả là ít nhất và người được chọn phải đáp ứng được yêu cầu của
Trang 6cầu của công việc với chi phí bỏ ra là thấp nhất.
TUTH I – Nhóm 4
Trang 7Company name
3 Bài toán kinh điển
Bài toán “Đám cưới vùng quê”
Có m chàng trai và n cô gái ở một vùng quê
Đối với mỗi chàng trai ta biết các cô gái mà anh ta vừa ý
Có cách nào có thể tổ chức đám cưới mà chàng trai nào cũng sánh duyên với các cô gái mà mình vừa ý?
TUTH I – Nhóm 4
?
Trang 10Company name
2 Các khái niệm
Ví dụ đồ thị 2 phía:
TUTH I – Nhóm 4
Trang 11Company name
2 Các khái niệm
2.2 Đồ thị 2 phía đầy đủ:
Đồ thị G = (X Y, E) được gọi là đồ thị 2 phía đầy
đủ nếu: x X, y Y: (x,y) E
Ví dụ:
TUTH I – Nhóm 4
Trang 12Company name
2 Các khái niệm
2.3 Đồ thị 2 phía đầy đủ, cân bằng:
Đồ thì G = (X Y, E) được gọi là đồ thị 2 phía đầy
đủ, cân bằng nếu: |X| = |Y| = k
Ví dụ:
TUTH I – Nhóm 4
Trang 13Company name
2 Các khái niệm
2.4 Cặp ghép
Cho đồ thị 2 phía G = ( X Y, E), một tập con các
cạnh M của của E được gọi là “một cặp ghép của G”
nếu:
e 1 ,e 2 E, e 1 e 2 e 1 , e 2 không có đỉnh chung
TUTH I – Nhóm 4
Trang 147 8 1
5
o (1,6), (4,7), (5,8)
o (2,6), (5,7)
Trang 15Company name
2 Các khái niệm
2.5 Cặp ghép cực đại
M của G được gọi là “một cặp ghép cực đại” nếu
nó có lực lượng lớn nhất trong tất cả các cặp ghép của G
Chú ý:
Một đồ thị có thể có MỘT hay NHIỀU cặp ghép
cực đại
TUTH I – Nhóm 4
Trang 167 8 1
5
o (1,6), (4,7), (5,8)
o (2,6), (4,7), (5,8)
Trang 17Company name
2 Các khái niệm
2.6 Giá trị của cặp ghép
Giá trị của một cặp ghép M là tổng trọng số các cạnh của nó:
Trang 19Company name
3.1 Mô hình hóa toán học
Người và công việc được mô hình hóa thành các đỉnh:
Nếu người x i đáp ứng được công việc y j thì có cung
nối giữa 2 đỉnh với trọng số là số lương tương ứng.
Khi đó ta được đồ thị 2 phía có trọng số G = ( X Y , E).
TUTH I – Nhóm 4
? Yêu cầu bài toán đưa về: Tìm cặp ghép cực đại, giá trị cực tiểu của đồ thị G?Yêu cầu bài toán đưa về: Tìm cặp ghép cực đại, giá trị cực tiểu của đồ thị G?
Trang 20Company name
3.1 Mô hình hóa toán học
Ví dụ thực tế sau khi được mô hình hóa:
D
1
2 1 1 3
2 1
2 2
3
Trang 22Company nameTUTH I – Nhóm 4
4.1 Ý tưởng thuật toán
Thực hiện từng bước đưa các trọng số của các cung trong đồ thị về giá trị 0
Nhận thấy: Các trọng số của cặp ghép cực đại có giá trị cực tiểu sẽ tiến về 0 trước Dựa vào điều này mà ta
có thể tìm được nghiệm và dừng thuật toán tại một thời điểm thỏa mãn
TUTH I – Nhóm 4
Trang 23Company nameTUTH I – Nhóm 4
4.2 Các định lý bổ sung
Định lý 1: Nếu mọi trọng số của G đều không âm, tồn tại
một bộ k cạnh có trọng số 0 sao cho bộ này là một cặp
ghép của G thì bộ cạnh này chính là một “cặp ghép cực
đại, giá trị cực tiểu của G”.
Định lý 2: Với mọi đỉnh v của G, nếu cộng một số vào
tất cả các cạnh có đỉnh là v thì ta được đồ thị G’ mới có cùng cặp ghép cực đại giá trị cực tiểu với đồ thị G
Trang 24Company nameTUTH I – Nhóm 4
4.3 Hình thành thuật giải
Từ đồ thị 2 phía G = (X Y, E), ta xây dựng đồ thị 2 phía đầy đủ, cân bằng G’ = (X’ Y’,E’) Cách thực hiện:
Thêm các đỉnh ảo vào tập đỉnh nhỏ hơn.
Thêm các cạnh ảo có trọng số rất lớn vào các cạnh chưa có trong E.
Lưu đồ thị 2 phái đầy đủ, cân bằng vào ma trận 2 chiều:
Tìm cặp ghép cực đại giá trị cực tiểu của G’ sau đó suy ra cặp ghép cực
đại giá trị cực tiểu của G.
Trang 25quả của bài toán không đổi.
Định lý 1 Biến đổi đến khi ma trận thỏa mãn: tất cả
mọi phần tử đều không âm, tồn tại một bộ k phần tử 0, sao cho mỗi hàng chứa một số 0 của bộ này, mỗi cột chứa một số 0 của bộ này.
Trang 26Company nameTUTH I – Nhóm 4
4.4 Sơ đồ khối thuật toán Hungary
đó
Trừ mọi hàng cho GTNN của hàng
đó
Trừ mọi cột cho GTNN của cột đó
Trừ mọi cột cho GTNN của cột đó
Phủ các phần tử 0 với ít dòng nhất
Phủ các phần tử 0 với ít dòng nhất
n = k? mỗi hàng, mỗi cột chứa một số Lấy ra tập k số 0 thỏa mãn
0 của bộ này
Lấy ra tập k số 0 thỏa mãn mỗi hàng, mỗi cột chứa một số
0 của bộ này
Kết luận
Cộng các phần tử bị phủ với phần tử nhỏ nhất trong bảng
không bị phủ
Cộng các phần tử bị phủ với phần tử nhỏ nhất trong bảng
không bị phủ
Đ S
Trừ mọi hàng cho GTNN của ma trận
Trừ mọi hàng cho GTNN của ma trận
Độ phức tạp thuật toán O(n 3 )
Độ phức tạp thuật toán O(n 3 )
Trang 28Company name
5 Giải bài toán
Biểu diễn đồ thị dưới dạng ma trận
Trang 29Company name
5 Giải bài toán
Bước 2: Trừ lần lượt các hàng cho phần tử nhỏ nhất của
Trang 30Company name
5 Giải bài toán
Bước 3: Trừ lần lượt các cột cho phần tử nhỏ nhất của chúng:
Trang 31Company name
5 Giải bài toán
Bước 4: Phủ ma trận sao cho số đường ít nhất phủ hết các số
Trang 32Company name
5 Giải bài toán
Bước 6: Tìm ra bộ k số 0 thỏa mãn mỗi hàng, mỗi cột có đúng
Trang 33Company name
5 Giải bài toán
Như hình trên ta tìm được một bộ: A-3 , B-2 , C-4 , D-1
Loại bỏ các cạnh ảo chúng ta có cặp ghép cực đại, giá trị cực tiểu của đồ thị:
Vậy ta có 1 cách lựa chọn cho việc tuyển nhân sự của cửa hàng trong bài toán đã nêu.
Trang 34Company name
5 Giải bài toán
Vậy kết luận cho bài toán thực tế:
Tuyển người theo việc như sau:
An – công việc 3 (1 triệu/tháng)
Bình – công việc 2 (1 triệu/tháng)
Dương - công việc 1 (1 triệu/tháng)
D
1 2 1
1 3
2 1
2 2
3
Trang 38LOGO
Cảm ơn sự theo dõi của các bạn!
Tối ưu tổ hợp I – Nhóm 4