Phạm vi vàkhả năng ứng dụng của các bài toán tối ưu cũng ngày càng đa dạng và phong phó.Lớp bài toán tối ưu quan trọng được nghiên cứu đầu tiên và được ứng dụng nhiều nhất là bài toán qu
Trang 1LỜI MỞ ĐẦU
Cùng với sự phát triển mạnh mẽ của khoa học kỹ thuật, các bài toán tối ưuxuất hiện ngày càng nhiều và tính phức tạp của chúng ngày càng lớn Phạm vi vàkhả năng ứng dụng của các bài toán tối ưu cũng ngày càng đa dạng và phong phó.Lớp bài toán tối ưu quan trọng được nghiên cứu đầu tiên và được ứng dụng
nhiều nhất là bài toán quy hoạch tuyến tính (linear programming) Đó là mô hình
toán học của một lớp rộng lớn các bài toán ứng dụng trong kinh tế và kỹ thuật Do
đó cấu trúc của lớp bài toán quy hoạch tuyến tính có nhiều tính chất rất tốt về mặttoán học, người ta đã tìm được các thuật giải rất hữu hiệu cho bài toán này Năm
1947 nhà toán học Mỹ G.B Dantzig đã nghiên cứu và đề xuất ra thuật toán đơn
hình (simplex method) để giải bài toán quy hoạch tuyến tính Thuật toán đơn hình
được phát triển mạnh mẽ trong những năm sau đó và được xem là một phươngpháp kinh điển để giải các bài toán quy hoạch tuyến tính Đây là một phương phápđược sử dụng có thể nói là rộng rãi nhất Có ba lý do chính:
Một là: Rất nhiều vấn đề thực tế, trong nhiều lĩnh vực khác nhau có thể đưa
về bài toán quy hoạch tuyến tính
Hai là: Trong nhiều phương pháp giải các bài toán phi tuyến, bài toán tuyến
tính xuất hiện nh là một bài toán phụ cần phải giải trong nhiều bước lặp
Ba là: Phương pháp đơn hình là phương pháp hiệu quả để giải bài toán quy
hoạch tuyến tính
Ngày nay, bằng thuật toán đơn hình và các dạng cải biên của chúng, người ta
có thể giải rất nhanh các bài toán QHTT cỡ lớn
Lớp các bài toán vận tải là trường hợp đặc biệt của quy hoạch tuyến tính, bởivậy có thể dùng các phương pháp của quy hoạch tuyến tính để giải Tuy nhiên, dotính chất đặc thù riêng của nó, người ta xây dựng các phương pháp giải riêng.Thông thường khi nói đến bài toán vận tải ta thường liên hệ ngay đến bài toánvận tải hai chỉ số, bởi đây là bài toán vận tải kinh điển có những phương pháp giảihay Bên cạnh đó, người ta còn xét mét sè các bài toán vận tải mở rộng như bài
Trang: 79
Trang 2toán vận tải ba chỉ số, bài toán vận tải khoảng, bài toán vận tải đa mục tiêu vàrất nhiều bài toán khác, đó là các biến thể của bài toán vận tải kinh điển trên.
Trong khuôn khổ khoá luận này, em xem xét và nghiên cứu mét sè bài toán
mở rộng trong lớp các bài toán vận tải mở rộng đó Đó là các bài toán: Bài toán
vận tải ba chỉ số (solid transport problem) không hạn chế và có hạn chế khả năng thông qua, Bài toán vận tải ba chỉ số khoảng (interval solid transport problem)và
giới thiệu mét sè Bài toán vận tải đa mục tiêu
Cuối cùng, em xin bày tỏ lòng biết ơn sâu sắc nhất đối với thày giáo hướng
dẫn Thạc sỹ Vò Tiến Việt, người đã tận tình chỉ bảo, giúp đỡ em trong quá trình
hoàn thành khoá luận này Em còng xin chân thành cảm ơn sự giúp đỡ nhiệt tìnhcủa các thầy cô trong khoa Toán - Tin, Học viện An ninh Nhân dân
Trong việc nghiên cứu các bài toán tối ưu nói chung, giải tích lồi giữ mét vaitrò rất quan trọng Nó được sử dụng làm cơ sở toán học trong việc xây dựng cácthuật toán
Trang 3Quy hoạch tuyến tính là mét trong những lớp bài toán tối ưu được nghiên cứutrọng vẹn cả về phương diện lý thuyết lẫn thực hành, Bài toán vận tải là một dạng
Trang: 2
đặc biệt của QHTT Do đó chương này nhằm giới thiệu mét sè khái niệm vàkiến thức cơ bản về giải tích lồi và QHTT
1 1 Một số khái niệm về giải tích lồi
1 1 1 Không gian Euclude
Mét vector n chiều trên trường số thực là mét bé được sắp thứ tự gồm n sốthực x = (x1, x2, , xn) Các xi, i =1, , n gọi là các thành phần hay toạ độ củavector Ví dụ x=(4,5,10,20)
Hai vectơ x và y gọi là bằng nhau x=y, nếu xi = yi, ∀i =1, , n
Xét hai phép toán trên các vector:
Phép cộng: x + y = (x1 + y1, x2 + y2, , xn + yn)
Phép nhân: αx=(αx1, αx2, , αxn), ∀α∈ R
Khi đó tập hợp tất cả các vector n chiều trong đó xác định phép cộng cácvector, nhân mét số thực với vector như trên tạo thành không gian tuyến tính nchiều trên trường số thực R, ký hiệu Rn
Các vector x(i)∈Rn, i =1, , m được gọi là độc lập tuyến tính nếu:
Nếu: với Ýt nhất mét αi≠ 0 thì x gọi là tổ hợp tuyến tính của các
x(i), i =1, , m Hơn nữa nếu αi> 0, i =1, , m và thì x gọi là tổ hợp lồi của
các x(i), i =1, , m
Trong Rn có n vector độc lập tuyến tính lập thành cơ sở của nú
Trang 4Giả sử e(1), e(2), , e(n) là một cơ sở của Rn thì bất kỳ mét vector x ∈ Rn đều là tổhợp tuyến tính của các vector e(1), e(2), , e(n) Ta gọi tích vô hướng của hai vector x =(x1, x2, , xn) và y = (y1, y2, , yn), ký hiệu, <x,y>, là một số bằng.
Tích vô hướng là một dạng song tuyến tính, đối xứng, không âm, tức là:
Trang: 3
1. <x,y> = <y, x> ∀x, y ∈ Rn
2. <x(1) + x(2), y >=< x(1), y >+< x(2), y> ∀x(1), x(2), y ∈ Rn
3. <λx,y> = λ<x,y> ∀x, y ∈ Rn
4. <x,x> ≥ 0, ∀x∈ Rn dấu bằng xẩy ra khi và chỉ khi x= 0
Độ dài của vector x = (x1, x2, , xn) là một số xác định bởi
Khoảng cách giữa hai vector x và y là một số xác định bởi:
Không gian vector trong đó có tích vô hướng và khoảng cách nh trên gọi làkhông gian Euclude
Trang 5* Nếu tập A⊂Rn chứa cùng với điểm x mét lân cận của nó thì x gọi là điểmtrong của A Nếu trong lân cận bất kỳ của x ∈ A có các điểm của A và các điểmkhông thuộc A thì x gọi là điểm biên của tập hợp A.
* Một tập A⊂Rn gọi là giới nội nếu nó được chứa trong mét hình cầu tâm Onào đó, tức là tồn tại sè ρ đủ lớn sao cho với mọi x∈A,x≤ρ Một dóy {x(k)} hội tụthì bao giờ cũng giới nội
* Một tập hợp G⊂Rn được gọi là mở nếu với mọi x∈G đều tồn tại một hìnhcầu tâm x nằm gọn trong G Một tập F⊂Rn được gọi là đóng nếu với mọi dãy hộitụ{x(k)}⊂ F ta đều có:
Trang: 4
Một tập chứa mọi điểm biên của nú là tập đóng
*Tập C được gọi là tập Compact nếu từ mọi dãy vô hạn {x(k)} thuộc C đều cóthể trích ra một dóy con {x(ki)} hội tụ tới phần tử thuộc C Tập C là Compact khi vàchỉ khi C đóng và giới nội Tập Compact M của tập đóng C còng đóng trong C.Tập con đóng M của tập Compact còng Compact
Hàm f(x) liên tục trên tập Compact C thì sẽ đạt cực trị trên tập Êy
Trang 6a1x1+ a2x2+ + anxn = α trong đó a1, a2, , an , α∈R
* Tập hợp các điểm x = (x1, x2, , xn) ∈Rn thoản mãn bất phương trình tuyếntính a1x1+ a2x2+ + anxn≤α được gọi là nửa không gian đóng
* Nửa không gian được cho bởi a1x1+ a2x2+ + anxn < α được gọi là nửakhông gian mở
* Tập X⊂Rn được gọi là tập lồi nếu cùng với việc chứa hai điểm x, y nã chứa
cả đoạn thẳng chứa hai điểm Êy, tức là chứa tất cả các điểm có dạng:
λx + (1-λ)y, 0 ≤λ≤ 1
Ví dụ về các tập lồi: Không gian Euclide, các nửa không gian, mặt phẳng, nửamặt phẳng, hình chữ nhật, hình vuông, hình elip, hình hộp, hình cầu
Trang: 5
* Một tập hợp là giao của một số hữu hạn các nửa không gian đóng được gọi
là tập lồi đa diện
Mệnh đề: Giao của hai tập lồi là một tập lồi.
Hệ quả 1 Giao của mét sè bất kỳ tập hợp lồi là tập lồi.
Hệ quả 2 Miền chứa nghiệm của một hệ bất phương trình tuyến tính dạng.
là một tập lồi (đa diện lồi) Mét tập lồi đa diện giới nội gọi là một đa diện.
Giao của tất cả các tập lồi chứa tập X gọi là bao lồi của nã, ký hiệu [X]
Trang 7* Hàm f(x) xác định trên C đạt cực tiểu tuyệt đối tại x* ∈Cnếu
f(x*) ≤ f(x):∀ x∈C
* Hàm f(x) đạt cực tiểu địa phương tại x*∈ C nếu tồn tại lân cận mở U của x*sao cho f(x*) ≤ f(x):∀ x∈C ∩U
Mệnh đề 1: Bất kỳ điểm cực tiểu địa phương nào của hàm lồi trên tập lồi cũng
là điểm cực tiểu tuyệt đối
Hệ quả: Bất kỳ điểm cực đại địa phương nào của hàm lâm còng là cực đại
tuyệt đối
Mệnh đề 2: Cực đại của một hàm lồi (nếu có) trên một tập lồi có điểm cực
biên bao giờ cũng đạt tại một điểm cực biên
1 2 Bài toán Quy hoạch tuyến tính
Trang: 6
QHTT bắt nguồn từ những nghiên cứu của nhà toán học Nga nổi tiếng, Viện
sỹ L.V Kantorovich trong mét loạt các công trình về bài toán kế hoạch hoá sảnxuất, công bố năm 1938 Năm 1947 nhà toán học Mỹ G.B Dantzig đã nghiên cứu
và đề xuất phương pháp đơn hình (Simplex method) để giải bài toán QHTT Năm
1952 phương pháp đơn hình đã được chạy trên máy tính điện tử của Mỹ
1 2 1 Bài toán quy hoạch tuyến tính
Bài toán tổng quát
Để nhất quán lập luận ta xét bài toán tìm cực đại, sau đó ta xét cách chuyển bàitoán tìm cực tiểu sang tìm cực đại Bài toán tổng quát của QHTT có dạng:
Ký hiệu: A = (aij)mxn là ma trận với các phần tử aij
(1.1) gọi là hàm mục tiêu, (1.2) là các rằng buộc
Nếu gặp bài toán Min, tức là
Trang 8Thì giữ nguyên ràng buộc và đưa về bài toán Max bằng
cách
Nếu bài toán Max có phương án tối ưu là x* thì bài toán min còng có phương
án là x* và f min =-f max
Thật vậy, vì x* là phương án tối ưu của bài toán Max nên ta có:
Chứng tỏ x* là phương án tối ưu của bài toán Min và
Người ta thường xét bài toán quy hoạch tuyến tính dưới hai dạng sau:
- Dạng chuẩn:
Trang 9- Dạng chính tắc:
Đưa bài toán QHTT về dạng chuẩn hoặc dạng chính tắc.Bất kỳ QHTT nào cũng có thể đưa về mét trong hai dạng chuẩn hoặc chínhtắc nhờ các phép biến đổi tuyến tính sau:
i) Một ràng buộc
Trang 10Có thể đưa về ràng buộc bằng cách nhân hai vế
với (-1) và viết lại
ii) Một ràng buộc đẳng thức
có thể thay bằng hai ràng buộc bất đẳng thức:
iii) Một biến x j không bị ràng buộc dấu có thể thay thế bởi hiệu của hai biến không
âm bằng cách đặt:
iv) Một ràng buộc bất đẳng thức
Trang: 8
Có thể đưa về ràng buộc đẳng thức bằng cách đưa vào biến phô yi≥ 0:
Về nguyên tắc, áp dụng nhiều lần các phép biến đổi (i), (ii) và (iii) ta có thểđưa một bài toán QHTT bất kỳ về dạng chuẩn, sau đó áp dụng nhiều lần phép biếnđổi (iv) ta sẽ đưa nó về dạng chính tắc
Giải bài toán QHTT bằng phương pháp hình học
Trang 11Xét bài toán QHTT dưới dạng chuẩn với hai biến số:
Tõ ý nghĩa hình học ta biết rằng mỗi bất phương trình tuyến tính a i1 x 1 + a i2 x 2 ≤ b ixácđịnh một nửa mặt phẳng
Nh vậy miền ràng buộc D được xác định nh là giao của
một nửa mặt phẳng và sẽ là một đa giác lồi trên mặt phẳng Phương trình c 1 x 1 +
c 2 x 2 =α khi α thay đổi sẽ xác định trên mặt phẳng các đường thẳng song song với
nhau mà ta sẽ gọi là các đường mức (với giá trị mức α) Mỗi điểm ∈D sẽnằm trên một đường mức với mức
Bài toán đặt ra có thể phát biểu theo ngôn ngữ hình học như sau: trong số cácđường mức cắt tập D, hãy tìm đường mức với gía trị lớn nhất
Nếu dịch chuyển song song các đường mức theo hướng vector
cho đường mức không còn cắt D nữa thì dừng Điểm của D (có thể nhiều điểm)
nằm trên đường mức cuối cùng này sẽ là lời giải tối ưu cần tìm, còn giá trị của hàmmục tiêu tại đó chính là giá trị tối ưu của bài toán
Trang: 9
Ví dụ: Xét bài toán:
Trang 12f(x)= 4x1 + 5x2→max
Xét đường mức: 4x1 + 5x2=10 Đường
mức này đi qua hai điểm (0,2) và (2.5,0) Ta có x*=(3,2), fmax = 22
và x* là một đỉnh của D Qua phương pháp hình học ta thấy rằng:
- Nếu quy hoạch tuyến tính có phương án tối ưu thì có Ýt nhất một đỉnh là tối
ưu Sở dĩ nói Ýt nhất vì có trường hợp đường mức ở vị trí giới hạn trùng với mộtcạnh của D thì tất cả các điểm trên cạnh này là phương án tối ưu, trong đó có haiđỉnh
- Nếu miền ràng buộc D giới nội và khác rỗng thì chắc chắn có phương án tốiưu
Trang 13- Nếu miền ràng buộc không giới nội nhưng hàm mục tiêu bị chặn trên ở trênmiền ràng buộc thì cũng chắc chắn có phương án tối ưu.
1 2 2 Một số tính chất chung
Mệnh đề 1: Tập hợp tất cả các phương án của một bài toán QHTT là tập lồi.
Tập lồi D các phương án của một bài toán QHTT xác định bởi toàn bộ cácràng buộc (1.2) và (1.3) Tập D có thể là rỗng, hoặc là một đa diện lồi hoặc là mộttập lồi đa diện không giới nội
Nếu D là một đa diện lồi thì bài toán có phương án, hơn nữa giá trị tối ưu củahàm mục tiêu trên đa diện lồi là hữu hạn và việc tìm phương án tối ưu đưa đến việc
Trang: 10
chọn các điểm của đa diện D có số đỉnh (điểm cực biên hay phương án cựcbiên) hữu hạn
Mệnh đề 2: Hàm mục tiêu của bài toán QHTT sẽ đạt Max tại điểm cực biên
của tập D Nếu hàm mục tiêu không chỉ nhận Max tại một điểm cực biên của tậplồi D mà tại nhiều điểm cực biên thì nó sẽ đạt giá trị cực đại tại những điểm là tổhợp lồi của các điểm đó
Ký hiệu Aj, j=1, , n là các vector cột của ma trận A
Khi Êy hệ ràng buộc Ax = b có thể viết:
b (1.4)
Mệnh đề 3: Nếu các vector A1, A2, , Ak là độc lập tuyến tính và thoả mãn
x 1 A 1 + x 2 A 2 + + x n A n = b
trong đó x j >0, j=1, k thì điểm
x = (x 1 , x 2 , , x k ,0, ,0)
là điểm cực biên của tập lồi đa diện D
Mệnh đề 4: Nếu x = (x 1 , x 2 , , x n ) là điểm cực biên của tập lồi đa diện D thì các vector A j trong biểu diễn (1.4) ứng với các thành phần xj > 0 lập thành hệ độc
Trang 14lập tuyến tính Vì ma trận A có m dòng nên từ đây suy ra rằng điểm cực biênkhông có quá m thành phần dương.
và trong thực hành để kiểm tra điều kiện tối ưu của phương pháp cực biên x tachỉ cần kiểm tra
∆k ≥ 0, ∀k∉J (1 18)
• Người ta có thể chứng minh rằng nếu bài toán khôngthoái hoá thì (1.16) còng là điều kiện cần của tối ưu
Định lý 1 2: Nếu tồn tại một chỉ số k sao cho ∆k < 0 thì người ta có thể tìmđược Ýt nhất một phương án x’ mà đối với nã Z’ > Z0
Công thức tìm phương án x’:
Nhân (1.10) với θ nào đó ta có:
Lấy (1.12) trừ đi (1.19) từng vế ta có:
Trang 15Nếu các hệ số của các vector Aj, j=1, , m và Ak trong (1.20) không âm, khi đó ta
có một phương án mới x’ mà đối với nó hàm mục tiêu f có giá trị
Trong (1.12) tất cả các biến xj, j=1, , m đều dương Vì vậy có thể tìmđược θ> 0 sao cho
Nếu đối với chỉ số k mà ∆k < 0, tồn tại zjk> 0, j∈J thì giá trị θ lớn nhất còn thoả mãn(1.22) có thể xác định bởi hệ thức :
Nếu ta thay θ trong (1.20) và (1.21) bởi θo thì thành phần thứ r sẽ bằng 0:
Bài toán đặt ra là: xác định những đại lượng xij cho mọi con đường (i,j) saocho tổng chi phí chuyên chở là nhỏ nhất với giả thiết là:
Tức là lượng hàng phát ra bằng đúng lượng hàng yêu cầu ở các điểm thu (điềukiện cân bằng thu phát)
Dạng toán học của BTVT là:
Trang 16Hệ rằng buộc (2.2), (2.3) có m + n phương trình, m x n Èn, tuy nhiên do (I)nên bất kỳ phương trình nào trong m + n phương trình cũng là hệ quả của các
phương trình còn lại và có thể bỏ đi Thật vậy, hệ rằng buộc có thể viết dạng (2 5).
Giả sử ta cộng các phương trình từ thứ (m+1) tới thứ (m+n) rồi trừ đi tổng cácphương trình từ thứ (2) tới thứ (m) thì ta được phương trình thứ (1) Do đó sốphương trình cực đại của hệ (2.2), (2.3) không quá m + n-1
- Nếu x11 = b1 thì ta xóa cột 1 Lập bảng mới có a’1 = a1 - x11 Tiếp tục quá trình,bắt đầu từ ô (1,2)
Một lần phân phối như vậy ta được một tải lượng xij > 0 và bá bít đi được mộthàng (hoặc cột) của bảng T Bảng mới cuối cùng chỉ còn lại một ô (m, n) và do cânbằng thu phát nên cực tiể đạt cả ở hàng, cả ở cột sau khi phân phối lượng còn lại
Do đó ta xóa cả cột n và hàng m đi Tổng số hàng và cột là m + n mỗi lần phânphối bỏ đi được 1 hàng (hoặc cột), lần cuối cùng bỏ cả cột n và hàng m, nênphương án thu được có không quá m + n - 1 ô sử dụng, không lập thành chu trình,tức là có phương án cực biên
Phương pháp cước phí tối thiểu trong toàn bảng
Quá trình biến đổi và phân phối hoàn toàn giống như phương pháp trên chỉ khác làtrong mỗi bước ta không chọn ô ở góc tây bắc mà chọn ô có cước phí nhỏ nhấttrong toàn bảng
Phương pháp cực tiểu cước phí theo hàng
Bắt đầu từ hàng 1: Giả sử c1s = min cik, k = 1, , n