Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 42

Mục lục

1. Các bài toán quy hoạch tuyến tính (QHTT)............................................................2


1.1 Giải bài toán QHTT bằng phương pháp đồ thị..................................................2
Bài 1:....................................................................................................................2
Bài 2:....................................................................................................................4
1.2 Giải bài toán QHTT bằng phương pháp luân phiên từng biến...........................4
Bài 1:....................................................................................................................4
Bài 2:..................................................................................................................12
1.3 Giải bài toán QHTT bằng Solver (Excel)........................................................17
Bài 1:..................................................................................................................17
Bài 2:..................................................................................................................20
Bài 3:..................................................................................................................23
Bài 4:..................................................................................................................25
2. Các bài toán quy hoạch phi tuyến.........................................................................29
2.1. Giair bài toán QHTT bằng phương pháp luân phiên từng biến......................29
Bài 1:..................................................................................................................29
2.2. Giải bài toán QHPT bằng phương pháp leo dốc (Gradient)...........................31
3. Các bài toán vận tải thế vị......................................................................................32
Bài 1...................................................................................................................32
Bài 2:..................................................................................................................35
4. Tối ưu hóa thực nghiệm.........................................................................................39
4.1 Ma trận trực giao cấp 1....................................................................................39

1. Các bài toán quy hoạch tuyến tính (QHTT)


1.1 Giải bài toán QHTT bằng phương pháp đồ thị

Bài 1:
Một nhà quản lý dự án đã ứng dụng QHTT để làm cực đại lợi nhuận. Dữ liệu của dự
án như sau:

1
Loại sản phẩm
Số liệu đầu vào đối với Khả năng lớn nhất của các nguồn
một đơn vị sản phẩm Lúa tài nguyên sẳn có
Lúa mì
gạo
Diện tích [Ha/tấn] 2 3 50 Ha
3 3
Lượng nước [10 m /tấn] 6 4 90 x 103 m3
Nhân lực [công/tấn] 20 5 250 công
Lợi nhuận [USD/tấn] 18 21
Gọi x1 là số tấn lúa gạo cần được sản xuất
Gọi x2 là số tấn lúa mì cần được sản xuất
Hàm mục tiêu trong bài toán này là cực đại lợi nhuận: Max Z = 18x1 + 21x2
Ràng buộc về diện tích: 2x1 + 3x2 < = 50
Ràng buộc về lượng nước: 6x1 + 4x2 < = 90
Ràng buộc về nhân lực: 20x1 + 5x2 < = 250
Giá trị của các biến phải dương
Bài làm
 Hàm mục tiêu: Max Z = 28(x1) + 21(x2)
Ràng buộc: 2(x1) + 3(x2) ≤ 50
6(x1) + 4(x2) ≤ 90
20(x1) + 5(x2) ≤ 250
x1 > 0
x2 > 0
 Trong mặt phẳng tọa độ Ox1x2, vẽ các đường thẳng:
D1: 2(x1) + 3(x2) = 50
D2: 6(x1) + 4(x2) = 90
D3: 20(x1) + 5(x2) = 250
D4: x1 = 0
D5: x2 = 0

2
 Miền OABCD chứa tất cả các điểm thỏa mãn điều kiện ràng buộc bài toán. Nên kết
quả cần tìm sẽ thuộc một trong các đỉnh: O,A,B,C,D.
Tìm tọa độ O,A,B,C,D: dùng phương trình hoành độ giao điểm
O (0;0)
A ( x1;x2) = Ox1 ∩ D3  A (12,5;0)
B ( x1;x2) = D2 ∩ D3  B (11;6)
C ( x1;x2) = D1 ∩ D2  C (7;12)
D ( x1;x2) = Ox2 ∩ D1  D (0;16,67)
 So sánh giá trị tại 5 đỉnh vừa tìm bằng cách thay x1, x2 vào Z:
Đỉnh O: Z = 18x0+ 21x0 = 0
Đỉnh A: Z = 18x12,5 + 21x0 = 225
Đỉnh B: Z = 18x11 + 21x6 = 324
Đỉnh C: Z = 18x7 + 21x12 = 378
Đỉnh D: Z = 18x0 + 21x16,67 = 350
So sánh ta được: Max Z = 378 ứng với đỉnh C (7;12)

Kết luận:

Số tấn lúa gạo cần được sản xuất: 7 tấn


Số tấn lúa mì cần được sản xuất: 12 tấn

3
Bài 2:
Hàm mục tiêu: F(x) = 4x1+ 5x2
Yêu cầu : F(x) → Max
Ràng buộc : 2x1 + x2 ≤ 8
x1 + 2x2 ≤ 7
x2 ≤ 3
x1 ≥ 0, x2 ≥ 0
Bài làm
 Trong mặt phẳng tọa độ OX1X2, vẽ các đường thẳng:
D1: 2x1 + x2 = 8
D2: x1 + 2x2 =7
D3: x2 = 3

6
D1
5 Li near
(D1)
4 D2
X2

0
0.5 1 1.5 2 2.5 3 3.5 4 4.5

X1

Từ đồ thị ta thấy điểm F(3,2) thỏa hàm mục tiêu


� Max F(x)=4*3+5*2=22

1.2 Giải bài toán QHTT bằng phương pháp luân phiên từng biến
Bài 1:

Hàm mục tiêu: Y = F(x) = -4x1 + 5x2  min


Ràng buộc: 3x1 – 2x2 + x3 = 6

4
–2x1 – 4x2 + x4 = 4
0  x1  4
0  x2  3
0  x3  20
0  x4  20
Điều kiện dừng : Y = |Y(1) – Y(0)|  Ɛy = 0.01

Bài làm

 Vòng 1 Y = -4x1 + 5x2


Chọn điểm xuất phát X0 (0;0;0;0)  Y0 = 0
Phiên 1:
+ Chọn bước nhảy 0.2 cho x1 (0  x1  4)
+ x2, x3, x4 cố định
+ Ymin = -8 với X(2;0;0;0)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6 (thõa)

x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4


0 0 0 0 0 0 0
0.2 0 0 0 -0.8 0.6 -0.4
0.4 0 0 0 -1.6 1.2 -0.8
0.6 0 0 0 -2.4 1.8 -1.2
0.8 0 0 0 -3.2 2.4 -1.6
1 0 0 0 -4 3 -2
1.2 0 0 0 -4.8 3.6 -2.4
1.4 0 0 0 -5.6 4.2 -2.8
1.6 0 0 0 -6.4 4.8 -3.2
1.8 0 0 0 -7.2 5.4 -3.6
2 0 0 0 -8 6 -4
2.2 0 0 0 -8.8 6.6 -4.4
2.4 0 0 0 -9.6 7.2 -4.8
2.6 0 0 0 -10.4 7.8 -5.2
2.8 0 0 0 -11.2 8.4 -5.6
3 0 0 0 -12 9 -6
3.2 0 0 0 -12.8 9.6 -6.4
3.4 0 0 0 -13.6 10.2 -6.8
3.6 0 0 0 -14.4 10.8 -7.2
3.8 0 0 0 -15.2 11.4 -7.6
4 0 0 0 -16 12 -8

5
Phiên 2:
Y = -4x1 + 5x2
Chọn điểm xuất phát X0 (2;0;0;0)  Y0 = -8

+ Chọn bước nhảy 0.15 cho x2 (0  x2  3)


+ x1, x3, x4 cố định
+ Ymin = -8 với X(2;0;0;0)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6(thõa)

x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4


2 0 0 0 -8 6 -4
2 0.15 0 0 -7.25 5.7 -4.6
2 0.3 0 0 -6.5 5.4 -5.2
2 0.45 0 0 -5.75 5.1 -5.8
2 0.6 0 0 -5 4.8 -6.4
2 0.75 0 0 -4.25 4.5 -7
2 0.9 0 0 -3.5 4.2 -7.6
2 1.05 0 0 -2.75 3.9 -8.2
2 1.2 0 0 -2 3.6 -8.8
2 1.35 0 0 -1.25 3.3 -9.4
2 1.5 0 0 -0.5 3 -10
2 1.65 0 0 0.25 2.7 -10.6
2 1.8 0 0 1 2.4 -11.2
2 1.95 0 0 1.75 2.1 -11.8
2 2.1 0 0 2.5 1.8 -12.4
2 2.25 0 0 3.25 1.5 -13
2 2.4 0 0 4 1.2 -13.6
2 2.55 0 0 4.75 0.9 -14.2
2 2.7 0 0 5.5 0.6 -14.8
2 2.85 0 0 6.25 0.3 -15.4
2 3 0 0 7 0 -16

Phiên 3: Y = -4x1 + 5x2


Chọn điểm xuất phát X0 (2;0;0;0)  Y0 = -8

+ Chọn bước nhảy 1 cho x3 (0  x3  20)


+ X1, x2, x4 cố định
+ Ymin = -8 với X(2;0;0;0)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6(thõa)

x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4

6
2 0 0 0 -8 6 -4
2 0 1 0 -8 7 -4
2 0 2 0 -8 8 -4
2 0 3 0 -8 9 -4
2 0 4 0 -8 10 -4
2 0 5 0 -8 11 -4
2 0 6 0 -8 12 -4
2 0 7 0 -8 13 -4
2 0 8 0 -8 14 -4
2 0 9 0 -8 15 -4
2 0 10 0 -8 16 -4
2 0 11 0 -8 17 -4
2 0 12 0 -8 18 -4
2 0 13 0 -8 19 -4
2 0 14 0 -8 20 -4
2 0 15 0 -8 21 -4
2 0 16 0 -8 22 -4
2 0 17 0 -8 23 -4
2 0 18 0 -8 24 -4
2 0 19 0 -8 25 -4
2 0 20 0 -8 0 -4

Phiên 4: Y = -4x1 + 5x2


Chọn điểm xuất phát X0 (2;0;0;0)  Y0 = -8

+ Chọn bước nhảy 1 cho x4 (0  x4  20)


+ X1, x2, x3 cố định
+ Ymin = -8 với X(2;0;0;8)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6 (thõa)
–2x1 – 4x2 + x4 = 4 (thõa)

x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4


2 0 0 0 -8 6 -4
2 0 0 1 -8 6 -3
2 0 0 2 -8 6 -2
2 0 0 3 -8 6 -1
2 0 0 4 -8 6 0
2 0 0 5 -8 6 1
2 0 0 6 -8 6 2
2 0 0 7 -8 6 3

7
2 0 0 8 -8 6 4
2 0 0 9 -8 6 5
2 0 0 10 -8 6 6
2 0 0 11 -8 6 7
2 0 0 12 -8 6 8
2 0 0 13 -8 6 9
2 0 0 14 -8 6 10
2 0 0 15 -8 6 11
2 0 0 16 -8 6 12
2 0 0 17 -8 6 13
2 0 0 18 -8 6 14
2 0 0 19 -8 6 15
2 0 0 20 -8 0 16

 Xét điều kiện dừng

Y = |Y(1) – Y(0)|  Ɛy = 0.01

Sau 3 phiên ta tìm được giá trị:


Ymin(1) = -8 tại x1 = 2; x2 = 0; x3 = 0; x4 = 8
 Y = |Y(1) – Y(0)| =  -8 + 0  = 8 > Ɛy = 0.01
 CHƯA THỎA MÃN

 VÒNG 2:
Phiên 1:
Y = -4x1 + 5x2
Chọn điểm xuất phát X0 (2;0;0;8)  Y1 = -8

+ Chọn bước nhảy 0.2 cho x1 (0  x1  4)


+ x2, x3, x4 cố định
+ Ymin = -8 với X(2;0;0;8)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6(thõa)
–2x1 – 4x2 + x4 = 4 (thõa)

x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4


0 0 0 8 0 0 8
0.2 0 0 8 -0.8 0.6 7.6
0.4 0 0 8 -1.6 1.2 7.2

8
0.6 0 0 8 -2.4 1.8 6.8
0.8 0 0 8 -3.2 2.4 6.4
1 0 0 8 -4 3 6
1.2 0 0 8 -4.8 3.6 5.6
1.4 0 0 8 -5.6 4.2 5.2
1.6 0 0 8 -6.4 4.8 4.8
1.8 0 0 8 -7.2 5.4 4.4
2 0 0 8 -8 6 4
2.2 0 0 8 -8.8 6.6 3.6
2.4 0 0 8 -9.6 7.2 3.2
2.6 0 0 8 -10.4 7.8 2.8
2.8 0 0 8 -11.2 8.4 2.4
3 0 0 8 -12 9 2
3.2 0 0 8 -12.8 9.6 1.6
3.4 0 0 8 -13.6 10.2 1.2
3.6 0 0 8 -14.4 10.8 0.8
3.8 0 0 8 -15.2 11.4 0.4
4 0 0 8 -16 0 0

Phiên 2: Y = -4x1 + 5x2


Chọn điểm xuất phát X0 (2;0;0;8)  Y1 = -8

+ Chọn bước nhảy 0.15 cho x2 (0  x2  3)


+ x1, x3, x4 cố định
+ Ymin = -8 với X(2;0;0;8)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6(thõa)
–2x1 – 4x2 + x4 = 4 (thõa)

x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4


2 0 0 8 -8 6 4
2 0.15 0 8 -7.25 5.7 3.4
2 0.3 0 8 -6.5 5.4 2.8
2 0.45 0 8 -5.75 5.1 2.2
2 0.6 0 8 -5 4.8 1.6
2 0.75 0 8 -4.25 4.5 1
2 0.9 0 8 -3.5 4.2 0.4
2 1.05 0 8 -2.75 3.9 -0.2
2 1.2 0 8 -2 3.6 -0.8

9
2 1.35 0 8 -1.25 3.3 -1.4
2 1.5 0 8 -0.5 3 -2
2 1.65 0 8 0.25 2.7 -2.6
2 1.8 0 8 1 2.4 -3.2
2 1.95 0 8 1.75 2.1 -3.8
2 2.1 0 8 2.5 1.8 -4.4
2 2.25 0 8 3.25 1.5 -5
2 2.4 0 8 4 1.2 -5.6
2 2.55 0 8 4.75 0.9 -6.2
2 2.7 0 8 5.5 0.6 -6.8
2 2.85 0 8 6.25 0.3 -7.4
2 3 0 8 7 0 -8

Phiên 3:
Y = -4x1 + 5x2
Chọn điểm xuất phát X0 (2;0;0;8)  Y1 = -8

+ Chọn bước nhảy 1 cho x3 (0  x3  20)


+ x1, x2, x4 cố định
+ Ymin = -8 với X(2;0;0;8)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6(thõa)
–2x1 – 4x2 + x4 = 4 (thõa)

x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4


2 0 0 8 -8 6 4
2 0 1 8 -8 7 4
2 0 2 8 -8 8 4
2 0 3 8 -8 9 4
2 0 4 8 -8 10 4
2 0 5 8 -8 11 4
2 0 6 8 -8 12 4
2 0 7 8 -8 13 4
2 0 8 8 -8 14 4
2 0 9 8 -8 15 4
2 0 10 8 -8 16 4
2 0 11 8 -8 17 4
2 0 12 8 -8 18 4
2 0 13 8 -8 19 4
2 0 14 8 -8 20 4

10
2 0 15 8 -8 21 4
2 0 16 8 -8 22 4
2 0 17 8 -8 23 4
2 0 18 8 -8 24 4
2 0 19 8 -8 25 4
2 0 20 8 -8 0 4

Phiên 4:
Y = -4x1 + 5x2
Chọn điểm xuất phát X0 (2;0;0;8)  Y1 = -8

+ Chọn bước nhảy 1 cho x4 (0  x4  20)


+ x1, x2, x3 cố định
+ Ymin = -8 với X(2;0;0;8)
+ Ràng buộc: 3x1 – 2x2 + x3 = 6(thõa)
–2x1 – 4x2 + x4 = 4 (thõa)
x1 x2 x3 x4 Y 3x1 – 2x2 + x3 = 6 –2x1 – 4x2 + x4 = 4
2 0 0 0 -8 6 -4
2 0 0 1 -8 6 -3
2 0 0 2 -8 6 -2
2 0 0 3 -8 6 -1
2 0 0 4 -8 6 0
2 0 0 5 -8 6 1
2 0 0 6 -8 6 2
2 0 0 7 -8 6 3
2 0 0 8 -8 6 4
2 0 0 9 -8 6 5
2 0 0 10 -8 6 6
2 0 0 11 -8 6 7
2 0 0 12 -8 6 8
2 0 0 13 -8 6 9
2 0 0 14 -8 6 10
2 0 0 15 -8 6 11
2 0 0 16 -8 6 12
2 0 0 17 -8 6 13
2 0 0 18 -8 6 14
2 0 0 19 -8 6 15
2 0 0 20 -8 0 16

11
 Xét điều kiện dừng:

Y = |Y(1) – Y(0)|  Ɛy = 0.01

Sau 3 phiên ta tìm được giá trị:


Ymin(2) = -8 tại x1 = 2; x2 = 0; x3 = 0; x4 = 8
 Y = |Y(2) – Y(1)| =  -8 + 8  = 0 <+ Ɛy = 0.01
 THỎA MÃN
Kết luận:
Điều kiện dừng đã thỏa mãn, ta tìm được Ymin = -8 tại x1 = 2; x2 = 0; x3 = 0; x4 =8

Bài 2:
Hàm mục tiêu: Y = F(x) = –5x1 – 10x2 – 15x3  min

Ràng buộc: 2x1 + 4x2 + 2x3  50


3x1 + 5x2 + 4x3  80

0  x1, x2, x3  20
Điều kiện dừng : Y = |Y(1) – Y(0)|  Ɛy = 0.01
Giải:
 Vòng 1
Phiên 1: Y = –5x1 – 10x2 – 15x3
Chọn điểm xuất phát X0 (0;0;0)  Y0 = 0

+ Chọn bước chạy 1 cho x1 (0  x1  20)


+ x2, x3 cố định
+ Ymin = -100 với X(20;0;0)
+ Ràng buộc: 2x1 + 4x2 + 2x3 = 40  50 (thỏa)
3x1 + 5x2 + 4x3 = 60  80 (thỏa)

12
x1 x2 x3 Y 2x1 + 4x2 + 2x3 3x1 + 5x2 + 4x3
0 0 0 0 0 0
1 0 0 -5 2 3
2 0 0 -10 4 6
3 0 0 -15 6 9
4 0 0 -20 8 12
5 0 0 -25 10 15
6 0 0 -30 12 18
7 0 0 -35 14 21
8 0 0 -40 16 24
9 0 0 -45 18 27
10 0 0 -50 20 30
11 0 0 -55 22 33
12 0 0 -60 24 36
13 0 0 -65 26 39
14 0 0 -70 28 42
15 0 0 -75 30 45
16 0 0 -80 32 48
17 0 0 -85 34 51
18 0 0 -90 36 54
19 0 0 -95 38 57
20 0 0 -100 40 60

Phiên 2: Y = –5x1 – 10x2 – 15x3


Chọn điểm xuất phát X0 (20;0;0)  Y0 = -100

+ Chọn bước chạy 1 cho x2 (0  x2  20)


+ x1, x3 cố định
+ Ymin = -120 với X(20;2;0)
+ Ràng buộc: 2x1 + 4x2 + 2x3 = 48  50 (thỏa)
3x1 + 5x2 + 4x3 = 70  80 (thỏa)

13
x1 x2 x3 Y 2x1 + 4x2 + 2x3 3x1 + 5x2 + 4x3
20 2 0 -120 48 70
20 2 1 -135 50 74
20 2 2 -150 52 78

20 2 3 -165 54 82
20 2 4 -180 56 86
20 2 5 -195 58 90
20 2 6 -210 60 94
20 2 7 -225 62 98
20 2 8 -240 64 102
Phiên 3:
20 Y =2–5x1 –910x2 –-255
15x3 66 106
Chọn điểm xuất phát X0 (20;2;0)  Y0 = -120
20 2 10 -270 68 110
x1 x2 x3 Y 2x1 + 4x2 + 2x3 3x1 + 5x2 + 4x3
20 2 11 -285 70 114
20 0 0 -100 40 60
2020 2 1 12 0 -300-110 72 44 118 65
20 2 0 -120 48 70
2020 2 3 13 0 -315-130 74 52 122 75
2020 2 4 14 0 -330-140 76 56 126 80 Xét
điều 20 5 0 -150 60 85 kiện
dừng: 2020 2 6 15 0 -345-160 78 64 130 90
20 7 0 -170 68 95
2020 2 8 16 0 -360 Y-180 (1) 80(0)
= |Y – Y |  Ɛy72= 0.01 134 100
2020 2 9 17 0 -375-190 82 76 138 105
20 10 0 -200 80 110 Sau 3
phiên ta 2020 2 11 18 0 -390-210 84 84 142 115 tìm
được 20 12 0 -220 88 120 giá trị:
2020 2 13 19 0 -405-230 86 92 146 125
2020 2 14 20 0 -420-240 88 96 150 130
20 15 0 -250 100 135
20 16 0 -260 104 140
20 17 0 -270 108 145
20 18 0 -280 112 150
14
20 19 0 -290 116 155
20 20 0 -300 120 160
Ymin(1) = -135 tại x1 = 20; x2 = 2; x3 = 1
 Y = |Y(1) – Y(0)| =  -135 + 0  = 135 > Ɛy = 0.01
 CHƯA THỎA MÃN

 Vòng 2

Phiên 1:
Y = –5x1 – 10x2 – 15x3
Chọn điểm xuất phát X0 (20;2;1)  Y1 = - 135

x1 x2 x3 Y 2x1 + 4x2 + 2x3 3x1 + 5x2 + 4x3


0 2 1 -35 10 14
1 2 1 -40 12 17
2 2 1 -45 14 20
3 2 1 -50 16 23
4 2 1 -55 18 26
5 2 1 -60 20 29
6 2 1 -65 22 32
7 2 1 -70 24 35
8 2 1 -75 26 38
9 2 1 -80 28 41
10 2 1 -85 30 44
11 2 1 -90 32 47
12 2 1 -95 34 50
13 2 1 -100 36 53
14 2 1 -105 38 56
15 2 1 -110 40 59
16 2 1 -115 42 62
17 2 1 -120 44 65
18 2 1 -125 46 68
19 2 1 -130 48 71
20 2 1 -135 50 74

Phiên 2:

x1 x2 x3 Y 2x1 + 4x2 + 2x3 3x1 + 5x2 + 4x3


20 0 1 -115 42 64
20 1 1 -125 46 69
20 2 1 -135 50 74
20 3 1 -145 54 79

15
20 4 1 -155 58 84
20 5 1 -165 62 89
20 6 1 -175 66 94
20 7 1 -185 70 99
20 8 1 -195 74 104
20 9 1 -205 78 109
20 10 1 -215 82 114
20 11 1 -225 86 119
20 12 1 -235 90 124
20 13 1 -245 94 129
20 14 1 -255 98 134
20 15 1 -265 102 139
20 16 1 -275 106 144
20 17 1 -285 110 149
20 18 1 -295 114 154
20 19 1 -305 118 159
20 20 1 -315 122 164

Phiên 3:

x1 x2 x3 Y 2x1 + 4x2 + 2x3 3x1 + 5x2 + 4x3


20 2 0 -120 48 70
20 2 1 -135 50 74
20 2 2 -150 52 78
20 2 3 -165 54 82
20 2 4 -180 56 86
20 2 5 -195 58 90
20 2 6 -210 60 94
20 2 7 -225 62 98
20 2 8 -240 64 102
20 2 9 -255 66 106
20 2 10 -270 68 110
20 2 11 -285 70 114
20 2 12 -300 72 118
20 2 13 -315 74 122
20 2 14 -330 76 126
20 2 15 -345 78 130
20 2 16 -360 80 134
20 2 17 -375 82 138
20 2 18 -390 84 142
20 2 19 -405 86 146

16
20 2 20 -420 88 150

Xét điều kiện dừng:

Y = |Y(2) – Y(1)|  Ɛy =
0.01

Sau 3 phiên ta tìm được giá trị:


Ymin(2) = -135 tại x1 = 20; x2 = 2; x3 = 1
 Y = |Y(2) – Y(1)| =  -135 + 135  = 0 < Ɛy = 0.01 (THỎA)

Kết luận:
Điều kiện dừng đã thỏa mãn, ta tìm được Ymin = -135 tại x1 = 20; x2 = 2; x3 = 1

1.3 Giải bài toán QHTT bằng Solver (Excel)


Bài 1:
Hàm mục tiêu: F(x) = 0,4x1 + 0,2x2 + 0,5x3 + 0,8x4  max
Ràng buộc: x1 + 2x2 + 4x3 + 8x4 ≤ 24000
3x1 + 5x2 + x3 ≤ 12000
6x1 + 3x3 + x4 ≤ 26500
xj ≥ 0, j = 1, 2, 3, 4

Bài làm
Bước 1: Nhập dữ liệu, các hàm bài toán đã cho vào Excel:

17
Bước 2: Chọn Data > Solver và điền đầy đủ các điều kiện bài toán vào hộp thoại Solver
Parameters, sau đó click Solve để chạy: Set Objective (Ô mục tiêu): $D$7
By Changing Variable Cell (Ô chứa các biến cần giải quyết): $D$13:$D$16
Subject to the Constraints (Điều kiện bài toán):

Click Add để thêm điều kiện cần:


$D$9 <= 24000

$D$10 <=12000
$D$11<= 26500
$D$13:$D$16 = integer

Bước 3: Hộp thoại xuất hiện, click OK đề xem kết quả

18
Bước 4: Xem kết quả:

Vậy: Kết quả cần tìm Max = 3600 , thỏa mãn các ràng buộc bài toán.
Bài 2:
Hàm mục tiêu: F(x) = x1 + 4x2 – 3x3  max
Ràng buộc: 2x1 + x2 + 3x3  7
4x1 – 3x2 – 2x3  9
x1 + 2x2 – x3 = 2

19
xj  0, j = 1, 2, 3

Bước 1: Tổ chức dữ liệu trên bảng tính:.


 Biến quyết định: được nhập tại các ô B6:D6. Cho các giá trị khởi động là 0.
 Hàm mục tiêu F(x): có giá trị căn cứ vào giá trị khởi động của các biến. Công
thức tại ô E7.
 Các ràng buộc: Tính vế trái của các ràng buộc theo công thức tại các ô E8:E10.

Bước 2: Tiến hành giải bài toán


1. Chọn ô E7 và chọn Data  Solver. Bảng hộp thoại Solver Parameters xuất hiện ta
tiến hành khai báo các thông số cho Solver như sau:
- Địa chỉ của hàm mục tiêu E7 được đưa vào Set Target Cell
- Chọn Max tại Equal To để Solver tìm lời giải cực đại cho hàm mục tiêu.
- Nhập địa chỉ của các biến quyết định B6:D6 tại By Changing Cells.

20
2. Thêm các ràng buộc vào Subject to the Contraints: Nhấp nút Add, bảng Add
Constraint xuất hiện và các ràng buộc được nhập như sau:
- Các ràng buộc về dấu: do xj ≥ 0, j = 1÷ 3 (các ràng buộc đều có dạng ≥) nên
ta chọn vùng địa chỉ chứa biến B6:D6 vào Cell Reference, chọn dấu ≥ và
nhập 0 vào Constraint

- Chọn OK để kết thúc việc khai báo các ràng buộc.


- Tiếp tục chọn Add để nhập tiếp các ràng buộc phương trình và bất phương trình:

21
Bước 3: Sau khi hoàn tất ta chọn Solve để chạy Solver, hộp thoại kết quả xuất hiện ta
chọn Keep Solver Solution, OK.

22
Bảng kết quả nhận được như sau:

Kết luận: Hàm mục tiêu đạt cực đại F(x)max = 1 tại x(2.5;0;0.5).

Bài 3:
Hàm mục tiêu: F(x) = 2x1+ 12x2 + x3
Yêu cầu : F(x) → Max
Ràng buộc : x1 + x2 + 2x3 ≤ -1
x1 + 4x2 ≤ 2
-x1 + x2 + 3x3 ≤ -3
x1 ≤ 1
x2 ≤ -1
x3 ≤ 0

Bài làm

Nhập vào bảng các số liệu sau:

23
24
Nhận được các kết quả sau:

Vậy nghiệm của phương trình là: x1 = 1; x2 = -1 ; x3 = -0.5

Bài 4:
Hàm mục tiêu: F(x) = -2x1 + 3x2 - 4x3 + 3x4 + x5  min
Ràng buộc: -x1 + x2 – 2x3 – x5  -6
x1 + 3x2 + x3 – 2x4 + 2x5  21
2x1 – x2 + 3x3 + x4 = 6
xj  0, j = 1, 5
Bài làm
Bước 1: Tổ chức dữ liệu trên bảng tính:.
 Biến quyết định: được nhập tại các ô B7:F7. Cho các giá trị khởi động là 0.
 Hàm mục tiêu F(x): có giá trị căn cứ vào giá trị khởi động của các biến. Công
thức tại ô G8.
 Các ràng buộc: Tính vế trái của các ràng buộc theo công thức tại các ô G9:G11.

25
Bước 2: Tiến hành giải bài toán
a. Chọn ô G8 và chọn Data  Solver. Bảng hộp thoại Solver Parameters xuất hiện
ta tiến hành khai báo các thông số cho Solver như sau:
- Địa chỉ của hàm mục tiêu G8 được đưa vào Set Target Cell
- Chọn Min tại Equal To để Solver tìm lời giải cực đại cho hàm mục tiêu.
- Nhập địa chỉ của các biến quyết định B7:F7 tại By Changing Cells.

b. Thêm các ràng buộc vào Subject to the Contraints: Nhấp nút Add, bảng Add
Constraint xuất hiện và các ràng buộc được nhập như sau:
- Các ràng buộc về dấu: do xj ≥ 0, j = 1÷ 4 (các ràng buộc đều có dạng ≥) nên
ta chọn vùng địa chỉ chứa biến B7:F7 vào Cell Reference, chọn dấu ≥ và
nhập 0 vào Constraint

26
Chọn OK để kết thúc việc khai báo các ràng buộc.

- Tiếp tục chọn Add để nhập tiếp các ràng buộc phương trình và bất phương
trình:

27
Bước 3: Sau khi hoàn tất ta chọn Solve để chạy Solver, hộp thoại kết quả xuất hiện ta
chọn Keep Solver Solution, OK.

28
Bảng kết quả nhận được như sau:

Kết luận: Hàm mục tiêu đạt cực tiểu F(x)min = -8 tại x(0,0,2,0,0).
2. Các bài toán quy hoạch phi tuyến
2.1. Giải bài toán QHTT bằng phương pháp luân phiên từng biến.
Bài 1:
Bể xử lý kị khí USAB của nhà máy chế biến thủy hải sản có COD đầu ra phụ
thuộc nhiều yếu tố, trong đó có hai yếu tố chính là pH của nước thải cho vào bể và thời
gian lưu nước thải trong bể. Xác định các thông số tối ưu để COD đầu ra đạt giá trị nhỏ
nhất. Các gợi ý như sau :
- x1: pH của nước thải cho vào bể
- x2: thời gian lưu nước (h)
- y: COD đầu ra (mg/l)
- Sau khi tiến hành nghiên cứu thực nghệm ta rút ra được phương trình biểu diễn
mối quan hệ giữa x1 , x2, y là Y = 5/2 x12+ 2 x22 – 4x1x2 + 2/5 x1 – 10 x2 + 149 ;
Với các ràng buộc : 6 ≤ x1 ≤ 9 ; và 8 ≤ x2 ≤ 10.5 (h)
- Điều kiện dừng : Y = |Y(1) – Y(0)| ≤ Ɛy = 0.01A
Bài làm
 Hàm mục tiêu: Y = 5/2 x12+ 2 x22 – 4x1x2 + 2/5 x1 – 10 x + 149
 Mục tiêu: Ymin = min Y(x1, x2)
 Điều kiện ràng buộc: 6 ≤ x1 ≤ 9
8 ≤ x2 ≤ 10.5
 Điều kiện dừng: Y = |Y(1) – Y(0)| ≤ Ɛy = 0.01

 Vòng 1
Phiên 1:
Y = 5/2 x12+ 2 x22 – 4x1x2 + 2/5 x1 – 10 x + 149
Chọn điểm xuất phát X0 (6;8)  Y0 = 97.4

29
- Chọn bước nhảy 0.3 cho x1 (6  x1  9) x2 cố định
- Ymin = 97.145 với X (6.3;8)
x1 x2 Y
6 8 97.4
6.3 8 97.145
6.6 8 97.34
6.9 8 97.985
7.2 8 99.08
7.5 8 100.625
7.8 8 102.62
8.1 8 105.065
8.4 8 107.96
8.7 8 111.305
9 8 115.1

Phiên 2:
Y = 5/2 x12+ 2 x22 – 4x1x2 + 2/5 x1 – 10 x + 149
Chọn điểm xuất phát X0 (6.3;8)  Y0 = 97.145

- Chọn bước nhảy 0.25 cho x2 (8  x1  10.5) x1 = 6.3: cố định


- Ymin = 95.87với X (6.3;8.75)
x1 x2 Y
6.3 8 97.145
6.3 8.25 96.47
6.3 8.5 96.045
6.3 8.75 95.87
6.3 9 95.945

Xét điều 6.3 9.25 96.27 kiện dừng


6.3 Y =9.5 96.845
|Y(1) – Y(0)|  Ɛy = 0.01
6.3 9.75 97.67
6.3 10 98.745
6.3 10.25 100.07 30

6.3 10.5 101.645


Sau 2 phiên ta tìm được giá trị:
Ymin(1) = 95.87 tại x1 = 6.3; x2 = 8.75
 Y = |Y(1) – Y(0)| =  95.87 -97.4 = -1.53 < Ɛy = 0.01
 THỎA MÃN
Kết luận:
Điều kiện dừng đã thỏa mãn, ta tìm được Ymin = 95.87 tại x1 = 6.3; x2 = 8.75
2.2. Giải bài toán QHPT bằng phương pháp leo dốc (Gradient)
Tìm chi phí tôí ưu cho việc sử dụng phân chuồng trong canh tác nông nghiệp. Trong
bài toán này chỉ xét chi phí bón phân phụ thuộc vào 2 yếu tố chính là số ngày bón và lượng
phân bón . Trong đó:
 x1: số ngày bón (ngày)
 x2: lượng phân bón (kg).
 F: chi phí bón phân (ngàn đồng).
 Hàm mục tiêu được xác định qua thực nghiệm:
F= x1 2 +x2 2 -25x1-40x2+1000
 Với các ràng buộc: x1>0 ; x2>0; F >0.
Bài làm
Cho bước nhảy L= 0.075
Biết rằng: x(1) = x(0) -L×gradY(x(0))
Tính grad Y(x)= (2x1-25,2x2-40)
Chọn điều kiện dừng : Ɛy = 0.00007 , Ɛz = 0.1
Y = |Y(1) – Y(0)| ≤ Ɛy
2 2
Z = √((Z ( )−Z( ) )) +..+(( Z ( )−Z ( ))) ≤
1
1 2
0 1
n
0
n Ɛz
Điể
m Tọa độ z(z1;z2) Tọa độ grad Y(z^(0)) Y(z) ΔY ΔZ
0 11.5 21.5 -2 3 447.00
0.27041
1 11.65 21.275 446.10 0.90 6
0.54083
2 11.8 21.05 445.34 0.76 2
3 11.95 20.825 444.73 0.61 0.811248
1.08166
4 12.1 20.6 444.27 0.46 4
5 12.25 20.375 443.95 0.32 1.35208
6 12.4 20.15 443.78 0.17 1.62249

31
6
1.89291
7 12.55 19.925 443.76 0.02 2
2.16332
8 12.7 19.7 443.88 0.12 8

Điểm z(8) không thõa mãn, gán z(0) mới là z(7) cho lần lặp kế tiếp.
Điểm Tọa độ z (z1;z2) Tọa độ grad F(X0) Y(z) ΔY ΔZ
12.550 19.925
0 0 0 0.1 -0.15 443.75813
12.542 19.936 0.0022 0.0135
1 5 3 443.75587 5 6
12.535 19.947 0.0018 0.0271
2 0 5 443.75398 9 2
12.527 19.958 0.0015 0.0406
3 5 8 443.75246 2 8
12.520 19.970 0.0542
4 0 0 443.75130 0.00116 4
12.512 19.981 0.0007
5 5 3 443.75051 9 0.0678
12.505 19.992 0.0004 0.0813
6 0 5 443.75008 3 6
12.497 20.003 0.0000 0.0949
7 5 8 443.75002 6 2
12.490 20.015 0.0003 0.1084
8 0 0 443.75033 0 8

Trong lần lặp này, điểm z(8) không thỏa và z(7) thỏa với cả ΔY và ΔZ
Đáp án: Tối ưu tại z = (12.4975;20.0038) và Y(z) = 443.75002

3. Các bài toán vận tải thế vị


Bài 1.
Cho 4 cửa hàng A (1,2,3,4) với khoảng thu (30,40,50,60) và 3 nhà máy B (1,2,3) với
lượng hàng (80,45,55). Tính cước phí vận chuyển là thấp nhất. Biết phí cước vận chuyển
như trong bảng sau:

32
Thu 30 40 50 60
A1 A2 A3 A4
Phát
80 1 5 7 2
B1

45 5 7 4 9
B2

55 12 2 3 6
B3

Bài Làm
Bước 1: Thành lập phương án ban đầu bằng cách sử dụng phương pháp cước phí nhỏ nhất

Thu 30 40 50 60
A1 A2 A3 A4
Phát
80 1 5 7 2
B1 30 50

45 5 7 4 9
B2 35 10

55 12 2 3 6
B3 40 15

Bước 2: Quy zero cước phí các ô chọn. Ta sẽ được hệ phương trình sau:
A1 + B1 + 1 = 0
A4 + B1 + 2 = 0
A3 + B2 + 4 = 0
A4 + B2 + 9 = 0
A2 + B3 + 2 = 0
A3 + B3 + 3 = 0
Sau khi thế B1 = 0, ta tìm được các nghiệm còn lại:
A1 = -1, A2 = 4, A3 = 3
A4 = -2, B2 = -7, B3 = -6

33
Thu 30 40 50 60
A1 A2 A3 A4
Phát -1 4 3 -2
80 1 5 7 2
B1 30 50
0 0 9 10 0
45 5 7 4 9
B2 35 10
-7 -3 4 0 0
55 12 2 3 6
B3 40 15
-6 5 0 0 -2

Các ô bị khoanh tròn ở trên cho ta cước phí âm, như thế nghĩa là bài toán chưa tối ưu.
Tổng cước phí vận chuyển = 1 x 30 + 2 x 50 + 9 x 10 + 4 x 35 + 3 x 15 + 2 x 40
= 485
Do chưa giải quyết được yêu cầu bài toán nên ta chọn lại như sau:

Thu 30 40 50 60
A1 A2 A3 A4
Phát
80 1 5 7 2
B1 20 60

45 5 7 4 9
B2 10 35

55 12 2 3 6
B3 40 15

Ta có hệ phương trình mới như sau:


A1 + B1 + 1 = 0
A4 + B1 + 2 = 0
A1 + B2 + 5 = 0
A3 + B2 + 4 = 0
A2 + B3 + 2 = 0
A3 + B3 + 3 = 0
Sau khi thế B1 = 0, ta tìm được các nghiệm còn lại:
A1 = -1 , A2 = 1 , A3 = 0 , A4 = -2, B2 = -4, B3 = -3

34
Thu 30 40 50 60
A1 A2 A3 A4
Phát -1 1 0 -2
80 1 5 7 2
B1 20 60
0 0 6 7 0
45 5 7 4 9
B2 10 35
-4 0 4 0 3
55 12 2 3 6
B3 40 15
-3 8 0 0 1

Đến đây, ta không thấy cước phí âm nữa, như vậy bài toán được xem là tối ưu:
Tổng cước phí vận chuyển = 1 x 20 + 2 x 60 + 5 x 10 + 4 x 35 + 3 x 15 + 2 x 40
= 455
Bài 2:
Nơi thu Đa Phước Nam Sơn Phước Hiệp Lượng phát thải
Nơi phát B1 B2 B3 ai
Tân Kim (A1) 4 3 6 70

Tân Đức (A2) 5 4 3 90

Thanh Đức (A3) 4 4 4 80

Lê Minh Xuân (A4) 5 3 5 80


Lượng tiếp nhận bj 120 100 100

Cách 1:
Nơi thu ĐA PHƯỚC NAM SƠN PHƯỚC HIỆP Lượng phát thải
B1 B2 B3 ai
Nơi phát
Tân Kim A1 4 3 6 70
Tân Đức A2 5 4 3 90
Thanh A3 4 4 4 80
Đức
Lê Minh A4 5 3 5 80
Xuân

35
Lượng bj 120 100 100
tiếp nhận

Lần 1:
Nơi thu ĐA PHƯỚC NAM SƠN PHƯỚC HIỆP Lượng phát thải
B1 B2 B3 ai
Nơi phát
Tân Kim A1 4 3 6 70
70
Tân Đức A2 5 4 3 90
90
Thanh A3 4 4 4 80
Đức 70 10
Lê Minh A4 5 3 5 80
Xuân 50 30
Lượng bj 120 100 100
tiếp
nhận

B1+A3+4=0 CHO B1=0


B1+A4+5=0 A1= -5 B2= 2
B2+A1+3+0 A2= -3 B3= 0
B2+A4+3+0 A3= - 4
B3+A2+3=0 A4= -5
B3+A3+4=0

Nơi thu ĐA PHƯỚC NAM SƠN PHƯỚC HIỆP Lượng phát thải
B1 B2 B3 ai
Nơi phát
Tân Kim A1 4 3 6 70
70
-1 0
Tân Đức A2 5 4 3 90
90
0
Thanh Đức A3 4 4 4 80
70 10

36
0 0
Lê Minh A4 5 3 5 80
Xuân 50 30
0 0
Lượng tiếp bj 120 100 100
nhận

Tổng chi phí vận chuyển là = 1140


Lần 2:
Nơi thu ĐA PHƯỚC NAM SƠN PHƯỚC HIỆP Lượng phát
thải
Nơi phát B1 B2 B3 ai
Tân Kim A1 4 3 6 70
50 20
Tân Đức A2 5 4 3 90
90
Thanh A3 4 4 4 80
Đức 70 10
Lê Minh A4 5 3 5 80
Xuân 80
Lượng bj 120 100 100
tiếp nhận

A1+B1+4=0 CHO B1=0


A1+B2+3=0 A1= -4 B2= 1
A2+B3+3=0 A2= -3 B3= 0
A3+B1+4=0 A3= - 4
A3+B3+4=0 A4= -4
A4+B2+3=0

Nơi thu ĐA NAM SƠN PHƯỚC HIỆP Lượng phát


PHƯỚC thải
Nơi phát B1 B2 B3 ai
Tân Kim A1 4 3 6 70
50 20

37
0 0
Tân Đức A2 5 4 3 90
90
0
Thanh Đức A3 4 4 4 80
70 10
0 0
Lê Minh A4 5 3 5 80
Xuân 80
0
Lượng tiếp bj 120 100 100
nhận

Tổng chi phí vận chuyển là =1090


Cách 2:
Nơi thu ĐA PHƯỚC NAM SƠN PHƯỚC HIỆP Lượng phát thải
B1 B2 B3 ai
Nơi phát
Tân Kim A1 4 3 6 70
X11 X12 X13
Tân Đức A2 5 4 3 90
X21 X22 X23
Thanh Đức A3 4 4 4 80
X31 X32 X33
Lê Minh A4 5 3 5 80
Xuân X41 X42 X43
Lượng tiếp bj 120 100 100
nhận

 Giải bằng solver:


X11+X12+X13 =70 X11+X21+X31+X41 =120
X21+X22+X23 =90 X12+X22+X32+X42 =100
X31+X32+X33 =80 X13+X23+X33+X43 =100
X41+X42+X43 =80

38
X11 X12 X13
50 20 0
X21 X22 X23
0 0 90
X31 X32 X33
70 0 10
X41 X42 X43
0 80 0

Tổng chi phí vận chuyển=1090

4. Tối ưu hóa thực nghiệm


4.1 Ma trận trực giao cấp 1.

Tổng thí nghiệm: N=23=8

39
STT Giá trị thực Giá trị đã mã hóa
Z1 Z2 Z3 Y x1 x2 x3 Y
1 100 20 10 2 -1 -1 -1 2
2 200 20 10 6 +1 -1 -1 6
3 100 60 10 4 -1 +1 -1 4
4 200 60 10 8 +1 +1 -1 8
5 100 20 30 10 -1 -1 +1 10
6 200 20 30 18 +1 -1 +1 18
7 100 60 30 8 -1 +1 +1 8
8 200 60 30 12 +1 +1 +1 12

Z max
j + Z min
j Z max - Z min
Z 0
j = Z =0
j
j j

2 2
100 + 200 200 - 100
Z10 = = 150 Z1 = = 50
2 2
20 + 60 60 - 20
Z 20 = = 40 Z 2 = = 20
2 2
10 + 30 30 - 10
Z 30 = = 20 Z 3 = = 10
2 2

 Đường phương trình hôi qui tuyến tính:


Y=b0 + b1x1 + b2x2 + b3x3 + b12x1x2 + b23x2x3 + b13x1x3 + b123x1x2x3
n
1
bj =
N
�x
i =1
ij

40
1
b0 = (2 + 6 + 4 + 8 + 10 + 18 + 8 + 12) = 8.5
8
1
b1 = ( -2 + 6 - 4 + 8 - 10 + 18 - 8 + 12) = 2.5
8
1
b2 = (-2 - 6 + 4 + 8 - 10 - 18 + 8 + 12) = -0.5
8
1
b3 = ( -2 - 6 - 4 - 8 + 10 + 18 + 8 + 12 = 3.5
8
1
b12 = (+2 - 6 - 4 + 8 + 10 - 18 - 8 + 12) = -0.5
8
1
b23 = ( +2 + 6 - 4 - 8 - 10 - 18 + 8 + 12) = -1.5
8
1
b13 = (+2 - 6 + 4 - 8 - 10 + 18 - 8 + 12) = 0.5
8
1
b123 = ( -2 + 6 + 4 - 8 + 10 - 18 - 8 + 12) = -0.5
8

Min Điểm sao (*) Y0 Max


0
Nhiệt độ (Z1, C) 100 150 8 200
Áp suất (Z2, bar) 20 40 9 60
Thời gian phản ứng (Z3, minute) 10 20 8.8 30

8 + 9 + 8.8
YTB0 = = 8.6
3

o Phương sai tái hiện: Sth

(Y10 - YTB0 ) 2 + (Y20 - YTB0 ) 2 + (Y30 - YTB0 ) 2


S =
2
th
2
(8 - 8.6) + (9 - 8.6) 2 + (8.8 - 8.6) 2
2
Sth2 = = 0.28
2
� Sth = 0.55

o Phương sai của các hệ số b:

Sth 0.55
Sbj = = = 0.2
N 8

41
bi
t=
Sbj
o Ý nghĩa của hệ số b theo tiêu chuẩn Student:

Trong đó:
bi là hệ số thứ j trong phương trình hồi qui.
Sbj là độ lệch chuẩn quân phương của các hệ số b.
8.5 0.5
t0 = = 42.5 t12 = = 2.5
0.2 0.2
2.5 0.5
t1 = = 12.5 t13 = = 2.5
0.2 0.2
0.5 1.5
t2 = = 2.5 t23 = = 7.5
0.2 0.2
3.5 0.25
t3 = = 17.5 t123 = = 1.25
0.2 0.2
o Tra bảng tiêu chuẩn Student với mức ý nghĩa p=0.025, bậc tự do f=m-1=2 thì
tp(f)=4.3

Vì t2, t12, t12, t123 < tp(f)=4.3 nên các hệ số b2, b12, b13, b123 bị loại bỏ.

Vậy ta được phương trình hồi qui thực nghiệm cuối là:
Y=8.5+2.5X1+3.5X3 – 1.5X2X3

42

You might also like