1. Trang chủ
  2. » Luận Văn - Báo Cáo

Btl_Ppđl_Nhóm 25.Pdf

57 4 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA

BÁO CÁO BÀI TẬP LỚN Môn: PHƯƠNG PHÁP ĐỊNH LƯỢNG

Đề tài : MỘT SỐ BÀI TOÁN ĐẶC BIỆT CÓ LIÊN QUAN ĐẾN QUY HOẠCH TUYẾN TÍNH

GVHD: Ths Võ Thị Ngọc TrânLớp: L04 – HK232

TP.Hồ Chí Minh, T4/2024

Trang 2

MỤC LỤC

Phần 1.BÀI TOÁN VẬN TẢI 1

1.1 Lý thuyết: 1

1.1.1 Bài toán vận tải: 1

1.1.2 Giải bài toán vận tải bằng phương pháp chi phí bé nhất 2

1.1.3 Tìm nghiệm tối ưu của bài toán vận tải 3

2.1.1 Bài toán phân công 17

2.1.2 Giải bài toán phân công bằng phương pháp Hungarian 17

3.1.1 Bài toán dòng chảy tối đa 31

3.1.2 Giải bài toán bằng thuật gán nhãn Ford-Fulkerson 32

Trang 3

Phần 1 BÀI TOÁN VẬN TẢI 1.1 Lý thuyết:

1.1.1 Bài toán vận tải:

Giả sử có m điểm cung cấp hàng và n điểm tiêu thụ hàng Khả năng cung cấp tối đa của điểm cung cấp thứ cấp i (i=1, 2, , m) là si Nhu cầu tối thiểu của điểm tiêu thụ thứ j (j=1, 2, , n) là dj Giả sử rằng khả năng vận chuyển trên mọi tuyến đường nối liền các điểm cung cấp và điểm tiêu thụ là vô hạn và chi phí vận chuyển một đơn vị sản phẩm từ điểm cung cấp i đến điểm tiêu thụ j là cij Xác định kế hoạch vận chuyển hàng hóa sao cho chi phí vận chuyển là thấp nhất

Gọi xij (i=1, 2, , m; j=1, 2, , n) là lượng hàng vận chuyển từ điểm cung cấp i đến điểm tiêu thụ j Bài toán tối ưu được thiết lập như sau:

Hàm mục tiêu: Minimize chi phí Z=

+Lượng hàng vận chuyển từ một điểm cung cấp không thể vượt quá khả năng tối đa của nó:

Trang 4

 j=1, 2, ,m +Ràng buộc về vùng giá trị của biến:

 i=1, 2, ,m

1.1.2 Giải bài toán vận tải bằng phương pháp chi phí bé nhất

-Ô ứng với chi phí vận chuyển đơn vị nhỏ nhất trong bảng vận tải sẽ được ưu tiên đáp ứng tối đa

-Loại bỏ điểm nguồn đã hết khả năng hoặc điểm đích đã được cung cấp đủ cùng các ô liên quan và xác định lại ô có chi phí nhỏ nhất

Trang 5

1.1.3 Tìm nghiệm tối ưu của bài toán vận tải

Bước 1: Tính toán chỉ số cải tiến Iij cho tất cả các ô rỗng (i,j) trong bảng vận tải Chỉ số này được tính như sau:

+Ứng với mỗi ô rống (i,j) nào đó, vẽ một đường đi kín nối ô này với các ô có gán giá trị trong bảng vận tải bằng các đoạn nằm ngang hoặc thẳng đứng

+Gán dấu cho các đỉnh của đường đi vẽ trong phần trên sao cho 2 đỉnh thuộc cùng một đoạn có dấu khác nhau, bắt đầu bằng dấu cộng cho ô rỗng nhận xét

+ Tính toán chỉ số cải tiến Iij cho ô đang xét Chỉ số này bằng tổng đại số chi phí vận chuyển của các ô liên quan đến đường đi tương ứng với dấu là dấu được gán trong b Bước 2: Nếu chỉ sô Iij của mỗi ô rỗng đều có giá trị không âm, lời giải trên là tối ưu Nếu tồn tại một số giá trị Iij âm, chọn ra ô có Iij nhỏ nhất và điều chỉnh lượng hàng vận chuyển trên các ô liên quan như sau:

+Xác định giá trị nhỏ nhất 𝑥𝑖𝑗𝑚𝑖𝑛 trong các ô được gán dấu trừ

+Lượng hàng vận chuyển trên các ô được gán dấu trừ sẽ trừ đi một lượng 𝑥𝑖𝑗𝑚𝑖𝑛 +Lượng hàng vận chuyển trên các ô được gán dấu cộng sẽ được cộng thêm một lượng 𝑥𝑖𝑗𝑚𝑖𝑛

Bước 3: Xác định lại bảng vận tải và quay trở lại bước 1

1.2 Ứng dụng

1.2.1 Bài toán 1

Bài 3 trang 454, Chapter 10, Sách Quantitative Methods for Business, 12th ed

Công ty Cơ sở Hạ tầng Tri-County, Inc., cung cấp khí đốt tự nhiên cho khách hàng trong khu vực ba quận Công ty mua khí đốt tự nhiên từ hai công ty: Southern Gas và Northwest Gas Dự báo nhu cầu cho mùa đông sắp tới như sau: Quận Hamilton 400 đơn vị; Quận Butler 200 đơn vị; và Quận Clermont 300 đơn vị; Hợp đồng cung cấp theo như sau: Southern Gas cung cấp 500 đơn vị, và Northwest Gas, 400 đơn vị Chi phí phân phối cho các

Trang 6

quận thay đổi tùy theo vị trí của các nhà cung cấp Chi phí phân phối trên mỗi đơn vị (tính bằng nghìn đô la) như sau:

Từ/Đến Hamilton Butler Clermont

a Hãy phát triển một biểu đồ mạng lưới đại diện cho bài toán này

b Phát triển một mô hình quy hoạch tuyến tính có thể được sử dụng để xác định kế hoạch nhằm giảm thiểu tổng chi phí phân phối

c Mô tả kế hoạch phân phối và tính toán tổng chi phí phân phối

d Sự tăng trưởng dân số và công nghiệp gần đây ở Quận Butler có khả năng tăng thêm nhu cầu lên đến 100 đơn vị Nhà cung cấp nào mà Công ty Tri-County nên ký hợp đồng để cung cấp thêm khả năng phân phối này?

1.2.2 Xây dựng mô hình và giải bài toán bằng phương pháp truyền thống

Câu a)

Trang 7

Câu b)

*Mô hình hóa bài toán

i = 1, 2 với 1 = Southern Gas, 2 = Northwest Gas j = 1, 2, 3 với 1 = Hamilton, 2 = Butler, 3 = Clermont

xij: Lượng hàng chuyên chở từ điểm nguồn i đến điểm đích j Hàm mục tiêu:

Minimize 𝑍 = 10x11+ 20x12+ 15x13+ 12x21+ 15x22+ 18x23Ràng buộc hàm:

Nguồn cung: 𝑥11+ 𝑥12+ 𝑥13 ≤ 500 𝑥21+ 𝑥22+ 𝑥23 ≤ 400 Nhu cầu: 𝑥11+ 𝑥21 = 400

𝑥12+ 𝑥22 = 200 𝑥13+ 𝑥23 = 300

Ràng buộc biến: 𝑥𝑖𝑗 ≥ 0 i=1, 2; j=1, 2, 3

500

Northwest Gas

Trang 8

Ô có chi phí thấp nhất kế tiếp là ô (1,3) và (2,2): giá trị cung cấp tối đa được gán cho 2 ô này là 100 và 200 nên ô (2,2) được ưu tiên gán giá trị 200 trước Sau khi gán, khu vực Butler đã được cung cấp đủ nhu cầu nên ô (1,2) sẽ bị loại bỏ trong bước tiếp theo

Trong 2 ô còn lại là (1,3) và (2,3), các giá trị của lượng hàng duy nhất có thể gán được là 100 và 200

Sau khi ta được bảng lời giải ban đầu, ta tiếp tục thực hiện bước cải thiện nghiệm ban đầu cho đến khi đạt được điều kiện tối ưu

Xét ô (1,2): đường đi ứng với ô (1,2) được trình bày như trong hình vẽ ở bảng : Nhà cung

cấp

Khu vực

Southern Gas

500

Northwest Gas

500

Northwest Gas

400

Trang 9

I21 = +12 -10 +15 -18 = -1 => Chưa thỏa điều kiện tối ưu

Như vậy ô (2,1) là ô rỗng duy nhất mà tại đó điều kiện tối ưu bị vi phạm Việc cải tiến nghiệm được thực hiện như sau:

Ta có : 𝑥21𝑚𝑖𝑛 = 𝑚𝑖𝑛(400,200) = 200 Do vậy, các giá trị gán mới tại các ô là:

𝑥11 = 400 − 200 = 200 𝑥23 = 200 − 200 = 0 𝑥13 = 100 + 200 = 300

𝑥21 = 0 + 200 = 200 Bảng vận tải sau điều chỉnh có dạng sau :

Nhà cung cấp

Khu vực

Southern Gas

500

Northwest Gas

500

Northwest Gas

400

Trang 10

Tương tự tại ô (2,3) ta được 𝐼23= 1=> thỏa điều kiện tối ưu

Như vậy kết quả này là kết quả cuối cùng của bài toán

Số lượng Chi phí Southern Gas – Hamilto 200 2000 Southern Gas – Clermon 300 4500 Northwest Gas – Hamilto 200 2400 Northwest Gas – Butle 200 3000 Tổng chi phí $11900

Câu d)

Để giải quyết bài toán này, ta tăng nhu cầu ở khu vực Butler thêm 100 và tăng nguồn cung của cả 2 nhà cung cấp Southern Gas và Northwest Gas thêm 100

Khi đó ta có bảng sau: Nhà cung

cấp

Khu vực

Southern Gas

600 Northwest

Gas

500

Trang 11

Giải tương tự câu c, ta có kết quả: Nhà cung

cấp

Khu vực

Southern Gas

600

Northwest Gas

1.2.3 Dùng phần mềm để giải toán

Dựa vào mô hình được xây dựng ở câu b, ta điền các thông tin của bài toán vào phần mềm Excel như sau:

Trang 12

Bước 1: Nhập dữ liệu bài toán

- Chi phí phân phối được điền vào các ô B4:D5

- Tổng cung ban đầu ở các ô E4:E5 và nhu cầu từng khu vực ở các ô B6:D8 Bước 2: Thiết lập mô hình và nhập vào phần mềm:

- Các biến quyết định có giá trị ban đầu là 0 ở các ô B10:D11

- Hàm mục tiêu: công thức =SUMPRODUCT(B4:D5,B10:D11) ở ô B17 để tính chi phí của giải pháp

- Các ràng buộc: Tổng lượng cung thực tế ở ô E10:E11 Tổng lượng cầu ở các ô B12:D12

o Với ô E10 = SUM(B10:D10) (Copy vào E11)

o Với ô B12 = SUM(B10:B11) (Copy vào C12 và D12)

Trang 13

Bước 3: Dùng Solver để tìm kết quả tối ưu: - Set Objective: B16

- To: Min

- By Changing Variable Cells: B10:D11 - Subject to the Constraints:

o E10:E11 <= G10:G11 o B12:D12 = B14:D14

- Make Unconstrained Variables Non-Negative - Select a Solving Method: Simplex LP

- Sau đó ta chọn Solve và tiếp tục chọn OK

- Ta tiếp chọn OK và chọn vào Sentivity ở ô Reports

Trang 15

Cuối cùng, ta thu được kết quả và bảng phân tích độ nhạy, trùng khớp với cách tính ở trên

Trang 16

Dùng Solver để tính toán lời giải tối ưu tương tự các bước trên ta được kết quả:

Kết quả này trùng khớp với kết quả tính được bằng phương pháp truyền thống, khi đó ta cần ký hợp đồng với nhà cung cấp Southern Gas thêm 100 đơn vị

Trang 17

1.2.4 Phân tích rủi ro

Dựa vào bảng phân tích độ nhạy có được ở trên, ta có phân tích rủi ro:

Southern Gas cung cấp cho Hamilton 200 đơn vị, với chi phí phân phối là 10 cho mỗi đơn Phân tích độ nhạy cho thấy hệ số mục tiêu cho chi phí này là 10 và có thể biến động trong khoảng tăng thêm 2 hoặc giảm đi 1 cho mỗi đơn vị mà vẫn giữ được giải pháp tối ưu hiện tại

Southern Butler: Giá trị cuối cùng là 0, cho thấy không có lượng khí đốt nào được Southern Gas cung cấp cho Butler trong giải pháp tối ưu hiện tại Phân tích độ nhạy cho thấy chi phí phân phối có thể tăng một lượng mà không làm giải pháp tối ưu thay đổi, bởi vì nó không được sử dụng Nếu giảm chi phí xuống 7, tức là chi phí phân phối dưới 14 thì mới có khả năng Southern Gas sẽ được chọn để cung cấp cho Butler

Trang 18

Southern Gas cung cấp 300 đơn vị cho Clermont với chi phí phân phối là 15 Giá trị này có thể tăng 1 mà không làm thay đổi giải pháp tối ưu, cho thấy chi phí từ Southern Gas đến Clermont có thể biến động nhưng dưới 16 thì vẫn giữ được giải pháp tối ưu hiện tại

Northwest Gas cung cấp 200 đơn vị cho Hamilton với chi phí là 12 Giá trị này có thể tăng 1 hoặc giảm 2 mà không làm thay đổi giải pháp tối ưu, nghĩa là chi phí phân phối có thể biến động từ 10 đến 13 cho mỗi đơn vị mà vẫn duy trì giải pháp tối ưu

Northwest Gas cung cấp 200 đơn vị cho Butler với chi phí là 15 Không có giá trị giảm chi phí, và giá trị này có thể tăng thêm 7 mà không thay đổi giải pháp tối ưu, nghĩa là chi phí phân phối có thể lên đến 22 cho mỗi đơn vị

Không có lượng cung từ Northwest Gas cho Clermont trong giải pháp tối ưu hiện tại Tuy nhiên, giảm chi phí là 1, cho thấy chi phí này có thể giảm từ 18 xuống 17 mà không ảnh hưởng đến giải pháp tối ưu Nếu chi phí xuống dưới 17 thì có khả năng Northwest sẽ cung cấp cho Clermont

Phân tích độ nhạy cho thây cho thấy một sự ổn định trong giải pháp tối ưu đối với sự biến thiên chi phí của từng biến; những thay đổi nhỏ trong chi phí có thể được chấp nhận mà không cần điều chỉnh kế hoạch phân phối

Trang 19

Phần 2 BÀI TOÁN PHÂN CÔNG 2.1 Lý thuyết

2.1.1 Bài toán phân công

Bài toán phân công là một dạng của bài toán quy hoạch tuyến tính nhằm phân công công việc cho từng người trong một dự án, phân công các nhân viên bán hàng đến từng vùng, phân công công việc cho các máy, phân bổ hợp đồng cho các nhà thầu Một đặc trưng quan trọng nhất của bài toán phân công là mỗi công việc sẽ chỉ được phân công cho một bộ phận thực hiện duy nhất Trong bài toán phân công, mục tiêu thường gặp nhất là tối thiểu hóa chi phí hoặc thời gian thực hiện công việc

So sánh với bài toán vận tải, bài toán phân công cũng là một trường hợp đặt biệt của bài toán vận tải, trong đó:

1 Các công việc phải thực hiện tương ứng với các điểm đích có nhu cầu bằng 1 2 Các bộ phận thực hiện công việc (công nhân, máy…) tương ứng với các điểm nguồn có khả năng cung cấp bằng 1

3 Chi phí thực hiện công việc tương ứng với chi phí vận tải

2.1.2 Giải bài toán phân công bằng phương pháp Hungarian

Bài toán phân công biểu diễn dạng bảng/ma trận chi phí:

1 Các hàng biểu diễn các bộ phận thực hiện công việc (công nhân, máy) 2 Các cột biểu diễn các công việc cần phải được thực hiện

3 Các ô biểu diễn chi phí tương ứng với việc phân công

Phương pháp Hungarian giải bài toán phân công ở dạng bảng được đề nghị dựa trên tính chất của ma trận chi phí: Nếu trừ đi một hằng số cho tất cả các chi phí trên cùng 1 hàng (hoặc 1 cột) của ma trận chi phí thì nghiệm tối ưu của bài toán phân công không thay đổi (tính chất này cũng có trong bài toán vận tải)

Phương pháp Hungarian được thực hiện qua các bước:

Trang 20

• Bước 0: Xác định ma trận rút giảm của BT

1 Trừ các chi phí trên mỗi hàng cho chi phí nhỏ nhất trên hàng đó 2 Trừ các chi phí trên mỗi cột cho chi phí nhỏ nhất trên cột đó • Bước 1:

1 Vẽ các đường thẳng qua các hàng và cột của ma trận rút giảm sao cho các đường thẳng này cắt ngang tất cả các giá trị 0 của ma trận và số đường

2.2 Ứng dụng

2.2.1 Bài toán 2

Bài 18 trang 462, Chapter 10, Sách Quantitative Methods for Business, 12th ed

CarpetPlus bán và lắp đặt sàn thảm cho các tòa nhà thương mại Brad Sweeney, một nhân viên kinh doanh của CarpetPlus, vừa giành được hợp đồng cho năm công việc Bây giờ Brad phải phân công năm đội lắp đặt của CarpetPlus để thực hiện các công việc Hoa hồng mà Brad nhận được phụ thuộc vào lợi nhuận mà CarpetPlus kiếm được, Brad muốn xác định

Trang 21

một bảng trắng lớn Bảng sau đây cho thấy chi phí (theo đô la) cho mỗi đội để hoàn thành từng công việc:

Các yêu cầu của bài toán:

a Phát triển một biểu đồ mạng cho vấn đề này

b Xây dựng và giải một mô hình quy hoạch tuyến tính để xác định phân công có chi phí tối thiểu

2.2.2 Xây dựng mô hình và giải bài toán bằng phương pháp truyền thống

Câu a)

Trang 23

Đặt:

i=1, 2, 3, 4, 5 với 1 = Red, 2 = White, 3 = Blue, 4 = Green, 5 = Brown j=1, 2, 3, 4, 5 lần lượt là công việc 1, 2, 3, 4, 5

𝑥𝑖𝑗 = {1 𝑛ế𝑢 𝑔𝑖á𝑜 𝑠ư 𝑖 𝑑ạ𝑦 𝑚ô𝑛 𝑗0 𝑡𝑟𝑜𝑛𝑔 𝑡𝑟ườ𝑛𝑔 ℎợ𝑝 𝑘ℎá𝑐Hàm mục tiêu:

Max 30𝑥11+44𝑥12+38𝑥13+47𝑥14+31𝑥15++25𝑥21+32𝑥22+44𝑥23+45𝑥24+25𝑥25+

s.t

𝑥11+𝑥12+𝑥13+𝑥14+𝑥15 ≤ 1 𝑥21+𝑥22+𝑥23+𝑥24+𝑥25 ≤ 1 𝑥31+𝑥32+𝑥33+𝑥34+𝑥35 ≤ 1 𝑥41+𝑥42+𝑥43+𝑥44+𝑥45 ≤ 1 𝑥51+𝑥52+𝑥53+𝑥54+𝑥55 ≤ 1 𝑥11+𝑥21+𝑥31+𝑥41+𝑥51= 1 𝑥12+𝑥22+𝑥32+𝑥42+𝑥52= 1 𝑥13+𝑥22+𝑥33+𝑥43+𝑥53= 1 𝑥14+𝑥24+𝑥34+𝑥44+𝑥54= 1 𝑥15+𝑥25+𝑥35+𝑥45+𝑥55= 1

Câu b)

Giải bài toán bằng phương pháp Hungarian

Trang 25

 Ma trận rút giảm biến đổi thành

Tổng chi phí $162

2.2.3 Dùng phần mềm để giải toán

Dựa vào mô hình được xây dựng ở câu a, ta điền các thông tin của bài toán vào phần mềm Excel như sau:

Trang 26

Bước 1: Nhập dữ liệu bài toán: chi phí cho mỗi đội để hoàn thành công việc được nhập vào các ô B4:F8

Bước 2: Thiết lập mô hình và nhập vào phần mềm:

- Các biến quyết định có giá trị ban đầu là 0 ở các ô B12:F16

- Hàm mục tiêu: công thức =SUMPRODUCT(B4:F8,B12:F16) ở ô B22 để tính tổng chi phí

- Các ràng buộc: Số công việc được phân công G12:G16 Tổng số công nhân phân công vào ở ô B17:F17

o Với ô G12 = SUM(B12:F12) (Copy vào G13:G16) o Với ô B17 = SUM(B12:B16) (Copy vào C17:F17)

Trang 27

Bước 3: Dùng Solver để tìm kết quả tối ưu: - Set Objective: B12

- To: Min

- By Changing Variable Cells: B12:F16 - Subject to the Constraints:

o G12:G16 <= I12:I16 o B17:F17 = B19:F19

- Make Unconstrained Variables Non-Negative - Select a Solving Method: Simplex LP

- Sau đó ta chọn Solve và tiếp tục chọn OK

- Ta tiếp chọn OK và chọn vào Sentivity ở ô Reports

Trang 29

Cuối cùng, ta thu được kết quả và bảng phân tích độ nhạy, trùng khớp với cách tính ở trên

Trang 30

2.2.4 Phân tích rủi ro

Trang 31

Trong bảng phân tích độ nhạy, "Allowable Increase" và "Allowable Decrease" cho hệ số mục tiêu cho biết chi phí có thể biến động trong khoảng nào mà không làm thay đổi giải pháp tối ưu hiện tại

Allowable Increase: Là mức tăng cho phép mà không thay đổi giá trị biến cơ bản trong giải pháp tối ưu

Allowable Decrease: Là mức giảm cho phép mà không thay đổi giá trị biến cơ bản trong giải pháp tối ưu

Dựa vào bảng phân tích độ nhạy, ta có thể thấy:

Với đội Red, chi phí làm công việc 1 và công việc 4 tăng hoặc giảm cũng không làm thay đổi kết quả của giải pháp Tuy nhiên chi phí cho công việc 2 giảm từ 6 hoặc chi phí cho công việc 5 giảm từ 3 hoặc chi phí cho công việc 3 tăng từ 3 trở lên thì cũng làm thay đổi kết quả của giải pháp, khi đó ta phải tính toán phân công lại để đạt được chi phí tối ưu

Với đội White, nếu chi phí cho công việc 1 giảm xuống dưới 31, công việc này có thể trở thành một lựa chọn trong giải pháp tối ưu Với công việc 2 sự tăng chi phí không làm thay đổi giải pháp, nhưng nếu chi phí giảm 1 đơn vị, giải pháp có thể thay đổi Với công việc 5, nếu chi phí tăng từ 1 đơn vị thì có thể đội White sẽ không được chọn để thực hiện công việc 5

Với đội Blue, ta có thể thấy nếu chi phí cho công việc 1 giảm từ 1 đơn vị thì có thể công việc này sẽ được Blue đảm nhận trong giải pháp tối ưu Còn chi phí cho công việc 4 tăng từ 1 đơn vị thì công việc này sẽ được phân công cho đội khác để đạt được chi phí tối ưu Còn lại, các thay đổi nhỏ trong chi phí khi thực hiện các công việc 2, 3, 5 sẽ không cần thay đổi phân công để đạt kết quả tối ưu

Với đội Green, nếu chi phí cho công việc 1 tăng ít hơn 1 hoặc chi phí cho công việc 2, 3, 4, 5 giảm nhưng lần lượt ít hơn 4, 3, 2, 1 thì sẽ không ảnh hưởng đến kết quả Tuy nhiên, nếu thay đổi chi phí vượt quá giới hạn thì kết quả phân công đã tính sẽ không còn tối ưu nữa,

Ngày đăng: 29/06/2024, 00:00

Xem thêm: