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

Tiểu luận - Quy hoạch phát triển hạ tầng năng lượng - đề tài - Tìm Hiểu Về Lindo Và Excel Solver 2010 Phân Tích Độ Nhạy

34 15 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

Tiêu đề Tìm Hiểu Về Lindo Và Excel Solver 2010 Phân Tích Độ Nhạy
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Quy hoạch phát triển hạ tầng năng lượng
Thể loại Luận văn
Thành phố Hà Nội
Định dạng
Số trang 34
Dung lượng 1,06 MB

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

Nội dung

1 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN KINH TẾ VÀ QUẢN LÝ BÀI THU HOẠCH QUY HOẠCH VÀ PHÁT TRIỂN NĂNG LƯỢNG Tìm Hiểu Về LINDO Và EXCEL SOLVER 2010 Phân Tích Độ Nhạy 2 MỤC LỤC EXCEL SOLVER 2010 Trang 1[.]

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN KINH TẾ VÀ QUẢN LÝ

BÀI THU HOẠCH QUY HOẠCH VÀ PHÁT TRIỂN NĂNG LƯỢNG

Tìm Hiểu Về LINDO Và EXCEL SOLVER 2010

Phân Tích Độ Nhạy

Trang 2

MỤC LỤC EXCEL SOLVER 2010……… Trang 1 Phần I: Excel Solver khả năng và giới hạn……… Trang 3 Phần II: Chẩn đoán kết quả Solver & báo cáo……… Trang 8 Phần III: Solver & bài toán quy hoạch tuyến tính……… Trang 11 Phần IV: Solver & bài toán quy hoạch phi tuyến……… Trang 18 LINDO

I Tìm hiểu về LINDO……… Trang 22

II Phân tích độ nhạy……… Trang 24

Bài tập ví dụ về phân tích độ nhạy……… Trang 28

Trang 3

EXCEL SOLVER 2010

Lời nói đầu

Microsoft Excel là phần mềm rất quen thuộc và phổ biến, dễ tiếp cận, lập trình và

đã được tích hợp trong bộ office của Microsoft

Trong Microsoft Excel chứa nhiều công cụ hỗ trợ giải các bài toán phân tích, quản

lí hỗ trợ công tác nghiên cứu trên nhiều lĩnh vực khác nhau như kĩ thuật, tài chính,thống kê, logic

Stand Solver cũng là một công cụ giải bài toán tối ưu(Opitimizer) quy hoạch tuyếntính, phi tuyến(trơn tru), không trơn tru

Bài này sẽ giới thiệu về Excel Solver theo 4 nội dung chính sau:

Phần I: Excel Solver khả năng và giới hạn

Phần II: Chẩn đoán kết quả Solver & báo cáo

Phần III: Solver & bài toán quy hoạch tuyến tính

Phần IV: Solver & bài toán quy hoạch phi tuyến

Trang 4

Phần I: Excel Solver khả năng và giới hạn

1.1 Những định nghĩa cơ bản trong Solver

a Hộp thoại Slover Parameters: là giao diện chính làm việc với Solver.

Kiểm tra trên thanh “data” xem có chứa solver chưa? Nếu chưa có ta làm như sau:Trong môi trường Excel, ta nhấp chuột vào File, chọn Opitions Khi đó hộp thoạiExcel Opitions xuất hiện như hình dưới đây

Tiếp đó chọn “add-ins”, nhấn vào” go ” hộp thoại add-ins xuất hiện, ta tích vào

“Solver add-in” và nhấp “OK”

Trang 5

Để mở hộp thoại “Solver Parameters”, trong môi trường excel ta click vào thanh

“data” Click vào Solver Lúc đó hộp thoại “Solver Parameters” xuất hiện như hìnhdưới đây:

*Set Objective: ta nhập vào vị trí hàm mục tiêu đã thiết lập trong ô tính của

Trang 6

*Subject to the Constraints: ta đưa các ràng buộc vào ô này.

*Select a Solving Method: chọn một công cụ Solver.

*Make Unconstrained Variables Non-Negative: ràng buộc không âm.

b Các lựa chọn trong hộp thoại “Solver opitions”

Max Time (Seconds): Thời gian tính lớn nhất theo giây Sovler sẽ chạy trước khi

dừng

Iterations: Số bước tính lặp.

Constraint Precision: Độ chính xác.

Convergence: Hội tụ.

Trang 7

Use Automatic Scaling: Định tỉ lệ tự động.

Show Iteration Results: Hiển thị kết quả bước tính lặp.

Integer Opitimality(%): Tối ưu với số nguyên

Max Subproblems: bài toán phụ Max

Max Feasible Solutions: giải pháp khả thi nhất.

Derivaties: Đạo hàm

Forward: Sai phân theo hướng tiến về phía trước.

Central: sai phân trung tâm.

Population Size: Kích cỡ đám đông nghiệm.

Random Seed: Điểm ngẫu nhiên.

Require Bounds on Variables: Yêu cầu cận đặt trên biến.

Mutation Rate: Tỉ lệ sự biến đổi

Maximum Time without improvement: Thời gian tối đa không cải thiện.

1.2 Các công cụ trong Solver

Standard Solver gồm 3 công cụ:

a GRG Nonlinear: Sử dụng thuật toán Generalized Reduced Gradient(GRG)

để giải bài tập quy hoạch phi tuyến(trơn tru) Với quy mô lên tới 200biến(dicision variables), 100 ràng buộc(constraints), 400 ràng buộc cận đặttrên biến(Bounds on Variable)

b Simplex LP: Sử dụng thuật toán đơn hình để giải bài tập quy hoạc tuyếntính với quy mô lên tới 400 biến(dicision variables), 200 ràngbuộc(constraints), 800 ràng buộc cận đặt trên biến(Bounds on Variable)

c Evolutionary : sử dụng thuật toán “di truyền”(genetic algoriths) để bổ sungcho các thuật toán tuyến tính và phi tuyến tính kinh điển Chủ yếu sử dụnggiải bài toán không trơn tru, không liên tục

Trang 8

Với các bài toán tối ưu có ràng buộc số nguyên sẽ có sử dụng thêm phươngpháp Nhánh & Cận(Branch & Bound method) kết họp với GRG Nonlinearhoặc Simplex LP để xử lí ràng buộc nguyên.

Evolutionary không sử dụng phương pháp Nhánh & Cận thay vào đó phát ranhiều điểm thử nghiệm và dùng phương pháp ”sửa chữa ràng buộc”(constraintrepair) để thỏa mãn ràng buộc số nguyên, có thể tìm được nghiệm tốt cho bàitoán có ràng buộc số nguyên, tuy nhiên không chắc đó đã là nghiệm tối ưu

Ta cần lưu ý rằng đối với bài toán tuyến tính( có dạng đường thẳng) có thể tìmđược nghiệm tối ưu toàn cục nếu nó tồn tại, bài toán vô nghiệm hay vô sốnghiệm Còn đối với bài toán có dạng hàm phi tuyến trơn tru( hiểu đơn giản làhàm có dạng đường thẳng hay cong không đứt đoạn, hàm này gọi tắt là hàmphi tuyến) có thể tìm được nghiệm toàn cục, nhưng đôi khi chỉ tìm đượcnghiệm cục bộ Đối với bài toán có dạng phi tuyến không trơn chu, không liêntục thì thời gian xử lí dữ liệu sẽ lâu nhất, và nghiệm thường chỉ hội tụ tới giá trịnào đó mà k thể tìm được nghiệm tối ưu toàn cục

1.3 Hàm của các biến quyết định

Trong quá trình tối ưu hóa, chỉ có các ô biến quyết định được thay đổi, các giá trịkhác giữ không đổi

Khi xem xét hàm mục tiêu(HMT) và ràng buộc phải xét tính tuyến tính, trơn tru,không trơn tru để chọn công cụ thích hợp

Ngay cả khi có đầy đủ công cụ Solver, ta vẫn nên cân nhắc xem sử dụng các hàmnào thân thiện với Solver để tìm được kết quả tốt hơn cho mô hình Ví dụ nhưSolver chấp nhận cho việc sắp xếp nhanh với các hàm như: SUM, PRODUCT,DOTPRODUCT, QUAPRODUCT, MMULT

Một số hàm không liên tục thường được sử dụng trong Excel như: IF, CHOOSE,LOOKUP,HLOOOKUP, VLOOKUP, COUNT

Một sô hàm không trơn tru thường được sử dụng trong Excel như: ABS, MIN,MAX, INT, ROUND,CEILING, FLOOOR

Phần II: Chẩn đoán kết quả Solver & báo cáo

2.1 Chẩn đoán kết quả Solver

Trang 9

Khi qúa trình tìm nghiệm hoàn tất hộp thoại Solver Results xuất hiện, hiển thị cácthông báo kết quả.

Ta có thể lựa chọn một hoặc nhiều báo cáo, chọn một trong các lựa chọn “ keepsolver Solution” (giữ lại nghiệm của solver hoặc Restore Original Values( trả lạigiá trị ban đầu) và ghi lại giá trị các biến quyết định trong một kịch bản được đặttên “save scenario” Nhấn “OK” để báo cáo được lập ra, hoặc “ cancel” để hủy bỏnghiệm và các báo cáo

*Những thông báo kết quả của Solver

1.“Solver found a solution All constraints and optimality conditions are satisfied”: Solver đã tìm được một nghiệm Các điều kiện ràng buộc và tối ưu

2.”Solver has converged to the current solution All constraints are satisfied”:

Solver đã hội tụ đến nghiệm hiện hành Các điều kiện ràng buộc được thỏa mãn

Có nghĩa rằng solver đã tìm được một loạt các nghiệm tốt nhất thỏa mãn các ràngbuộc và rằng các giá trị HMT rất giống nhau, tuy nhiên không có nghiệm nào thỏamãn hoàn toàn trắc nghiệm của Solver cho tính tối ưu

3.”Solver cannot improve the current solution All constraints are satisfied”:

Solver không thể cải thiện nghiệm hiện hành Các ràng buộc được thỏa mãn

Điều này có nghĩa là Solver đã tìm được các nghiệm thỏa mãn các ràng buộc,nhưng nó không thể cải thiện HMT, ngay cả khi trắc nghiệm về tính tối ưu và sựhội tụ

Trang 10

4.”Stop chosen when the maximum iteration limit was reached”: Dừng lựa chọn

thiết mô hình tuyến tính không thỏa mãn

Thông báo này chỉ xuất hiện khi ta sử dụng công cụ Simplex LP, xem xét lại xemhàm mục tiêu và các ràng buộc xem các hàm hay phép tính tác động lên biếnquyết định có phải là phi tuyến

9.”The poblem is too large for Solver to handle”: Bài toán quá lớn để Solver xử

Xem xét xem các biến quyết định, ràng buộc và số cận đặt trên biến có quá giớihạn của Solver hay không?

10.” Solver encountered an error value in a target or constraint cell”: Solver

gặp một giá trị sai trong ô HMT hoặc ràng buộc

Cần kiểm tra lại Hàm mục tiêu và các ràng buộc xem có giá trị nào báo lỗi dạng

#VALUE, #NUM!, #DIV/0 hoặc #NAME? Hay không?

11.”Stop chosen when the maximum time limit was reached”: Dừng chọn khi

đến giới hạn thời gian lớn nhất

Thông báo này xuất hiện khi Solver đã chạy hết giới hạn thời gian lớn nhất chophép trong khung Max time Ta có thể tăng giá trị trong ô Max time ở hộp thoạiSolver option hoặc nhấp chọn continue thay vì stop trong hộp thoại Show TrialSolution

Trang 11

12.”There is not enough memory available to Solver the problem”: không đủ bộ

nhớ để giải bài toán

13.”Error in model Please verify that all cells and constraints are valid”: sai sót

trong mô hình Xin kiểm lại các ô và các ràng buộc cho hợp lệ

14.” Solver found an integer solution within tolerance All constraints are satisfied”: Solver đã tìm được một nghiệm nguyên trong phạm vi dung sai Các

ràng buộc đều thỏa mãn

15.”Stop chosen when the maximum number of feasible [integer] solutions was reached”: Dừng chọn khi đến giới hạn số nghiệm khả thi [nguyên] lớn nhất.

16.”Stop chosen when the maximum number of feasible [integer] subproblems was reached”: Dừng chọn khi đến giới hạn số bài toán phụ khả thi [nguyên] lớn

nhất

17 “All variales must have both upper and lower bounds”: Các biến quyết định

phải có cả cận trên và cận dưới

18.”Variable bounds conflict in binary or alldifferent constraint”: Cận của biến

quyết định xung đột trong ràng buộc nhị phân hoặc ràng buộc alldifferent

19.” Lower and upper bounds on variables allow no feasible solution”: Cận dưới

và cận trên của biến quyết định khiến hco không có nghiệm khả thi

2.2 Các báo cáo trong Solver

Answer(Báo cáo về nghiệm), Sensitivity(Báo cáo về độ nhạy cảm), Limits report(Báo cáo về giới hạn)

Khi Solver tìm được một nghiệm tối ưu của bài toán, ta có thể chọn một trong babáo cáo trên Cả ba báo cáo đều là bổ ích, nhưng ta nên tập trung vào báo cáo độnhạy cảm vì nó cho ta biết nhiều điều về mô hình và nghiệm của mô hình Ta cóthể xác định điều gì sẽ xảy ra nếu ta thay đổi mô hình theo nhiều cách khác nhau

mà không cần chạy lại Solver

Population Report (Báo cáo đám đông nghiệm)

Trang 12

Báo cáo này dành riêng cho Evolutionary Solver Population Report cho biếtnhững thông tin tổng quát về toàn bộ đám đông ứng viên nghiệm mà EvolutionarySolver giữ lại tại thời điểm kết thúc quá trình tìm nghiệm.

Linear and Feasibility Reports (Báo cáo về tuyến tính và tính khả thi)

Linear report có thể xác định, và loại bỏ các hàm phi tuyến tính khỏi mô hình để

có thể giải bài toán bằng Solver tuyến tính nhanh hơn và tin cậy hơn

Feasibility report, ta có thể xác định các ràng buộc chồng chéo khiến cho mô hìnhkhông khả thi và sửa những chồng chéo này nếu cần thiết

Ta có thể yêu cầu báo cáo có định dạng( outlined report) Vì báo cáo là các tranglàm việc của Excel nên ta có thể sao chép, biên tập, thực hiện các phép tính trênnhững con số trong báo cáo hoặc vẽ đồ thị trực tiếp từ các dữ liệu trong báo cáo

Phần III: Solver & bài toán quy hoạch tuyến tính

3.1 Dạng tổng quát của một mô hình bài toán QHTT

MAX (hoặc MIN) c1X1+¿ 2X2+…+c n X n¿ (4-1)

Ngoài ra tùy bài toán còn có thể có ràng buộc cận trên hoặc cận dưới biến quyếtđịnh có dạng X1, X2… X n ≥ 0 hoặc X1, X2… X n ≤ 0

3.2 Mô hình hóa và giải bài toán QHTT trong một bảng Excel

Bước 1: Sắp xếp dữ liệu của mô hình trên bảng tính

Phải sắp xếp dữ liệu sao cho có ý nghĩa và mục đích càng rõ ràng càng tốt

Nên đặt các nhãn mô tả (labels) trong bảng tính để nhận biết các phần tử khácnhau của dữ liệu

Trang 13

Bước 2: Dành các ô riêng biệt trong bảng tính để thể hiện từng biến quyết định trong mô hình đại số

Ta nên sắp xếp các ô thể hiện biến quyết định song song với cấu trúc dữ liệu Sẽhữu ích cho việc thiết lập các công thức cho HMT và các ràng buộc Nên dùngnhãn để mô tả nhận biết rõ ràng ý nghĩa của các ô nói trên

Bước 3: Tạo công thức trong một ô bảng tính tương ứng với HMT trong mô hình đại số

Công thức tương ứng với HMT được tạo ra bằng cách tham chiếu đến các ô dữliệu, ở đó các hệ số của HMT đã được nhập vào và tham chiếu đến các ô tươngứng thể hiện các biến quyết định

Bước 4: Tạo công thức vế trái của các ràng buộc

Với mỗi ràng buộc tạo ra một công thức trong một ô riêng biệt Công thức tươngứng với VT của ràng buộc được tạo ra bằng cách tham chiếu đến các ô dữ liệu, ở

đó các hệ số cho các ràng buộc này đã được nhập vào và tham chiếu đến các ôbiến quyết định thích hợp

Bước 5: Làm việc với Solver

Thực chất là đưa mô hình bảng tính vừa thiết lập vào khung hội thoại Solver

Như đã trình bày ở mục 1.1 ta mở được hộp thoại “Solver Parameters” và ta sẽđưa hàm mục tiêu, VT, VP, cùng dấu thể hiện tương quan VT, VP của các ràngbuộc này và các cận đặt trên biến(cận trên và dưới) vào mô hình

Vì ở đây chúng ta đang đề cập tới bài toán QHTT nên chỉ cần sử dụng công cụSimplex LP để giải bài toán Trên hộp thoại Solver Parameters ta nhấn vào tam

giác đen bên cạnh chữ “Select a Solving Method” và chọn Simplex LP.

Nếu các biến quyết định có ràng buộc không âm ta tích vào “Make Unconstrained Variables Non-Negative” trong hộp thoại Solver Parameters.

Sau đó click vào Solver, chúng ta sẽ nhận được kết quả

3.3 Giải bài tập QHTT đơn giản

Bài toán về “sản xuất & kinh doanh”

Trang 14

Tổ hợp T & D chế tạo máy bơm Họ nhận được đơn đặt hàng trị giá &750,000 đểsản xuất ba loại máy bơm B1, B2, B3 với số lượng từng chủng loại theo yêu cầuđặt hàng Thời gian và nhân công để làm ra một sản phẩm theo bảng dưới đây:

Tiếc rằng T & D không đủ thời gian và nguồn nhân lực để hoàn thành đơn đặthàng theo đúng thời hạn Họ chỉ có 10,000 giờ và 5,000 công Tuy nhiên, họ cóthể ký hợp đồng phụ với công ty đối tác để giao một phần đơn đặt hàng cho đốitác Chi phí cho một đơn vị sản phẩm do T & D tự sản xuất và chi phí mua lại củađối tác như sau:

Tổ hợp T & D muốn xác định số lượng mỗi chủng loại bơm tự sản xuất và sốlượng mua lại của đối tác để hoàn thành đơn đặt hàng với chi phí ít nhất

Giải:

1 Thiết lập mô hình

*Xác định biến quyết định:

L1 = số lượng lượng bơm B1 tự làm

L2 = số lượng lượng bơm B2 tự làm

L3 = số lượng lượng bơm B3 tự làm

M1 = số lượng lượng bơm B1 mua lại của đối tác

M2 = số lượng lượng bơm B2 mua lại của đối tác

M3 = số lượng lượng bơm B3 mua lại của đối tác

*Xác định HMT

MIN: 50*L1+ 83*L2+130*L3+61*M1+97*M2+145*M3 (tổng chi phíđơn hàng)

*Xác định các ràng buộc

L1+M1 = 3000 (RB theo đơn hàng máy bơm B1)

L2+M2 = 2000(RB theo đơn hàng máy bơm B2)

Trang 15

L3+M3 = 900(RB theo đơn hàng máy bơm B3)

L 1+2∗L2+ L3≤5000(RB nhân công)

L 1, L 2, L3,M 1, M 2, M 3≥ 0(RB không âm)

2 Làm việc với bảng tính Excel

Trong bảng này biến cần tìm là L1, L2, L3, M1, M2, M3 ứng với ô B2, C2,D2, B3, C3, C3

Các hệ số của hàm mục tiêu đưa vào dãy ô B6:D7 Ô chứa công thức tínhgiá trị HMT là E6

Các hệ số tính VT ràng buộc số giờ và nhân công vào dãy ô B12:D13;

Các ô chứa công thức tính giá trị VT ràng buộc thời gian và nhân công đưavào ô F12, F13 và VP ràng buộc tương ứng vào ô G12, G13

Các ô chứa công thức tính giá trị VT cho ràng buộc đủ số lượng bơm theođơn đặt hàng đưa vào dãy ô B9:D9; Giá trị VP tương ứng là B10:D10

- Công thức trong ô E6 tính giá trị HMT :

Trang 16

- Công thức trong ô B9 là hình sau, các ô C9, D9 tương tự:

- Công thức trong ô F12 như hình sau, ô F13 tương tự:

3 Làm việc với hộp thoại Parameters

*Set Objective: ta nhập vào E6 ở phần “To” chọn Min

*By Changing Variable Cells: Nhập vào B2:D3

*Subject to the Constraints: ta click vào "add” Ở ô Cell “reference” nhập

vào B9:D9, kéo hình tam giác bên cạnh chọn dấu “=”, trong ô ”constraint”chọn ô B10:D10 Click add

Tiếp theo ở ô Cell “reference” nhập vào F12, F13, kéo hình tam giác bêncạnh chọn dấu “=”, trong ô ”constraint” chọn ô G12, G13 Click OK

*Select a Solving Method: chọn Simplex LP.

*Make Unconstrained Variables Non-Negative: tích vào ô vuông nhỏ.

Nhập xong trên hộp thoại có dạng:

Trang 17

Cuối cùng click vào slover ta được bảng sau:

Ta thấy xuất hiện hôp thoại “Solver Results” với thông báo “Solver found a solution All constraints and optimality conditions are satisfied”( Solver đã tìm

được một nghiệm Các điều kiện ràng buộc và tối ưu được thỏa mãn)

Ngày đăng: 17/06/2023, 02:46

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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