You are on page 1of 10

1/ Phương pháp Johnson

Chú ý: Trong từng trường hợp, các công việc được thực hiện trên 3 máy có thể áp
dụng phương pháp Johnson với điều kiện:

- t1min phải lớn hơn hoặc bằng t2max


- t3min phải lớn hơn hoặc bằng t2max

Cách giải:

+ Ta tiến hành cộng: ti1 + ti2 = Ti1

+ Và ti2 + ti3 = Ti2

Sau đó giải bình thường theo nguyên tắc Johnson

Ví dụ:

Công việc Máy 1 (giờ)- ti1 Máy 2 (giờ) - ti2 Máy 3 (giờ) - ti3
A 5 4 6
B 6 3 7
C 4 2 4
D 7 1 5
E 5 3 6
Yêu cầu: Hãy sắp xếp thứ tự giải quyết các công việc trên các máy sao cho
tổng thời gian hoàn thành tất cả các công việc trên 3 máy là ngắn nhất và tính tổng
thời gia hoàn thành tất cả các công việc trên 3 máy.

Trả lời:

Áp dụng được nguyên tắc Johnson

Công việc Ti1 = ti1 + ti2 Ti2 = ti2 + ti3


A 9 10
B 9 10
C 6 6
D 8 6
E 8 9
2/ Phương pháp phân giao n công việc cho n đối tượng

 Giả định 1: Số công việc = số đối tượng = n

 Giả định 2: Mỗi một công việc chỉ phân công cho một đối tượng

 Đối tượng: Máy móc, công nhân, nhóm công nhân…

 Yêu cầu: Hãy phân công các công việc cho các đối tượng sao cho thời
gian hoàn thành tất cả các công việc là ngắn nhất. Tính tổng thời
gian ngắn nhất đó.

Ví dụ: Một doanh nghiệp có 4 công việc dự định phân giao cho 4 nhân viên
A, B, C và D thực hiện. Do khả năng của từng nhân viên thích hợp với từng loại
công việc cụ thể khác nhau nên thời gian hoàn thành cũng khác nhau và được cho
trong bảng sau: Đơn vị tính: Giờ

Công việc
Nhân viên
1 2 3 4
A
14 27 36 49
B
21 29 41 44
C
34 42 48 68
D
46 24 15 32
Yêu cầu: Hãy tìm cách phân giao sao cho tổng thời gian thực hiện là ngắn
nhất và tính tổng thời gian đó.
Cách giải:

Công việc
Nhân viên
1 2 3 4
A
0 13 22 35
B
0 8 20 23
C
0 8 14 34
D
31 9 0 17

Công việc
Nhân viên
1 2 3 4
A
0 5 22 18
B
0 0 20 6
C
0 0 14 17
D
31 1 0 0

Công việc
Nhân viên
1 2 3 4
A 5
22 18
B
0 20 6
C
0 0 14 17
D 31
1 0

Số ô khoanh tròn (Số đường kẻ) = 3


Số hàng = 4

Số ô khoanh tròn < Số hàng

Điều chỉnh (Cải tiến) phương án:

Công việc
Nhân viên
1 2 3 4
A
0 5 16 12
B
0 0 14 0
C
0 0 8 11
D
37 7 0 0

Công việc
Nhân viên
1 2 3 4
A 5
16 12
B 0
0 14
C
0 8 11
D 37
7 0

Số ô khoanh tròn (Số đường kẻ) = 4

Số hàng = 4

Số ô khoanh tròn = Số hàng


Kết luận: Bài toán đã được giải

Phân công công việc Thời gian thực hiện Ghi chú
(Giờ)
Nhân viên A làm việc 1 14
Nhân viên B làm việc 4 44
Nhân viên C làm việc 2 42
Nhân viên D làm việc 3 15
Tổng 115

Các trường hợp suy biến của bài toán

TH1: Số công việc khác số đối tượng (Hay số dòng khác số cột)

Khi đó ta sẽ chuyển về bài toán có số công việc bằng số đối tượng (Số dòng
bằng số cột) bằng cách thêm một số công việc hoặc một số đối tượng giả (Hay
thêm một số dòng hay số cột giả) và cho giá trị của các ô trên các dòng giả hay cột
giả này bằng 0 rồi tiến hành giải bình thường.

+ Số công việc > Số đối tượng: Khi đó ta cần thêm một số đối tượng giả để
thỏa mãn số công việc bằng số đối tượng.

+ Số công việc < Số đối tượng: Khi đó ta cần thêm một số công việc giả để
thỏa mãn số công việc bằng số đối tượng.
Bài 13: Bạn có 6 công nhân để hoàn thành 5 công việc đó là: A, B, C, D, E, F. Tên
của 5 công việc đó là: Vào bản in, in, cắt xén, đóng dấu, hoàn tất. Tất cả 6 công
nhân đều có thể làm được 5 công việc trên, tuy nhiên thời gian hao phí cho từng
loại công việc là khác nhau. Sau đây là bảng thời gian hao phí trung bình của từng
công nhân cho từng công việc để hoàn thành 1000 sản phẩm cuối cùng: (Đơn vị
tính: Phút)
Công việc
Vào bản in In Cắt xén Đóng dấu Hoàn tất
Công nhân
A 13 16 10 8 17
B 10 12 13 11 14
C 10 14 9 10 11
D 14 16 10 9 18
E 11 17 11 13 10
F 12 15 12 10 13
Yêu cầu: Hãy cho phương án phân công công việc tối ưu cho 6 công nhân
trên sao cho thời gian hoàn thành các công việc trên là ngắn nhất (Mỗi công nhân
chỉ làm một việc)? Thời gian đó là bao nhiêu?
Trả lời:

Số CN = 6

Số CV = 5

Số CN > Số CV => Thêm một số công việc giả (Thêm 1 công việc giả)
Công việc Vào bản Đóng Công
In Cắt xén Hoàn tất
Công nhân in dấu việc giả
A 13 16 10 8 17 0
B 10 12 13 11 14 0
C 10 14 9 10 11 0
D 14 16 10 9 18 0
E 11 17 11 13 10 0
F 12 15 12 10 13 0

TH2: Bài toán bị giới hạn bởi thời gian của mỗi nhân viên thực hiện một công
việc

Khi đó tại các ô có thời gian nằm ngoài giới hạn đó ta xóa đi và thay thế
bằng dấu “X” rồi giải bình thường.

Ví dụ: Một doanh nghiệp có 4 công việc dự định phân giao cho 4 nhân viên
A, B, C và D thực hiện. Do khả năng của từng nhân viên thích hợp với từng loại
công việc cụ thể khác nhau nên thời gian hoàn thành cũng khác nhau và được cho
trong bảng sau: Đơn vị tính: Giờ

Công việc
Nhân viên
1 2 3 4
A
14 27 36 49
B
21 29 41 44
C
34 42 48 68
D
46 24 15 32
Yêu cầu: Hãy tìm cách phân giao sao cho tổng thời gian thực hiện là ngắn
nhất với điều kiện mỗi nhân viên thực hiện một công việc phải đảm bảo không
được vượt quá 55 giờ và tính tổng thời gian đó.
Cách giải:

Công việc
Nhân viên
1 2 3 4
A
14 27 36 49
B
21 29 41 44
C
34 42 48 X
D
46 24 15 32

TH3: Trường hợp bài toán có hàm mục tiêu tiến đến Max

Khi đó trước khi giải ta tiến hành đổi dấu tất cả các con số trong các ô của
bảng rồi tiến hành giải bình thường.
Bài số 3:

Công việc Công nhân


An Bình Minh Quyết
1 0 100 200 100
2 0 150 200 250
3 50 100 0 100
4 50 0 100 0

Số ô được khoanh tròn = 3

Số hàng = 4

Số ô được khoanh tròn < Số hàng

Điều chỉnh

Công việc Công nhân


An Bình Minh Quyết
1 0 0 200 0
2 0 50 200 150
3 50 0 0 0
4 150 0 200 0

Số ô được khoanh tròn = 2

Số hàng = 4

Số ô được khoanh tròn < Số hàng


Phương án 1

An làm việc 2

Minh làm việc 3

Bình làm việc 1

Quyết làm việc 4

Phương án 2

An làm việc 2

Minh làm việc 3

Bình làm việc 4

Quyết làm việc 1

You might also like