BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.. HCM TIỂU LUẬN MÔN HỌC TỐI ƯU HÓA VÀ QUY HOẠCH TUYẾN TÍNH Chuyên ngành: CÔNG NGHỆ THÔNG TIN Giảng viên môn học : TS... BỘ GIÁO DỤC VÀ Đ
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
TIỂU LUẬN MÔN HỌC
TỐI ƯU HÓA VÀ QUY HOẠCH TUYẾN TÍNH
Chuyên ngành: CÔNG NGHỆ THÔNG TIN
Giảng viên môn học : TS Hồ Đắc Nghĩa
Sinh viên thực hiện : Lê Quang Thế Vinh MSHV: 2141860036 Lớp:
21SCT21
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM
TIỂU LUẬN MÔN HỌC TỐI ƯU HÓA VÀ QUY HOẠCH TUYẾN TÍNH
Chuyên ngành: CÔNG NGHỆ THÔNG TIN
Giảng viên môn học : TS Hồ Đắc Nghĩa
Sinh viên thực hiện : Lê Quang Thế Vinh MSHV: 2141860036 Lớp:
21SCT21
TP Hồ Chí Minh, 2022
Trang 3Bài 1: Lập mô hình toán học
MÃ ĐỀ: 09
Có ba xí nghiệp may: I, II, III cùng có thể sản xuất áo vest và quần tây Tùy
thuộc vào năng lực quản lý của Ban giám đốc, trình độ tay nghề của đội ngũ công nhân, mức trang bị kỹ thuật, … khác nhau thì hiệu quả của đồng vốn ở các xí nghiệp cũng khác nhau Giả sử đầu tư 1.000 USD vào xí nghiệp I thì cuối kỳ sẽ cho 35 áo vest
và 45 quần tây; vào xí nghiệp II thì cuối kỳ sẽ cho 40 áo vest và 42 quần tây, còn vào
xí nghiệp III thì cuối kỳ sẽ cho 43 áo vest và 30 quần tây Số lượng vải (mét) và số giờ
công cần thiết để sản xuất 1 áo vest hoặc 1 quần tây (còn gọi là suất tiêu hao nguyên liệu và lao động) ở ba xí nghiệp được cho trong bảng số liệu sau đây:
Áo vest 3,5 m 20 giờ 4,0 m 16 giờ 3,8 m 18 giờ
Quần tây 2,8 m 10 giờ 2,6 m 12 giờ 2,5 m 15 giờ
Biết tổng số vải và giờ công số lao động có thể huy động được cho cả ba xí nghiệp là 10.000 mét và 52.000 giờ công Theo hợp đồng kinh doanh thì cuối kỳ phải
có tối thiểu 1.500 bộ quần áo Do đặc điểm hàng hóa thì nếu lẻ bộ, chỉ có quần là dễ bán trên thị trường
Hãy lập mô hình kế hoạch đầu tư vào mỗi xí nghiệp bao nhiêu vốn nhằm đảm bảo hoàn thành kế hoạch sản phẩm, không gặp khó khăn trong quá trình tiêu thụ, không bị động trong sản xuất và tổng số vốn đầu tư nhỏ nhất
BÀI GIẢI
Gọi x1, x2, x3 lần lượt là số vốn (nghìn USD) cần phải đầu tư vào xí nghiệp I, II, III
Điều kiện: x1, x2, x3 ≥ 0
Tổng số mét vải cần để may áo vest và quần tây của từng xí nghiệp là:
o Áo vest: 3.5 x 35x1 + 4.0 x 40x2 + 3.8 x 43x3 = 122.5x1 + 160x2 + 163.4x3
(met)
o Quần tây: 2.8 x 45x1 + 2.6 x 42x2 + 2.5 x 30x2 = 126x1 + 109.2x2 + 75x3
Trang 4 Tổng số mét vải: 122.5x1 + 160x2 + 163.4x3 + 126x1 + 109.2x2 + 75x3 = 248.5x1
+ 269.2x2 + 238.4x3 (met)
Tổng số giờ công cần để may áo vest và quần tây là:
o Áo vest: 20 x 35x1 + 16 x 40x2 + 18 x 43x3 = 700x1 + 640x2 + 774x3 (giờ)
o Quần tây: 10 x 45x1 + 12 x 42x2 + 15 x 30x1 = 450x1 + 504x2 + 450x3 (giờ)
Tổng số giờ công: 700x1 + 640x2 + 774x3 + 450x1 + 504x2 + 450x3 = 1150x1 + 1144x2 + 1224x3 (giờ)
Để không bị động trong sản xuất, ta cần phải có:
o 248.5x1 + 269.2x2 + 238.4x3 ≤ 10000
o 1150x1 + 1144x2 + 1224x3 ≤ 52000
o 45x1 + 42x2 + 30x3 ≥ 35x1 + 40x2 + 43x3 (Quần dễ bán hơn trên thị trường)
o 35x1 + 40x2 + 43x3 ≥ 1500 (Theo hợp đồng kinh doanh, cẩn phải có tối thiểu 1500 bộ quần áo)
Tổng số vốn cần đầu từ để các xí nghiệp sản xuất áo vest và quần tây là:
o x1 + x2 + x3 (Nghìn USD)
Để tổng số vốn đầu tư đạt nhỏ nhất:
o x1 + x2 + x3 => min
Vậy mô hình toán học của bài toán trên là:
(1) f(x) = x1 + x2 + x3 => min
(2) 248.5x1 + 269.2x2 + 238.4x3 ≤ 10000
1150x1 + 1144x2 + 1224x3 ≤ 52000
35x1 + 40x2 + 43x3 ≥ 1500
10x1 + 2x2 – 13x3 ≥ 0
(3) x1, x2, x3 ≥ 0
Trang 5Bài 2/ Giải bài toán quy hoạch tuyến tính sau đây bằng phương pháp hình học:
𝑓(𝑥) = 20x1 + 40x2 → min 6x1 + x2 ≥ 18
x1 + 4x2 ≥ 12 2x1 + x2 ≥ 10
𝑥𝑗 ≥ 0; 𝑗 = 1, 2
BÀI GIẢI
Biểu diễn tập phương án X của bài toán là:
6𝑥1 + 𝑥2 ≥ 2 qua (2, 6) và (3, 0)
x1 + 4x2 ≥ 12 qua (0, 3) và (4, 2)
2x1 + x2 ≥ 10 qua (3, 4) và (5, 0)
Tập phương án X của bài toán là đa giác mở ABCD
(Phần màu là phần bị bỏ đi)
Trang 6Ta có: (d): 20x1 + 40x2 = 160 (Lấy M (4, 2) ∈ X và M (2, 3) ∈ X)
𝑛⃗⃗⃗⃗𝑑 = ⃗𝑂⃗⃗⃗𝐶⃗ = (−2, 4) và (−3, 2)
Tìm Min: dịch chuyển d ngược hướng
⃗𝑛⃗⃗
𝑑
o Ta có: fmin = f(x0) = f(4, 2) = 160
Bài 3/ Giải bài toán quy hoạch tuyến tính sau đây bằng phương pháp đơn hình:
𝑓(𝑥) = 3x1 + 2x2 + 5x3 − 2x4 → min
x1 + 7x3 − 3x4 = 7
x2 − 2x3 + x4 =
1 3x3 − x4 + x5 = 16
𝑥𝑗 ≥ 0; 𝑗 = 1, 2, 3, 4, 5
BÀI GIẢI
Hệ số Ẩn cơ
bản
Phương án
Do Δj ≤ 0 ∀ j Nên bài toán dừng và có phương án tối ưu
x0 = (0, 0, 10, 21, 7)
Trang 7 fmin = f(x0) = 8
Trang 8Bài 4/ Giải bài toán quy hoạch tuyến tính sau đây bằng phương pháp đơn hình mở rộng:
𝑓(𝑥) = 6x1 − 3x2 + 3x3 → max
10x1 + 8x2 − 2x3 ≤ 20
6x1 + 2x2 + 2x3 ≥ 8
2x1−2x2 + 2x3 = 4
𝑥𝑗 ≥ 0; 𝑗 = 1, 2, 3
BÀI GIẢI
Thêm vào 2 ẩn phụ x4, x5 và 2 ẩn giả x6, x7 Ta có bài toán dạng chuẩn như sau:
𝑓(𝑥) = 6x1 − 3x2 + 3x3 − M𝑥6 − M𝑥7 → max
10x1 + 8x2 − 2x3 + 𝑥4 = 20
6x1 + 2x2 + 2x3 − 𝑥5 + 𝑥6 = 8
2x1−2x2 + 2x3 + 𝑥7 = 4
𝑥𝑗 ≥ 0; 𝑗 = 1, 2, 3, 4, 5, 6, 7
Trang 9Hệ số Ẩn cơ
bản
Phương án
Do bảng đơn hình cuối có ∆𝑗 ≥ 0 ∀ 𝑗, nên bài toán mở rộng có phương án tối ưu
x0 = (2, 0, 0, 0, 4, 0, 0)
fmin = f(x0) = 12
Vì các ẩn giả đều nhận giá trị = 0, nên bài toán gốc có phương án tối ưu
x0 = (2, 0, 0)
fmin = f(x0) = 12
Trang 10Bài 5/ Kiểm tra tính tối ưu của phương án 𝒙𝟎= (𝟏, 𝟎, 𝟎, 𝟒, 𝟎, 𝟏) của bài toán:
𝑓(𝑥) = x1 + 3x2 + 2x3 → min
4x1 − 5x2 + 7x3 + x4 = 8
−2x1 + 4x2 − 2x3 + x5 = −2
x1 − 3x2 + 2x3 + x6 = 2
𝑥𝑗 ≥ 0; 𝑗 = 1, 2, 3, 4, 5, 6
BÀI GIẢI
Vì ràng buộc chính thứ 2 chưa thỏa dạng chính tắc, nên ta có:
𝑓(𝑥) = x1 + 3x2 + 2x3 → min
4x1 − 5x2 + 7x3 + x4 = 8
2x1 − 4x2 + 2x3 − x5 =
2 x1 − 3x2 + 2x3 + x6
= 2
𝑥𝑗 ≥ 0; 𝑗 = 1, 2, 3, 4, 5, 6
Thêm vào 1 ẩn giả x7 Ta có bài toán dạng chuẩn sau:
𝑓(𝑥) = x1 + 3x2 + 2x3 + M𝑥7 → min 4x1
− 5x2 + 7x3 + x4 = 8 2x1 − 4x2 + 2x3 − x5 + 𝑥7 =
2 x1 − 3x2 + 2x3 + x6 = 2
𝑥𝑗 ≥ 0; 𝑗 = 1, 2, 3, 4, 5, 6, 7
Trang 11Hệ số Ẩn cơ
bản
Phương án
Do bảng đơn hình cuối có ∆𝑗 ≤ 0 ∀ 𝑗, nên bài toán mở rộng có phương án tối ưu
x0 = (1, 0, 0, 4, 0, 1, 0)
fmin = f(x0) = 1
Vì các ẩn giả đều nhận giá trị = 0, nên bài toán gốc có phương án tối ưu
x0 = (1, 0, 0, 4, 0, 1)
fmin = f(x0) = 12
Vì phương án tối ưu vừa tìm được trùng với phương án mà đề bài đưa ra:
x0 = (1, 0, 0, 4, 0, 1) là phương án tối ưu
Trang 12Bài 6/ Giải bài toán quy hoạch tuyến tính sau đây bằng phương pháp đơn hình đối ngẫu:
𝒇(𝒙) = 𝟑𝟎𝐱 𝟏+ 𝟒𝟎𝐱 𝟐→ 𝐦𝐢𝐧 x1 +
x2 ≥ 17 3x1 + 2x2 ≥ 42
x1 + 2x2 ≥ 20
x1 + 4x2 ≥ 24
𝑥𝑗 ≥ 0; 𝑗 = 1, 2
BÀI GIẢI
- Lập (D): g(y) = 17𝑦1 + 42𝑦2 + 20𝑦3 + 24𝑦4 → 𝑚𝑎𝑥
𝑦1 + 3𝑦2 + 𝑦3 + 𝑦4 ≤ 30
𝑦1 + 2𝑦2 + 2𝑦3 + 4𝑦4 ≤ 40
𝑦1, 𝑦2, 𝑦3, 𝑦4 ≥ 0
- Thêm vào 2 ẩn phụ x5, x6 Ta có bài toán dạng chuẩn như
sau: g(y) = 17𝑦1 + 42𝑦2 + 20𝑦3 + 24𝑦4 → 𝑚𝑖𝑛
𝑦1 + 3𝑦2 + 𝑦3 + 𝑦4 + 𝑦5 = 30
𝑦1 + 2𝑦2 + 2𝑦3 + 4𝑦4 + 𝑦6 = 40
𝑦𝑗 ≥ 0, 𝑗 = 1, 2, 3, 4, 5, 6
Trang 13Hệ số Ẩn cơ
bản
Phương án
- Vì ∆𝑗 ≥ 0 ∀𝑗, nên bài toán đối ngẫu mở rộng dừng và có phương án tối ưu
y0 = (20, 0, 10, 0, 0, 0)
gmax = g(y0) = 540
- Vì bài toán mở rộng có phương án tối ưu, nên bài toán đối ngẫu gốc cũng
có phương án tối ưu
y0 = (20, 0, 10, 0)
gmax = g(y0) = 540
- Lập các cặp ràng buộc đối ngẫu của (P) và (D):
x1 + x2 ≥ 17 𝑦1 ≥ 0
3x1 + 2x2 ≥ 42 𝑦2 ≥ 0
x + 2x ≥ 20 𝑦 ≥ 0
Trang 14 𝑥1 ≥ 0 𝑦1 + 3𝑦2 + 𝑦3 + 𝑦4 ≤ 30
𝑥2 ≥ 0 𝑦1 + 2𝑦2 + 2𝑦3 + 4𝑦4 ≤ 40
- Ta thay y0 = (20, 0, 10, 0) vào các cặp ràng buộc đối ngẫu, ta có:
x1 + x2 ≥ 17 20 ≥ 0
3x1 + 2x2 ≥ 42 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
x1 + 2x2 ≥ 20 10 ≥ 0
x1 + 4x2 ≥ 24 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
𝑥1 ≥ 0 30 ≤ 30 (bỏ vì không thỏa bất đẳng thức thật sự)
𝑥2 ≥ 0 40 ≤ 40 (bỏ vì không thỏa bất đẳng thức thật sự)
- Ta có hệ phương trình sau đây:
x1 + x2 = 17
x1 + 2x2 = 20
x1 = 14, x2 = 3
- Kiểm tra cho thấy bài toán gốc có phương án tối ưu:
x0 = (14, 3)
fmin = 540
Trang 15Bài 7/ Cho bài toán với tham số t:
𝑓(𝑥) = x1 − x2 + 2x3 − 2x4 + x5 + 𝐭 x6 → min
−x1 + x2 − x3 − x4 − x5 − 3x6 = 5
2x1 + x3 − 2x4 − x6 =
15 x1 + 2x4 + 2x5 + 2x6
= 6
𝑥𝑗 ≥ 0; 𝑗 = 1, 2, 3, 4, 5, 6
a) Giải và biện luận bài toán đã cho bằng thuật toán đơn hình
b) Trong trường hợp bài toán đã cho có phương án tối ưu, hãy tìm tập phương án tối ưu của bài toán đối ngẫu
BÀI GIẢI
a) Thêm vào 2 ẩn giả x7, x8, ta có bài toán dạng chuẩn như sau:
- 𝑓(𝑥) = 𝑥1 − 𝑥2 + 2𝑥3 − 2𝑥4 + 𝑥5 + 𝑡 𝑥6 + 𝑀𝑥7 + 𝑀𝑥8 → 𝑚𝑖𝑛
−𝑥1 + 𝑥2 − 𝑥3 − 𝑥4 − 𝑥5 − 3𝑥6 = 5
2x1 + x3 − 2x4 − x6 + 𝑥7 = 15
x1 + 2x4 + 2x5 + 2x6 + 𝑥8 = 6
Trang 16Hệ số Ẩn cơ
bản
Phương án
Nếu −𝑡 − 2 ≤ 0 t ≥ −2 thì ∆6 ≤ 0 và các ∆𝑗 ≤ 0; ∀ 𝑗
Bài toán mở rộng có phương án tối ưu.
x0 = (6, 14, 3, 0, 0, 0, 0, 0)
fmax = f(x0) = -2
- Vì bảng đơn hình cuối có ẩn giả 𝑥7, 𝑥8 = 0 nên bài toán gốc có phương án tối ưu
x0 = (6, 14, 3, 0, 0, 0)
fmax = f(x0) = -2
Nếu −𝑡 − 2 > 0 t < −2 thì ∆6 > 0
Tiếp tục giải bài toán bằng phương pháp đơn hình
Trang 17Hệ số Ẩn cơ
bản
Phương án
Ta xét:
o 1/2 ∗ 𝑡− 1 ≤ 0 𝑡≤ 2
o 𝑡− 1 ≤ 0 t ≤ 1
o −2 + 𝑡≤ 0 t ≤ 2
Với t < −2 thì ∆ 𝑗≤ 0 ∀ 𝑗
Bài toán mở rộng có phương án tối ưu
x0 = (0, 32, 18, 0, 0, 3, 0, 0)
fmin = f(x0) = 3t+4
Bài toán gốc có phương án tối ưu
x0 = (0, 32, 18, 0, 0, 3)
fmin = f(x0) = 3t+4
- Kết luận:
Nếu 𝑡 ≥ −2 thì phương án tối ưu của bài toán gốc
là: x0 = (6, 14, 3, 0, 0, 0)
fmin = f(x0) = -2
Nếu 𝑡 < −2 thì phương án tối ưu của bài toán gốc
là: x0 = (0, 32, 18, 0, 0, 3)
fmin = f(x0) = 3t+4
Trang 18b) Lập (D): g(y) = 5𝑦1 + 15𝑦2 + 6𝑦3 → 𝑚𝑎𝑥
−𝑦1 + 2𝑦2 + 𝑦3 ≤ 1
𝑦1 ≤ −1
−𝑦1 + 𝑦2 ≤ 2
−𝑦1 −2𝑦2 + 2𝑦3 ≤ −2 → 𝑦1 + 2𝑦2 − 2𝑦3 ≥ 2
−𝑦1 + 2𝑦3 ≤ 1
−3𝑦1 −𝑦2 + 2𝑦3 ≤ 𝑡
- Lập các cặp ràng buộc đối ngẫu của (P) và (D):
−𝑦1 + 2𝑦2 + 𝑦3 ≤ 1 𝑥1 ≥ 0
𝑦1 ≤ −1 𝑥2 ≥ 0
−𝑦1 + 𝑦2 ≤ 2 𝑥3 ≥ 0
−𝑦1 −2𝑦2 + 2𝑦3 ≤ −2 𝑥4 ≥ 0
−𝑦1 + 2𝑦3 ≤ 1 𝑥5 ≥ 0
−3𝑦1 −𝑦2 + 2𝑦3 ≤ 𝑡 𝑥6 ≥ 0
- Ta thay x0 = (6, 14, 3, 0, 0, 0) vào các cặp ràng buộc đối ngẫu, ta có:
−𝑦1 + 2𝑦2 + 𝑦3 ≤ 1 6 ≥ 0
𝑦1 ≤ −1 14 ≥ 0
−𝑦1 + 𝑦2 ≤ 2 3 ≥ 0
−𝑦1 −2𝑦2 + 2𝑦 3≤ −2 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
−𝑦1 + 2𝑦3 ≤ 1 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
−3𝑦1 −𝑦2 + 2𝑦3 ≤ 𝑡 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
- Ta có hệ phương trình sau đây:
−𝑦1 + 2𝑦2 + 𝑦3 = 1
𝑦1 = −1
−𝑦1 + 𝑦2 = 2
y1 = -1, y2 = 1, y3 = -2
Trang 19- Kiểm tra cho thấy bài toán đối ngẫu có phương án tối ưu với x0 = (6, 14, 3, 0,
0, 0):
y0 = (-1, 1, -2)
gmax = -2
- Ta thay x0 = (0, 32, 18, 0, 0, 3) vào các cặp ràng buộc đối ngẫu, ta có:
−𝑦1 + 2𝑦2 + 𝑦3 ≤ 1 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
𝑦1 ≤ −1 32 ≥ 0
−𝑦1 + 𝑦2 ≤ 2 18 ≥ 0
−𝑦1 −2𝑦2 + 2𝑦 3≤ − 2 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
−𝑦1 + 2𝑦3 ≤ 1 0 ≥ 0 (bỏ vì không thỏa bất đẳng thức thật sự)
−3𝑦1 −𝑦2 + 2𝑦3 ≤ 𝑡 3 ≥ 0
- Ta có hệ phương trình sau đây:
𝑦1 = −1
−𝑦1 + 𝑦2 = 2
−3𝑦1 −𝑦2 + 2𝑦3 = 𝑡
y1 = -1, y2 = 1, y3 = (t-2)/2
- Kiểm tra cho thấy bài toán đối ngẫu có phương án tối ưu với x0 = (0, 32, 18, 0,
0, 3):
y0 = ( -1, 1, (t-2)/2)
gmax = 10 + 3*(t-2)
- Kết luận:
Với phương án tối ưu x0 = (6, 14, 3, 0, 0, 0), bài toán đối ngẫu có phương án tối ưu là y0 = (-1, 1, -2) với gmax = -2
Với phương án tối ưu x0 = (0, 32, 18, 0, 0, 3), bài toán đối ngẫu có phương
án tối ưu là y0 = ( -1, 1, (t-2)/2) với gmax = 10 + 3*(t-2)