1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Ứng dụng phần mềm microsoft office excel để giải bài toán quy hoạch tuyến tính

45 21 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 45
Dung lượng 0,98 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đặc biệt, nếu tất cả các yếu tố biến số liên quan đến khả năng, mục đích và quyết định lựa chọn đều có mối quan hệ tuyến tính thì chúng ta hoàn toàn có thể sử dụng mô hình quy hoạch tuyế

Trang 1

TR¦êNG §¹I HäC VINH

KHOA TO¸N

- -

lª thÞ thu hiÒn

øNG DôNG PHÇN MÒM MICROSOFT OFFICE EXCEL

§Ó GI¶I BµI TO¸N QUY HO¹CH TUYÕN TÝNH

KHãA LUËN TèT NGHIÖP §¹I HäC

NGµNH TO¸N TIN Häc øNG DôNG

VINH 2010

Trang 2

TR¦êNG §¹I HäC VINH

KHOA TO¸N

- -

lª thÞ thu hiÒn

øNG DôNG PHÇN MÒM MICROSOFT OFFICE EXCEL

§Ó GI¶I BµI TO¸N QUY HO¹CH TUYÕN TÝNH

KHãA LUËN TèT NGHIÖP §¹I HäC

NGµNH TO¸N Tin häc øNG DôNG

C¸n bé h-íng dÉn khãa luËn Th.S NguyÔn ThÞ Thanh HiÒn Sinh viªn thùc hiÖn: Lª ThÞ Thu HiÒn Líp 47 B To¸n Tin häc øng dông

Vinh 2010

Trang 3

MụC LụC

Trang

Mở đầu.……… 1

Ch-ơng 1 Bài toán quy hoạch tuyến tính……… 3

1.1 Bài toán……… 3

1.2 Tính chất bài toán quy hoạch tuyến tính……… 4

1.3 Ph-ơng pháp đơn hình……… 6

Ch-ơng 2 Giải bài toán quy hoạch tuyến tính trên Microsoft Office Excel 13

2.1 Công cụ Add – Ins Solver……… 13

2.2 Giải bài toán quy hoạch tuyến tính trên Microsoft Office Excell…… 18

2.3 Giải thích thuật ngữ……… 25

2.4 Hạn chế khi giải bài toán quy hoạch tuyến tính trong Excel………… 27

Ch-ơng 3 Các bài toán mở rộng……… 28

3.1 Bài toán lập kế hoạch sản xuất……… 28

3.2 Bài toán vận tải……… 33

3.3 Giải bài toán quy hoạch phi tuyến……… 37

Kết luận……… 40

Tài liệu tham khảo……… 41

Trang 4

Mở ĐầU

Thực tế hiện nay, sự cạnh tranh trong hoạt động sản xuất kinh doanh luôn đòi hỏi các nhà quản lý doanh nghiệp phải th-ờng xuyên lựa chọn ph-ơng án để đ-a ra các quyết định nhanh chóng, chính xác và kịp thời với những ràng buộc và hạn chế

về các điều kiện liên quan tới tiềm năng của doanh nghiệp, điều kiện thị tr-ờng, hoàn cảnh tự nhiên và xã hội Việc lựa chọn ph-ơng án nào là tối -u theo mục tiêu

đã định tr-ớc là hết sức quan trọng Đặc biệt, nếu tất cả các yếu tố (biến số) liên quan đến khả năng, mục đích và quyết định lựa chọn đều có mối quan hệ tuyến tính

thì chúng ta hoàn toàn có thể sử dụng mô hình quy hoạch tuyến tính để mô tả, phân

tích và tìm lời giải cho vấn đề lựa chọn tối -u Trong đó ph-ơng pháp đơn hình

đ-ợc George Bemanrd Dantzig đ-a ra năm 1947 cùng lúc với việc khai sinh ra quy hoạch tuyến tính, ph-ơng pháp này thực sự có hiệu quả để giải những bài toán quy hoạch tuyến tính cỡ lớn trong thực tế mà ta th-ờng gặp, nh- để vận chuyển hàng hóa đầy đủ nh-ng có tổng chi phí là nhỏ nhất – đây chính là bài toán vận tải Hoặc trong kinh doanh phải lập kế hoạch sản xuất đối với các nguyên liệu và sản phẩm

để thu đ-ợc tổng lợi nhuận là lớn nhất…

Tuy nhiên, trong thực tế công việc này lại khá phức tạp, gây không ít khó khăn

và lúng túng cho những đối t-ợng quan tâm đến nó Để giải quyết vấn đề này, trong

phần mềm ứng dụng Microsoft Office Excel sử dụng một công cụ cài thêm là Sover

có thể giải các bài toán tối -u nhanh chóng Solver là một chức năng tính toán trong Microsoft Excel Nó chủ yếu đ-ợc sử dụng để xác định giá trị tối đa hay tối thiểu của một mục tiêu đ-ợc xếp vào một ô trong bảng tính Excel Trong tối -u hóa, Excel Solver là một công cụ rất mạnh mẽ Solver là một sự kết hợp của một số l-ợng rất nhiều các ch-ơng trình Các ch-ơng trình chức năng của nó gồm giao diện ng-ời dùng đồ họa (the Graphical User Interface - GUI), một ngôn ngữ mô hình đại số (ví dụ nh- phần mềm để xử lý số liệu có tên là General algebraic Modeling Systems (GAMS)), và tối -u cho tuyến tính, phi tuyến tính, và các ch-ơng trình số nguyên Với những công cụ mạnh mẽ kết hợp với nhau, Solver có thể tìm thấy một giá trị tối -u cho một ô trong bảng tính mục tiêu Để hiểu biết rõ hơn về ph-ơng pháp cũng nh- cách thức giải một bài toán quy hoạch tuyến tính

Trang 5

trong Microsoft Excel, chúng tôi lựa chọn đề tài luận văn ứng dụng phần mềm Microsoft Office Excel để giải bài toán quy hoạch tuyến tính Việc sử dụng phần

mềm Microsoft Excel để giải các bài toán quy hoạch tuyến tính đã đ-ợc nhiều nhà toán học quan tâm và nhiều tài liệu đề cập đến (xem [3], [5])

Nội dung khóa luận đ-ợc trình bày thành ba ch-ơng

Ch-ơng 1 trình bày bài toán quy hoạch tuyến tính

Ch-ơng 2 trình bày giải bài toán quy hoạch tuyến tính trên Microsoft Excel Ch-ơng 3 trình bày các bài toán mở rộng

Khóa luận đ-ợc viết dựa trên những tài liệu cở sở của Quy hoạch tuyến tính và những webside về phần mềm Microsoft Excel trên internet Tuy nhiên, do trình độ bản thân còn hạn chế nên khóa luận không tránh khỏi những thiếu sót, nhầm lẫn hoặc ch-a hiểu sâu vấn đề Bản thân tác giả mong đ-ợc sự góp ý, phê bình, tha thứ

và giúp đỡ của các thầy cô giáo giảng dạy và h-ớng dẫn viết luận văn, cũng nh- ban chủ nhiệm khoa Toán – Tr-ờng Đại học Vinh

Tác giả xin chân thành cảm ơn sự giúp đỡ h-ớng dẫn tận tình của các thầy cô giáo trong tổ Xác xuất thống kê và Toán ứng dụng – Khoa Toán, đặc biệt là cô giáo Nguyễn Thị Thanh Hiền đã giành nhiều thời gian và sự quan tâm nhiệt tình h-ớng dẫn giúp đỡ tác giả hoàn thành khóa luận này

Tác giả

Trang 6

Ch-¬ng 1 BµI TO¸N QUY HO¹CH TUYÕN TÝNH 1.1 Bµi to¸n

XÐt bµi to¸n quy ho¹ch tuyÕn tÝnh tæng qu¸t:

Chó ý r»ng bµi to¸n quy ho¹ch tuyÕn tÝnh tæng qu¸t cã thÓ ®-a vÒ bµi to¸n quy

ho¹ch tuyÕn tÝnh d¹ng chÝnh t¾c t-¬ng ®-¬ng nhê c¸c quy t¾c sau ®©y

Trang 7

Ta cã bµi to¸n: min CX

víi ®iÒu kiÖn

Ta cã bµi to¸n: min <C,X>

víi ®iÒu kiÖn

Trang 8

Tập ph-ơng án M  và bị chặn đ-ợc gọi là đa diện lồi

1.2.3 Tính chất của bài toán quy hoạch tuyến tính

1.2.3.1 Định lý Nếu tập ph-ơng án của bài toán quy hoạch tuyến tính là đa

diện lồi thì tồn tại ph-ơng án cực biên tối -u

Chứng minh: xem [2], tr 40

Trong tr-ờng hợp tổng quát với M nào đó, ta có định lý:

1.2.3.2 Định lý Nếu bài toán quy hoạch tuyến tính có ph-ơng án tối -u, thì có

ít nhất một ph-ơng án cực biên tối -u

Hệ quả Số tọa độ d-ơng của ph-ơng án cực biên có tối đa là m

Số ph-ơng án cực biên của M là hữu hạn

Chứng minh: xem [2], tr 45

Trang 9

Định nghĩa Ph-ơng án cực biên có đủ m tọa độ d-ơng đ-ợc gọi là không suy

biến (hay không thoái hóa)

Bài toán quy hoạch tuyến tính có tất cả các ph-ơng án cực biên không suy biến

đ-ợc gọi là bài toán không suy biến

Hệ m vector {A j } độc lập tuyến tính t-ơng ứng với ph-ơng án cực biên X nh- đã nêu trong định lý 1.2.3.3 gọi là cơ sở liên kết của X

Trên cơ sở định lý 1.2.3.3 và hệ quả, ta có thể xem đó là tiêu chuẩn sàng lọc để giữ lại hữu hạn ph-ơng án cực biên và đi tìm ph-ơng án tối -u trên tập hữu hạn này

Với các giả thiết đã nêu, nay ta giả thiết thêm rằng:

- Bài toán (1.1)-(1.3) không suy biến

- Biết tr-ớc một ph-ơng án cực biên xuất phát Xo

Không mất tính tổng quát, giả sử ma trận A chứa cơ sở là ma trận đơn vị

A1A2…Am Khi đó mỗi vector Aj biểu diễn qua cơ sở có tọa độ là A j = (x ij)

Chú ý: Trong tr-ờng hợp cơ sở đơn vị thì x ij = a ij

Trang 10

Với giả thiết đã nêu ta có ph-ơng án cực biên Xo có dạng

1.3.2.2 Định lý Nếu tại ph-ơng án cực biên X o , tồn tại k > 0 và mọi x ik ≤ 0 (i

= 1, 2, …, m) thì bài toán không có ph-ơng án tối -u (hàm mục tiêu không bị chặn

trên tập ph-ơng án).

Chứng minh: xem [2], tr 73

1.3.2.3 Định lý Nếu tại ph-ơng án cực biên X o , tồn tại k > 0 và tồn tại x ik > 0

thì xây dựng đ-ợc ph-ơng án cực biên mới X 1 tốt hơn X o

Trang 11

Vấn đề đặt ta là: tại ph-ơng án cực biên Xo, biết đ-ợc các đại l-ợng x i o , x ij , j

f(Xo) Tại ph-ơng án cực biên X1, chúng ta cần tính đại l-ợng t-ơng ứng x i 1 , x

a sk nếu i = k

x 0 i - x

0 s

Nếu có, chuyển sang b-ớc 6

Nếu không, chuyển sang b-ớc 2

B-ớc 2 Kiểm tra tồn tại j > 0 mà  x ij ≤ 0 ?

Nếu có, chuyển sang b-ớc 6

Trang 12

NÕu kh«ng, chuyÓn sang b-íc 3

B-íc 6 Dõng l¹i, tr¶ lêi cã hay kh«ng cã ph-¬ng ¸n tèi -u

1.3.3 §Þnh lý NÕu bµi to¸n quy ho¹ch tuyÕn tÝnh kh«ng suy biÕn th× thËt to¸n

Trang 13

Tr-êng hîp 2 XÐt bµi to¸n d¹ng chÝnh t¾c

Trang 14

với điều kiện

Khi ma trận A = (a ij ) ch-a chứa ma trận đơn vị, ta đ-a thêm ẩn giả tạo x n+i ≥ 0

với hệ số hàm mục tiêu c n+i = M > 0 đủ lớn để có bài toán giả tạo (M) nh- sau:

đặt ra là giữa bài toán (1.1)-(1.3) đã cho và bài toán (M) có mối quan hệ nh- thế nào? Định lý sau đây sẽ cho ta câu trả lời

Định lý Có thể tìm đ-ợc số M o > 0 đủ lớn, sao cho với mọi M > M o thì

a) Bài toán (1.1 )-(1.3 ) có ph-ơng án tối -u X khi và chỉ khi bài toán (M) có ph-ơng án tối -u X =(X, )

b) Nếu bài toán (M) có ph-ơng án tối -u X , trong đó chứa ẩn giả tạo x n+i > 0 thì tập ph-ơng án của bài toán (1.1 )-(1.3 ) rỗng

Chứng minh: xem [2], tr 85

ở đây (X, ) ký hiệu cho vector n + m chiều, m tọa độ cuối bằng 0

Nhận xét:

Trang 15

+ Trong bài toán (M), j có dạng j = j + j M Vì vậy hàng m + 1 của

j ta nên tách làm hai hàng ghi j và j Để đánh giá j , tr-ớc hết chú ý xét tới j, sau đó nếu cần thiết mới xét đến j

+ Khi ẩn giả tạo x n+i = 0 với mọi i, tức là A n+i không tham gia trong cơ sở nữa thì

Trang 16

T¹i b¶ng IV cã j ≤ 0, (j = 1, …, 5) nªn ta cã ph-¬ng ¸n tèi -u lµ

Xt.- = (14/5, 12/5, 2/5, 0, 0), víi fmax = 36/5

Ch-¬ng 2 GI¶I BµI TO¸N QUY HO¹CH TUYÕN TÝNH TR£N MICROSOFT

OFFICE EXCEL 2.1 C«ng cô Add-Ins Solver

Trang 17

Trình cài thêm (Add-Ins) Solver th-ờng có mặt trong gói phần mềm Microsoft

Office khi cài đặt với lựa chọn Complete (đầy đủ) hoặc khi lựa chọn Custom (theo

ý ng-ời sử dụng) với lựa chọn cho Excel là Run all from my computer (cài đặt

Excel với đầy đủ các thành phần)

Để cài thêm Solver, ta tiến hành các b-ớc nh- sau:

1 Lắp đĩa nguồn cài đặt Office gốc vào ổ CD-ROM hoặc ổ DVD

2 Mở một file Excel

3 Truy cập menu Tools/ Add-Ins (xem hình 2.1):

Hình 2.1.Menu Tools trên thanh công cụ chọn Add-Ins

Xuất hiện bảng Add-Ins nhấp chọn Solver Add-in (xem hình 2.2)

Trang 18

H×nh 2.2.Hép tho¹i Add-Ins chøa c¸c chøc n¨ng më réng cña Excel

XuÊt hiÖn th«ng b¸o, chän

2.1.2.1 Hép tho¹i Solver Parameters

Truy cËp menu Tools/ Solver XuÊt hiÖn cöa sæ Solver Parameters (xem h×nh

2.4)

Trang 19

Hình 2.4 Hộp thoại Solver Parameters để nhập các tham số cho bài toán

Các thuật ngữ trong hộp thoại Solver Parameters trình bày trong bảng 1

Bảng 1 ý nghĩa các nút lệnh trong hộp thoại Solver Parameters

Set Target Cell Ô chứa địa chỉ tuyệt đối của hàm mục tiêu (ô đích)

Equal To Max Chọn mục này khi cần tìm max của hàm mục tiêu

Equal To Min Chọn mục này khi cần tìm min của hàm mục tiêu

Equal To Value of Chọn mục này và nhập giá trị vào ô hình chữ nhật bên cạnh

nếu muốn ô đích bằng một giá trị nhất định

By Changing Cells Ô chứa các địa chỉ tuyệt đối của các biến của bài toán Subject to the

Constrains Mục này dùng để nhập các ràng buộc của bài toán

Để đoán giá trị trong các ô không chứa công thức do công thức trong ô đích chỉ đến

Hiển thị hộp thoại Add Constraint để thêm các ràng buộc (xem phần 2.1.2.2)

Hiển thị hộp thoại Change Constrait để thay đổi các ràng buộc

Để xóa ràng buộc đã chọn

Thực hiện việc giải toán

Đóng hộp thoại Solver Parameters mà không tiến hành giải bài toán

Hiển thị hộp thoại Solver Options để ghi mô hình bài toán, nạp lại mô hình đã ghi hoặc nhập các lựa chọn khác (xem phần 2.1.2.3)

Trang 20

Xóa các thiết lập cho bài toán hiện tại và khôi phục các thiết lập ngầm định

Hiển thị trợ giúp cho Solver

Cách làm của Solver là thay đổi giá trị của các biến tại By Changing Cells cho

đến khi giá trị của hàm mục tiêu tại Set Target Cell đạt một giá trị quy định tại Equal To và đồng thời thỏa mãn tập các ràng buộc tại Subject to the Constraints

2.1.2.2 Hộp thoại Solver Options

Khi chọn Options trong hộp thoại Solver Parameters xuất hiện hộp thoại Solver Options (xem hình 2.5), Solver cho phép chọn một số tùy chọn để tiến hành giải bài toán nh- thời gian giải bài toán, số lần lặp, độ chính xác của kết quả, thật toán tìm tối -u… Bảng 2 trình bày ý nghĩa của các lựa chọn này

Hình 2.5 Thiết lập các thuộc tính cho Solver

Bảng 2 ý nghĩa các nút trong hộp thoại Solver Options

Thời gian giải bài toán Ngầm định là 100s Giá trị tối đa là 32767s

Số lần lặp Ngầm định là 100 Số lần lặp tối đa là 32767

Độ chính xác Giá trị này luôn nằm trong khoảng [0, 1] để

điều chỉnh sai số cho các ràng buộc Giá trị càng gần 0 càng đòi hỏi độ chính xác càng cao của các ràng buộc

Giá trị này tính bằng (%) và có tác dụng đối với các bài toán có ràng buộc nguyên Giá trị lựa chọn (sai số) càng lớn thì tốc độ giải càng nhanh

Trang 21

Mức độ hội tụ của hàm mục tiêu Giá trị này nằm trong khoảng [0, 1] Lựa chọn này chỉ có ý nghĩa đối với bài toán quy hoạch phi tuyến Sau 5 lần lặp cuối cùng, nếu thay đổi trong ô chứa hàm mục tiêu nhỏ hơn giá trị này thì Solver dừng quá trình tính toán Giá trị này càng nhỏ thì thồi gian tính toán càng dài

Khi tất cả quan hệ trong mô hình là tuyến tính thì chọn mục này để tăng tốc độ giải bài toán

Giả thiết các biến không âm Chọn mục này khi có ràng buộc về dấu của các biến

Chọn mục này khi giá trị đầu vào và kết quả có độ lớn khác nhau Solver sẽ tự động điều chỉnh các biến để tìm ra lời giải Chẳng hạn nh- bài toán tối đa % lợi nhuận trên hàng triệu vốn đầu t-

Chọn mục này nếu muốn Solver tạm dừng lại và hiển thị kết quả sau mỗi lần lặp

Chọn ph-ơng án cho Solver -ớc l-ợng các biến

Tangent: Sử dụng cách xấp xỉ tuyến tính bậc nhất

Quandratic: Sử dụng cấp xỉ bậc hai Lựa chọn này cho độ chính xác cao hơn đối với bài toán quy hoạch phi tuyến

Chọn cách để -ớc l-ợng hàm mục tiêu và các ràng buộc

Rorward: Dùng khi giá trị của các ràng buộc thay đổi

chậm (đ-ợc dùng phổ biến)

Central: Dùng khi giá trị của các ràng buộc biến đổi

nhanh và khi Solver báo không thể cải tiến kết quả đ-ợc

Quy định cho Solver giải thuật tìm kiếm kết quả cho bài toán

Newton: Là ph-ơng pháp mặc định, sử dụng nhiều bộ

2.2 Giải bài toán quy hoạch tuyến tính trên Microsoft Excel

Excel Solver có thể tìm cực đại hay cực tiểu của một hàm số đặt trong một ô gọi

là ô đích Solver chỉnh sửa một nhóm các ô (gọi là các ô có thể chỉnh sửa) có liên

quan trực tiếp hay gián tiếp đến công thức nằm trong ô đích để tạo ra kết quả Ta có

Trang 22

thể thêm vào các ràng buộc để hạn chế các giá trị mà Solver có thể dùng Đối với bài toán quy hoạch tuyến tính Solver dùng ph-ơng pháp đơn hình, đối với bài toán quy hoạch phi tuyến Solver dùng ph-ơng pháp giảm gradient để tìm một cực trị địa ph-ơng

Xét bài toán quy hoạch

(j = 1 … n)

Trong đó Q là một trong các phép toán quan hệ ≥, ≤, =, thứ tự các phép toán quan hệ trong các ràng buộc là tùy ý Nh- vậy bài toán (2.1) có thể là bài toán quy hoạch tuyến tính thông th-ờng, quy hoạch tuyến tính nguyên hay quy hoạch boolean

Cách bố trí dữ liệu trên bảng tính:

c[1] c[2] … c[n]  c[i] x[j]

a[1,1] A[1,2] … a[1,n]  a[1,j] x[j] b[1]

a[2,1] A[2,2] … a[2,n]  a[2,j] x[j] b[2]

Ngày đăng: 14/10/2021, 23:46

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w